Proyek dibekukan - apa yang harus saya serahkan kepada orang-orang setelah saya?

14

Jadi proyek yang saya kerjakan sekarang akan dibekukan tanpa batas. Ada kemungkinan bahwa jika dan ketika proyek itu tidak selesai lagi, itu tidak akan diberikan kepada saya atau siapa pun dari tim saat ini. Sebenarnya, kami mewarisi proyek setelah dibekukan sebelumnya, tetapi tidak ada yang tersisa oleh tim sebelumnya untuk membantu kami memahami bahkan kebutuhan dasar proyek, jadi kami membuang banyak waktu untuk mengenal proyek dengan baik. Pertanyaan saya adalah apa yang menurut Anda harus kita lakukan untuk membantu orang-orang setelah kita untuk memahami kebutuhan proyek, apa yang telah kita lakukan, mengapa kita melakukannya, dll. Saya terbuka untuk ide-ide lain mengapa kita harus pergi beberapa trek ke yang lain yang akan bekerja pada proyek ini juga.

Beberapa langkah yang telah kami ambil:

  • dokumentasi teknis (tidak lengkap tetapi setidaknya ada beberapa);
  • sejarah sistem kendali sumber;
  • estimasi bagian mana dari proyek yang perlu diperbaiki dan mengapa kami berpikir demikian;
  • banyak tes unit.
  • pelacak masalah dengan semua tiket yang telah kami lakukan ( EDIT )

Apa yang Anda pikirkan tentang apa yang sudah kami siapkan dan apa lagi yang bisa kami lakukan?

nyxz
sumber
2
pertimbangkan daftar tiket yang mudah diambil dalam pelacak isu yang terkait dengan proyek
agas
1
Sebanyak "Mengapa?" Dijawab dalam README.TXT dengan sumber proyek mungkin.
@gnat, terima kasih atas idenya. Itu mengingatkan saya bahwa saya lupa menyebutkannya. Kami menggunakan pelacak masalah dengan semua tiket. Saya akan menambahkannya ke daftar.
nyxz
1
Saya menumpahkan setitik solidaritas untuk basis kode Anda yang ditinggalkan. zdnet.com/blog/projectfailures/…
Ben DeMott

Jawaban:

9

Ada beberapa hal yang perlu dipertimbangkan

  • Apakah struktur direktori proyek waras? Sudahkah Anda merevisi komentar kode? Apakah log komit bagaimanapun juga dapat ditampilkan?
  • Gambaran umum tujuan gerneral (berlawanan dengan teknis, yang telah Anda mulai), bacaan yang disarankan pada proyek, sejarah proyek (siklus pengembangannya, manajer proyek sebelumnya, daftar staf, persyaratan / spesifikasi fitur)
  • Diagram UML, diagram kelas, diagram alur kerja!
  • Alasan proyek ini dibekukan selalu menyenangkan.
  • Lingkungan pengembangan, IDE yang telah digunakan, membangun alat, ini tercakup dalam dokumen teknis, kan?

Saya hanya memikirkan beberapa hal yang ingin saya lihat pada proyek yang baru-baru ini saya warisi. Apa yang telah Anda berikan adalah jauh lebih banyak daripada yang saya dapatkan. Anda akan menerima poin karma utama untuk membantu tim berikutnya :)

lwm
sumber
8

Hal-hal yang ingin saya miliki ketika mengambil sebuah proyek yang orang lain letakkan adalah:

Bangun instruksi, termasuk versi kerja terakhir yang diketahui dari semua alat di toolchain. Kompiler, IDE, dll berubah dari waktu ke waktu, dan jauh lebih mudah untuk dikerjakan jika pengembang sebelumnya meninggalkan saya petunjuk tentang cara bangun dan berjalan.

Jalankan instruksi lingkungan - apa yang perlu dilakukan untuk menjalankan hal ini? Penyebutan versi apa lagi bermanfaat. Baru-baru ini saya mengambil sesuatu yang membutuhkan set file tertentu berada di tempat tertentu, dan saya harus pergi memeriksa para dev lainnya untuk mencari tahu. Bukan masalah besar karena dev lainnya tersedia, tetapi jika dia tidak ada, maka itu akan menjadi masalah.

