Grile rezolvate + TEME la Tehnci de Proiectare Software

Download Grile rezolvate  + TEME la Tehnci de Proiectare Software

Post on 15-Jun-2015

354 views

Category:

Documents

4 download

Embed Size (px)

DESCRIPTION

Modele grile rezolvate + TEME la Tehnci de Proiectare Software

TRANSCRIPT

<p>Tehnici de proiectare software Anul III,Semestrul I TRUE/FALSE 1. Un actor este totdeauna o persoana? F T 2. O relatie de extindere(specificata prin stereotipul ) este folosita pentru modelarea caracteristicilor optionale ale sistemului. Diagramele de secventa nu se folosesc pentru a modela comportari asincrone.</p> <p>F</p> <p>3.</p> <p>MULTIPLE CHOICE</p> <p>1. Cu ce simbol se reprezinta o dependent (dependency) ? a. o linie b. o linie cu un triunghi aratand spre elementul dependent c. o linie punctata cu o sageata punctand spre elementul dependent d. o linie punctata cu o sageata punctand spre elementul de care depinde 2. Generalizarea inseamna: a. polimorfism b. asociere c. mostenire d. compunere 3. Un nod poate reprezenta (alegeti variant complete) : a. un computer b. orice dispozitiv fizic c. un server de aplicatie d. toate de mai sus 4. O diagrama de colaborare este un exemplu de : a. diagrama de secventa b. diagrama de clasa c. diagrama de activitate d. diagrama de interactiune 5. Se considera urmatoarele enunturi : I. generalizarease refera la subtipuri II. clasificarea se refera la subtipuri III. generalizarea se refera la instantele obiectelor IV. clasificarea se refera la instantele obiectelor</p> <p>Alegeti raspunsul corect : a. II si III sunt adevarate b. I si IV sunt false c. II si III sunt false 6. O tranzitie de la o stare sursa la o stare tinta se reprezinta astfel : a. o sageata solida pe care se trece o actiune b. o sageata solida pe care se trece evenimentul , o virgula (,), urmata de actiune c. o sageata solida pe care se trece evenimentul, un slash (/), urmat de actiune d. o sageata solida pe care se trece o actiune, un slash (/), umat de eveniment 7. Ce tip de eveniment standard ce poate declansa actiuni starilor se foloseste atunci cand obiectul paraseste starea respective ? a. entry b. exit c. do 8. Se considerea urmatorul simbol in UML : Acesta reprezinta : a. o tranzitie b. o asociere c. o realizare d. o compunere e. o agregare - - - - - - - - - -&gt;</p> <p>9. Daca un obiect e atat creat, cat si distrus in timpul interactiunii se foloseste constrangerea: a. {create} b. {destroyed} c. {transient} d. {createDestroyed}</p> <p>Exemplu de grila Anul 3, sem.1, Tehnici de proiectare softwareTRUE/FALSE</p> <p>T 1. Un caz de utilizare trebuie sa interactioneze cu cel putin un actor F 2. UML se poate folosi numai ca schita F 3. Intr-o diagrama a cazurilor de utilizare, trebuie sa existe numai actori pincipali F 4. O diagrama de clasa este o vedere dinamica asupra sistemului F 5. O subclasa are acces la membrii privati ai superclasei?</p> <p>MULTIPLE CHOICE 1. Se considera urmatorul simbol in UML:</p> <p>El reprezinta: a. o clasa numita Abonat b. un obiect numit Abonat c. un obiect anonim din clasa Abonat d. altceva decat raspunsurile de mai sus 2. Se considera urmatorul simbol in UML: El reprezinta: a. un mesaj sincron b. un mesaj asincron c. un mesaj de raspuns d. un mesaj simplu 3. Intr-o relatie de extindere (), sageata puncteaza a. spre cazul de utilizare de baza b. spre cazul de utilizare extins 4. Cum este cunoscut grupul oamenilor de stiinta care sunt asociati cu UML? a. The Dynamic Duo b. The Three Musketeers c. The Three Amigos</p> <p>5. Diagramele de activitate difera de flowchart-uri deoarece diagramele de activitate suporta a. culoarele (swimlanes) b. comportament paralel (parallel behaviour) c. noduri de decizie d. actiuni</p> <p>Tema 1 I 1. Ce reprezint acronimul OMG? 2. Un model bun UML va conine cel puin o diagram de fiecare tip? 3. Cu ce simbol se reprezint un caz de utilizare (use-case)? 4. Un actor poate fi doar o persoan? 5. Cum este indicat un stereotip? 6. O relaie de incluziune este folosit pentru reutilizarea comportrii modelate de un alt caz de utilizare? 7. De ce anume este reflectat n implementare generalizarea n UML? (alegei dintre polimorfism, agregare, motenire, interfee)</p> <p>II</p> <p>Modelai cu ajutorul diagramelor de clas gestiunea mprumutului de cri n cadrul unei biblioteci. RASPUNSURI 1. OMG (Object Management Group) este un consortiu deschis de companii care controleaza standardul UML. OMG a fost format pentru a construi standard de suporta interoperabilitatea, in mod special a sistemelor software orientate-obiect. 2. Da,consider ca un foarte bun model UML trebuie sa contina o diagrama de fiecare tip.Dar in functie de aspectul care ne intereseaza putem folosi numai anumite diagrame pentru modelare,de secventa sau colaborare. 3. Un caz de utilizare se reprezinta printr-o elipsa, sub care, sau in interiorul careia se trece numele use-case.NumeCazUtilizare</p> <p>NumeCazUtilizare 4. Un actor poate fi orice sau oricine interactioneaza cu un sistem(trimite sau receptioneaza mesaje de la sistem sau schimba informatii cu acesta.Actorul exista in afara sistemului si joaca un rol in cadrul acestuia.Actorul nu este un utilizator individual al sistemului si din acest motiv el este o entitate(o clasa) si nu o instanta.Actorii pot fi persoane, sisteme software si sisteme hardware. 5. Stereotipul este un concept introdus in UML, care perimite extinderea elementelor de baza pentru a crea noi elemente. Un stereotip reprezinta un inteles specific asociat unui element.El se reprezinta printr-un cuvant intre paranteze unghiulare duble (&gt;),scris deasupra sau dedesubtul numelui elementului asociat.Un stereotip transforma un element in altul cu un inteles nou.Ex: daca atasam stereotipul clasei Cursuri,acesta va reprezenta o baza de date tabelara. Cursuri</p> <p>6. True,dependenta modeleaza situatiile in care un use-case foloseste comportamentul definit in alt use-case. Se foloseste relatia ,care este o relatie obligatorie. Relatia de dependenta se poate stabili numai intre use-case-uri. Cazul in care un use-case foloseste functionalitatea oferita de un alt use-case reprezinta o dependenta de tip include.</p> <p>Comportamentul use-case-ului B este inclus in use-case-ul A. B este de sine statator, insa este necesar pentru a asigura functionalitatea use-case-ului de baza A. Dependenta de tip include se foloseste si pentru a scoate in evidenta un comportament comun daca B este inclus in mai multe use-case-uri de baza.</p> <p>7. Relatia de generalizare se foloseste pentru a modela conceptul de mostenire intre clase. O clasa A este derivata (subclasa) din alta clasa B, numita clasa de baza sau superclasa. Relatia de generalizare mai poate fi numita si relatie de tip is a ( este un fel de) in sensul ca o instanta a clasei derivate A este in acelasi timp o instanta a clasei de baza B (superclasa). Clasa A mosteneste toate atributele si metodele clasei A. Ea poate adauga noi atribute sau metode sau le poate redefini pe cele existente.</p> <p>II</p> <p>Fisa ImprumutBD -cota: integer -dataImprumut -dataRestituirePrevazuta -dataRestituireEfectiva -penalizare</p> <p>Exemplar carte -cota -numarInventar -calitateCarte</p> <p>+creareImprumut() +anulareImprumut() +eliberareImprumut(0 1..* 0..*</p> <p>1..*</p> <p>1 Registru Inventar #DataInregistrare Biblioteca 1..* #TitluCarte #AutorCarte</p> <p>0..* Cititor #nume #prenume #nrFisa #dataInscriere #dataAnulare #nrCartiImprumutate #nrZileImprumut+Inscriere() +Anulare()</p> <p>1 sistem informatic biblioteca</p> <p>#NrInventar #Stare #exemplarPierdut #DataCasare +dataInregistrare() +dataCasare()</p> <p>Tema 2 I 1. Ce este o interfa? 2. Care este cel mai rapid (din punct de vedere al duratei) proces software? Care e principalul lui dezavantaj? 3. La ce se refer ? Explicai. 4. Cum este indicat o metod public? Dar un atribut privat? 5. O relaie de extindere este obligatorie? Ce exprim ea? 6. Cum se reprezint grafic un pachet?</p> <p>II Se consider urmtoarea reprezentare:</p> <p>I 1. Interfata unui obiect cuprinde multimea tuturor atributelor publice ale acelui obiect.Interfata unui obiect poate fi considerate ca o interfata a clasei daca toate obiectele din aceeasi clasa au aceeasi interfata.Interfata contine numai operatiile, nu si codul care implementeaza operatiile.Aceasta se reprezinta in UML printr-un cerc la care i se ataseaza numele interfetei. SAU Interfata unei entitati (clase sau componente) reprezinta un set de operatii pe care entitatea le pune la dispozitia celorlalte entitati si care sunt ascunse prin incapsulare. Se modeleaz cu acelai simbol ca i clasele. Interfaa are numai operaii. Pentru a le putea deosebi de clase se plaseaz stereotipul sau caracterul I la nceputul numelui interfeei respective. Reprezentarea grafica unei interfete in UML :</p> <p>a) Interpretai multiplicitile din figur (adic scriei propoziiile corespunztoare: exemplu O companie poate angaja.... etc) b) Ce tip de clas este Job? RASPUNSURI</p> <p>Interfetele pot fi realizate de o componenta si se numesc interfete de export, sau folosite de o componenta si atunci se numesc interfete de import.</p> <p>2. Cel mai rapid proces software,din punct de vedere al duratei este modelul RAD(Rapid Application Development),un model de proces de dezvoltare software incrementala.Acesta este o adaptare high-speed a modelului secvential liniar.Dezavantajele modelului RAD: - Nu e potrivit pentru toate tipurile de aplicatii.Daca un sistem nu poate fi modularizat,construirea componentelor pentru RAD este dificila. - RAD nu e potrivit cand riscurile tehnice sunt mari,acestea aparand cand o aplicatie noua foloseste intens o noua tehnologie sau cand un software nou trebuie sa fie interoperabil cu cele vechi,existente. 3. XOR reprezinta in UML o asociere exclusiva.XOR este o constrangere a doua sau mai multor asocieri si specifica faptul ca o clasa poate participa la cel mult o asociere la un moment dat. Se reprezinta ca o linie punctata intre asocieri, impreuna cu restrictia {xor}. 4. O metoda publica este indicate cu un + in fata numelui metodei pentru vizibilitate publica ,ceea ce indica ca orice clasa poate executa acea metoda. Atributele private sau informationale sunt atribute ale unei clase clasificate dupa gradul de vizibilitate.Acestea pot fi accesate numai in cadrul clasei respective si sunt precedate de semnul -. 5. Nu, o relatie de extindere foloseste stereotipul si este doar optionala.Comportamentul unui use case poate fi extins de catre un alt use case. Relatia de extindere este o generalizare a unui use case prin adaugarea de actiuni noi. Un extend poate include comportamentul use case-ului extins, in functiile de conditiile de extindere. 6. Un pachet se reprezinta grafic in UML astfel :</p> <p>Pachet II</p> <p>a.Relatia este urmatoarea: O companie, employer, poate avea mai multi angajati, employee, iar o persoana poate fi angajata la mai multe companii de-a lungul timpului. b.Job este o clasa de asociere.</p> <p>Tema 3 1. O subclas are acces la membrii superclasei? 2. Dac o clas are mai muli prini i fiecare printe introduce o operaie cu acelai nume, exist conflict de nume? Dac da, cum se poate rezolva. 3. O clas de asociere se refer la o clas de legtur (linking class). Adevrat sau fals? 4. Care e principala diferen dintre agregare i compunere? 5. UML e un standard i toat lumea e de acord c trebuie folosit. Adevrat sau fals? 6. Cum se reprezint un atribut de clas? 7. Descriei modelul de proces cascad. 8. Un caz de utilizare poate interaciona cu cel mult 2 actori. Adevrat sau fals? 9. Cum se specific pe diagram actorii secundari? 10. Unde sunt recomandate diagramele de secven? RASPUNSURI 1. Da,o subclasa are acces la membrii superclasei.Subclasele mostenesc atributele si operatiile claselor parinte sau superclaselor. 2. Da,exista conflict de nume.Se poate rezolva introducand o supraclasa care sa le generalizeze pe cele existente. 3. True. O clasa de asociere, linking class, se refera la o relatie de legatura sau asociere (association). 4. Agregarea este o asociere ce modeleaz o relaie parte-ntreg ,asociere intre doua clase care se refera una la alta precum intregul la partile sale. Este reprezentat ca un romb gol ataat la captul asocierii de lng clasa agregat. Relaia de agregare este deci un caz particular al relaiei de asociere. Ea poate avea toate elementele unei relaii de asociere, ns n general se specific numai multiplicitatea. In cadrul unei agregari, elementul parte mai exista si dup ace elementul intreg este distrus. Compunere este o form mai puternic a agregrii Partea are timpul de via al ntregului. ntregul poate avea responsabilitatea direct pentru crearea sau distrugerea prii sau poate accepta o alt parte creat i mai apoi s paseze responsabilitatea altui ntreg.Relatia se simbolizeaza cu o linie continua cu romb plin. 5. True. UML nu este un simplu limbaj de modelare orientat pe obiecte, ci n prezent, este limbajul universal standard pentru dezvoltatorii software din toata lumea. UML este succesorul propriu-zis al celor mai bune trei limbaje de modelare anterioare orientate pe obiecte (Booch, OMT, and OOSE). Uml se constituie din unirea acestor limbaje de modelare si n plus detine o expresivitate care ajuta la rezolvarea problemelor de modelare pe care vechile limbaje nu o aveau.</p> <p>6. Notatia UML pentru o clasa este un dreptunghi impartit in 3 compartimente; numele clasei, atributele si operatiile. Atributele de clasa se trec in casuta de sub numele clasei si au valori comune tuturor instantelor clasei.Acestea se reprezinta scriind in casuta numele date atributelor subliniat. Sintaxa unui atribut: [vizibilitate] nume: tip_expresie [=valoarea_initiala{lista proprietati}] Reprezentarea grafica a unei clase cu atribute si operatiuni in UML :</p> <p>7. Modelul de proces secvential liniar sau cascada presupune urmatoarele activitati: a. Stabilirea cerintelor pentru elementele sistemului realizarea ingineriei de sistem si a modelarii b. Necesitatea intelegerii comportarii software-uui,interfetei, performantelor dorite analiza cerintelor software. c. Designul structurii datelor,arhitecturii software-ului,reprezentarea interfetei si detaliul procedural. d. Generarea codului care presupune transpunerea design-ului in program. e. Testarea programului pentru depistarea eventualelor erori,defecte si esecuri. 8. False.Un caz de utilizare poate interactiona cu cel putin un actor. 9. De regula actorii secundari se trec in partea dreapta a unei diagrame si se specifica ca sunt secundari scriindu-se cuvantul secondary pe asociere, de partea actorului. 10.Diagrama de secventa prezinta o colaborare dinamica dintre un numar de obiecte,punandu-se accent pe secvente de mesaje trimise intre acestea pe masura scurgerii timpului. Notaia grafic este un tabel care are pe axa X obiecte, iar pe axa Y mesaje ordonate cresctor n timp.Diagramele de secventa se folosesc atunci cand cel mai important aspect urmarit este timpul. Pentru cazurile de utilizare sunt recomandate alaturi de diagramele de activitate.</p> <p>Exemplu de diagrama de secventa :</p> <p>Tema 4 1. Dai exemple de diagrame statice. Unde se folosete fiecare dintre aceste diagrame? 2. Modelai enunul: O companie are mai multe departamente. 3. Clasificai tipurile de mesaje. 4. La ce se refer culoarele (swimlanes)? Exemplu. 5. Cum se reprezint o subcolaborare? RASPUNSURI 1.Diagramele statice sau structural, descriu structura, responsabilitatile sistemului informatics,componentele executabi...</p>