Inżynieria oprogramowania

W tym artykule przyjrzymy się fascynującemu światu Inżynieria oprogramowania i jego wpływowi na społeczeństwo. Od niepamiętnych czasów Inżynieria oprogramowania był przedmiotem badań, debat i refleksji, przyciągając uwagę ludzi w każdym wieku, kulturach i kontekstach. Na przestrzeni dziejów Inżynieria oprogramowania odegrał fundamentalną rolę w ewolucji ludzkości, wpływając na kluczowe aspekty naszego codziennego życia. Dzięki głębokiej i wnikliwej analizie odkryjemy tajemnice i zawiłości otaczające Inżynieria oprogramowania, oferując szeroką i wzbogacającą wizję, która pozwoli nam lepiej zrozumieć jego znaczenie i znaczenie we współczesnym świecie. Zanurz się w tej ekscytującej podróży odkrywczej i poszerz swoje horyzonty na temat Inżynieria oprogramowania.

Jednym z podstawowych zagadnień inżynierii oprogramowania jest projektowanie systemów informatycznych w UML

Inżynieria oprogramowania (ang. software engineering, SE) – dyscyplina informatyczna stosująca podejście inżynierskie do tworzenia oprogramowania[1][2]: od analizy i określenia wymagań, przez projektowanie i wdrożenie, aż do ewolucji gotowego oprogramowania.

Termin inżynieria oprogramowania po raz pierwszy został użyty w przełomie lat 1950/60, 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 i Rzymie.

Wyzwania

Do największych wyzwań w dziedzinie inżynierii oprogramowania należą:

  • zapewnienie, zarówno wstecznej, jak i przyszłej; kompatybilności między-systemowej i ciągłości działania (systemy spadkowe)
  • integralność i kooperacja systemów opartych na różnych technologiach (systemy heterogeniczne)
  • minimalizacja czasu produkcji oprogramowania przy jednoczesnej maksymalizacji jego jakości (metodyki produkcji systemów)

Proces produkcji oprogramowania

Fazy

W inżynierii oprogramowania wyróżnia się od kilku do nawet kilkunastu etapów w procesie jego produkcji, w zależności od potrzeb. Typowym podstawowo istniejącym podziałem jest:

  1. specyfikacja – 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. implementacja – realizacja ustalonej architektury poprzez implementację jego składowych (modułów) i połączeń między nimi.
  4. integracja – zintegrowanie poszczególnych składowych w jeden system, testowanie całego systemu
  5. ewolucja – uruchomienie systemu, usuwanie wykrytych podczas jego używania błędów, rozszerzanie systemu

Metodyki

Można wyróżnić szereg metodyk dotyczących procesu produkcji oprogramowania (zarządzania przedsięwzięciem programistycznym), w tym:

Metody opisu

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ż

Przypisy

  1. The Joint Task Force for Computing Curricula, A volume of the Computing Curricula Series , web.archive.org, 2015 .
  2. GND, Katalog der Deutschen Nationalbibliothek , portal.dnb.de .

Linki zewnętrzne