Emniyet Kritik Yazılım Geliştirenler İçin Okuma Listesi

Merhabalar sevgili yazılımperver dostlar. Farklı bir yazı ile tekrar birlikteyiz. Aslında bu yazı, kendi içerisinde bir çok hikayeyi barındırmakta 🙂

Eminim çoğunuz, özellikle de gömülü ve aviyonik sistemler için yazılım geliştirenler, daha önceki sistemlerde, yazılımdaki hatalardan (gerek hatalı kodlama gerekse yaklaşım) ötürü ortaya çıkan kaza ve üzücü olayları duymuşsunuzdur. Bunlar genelde ilgili konular anlatılırken, ör. “Priority Inversion” konusu geçince Mars keşif aracı pathfinder’da yaşanan taskların önceliklerinden kaynaklan hata, gibi tek tük verilerek geçilir. Bu yazımdaki amacım bu tarz durumları bir araya getirerek sizlere sunmak ve ilerisi için bir başvuru kaynağı haline getirmek. Elbette burada sizlere sunduğum olayların dışında da bir çok olay ve durum yaşanmış olabilir, bunları da iletmeniz durumunda bu başlık altında toplayıp, kim bilir belki de ileride ayrı bir sayfaya taşırım.

Uzunca bir süre, hava platformları için yazılımlar geliştirdim ve eğer bu platformlar için yazılım geliştiriyorsanız, birinci önceliğiniz, her ne kadar geliştirdiğiniz uygulamaya göre değişse de, emniyetli kritik yazılım geliştirmektir. DO-178 ve DO-254 gibi bir çok standartlar, sizlere bu tarz emniyet kritik yazılımlar geliştirmeniz için oldukça sağlam ve sistematik bir yol göstermekte. Bakmayın siz yol gösterme dediğime, her ne kadar yol göstermekte desek de, eğer Amerika hava sahası (ve tabi Avrupa için de benzer standartlar var) içerisinde uçacak, sivil bir uçak için yazılım geliştirecekseniz, FAA, nam-ı diğer Federal Aviation Administration’ı (Avrupa için de EASA), bu standarda uygun bir şekilde yazılım geliştirdiğiniz konusunda ikna etmeniz gerekmekte. Tabi bu tek başınıza da olmuyor, DER’lerden yardım alıyorsunuz. DER’ler nedire girmeden, ki bu hususlar bambaşka bir yazının konusu olabilir, girizgahımı burada sonlandırıp, ilgili olaylara geçmeden önce son bir noktaya parmak basmak istiyorum. O da:

Bu geçmişte kalmış olaylar neden önemli?

Evet, bence bu tarz konuları ya da kazaları okumadan önce sormamız gereken soru, bunlar neden önemli?

But-Why-GIF-Image-Download-24 | Digital Sea Digital Marketing

Arkadaşlar aslında bunun için çok güzel bir özdeyiş var o da “Tarihten ders almayanlar için tarih tekerrür eder”. Ne kadar güzel bir söz. Aslında havacalık ve bir çok alanında gelişmesi aslında tam olarak bu şekilde olmuş. Yaşanan her bir kaza, her bir sıkıntı, insanları yeni önlemler almaya, yeni yaklaşımlar geliştirmeye itmiş. Bu konuda daha farklı örnekler okumak isteyenleri de Matthew Syed’in Karakutu Düşünme Modeli kitabını en az bir kere okumaya davet ediyorum. Gerçekten pişman olmayacaksınız. İşte biz de bu tarz hataların nelerden kaynaklandığını öğrenerek, ne kadar küçük hataların, ne kadar büyük problemlere yol açabileceğini, gözden geçirmelerin önemini, kullandığınız sistemler hakkında bilgi sahip olmanın ne kadar önemli olduğunu daha iyi görmüş olacağız. Bu noktada, sevgili yazar, ben çok ta kritik bir yazılım geliştirmiyorum bana ne de diyebilirsiniz fakat ben yine de her yazılım geliştiricinin bunlardan haberdar olmasının faydalı olacağı inancındayım 🙂

Aşağıdaki kazaların ve durumların bir kısmını emniyet ile ilgili sayfalardan edindim, fakat buraya özellikle yazılım ile ilgili olanları koymaya çalıştım. Bu sebeple, emniyet ile ilgili diğer yazılar için kaynaklara başvurabilirsiniz.

Öne çıkan bazı olayların kronolojik sırası ve ilgili kaynaklar:

Kaza ve benzeri olayların, daha  detaylı bir listesi. Yukarıdaki bazı olaylar, burada da geçiyor fakat farklı kişi ve kaynaklardan iletildiği için ekliyorum:

Kaynaklar kısmında da verdim ama arabalar ile ilgili kazalara da aşağıdaki bağlantıdan ulaşabilirsiniz:

https://betterembsw.blogspot.com/2018/09/potentially-deadly-automotive-software.html

Ara sıra buradaki kaynaklara bir göz atmakta fayda va diye düşünüyorum. Ufak hataların ne tür sonuçlara sebep olduğunu görmek, bizleri yazılımlarımız geliştiriken daha dikkatli olmaya teşvik edecektir. Bu arada, tam anlamıyla yukarıdaki listelere konumlandıramadığım ama burada da vermeden geçmek istemediğim kaynakları da aşağıdaki bölüme ekliyorum. Özellikle, emniyet konusunda çalışacak arkadaşlar için de faydalı kaynakların olduğunu söyleyebilirim.

Bir sonraki yazımda görüşmek üzere kendinize iyi bakın sevgili yazılımperver dostlarım, sağlıkla kalın.

Kaynaklar

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.