Inżynieria oprogramowania Przekierowano ze strony: SE ang. software engineering, SE

Inżynieria oprogramowania – dziedzina inżynierii systemów zajmująca się wszelkimi aspektami produkcji oprogramowania: od analizy i określenia wymagań, przez projektowanie i wdrożenie, aż do ewolucji gotowego oprogramowania. Podczas gdy informatyka zajmuje się teoretycznymi aspektami produkcji oprogramowania, inżynieria oprogramowania koncentruje się na stronie praktycznej.

Spis treści

Narodziny inżynierii oprogramowania

Termin "inżynieria oprogramowania" po raz pierwszy został użyty w przełomie lat 1950/1960, ale oficjalnie za narodziny tej dyscypliny podaje się lata 1968 i 1969, w których miały miejsce dwie konferencje sponsorowane przez NATO, odpowiednio w Garmisch-Partenkirchen i Rzymie.

Wyzwania dla inżynierii oprogramowania

Wyzwania dla inżynierii oprogramowania:
  • systemy spadkowe – jak konserwować oprogramowanie, które powstało wiele lat temu i ciągle jest w użyciu
  • systemy heterogeniczne – problem integracji systemów zbudowanych z użyciem różnych języków i technologii
  • sprawna produkcja systemów – umożliwienie produkcji oprogramowania na czas bez uszczerbku dla jego jakości


Produkcja oprogramowania

Wiedza i doświadczenie w dziedzinie inżynierii oprogramowania znajduje zastosowanie w produkcji (rozwoju) oprogramowania (ang. software development).

Fazy procesu produkcji oprogramowania

Proces produkcji oprogramowania dzieli się na pewne fazy, typowy podział to:
  1. specyfikacja – na tym etapie następuje określenie i ustalenie wymagań, które musi spełniać oprogramowanie
  2. projektowanie – ustalenie ogólnej architektury systemu, wymagań dla poszczególnych jego składowych
  3. implementowanie – realizacja ustalonej architektury poprzez wdrożenie składowych (modułów) i połączeń między nimi.
  4. integrowanie – połączenie poszczególnych składowych w jeden system oraz testowanie całego systemu
  5. ewolucja – uruchomienie systemu, usuwanie wykrytych podczas jego używania błędów, rozszerzanie systemu

Filozofie produkcji oprogramowania (techniki programowania)

Można wyróżnić szereg modeli i koncepcji produkcji oprogramowania, w tym:

Języki inżynierii oprogramowania

Inżynieria oprogramowania rozwinęła szereg języków wspomagających proces tworzenia oprogramowania. Obecnie popularność zyskały języki wspierające programowanie obiektowe – najważniejszym z nich jest UML. Inżynieria oprogramowania wypracowała jednak już wcześniej inne metodyki – takie, jak metoda strukturalna Yourdona.

Zobacz też

Linki zewnętrzne

Bibliografia

ostatnia modyfikacja 20 sierpnia 2016 r.