• Cum. Ara 6th, 2024

Arif GÖKÇE

Senior Software Engineer

Unutulmayan Yazılım Hataları ve Sonuçları

Byarifgokce

Kas 13, 2017
error

Eğlenceli bir yaklaşımla tarihteki en pahalı yazılım hatalarını keşfedin! Marsovsky’nin reset düğmesi, otomatik şampuanlı otobüs, Ariane 5 roketi ve daha fazlası. Gelin, yazılım dünyasının eğlenceli ve vahim hatalarını keşfedelim!

Yazılım geliştirmeye dair en önemli kural, hataların en aza indirilmesi ve beklentilere tam anlamıyla karşılanmasıdır. Çünkü kimse “Yazılım yaptım, tamam bitti!” demek istemez, değil mi? O yüzden, yazılım testleri işin en başında başlar, testçiler de o kahramanlardan biridir.

Testçiler, potansiyel hataları yazılımın bebeklik döneminden itibaren bulmaya çalışırlar. Herhangi bir hata bulduklarında, “Hadi bakalım, bana ne yapmışsın sen?” dercesine düzeltmeye çalışırlar. Bilgisayar sistemlerinde hatalar oluşabilir, tabii ki insan veya donanım kaynaklı. Ama bu hataların para pul ve prestij kayıplarına yol açmaması için, test süreci projenin vazgeçilmez bir parçasıdır. Ama şunu unutmayın, mükemmel bir yazılım yoktur ve bir yazılım asla %100 test edilemez.

Zamanında yazılım testi sadece hataları ayıklamak için yapılırdı. Sonra, “Bakın, işte çalışıyor!” demek için testlere başlandı. Ama daha sonra, testlerin yıkıcı olmanın daha iyi sonuçlar verdiği anlaşıldı. Yani, “Bu ne böyle? Olmuş mu olmamış mı?” demek yerine, “Bu hatalıymış be! Hemen düzelteyim!” diye düşünmek daha akıllıca oldu. En azından testçilerin kendine güveni yerine geldi!

1) Kara pazartesi

Eh, bazen yazılımların da günü şaşırdığı olur! Tam da o günlerden biri, 1987 yılında Kara Pazartesi olarak tarihe geçen olaydı. Bir yazılım, hisse senetlerinin otomatik satış talimatlarını yanlış zamanda tetikleyince, dünya borsalarında çığ gibi bir etki yaratmıştı.

Her şey Hong Kong’dan başlamıştı, neredeyse domino etkisi gibi. Bu yazılım hatası, borsadaki tüm panik düğmelerini çalıştırmış gibiydi. Dow Jones endeksi bir günde %23 oranında düşüş yaşadı, S&P 500 endeksi ise %20 değer kaybetti. Herkes şaşkın bir şekilde ekranlara bakıyordu, “Bu ne böyle? Yoksa yazılım mı delirdi?” diye düşündü.

Bu olay, hala kırılmamış bir rekora imza attı. Tarihte görülen en büyük tek günlük düşüşlerden biriydi ve finans dünyasında büyük bir yankı uyandırdı. Kim bilirdi ki, bir yazılım hatasıyla borsaların bu kadar çalkalanabileceğini?

Kara Pazartesi, yazılım geliştirmenin önemini bir kez daha gözler önüne serdi. Herhangi bir hata, büyük sonuçlar doğurabilir. O yüzden, yazılımların düşünceli, “Hadi hızlıca kontrol edeyim de kimseyi sürprizlere bırakmayayım!” modunda çalışması gerektiğini bir kez daha anladık. Ama ne olursa olsun, Kara Pazartesi 1987, yazılım dünyasının unutulmaz bir anısı olarak tarihe geçti!

2) Marsovsky olayı

Unutulmaz yazılım hataları marsovsky olayı.

Mars keşif araştırmaları sırasında yaşanan komik bir yazılım hatasıdır. Bir mars keşif aracının yazılımında meydana gelen bir hata, aracın kumlu bir bölgeye saplanmasına neden oldu. Araştırmacılar ve mühendisler, aracı kurtarmak için çeşitli yöntemler denediler, ancak en etkili çözüm, yazılım hatasını düzeltmek için “Reset” butonuna basıp, aracı tekrar başlatmaktı.

Yani, Mars’a gitmiş olan bir keşif aracı, basit bir “reset” işlemi ile kurtarıldı. Bu olay, teknolojinin karmaşıklığına rağmen bazen en basit çözümlerin bile işe yarayabileceğini ve yazılım hatalarının ciddi sonuçlara yol açabileceğini gösteren ilginç bir örnektir. Mars keşif programları gibi karmaşık ve önemli projelerde bile yazılım hatalarının meydana gelebileceği ve dikkatli test ve doğrulama süreçlerinin ne kadar önemli olduğunu vurgulamaktadır.

3) 500 Milyon Dolarlık Hata

2018 yılında Japonya merkezli bir kripto para borsası olan Zaif, kullanıcılarından yanlışlıkla 500 milyon dolarlık Bitcoin transfer ettiğini açıkladı. Nedeni ise borsanın yazılımında bir hata olmasıydı. Zaif, bu hatayı fark ettiğinde o anki piyasa değeri ısıtıp ışıldayan 500 milyon dolarlık Bitcoin’i geri alabilmek için hızlıca harekete geçti, ancak bazı kullanıcılar bu fırsattan yararlanarak hızlıca satış yapmışlardı. Sonuç olarak, Zaif büyük bir maddi kayıp yaşadı.

