Bunun eski bir soru olduğunu biliyorum & 3 kişi bu cevabı okuduysa şanslı olacağım, ama anlatmak için eğlenceli bir hikaye, ne cehennem.
Bir projeye girdim (gömülü sistemler, güvenlik açısından kritik bellenim, çok yüksek miktarlar) ve bulduklarımdan çok etkilendim. C (özellikle işaretçiler) kullanan insanlar yanlış, statik analiz yok, kod incelemesi yok, "birlikte tümleştir, çalıştır, yendi, neyin kırıldığını görün" den başka test yok.
İlk haftamda (danışman olarak) çok uzun bir e-posta yazdım. Çok kötüydü çünkü temelde yanlış idare edildiğini, geliştiricilerin başlarının üzerinde olduğunu, hiçbir işlemin takip edilmediğini vb. Söylüyordum. ben mi. Bu konuda tamamen savunmacı değildi, aslında eksikliklerin birçoğunu kabul etti ve bana ilk dikkat çeken kişi olmadığımı söyledi (şaka yapmıyor, doğru değil).
Orjinal sorunun cevabını cevaplamak için: EN ÇOK 1 hafta adamını Gimpel'in Lint (PC-Lint / Flexelint) statik analiz aracını ayarlayıp platformlarında çalışarak geçirmeyi ve bulunan her şeyin tam bir raporunu çalıştırmayı önerdim. . Onlara sonuç olarak birkaç gizlenen "timebombs" bulacağımızdan kesinlikle emin olduğumu söyledim.
Saatlik oranımı hesapladılar, 40 ile çarptılar ve “bunu yapmak için çok pahalı” olduğunu belirlediler. Uzun lafın kısası, 60 gün içinde oradan ayrıldım. Yaklaşık 3 yıl sonra, ürünün itibarına zarar vermekten bahsetmeksizin, ürünlerin 9 rakamına (100 milyon dolar) yaklaştığını hatırladım.
Şirketten, üründen veya sektörden bahsetmiyorum ama yine de oradaki mühendislerden biriyle iletişimimi sürdürüyorum ve bana hatırlamaya neyin yol açtığını açıkladığımda gözlerim yuvarlandı - bu bir problemdi. Hatta basit bir statik analiz aracı tarafından yakalandı (sınırların dışında bir diziye erişme). Adil olmak gerekirse, sorunun orada olduğumda kodda olduğunu kesin olarak söyleyemem, ancak parayı bir tür statik analiz aracı için harcadılar mı, bu hatanın kaçmayacağına eminim.
Bu yüzden PC-Lint satın almadıkça 295 $ biriktirdiler (Tamam, onlar da bana en fazla bir hafta ödeme yaptılar) - ama bir hafta boyunca 100 milyon dolar alabilecek kadar iyi bir yerim yok.
Ben buna çok büyük para israfı derim.
Bana birçoğunuzun daha önce duymuş olabileceği bir şakayı hatırlatıyor:
Hiç başarısız olan dev gemi motorunun hikayesini duydunuz mu? Geminin sahipleri birbiri ardına bir uzman denedi ama hiçbiri motoru nasıl düzeltebileceğini anlayamadı. Sonra genç yaşından beri gemileri tamir eden yaşlı bir adamı getirdiler. Yanında büyük bir alet çantası taşıyordu ve geldiğinde hemen işe gitti. Motoru yukarıdan aşağıya çok dikkatlice inceledi.
Geminin sahiplerinden ikisi oradaydı, ne yapacağını bileceğini umarak bu adamı izliyordu. Olayları inceledikten sonra, yaşlı adam çantasına girdi ve küçük bir çekiç çıkardı. Yavaşça bir şeye dokundu. Anında, motor canlandı. Çekiçini dikkatlice uzaklaştırdı. Motor tamir edildi! Bir hafta sonra, mülk sahipleri yaşlı adamdan 10.000 dolarlık bir fatura aldı.
"Ne?!" sahipleri haykırdı. "Neredeyse hiçbir şey yapmadı!"
Böylece yaşlı adama, "Lütfen bize ayrıntılı bir fatura gönderin" diyerek bir not yazdılar.
Adam okuyan bir fatura gönderdi:
Tapping with a hammer ........ $ 2.00
Knowing where to tap ......... $ 9998.00
Çaba önemlidir, ancak ne yaptığınızı bilmek her şeyi değiştirir.