paint-brush
Yazılım Mimarisi Kararları: Gerçeklere Odaklanın ve Tahminlerde Bulunmayınile@inovak
451 okumalar
451 okumalar

Yazılım Mimarisi Kararları: Gerçeklere Odaklanın ve Tahminlerde Bulunmayın

ile Ivan Novak4m2023/07/28
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

YAGNI, Ekstrem Programlamadan doğan bir prensiptir. Bu aslında gerekli görülene kadar işlevsellik eklememeniz için dostça bir hatırlatmadır. Smitty gibi olma. İhtiyaç duyulduğunda ihtiyaç duyulan şeyi oluşturun. Slack gibi olun; Kullanıcılarınızın ihtiyaçlarının yazılım mimarisi kararlarınızı yönlendirmesine izin verin.
featured image - Yazılım Mimarisi Kararları: Gerçeklere Odaklanın ve Tahminlerde Bulunmayın
Ivan Novak HackerNoon profile picture
0-item

Muhtemelen bu oyundasınız çünkü sadece işe yarayan değil aynı zamanda kullanıcıları memnun eden bir yazılım yaratmak istiyorsunuz, değil mi?


İyi haberler! Bu bir tahmin oyunu değil. Derin bir anlayışa dayanan bilinçli kararlarla ilgilidir. Tahminlerden ziyade gerçeklerle ilgili.


"Yazılım mimarisinde gerçekler güvenilir müttefiklerdir, ancak tahminler? Size kartlardan dijital bir ev inşa edebilirler."


Yol zorlu seçimlerle dolu olabilir, ancak kendinizi doğru bilgiyle donattığınızda bir düzine (veya daha fazla) tahmin yerine kendinize güvenerek bir sonraki doğru şeyi inşa edeceksiniz!

YAGNI'nin Gücü

YAGNI? Buna ihtiyacın olmayacak . _ Bu Extreme Programlamadan doğan bir prensiptir. YAGNI aslında gerekli görülmedikçe işlevsellik eklememeniz konusunda dostça bir hatırlatmadır. Ve inanın bana, buna çok ihtiyaç var.


Aşırı mühendislik, kahve eşliğinde gece geç saatlerde yapılan kodlama oturumları kadar yaygındır. İkisi de olmamalı, ama nasıl gittiğini biliyorsun...


Bir hikayeyi paylaşmama izin verin. Bir zamanlar bir adamla çalıştım, ona Smitty diyelim. Smitty olağanüstü derecede hevesli bir geliştiriciydi. Müşteri yalnızca bisiklet istediğinde koca bir uzay gemisinin mimarını yapabilecek türden biriydi. Hayranlık uyandırıcıydı ama çoğu zaman gereksizdi.


Bir gün Smitty, tahmin edin müşterilerin hiç kullanmadığı karmaşık bir özelliği geliştirmek için haftalar harcadı! Bütün bu zaman, enerji ve kahve boşa gitti.


YAGNI'nin kaçınmanıza yardımcı olduğu tuzak budur. Smitty gibi olma. İhtiyaç duyulduğunda ihtiyaç duyulan şeyi inşa edin.

Yol Gösterici Yıldızınız: Kullanıcıların İhtiyaçları

Ama neye ihtiyaç duyulduğunu nereden biliyorsun? Yazılımınız teknik becerilerinizi sergilemekle ilgili değildir. Kullanıcılarınızın sorunlarını çözmekle ilgilidir. Yol gösterici yıldızın mı? Sizin veya ekibinizin kaprisleri ve arzuları değil, kullanıcılarınızın ihtiyaçları.


Bu, kullanıcıların hayatlarına bir yapbozun eksik parçası gibi uyum sağlayacak kadar kusursuz bir çözüm oluşturmakla ilgilidir.


Yazılım mimarisi, bir dizi projeden kazara miras alınan bir şey olarak değil, ürünün tamamı göz önünde bulundurularak bilinçli olarak düşünülmelidir. "Kazara tasarım"dan kaçınalım.


Çok sevilen mesajlaşma platformu Slack'i düşünün. Slack'i diğerlerinden ayıran şey müşteri isteklerine odaklanmasıdır. Sadece başka bir mesajlaşma uygulaması olmayacaktı; işin sorunsuz bir şekilde yürütüldüğü bir işbirliği merkezi olacak şekilde tasarlandı.


