Proje donmuş - benden sonra insanlara ne bırakmalıyım?


14

Üzerinde çalıştığım proje şimdi süresiz olarak dondurulacak. Proje tekrar çözülürse ve çözülürse, bana ya da şu anki ekipten kimseye atanmayacağı mümkündür. Aslında, projeyi daha önce donduktan sonra miras aldık, ancak önceki ekibin projenin temel ihtiyaçlarını bile anlamamıza yardımcı olacak hiçbir şey kalmadı, bu yüzden projeyi iyi tanımak için çok zaman harcadık. Benim sorum, sizden sonraki insanlara projenin ihtiyaçlarını, yaptığımızı, neden yaptığımızı vb. En iyi şekilde anlamalarına yardımcı olmak için ne yapmamız gerektiğini düşünüyorsunuz? Neden ayrılmamız gerektiğine dair diğer fikirlere açığım bazıları da bu proje üzerinde çalışacak diğerlerini izler.

Daha önce attığımız bazı adımlar:

  • teknik dokümantasyon (dolu değil ama en azından bazıları var);
  • kaynak kontrol sistemi geçmişi;
  • projenin hangi bölümlerinin iyileştirilmesi gerektiğini ve neden böyle düşündüğümüzü tahmin etmek;
  • grup testleri.
  • yaptığımız tüm biletleri ( EDIT ) takip izleyicisi

Zaten hazırladıklarımız hakkında ne düşünüyorsunuz ve başka ne yapabiliriz?


2
proje ile ilgili sayı izleyicide biletlerin kolay ulaşılabilir bir listesini düşünün
gnat

1
"Why?" 'Birçok itibariyle BENİOKU.TXT en cevabını s proje kaynaklarıyla mümkün olduğunca.

@gnat fikir için teşekkürler. Bana bundan bahsetmeyi unuttuğumu hatırlattı. Tüm biletlerde sayı izleyici kullanıyoruz. Listeye ekleyeceğim.
nyxz

1
Terk edilmiş kod tabanınız için tek bir dayanışma gözyaşı döküyorum. zdnet.com/blog/projectfailures/…
Ben

Yanıtlar:


9

Dikkate alınması gereken bazı şeyler

  • Proje dizini yapısı aklı başında mı? Kod yorumlarını gözden geçirdiniz mi? İşlem kaydı bir şekilde sunulabilir mi?
  • Genel amaçlı genel bakış (başlamış olduğunuz teknikten farklı olarak), Proje hakkında tavsiye edilen okuma, proje geçmişi (geliştirme döngüsü, önceki proje yöneticileri, personel listesi, gereksinimler / özellik belirtimi)
  • UML diyagramları, sınıf diyagramları, iş akış diyagramları!
  • Projenin dondurulma nedenleri her zaman iyidir.
  • Geliştirme ortamı, kullanılan IDE'ler, araçlar oluşturma, bunlar teknik dokümanlarda kapsanıyor değil mi?

Kısa süre önce miras aldığım bir projede görmek isteyeceğim bazı şeyleri düşündüm. Daha önce verdiğiniz şey, sahip olduğumdan çok daha fazla bir cehennem. Bir sonraki takıma yardım ettiğiniz için önemli karma puanlar alacaksınız :)


8

Başkasının koyduğu bir projeyi alırken sahip olmak istediğim şeyler:

Araç zincirindeki tüm araçların bilinen en son çalışan sürümlerini içeren talimatları oluşturun. Derleyiciler, IDE'ler, vb. Zamanla değişir ve önceki geliştiriciler bana nasıl başlayıp çalışmaya başlayacağına dair talimatlar bırakırsa çalışmak çok daha kolaydır.