4) Yerçekimi Hatası

Bir uydu navigasyon sistemi, yerçekimi hesaplamalarında bir hata yaparak hedefine 200 km fazla gittiğini düşündü ve yolunu düzeltmek için ters yöne döndü. Sonuç olarak, uydu, tamamen yanlış bir yere gitti ve hedefine ulaşamadan boşa uçtu. Hatanın sebebi, yerçekimi hesaplamalarının tersine dönmesi ve yanlış bir rota takip etmesiydi.

5) Uçan Kazık

Bu komik olay, bir uçak tasarımında yapılan bir yazılım hatasına dayanmaktadır. Uçak, yüksek hızda rüzgar tünelinde test edilirken, tünele giren bir kazığı algılamadı ve kazığın üzerinden uçtu. Ancak, yazılım hatası nedeniyle uçak, kazığı geriye doğru iterek, sanki uçan bir kazık gibi görünmesine neden oldu!

Bu olay, uçak tasarımında yazılım hatalarının ciddi sonuçlara yol açabileceğini gösteren ilginç bir örnektir. Rüzgar tüneli testleri, uçak tasarımının doğruluğunu ve güvenliğini değerlendirmek için önemli bir adımdır. Ancak, yazılım hataları gibi beklenmedik durumlar, tuhaf ve komik olaylara yol açabilir. Bu olay aynı zamanda, yazılımın karmaşıklığı ve hataya duyarlı oluşu nedeniyle, uçak gibi yüksek teknolojili sistemlerin tasarımında yazılım doğrulama ve test süreçlerinin ne kadar kritik olduğunu da vurgulamaktadır.

6) Otomatik Şampuan

Bu komik olay, bir otomatik otobüsün yazılımında yapılan bir hataya dayanmaktadır. Otobüsün otomatik sesli anons sistemi, yanlış bir şekilde “şampuan” gibi reklam cümlelerini yüksek sesle duyurmaya başladı.

Yolculardan ve yayalardan beklemedikleri bir anda yüksek sesle “Şampuan, şampuan!” gibi reklam cümlelerini duyarak şaşıranlar oldu. Otobüsün hoparlöründen sürekli olarak bu reklam cümleleri duyulması, yolcularda ve yayalarda oldukça ilginç ve komik bir etki yarattı.

Bu olay, otomatik sistemlerin yazılım hatalarının ne kadar garip sonuçlara yol açabileceğini gösteren eğlenceli bir örnektir. Otomasyon teknolojileri hızla gelişirken, yazılım hatalarının oluşması da kaçınılmaz olabilir. Bu nedenle, otomasyon teknolojileri kullanıldığında, yazılım doğrulama ve test süreçlerinin titizlikle takip edilmesi gerekmektedir, böylece beklenmedik ve komik olayların önüne geçilebilir.

7)Ariane 5 Roket Kazası 

Ariane 5 roket kazası, tarihteki en pahalıya mal olan yazılım hatalarından biridir. Roketin fırlatıldıktan sadece 40 saniye sonra parçalanması, yaklaşık yarım milyar dolarlık bir zarara yol açmıştır.

Kazanın nedeni, Ariane 4 roketinde kullanılan bir modülün, Ariane 5 roketine uyum sağlamadan yeniden kullanılması ve bu modüldeki bir yazılım hatasıydı. Bu hatanın kökeni, 64 bitlik ondalıklı bir sayının 16 bit işaretli bir tam sayıya dönüştürülmesi sırasında ortaya çıkan bir hata idi. Bu dönüşümde beklenenden büyük bir sayı çıkması sonucu, roketin kontrol sistemlerinde hatalı verilerin kullanılması ve sonuçta roketin yanlış bir yöne gitmesi ve parçalanmasıyla sonuçlandı.

Bu olay, yazılım hatalarının ne kadar ciddi sonuçlara yol açabileceğini ve maliyetli hataların yaşanabileceğini gösteren bir örnektir. Yazılım doğrulama, test ve denetim süreçlerinin titizlikle takip edilmesi, karmaşık sistemlerin güvenliğini ve güvenilirliğini sağlamak için önemlidir. Ariane 5 roket kazası, yazılım geliştirme süreçlerindeki hataların maliyetini ve önemini vurgulayarak, yazılım mühendislerinin ve geliştiricilerinin dikkatini çekmiştir.

Ve sonunda, yazılım hatalarının ortaya çıkardığı komik ve vahim olaylar, yazılım mühendislerinin “yazılımın da insan gibi hata yapabileceğini” hatırlamasına ve daha dikkatli test ve doğrulama süreçleri uygulamalarına sebep oldu. Artık, herkes “Reset” butonuna basarak Mars’taki keşif araçlarını kurtarabileceğini, otobüslerin aniden şampuan reklamları yapabileceğini, ve roketlerin matematik hatalarından dolayı patlayabileceğini unutmamıştır. Yazılım hataları, hem dersler çıkarılacak, hem de gülmekten kırıldığımız anılar biriktirecek ilginç maceralara dönüşmüştür!

Gelecek yazılarınızda görüşmek üzere! Başka bir konuda yardımcı olmamı isterseniz her zaman buradayım. Hoşça kalın!