Gözlemlediler, araştırdılar, verileri derlediler ve bu içgörüleri, onsuz yapamayacağımız uygulamaya dönüştürdüler. Slack gibi olun; Kullanıcılarınızın ihtiyaçlarının yazılım mimarisi kararlarınızı yönlendirmesine izin verin.

Veriye Dayalı Kararların Özü

Artık bilinçli kararlar vermek için verilere, soğuk ve katı gerçeklere ihtiyacınız var. Tahmin, hayatınızda ihtiyaç duymadığınız bir düşmandır. Bu, göz bağıyla hedef tahtasına vurmaya çalışmak gibidir; çoğunlukla ıskalarsınız.


Önsezilere dayanarak verilen kararlar yazı tura atmak kadar iyidir; yazılım bu şekilde başarılı olamaz.


Pratik olarak verilere tapan bir şirket olan Amazon'u düşünün. Her mimari karar, eklenen her özellik ve yapılan her değişiklik, müşteri verilerinin kapsamlı bir analizine dayanır. Sonuç? Müşterilerin geri gelmesini sağlayan son derece kişiselleştirilmiş bir alışveriş deneyimi.

Veri Toplama Mekanizmaları Oluşturma

"Bu verileri nereden alacağım?" İyi soru! Onu toplamak için mekanizmalar kurarsınız! Bunlar, doğrudan kullanıcı geri bildirimi kadar basit veya otomatik veri analitiği hatları kadar karmaşık olabilir. Bunu, içgörü elde etmek için tuzak kurmak gibi düşünün; ne kadar çok kurarsanız, o kadar çok yakalarsınız.


Bununla birlikte, bunun veri uğruna veri toplamakla ilgili olmadığını hatırlamak çok önemlidir. Kullanıcılarınıza daha iyi, daha kullanışlı özellikler sunmanıza yardımcı olacak eyleme geçirilebilir bilgiler toplamakla ilgilidir. Devam edin, içinizdeki veri bilimciyi kucaklayın!

Veriye Dayalı, Kullanıcı Odaklı Bir Yaklaşıma Doğru Yolculuk

Veriye dayalı, kullanıcı merkezli bir yaklaşıma yönelmek zorlu görünebilir ancak sonuçları kesinlikle değerlidir. Yeni metodolojileri benimsemek, veri okuryazarlığını geliştirmek ve önce kullanıcı kültürünü teşvik etmek ekip çapında değişikliklerdir.


Evet, zorlu görünebilir ancak bunun getirisi daha yalın, daha verimli ve değer odaklı bir yazılım geliştirme sürecidir. Doğru şeylere daha sık odaklandığımızda, daha azıyla daha fazlasını başarabiliriz!

Değişimi Desteklemek

Bakın direnç olabilir. Eski usullere, rahat yollara tutunanlar olabilir. Ancak bu, yeni bir çağa öncülük etme şansınızdır. Ekibinizi, kararların tahminlerle değil gerçeklerle yönlendirildiği bir geleceğe doğru yönlendirme şansınız.


Yazılımın geliştiricinin isteğini tatmin etmek için değil, gerçek sorunları çözmek için üretildiği yer.

Harekete Geçirici Mesajınız

İşte ilk adımınız. Küçük başla. Bir dahaki sefere bir özellik eklemek veya mimari bir karar vermek üzere olduğunuzda şunu sorun: "Bu kararı destekleyecek verilerimiz var mı? Kullanıcılara hizmet ediyor mu, yoksa sadece yepyeni bir şey mi?"


Harika yazılımlar kaprisler veya önseziler üzerine kurulmaz; bilinçli kararlar üzerine inşa edilmiştir.


Sonuçta bu, kullanıcılarınıza büyük değer sunmakla ilgilidir; insanların kullandığı, sevdiği ve onsuz hayatlarını hayal bile edemeyecekleri yazılımlar oluşturmakla ilgilidir. Ve sen bunu yapabilecek kapasiteden çok daha fazlasısın.


Öyleyse oraya çıkın, gerçeklerinizi toplayın, kullanıcılarınıza öncelik verin ve inanılmaz yazılımlar oluşturmaya başlayın. Kullanıcılarınız bekliyor.