Multics işletim sistemi geliştirme hikayesi
- Multics işletim sistemini geliştiren André Bensoussan, dosya sistemindeki önemli değişiklik çalışmalarından sorumluydu.
- VTOC yöneticisi, dosya bilgilerinin disk ile bellek arasında taşınmasını, paylaşımlı bellek tampon havuzunun yönetimini ve disk üzerindeki bilgi alanının yönetimini gerçekleştiren bir alt sistemdi.
- André, VTOC yöneticisinin tasarımını, gerçekleştirimini ve testini üstlendi; tasarım çalışmasını ilerletirken çok sayıda diyagram çizdi.
Geliştirme süreci ve başarı
- Proje koordinatörü Tom Van Vleck, takvim konusunda endişeliydi; ancak André kod yazmaya başlayınca rahatladı.
- André, bilgisayar terminali yerine kurşun kalemle kod yazdı, yazım yardımını da reddederek tüm işi bizzat yaptı.
- Sonunda kurşun kalemle yazdığı temiz kodu terminale girip derlemeyi denedi; birkaç yazım hatasını düzelttikten sonra derleme başarıyla tamamlandı.
- Sisteme entegre edilip test edildiğinde VTOC yöneticisi en başından itibaren kusursuz biçimde çalıştı.
André'nin başarısının sırrı
- André, araç olarak yalnızca kurşun kalem kullanarak kusursuz bir program yazdı.
- VTOC yöneticisinde bulunan tek hata, Tom Van Vleck'in yanlışlıkla hata işleme yordamlarının çağrı sırasını yanlış aktarmasından kaynaklanıyordu.
- André'nin çalışma tarzı, yazılım mühendisliği üzerine bir hikâye olarak IEEE Computer'ın Nisan 1994 sayısında tanıtıldı ve Kasım 2003'te güncellendi.
GN⁺ görüşü
- André Bensoussan'ın Multics işletim sistemi geliştirme hikayesi, titiz tasarımın ve yoğun odağın nasıl kusursuz bir sonuç ortaya çıkarabildiğini gösteriyor.
- Yalnızca kalem ve kâğıt kullanılan bu geleneksel yöntem, modern ve karmaşık yazılım geliştirme araçlarıyla karşılaştırıldığında temellere sadık bir yaklaşımın önemini vurguluyor.
- Bu hikâye, yazılım mühendisliği alanında dikkatli ön hazırlığın ve testin önemini hatırlatan iyi bir örnek olmanın yanı sıra, mühendislik eğitimi için de önemli bir ders sunuyor.
1 yorum
Hacker News görüşleri
İlk yorum özeti:
agileyaklaşımı nedeniyle sürekli değişiyor. Geliştiricilere net API'ler ve iyi tanımlanmış ölçütler sağlarsanız, çoğu zaman verimli kod yazabilirler.İkinci yorum özeti:
Üçüncü yorum özeti:
Dördüncü yorum özeti:
Beşinci yorum özeti:
Altıncı yorum özeti:
Yedinci yorum özeti:
Sekizinci yorum özeti:
Dokuzuncu yorum özeti:
Agile/Scrumgeliştirme metodolojilerinin henüz ortaya çıkmamış olmasıydı.Onuncu yorum özeti: