Warsztat pracy
Jak przechodzę od pomysłu do działającej aplikacji.
Nie zaczynam od kodu. Najpierw próbuję zrozumieć proces: kto korzysta z systemu, jakie są role, jakie dane przepływają przez aplikację, gdzie powstają decyzje, co powinno być zapisane, co można zautomatyzować, a czego nie wolno obiecywać. Dopiero później projektuję strukturę aplikacji.
Typowy przebieg pracy
Rozpoznanie problemu
Opisuję, jaki proces wymaga uporządkowania i co dziś działa źle: arkusze, komunikatory, ręczne ustalenia, brak historii, brak statusów, brak raportu.
Model procesu
Rozpisuję role, kroki, dane wejściowe, decyzje, statusy, wyjątki i ograniczenia.
Model aplikacji
Projektuję strukturę ekranów, bazy danych, uprawnień, panelu administracyjnego i głównych przepływów użytkownika.
Prototyp i implementacja
Buduję działającą wersję, zwykle w nowoczesnym stacku webowym. W zależności od projektu dochodzą elementy analityczne, lokalne przetwarzanie danych, eksporty albo automatyzacje.
Dokumentacja, jakość i wersja demo
Opisuję status projektu, ograniczenia, dane demonstracyjne, sposób użycia i możliwe kierunki rozwoju. W projektach wymagających kontroli dodaję też ślad ustaleń, kryteria oceny, materiał dowodowy albo bramkę jakości.
Jak korzystam z narzędzi SI
SI jest częścią warsztatu, nie zastępstwem za rozumienie.
Narzędzia SI wykorzystuję przede wszystkim jako rozszerzenie warsztatu projektowego i programistycznego. Pomagają mi w analizie problemu, rozpisywaniu wariantów, sprawdzaniu luk w założeniach, planowaniu architektury, projektowaniu struktur danych, implementacji i refaktoryzacji, przygotowaniu dokumentacji oraz testowaniu.
Najważniejsze jest dla mnie to, że praca z SI pozwala szybciej przechodzić przez kolejne iteracje: od ogółu do szczegółu i z powrotem. Zanim zacznę planować, sporo czasu spędzam na zastanawianiu się nad zagadnieniem — nad ogółem i szczegółem — i te iteracje powtarzam wielokrotnie na każdym etapie. Dobre użycie SI zaczyna się przed kodowaniem.
Czego nie robię
- Nie przedstawiam projektu jako gotowego produktu, jeśli jest demonstratorem.
- Nie obiecuję zgodności prawnej, jeśli nie ma wskazanej podstawy, procedury oceny, materiału dowodowego i walidacji eksperckiej tam, gdzie jest potrzebna.
- Nie publikuję danych produkcyjnych jako danych demonstracyjnych.
- Nie udaję, że narzędzie SI zastępuje rozumienie problemu.
- Nie traktuję rankingu, raportu albo wyniku systemu jako decyzji bez interpretacji człowieka.