Software Quality & Testing

Examen Restanta 1 iulie

  • Seria C + Seria D : 14:00, sala 2001A, 2001D;
  • Seria Informatica Engleza: 14:00, sala 2001A;
  • Anul suplimentar: ora 14:00, sala 2001A;
  • Programul ID: ora 14:00, sala 2001A.

Pentru a evita greselile facute in cadrul examenelor anterioare, studentii sunt rugati sa citeasca cu atentia lista de Intrebari frecvente cu privire la implementarea unor subiecte

Pregatire sesiune restante

  • In data de 21 iunie 2019, ora 10:30, sala 2013, este programata o intalnire de tutoring cu studentii care au restanta la aceasta disciplina; vor fi analizate greselile intalnite in solutiile de la examen si se va raspunde la intrebari 

Important: Pentru a putea sustine examenele restante, studentii trebuie sa plateasca taxa de reexaminare si sa verifice in pagina persoanala daca optiunea de a sustine examenul este bifata, inainte de inceperea sesiunii de restante. In examen vor intra doar studentii care apar pe catalog.

Recuperare puncte seminar

  • Studentii care au restanta la aceasta disciplina pot resustine testul grila ce a fost programat in ultima saptamana din semestru; Acesta conta 20% din nota finala.
  • Testul se resustine dupa examenul programat pe data de 25 iunie 2019
  • Studentii care aleg sa resustina testul grila raman cu ultimul punctaj obtinut (chiar daca in timpul semestrului a afost obtinut un punctaj mai mare la acest test)
  • Celelalte activitati de la seminar (lucrarea practica + activitatile de la seminar/curs) nu se pot recupera

Examen 

  • Examenul este programat pentru data de 4 iunie 2019 / The exam is scheduled to take place on June 4, 2019
  • Seria C: 7:30, sala 2001A, 2001D
  • Seria D: 11:00, sala 2001A, 2001D
  • Seria Informatica Engleza: 15:30, sala 2001A, 2001D
  • Anul suplimentar, 15:30, sala 2001A, 2001D
  • pentru programul ID, examenul este programat pentru 5 iunie 2019, ora 18:00, sala 2017
  • Distributia studentilor pe sali si intervale orare va fi afisata cu 1-2 saptamani inainte de examen/  Student distribution on exam rooms and time slots will be displayed 1-2 weeks before the exam
  • Reminder: Sustinerea examenului in sesiunea normala este conditionata de acumularea a minim 2 puncte pe parcursul semestrului / Taking the the exam in the normal session is conditioned by the accumulation of at least 2 points during the semester
  • In sesiunea de restante nu exista conditii de intrare in examen insa se pastreaza punctajul din timpul semestrului / In the re-examination session there are no entrance exam conditions, but the points obtained during the semester are part of the final grade
  • In sesiunea de restante examenele sunt programate pentru 25 iunie 2019 si 1 iulie 2019 / In the re-examination session the exams are scheduled for June 25, 2019 and July 1, 2019

Important: Pentru a putea sustine examenele restante, studentii trebuie sa plateasca taxa de reexaminare si sa verifice in pagina persoanala daca optiunea de a sustine examenul este bifata, inainte de inceperea sesiunii de restante. In examen vor intra doar studentii care apar pe catalog.

Programare test laborator / Seminar practical test schedule

  • Vineri, 5 aprilie, 7:30: grupele 1065, 1066, 1067, 1076
  • Vineri, 5 aprilie, 9:00: grupele 1074, 1072, 1071, 1070, 1069, 1068
  • Vineri, 5 aprilie 10:30: grupele 1077, 1078, 1079, 1073, 1075
  • Vineri, 5 aprilie 16:30: anul suplimentar indiferent de grupa la care se recupereaza

Locul de intalnire este holul de la intrarea facultatii. Salile de examinare sunt laboratoarele de la parter.

Important ! Studentii din anul suplimentar care refac activitatea de seminar sunt rugat sa se inregistreze prin completarea formularului de mai jos. Students in the additional year who re-do the seminar are requested to register by filling in the form below.

