Extras din curs
Capitolul 1
Limbajul Unified Modeling Language(UML)
1.1. ”Ce este programarea, mai mult o art, sau mai mult o [tiin]”
Arhitectura sistemelor informatice complexe impune axiomatic utilizarea unor noi metode de proiectare, moderne [i performante, prin intermediul crora s se poat realiza o modelare optimal a arhitecturii sistemelor, pe baza unor principii noi de modelare [i sub imperiul necesit]ii standardizrii limbajelor de modelare. Realizarea arhitecturii sistemelor complexe a fost revzut sub inci den]a unui nou curent privind formalizarea unui limbaj standard de modelare, datorat unor profesioni[ti dintre care men]ionm: Meyer, Rumbaugh, Jacobson, Booch, Coad, Mellor, Wirfs-Brook, Cook. Ace[tia propun importan]a arhitecturii sistemului `n raport cu implementarea acestuia, motiva]ie pentru care s-a men]ionat importan]a concep]iei arhitecturii sistemului, care devine, `n opinia acestor autori, o activitate primordial, `n raport de implementatarea acestuia, care este privit ca secundar. Astfel la `ntrebarea fundamental “Ce este programarea, mai mult o art, sau mai mult o [tiin]”, s-a rspuns prin priomordialitatea explict a arhitecturii sistemului. Mai mult, au fost dezvoltate mecanisme/[abloane de proiectare(design patterns) [i diferite instrumente CASE(Computer Aided Software Engeineering) de natur s se asigure construirea unor “modele” necesare proiectrii sistemelor informatice. Aceste considerente au condus la apari]ia unui “Limbaj unificat de modelare” denumit UML:Unified Modeling Language, caracterizat prin urmtoarele elemente fundamentale:
- UML este un limbaj “universal” dedicat realizrii componentelor unui SI prin specificarea, construirea, manipularea [i vizualizarea acestor componente
- UML asigur `n]elegerea semanticii sistemului prin materializarea deciziilor adoptate `n specificarea componentelor acestuia.
- UML nu este tributar [i nu con]ine limitri impuse de metodololgia/limbajul de proiectare, domeniul de activitate unde este utilizat sau mediul utilizat pentru dezvoltare
- UML realizeaz unificarea conceptelor bazate pe orientarea obiect sub forma unui standard de proiectare, prin care se asigur defini]ia semanticii conceptelor utilizate, nota]iile asociate acestora [i documanta]ia necesar pentru dezvoltarea unui sistem informatic
- UML este fezabil pentru modelarea sistemelor informatice de tip discret
- UML permite dezvoltarea unei ierarhii de modele, vederi [i diagrame astfel `nc`t s se poat asigura traiectul modele ð vederi ð diagrame ð fi[iere de cod surs ð date/cazuri de test(fig. 1.1).
- UML utilizeaz elemente de modelare vizuale sub forma unor instrumente CASE, ce pot asigura urmtoarele func]ii:
- generarea modelelor de analiz, proiectare [i implementare
- generarea vederilor asociate modelelor de mai sus, diagramelor specifice vederilor
- posibilitatea utilizrii unor generatoare de cod prin care se poate asigura implementarea sistemului realizat
- posibilitatea includeriii unor generatoare de rapoarte
- posibilitatea przen]ei instrumentelor de tip reverse engineering etc
fig. 1.1. Ierarhia de modele, vederi [i diagrame utilizate de UML.
- UML permite dezvoltarea [i utilizarea modelrii vizuale pentru c asigur modelarea problematicii realizrii SIG prin modele ata[ate `n contextul ideilor lumii reale, modelele asigur`nd `n]elegerea semanticii acestor tipuri de sisteme, comunicarea `ntre persoanele implicate `n realizarea acestor siste me (cogniticieni, anali[ti, programatori, exper]i, design-eri, implementatori etc), modelarea activit]ilor AE, elaborarea documenta]iei, elaborarea programelor, implementarea BD.
- UML utilizeaz termenul de model ce utilizeaz abstractizri prin intermediul crora fiind descrise problemele complexe specifice modelrii activit]ilor AE, ceea ce conduce inevitabil la inoportunitatea descrierii detaliilor considerate nesemnificative. Abstarctizarea este reprezentat de capacita tea cogniticienilor, anali[tilor sau design-erilor prin care devin posibile [i rezolvabile, `n]elegerea complex [i primordialitatea structurilor complexe, sintetice, definitorii `n antitez cu cele analitice, secundare.
- UML utilizeaz etapa de modelare urmat de cea de programare, asigur`nd utilizarea abordrii obiectuale prin care se realizeaz optimizarea realizrii programelor datorit posibilit]ii de reutilizare a componentelor, astfel `nc`t un sistem informatic este privit ca un ansamblu de obiecte intercooperante, prin intermediul unei structuri ierarhice de clase de obiecte, formate din clase instan]iate prin intermediul conceptului de obiect
- UML este un limbaj pentru specificarea, vizualizarea, construc]ia [i documeta]ia sistemelor software, acest limbaj fiind de fapt, c colec]ie omogen de de practici de tip engineering utilizabile pentru modelarea [i realizarea sistemelor complexe.
- UML consist `n urmtoarele documente furnizate de ctre firmele proiectante::
- UML Summary: con]ine motiva]iile realizrii UML, obiectivele UML, scopul, trecutul, prezentul [I viitorul UML
- UML Semantics: con]ine arhitectura [I formalismul limbajului, funda mentele limbajului, CORE, elementele auxiliare, mecanismele de extensie, tipurile datelor, sintaxa abstract UML
- UML Notation Guide: define[te sintaxa grafic pentru exprimarea semanticii prin intermediul metamodelelor UML. Deci acest document con]ine elementele [I conceptele utilizate pentru reprezentareai Ierarhiei de modele, vederi [I diagrame utilizate de UML
- Object Constraint Language Specification: descrie sintaxa, semantica [i gramatica limbajului OCL
- UML CORBA Facility Interface Definition: descrie instrumentele de interoperabilitate pentru instrumentele de intefa] cu CORBA IDL
- UML Proposal Summary: este realizat de ctre OMG [i descrie rela]ia dintre UML [i alte tehnologii incluz`nd metamodelul MOF
- UML Extension for the Objectory Process for Software Engineering: con]ine elementele privind stereotipurile(Stereotypes), valorile `nso]itoare(TaggedValues), subsistemul stereotipurilor(Subsys tem Stereotypes) stereotipurile claselor(Class Stereotypes), stereotipurile asocierilor(Association Stereotypes) precum [I regulile corecte privind generalizarea [I abstractizarea
- UML Extension for Business Modeling: con]ine elementele de extensie aferente privind stereotipurile, valorile specifice, constr`ngerile, condi]ii prealabile/indispensabile extinse, reguli bine formate privind generalizrile [I asocierile
- Modelarea prin UML are urmtoarele particularit]i [i avantaje:
- permite construirea de modele complexe prin intermediul unui limbaj riguros de modelare standard
- acest limbaj este considerat lingua franca pentru modelarea sistemelor informatice
- limbajul UML nu asigur `n mod automat succesul `n realizarea SI, dar permite amelioarea [i `mbunt]irea multor elemente specifice modelrii SI
- acest limbaj de modelare co]ine:
- elementele modelului: conceptele fundamenatale de modelare [i semantica acestora(model elements)
- nota]iile modelului: interpretarea vizual a elementelor modelului
- modul de utilizare: expresia idiomatic a utilizrii conceptelor UML `n interiorul tranzac]iilor
Obiectivele fundamentale ale UML sunt urmtoarele:
Preview document
Conținut arhivă zip
- Cursuri P.S.I
- psi2_cap01_Sp_gen_UML_32p.doc
- psi2_cap02_Lang_Arh_3p.doc
- PSI2_cap03_Use_Cases_16p.doc
- PSI2_cap04_DCL_28p.doc
- PSI2_cap05_Dynamic_model_22p.doc
- PSI2_cap06_Arh_Fizica_17p.doc
- PSI2_cap07_Extending_UML_20p.doc
- PSI2_cap09_Baza_Elem_pr_13p.doc