Ogólnie

 

O co chodzi w fazach realizacji oprogramowania po InOpie, wie już chyba każdy. Natomiast modele pojęciowy, logiczny i fizyczny wyglądają gorzej. Z grubsza chodzi o to, że model pojęciowy to zamysł na projekt (o, zrobię taką grę w której się będzie chodziło ludkiem i strzelało), model logiczny (mam 12 naboji w magazynku, 3 strzały zabijają wroga, będzie 15 plansz i jak zabiję wszystkich wrogów na jednej to przechodze do drugiej) i model fizyczny (class Ludek...).

Fazy realizacji oprogramowania

 

  1. Faza strategiczna
    Jest wykonana zanim zostanie podjęta ostateczna decyzja o realizacji dalszych etapów przedsięwzięcia. W przypadku firmy produkującej oprogramowanie jest to faza w której prowadzone są negocjacje z klientem i/lub firma bierze udział w przetargu. W przypadku firmy produkującej oprogramowanie sprzedawane rynkowo, jest to faza w której rozważana jest produkcja nowego programu lecz nie została podjęta ostateczna decyzja o rozpoczęciu prac.
    W fazie strategicznej wykonywane są następujące czynności:
    • Seria rozmów z klientem
    • Określenie celów przedsięwzięcia z punktu widzenia klienta
    • Określenie zakresu oraz kontekstu przedsięwzięcia
    • Ogólne określenie wymagań
    • Propozycja kilku możliwych rozwiązań
    • Oszacowanie kosztów oprogramowania
    • Analiza rozwiązań
    • Prezentacja wyników fazy strategicznej klientowi oraz korekcja wyników na podstawie uwag
    • Określenia wstępnego harmonogramu przedsięwzięcia oraz struktury zespołu realizującego przedsięwzięcie
    • Określenie standardów zgodnie z którymi realizowane będzie przedsięwzięcie

  2. Faza określania wymagań
    Określane są wymagania klienta wobec tworzonego systemu. Dokonywana jest zatem zamiana celów klienta na konkretne wymagania zapewniające osiągniecie tych celów.

  3. Faza analizy - modelowanie systemowe
    Celem jest udzielenie odpowiedzi jak system ma działać? Wynikiem jest logiczny model systemu opisujący sposób realizacji przez system postawionych wymagań lecz abstrahujący od szczegółów implementacyjnych.

  4. Faza projektowania
    Celem fazy projektowania jest opracowanie szczegółowego opisu implementacji Systemu. Opis ten po wykonaniu niezbędnych zmian wprowadzonych w trakcie implementacji oraz testowania stanie się też główną składową dokumentacji technicznej systemu.

  5. Faza implementacji
    W fazie implementacji (kodowania) projekt oprogramowania jest realizowany w wybranym środowisku implementacji.

  6. Faza dokumentacji
    Tworzona jest dokumentacja użytkownika która należy traktować jako integralną składową końcowego produktu.

  7. Faza testowania
    Mówiąc o testowaniu należy rozróżnić:
    • Atestowanie – czyli testowanie zgodności systemu z rzeczywistymi potrzebami użytkownika
    • Weryfikacja – czyli testowanie zgodności systemu z wymaganiami zdefiniowanymi w fazie określania wymagań

  8. Faza instalacji
    Następuję przekazanie systemu użytkownikowi, który w momencie jej zakończenia staje się właścicielem systemu

  9. Faza konserwacji
    Wprowadzanie modyfikacji:
    • Poprawiające – usuwanie błędów z oprogramowania
    • Ulepszające – poprawa jakości oprogramowania
    • Dostosowujące - dostosowanie oprogramowania do zmian zachodzących w środowisku jego pracy

  10. Faza dokumentacji została pominięta, ponieważ powinna ona przebiegać przez cały okres tworzenia oprogramowania
    Planowanie to faza strategiczna i określania wymagań, natomiast pielęgnacja to instalacja plus konserwacja

Charakterystyka modeli

 

Model pojęciowy

  • Model pojęciowy (conceptal model) powstaje w wyniku procesów myślowych i wyobrażeń towarzyszących nad SI
  • Modelowanie pojęciowe jest wspomagane przez wzmacniające ludzką pamięć i wyobraźnię
  • Służy ono do przedstawienia rzeczywistego opisywania danych procesów zachodzących w rzeczywistości, struktur oraz programów składających się na konstrukcje
Model logiczny
  • Jest opisany przy pomocy notacji zgodnej z pewną konwencją;
  • zbudowany przy użyciu dobrze rozpoznanych metod i narzędzi;
  • używany do wnioskowania o przyszłym oprogramowaniu.
  • Logiczny model oprogramowania:
    • pokazuje co system musi robić
    • jest zorganizowany hierarchicznie, wg poziomów abstrakcji
    • unika terminologii implementacyjnej
    • pozwala na wnioskowanie „od przyczyny do skutku” i odwrotnie
Model fizyczny
  • Jest to propozycja konkretnej realizacji (implementacji) modelu logicznego, czyli projekt techniczny oprogramowania i rozwiązań sprzętowych.
  • Analiza systemowa wykorzystuje metodologię CASE, czyli wspomaganego komputerowo projektowania oprogramowania.