Yazar: Utku Ozan ÇANKAYA

Fixing the minaret

While leading teams you will surely face confrontations. Your decisions will be questioned, criticised and sometimes will not be accepted. It is not possible to avoid it, so be ready for it. The confrontation is unavoidable, because the interest of both parties might not always overlap. The best way to solve such confrontations is mutual […]

Managing/Leading Software Development Teams

In advance, this will not be an article. It will be series of articles where I will be sharing my thoughts and experience on managing/leading software development teams. The content of these articles might not sound correct, or even might not be correct at all. Things I will cover here will mostly be subjective, depending […]

Paket bağımlılığı

Asıl söyleyeceğimi başta söyleyeyim ki yanlış anlaşılma olmasın. Bu yazıdaki “bağımlılık” ifadesi İngilizce’deki “dependency” değil, “addiction” kavramının karşılığıdır. Günümüzde yazılım dünyasında yer alıp da paket kullanmayan kimse var mı bilmiyorum. “NuGet” bugün ortadan kaybolsa, kaç projenin durmasına neden olur kimbilir. Kimler Azer KOÇULU ismini hatırlıyor bilmiyorum ama kendisi bir günde Facebook dahil pek çok web […]

Ben Matematikten pek anlamıyorum

Eğer bir “yazılımcı” iseniz bu cümleyi söylemeye hakkınız yok! Yazılımla ilgili olarak eğitim gören ya da meslekteki arkadaşlarımızın başlıktaki sözü söylemeye hakları olmadığını düşünüyorum. Bir yazılımcı, hatta kişisel görüşüm yaşayan herkes, Matematikten anlamak zorundadır. Buradaki “Matematik” kelimesinden katsım illa ki katlı integral çözmek ya da bir takım formülleri hatırlamak değil, Matematiğin özü olan temel mantıksal […]

Basitliğin güzelliği

Yakın zamanda, daha önceden ekip olarak yazdığımız ve uzun süredir çalışmakta olan bir projede tekrar kod yazmam gerekti. Bir LNG terminalinin günlük işlemlerini özetleyen bir raporda, cihazların ve işletim mekanizmasının değişmesi nedeni ile kodun yeniden yazılması gerekti. Kısaca bilgi vermek gerekirse rapor, LNG giriş ve çıkış miktarlarını, işlemler için harcanan elektrik miktarını, soğutma ve ısıtma […]

Etkinlik diyagramı

Etkinlik diyagramları, sistemin akış yönünden davranışını betimler. Etkinlik diyagramları bir şeyin durumlarını temsil etmesi niteliği ile durum diyagramlarına benzer. Fakat durum diyagramları gerçekleşen eylemler neticesinde oluşan durumları nitelerken etkinlik diyagramları ise koşullu ya da paralel ilerleyen eylemleri betimler. Etkinlik diyagramları nasıl çizilir? Etkinlik diyagramları sistem içerisindeki eylemlerin akışını gösterir. Diyagram yukarıdan aşağıya doğru okunur ve […]

Durum diyagramı

Durum diyagramları bir sistemin davranışlarını modeller ve bir olay gerçekleştiğinde olası tüm durumları tanımlar. Her bir diyagram bir sınıfın tek bir nesnesini ele alır ve sistem içerisindeki farklı durumlarını irdeler. Bir durum diyagramı aşağıdaki elemanlardan oluşur: Durum diyagramları nasıl çizilir? Durum diyagramları çok az sayıda eleman içerir. Temel elemanlar, nesnenin durumunu temsil eden kutular ve […]

İşbirliği diyagramı

İşbirliği diyagramları nesneler arasındaki ilişkileri ve aralarında gezen mesajların sırasını gösterir. Nesneler kutular ile gösterilirken, oklar nesnelerin arasında gezen mesajları gösterir. Mesajların yanındaki numaralar “sıra (dizge) numarası” olarak adlandırılır ve nesneler arasında iletilen mesajların sırasını gösterir. UML 1,2,3.. gibi numaralandırma sistemlerinin yanında 1.1, 1.2, 1.3, 2.1, 2.2,… gibi numaralandırma sistemlerini de kabul edilmektedir. Aşağıdaki örnekte […]

Dizge diyagramı

Dizge diyagramları bir use case içerisindeki nesnelerin davranışlarını ve birbirlerine ilettikleri mesajları gösterir. Diyagram soldan sağa ve yukarıdan aşağı okunur. Bir dizge diyagramı temel olarak nesnelerden, mesajlardan ve zaman eksenlerinden oluşur. Dizge diyagramları, tasarımı yapan kişi ya da ekibin bakış açısına, gerekliliklerine ve modülün tüm çalışanlar tarafından bilinirliğine göre değişebilmektedir. Kolayca anlaşılabilecek sistemler için basit […]