Inżynieria oprogramowania
Inżynieria oprogramowania jest dziedziną inżynierii, zajmującą się projektowaniem i pisaniem programów dla komputerów lub innych urządzeń elektronicznych. Inżynier oprogramowania, lub programista, pisze oprogramowanie (lub zmienia istniejące oprogramowanie) i kompiluje oprogramowanie używając metod, które je ulepszają. Oprogramowanie lepszej jakości jest łatwiejsze w użyciu. Lepsza dokumentacja pomaga innym ludziom zrozumieć i utrzymać je oraz dodawać nowe funkcje. Zostanie inżynierem oprogramowania wymaga doświadczenia i praktyki w pisaniu kodu. Inżynieria oprogramowania może być bardzo trudną pracą. Może być powtarzana podczas cyklu życia oprogramowania.
![Szczegółowy model odniesienia technicznego DoD.](https://alegsaonline.com/image/220px-Detailed_DoD_Technical_Reference_Model.jpg)
![Zoom](https://www.alegsaonline.com/zoom.png)
Szczegółowy model odniesienia technicznego DoD.
Etapy tworzenia oprogramowania
Inżynieria oprogramowania może być ogólnie podzielona na następujące kroki:
- Wymagania mówią, co oprogramowanie powinno robić.
- Projektowanie oprogramowania jest zwykle wykonywane na papierze. Pisze się tam, jakie są poszczególne części oprogramowania i jak one ze sobą rozmawiają.
- Po zakończeniu fazy projektowania, każdy komponent (część) oprogramowania jest kodowany. Kod jest tym, co mówi komputerowi, co dokładnie ma robić na każdym etapie.
- Testowanie jest wykonywane w celu sprawdzenia, czy komponenty spełniają wymagania i czy system jako całość spełnia wymagania.
- Część lub całość tego procesu można powtórzyć, jeśli zostaną znalezione błędy w oprogramowaniu lub potrzebne są nowe wymagania.
Narzędzia używane przy tworzeniu oprogramowania
Inżynierowie oprogramowania używają wielu narzędzi i praktyk podczas tworzenia oprogramowania. Niektóre z najbardziej powszechnych to:
- Schematy blokowe
- Schemat UML
- Narzędzia do debugowania
- Kompilator
- Edytor tekstu, zwykle część IDE - zintegrowanego środowiska programistycznego (Integrated Development Environment)
- Baza danych
Powiązane strony
- Rozwój oprogramowania