Upload
indigo-shepard
View
57
Download
0
Embed Size (px)
DESCRIPTION
Prezentare curs: PASSC Proiectarea si Arhitectura Sistemelor Software Complexe an III CTI, sem II. Conf.dr.ing. Ioana Şora www.cs.utt.ro/~ioana [email protected]. Cand este un sistem software “complex” ?. “Complexitatea” este data de: Ce face: Functionalitate complexa - PowerPoint PPT Presentation
Citation preview
Prezentare curs:
PASSCProiectarea si Arhitectura
Sistemelor Software Complexe
an III CTI, sem II
Conf.dr.ing. Ioana Şora
www.cs.utt.ro/[email protected]
Cand este un sistem software “complex” ?
• “Complexitatea” este data de:– Ce face: Functionalitate complexa– Cum face: Trebuie sa indeplineasca/gaseasca un compromis
intre diverse cerinte ne-functionale (“ilities”) de multe ori contradictorii
• Caracteristici rezultate:– Dezvoltarea sistemului necesita multe resurse– Dezvoltarea sistemului utilizeaza diverse tehnologii/infrastructuri– Prioritati: Reutilizare, Integrare, Adaptare, Comunicare
• Complexitatea sistemului implica abordarea lui la un nivel ridicat de abstractizare => “arhitectura software”
• “Design in the large”
Specificul cursului
• Depth-coverage: din punct de vedere al domeniului larg de Software Engineering: al 3-lea curs din secventa de SE
• Breadth-coverage: din punct de vedere al domeniului Software Architecture: – Intelegerea generala a problemelor legate de arhitectura
software si proiectarea arhitecturala (design in the large)– Orientat pe arhitecturi si probleme specifice pe tipuri de
aplicatii: • Stiluri arhitecturale generale de integrare si comunicare• Aplicatii distribuite• Aplicatii adaptive• Aplicatii cu persistenta datelor• Interoperabilitate
– Aduce in fata principiile din spatele tehnologiilor– Abordare “top-down” a domeniului
Probleme de proiectare - Principii -Tehnologii
Principii de proiectare(Stiluri arhitecturale, pattern-uri,
tactici, strategii)
Tehnologii, Framework-uri, API-uri concrete
Problema de proiectare
Probleme de proiectare - Principii -Tehnologii
“Ce infrastructura e necesara ca un obiect sa apeleze transparent metode ale altui obiect aflat la distanta ?”
Architectural Pattern: Object Request Broker
Java RMI CORBA
.NET Remoting
Exemplu curs PASSC – Arhitectura aplicatiilor distribuite:
Probleme de proiectare - Principii -Tehnologii
“Cum se poate (auto)adapta comportamentul/structura unei aplicatii, la runtime, intr-un mod neanticipat ”
Reflective Architectural StyleMetalayer Architectural Style
Java Reflection.NET Reflection
Exemplu curs PASSC – Arhitectura aplicatiilor adaptive:
Probleme de proiectare - Principii -Tehnologii
“Cum se asigura independenta dintre modelul domeniului aplicatiei si tehnologia utilizata pentru persistenta datelor”
Data Access PatternsXML (JAXP)
RDBMS (JDBC)
Exemplu curs PASSC – Persistenta datelor:
Probleme de proiectare - Principii -Tehnologii
“Cum poate un obiect implementat intr-un anumit limbaj de programare sa apleleze in mod transparent metode
ale altui obiect implementat in alt limbaj ? ”
Interoperability Patterns.NET Common Language Runtime
CORBA
Exemplu curs PASSC – Interoperability:
Bibliografie
Laborator• Exista o corelatie stransa intre laborator si continutul si ritmul
materiei de la curs• Un subiect de laborator se intinde pe aprox 3 saptamani• Tipul temelor:
– Teme individuale – Teme de grup dar cu contributii individuale prestabilite si bine definite
• Notarea temelor:– Media notelor temelor: 50% din nota finala– De regula sunt enuntate de la inceput punctaje incrementale bine
definite pentru realizarea a parti din tema– Termene de realizare de 2-3-4 saptamani in functie de tema– Este posibil ca unele teme sa ofere posibilitatea obtinerii de puncte
bonus pentru lucrarea scrisa de la sfarsit de semestru
Pentru mai multe detalii: Web
• www.cs.utt.ro/~ioana/arhit– Pagina web contine:
• Cuprins curs• Slide-uri curs• Teme laborator• Bibliografie curs si resurse aditionale