Proces - O Viziune Generică
Ingineria Software ca o Tehnologie Stratificată
Se bazează pe abordarea organizaț ională a calităț ii, de exemplu, managementul total al calităț ii
ș i astfel pun accent pe îmbunătăț irea continuă a proceselor (care devine din ce în ce mai
abordări mai eficiente în ingineria software
Stratul de proces oferă un cadru pentru utilizarea eficientă a software-ului
tehnologii. Formează o bază pentru controlul managementului ș i stabileș te
context în care sunt aplicate metodele tehnice, produsele de lucru produse,
etapele stabilite, calitatea este asigurată ș i schimbarea este gestionată.
Metodele oferă instrucț iuni tehnice „cum să”. Metodele includ o gamă largă de
sarcini care includ comunicarea, analiza cerinț elor, designul
modelling, programming, and testing. Software engineering methods rely
pe un set de principii de bază care guvernează fiecare domeniu al tehnologiei.
Instrumentele oferă suport automatizat sau semi-automatizat pentru proces ș i
metode.
1
Cadru de Proces
Identifică un număr mic de activităț i cadru care sunt aplicabile pentru
toate proiectele de software.
În plus, cadrul cuprinde activităț i umbrelă care sunt
aplicabil pe tot parcursul procesului software.
2
Generic Process Framework Activities
Fiecare activitate a cadrului este populată de un set de inginerie software
acț iuni. O acț iune, de exemplu designul, este o colecț ie de sarcini legate între ele care produc
un produs major de inginerie software.
Comunicare – multă comunicare ș i colaborare cu clientul
ș i alț i părț i interesate.. Include colectarea cerinț elor.
Planificare - stabileș te planul pentru munca de inginerie software care urmează.
Descrie sarcinile tehnice, riscurile posibile, resursele necesare, produsele de lucru
ș i un program de lucru
Modelare – cuprinde crearea de modele care permit dezvoltatorului ș i
client să înț eleagă mai bine cerinț ele software-ului ș i designul care
va atinge aceste cerinț e.
Construcț ie – generare de cod ș i testare.
Implementare – software-ul, parț ial sau complet, este livrat clientului
cine evaluează ș i oferă feedback.
Activitate de modelare – compusă din două acț iuni de inginerie software
• analiză - compusă din sarcini de lucru (de exemplu, colectarea cerinț elor,
elaborare, specificaț ie ș i validare) care conduc la crearea de
model de analiză ș i/sau specificaț ie de cerinț e.
• design - cuprinde sarcini de lucru precum designul datelor, arhitectural
design, design de interfaț ă ș i design la nivel de componentă. duce la
crearea unui model de design ș i/sau a unei specificaț ii de design.
3
Proiectele diferite necesită seturi de sarcini diferite. Echipa de software alege sarcina
setat în funcț ie de caracteristicile problemei ș i proiectului.
De exemplu:
Colectarea cerinț elor este o acț iune importantă în ingineria software care
apare în timpul activităț ii de comunicare. Scopul este de a înț elege ce
diverse părț i interesate doresc de la software-ul care urmează să fie construit.
Pentru un proiect mic ș i simplu, setul de sarcini pentru colectarea cerinț elor ar putea fi:
1. face ț i o listă de păr ț i interesate
2. invită păr ț ile interesate la o întâlnire informală
3. cere fiecăruia să facă o listă de caracteristici ș i func ț ii necesare
4. discută cerin ț ele ș i construie ș te o listă finală
5. prioritiza cerin ț ele
6. nota ț i zonele de incertitudine
Pentru proiecte mai mari ș i mai complexe:
1. face ț i o listă de păr ț i interesate
2. intervieva ț i fiecare părinte interesat separat pentru a determina dorin ț ele generale
ș i nevoi
3. construie ș te o listă preliminară de func ț ii ș i caracteristici bazate pe
inputul părț ilor interesate
4. programa ț i o serie de întâlniri facilitate pentru colectarea cerin ț elor
5. desfă ș urarea întâlnirilor
6. produce scenarii informale de utilizare ca parte a fiecărei întâlniri
7. rafina ț i scenariile utilizatorilor pe baza feedback-ului
8. construie ș te o listă revizuită a cerin ț elor
9. folose ș te desfă ș urarea func ț iei de calitate pentru a prioritiza cerin ț ele
10. cerinț ele pachetului astfel încât să poată fi livrate incremental
11. notaț i constrângerile care vor fi impuse sistemului
[Link]ț i metodele de validare a sistemului
4
Activităț i Umbrelă
Cadru este completat de o serie de activităț i umbrelă. Tipic
ones are:
• Urmărirea ș i controlul proiectelor software - permite echipei de software să
evaluaț i progresul în raport cu planul de proiect ș i luaț i măsurile necesare pentru
menț ine programul.
• Managementul riscurilor – evaluarea riscurilor care pot afecta rezultatul
proiectul sau calitatea produsului.
• Revizii tehnice formale - evaluează munca de inginerie software
produse pentru a descoperi ș i elimina erorile înainte de a fi propagate
către următoarea acț iune sau activitate.
• Măsurare – defineș te ș i colectează procesul, proiectul ș i produsul
măsuri care ajută echipa în dezvoltarea software-ului
• Managementul configurării software – gestionează efectul
schimbare pe parcursul procesului software
• Gestionarea reutilizării – defineș te criteriile pentru reutilizarea produselor de lucru
ș i stabileș te mecanisme pentru a obț ine componente reutilizabile
• Pregătirea ș i producț ia produselor de lucru – lucrări incluse
activităț ile necesare pentru a crea produse de lucru precum documente, jurnale,
formulare ș i liste.
Toate procesele pot fi descrise cu cadrul de mai sus. Inteligent
adaptarea oricărui model de proces la problemă, echipă, proiect ș i
cultura organizaț ională este esenț ială.
Modelele de proces diferă în:
• fluxul general al activităț ilor ș i interdependenț ele dintre activităț i
ș i sarcină
• gradul în care sarcinile sunt definite
• gradul în care produsele de muncă sunt identificate ș i necesare
• modul în care sunt aplicate activităț ile de asigurare a calităț ii
• modul în care se realizează urmărirea ș i controlul proiectului
5
Procesul Unificat mapat pe Cadru de Proces