Çevre talimatlarını çalıştırın - bu şeyi çalıştırmak için neler olması gerekir? Hangi sürümlerin bir kez daha yararlı olduğu. Kısa bir süre önce belirli bir yerde belirli bir dosya kümesinin olmasını gerektiren bir şey aldım ve bunu anlamak için diğer geliştiricileri test etmek zorunda kaldım. Diğer geliştirici bulunduğundan beri büyük bir anlaşma değil, ama olmasaydı sorunlu olurdu.

Depoya işlenen kodun aslında ödeme ve oluşturma yaptığına dair bazı güvenceler. Bir zamanlar önceki geliştiricilerin (neyse ki hala etrafta) Makefiles ile gerçekten tuhaf şeyler yaptığı bir proje aldım, böylece projeyi temiz bir kasada inşa edemezdiniz. Söylemeye gerek yok, aslında herhangi bir iş yapmadan önce bunu düzeltmek zorunda kaldım. Önceki geliştiriciler mevcut olmasaydı, bu engeli aşmak çok daha uzun sürebilirdi.

Projenin amacına ilişkin genel bir açıklama. Bu yazılım ne işe yarıyor? Mümkün olduğu kadar kısa, ancak bir tür genel bakış gerçekten yardımcı olabilir.


Komple zincir için +1. Yazılımı oluşturamaz ve test edemezseniz dünyadaki tüm belgeler yardımcı olmaz. Mümkün olduğunda, tüm araçlar için kurulum görüntülerini dahil etmek istiyorum (bugünlerde muhtemelen bir çeşit VM görüntüsü tercih ediyorum). Derleme sürecini bulmaktan daha kötü bir şey, artık var olmayan bir şirketin üçüncü taraf eklentisine bağlı değildir!
TMN

@TMN - ve bu yüzden ticari IDE eklentileri gibi şeylerden uzak durma eğilimindeyim. Daha sonra çevremi yeniden üretebileceğime güvenmiyorum. Ve 20 yaş üstü yazılım üzerinde çalıştığımdan, ASLA hiçbir şeyin ortadan kalktığını varsaymam.
Michael Kohne

4

Bir ScreenCast

Son işimden ayrıldığımda aslında duyduğumdan yeni insanlara katılmada çok yardımcı olan düzenlenmemiş ekranlar yaptım. Ekibimi bir odaya aldım, bir kondenser mikrofon kurdum ve ses ve ekranı kaydederken proje hakkında bildiklerimi açıkladım. Sonra bana bu konuda soru sormalarına izin verdim. Oturup bütün gün olabildiğince hızlı yazmaya çalıştığımdan daha fazla bilgi kaydedebildik.


+1 Bu çok basit, ama çok mantıklı.
lwm

2

Bilgilere özelseniz İşletme Gereksinimleri ekleyin.

  1. Müşteri ne istedi?
  2. Değişiklikler bunu nasıl kolaylaştırdı?
  3. Müşterilerin ihtiyaçlarının karşılanmasındaki zorluklardan bazıları nelerdi veya nelerdi?
  4. Hangi ihtiyaçlar karşılanmadı ve neden?

1

Bağımsız çalışan bir sistemin sanal makine görüntüsü (yani vm-ware) oldukça değerli olabilir.

Geçen yıl bazı vb3 kodlarını düzeltmem istendi. Vb3, windows95 ve çok sayıda kurulu ole kontrol ile çalışan bir sistem oluşturmak çok zor oldu. Bir hafta sonra vazgeçtim :-(

[Güncelleme] Eski sanal makine görüntülerini daha yeni bir sanal makine oynatıcısında oynatılabilmesi için dönüştürme tecrübesi olan var mı?

Ayrıca, modern bir donanım / konuk işletim sisteminde çok eski bir görüntü çalıştırmanın artık mümkün olmayabileceğini de düşünmelisiniz.


Sanal makineleri yükseltme hakkında yeni bir soru açmayı düşünün.

@ Thorbjørn Ravn Andersen. Haklısın. Cevabımın son kısmını yeniden biçimlendirdim.
k3b
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.