MID0007 | Ingineria sistemelor soft |
Titularii de disciplina |
Prof. Dr. PÂRV Bazil, bparvcs.ubbcluj.ro Lect. Dr. LAZAR Ioan, ilazarcs.ubbcluj.ro Lect. Dr. CHIOREAN Ioan Danut, chioreancs.ubbcluj.ro Lect. Dr. DARVAY Zsolt, darvaycs.ubbcluj.ro |
Obiective |
La terminarea cursului, studenţii trebuie să posede:
a) cunoştinţe sistematice despre metodologiile de realizare a produselor soft b) familiarizarea cu conceptele şi preocupările moderne în scrierea softului de aplicaţie c) cunoştinţe despre tipurile de modele şi instrumentele de modelare folosite în dezvoltarea aplicaţiilor soft d) motivaţia necesară privind importanţa documentării produselor soft, în toate fazele ciclului de viaţă |
Continutul |
1. PROCESE SOFT
Ciclul de viaţă al unui program Ingineria programării: evoluţie, definiţii Ciclul de viaţă clasic (modelul cascadă) Prototipizarea Modelul spirală, Boehm Modelul etapizat (staged) Modelul incremental Programarea extremă (Extreme Programming, XP) 2. DEZVOLTAREA SISTEMELOR SOFT: PRINCIPII ŞI ACTIVITĂŢI Problem solving şi dezvoltarea de soft: asemănări şi deosebiri Comunicarea: principii şi sarcini generice Planificarea: principii şi sarcini generice Modelarea în analiză: principii şi sarcini generice Modelarea în proiectare: principii şi sarcini generice Construcţia: principii şi sarcini generice Exploatarea: principii şi sarcini generice 3. MODELAREA PROCESELOR ŞI SISTEMELOR SOFT Modelarea sistemelor Domeniul aplicaţiei: procese şi produse Instrumente folosite în modelarea sistemelor soft 4. LIMBAJUL UNIFICAT DE MODELARE (UML) UML. Prezentare generală Modelarea cerinţelor Modelarea claselor Modelarea dinamică Modelarea arhitecturii 5. COLECTAREA, ANALIZA ŞI SPECIFICAREA CERINŢELOR Procesul de analiză a cerinţelor Iniţierea analizei cerinţelor Tehnici de comunicare şi de stabilire a cerinţelor Structurarea cerinţelor Specificarea cerinţelor Validarea cerinţelor 6. MODELAREA ÎN ANALIZĂ Definiţii, metode, elemente, etape Modelarea cazurilor de utilizare Modelarea statică Modelarea dinamică Modelarea fluxurilor 7. PROIECTAREA SOFTULUI : CONCEPTE ŞI MODELE Fundamentele proiectării Paşii proiectarii Concepte de proiectare Modele de proiectare 8. PROIECTAREA ARHITECTURII ŞI CLASELOR: PRINCIPII Arhitectură şi dependenţe Principii de proiectare a claselor Principii de proiectare a arhitecturii (reutilizarea modulelor, cuplarea modulelor) Şabloane de proiectare arhitecturale 9. PROIECTAREA ARHITECTURII, DATELOR ŞI PRELUCRĂRILOR Proiectarea arhitecturii Proiectarea datelor Proiectarea prelucrărilor 10. PROIECTAREA COMPONENTELOR Arhitectura logică a sistemului Proiectarea dirijată de responsabilităţi Paşii proiectării OO 11. PROIECTAREA INTERFEŢEI CU UTILIZATORUL Sarcinile proiectării interfeţei cu utilizatorul Prelucrare manuală, batch şi on-line Proiectarea documentelor de intrare şi a rapoartelor Interacţiunea om-calculator 12. TESTAREA SOFTULUI: ETAPE ŞI METODE Verificarea şi validarea Testarea softului: etape Metode de testare 13. INSTALAREA SI ÎNTREŢINEREA Impachetarea şi instalarea Punerea în exploatare şi întreţinerea 14. PLANIFICAREA PROIECTELOR SOFT Factorii umani implicaţi în dezvoltarea aplicaţiilor soft Organizarea procesului de realizare a aplicaţiei soft Alte activităţi de planificare Planul proiectului soft Activităţi de seminar 1. Studiu de caz: analiza cerinţelor (1) - cerinţe generale tehnici de comunicare: tehnici de comunicare.doc documentul de specificare a cerinţelor: speccerinte.doc 2. Studiu de caz: analiza cerinţelor (2) - modelarea conceptuală a datelor 3. Studiu de caz: analiza cerinţelor (3) - modelarea prelucrărilor 4. Studiu de caz: analiza cerinţelor (4) - modelarea OO 5. Studiu de caz: proiectare (1) - modelarea logică a datelor şi prelucrărilor 6. Studiu de caz: proiectare (2) - modelarea OO 7. Studii de caz complete Activitati de laborator Studentii trebuie sa realizeze trei mini-proiecte referitoare la modificari incrementale aduse unui sistem software existent. Cursurile se desfăşoară sub forma unor prezentări PowerPoint. Studenţii sunt invitaţi să citească în avans materialele de curs şi de seminar. Materialele de curs şi de seminar/laborator precum si alte informatii sunt disponibile pe serverul Win, în directorul win\labor\romana\an2\iss\ |
Bibliografie |
1. FLAATEN, P.O., MCCUBBREY, D.J., O'RIORDAN, P.D., BURGESS, K.: Foundations of Business Systems, Dryden Press, 1st ed. 1989, 2nd ed. 1997.
2. FOWLER, M., SCOTT, K.: UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley, 2nd ed., 1999. 3. IACOBSON, I., BOOCH, G., RUMBAUGH, J.: The Unified Software Development Process, Addison-Wesley, 1999. 4. MARTIN, R.C.: Agile Software Development: Principles, Patterns, and Practices, Prentice Hall, 2002. 5. PÂRV, B.: Analiza şi proiectarea sistemelor, Univ. Babeş-Bolyai, CFCID, Facultatea de Matematică şi Informatică, Cluj-Napoca, 2002, 2003, 2004. 6. PRESSMAN, R.S.: Software Engineering - A Practitioners Approach, McGraw-Hill, 3rd ed. 1992; 4th ed. 1996, 5th ed. 2001, 6th ed. 2005. 7. SCHACH, S.R.: Object-Oriented and Classical Software Engineering, McGraw-Hill, 5th ed., 2002, 6th ed. 2005. 8. SOMMERVILLE, I.: Software Engineering, Addison-Wesley, 5th ed. 1996, 6th ed. 2000, 7th ed. 2004. 9. Agile Modeling Homepage, [http://www.agilemodeling.com]. 10. Software Engineering Body of Knowledge, IEEE, 2004. [http://www.swebok.org]. |
Evaluare |
Activităţile de evaluare sunt următoarele
2 lucrări de control periodice, la curs (10%) 3 mini-proiecte de programare (45%) examen parţial, scris (20%) examen final, scris (25%) Nota finală se calculeaza ca medie ponderată a notelor obţinute la activităţile de mai sus (ponderile sunt trecute în paranteze). Tematica examenelor şi a lucrărilor de control include materialul predat la curs şi bibliografia obligatorie. Proiectele de programare se vor referi la realizarea unor modificări incrementale ale unor produse open source. |
Legaturi: | Syllabus-urile tuturor disciplinelor Versiunea in limba engleza a acestei discipline Versiunea in format rtf a acestei discipline |