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 echipa.
- fixarea deprinderilor necesare pentru planificarea si conducerea unui proiect software.
- invatarea si aplicarea elementelor de baza ale dezvoltarii agile dirijata de modele
- invatarea si aplicarea pasilor dezvoltarii dirijate de testare pe tot parcursul dezvoltarii sistemelor software.	

IV. Conţinutul disciplinei
1. Dezvoltare agila dirijata de modele (AMDD)
  * Activitati si pasi AMDD
  * Iteratii si obiective de atins

2. Procesul unificat OpenUP
  * Livrabile: viziunea proiectului, planul proiectului
  * Roluri: client, sef proiect, dezvoltator, sef echipa

3. Sisteme ce ofera controlul versiunilor fisierelor 
  * Configurarea proiectului
  * SVN

4. Sisteme pentru gestiunea defectelor si a sarcinilor
  * Urmarirea defectelor
  * Gestiunea sarcinilor
  * Bugzilla

3. Modelarea cerintelor
  * Lista de functionalitati
  * Lista de cerinte
  * Model de cazuri de utilizare
  * Detalierea scenariilor de utilizare

4. Modelul initial al domeniului 
  * Modelul conceptual
 
5. Modelarea arhitecturii
  * Arhitectura stratificata
  * Interactiunea cu utilizatorul: ecrane si control
  * Servicii: tranzactii si concurenta
  * Domeniu: entitati, obiecte valorice, validarea obiectelor si depozite de
obiecte
  * Infrastructura: obiecte de acces la date, apelul metodelor la distanta

6. Planificarea proiectului
  * Planificarea cerintelor pe iteratii
  * Construirea unui plan de proiect

7. Modelarea unei iteratii de dezvoltare
  * Rafineaza modelul doeniului (entitati si obiecte valorice)
  * Determina comportamentul sistemului (diagrame de secventa, operatii
sistem, contractul operatiilor)
  * Modeleza obiectele de control si serviciile
  * Construieste lista de sarcini pentru iteratia curenta

8. Dezvoltare dirijata de teste
  * $Adauga teste inainte de a scrie codul functional$
  * Testarea unitatilor de program: entitati, obiecte valorice, depozite de
obiecte, servicii, si control
  * Teste de integrare pentru servicii si control

9. Criterii de evaluare in urmatoarele faze importante ale proiectului
  * Evaluarea obiectivelor stabilite (scop proiect, estimari si planificari,
prioritati, riscuri)
  * Evaluarea arhitecturii (este stabila?, riscurile majore testate,
clientii de acord)
  * Evaluarea operationala (toate operatiile implementate?, testarea
functionala, manual de utilizare)
  * Evaluarea inainte de livrare (satisfactia clientului, acceptarea
produsului)	

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

VII. Metode didactice folosite

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.

IX. Bibliografie suplimentară

	Decan,							Sef de catedra,

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