Beberapa jaminan bahwa kode yang dikomit ke repositori benar-benar melakukan checkout dan build. Saya pernah mengambil sebuah proyek di mana para dev sebelumnya (untungnya masih ada) telah melakukan beberapa hal yang sangat aneh dengan Makefiles sehingga Anda tidak dapat membangun proyek dari checkout yang bersih. Tak perlu dikatakan, saya pertama-tama harus memperbaiki BAHWA sebelum saya benar-benar bisa melakukan pekerjaan apa pun. Seandainya para dev sebelumnya tidak ada, mungkin perlu waktu lebih lama untuk melewati rintangan itu.

Pernyataan umum tentang maksud proyek. Untuk apa software ini? Sesingkat wajar, tetapi semacam ikhtisar bisa sangat membantu.

Michael Kohne
sumber
+1 untuk rantai alat lengkap. Semua dokumentasi di dunia tidak akan membantu jika Anda tidak dapat membangun dan menguji perangkat lunak. Jika memungkinkan, saya ingin memasukkan gambar instalasi untuk semua alat (meskipun saat ini saya mungkin akan memilih gambar VM semacam). Tidak ada yang lebih buruk daripada mengetahui proses pembuatannya tergantung pada plug-in pihak ketiga dari perusahaan yang tidak ada lagi!
TMN
@ TMN - dan itulah sebabnya saya cenderung menghindar dari hal-hal seperti plugin IDE komersial dan sebagainya. Saya tidak percaya bahwa saya akan dapat mereproduksi lingkungan saya nanti. Dan setelah bekerja pada perangkat lunak yang berumur 20+ tahun, saya TIDAK PERNAH berasumsi bahwa apapun akan hilang
Michael Kohne
4

ScreenCast

Ketika saya meninggalkan pekerjaan terakhir saya, saya benar-benar melakukan screencasts yang belum diedit yang, dari apa yang saya dengar, sangat membantu dalam mendatangkan orang baru. Saya membawa tim saya di sebuah ruangan, menyiapkan mikrofon kondensor dan menjelaskan kepada mereka semua yang saya ketahui tentang proyek tersebut saat merekam audio dan layar. Lalu, saya membiarkan mereka bertanya kepada saya tentang hal itu. Kami dapat memperoleh lebih banyak informasi yang direkam daripada yang dapat kami lakukan jika saya duduk dan mencoba mengetik secepat mungkin sepanjang hari.

Ryan Hayes
sumber
+1 Ini sangat sederhana, tetapi sangat masuk akal.
lwm
2

Jika Anda mengetahui informasi tersebut, tambahkan Persyaratan Bisnis.

  1. Apa yang diinginkan pelanggan?
  2. Bagaimana perubahan memfasilitasi itu?
  3. Apa saja atau beberapa tantangan dalam memenuhi kebutuhan pelanggan?
  4. Kebutuhan apa yang tidak terpenuhi dan mengapa?
Menefee
sumber
1

Gambar mesin virtual (yaitu vm-ware) dari sistem pengembangan yang berjalan sendiri mungkin cukup berharga.

Tahun lalu saya diminta untuk memperbaiki beberapa kode vb3. Cukup sulit untuk membuat kembali sistem yang berjalan dengan vb3, windows95 dan banyak ole-controll yang terpasang. Setelah seminggu saya menyerah :-(

[Pembaruan] Adakah yang punya pengalaman dengan mengonversi gambar mesin virtual lama sehingga dapat diputar di pemutar mesin virtual yang lebih baru?

Anda juga harus mempertimbangkan bahwa tidak mungkin lagi menjalankan gambar yang sangat lama pada perangkat keras / os tamu modern.

k3b
sumber
Pertimbangkan membuka pertanyaan baru tentang memutakhirkan mesin virtual.
@ Thorbjørn Ravn Andersen. Anda benar. Saya merumuskan ulang bagian terakhir dari jawaban saya.
k3b