Projektowanie czy programowanie?

Co powinno być pierwsze?

Projektowanie czy programowanie?
Co powinno być pierwsze?

Patrząc na proces SDLC, kolejne kroki jakie powinny być podejmowane podczas rozwoju oprogramowania są jasne.

Świadomość wysokości kosztów jakie postają podczas naprawy błędów nie zawsze są oczywiste. W celu określenia kosztów projektów dla badacze z IBM sprawdzili koszty naprawy dla każdej fazy tworzenia oprogramowania1.

Koszty w procesie SDLC

Projektowanie

Tworzenie projektu i specyfikacji aplikacji powinno powstawać na początku. Elastyczność jaką daje ta faza powoduję, że koszty związane ze znalezieniem i naprawą takiego błędu są najmniejsze.

Koszt błędy odnaleziony w trakcie projektowania oprogramowania równa się 1. Poprawa takiego błędu wiąże się z minimalnymi kosztami, należy poprawić projekt aplikacji.

Dodatkowo narzędzia CASE pozwalają na modelowanie i sprawdzanie spójności zaprojektowanej aplikacji. Ułatwia to odnajdywanie błędów i w prosty sposób pozwala na ich korektę.

Programowanie

Implementacja rozwiązania wiąże się z utworzeniem rozwiązania co niesie za sobą komplikacje związane z kosztami naprawy błędów.

Wykrycie niezgodności czy błędu w projekcie po napisaniu kodu powoduje zwiększenie nakładów na naprawę. Należy ponownie przeanalizować rozwiązanie i modyfikować wytworzony kod.

Znalezienie błędu na tym etapie powoduje 6,5 razy większe koszty naprawy niż w przypadku poprzedniej fazy.

Testowanie

Proces testowania powinien sprawdzać aplikację na dwóch poziomiach:

  • błędów w aplikacji
  • zgodniości z wymaganiami

Niezależnie od powodu błędu jego naprawa na tym etapie zwiększa się. Trzeba dokonać analizy błędu, jeżeli przeba przeprojektowania rozwiązania, napisanie kodu od nowa, a następnie wykonania ponownych testów.

Znalezienie błędów na etapie testowania powoduje 15 razy większe koszty naprawy niż podczas fazy projektowania.

Wdrożenie

Po wdrożeniu aplikacji na produkcję koszty naprawy są największe. Rozwiązanie zostało już odostępnione użytkownikom końcowym, więc występienie błędu, lub jego ewentualna naprawa może powodować niedostępność aplikacji, co dodatkowo zwiększa koszty związane z usunięciem usterki.

Po wdrożeniu aplikacji koszt naprawy jest 100 razy większy od pierwotnych kosztów naprawy.

Podsumowanie

Koszty naprawy rosną wraz z etapem rozwoju oprogramowanie, ponieważ złożoność i ilość kroków, które muszą zostać wykonane w celu usunięcia błędów rozsną wraz z każdym kolejnym etapem.

Zaplanowanie i przemyślane projektowanie powoduje zmniejszenie kosztów projektu i czas w jakim mogą zostać zrealizowane.

Tak więc, najpierw projektowanie, a następnie kolejne etapy.

Chcesz się ze mną skontaktować:

https://www.nietylkoprogramowanie.pl/kontakt/

  1. https://www.researchgate.net/publication/255965523_Integrating_Software_Assurance_into_the_Software_Development_Life_Cycle_SDLC ↩︎

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *