Inginerie software
Ingineria software (din engleză: software engineering) este un domeniu ce implică proiectarea, crearea și întreținerea de software aplicând tehnologii și practici din informatică (știința calculatoarelor), managementul proiectelor, inginerie, proiectarea interfețelor și a altor domenii.
Modele
[modificare | modificare sursă]Modelul standard de referință pentru dezvoltarea programelor de calculator este Modelul Waterfall. Acest model conține 4 etape în realizarea programelor de calculator:
- a. Obținerea cerințelor – se scrie un caiet de sarcini
- b. Designul (vezi proiectare de program) – se proiectează architectura de software
- c. Programarea efectivă –
- d1. Verificarea – dacă programul/biblioteca este conform cu caietul de sarcini
- d2. Testarea – dacă funcționează stabil
- e. Întreținerea –
Modelul Cascadă (engl. Waterfall), care mai este încă folosit în Statele Unite pentru proiectele destinate statului, are avantajul că fiecare fază a programării se poate gestiona separat. Astfel se poate plăti separat pentru îndeplinirea fiecărei din aceste etape. Un dezavantaj este faptul că dacă pe parcursul dezvoltării proiectului apar noi cerințe, acestea sunt greu de adăugat în etapa de design.
Un model mai bun este modelul iterativ de dezvoltare a programelor de calculator. În modelul iterativ proiectul este împărțit în iterații, fiecare durând între 2-3 luni. O iterație conține toate etapele modelului Waterfall, însă aceste etape sunt limitate la scopul iterației.
Un avantaj al modelului iterativ este faptul că tehnologia este testată mai rapid. De asemenea modificările cerințelor pot fi adăugate mai ușor.
Legături externe
[modificare | modificare sursă]- Computing Curricula 2005: The Overview Report Arhivat în , la Wayback Machine. by The Joint Task Force for Computing Curricula ACM/AIS/IEEE-CS
- Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering by The Joint Task Force on Computing Curricula ACM/IEEE-CS
- Guidelines for Associate-Degree Transfer Curriculum in Software Engineering Arhivat în , la Wayback Machine. by The ACM Two-Year College Education Committee and The IEEE Computer Society/ACM Joint Task Force on Software Engineering
- Guide to the Software Engineering Body of Knowledge
- Computer Software Engineers Arhivat în , la Wayback Machine. - Definition and statistics from the U.S. Bureau of Labor Statistics
- A Student's Guide to Software Engineering Projects Arhivat în , la Wayback Machine. - a free online guide for students taking SE project courses
- The Open Systems Engineering and Software Development Life Cycle Framework Arhivat în , la Wayback Machine. OpenSDLC.org the integrated Creative Commons SDLC