Jestem programistą-amatorem, a wszystkie moje dotychczasowe programy były na tyle proste, że można je udokumentować w kodzie. Podczas czytania kodu było jasne, co robię w takim przypadku (moim standardowym testem było przyjrzenie się kodowi 6 miesięcy później i zrozumienie wszystkiego przy pierwszym czytaniu - i mam krótki zakres pamięci).
Mam teraz do czynienia z programem, który przerasta moje możliwości zapamiętywania różnych interakcji między nimi
- sam kod
- indeksy w bazie danych
- interakcje między różnymi modułami (kod podstawowy „roboczy” i „biblioteka”)
Moja obecna dokumentacja to biała tablica, na której mam wszelkiego rodzaju pola i strzałki, które wskazują na kod, indeksy baz danych, wykonywane działania, zmiany stanu itp. Tylko dla odniesienia fragment bałaganu:
Moje pytanie brzmi, czy istnieje standardowy lub nazwany zestaw najlepszych praktyk (nazwanych w tym sensie, że jest to zestaw praktyk, które zostały pogrupowane pod konkretną nazwą) do dokumentacji bardziej złożonych produktów.
Jakich słów kluczowych powinienem szukać (ogólne próby „dokumentowania standardów architektury oprogramowania” i podobne odmiany zwykle prowadziły do oprogramowania dla przepływów pracy lub systemów CAD architektury budynku).
Spodziewam się również, że mogą nie istnieć ogólne najlepsze praktyki dotyczące opisów na wysokim poziomie i że każdy zbuduje własną filozofię.