Studentii care refac activitatile de la seminar

Studentii din anul suplimentar sunt rugati sa treaca pe la seminar (cel putin o data) pentru a se inregistra pe platforma online.ase.ro la grupa cu care vor recupera seminarul. Codul de inregistrare va fi introdus de profesorul coordonator in timpul seminarului si nu va fi publicat online.

For English classes: Additional year students are asked to come to the 3rd year laboratory to enroll on the online.ase.ro. They can choose the 3rd year group at which they want to redo the lab activities (homeworks, and lab test). The registration code will be introduced by the coordinating professor during the laboratory and it will not be published online.

Studentii din anul 3 (reinmatriculati) si anul suplimentar care refac activitatile de la disciplina de Calitate si Testare Software în anul universitar 2018-2019 sunt rugati sa completeze urmatorul formular. Astfel putem asigura repartizarea acestora pe grupe si fiecare student sa aiba acces la o statie de lucru.

For English classes: Students in the suplimentary year that redo activities for the Quality and Software Testing discipline in the academic year 2018-2019 are asked to fill up the next online form. Thus, we can ensure that they are properly allocated to groups and that each student has access to a workstation.

Fisa disciplina

Fisa disciplinei poate fi consultata la adresa http://fisadisciplina.ase.ro/SelectiePlan.aspx?pp=15

Echipa curs si seminar in 2018-2019

Evaluare seminar

  • testul la seminar se desfasoara in saptamanile 5 - 7 din semestru; pentru a putea avea acces la laboratoare disponibile testul este programat pentru  5 aprilie 2019; repartizarea grupelor pe sali si intervale orare se va face in perioada urmatoare
  • implementarea de Unit teste in JUnit pentru o serie de clase si metode date
  • scopul testului este de a evalua gradul de intelegere privind utilitatea si modalitatea de implementare a unit testelor in JUnit. Subiectul se va implementa in Java utilizand mediul Eclipse, NetBeans sau IntelliJ si libraria JUnit v3 sau v4.
  • teste grila sustinute in cadrul seminariilor (saptamanile 7- 12); testele se sustin online in cadrul seminarului programat pentru fiecare grupa

Evaluare curs

Modalitatea de calcul a notei finale este:

SEMINAR (pondere nota finala 50%):

  • lucrare la calculator in saptamana 5 - 7; data exacta va fi stabilita de catre studenti impreuna cu profesorul de seminar;
  • nota la lucrare are o pondere de 20% din nota finala;
  • activitate pe parcursul semestrului (teme, grile pe platforma Socrative, participari active la seminar/curs) ce au o pondere de 10% din nota finala;
  • test grila in saptamana 14 din toata materia ce are o pondere de 20% din nota finala
  • pe parcursul semestrului va fi solicitata realizarea unor teme facultative sau a unui proiect optional; aceste activitati nu au o pondere din nota finala insa au ca scop motivarea studentilor sa pun in practica, in afara seminarului, a conceptelor prezentate; realizarea temelor si a proiectului face parte din pregatirea practica pentru sustinerea si promovarea examenului;

EXAMEN (pondere nota finala 50%):

  • evaluare la calculator in sesiune ce consta intr-un test practic la calculator ce va solicita implementarea unor teste automate + design patterns
  • 50% (din nota finala) test practic - implementarea a 3 pattern-uri (solicitate prin subiect prin definirea problemei ce trebuie rezolvata) si implementarea de Unit teste pentru o serie de clase si metode date
  • conditiile minime pentru promovarea examenului: nota minima 5
  • conditie de intrare in examen (sesiunea normala): obtinerea a minim 2 puncte din cele aferente activitatilor de la seminar (5 puncte); in sesiunea de restan?e examenul poate fi sustinut de oricine insa punctajul din timpul semestrului se pastreaza si are aceeasi pondere de 50% din nota finala
  • Creationale: Simple Factory si Factory Method, Builder,Singleton, Prototype
  • Structurale: Adapter, Composite, Decorator, Façade, Flyweight, Proxy
  • Comportamentale: Strategy, Observer, Chain of Responsibility, Command, Memento, State, Template

