Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licenţă
Domeniul: Calculatoare şi tehnologia informaţiei
Programul de studii: Ingineria informatiei - in limba romana
Limba de predare: Română

SYLLABUS

I. Date generale
Codul	Disciplina	
MID0008	Proiect colectiv	

Semestrul	Ore: C+S+L	Categoria	Statutul	
4	0+0+2		obligatorie	

II. Cadre didactice cu norma de bază în Universitate
Numele şi	Titlul	Gradul	Catedra	Tipul activităţii	
prenumele	ştiinţific	didactic		C	S	L	
PÂRV Bazil	Dr. 	Prof.	Limbaje şi Metode de Programare			*	

Cadre didactice asociate
Numele şi	Titlul	Instituţia	Tipul	Tipul activităţii	
prenumele	ştiinţific		postului	C	S	L	

III. Obiectivele disciplinei
- fixarea deprinderilor necesare pentru lucrul in echipă.
- fixarea deprinderilor necesare pentru planificarea si conducerea unui proiect software.
- învăţarea şi aplicarea elementelor de bază ale dezvoltării agile dirijate de modele
- învăţarea şi aplicarea paşilor dezvoltării dirijate de testare pe tot parcursul dezvoltării sistemelor software.	

IV. Conţinutul disciplinei
1. Dezvoltarea agilă dirijată de modele Agile Model Driven Development (AMDD)
2. Procesul unificat deschis Open Unified Process (OpenUP)
3. Sisteme de control al versiunilor Version control systems
4. Sisteme de urmărire/monitorizare Tracking systems
3. Modelarea cerinţelor Requirements modeling
4. Modelul iniţial al modelului Initial domain model 
5. Modelul iniţial al arhitecturii Initial architectural modeling
6. Planificarea proiectelor Project planning
7. Modelarea iteraţiilor Iteration modeling
8. Dezvoltarea dirijată de teste Test-driven development
9. Criterii de evaluare pentru jaloane Evaluation criteria for the project milestones	

V. Bibliografie
1. Bugzilla, http://www.bugzilla.org/ 
2. OpenUP, http://epf.eclipse.org/wikis/openup/ 
3. Scott W. Ambler. Agile Model Driven Development (AMDD): The Key to Scaling Agile Software Development. http://www.agilemodeling.com/essays/amdd.htm 
4. Subversion, http://subversion.tigris.org/ 	

VI. Tematica activităţilor didactice pe săptămâni
Activităţi detaliate
A01. Dezvoltarea agilă dirijată de modele (AMDD): Activităţi şi paşi. Iteraţii şi obiective de atins
A02. Procesul unificat OpenUP. Livrabile: viziunea proiectului, planul proiectului. Roluri în echipă: client, şef proiect, dezvoltator, şef echipă
A03. Sisteme pentru controlul versiunilor fişierelor (CVS, SVN). Configurarea proiectului. SVN
A04. Sisteme pentru gestiunea defectelor şi a sarcinilor. Urmărirea defectelor. Gestiunea sarcinilor. Bugzilla.
A05. Modelarea cerinţelor. Lista de funcţionalităţi. Lista de cerinţe. Modelul cazurilor de utilizare.  Detalierea scenariilor de utilizare.
A06. Modelul iniţial al domeniului. Modelul conceptual
A07. Modelarea arhitecturii. Arhitectura stratificată. Interacţiunea cu utilizatorul: ecrane şi control.  Servicii: tranzacţii si concurenţă. Domeniul problemei: entităţi, obiecte valorice, validarea obiectelor şi depozite de obiecte. Infrastructura: obiecte de acces la date, apelul metodelor la distanţă.
A08. Planificarea proiectului. Planificarea cerinţelor pe iteraţii. Construirea planului proiectului
A09. Modelarea unei iteraţii de dezvoltare. Rafinarea modelului domeniului (entităţi şi obiecte valorice). Determinarea comportamentului sistemului (diagrame de secvenţă, operaţii sistem, c contractul operaţiilor). Modelarea obiectele de control şi serviciilor. Construirea listei de sarcini pentru iteraţia curentă
A10. Dezvoltarea dirijată de teste. Adăugarea de teste înainte de a scrie codul funcţional. Testarea unităţilor de program: entităţi, obiecte valorice, depozite de obiecte, servicii, control. Teste de integrare pentru servicii şi control
A11. Criterii de evaluare in urmatoarele faze importante ale proiectului. Evaluarea obiectivelor stabilite (scop proiect, estimări şi planificări, priorităţi, riscuri). Evaluarea arhitecturii (stabilitate, riscuri majore testate, acordul clienţilor). Evaluarea operaţională (toate operaţiile implementate, testarea funcţională, manual de utilizare). Evaluarea înainte de livrare (satisfacţia clientului, acceptarea produsului).
Plan pe săptămâni
S01: aspecte organizatorice, A01-A04
S02: A05-A08 
S03: A08
S04-S13: Iteraţii de dezvoltare, A09, A10
S14: A11
Jaloane: S04, S07, S12, S14
În S14 se va realiza o prezentare cu public a sistemului realizat.	

VII. Metode didactice folosite
Se folosesc următoarele metode: conversaţia, modelarea, problematizarea, dezbaterea, enunţarea, discutarea şi explicarea unor studii de caz şi exemple de programare.	

VIII. Evaluare
Evaluarea va consta din urmărirea şi notarea activităţilor săptămânale, cu predarea la timp a fiecărui componente şi elaborarea documentaţiei. In ultima saptamana se va realiza o prezentare publica a aplicatiei realizate.
Fiecare jalon va examina stadiul de realizare a planului propus, al sistemului soft şi al documentaţiei aferente şi se va încheia cu o notă. Se va urmări aportul echipelor şi aportul individual al fiecărui membru
Nota finală se obţine din următoarele:
•	nota activităţilor din timpul semestrului (medie aritmetică a notelor obţinute la jaloanele S04, S07, S12) - 60%
•	nota obţinută la prezentarea publică S14, 30%
•	activitatea individuală şi implicarea în proiect - 10%	

IX. Bibliografie suplimentară
Application Architecture for .NET: Designing Applications and Services, Microsoft Patterns and Practices Series, http://msdn.microsoft.com/en-us/library/ms954595.aspx
.NET Data Access Architecture Guide, Microsoft Patterns and Practices Series, http://msdn.microsoft.com/en-us/library/ms978510.aspx
Developer’s Guide Sun ONE Web Services Platform Developer Edition , http://dlc.sun.com/pdf/817-1243-10/817-1243-10.pdf
Modelarea agilă: www.agiledata.org, www.agilemodeling.com	

	Decan,							Sef de catedra,

	Data,							Titular curs,
								Prof. Dr.  PÂRV Bazil