Analiza oraz projektowanie

Początek to bardzo delikatny czas. W tym okresie zostają opracowane fundamenty każdego systemu informatycznego, a kluczem do jego sukcesu będzie solidny projekt. Brak staranności na tym etapie może spowodować niekontrolowaną eskalację kosztów rozwoju systemu w przyszłości. W skrajnych przypadkach wymagane jest nawet przepisanie całego oprogramowania na nowo.

Analiza wymagań

Najbardziej ogólna faza analizy, w której:

  1. Identyfikujemy osoby po stronie klienta, które będą aktywnie zaangażowane w projekt.
  2. Zbieramy od nich wymagania stawiane przed nowym systemem IT.
  3. Sprawdzamy czy niektóre wymagania od różnych uczestników projektu są sprzeczne i wymagają konsolidacji między nimi.

Produktem tej fazy jest dokument, który opisuje ogólne cele, które system albo:

  • musi spełnić – twarde wymagania,
  • powinien spełnić jeżeli nie są zbyt kosztowne – wymagania miękkie.

Analiza procesów

Ten typ analizy jest wykonywany jeżeli nowy system IT będzie ingerował w już istniejące procesy biznesowe lub przemysłowe w firmie. Analityk udokumentuje ich obecny stan w formie tzw. przypadków użycia i diagramów przepływu aby w pełni poznać jak one funkcjonują. Nowe bardziej szczegółowe wymagania zazwyczaj powstają w tej fazie i rozszerzą dokument analizy wymagań. Następnie projekt funkcjonalny będzie się odwoływał do dokumentu analizy procesów za każdym razem gdy pojawi się w nim ulepszenie lub zmiana już istniejącego procesu.

Projekt funkcjonalny

Projekt funkcjonalny stanowi szczegółowy opis jak system będzie działał z perspektywy użytkowników końcowych. Aby zrobić to w sposób precyzyjny będzie zawierał:

  • przypadki użycia – dokumentujące procesy wspierane przez system,
  • makiety GUI – szkice, które przedstawią jak będzie wyglądał i zachowywał się interfejs użytkownika.

Powstały dokument projektowy da wszystkim osobom zaangażowanym w projekt szczegółowy pogląd jak system będzie funkcjonował w ich firmie oraz jak spełni on ich wymagania.

Projekt techniczny

Projekt techniczny stanowi ogólny opis jak będą wyglądać wewnętrzne struktury systemu. Zawiera następujące elementy:

  • ogólna architektura opisana poprzez diagram wdrożenia UML,
  • inne diagramy UML opisujące najbardziej kluczowe elementy systemu jak np.:
    • fundamentalny model danych,
    • podział usług systemu oraz ich interfejsy programistyczne,
  • lista technologii, które zostaną wykorzystane to jego implementacji oraz funkcjonowania.