OBTINEREA A MINIM 2 PUNCTE DIN ACTIVITATILE DERULATE PE PARCURSUL SEMINARULUI (Total 5 puncte) REPREZINTA CONDITIE DE INTRARE IN EXAMEN. COPIEREA SOLUTIEI DE LA LUCRARE, A ORICAREI TEME SAU A PROIECTULUI IMPLICA ANULAREA TUTUROR PUNCTELOR DE LA SEMINAR SI PIERDEREA DREPTULUI DE A SUSTINE EXAMENUL IN SESIUNEA NORMALA.

Organizare curs

Structura materiei pe cursuri:

  1. Principii privind scrierea codului sursa - Clean Code
  2. Principii privind scrierea codului sursa - Clean Code
  3. Unit Testing - JUnit
  4. Unit Testing - JUnit
  5. Unit Testing - JUnit
  6. Unit Testing - JUnit
  7. Gestiunea versiunilor codului sursa - Git, SVN
  8. Design Patterns: Singleton, Simple Factory, Factory Method, Abstract Factory
  9. Design Patterns: Builder, Adapter, Decorator
  10. Design Patterns: Facade, Flyweight, Chain of Responsability
  11. Design Patterns: Command, Observer, State
  12. Design Patterns: Strategy, Memento
  13. Concepte privind calitatea software - metrici, indicatori, instrumente (utilizare Sonar pentru analiza statica)
  14. Concepte privind calitatea software - testare automata (testare aplica?ii Web cu Selenium)

Bibliografie:

  • Madalina Zurini, Alin Zamfiroiu - Calitate si testare software. Studii de caz, Editura ASE, 2017
  • Scott Chacon, Bean Straub - Pro Git, 2nd edition, Apress, 2014, disponibila online la adresa http://git-scm.com/book/en/v2
  • Robert C. Martin - Clean Code, A Handbook of Agile Software Craftsmanship, Prentice Hall, 2009
  • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides - Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995 (link Google books)
  • Steve Holzner - Design Patterns for Dummies, Wiley, 2006
  • Lasse Koskela - Effective Unit Testing, Manning, 2013
  • Lasse Koskela - Practical TDD and Acceptance TDD for Java Developers, Manning, 2007
  • Alasdair Allan - Pragmatic Unit Testing in Java with JUnit, The Pragmatic Programmers, 2004
  • http://git-scm.com/docs
  • https://try.github.io at Code School 

Teme si proiect (activitati suplimentare facultative)

Modul de evaluare a temelor si a proiectului:

  1. temele se realizeaza individual;
  2. cerintele fiecarei teme vor fi publicate; 
  3. proiectul propus ca solutie trebuie sa fie functional;
  4. proiectul care implementeaza pattern-urile si Unit testele poate fi dezvoltat in orice limbaj de programare;
  5. temele se predau/se sutin la o data stabilita cu profesorul de la laborator;
  6. evaluarea consta in prezentarea si exemplificarea pattern-urilor implementate, precum si in rularea testelor automate; orice eroare sau intrerupere neasteptata a aplicatiei conduce la depunctare;
  7. copierea solutiei implica anularea punctajului de la seminar.

Documentatie teme (in functie de cerinte):

  1. Definirea si justificarea pattern-urilor implementate 
  2. Definirea si detalierea metodelor testate prin Unit Testing 
  3. Definirea si descrierea Test Case-urilor
  4. Definirea si descrierea Test Suite-ului
  5. Descrierea sumara a functiilor aplicatiei cu referire la pattern-uri si la metodele testate
  6. Proiectul de Unit Testing (doar acesta) se incarca pe Git intr-un repository care este public la data sustinerii temei

Documentatie contine obligatoriu pagina de titlu, cuprins, bibliografie si are informatia structurata pe capitole. Documentatia se preda in format electronic la fiecare faza.