Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licență

FISA DISCIPLINEI

Codul
Denumirea disciplinei
MID0006 Proiect individual
Specializarea
Semestrul
Ore: C+S+L
Categoria
Statutul
Informatică
3
0+0+1
specialitate
obligatorie
Ingineria informatiei
3
0+0+1
specialitate
obligatorie
Titularii de disciplina
Asist. VESCAN Andreea,  avescancs.ubbcluj.ro
Lect. GURAN Adriana Mihaela,  adrianacs.ubbcluj.ro
Conf. Dr. CSATO Lehel,  csatolcs.ubbcluj.ro
Lect. Dr. TRÎMBITAS Gabriela,  gabitrcs.ubbcluj.ro
Lect. Dr. OLAH-GAL Robert,  robert.olah-galcs.ubbcluj.ro
Obiective
1. Fixarea deprinderilor de realizare a unui produs program corect (cu implementare in C++ sau Java ), prin parcurgerea tuturor etapelor necesare(specificare, proiectare, implementare, verificarea activitatilor, validarea si documetarea) şi reflectarea lor într-o documentaţie completă.
2. Se va pune accent deosebit pe scrierea cât mai clară a documentaţiei complete şi la timp.
Continutul
- Realizarea unui produs program cu respectarea tuturor etapelor: specificare, proiectare, codificare,
verificarea fiecărei etape (inspectare si testare);
- Elaborarea documentaţiei de realizare (in paralel cu derularea etapelor), pentru fiecare etapă în parte;
- Elaborarea documentaţiei de utilizare.
- Documentatiile aferente fiecarei etape de creare a produsului soft vor contine:

D1. Documentatia problemei – Enuntul problemei in limbaj natural (fara referiri la modul de implementare) – a se specifica CE trebuie sa realizeze produsul soft si nu CUM.

D2. Specificarea riguroasa a problemei care sa cuprinda specificarea datelor de intrare (DATE) si a rezultatelor asteptate (REZULTATE). Specificarea semnificatiei pentru fiecare data de intrare si iesire, precum si a preconditiilor si a postconditiilor.
Tema proiectului va fi preluata in primul laborator. Specificare problemei trebuie sa cuprinda:
- functionalitatile pe care produsul soft trebuie sa le realizeze;
- datele de intrare;
- calculele necesare;
- rezultatele;
- documentele utilizate si rapoartele necesare;
- dimensiunea datelor.

D3. Documentatia de proiectare va contine:
- toate digramele necesare;
- specificarea fiecarui subalgoritm prin specificare semanticii fiecarui argument;
- subalgoritmii specificati in limbajul Pseudocod.

D4. Codul sursa (doar in format electronic)
Codul sursa trebuie sa contina suficiente comentarii pentru documentarea interna a programului. Codul sursa trebuie scris cu grija, mai ales din punct de vedere al claritatii si al usurintei de a intelege programul de catre alte persoane.

D5. Documentatia de testare trebuie sa cuprinda date de test pentru fiecare subalgoritmi utilizat si pentru fiecare functionalitate implementata. Crearea cazurilor de testare se va face pe baza cutiei negre (black-box testing) si pe baza cutiei transparente (white-box testing).

D6. Documentatia de utilizare (doar in format electronic).

Reguli/observatii:
1) Datele de intrare si de iesire ale problemei, cele cu caracter permanent, vor fi predate in fisiere text. (formatarea datelor de iesire este necesara). Exemplu: lista persoanelor care locuiesc intr-un bloc de apartamente sau lista angajatilor unei firme.
2) Pentru proiectarea produsului soft vor fi utilizate paradigmele Programarii Orientate Obiect;
3) Este permisa utilizarea structurilor de date din API, dar alegerea unei anumite structure de date trebuie sa fie justificata (in termini de complexitate a operatiilor necesare)
4) Interfata grafica pentru produsul soft este optionala.
5) Validarea datelor de intrare este recomandata!
6) Exceptiile de executie trebuie tratate.
7) Proiectul trebuie sa aibe o “lungime” rezonabila (intre 1000 si 2000 de instructiuni in varianta finala);
8) Limbajele de programare acceptate pentru implementarea produsului soft sunt C++ and Java;
9) Documentele trebuie scrise cu margine de 2 cm!
10) Verificare unui produs soft este formata din mai multe activitati:
• inspectarea tuturor documentelor;
• testarea tuturor subalgoritmilor;
• validarea finala a produsului soft cu date reale.
11) Pe fiecare se vor preciza: titlul documentului, autorul, grupa si data predarii.

Tabelul de mai jos cuprinde tematica activitatilor pe saptamani precum si termenele de predare asociate fiecarei etape.

Nr. crt. Denumire faza Termen de predare
1. Definirea si specificarea problemei; Inspectarea specificarii. Laborator 2
2. Documentatia de proiectare a proiectului; Inspectarea proiectarii Laborator 3
3. Documentatia de codificare; Inspectarea codificarii Laborator 4
4. Testarea programului Laborator 5
5. Documentatia testarii; corecturi in timpul depanarii Laborator 6
6. Documentatia de utilizare; validarea programului Laborator 6 si 7
7. Predarea finala a proiectului si notarea Laborator 7

Bibliografie
1. M. Frenţiu, H. F. Pop, G. Serban, Programming Fundamentals, Cluj University Press, 2006, 234 pag.
1. M. Frentiu, I. Lazar, Bazele Programării: Proiectarea Algoritmilor, 2000, Ed. Univ. Petru Maior, Tg.Mureş 184 pag.
2. M. Frentiu, I. Lazar, S. Motogna, V. Prejmerean, Elaborarea algoritmilor, Ed. Presa Universitara, Clujeana, Cluj-Napoca, 1998, 188 pag.
3. M. Frentiu, I. Lazar, S. Motogna, V. Prejmerean, Programare Pascal, Ed. Presa Universitara, Univ. "Babes- Bolyai" Cluj-Napoca, 1998, 392 pag.
4. I. Lupea, M. Lupea, Limbajul C. Teorie şi aplicaţii. Editura Casa Cărţii de ştiinţă, Cluj-Napoca 1998.
5. M. Frentiu, Verificarea corectitudinii programelor, Ed.Univ. Petru-Maior, Tg.Mureş, 2001.
Evaluare
Notarea va fi făcută pentru toate etapele prevăzute în tabel (continut disciplina), nota activităţii din timpul semestrului fiind media lor (nota A). Etapa nepredată va fi notată cu 1. În cazul nepredării la timp a unei etape, din nota acordată se va scădea numărul de săptămâni de întârziere.

Pentru corectitudinea şi completitudinea produsului, la validarea lui, se va acorda o a doua notă (not V). Această notă va ţine seama şi de documentaţia realizată şi de concordanţa dintre produsul final şi cele scrise în documente.

In ultima săptămână fiecare student va preda documentaţia realizată. Documentaţia scrisă pe durata realizării programului, împreună cu textul sursă şi documentaţia de utilizare ambele în format electronic, vor fi predate şefului de disciplină (menţionat la începutul acestui material) şi vor fi notate (nota D). Nu se acceptă întârzieri, lipsa documentaţiei ducând la nepromovarea disciplinei. Notele de nepromovare pe acest motiv vor fi trecute la decanat în prima zi a sesiunii!

Nota finală va fi acordată după regula: Nota finală =(A + V + D)/3

Pagina de internet a cursului este http://www.cs.ubbcluj.ro/~avescan/
Sectiunea Teaching, disciplina Proiect individual.
Legaturi: Syllabus-urile tuturor disciplinelor
Versiunea in limba engleza a acestei discipline
Versiunea in format rtf a acestei discipline