Sunteți pe pagina 1din 128

Universitatea

Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SISTEME CAD/CASE
Titular curs: Conf. dr. ing. Alexandru Boicea
Date contact: alexandru.boicea@cs.pub.ro

Catedra de
Calculatoare

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

METODA DE EVALUARE
NOTARE PE PARCURS:
10% - PREZENTA CURS

30% - EVALUARE LABORATOR


30% - EVALUARE CURS
30% - TEME CASA

Catedra de
Calculatoare

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 01

Sisteme CAD

Introducere
Cele mai cunoscute acronime pentru sistemele CAD sunt:

CAD (Computer Aided Drafting) - instrumente software pentru


proiectare n construcii, instalaii sanitare, mecanic, instalaii
electrice, electronic i alte domenii inginereti, incluznd afiare
interactiv de grafice, calcule i analize inginereti i procesare limitat
de atribute.
CAD(Computer Aided Design) instrumente software folosite n
proiectare, care pot crea scheme dar nu pot analiza sau procesa date.
CAD (Computer Aided Dispatch) instrumente software, care conin
un numr de faciliti/ instrumente automate folosite de organizaii
pentru identificarea localizrii fizice a unei cereri de service sau
urgen i ajut la identificarea celui mai apropiat vehicul i rut de
rspuns.
CADD(Computer Aided Drafting and Design) instrumente software,
care permit proiectarea n domeniul construciilor, mecanicii, energiei
electrice i a altor discipline inginereti. Includ calcule i analize
inginereti, afiri interactive de grafice i procesare limitat a
atributelor. n plus, sistemele CADD permit modelarea relaiilor grafice
i analiza de relaii logice.
4

Ce sunt sistemele CAD


Sunt instrumente pentru desenarea sau proiectarea asistat de
calculator, care, pe lang facilitile de desenare a schemelor,
ofer i istrumente pentru calcule specifice, cum ar fi calculele
de rezisten, dimensionarea cablurilor electrice n funcie de
curentul electric de sarcin, dimensionarea conductelor n
funcie de debit i presiune, etc.
Sistemele CAD au devenit o adevarat industrie cu cifra de
afaceri de multe miliarde de dolari, de care sunt legate mari
firme producatoare de software, distributori, grupuri de
cercetare-dezvoltare, organizaii de standardizare, centre de
instruire i nvmnt, editori de cri i reviste, productori de
bunuri i servicii, industrii i servicii speciale.
Sistemele CAD sunt folosite pentru proiectarea celor mai
sofisticate sisteme mecanice, electrice, hidraulice, construcii
civile i industriale, aparate aerospaiale, construcii navale, etc.
5

Faciliti oferite
Sunt mai multe motive care le-au impus n proiectarea asistat
de calculator, cum ar fi:
Creterea acurateei n proiectare;

Reducerea timpului de proiectare;


Interfee uor de utilizat;
Modificarea proiectelor uor de realizat;
Posibilitatea prelucrrii de imagini;
Posibilitatea ncadrrii mai multor scheme pe o pagin;

Dimensionarea automat a schemelor;


Utilizarea obiectelor integrate n biblioteca de sistem;
Arhivarea proiectelor n format electronic;
Costuri mici de proiectare.
6

Cerine pentru infrastructura hardware


Primele instrumente CAD au fost dezvoltate pentru calculatoare mainframe,
deoarece cerinele de resurse erau considerabile. Odat cu cumpararea
calculatorului, trebuia s cumperi i sistemul CAD adecvat, de regul furnizat
de un singur furnizor, care avea pachetul de programe adecvat hardware-lui
respectiv. Aceast situaie genera multe compromisuri, deoarece, dac un
beneficiar prefera o anumit companie pentru hardware, era obligat s
accepte o alt companie furnizoare de sisteme CAD adecvate i invers, deci nu
se putea obine un maxim de performana.
Apariia PC-urilor a dus la o explozie a utilizrii instrumentelor CAD n
proiectare, cu toate c performanele nu se pot ridica nc la nivelul
calculatoarelor de mare putere. Totusi, PC-urile au fcut ca sistemele CAD sa
fie mult mai flexibile, iar versiunile depind, n majoritatea cazurilor, numai de
tipul de sistem de operare i nu de maina pe care este instalat sistemul.
Facilitatea de lucru n reea ofer sistemelor CAD o i mai larg rspndire,
putnd s lucreze pe o baz de date comun, sau pe baze diferite cu
posibilitate de import/export de fiiere.
Diferena dintre performanele oferite de PC-uri i mainframe este din ce n
ce mai mic i are ca efect utilizarea pe scar larg a sistemelor CAD,
deoarece preurile scad iar performanele cresc simitor.
7

Seciuni de proiectare pentru proiecte mecanice


Pentru realizarea unui proiect de arhitectura, de regul, se parcurg
urmtoarele seciuni cu funcionaliti specifice :

Sheet Borders dimensionare proiect


Title Block definire proiect
Text editare proiect
Background (floor plan) desenare fundaie
Electrical desenare plan electric
HVAC Equipment((Heating, Ventilating, Air-Conditioning and
Refrigeration)- desenare plan instalaii de nclzire,ventilaie i aer
condiionat
HVAC Controls dimensionare i control instalaii
Ductwork desenare trasee conducte generale de alimentare
Chilled Water Piping desenare trasee conducte de apa rece
Hot Water Piping- desenare trasee conducte de apa calda
Condensate Drain Piping desenare conducte de scurgere, canalizare
Plumbing Water Supply Piping with Fixtures desenare plan de fixare
pentru evi de alimentare
Sanitary Drains and Vents desenare intalaii sanitare i ventilaie
Fire Protection Piping desenare plan pentru instalaii de stins incendiu8

Seciuni de proiectare pentru proiecte electrice


Pentru proiecte electrice se folosesc, n general, urmtoarele
seciuni comune:

Site Plan desenarea traseelor pentru telefonie, linii de


comunicaie, instalaii de mpmntare;
Lighting are mai multe seciuni pentru desenarea instalaiei de
iluminat, circuite electrice, circuite de putere, dispozitive de
comunicaii, dispozitive de alarm pentru incendii;
One-Line Diagrams desenarea echipamentelor, traseelor de
cabluri i fire, mpmntri;
Panel Schedules descrierea funcionalitii instalaiilor,
specificarea reviziilor;
Details descrierea detaliat a proiectului.
9

Considerente de proiectare

Paii descrii mai sus sunt parcuri pentru proiecte de complexitate medie.
Pentru proiecte mai mici, de exemplu instalaii de aer condiionat, paii sunt
mai puini deoarece se elimin straturile de ap cald i rece. Pentru proiecte
foarte complexe paii sunt mult mai muli deoarece apar mai multe
funcionaliti. De multe ori, proiectele foarte mari sunt mprite n proiecte
mai mici, pentru a fi mai uor de administrat. De exemplu, pentru proiectarea
unei fabrici se prefer realizarea cte unui proiect pentru fiecare secie de
fabricaie.
Pentru proiectele electrice , n general, se realizeaz mai multe desene dect
pentru cele mecanice. Alturi de seciunile de definire a dimensiunilor i
descriere proiect, desenarea unei instalaii tipice de iluminat conine seciuni
pentru desenare tavan, desenare instalaie de iluminare, poziionare
ntreruptoare, trasee de cabluri, etc. Unii proiectani folosesc o seciune
aparte pentru desenarea ntreruptoarelor, pentru a avea un control mai
bun. Pentru instalaiile electrice de putere, sunt folosite seciuni pentru
echipamente (de exemplu transformatoare, cutii de distribuie, etc), cabluri i
fire electrice, circuite de mpmntare, etc.
Unele seciuni sunt numai pentru setri i descrieri iar altele sunt att seciuni
de lucru ct i de setri, cum ar fi seciunea HVAC, care permite i amplasarea
compresoarelor, pompelor i ventilatoarelor.
Toate sistemele CAD permit proiectantului s fac modificri numai ntr-o
singur seciune, la un moment dat, dar permit vizualizarea mai multor
seciuni simultan. De exemplu, dac un proiectant deseneaz traseele
conductelor de ap, el poate avea n background amplasarea echipamentelor
10
aferente.

Posibile neajunsuri de proiectare


Utilizarea sistemelor CAD ofer foarte multe avantaje proiectanilor dar mai
au i unele neajunsuri, cum ar fi:
Unul dintre ele ar fi ca la printare s nu fie vizibile anumite detalii, cu toate c
pe videoterminal se vd bine. De regul, aceast problem apare atunci cnd
se folosete un zoom neadecvat;
Alt problem apare cnd se lucreaz cu mai multe versiuni de proiect, deci
implicit mai multe fiiere. n aceast situaie, este posibil s se fac din
neatenie anumite modificri pe o versiune mai veche i n acest caz trebuie
reluat munca pentru ultima versiune;
Cnd proiectantul mecanic i cel electric nu lucreaz pe aceeai versiune de
proiect, pot aprea alte probleme de organizare, care duc la modificri i
reproiectri substaniale;
Managementul ultimelor versiuni de fiiere este foarte important, mai ales
cnd se lucreaz n reea i mai muli proiectani trebuie s acceseze aceleai
fiiere;
Problema cea mai grea este atunci cnd un departament de proiectare trece
de la proiectarea manual la cea bazat pe sisteme CAD. Pe lang problemele
hardware i software, apar probleme de instruire a utilizatorilor i
convingerea lor s aib o atitudine pozitiv fa de stilul de proiectare.
11

Motivaia utilizrii sistemelor CAD


Principalele motive in utilizarea sistemelor CAD sunt:
n ultimii ani, preul PC-urilor a sczut accelerat, iar performanele lor au
crescut considerabil;
Oferta de software CAD este extrem de divers (zeci de producatori i licene
comerciale, shareware i freeware);
Piaa muncii din Romania i strintate are o mare cerere neacoperit de
specialiti MCAD/ EDA, pentru care ofer salarii atractive;
ansele de angajare ale unui inginer, care nu are deprinderi de comunicare
profesional (redactarea cu calculatorul a documentelor cu desene i figuri
incluse), sunt mai mari daca lucreaza cu CAD, indiferent de profil;
Potenialul tot mai mare de resurse i comunicare oferite de Internet;
Declaraiile conducerii ministerului MEC i ale conducerii UPB referitoare la
necesitatea reformei nvmntului;
Motivaia unor studeni care au neles ansele oferite de CAD;
Industriile CAD/ CAE/ CAM/ EDA/ FEA/ GIS i cele asociate au avut creteri
spectaculoase n ultimii ani, ajungnd la cifra de afaceri global de miliarde
USD anual.
12

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 02

Tipuri de sisteme CAD

Catedra de
Calculatoare

Introducere
Programele de desenare sunt programe software inteligente
folosite n sistemele CAD pentru executarea de desene pentru
aplicaii specifice. Sistemele CAD moderne combin facilitile de
utilizare a simbolurilor cu faciliti de desenare automat a
diferitelor seciuni sau chiar efectuarea de calcule pentru
dimensionarea corect a anumitor componente.
Integrarea facilitilor de desenare i proiectare este extrem de
benefic, deoarece elimin intervenia manual, deci implicit
reducerea posibilitilor de eroare. Pn acum, foarte multe
aplicaii pentru proiectare mecanic i electric au fost integrate
cu sisteme CAD.
Cu toate c sunt unele mici diferene ntre ele, n mare, sistemele
CAD au cam aceleai funcionaliti.
Trebuie specificat c proiectul va fi stocat ntr-un fiier specific.
Un fiier alocat unui desen este organizat pe seciuni(layers).
De regul, o seciune are o anumit funcionalitate i de aceea se
2
urmrete separarea informaiilor grafice.

Evoluia sistemelor CAD


Sistemele CAD de nceput ofereau posibitatea efecturii de
desene folosind linii i arcuri de cerc. Iniial, ele au oferit un mare
ajutor pentru proiectani, dar cerinele au crescut continuu i
astzi sunt total depaite. Pentru a face un proiect trebuia ca
utililizatorul s deseneze,pur i simplu, componentele cu ajutorul
liniilor i arcelor(modelare bidimensional - 2D).
Instrumentele CAD actuale au obiecte deja create n baza de
date(dispozitive mecanice, electrice, hidraulice, etc) i este
suficient o simpl selectare din meniu i amplasarea lor pe
pagin. Conexiunile ntre componente (conducte, fire electrice,
etc) se fac tot prin obiecte create deja n meniu, ceea ce face ca
viteza de proiectare s fie cu mult mai mare i posibilitatea erorii
umane mult mai mic (modelare tridimensional - 3D).
Firmele furnizoare de sisteme CAD pun la dispoziie librrii
software adecvate pentru sistemele de operare, care sunt cele
mai utilizate pe pia. Performanele sistemului sunt dictate de
complexitatea i diversitatea acestor librrii, fiind criteriul de
baz n stabilirea preului. Toate sistemele au faciliti de
desenare, fiind cea mai important utilitate.

Tipuri de sisteme CAD


Sisteme CAD se pot clasifica n urmtoarele categorii de aplicaii informatice:
Aplicaii pentru modelare geometric i desenare asistate de calculator
(dintre care menionm AutoCAD, Turbocad, KeyCAD, Design CAD, Solid
Works, etc.);
Aplicaii pentru rezolvarea unor probleme generale de calcul matematic,
utile mai ales n ingineria asistat CAE (dintre care menionm Matlab,
Mathematica, MathCAD, Maple, etc.) sau simularea unor sisteme
particulare descrise de ecuaii difereniale ordinare (cum sunt Spice - pentru
analiza circuitelor electronice, EMTP - pentru analiza reelelor
electroenergetice);
Aplicaii destinate modelrii numerice, cu element finit sau cu funcii
similare dedicate rezolvrii ecuaiilor cu derivate pariale, utilizate n
proiectarea integrat (cele mai rspndite sunt cele de calcul structural ca
ANSYS, COSMOS, NASTRAN, dar se utilizeaz i altele specializate n
modelarea curgerii, nclzirii, cmpului electromagnetic, difuziei purttorilor
de sarcin, etc);
Aplicaii orientate spre un domeniu particular ( PipeCAD - proiectarea
instalaiilor de conducte; AeroCAD - proiectarea construciilor aeronautice;
ArhiCAD - proiectare arhitectonic; GIS CAD - realizarea hrilor sau a altor
documente bazate pe "Geograpfic Integrated System" - GIS; Cadence,
Mentor, Microcad, Orcad- pentru proiectare electronic, cu diferite niveluri
de integrare (PCB sau IC), care alctuiesc un subdomeniu distinct numit
"Electronic Design Automation" - EDA; ChemCAD - pentru proiectarea
moleculelor i multe altele);
Sisteme integrate de aplicaii, cu un grad de integrare a componentelor
CAE/CAD/CAM mai mare sau mai mic (dintre care menionm I-DEAS, CATIA,
4
EUCLID, ProEngineer i SAAP).

Integrarea sistemelor CAE-CAD-CAM


n prezent, se urmrete integrarea sistemelor CAD cu alte tipuri
din aceeai familie, cum ar fi:
CAE (Computed Aided Engineering) destinate simulrii asistat
de calculator a sistemelor continue sau discrete (caracterizate de
sisteme de ecuaii difereniale ordinare su cu diferene finite) i
la modelarea corpurilor i cmpurilor utilizate n rezolvarea
ecuaiilor cu derivate pariale, ntlnite n mecanic, rezisten,
mecanica fluidelor, termotehnic sau alte domenii inginereti.
CAM (Computer Aided Manufacturing) destinate proiectrii de
prototipuri i produse de serie.
CIM (Computer Integrated Manufacturing) - in urma unui intens
efort de standardizare (drawing exchange and interoperability),
att sistemele complexe, ct i prile lor componente tind s fie
descrise ntr-un limbaj informatic unic, indiferent de etapa de
via a obiectului respectiv, ceea ce determin tendina ca cele
trei abordri CAE/CAD/CAM s se integreze ntr-una singur.
Trebuie menionat c n acest context sunt incluse ipreocuprile
moderne de grafic pe calculator (Computer graphics, 3D
Computer vision, Geometric modeling, Solid modeling, Virtual
reality, etc.).
5

Domenii de utilizare a sistemelor CAD


Arhitectur

Construcii civile i industriale


Industria aeronautic

Industria de automobile
Industria chimic

Electronic i electrotehnic
Design industrial

Inginerie mecanic
Inginerie medical

Companii furnizoare de sisteme CAD


Autodesk - [http://www.autodesk.com/]
Veteranul i liderul pe aceast pia. Este productorul popularului program
AutoCAD, dar i a altor 37 produse, ca de exemplu AutoCAD LT (O versiune de
pre redus, util n educaie), Quick CAD (o versiune simpl, uor de nvat),
3D Studio, AUtodesk Inventor, AutoCAD Mechanical, etc.
CADKey - [http://www.baystate.com/]
Produce instrumente pentru proiectarea mecanica pe PC. Linia de produse
CADKey este destinat proiectanilor mecanici, inginerilor de producie i
personalul tehnic din industria : aerospaial, auto, produse medicale, maini,
echipamente de calcul, nave, produse de larg consum, mobil, jucrii, articole
sportive i electronice.
Bentley Systems - [http://www.bentley.com/]
Companie producatoare de software CAD ingineresc. Produsul su de baz
este programul MicroStation. Dintre caracteristicile acestui produs
menionm: includerea de imagini n pagini Web, prin utilizarea formatelor
HTML, CGM, SVF, JPEG sau VRML, parametrizarea automat a obiectelor
neparametrizabile, modele 3D complexe (cu B-spline, cercuri i arce), bazate
pe conceptul de parasplid, modelarea 3D a solidelor folosind operaii
booleene, vizualizare fotorealist folosind OpenGL, import i export n
formate industriale ca DGN, DXF, DWG R14, IGES sau STEP i integrarea de
aplicaii Java.
7

Companii furnizoare de sisteme CAD - continuare


Parametric Technology - [http://www.ptc.com/]
Productorul pachetelor CADDS si Pro/ENGINEER. CADDS este dedicat
automatizrii proiectrii mecanice, fiind utilizat n proiectele mari de
aeronave, nave, automobile, la care lucreaz simultan mai muli proiectani
(ordinul sutelor). Programul folosete att tehnici explicite ct i parametrice
pentru a crea modele 3D de solide, suprafee sau wire-frame pentru piese
turnate, achiate, forjate sau sudate.
SolidWorks - [http://www.solidworks.com/]
Sistem de proiectare mecanic i de modelare a solidelor sub MS Windows.
Este o generaie mai nou de AutoCAD i ofer o bibliotec puternic de
funcii. Exist i o licen pentru studeni, care nu poate fi achiziionat de
instituii i care este valabil 18 luni.
International Microcomputer Software, Inc. (IMSI) [http://www.imsisoft.com/]
Companie care dezvolt software CAD general, de arhitectur i pentru
publicaii electronice, inclusiv TurboCAD, TurboProject si FormTool.
Programul TurboCAD v7 folosete tehnologia ACIS de modelarea solidelor i
suprafeelor 3D (inclusiv generarea obiectelor 3D prin interpolare NURBS a
profilelor 3D), reprezentarea fotorealist a obiectelor (inclusiv cu umbre,
fundal, linii ascunse, texturi i materiale).
8

Companii furnizoare de sisteme CAD - continuare


CATIA- [ http://www.catia.com] este un mediu software integrat, de
instrumente inginereti CAD/CAM produs de Dassault Systemes i distribuit
de IBM, popular mai ales n industriile automobilistice, navale i aviatice, dar
este folosit i de proiectanii de bunuri de larg consum i electronice.
DesignCAD 3000 - [http://www.designcad.com/products/dc3000.htm]
Are urmtoarele caracteristici: modelare 2D/3D integrat, modelarea
solidelor (suprafee complexe, operaii Booleene), formate grafice de ieire
compatibile Internet (JPG, TIF, VRML), animaii i prezentri (animaii 3D
"walk-through" n format AVI), mapri de texturi, limbaj de programare de tip
Basic, customizare cu MS Visual C++/Basic, biblioteci de simboluri i texturi,
instruire on-line.
I-DEAS - [http://www.sdrc.com/ideas]. ( Integrated Design Engineering
Analysis Software),este o suit de instrumente software CAD/CAM/CAE
integrate, produse de SDRC i destinate automtizarii proiectrii mecanice.
Pachetul ruleaz pe staii grafice Unix i este folosit de Nokia, Xerox i alte
mii de firme din lume.
Siemens PLM Software [http://www.plm.automation.siemens.com/en_us/products/nx/ ]
Produce instrumente CAD/CAM/CAE integrate i SolidEdge destinat n special
companiilor de nivel mediu.
9

Sistemele CAD cele mai utilizate


AutoCAD-folosit n arhitectur, geografie, medicin, astronomie,
tehnic, etc.
ArchiCAD- software pentru modelarea Cldirii Virtuale;
Autodesk 3ds Max - software pentru grafic 3D;
Scad calculul i proiectarea construciilor din metal i beton
armat;
SolidWorks proiectare n domeniu mecanic;
SolidEdge- software CAD produs de Siemens PLM Software;
NX CAD - software unitar pentru procesele CAD, CAM,CAE
produs de Siemens PLM Software;
AxisVM- program de elemente finite pentru calculul structurilor;
Tekla Structures- modelarea structurilor metalice n 3D;
12d- software pentru topografie i cadastru;
Orcad- pentru proiectare electronic
10

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 03

Sisteme CASE

Catedra de
Calculatoare

Introducere
Sistemele CASE sunt sisteme software integrate utilizate pentru
dezvoltare de aplicaii software i necesit o baz de
date(repository) care conine informaii importante despre
analiza, proiectarea, elaborarea programelor i testarea lor, cu
scopul de a crea un mediu integrat pentru dezvoltare.
Acronimul CASE-ul (Proiectarea Sistemelor/Programelor Asistata
de Calculator sau cu Ajutorul Calculatorului) are urmtoarele
rdcini:
Computer Aided Software Engineering
Computer Aided Systems Engineering
Computer Assisted Software Engineering
Computer Assisted Systems Engineering

Toate cele patru construcii se regsesc n literatura de


specialitate, dar tendina este de a se ntrebuina mai mult
systems n loc de software, din dorina de a scoate n relief faptul
c prin CASE se pot realiza lucruri de o mai mare complexitate
dect un simplu program. De asemenea, aided este folosit mai
des dect assisted.
2

Concepte de proiectare
Preocuprile nentrerupte din domeniu au dus la crearea unei
noi discipline, din ce n ce mai bine fundamentat, pentru
proiectarea i realizarea aplicaiilor software, prin apelarea la
concepte cum sunt:
Managementul proiectelor;
Ciclul de via a sistemelor;
Procesele de definire a datelor;
Logica structurat;
Instrumente pentru planificare i control (BSP - Business Systems
Planning, BICS - Business Information Control Study);
Instrumente de realizare a prelucrrilor i documentaiei (HIPO Hierarchical Input Processing Output).
Tehnologia CASE este, prin urmare, un domeniu de integrare i
sintez, ce ncorporeaz elemente din proiectarea asistat de
calculator, ingineria programrii, proiectarea sistemelor
informatice, baze de date i alte domenii ale informaticii.
3

Faciliti oferite de sistemele CASE


Sistemele CASE trebuie s asigure urmtoarele faciliti de baz:
Instrumente de analiz i proiectare - sunt folosite pentru
generarea de diagrame i editarea cerinelor de proiectare;
Baza de date (repository) - pentru stocarea dicionarului de date
i a informaiilor de control;
Compilatoare - pentru generarea codului surs i executabil
ntr-un limbaj de programare de nivel nalt;
Verificarea corelrii datelor de proiectare verific i
semnaleaz inconsistena structurilor de date sau neconcordana
ntre datele de intrare i cele de ieire;

Generatoare de test genereaz scenarii de test pentru testarea


aplicaiilor;
Instrumente pentru managementul proiectului sunt
instrumentele de planificare i estimare a costurilor de timp i a
resurselor necesare realizrii proiectului i gestiune a versiunilor
de proiectare;
Generatoare de documentaie genereaz automat
4
documentaia de proiectare i utilizarare a aplicaiilor.

Cerine funcionale pentru un sistem CASE


Pentru a oferi un suport performant n proiectarea sistemelor
informatice, sistemele CASE trebuie s acopere urmtoarele
cerine:
Acoperirea tuturor etapelor de proiectare - acoperirea
ntregului ciclu de proiectare a sistemelor informatice, ncepnd
cu analiza de sistem pna la implementare, asigurnd
instrumente de realizare, testare i modificare pentru fiecare
etap n parte;
Generarea automat a structurii bazei de date baza de date se
genereaz automat, pornind de la datele de analiz funcional,
cu posibilitate de modificare manual, dac este cazul;
Generarea automat a codului surs - pornind de la specificaiile
de proiectare, codul surs al aplicaiilor poate fi generat opional
n unul sau mai multe limbaje de nivel nalt;
Faciliti de reverse engineering - ingineria inversat permite
parcurgerea etapelor de proiectare n sens invers, pentru
executarea eventualelor modificri care au intervenit, sau
obinerea codului surs al aplicaiei, pornind de la codul compilat
5
(executabil).

Beneficii de proiectare oferite de sistemele CASE


Principalele beneficii aduse de utilizarea sistemelor CASE sunt:
Reducerea timpului de proiectare se reduce substanial timpul
necesar proiectrii, folosind instrumentele de analiz i
proiectare oferite de sistemele CASE. Reducerea timpului
necesar realizrii schemelor i diagramelor are ca efect indirect
creterea calitii sistemului proiectat, deoarece analistul i
proiectantul se pot concentra mai mult asupra analizei i
concepiei sistemului informatic.
Creterea rentabilitii prin reducerea costurilor cu resursele
umane prin utilizarea sistemelor CASE se reduce considerabil
necesarul de resurse umane pentru realizarea proiectului,
oferind i o modalitate unitar de lucru n echip (se apreciaz c
productivitatea realizrii sistemelor informatice crete n medie
cu 40%, depind chiar 80% n unele cazuri );
Specificaii complete de proiectare i pentru cerinele
sistemului - specificaiile sunt mult mai detaliate i exacte, n
concordan cu necesitile utilizatorilor finali, oferind suport
pentru variante de analiz i reducerea probabilitii de eroare
uman. Realizarea unor sisteme informatice performante este
condiionat, n mare parte, de definirea corect i detaliat a
6
specificaiilor de proiectare i structura modulelor.

Beneficii de proiectare oferite de sistemele CASE - continuare

Detectarea deficienelor de proiectare detectarea erorilor de


concepie i programare nc din faza de proiectare constitue un
mare avantaj pentru dezvoltatori, deoarece depistarea i
corectarea erorilor n etapele finale ale ciclului de realizare pot
duce la creterea considerabil a costurilor i nerespectarea
graficului de implementare;
Elaborarea documentaiei de realizare a sistemului - sistemele
CASE ofer suport pentru inerea la zi a documentaiei de
proiectare i utilizare a sistemului informatic. O documentaie
corect ntocmit i actualizat reduce mult efortul de proiectare
pentru dezvoltatori i de utilizare pentru beneficiarii finali;
Scalabilitate ridicat trecerea la o versiune nou a aplicaiei se
poate face mult mai uor cu ajutorul sistemelor CASE, toate
funcionalitile din versiunea anterioar sunt preluate cu
posibilitate de modificare. Trecerea la o nou versiune a
sistemului CASE se face de asemenea fr probleme de
7
compilare i cu pstrarea dicionarului de date.

Beneficii n etapa de analiz oferite de sistemele CASE


Din punct de vedere al etapei de analiz se pot enumera
urmtoarele avantaje:
Reducerea timpului necesar unei analize complete;
mbuntete calitatea procesului de analiz;
Crete calitatea i completitudinea cerinelor de proiectare;
Conduce la o standardizare a etapelor de proiectare;
Folosirea unei singure tehnologii de analiz i proiectare;
mbuntete managementul proiectelor;
Uureaz mult testarea prin utilizarea scenariilor de test;
Simplific ntreinerea i depanarea programelor;
Permite refolosirea unor module i a documentaiei create n
alte proiecte.
8

Beneficii de implementare oferite de sistemele CASE


Sistemele CASE aduc urmtoarele avantaje n implementarea i
utilizarea aplicaiilor software:
Reducerea timpului de implementare;
Posibilitatea implementrii modulare a sistemului informatic;
Reducerea complexitii logicii de funcionare a sistemului;
Posibilitatea de a alege dintre mai multe variante de proiectare;
Creterea gradului de integrare i administrare;
Impunerea disciplinei de utilizare;
Oferirea unor interfee cu functionaliti unitare;
Documentaie unitar i actualizat;
Reducerea timpului pentru executarea modificrilor( de exemplu
n cazul schimbrii legislaiei );
mbuntete portabilitatea aplicaiilor pentru diferite sisteme
de operare.
9

Evoluia instrumentelor pentru proiectare software


Progresele realizate n domeniul proiectrii software constau n
automatizarea metodelor i tehnicilor folosite n ciclul de
dezvoltare, utiliznd instrumente sau colecii de instrumente
care au evoluat astfel:

Instrumente software (software tools) - care sprijin o activitate


sau grup corelat de activiti;
Medii de programare(programming environments) - un
ansamblu integrat de procese i instrumente care sprijin etapa
de implementare de cod din ciclul de dezvoltare;
Medii de proiectare (design environments) - un ansamblu
integrat de metode i instrumente pentru etapa de proiectare
din ciclul de dezvoltare;
Medii de dezvoltare (development environments) - un ansamblu
integrat de procese, metode i instrumente utilizate n toate
etapele ciclului de dezvoltare;
Sisteme CASE - instrumente pentru inginerie software asistat
de calculator care ofer suport pentru proiectarea si dezvoltarea
de sisteme informatice integrate.
10

Tendine n dezvoltarea sistemelor CASE


Sistemele CASE actuale prezint o serie de lacune n ceea ce
privete posibilitatea de generare automat a codului pornind de
la specificaiile de programare, posibilitatea de reutilizare a
modulelor software existente, integrarea diferitelor instrumente
CASE n acelai mediu i dezvoltarea iterativ a sistemelor
informatice. Creterea productivitii i flexibilitii
instrumentelor CASE, depinde n mare msura de modul de
rezolvare a acestor probleme.
Generarea parial sau integral a codului surs pornind de la
specificaiile de proiectare, n paralel cu creterea sferei de
aplicare a ingineriei avansate, va reduce mult timpul i costul de
realizare a sistemului informatic i va crete flexibilitatea de
actualizare a sistemului obinut. Totodat, se creeaz premisele
pentru dezvoltarea iterativ a sistemelor informatice cu ajutorul
instrumentelor CASE.

Creterea nivelului de integrare a instrumentelor CASE, depinde


n mare msur de definirea unui standard pentru componena
repository care sa fie recunoscut de majoritatea sistemelor.
Datele din repository vor fi accesate prin intermediul unor
instrumente standard de ctre alte sisteme sau aplicaii
software.
11

Critici aduse sistemelor CASE


Performane reduse pe PC-uri, deoarece limiteaz
capacitatea de lucru a multor instrumente;
Posibilitatea redus de reproiectare a versiunilor
anterioare, fiind necesar reluarea tuturor fazelor;
Posibilitate limitat de detectare a erorilor i evalurii
funcionrii modelelor de validare;
Capacitate limitat a dicionarului de date;
Performane grafice limitate;
Flexibilitate redus la schimbarea simbolurilor
predefinite;
Lipsa specialitilor care s le utilizeze;
Capacitate limitat pentru proiecte de mari dimensiuni;
Integrare limitat ntre instrumente CASE.
12

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 04

Clasificarea sistemelor CASE

Catedra de
Calculatoare

Introducere
Sistemele CASE sunt alctuite din instrumente specializate pe un anumit tip
de activitate din cadrul unei etape de proiectare.
Instrumentele CASE
difer ntre ele prin dimensiunea suportului pe care-l ofer, gradul de
acoperire a ciclului de realizare, tipul i numrul de metode pentru care ofer
suport, facilitile de integrare cu alte instrumente i gradul de flexibilitate.
Din punct de vedere al dimensiunii suportului oferit, instrumentele CASE se
pot clasifica n:
Instrumente care ofer suport pentru o singur activitate - n aceast
categorie putem ncadra instrumentele pentru analiza i generarea
specificaiilor de sistem, generatoarele de diagrame, editoarele de text,
generatoarele de formulare, generatoarele de rapoarte, compilatoarele,
depanatoare i instrumentele pentru managementul proiectului ;
Instrumente care ofer suport pentru o etap de proiectare - n aceast
categorie intr instrumentele pentru analiz, proiectare, programare,etc.
Aceste instrumente se numesc bancuri de lucru(workbenches) i conin un set
de instrumente specializate pe o singur activitate.
Sistemele CASE integreaza un set de aceste instrumente specializate .
2

Instrumente CASE orizontale i verticale


Instrumentele CASE mai pot fi clasificate n dou categorii, n
funcie de posibilitatea utilizrii lor n mai multe etape :
Instrumente CASE orizontale care sunt specifice unei singure
etape (generatoare de diagrame, generatoare de formulare,
generatoare de rapoarte, compilatoare, etc.);
Instrumente CASE verticale - care sunt comune mai multor
etape (instrumente pentru elaborarea documentaiei i pentru
gestiunea versiunilor).

Instrumentele CASE i metodologia de proiectare


n literatura de specialitate, instrumentele CASE sunt clasificate
i dup metodologia pe care o ncorporeaz pentru realizarea
sistemelor informatice, identificandu-se trei categorii:

Instrumente CASE pentru analiz i proiectare structurat;


Instrumente CASE pentru analiz i proiectare orientat-obiect;
Instrumente hibride .

Instrumentele hibride nu pot fi ncadrate strict la proiectarea


orientat-obiect dar au elemente specifice.

Instrumente CASE pentru analiz i proiectare


structurat
Ingineriea software este un ansamblu de strategii, metode,
tehnici de proiectare i dezvoltare a sistemelor informaionale
cuprinse intr-o metodologie de formalizare a procesului de
dezvoltare software.
O metoda este, n general, un set integrat de tehnici si proceduri
care aplicate ntr-o anumita succesiune au ca rezultat
specificarea si documentarea sistemului/aplicatiei informatice.
O metoda de analiz i proiectare trebuie sa precizeze clar
structura produsului, adic :
componentele de tip program i/sau de tip date;
relatiile ntre componente (interfetele ntre componentele
produsului program);
interactiunea produsului cu mediul n care va fi utilizat (canale de
comunicatie cu mediul, informatii de schimb etc.).
Instrumentele CASE pentru analiz i proiectare structurat
folosesc metode tradiionale orientate pe structura datelor,
structura functionala si fluxul de date.
5

Instrumente CASE pentru analiz i proiectare


orientat-obiect
Odat cu apariia limbajelor de proiectare orientate-obiect, au
aprut i instrumentele CASE bazate pe aceste limbaje.
Principalele beneficii aduse de aceast categorie de instrumente
sunt legate de flexibilitatea crescut n modelarea sistemelor,
precum i de diversificarea posibilitilor de reutilizare integral
sau parial, a proiectelor dezvoltate anterior. Productivitatea
proiectrii sistemelor informatice a crescut simitor, deoarece
obiectele create pot fi folosite de mai multe ori, sau pot fi
adaptate prin modificri minore.
Pentru a fi ncadrate strict n aceast categorie, instrumentele
CASE trebuie s conin numai elemente specifice proiectrii
orientat -obiect i s se bazeze pe metodele i tehnicile de
analiz i proiectare orientate-obiect.

Instrumente upper i lower CASE


Din punct de vedere al gradului de acoperire a ciclului de
proiectare a sistemelor informatice, instrumentele CASE se pot
clasifica n:
Instrumente upper CASE (front-end CASE) - ofer suport pentru
primele etape din ciclul de proiectare al sistemelor informatice
(planificarea realizrii sistemului, analiza sistemului, specificarea
cerinelor, modelarea i proiectarea sistemului la nivel logic);
Instrumente lower CASE (back-end CASE) - ofer suport pentru
ultimele etape din ciclul de proiectare (proiectarea bazei de
date, proiectarea programelor, testarea, integrarea modulelor,
depanarea, modificarea, adaptarea, ntreinerea, etc.);
Instrumente CASE integrate (I-CASE) acopera toate facilitatile
oferite de instrumentele upper si lower.
7

Domeniile instrumentelor upper i lower CASE

Domeniile specifice instrumentelor upper CASE (front-end) sunt:


Analiza cerinelor sistemului;
Descrierea sistemului;
Modelarea datelor i proiectarea logica a bazei de date;
Modelarea funcional i procedural;

Domeniile specifice instrumentelor lower CASE (back-end) sunt:


Proiectarea fizic;
Generarea codului;
Testarea;
Analiza i interpretarea rezultatelor;
Depanarea codului surs;
Editarea de documentatie;
Integrarea modulelor;
Inginerie inversata.
8

Funciile sistemelor CASE


Sistemele CASE moderne ncearc s realizeze o integrare
complet a instrumentelor bazndu-se pe dou funcii :
Posibilitatea descompunerii de sus n jos (top-down) - const n
descompunerea de sus n jos a sistemului informatic n procese
i module distincte, fiecare avnd definite responsabilitile
funcionale i operaionale.
Reprezentate ntr-o form grafic - se refer la faptul c
sistemele informatice pot fi reprezentate ntr-o form grafic
concis, folosind cteva simboluri de baz. Folosirea
reprezentrilor grafice n logica CASE ofer posibilitatea
descompunerii aplicaiei n mai multe componente logice.
Importana acestor dou funcii rezid n posibilitatea proiectarii
prin modularizare a sistemelor informatice, generarea bazei de
date, generarea unei documentaii privind utilizarea sistemului,
etc.
Sistemele CASE ofer n plus posibilitatea de a analiza ieirile
obinute i de a le modifica pentru a reflecta schimbrile
intervenite n sistem, de a prezenta nivelurile de detaliere,
modul de corelare ntre procesele logice, modulele definite i
9
depozitul de date.

Etapele de proiectare utilizand sisteme CASE

10

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 05

Instrumente CASE pentru analiz si proiectare


structurat

Introducere
Metodele tradiionale de proiectare software separ modelarea
datelor de modelarea functiilor pentru a obtine dou tipuri de structuri
distincte: structura datelor si structura de funcionalitti. Elementele
structurii funcionale sunt elemente active i au un comportament
dinamic iar structurile de date sunt depozite pasive de date care sunt
afectate de funcii.
Majoritatea metodelor orientate pe funcii, sau date, admit
modularizarea si structurarea, ca principiu general pentru a controla
funcionalitaile si pentru uniformizarea modului de proiectare.
Modularizarea se poate realiza avnd ca baza descompunerea
functionala, structura datelor si fluxul de date.
Cele mai cunoscute metode de analiz i proiectare structurata sunt:
analiz structurat dezvoltat de De Marco;
analiz i proiectare structurat dezvoltat de E.Yourdon si
Constantine;
proiectare mixt - dezvoltat de G. Myers pornind de la proiectarea
structurat prin modificarea terminologiei i a modului de
reprezentare a proiectului.
2

Instrumente CASE pentru analiz i proiectare


structurat
Metodele de analiz i proiectare structurat dezvoltate de Tom
De Marco i Edward Yourdon au adus o abordare sistematic n
determinarea informaiilor ce urmau sa fie utilizate n realizarea
sistemelor i n modul de analiz a sistemului. Caracterul manual
i complexitatea acestor metodologii au limitat utilizarea lor de
catre proiectanii de sisteme. Asigurarea suportului automat
pentru aplicarea acestor metode a fcut posibil acceptarea i
dezvoltarea lor pe scar larg.
Instrumente CASE pentru modelarea datelor
Metodele de modelare a datelor au fost dezvoltate pentru a veni
n sprijinul proiectanilor de baze de date. Instrumentele CASE
pentru modelarea datelor ofer suport pentru modelarea
datelor (definirea entitilor logice i al relaiilor dintre ele),
modelarea fluxului de informaii din cadrul unei organizaii sau
proces i proiectarea schemei bazei de date.
Dintre metodele de modelare a datelor, cea mai utilizat este
metoda entitate-asociere, care este ncorporat n majoritatea
instrumentelor CASE pentru analiz i proiectare.
3

Instrumente CASE pentru analiz i proiectare


structurat - continuare
Instrumente CASE pentru proiectarea interfeei utilizator
Pentru un sistem informatic, interfeele utilizator constituie una
dintre componentele cele mai importante . Interfeele cu
utilizatorul difer, n general, n privina funcionalitilor i
coninutului. Dei exist relativ puine metodologii formale pentru
proiectarea interfeei, instrumentele CASE pentru proiectarea i
generarea interfeelor s-au dezvoltat rapid, rspunznd cerinelor
practice. Aceste instrumente sunt dezvoltate pentru diferite tipuri
de sisteme de operare i asist proiectantul n realizarea
interfeelor de nalt calitate. Instrumentele CASE moderne
genereaz automat interfeele pe baza structurii bazei de date pe
care lucreaz, dar n cele mai multe cazuri este necesar i o
intervenie manual a proiectantului.
Instrumente CASE pentru generarea rapoartelor i graficelor
Aceste instrumente sunt destinate proiectrii rapoartelor specifice
aplicaiilor i realizrii de statistici. De multe ori, rapoartele au
asociate i diferite tipuri de grafice. Instrumentele ofer cateva
formate predefinte(template), dar pentru rapoartele complexe
proiectantul i realizeaz propriul format.
4

Instrumente CASE pentru analiz i proiectare


structurat - continuare
Instrumente CASE pentru generarea codului program i
inginerie inversat.
Instrumentele CASE moderne pot genera automat codul
program direct din specificaiile de proiectare. Posibilitatea de
generare a codului program permite proiectantului s
investeasc mai mult timp n etapa de analiz. Pentru prelucrari
complexe de date,trebuie s se intervin de multe ori i manual,
pe structura de cod creat, mai ales n cazul adugirilor sau
modificrilor.
Alturi de instrumentele pentru generarea codului, un loc
important l ocup instrumentele pentru ingineria inversat.
Aceste instrumente permit obinerea codului surs pe baza
codului compilat i parcugerea n sens invers a etapelor de
proiectare, n vederea efecturii de modificri pentru etape
anterioare.
5

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 08

Arhitectura Westmount I-CASE Yourdon

Introducere
Westmount I-CASE Yourdon ofer suport complet pentru
realizarea sistemelor informatice. Avnd la baz metoda
structurat propus de Yourdon, acest instrument CASE integrat
ofer posibilitatea lucrului n echip, posibilitatea de generare i
reutilizare a codului i generarea automat a documentaiei de
realizare a sistemului informatic.

Sistemul ofer suport pentru un ciclu complet de analiz,


proiectare global i n detaliu, implementare, testare,
mentenan i documentaie. Are n componen instrumentele
Dataflow Diagrams, Entity Relationship Diagrams i Structure
Charts. Toate informaiile sunt stocate n dicionarul central de
date, care ofer suport pentru urmtoarele SGDB: Oracle, Ingres,
Informix i Sybase.
Sistemului Westmount I-CASE Yourdon mbunttete
productivitatea proiectrii sistemelor informatice i ofer
garanii pentru calitatea sistemelor obinute.
2

Schema bloc a arhitecturii Westmount I-CASE Yourdon

Descrierea arhitecturii Westmount I-CASE Yourdon


Repository - este componenta central a arhitecturii Westmount
I-CASE Yourdon. Repository este implementat cu ajutorul unui
SGBD relaional: Oracle, Informix, Ingres sau Sybase.
Analyst - este componenta ce ofer suport pentru analiza
structurat. Metoda implementat este Yourdon De Marco.
Westmount I-CASE Yourdon ofer suport pentru un set extins de
instrumente i anume editoare pentru diagrama de flux a
datelor, diagrame entitate -asociere, diagrame de structur a
datelor, editoarele matriciale pentru matricea listei de
evenimente.
Arhitect - este componenta ce permite definirea arhitecturii
sistemului (proiectarea de ansamblu). Editorul pentru
arhitectura sistemului permite :
definirea modelului hardware;
maparea aplicaiilor pe structura hardware;
modelarea aplicaiilor client/server;
analiza utilizrii monitorului de tranzacii (Tuxedo. TopenD);
includerea controlului n timp real.
4

Descrierea arhitecturii Westmount I-CASE Yourdon - continuare


Designer - este componenta ce ofer suport pentru proiectarea
de detaliu a sistemului informatic. Modelarea aplicaiei este
realizat cu ajutorul urmtoarelor diagrame:
Diagrama de proiectare a interfeei cu utilizatorul (Form
Sequence Diagram), ce definete structura meniului i a
formularelor;
Diagrama de definire a coninutului formularelor (Form Contents
Diagram), ce permite specificarea definiiilor logice (entitile,
atributele componente i relaiile dintre entiti.
Schema de structur este definit pentru a specifica operaiile ce
au loc n formular.
Proiectarea de detaliu a aplicaiei este strns legat de
proiectarea bazei de date. Pentru modelarea datelor se utilizeaz
diagrama entitate asociere.
5

Descrierea arhitecturii Westmount I-CASE Yourdon - continuare

Programmer - este mediul de programare care ofer suport


pentru generarea codului surs, compilarea, lansarea n execuie
i testarea aplicaiei.
Generatorul de cod translateaz specificaiile de proiectare n
cod surs. Astfel, pe baza diagramei entitate asociere, se
genereaz codul SQL, ce definete structura bazei de date. Codul
poate fi completat pentru a defini restriciile de integritate. Are
i facilitatea de inginerie inversat, care translateaz definirile
asociate bazei de date existente ntr-o diagram entitateasociere.

Codul aplicaiei este generat n limbajul C i SQL, pornind de la


specificaiile din schemele de structur.
6

Descrierea arhitecturii Westmount I-CASE Yourdon - continuare

Docwriter - este componenta care permite generarea


documentaiei pentru fiecare etap de realizare a sistemului.
Sunt utilizate documentele standard ale metodei Yourdon, dar
pot fi predefinite i documente cu structura proprie.
Documentaia obinut va conine ntotdeauna ultima versiune a
diagramelor i poate fi generat n format WordPerfect, Interleaf
sau FrameMaker.
Manager este componenta folosit pentru managementul
proiectului.

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 09

Modele i metodologii de proiectare software

Introducere

Proiectarea unui sistem informatic trebuie sa se fac ntr-un mod


foarte deliberat, structurat i metodic, care necesit detalierea fiecarei
etape a ciclului de via de la analiz si pan la implementare.
Modelarea datelor este rezultatul analizei cerinelor de funcionare a
unui sistem informatic.
Modelarea conceptual este procesul n care se elaboreaz o
descriere semantic a unui sistem (de exemplu, o organizaie, o
ntreprindere, etc.), care trebuie reflectat de structura general i de
implementare a unei aplicaii cu baze de date. Modelarea conceptual
este independent fa de baza de date si implic analiza cerinelor
aplicaiei i elaborarea unei structuri semantice generale (design) de
nivel nalt a coninutului bazei de date i a restriciilor specifice
aplicaiei.
Un model reprezinta un formalism de reprezentare a structurii bazei
de date care va fi ales in funcie de cerinte functionale i de natura
prelucrarilor care se vor face pe datele stocate.
O metodologie de dezvoltare de software este un cadru care este
folosit pentru a structura, planifica i controla procesul de dezvoltare a
2
unui sistem informatic.

Modele oferite de sistemele CASE


n contextul general CASE i al realizrii sistemelor, un model
este o cale de reprezentare a unei funcii bine definite dintr-un
proces.
Structura unei baze de date este descrisa pe trei niveluri:
intern(fizic), conceptual(logic) si extern(schema conceptuala).
Cel mai cunoscut model de reprezentare a unei baze de date
este modelul entitate-asociere. Exist i alte modele care pot fi
folosite n locul celui entitate-asociere: asociere binar, entitateasociere extins, reprezentare orientat obiect.
n privina sistemelor CASE, se impune efectuarea unei
demarcaii nete ntre model i metodologie, dei de multe ori se
folosete un termen n locul celuilalt. Sistemele moderne trebuie
s permit multiple modele i metodologii, fr a se nregistra
redundana.
Sistemele CASE trebuie s ofere tehnici de modelare multipl, n
diverse stadii, dar alegerea celui mai potrivit model pentru
aplicatie depinde in mare masura de experienta proiectantului.
3

Modelul entitate-asociere
Modelul entitate-asociere (EA), introdus de Peter Chen n 1976, este
una din cele mai cunoscute abordri privind proiectarea structurii
conceptuale a unei baze de date. Modelul EA descrie entitile asociate
cu o aplicaie de baze de date ntr-o manier independent de baza de
date propriu-zis. n acelai mod independent modelul descrie
asocierile ntre entiti i restriciile asupra acestora.
Restriciile care decurg din natura i cerinele aplicaiei definesc reguli
pentru asigurarea validitii (validity) datelor coninute de baza de
date. Ca urmare, implementarea bazei de date trebuie s respecte
restriciile introduse n structura conceptual proiectat, precum i alte
eventuale constrngeri suplimentare ce pot fi formulate fa de
structura conceptual.
Ulterior apariiei modelului EA, n scopul extinderii capacitii de
modelare a cunotinelor din modelul EA, au fost propuse mai multe
modele semantice pentru date. n cele mai multe dintre acestea, a fost
urmrit includerea unor modaliti de modelare care s permit ca n
proiectarea structurii conceptuale s se in seama la un anumit nivel
superior de restriciile semantice. n acest fond a aprut modelul
entitate asociere extins (MEAE), care dezvolt modelul EA original prin
folosirea unor proceduri mai avansate de modelare conceptual,
proceduri aplicate de modelele semantice de date.
4

Metodologii de proiectare oferite de sistemele CASE


Metodologia trebuie vazut ca o cale prin care modelele i tehnicile
din diferite stadii ale ciclului de proiectare a sistemului informatic
sunt puse laolalt, pentru a crea un sistem integrat.
O metodologie este cea bazat pe metoda top-down, n care la nivel
superior sunt definite iniial concepte aproape abstracte i apoi ele
sunt rafinate pas cu pas pn la detaliile necesare procesului de
realizare, fie automat, fie manual.
Alt metodologie este orientat pe metoda bottom-up, care pleaca
de la rezultatele finale care se doresc obtinute i se pun laolalt
pentru a forma o grupare logic a elementelor primare de culegere si
prelucrare de date.
Unele metodologii sunt orientate spre definirea funciilor
procedurale, cum ar fi prelucrrile sistemului i fluxurile de date din
aceste procese i apoi concentrarea asupra tehnicilor orientate spre
date, cum ar fi modelarea entitate-asociere.
Alte metodologii cer mai nti proiectarea datelor, fr concentrarea
ateniei asupra aciunilor procedurale, urmnd ca aceasta s aib loc
ulterior.
O alt categorie de metodologii se bazeaz pe un sistem interactiv,
schimbnd nainte i napoi metoda pentru modelarea datelor i
pentru modelarea procedural, precum i metoda de proiectare,
considernd-o drept cale natural a procesului de analiz i
proiectare.
Metodologiile bazate pe tehnici orientate-obiect trateaz datele i
5
aspectele procedurale ale sistemelor informatice ca pe obiecte.

Standardul SSADM (Structured Systems Analysis and Design


Methodology ) - metodologia de proiectare

Structured Systems Analysis and Design Methodology


(SSADM)-continuare
SSADM este un standard deschis de proiectare lansat in UK, folosit de multe
sisteme CASE, care specifica etapele standard de proiectare a sistemelor
informatice:
Feasibility Study - etapa de studiu a fiabilitaii sistemului informatic;
Requirements Analysis analiza cerinelor de bussines actuale si de
perspectiva;
Requirements Specification analiza cerinelor tehnice pentru realizarea
cerintelor functionale;
Logical System Specification configurarea structurii logice a sistemului si
alegerea tehnicilor de proiectare;
Physical Design- proiectarea fizica a sistemului informatic (proiectarea bazei
de date si a programelor software) avand urmatoarele faze:
Logical Data Modelling (LDM) modelarea logica a bazei de
date(diagrama entitate-asociere si relatiile dintre entitati);
Data Flow Modelling (DFM)- modelarea fluxului de date;
Entity/Event Modelling (EM) identificarea si modelarea fiecarui
eveniment de business i felul in care se mapeaza pe modelul de date.
Construct&Test integrarea modulelor i testarea intregului sistem;
Production implementarea sistemului software.

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 10

Sisteme CASE orizontale i verticale

Introducere
Tony Wasserman propune o clasificare a instrumentelor CASE n
orizontale i verticale. Instrumentele verticale sunt cele care se
ncadreaz n categoria upper sau lower, iar cele orizontale sunt
cele care nu se incadreaz strict n aceste categorii .
Obinerea produsului final, ca un sistem informatic, presupune
transpunerea proiectului sub forma unui program n cod main.
Majoritatea sistemelor CASE permit crearea unei interfee
externe pentru proiectani i utilizatori, prin conectarea la
generatoarele de aplicaii existente, la cele de elaborare a
codurilor surs sau la biblioteca codurilor surs.
Obiectivul principal al sistemelor CASE este crearea unui set de
metodologii care s poat fi folosite n cele mai diverse medii de
lucru, astfel nct s se construiasc modele ale datelor la nivel
de organizaie, iar sistemele proiectate cu alte tehnologii s se
integreze n aceste modele.
2

Categorii de instrumente CASE orizontale i verticale


Categoriile propuse de Tony Wasserman, n funcie de rolul pe
care-l au, sunt:
Aanaliza cerinelor sistemului informatic;
Descrierea sistemului;
Modelarea datelor i proiectarea bazei de date;
Proiectarea i modelarea funcional i procedural;
Editoare de text;
Generatoare de coduri.
Referine ncruciate;
Depanare de cod;
Mijloace de testare;
Instrumente de testare si analiz a rezultatelor;
Managementul proiectelor;
Generatoare de documentaie;
Revizuirea cerinelor i reproiectarea.
3

Analiza i descrierea sistemului


Analiza cerinelor sistemului
Din practica proiectrii sistemelor informatice, se tie c, de
regul, ciclul de via ncepe cu procesul de culegere i validare a
cerinelor, reprezentativi fiind utilizatorii i managerii, n multe
cazuri, sistemele n curs de realizare vor nlocui un sistem mai
vechi, n alte cazuri va fi unul total nou, nlocuind pe altul
manual. Din aceast cauz, vor exista mai multe surse de intrare
n procesul de analiz a cerinelor, de la reconfirmarea cerinelor
sistemului existent, la formulare i rapoarte ale utilizatorilor i
managerilor, ceea ce face ca sistemelor CASE s li se cear s
poat controla diversele forme de preluare a datelor din diferite
surse de provenien.
Descrierea sistemului
Specificaiile sistemului sunt uneori incluse fie n faze de analiz
a cerinelor, fie n faze de proiectare a sistemului. Procesul
descrierii sistemului vine ca o completare a analizei cerinelor,
pentru c prin el se efectueaz legatura dintre ceea ce este
necesar i ceea ce trebuie s fie preluat de sistem. Procesul de
identificare a obiectelor de date din sistem, fluxurile de date,
precum i entitaile similare, vor fi definite pna n faza de
proiectare, dar filtrul iniial al fazei de descriere devine intrare n
4
procesul de proiectare.

Modelarea si proiectarea sistemului


Modelarea i proiectarea bazei de date
Etapa de modelare a bazei de date este una dintre cele mai
importante, deoarece o modelare greit sau incomplet poate
duce ulterior la modificri majore sau chiar la nefuncionarea
parial a sistemului. Modelarea are ca scop alegerea modelului
de date i generarea diagramei de relaii, att grafic ct i sub
forma de cod executabil n SQL.
Modelarea si proiectarea funcional i procedural
Acest domeniu este unul dintre cele mai relevante ale ntregului
set de instrumente upper CASE. Primele forme de existen a
instrumentelor CASE s-au orientat spre crearea automat a
fluxurilor de date, construirea schemelor logice structurate ale
programelor i alte domenii funcionale ale metodologiilor de
proiectare structurat. La fel, integrarea la nivel de instrument
CASE s-a concentrat asupra verificrii acestora. De exemplu, dat
fiind o diagram a fluxului de date, fluxul datelor este consemnat
prin datele elementare ale schemelor logice structurate ale
programelor.

Editoare i generatoare de cod


Editoarele de text
Cnd nu se poate dispune de un generator de coduri, sau se
folosete un generator parial, cum ar fi descrierile de date,
trebuie s se apeleze la vechea metod a programrii, editoarele
jucnd un rol important n crearea fiierelor surs ale
programelor. Unul dintre domeniile importante de tip lower
CASE este editorul inteligent de limbaje, un instrument de
editare, care nelege sintaxa unuia sau mai multor limbaje de
programare i sprijin procesul de realizare a codului.
Generatoare de coduri
Una dintre problemele majore, cu care s-au confruntat
sistemele mari, se refer la controlarea versiunii codului surs i
a modulelor codului obiect, precum i controlarea
interdependenelor dintre module. Mediul de lucru Lower CASE
include instrumente de gestionare a versiunilor multiple ale
modulelor, permind revenirea la versiunile anterioare, dac e
cazul. In plus, dependenele dintre module sunt evideniate
pentru a conduce la o recompilare numai a modulelor
modificate.
6

Referine incruciate i depanatoare de cod


Referinele ncruciate
Deoarece sistemul informatic va lucra pe o singur baz de date,
este foarte util s se creeze constrngeri de integritate ntre
tabelele de date, pentru a evita erorile de consisten a datelor.
Referinele se pot genera automat pe baza definiiilor din etapa
de definire a fluxului de date sau se pot adauga manual pe baza
cerinelor de funcionare.
Depanatoare de coduri surs
i depanatoarele de cod sunt considerate tot instrumente de tip
lower CASE, fiind foarte utile n detectarea erorilor de proiectare
i duc la creterea productivitii pe durata de realizare a
sistemului. Detectarea erorilor din faza de proiectare sprijina
foarte mult activitatea dezvoltatorilor software i reduc mult
timpul de proiectare.
7

Instrumente de testare si analiza a rezultatelor

Instrumente de testare
Instrumentele de testare sunt de tip lower CASE i pot avea o
complexitate ridicat. Puine sisteme CASE asigur faciliti de
generare a testelor pe baza specificaiilor prezentate n
documentaia sistemului. Modelele de proiectare CASE, care
constituie baza de validare a noului sistem, pot fi considerate drept
adevarate mijloace de sprijinire a realizrii strategiilor i planurilor
de testare. Testarea poate fi facut automat i pot fi obinute
datele pentru verificarea corespondenei ntre cerinele
beneficiarului i ceea ce ofer sistemul. Majoritatea testelor sunt
nc fcute ntr-o form care poart amprenta personalitii celor
ce le efectueaz. Consemnarea rezultatelor procesului de testate,
prin aducerea la cunotina acestora, este o alt funcie a
mijloacelor de testate.
Instrumente de analiz a rezultatelor
Sunt instrumente de tip lower CASE. Prin ncrcarea diverselor date
n sistem, ca o funcie complementar testrii, se pot efectua
simulri, scondu-se n eviden posibiliti suplimentare de
optimizare. Pe o astfel de cale, procesul de optimizare poate fi
orientat n acele zone n care aceasta este necesar, facndu-se
economie de resurse.
8

Instrumente pentru managementul sistemelor


Generatoare de documentaie
Fiecare stadiu din derularea ciclului de viata al sistemelor, de la
analiza cerinelor iniiale la proiectare, proiectare, testare,
implementare i mentenan, are propria-i documentaie.
Documentaia intr sub incidena CASE sub dou aspecte:
documentaia trebuie s fie generat i actualizat automat,
prin instrumentele CASE, pentru fiecare pas al ciclului de
proiectare;
n contextul integrrii, trebuie s existe legaturi ntre
documentaiile diverselor stadii, pentru a fi asigurat o
actualizare complet.
Instrumente pentru managementul versiunilor
Aceste mijloace aparin att instrumentelor lower CASE ct i
upper CASE. Pe scurt, fiecare funcie critic se refer nu numai la
sistemul n curs de realizare sau ntreinere, ci i la utilizarea
unor mijloace, astfel nct realizarea programului s aib
legatur cu funciile de gestionare a versiunilor sau
administrarea proiectului.

Revizuirea cerinelor i reproiectarea


Revizuirea cerinelor i reproiectarea.
Revizuirea cerinelor este o etap des ntlnit n procesul de
proiectare, deoarece este foarte greu pentru analiti s prind
de la nceput n caietul de sarcini toate cerinele, mai ales n
cazul sistemelor complexe.
Reproiectarea este definit ca procesul prin care unui sistem
vechi i se pot aduce modificri la niveluri diferite de cel al codului
programului surs. Cu alte cuvinte, sistemul poate fi abordat
invers, de regul, de la faza de proiectare, dei se poate i de la
analiza cerinelor sau descrierea sistemului, modificndu-se n
aceste locuri anumite elemente, cu propagarea efectului asupra
ntregului sistem.
Un inconvenient major, pentru majoritatea sistemelor CASE, este
acela c modificrile implic o nou generare de cod. Acest lucru
implic pierderea tuturor modificrilor fcute manual dup
generarea anterioar i trebuie refcute. O soluie des folosit
este excutarea modificrilor manual, fr a fi nevoie de o nou
generare a intregului cod.
10

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 11

Sisteme CASE orientate-obiect

Catedra de
Calculatoare

Introducere
Un sistem CASE modern ofer una sau mai multe metode de analiz i
proiectare, automatiznd ntr-o msur ct mai mare activitile
desfurate n cadrul acestor metode i asistnd parial sau n
totalitate activitile ciclului de via al aplicaiei software, inclusiv
managementul i asigurarea calitii.
n ultimii ani, o serie de sisteme CASE au fost construite sau extinse pe
baza diferitelor metodologii orientate-obiect, care s-au impus n
ingineria software. Orientarea obiect nu este numai o tehnic de
programare ci este, n primul rnd, o noua modalitate de a gndi
dezvoltarea de software.
Modelarea orientata obiect reprezinta un nou mod de gndire si de
abordare a problemelor utiliznd modele si concepte din lumea reala.
Astfel, de la modelul de ciclu de via n cascad, s-a ajuns la modelul
n spiral i la ingineria software bazat pe modele care au avantajul
c reduc timpul de proiectare a versiunilor, iar posibilitile de
dezvoltare de noi versiuni i de testare de ctre analiti i utilizatori
sunt mai mari. Pe de alt parte, fr o arhitectur orientat obiect,
software-ul nu este capabil s exploateze la maxim facilitile i
avantajele oferite de ultimele dezvoltri ale tehnologiei.

Concepte de proiectare orientat-obiect


Abordarea orientat-obiect se bazeaza pe accesul la baza de
date prin intermediul unor functii special scrise de programator,
denumite de obicei metode. Un obiect reprezinta o construcie
de program care combin datele cu un set de metode pentru
accesarea i gestionarea acestora.
Un obiect poate oferi metode standardizate pentru efectuarea
operaiunilor speciale pe datele sale, fara a fi cunoscute
specificul si modul in care aceste sarcini sunt ndeplinite. n acest
fel, modificrile pot fi fcute pe structura intern sau pe
metodele aferente unui obiect fr a implica modificarea
intregului program. Aceast abordare poate fi, de asemenea,
utilizata pentru a oferi metode standardizate pe diferite tipuri de
obiecte.
Un program orientat-obiect conine de obicei diferite tipuri de
obiecte, fiecare tip corespunde unui anumit tip de date
complexe sau poate fi un obiect din lumea reala sau un concept,
3
cum ar fi un cont bancar, o gestiune, etc.

Metode de analiz si proiectare orientate obiect


Spre deosebire de metodele traditionale, metodele orientate
obiect propun modelarea concomitent a doua tipuri de
structuri, de date si de prelucrri, prin iterarea analizei datelor si
comportamentului acestora n sistem, n vederea obtinerii unor
clase de obiecte care nglobeaz att date ct si functionalitti.
Cele mai cunoscute metode de analiz si proiectare orientate
obiect sunt:
OOD (Object Oriented Design) dezvoltat de G. Booch;
OMT (Object Modeling Technique) dezvoltat de James
Rumbaugh, Michael Blaha, William Premerlani s.a;
OOA (Object Oriented Analysis) dezvoltat de Peter Coad si
Edward Yourdon;
OOSE(Object Oriented Software Engineering) dezvoltat de
Jacobson Ivar;
4

Evoluia instrumentelor de proiectare software


Evoluia n timp a instrumentelor de proiectare software este,
aproximativ, urmtoarea:
Metode structurate de analiz i proiectare (1965)
Tehnici de modelare a datelor (1970)
Limbaje de generaia a patra pentru gestiunea de date (1975)
Instrumente de proiectare a specificaiilor software (1980)
Instrumente pentru prototipizarea interfeei utilizator (1985)
Instrumente pentru generarea automat a codului (1990)
Sisteme CASE integrate (1995)
Sisteme CASE orientate-obiect (2000)
Sisteme CASE pentru aplicaii web(2005)
5

Caracteristicile sistemelor CASE orientat obiect


Caracteristicile de baz pentru ca un sistem sau o colecie de
instrumente s fie considerat un produs de tip CASE sau un
mediu de tip CASE sunt:
S ofere faciliti grafice puternice pentru a descrie i documenta
software-ul;
S fie integrat, astfel nct s permit transmiterea uoar a
datelor ntre componente;
S stocheze informaiile referitoare la software ntr-un depozit
central, permind accesarea acestora de ctre toi membrii
echipei de dezvoltare;
S poat fi utilizat ca baz pentru automatizarea procesului de
proiectare a software-ului, utiliznd una sau mai multe metode
de analiz i proiectare;
S fie reutilizabil pentru dezvoltare de noi sisteme, aplicaii i
programe;
S poat fi utilizat pe orice platform hardware, ncepnd cu
calculatoare personale pna la mainframe-uri;
S permit realizarea uoar a interfeei cu utilizatorul final i
expandarea interaciunii cu acesta;
S asigure dezvoltarea de aplicaii n limbaje de programare
evoluate.
6

Criterii de evaluare a sistemelor CASE bazate pe UML


Sistemele CASE orientate obiect folosesc limbajul standardizat
UML(Unified Modeling Language ) pentru dezvoltarea de aplicatii.
Criteriile de evaluare a sistemelor bazate pe UML pot fi mprite n* :
Criterii dependente de limbajul de modelare:
Suportul oferit de instrument limbajului de modelare - se
materializeaz n numrul de concepte puse la dispoziia utilizatorului
i n tipurile de diagrame ce pot fi construite .
Suportul pentru adnotri formale textuale - se refer la posibilitatea
utilizrii a dou formalisme diferite, unul grafic i altul textual,
reprezint una din trsturile definitorii ale limbajului unificat de
modelare;
Pstrarea consistenei informaiilor ntre diferite diagrame modificarea efectuat ntr-o anumit vedere trebuie s se reflecte
adecvat n celelalte vederi.
Criterii independente de limbajul de modelare:
Suportul oferit pentru navigarea prin model - instrumentul trebuie s
includ un browser, care s permit navigarea simpl a modelului,
gsirea rapid i eficient a entitilor proiectului;
Generarea automat a codului pe baza specificaiilor de proiectare
i implementare;
*[Revista Informatica Economica, nr.2-2003]

Criterii de evaluare a sistemelor CASE bazate pe UML


Reverse Engineering i Round Trip Engineering sunt importante n cazul
produselor care au fost realizate fr ajutorul instrumentelor CASE, fiindc
uneori acestea nu dispun de documentaie de proiectare actualizat .
Suport pentru modelarea aplicaiilor bazate pe componente este
important ca instrumentele CASE s suporte principalele standarde :
Enterprise Java Beans (EJB), COM/DCOM, CORBA, platforma .NET etc. ;
Suport pentru modelarea datelor UML poate modela datele prin
intermediul diagramelor de clase. Un aspect important l reprezint
generarea de cod DDL (un set de comenzi SQL necesare pentru descrierea
i crearea structurii bazei de date n conformitate cu proiectul);
Reutilizabilitatea - se refer la suportul acordat de instrument pentru
utilizarea n faza de proiectare a unor componente de biblioteci (clase,
componente, abloane de proiectare sau chiar proiecte fiecare cu
particularitile lor);
Suport pentru design patterns se refer la suportul pentru utilizarea
unui ablon de proiectare ca model;
Documentaia generat pentru proiect - se refer la informaiile care pot
fi obinute folosind informaia existent n diagrame i repository;
Schimbul cu alte instrumente - se refer la posibilitatea unui import a
proiectelor realizate cu alte instrumente i la posibilitatea exportului ntrun alt format;
Integrarea cu alte instrumente de dezvoltare pentru a putea fi folosite
facilitile de forward i reverse engineering este necesar s se foloseasc
un sistem CASE adecvat.
8

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 12

Sisteme CASE bazate pe UML

Catedra de
Calculatoare

Introducere
Clasificarea produselor CASE poate fi facut dup o mulime de

criterii. Rolul acetor criterii este de a forma o imagine ct mai


exact asupra sistemelor CASE, astfel nct o organizaie
dezvoltatoare de software s poat face alegerea corect, n
funcie de tipurile de proiecte i de metodologiile de dezvoltare
pe care le aplic.
Sistemele CASE pot fi definite ca fiind acele aplicaii care ofer
suport pentru analiti, proiectani, programatori i testori s
analizeze, proiecteze, implementeze i s construiasc teste
pentru dezvoltarea de sisteme informatice.
Sa prezentam in continuare cateva dintre cele mai utilizate
sisteme CASE:

Sistemul Rational Rose


Rational Rose este un instrument care ofer suport pentru dou
elemente eseniale n abordarea modern a unui proiect
software: dezvoltare bazat pe componente i controlul
dezvoltrii iterative. Dei aceste elemente sunt conceptual
independente, folosirea lor mpreun este natural i benefic.
Modelarea reprezint maparea proceselor unui sistem din lumea
real pe o notaie grafic. Modelele sunt utile pentru nelegerea
problemelor, comunicarea cu oricine este implicat ntr-un
anumit proiect (client, expert n domeniu, analist, proiectant
etc.), modelarea sistemelor complexe, pregtirea documentaiei,
proiectarea programelor i a bazelor de date. Modelarea permite
o nelegere mai bun a cerinelor, o proiectare mai curat, un
sistem mai uor de ntreinut.
Limbajul de modelare UML ofer o modalitate de tranziie ntre
modelul afacerii i domeniul calculatoarelor. Cu ajutorul UML
toi membrii unei echipe folosesc un vocabular comun,
minimiznd erorile de comunicare i crescnd astfel eficiena.

Instrumentele sistemului Rational Rose


Instrumentele principale ale sistemului Rational Rose ofer
faciliti pentru:
Editorul de diagrame;
Generatorul de cod i instrumentele pentru round-trip i reverse
engineering;
Generatorul de documentaie;
Schimbul de informaii cu alte instrumente;
Suportul pentru adnotri formale textuale;
Integrarea cu instrumente de dezvoltare;
Suport acordat muncii n echip.
4

Facilitile sistemului Rational Rose


Interfaa grafic a sistemului Rational Rose se mparte n
urmtoarele ferestre:
Fereastra aplicaiei;
Fereastra de navigare;
Fereastra documentaiei;
Fereastra de lucru;
Fereastra specificaiilor;
Fereastra log-urilor.
Generarea de cod se poate face pentru diagramele de clase,
pachete i pentru diagramele de componente. Pentru a genera
cod, clasele trebuie asignate unui limbaj: C++, ANSI C++,
Java/J2EE, Ada , CORBA IDL, Visual Basic.
Pentru C++, ANSI C++, Java/J2EE si CORBA IDL ofer round-trip i
reverse engineering. n plus, ofer faciliti de modelare a
apliciilor web, aceasta incluznd generarea de cod jsp, asp,
html.
5

Facilitile sistemului Rational Rose - continuare


Sistemul permite generarea de cod, reverse engineering i roundtrip pentru ANSI SQL 92 i pentru urmtoarele sisteme de
gestiune a datelor:
IBM DB2 MVS si UDB
Oracle
Microsoft SQL Server
Sybase Adaptive Server

Este posibil, de asemenea, generarea de cod i reverse


engineering pentru XML DTD;
Generarea documentaiei se realizeaz n format HTML ;
Schimbul de informaii cu alte instrumente de modelare este
posibil prin intermediul formatului XMI (XML Metadata
Interchange).
Rational Rose permite integrarea cu Microsoft Visual Studio i
Forte for Java. Microsoft Visio permite reverse engineering din
Visual C++ , Visual J++ si Visual Basic . MagicDraw permite
integrarea cu Forte for Java i Borland JBuilder. n plus, exist
medii de dezvoltare proprii, Rational XDE (pentru Java i pentru
platforma .Net), care, pe lng integrarea cu Rational Rose
Enterprise Edition, permit construirea de modele.

Sistemul MagicDraw
MagicDraw Enterprise Edition reprezint un instrument de
modelare vizual, bazat pe UML, care permite lucrul cu mai multe
tehnologii i sisteme de gestiune;
Zona de lucru a instrumentului MagicDraw este compus din:
Meniul principal i bara de instrumente - permite accesul la
principalele funcionaliti ale meniului;

Fereastra de navigare (browser-ul) cuprinde toate


elementele modelului.
Ofer faciliti de round-trip i reverse engineering pentru
limbajele: Java, C++, IDL, DDL, EJB, C#;

MagicDraw permite generarea de rapoarte n urmtoarele


formate: HTML, PDF, RTF, PostScript, XSL-FO;
Pentru schimbul de informaii cu alte instrumente de modelare,
utilizeaz formatul XMI;
7

Sistemul Poseidon UML

Poseidon UML este un sistem CASE dezvoltat n totalitate n


limbajul Java, n scopul asigurrii portabilitii pe ct mai multe
platforme. Poseidon UML a evoluat din instrumentul ArgoUML
(un instrument UML open source), reprezentnd o variant
comercial a acestuia. Exist mai multe ediii corespunztoare
aceleiai versiuni: community, standard, professional, enterprise
i embedded;
Zona de lucru a instrumentului Poseidon UML este separat n
cinci pri. n partea de sus a ferestrei, exist un meniu principal
i o bar cu instrumente, care permite accesul la funciile
principale. Sub acestea se gsesc patru ferestre:
Fereastra de navigare
Fereastra pentru diagrame
Fereastra pentru detalii
Fereastra pentru o vedere de ansamblu
Poate genera cod pentru urmtoarele limbaje : Java, php, delphi,
C#, html, VB.Net, Corba IDL, SQL DDL;
Pentru Java ofer faciliti de reverse engineering i round-trip;
8

Sistemul Poseidon UML - continuare


Poseidon UML ofer posibilitatea personalizrii template-urilor
pentru generarea de cod, sau a adugrii de template-uri noi.
Aceste modificri sunt posibile prin utilizarea unui limbaj
denumit VTL (Velocity Template Language), sau prin utilizarea
unor biblioteci de clase Java;
Permite generarea documentaiei n format html. Sunt generate
fiiere html, diagramele fiind incluse sub forma de imagini n
format jpeg. Documentaia este generat pentru: modele,
pachete, clase, interfee, operaii, metode, asocieri, actori, cazuri
de utilizare, relaii de includere i de extensie;
Ofer faciliti de import/export pentru diagrame n format XMI.

Sistemul Microsoft Visio


Microsoft Visio permite generarea mai multor tipuri de
diagrame: diagrame pentru descrierea proceselor de afaceri,
pentru proiectarea bazelor de date, pentru construirea de
organigrame pentru ntreprinderi, pentru dezvoltarea de sisteme
informatice etc. Dintre diagramele pentru dezvoltarea de
sisteme informatice se pot meniona: diagrame dezvoltate n
UML i diagrame pentru modelarea fluxului de date;
Zona de lucru este compus din:
Meniul principal i bara de instrumente - care permite accesul la
principalele funcionaliti ale instrumentului;
Fereastra cu elementele de modelare - sunt cuprinse toate
tipurile de diagrame i exist o bun acoperire a conceptelor
UML;
Exploratorul modelului - ofer, sub forma unui arbore, o vedere
asupra modelului i o modalitate de navigare printre elementele
acestuia;
Fereastra de lucru - n care se realizeaz construcia efectiv a
10
modelului.

Sistemul Microsoft Visio - continuare


Microsoft Visio permite generarea de cod, pe baza diagramelor
de clase, pentru limbajele Visual C++, C# si Visual Basic.
Facilitatea reverse engineering este posibil pentru aplicaii
dezoltate n Visual C++ , Visual Basic si .Net;
Permite generarea diagramelor n diverse formate grafice (svg,
jpg, gif etc.), astfel nct s poat fi incluse n documentaia
proiectului;
Permite salvarea sub forma de pagini Web a modelelor
dezvoltate;
Nu permite import/export de fiiere n format XMI;

Microsoft Visio se integreaz cu Visual Studio .Net i cu Visual


Studio .

11

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

SCAD - 13

Arhitectura unui sistem CASE

Catedra de
Calculatoare

Introducere
Pentru realizarea tuturor funciilor necesare proiectrii unui
sistem informatic complex, indiferent de metoda de analiz i
proiectare pentru care ofer suport, arhitectura unui sitem CASE
trebuie s conin urmtoarele componente:
Editor de diagrame

Analizor de structur (cu facilitati de round-trip engineering )


Depozit central de date (repository)
Generator de cod

Generator de documentaie
Instrumente pentru inginerie inversat(reverse engineering)
Instrumente de testare
Instrumente pentru managementul proiectului
Interfaa utilizator
2

Arhitectura unui sistem CASE

INTERFATA UTILIZATOR
EDITOR DE DIAGRAME

ANALIZOR DE STRUCTURA

INSTRUMENTE PENTRU INGINERIE INVERSATA


DEPOZIT CENTRAL DE DATE
( REPOSITORY )
GENERATOR
DE COD

GENERATOR DE
DOCUMENTATIE

INSTRUMENTE DE TESTARE

MANAGEMENT DE PROIECT
3

Editorul de diagrame
Editorul de diagrame este componenta obligatorie a oricrui sistem CASE i
permite construirea sau modificarea tuturor tipurilor de diagrame utilizate de
metodologia de implementate . Introducerea informaiilor n editor poate fi
facut n dou moduri:
De ctre utilizator, prin intermediul unei interfee;
Din repository, atunci cnd acesta este actualizat prin reverse engineering.
Deoarece editorul de diagrame este prima component cu care
interacioneaz utilizatorul i n acelai timp cea mai utilizat de acesta, el
trebuie s satisfac anumite condiii:
S permit introducerea i modificarea uoar a tuturor entitilor grafice
descrise de metoda de proiectare;
Suprafaa grafic s fie de calitate, s permit operaii de zoom, de
grupare i aliniere a elementelor diagramei;
S permit tiprirea eficient a documentelor i paginarea lor, precum i
selectarea informaiilor ce vor fi tiprite;
S dea posibilitatea de a decide entitile ce vor fi cuprinse ntr-o pagin
fr a trunchia informaiile;
S permit construirea automat a unor tipuri echivalente de diagrame.
Pentru realizarea acestor faciliti i deoarece opiunile i comenzile de
editare a diferitelor diagrame sunt foarte numeroase, editorul de diagrame
folosete, n general, bare de comenzi, cutii de dialog sau meniuri senzitive de
4
context.

Depozitul central de date(repository)

Depozitul central de date(repository) este tot o component obligatorie, care are drept rol
acumularea i stocarea n maniera organizat a tuturor informaiilor introduse de
dezvoltatori sau analiti la momente diferite, eventual n locuri diferite. Repository este
elementul central al unui sistem CASE, care trebuie s stocheze toate informaiile despre
proiecte i s permit ca, pornind de la acestea, s se creeze informaii noi, care s fie la
rndul lor plasate n repository.
Pentru un proiect sunt verificate i corelate toate informaiile existente n repository, cu
scopul de a asigura integritatea i consistena lor. Mai exact, diferitele tipuri de diagrame
reprezint aceeai informaie privit din diferite puncte de vedere, deci trebuie s aib o
legatur logic ntre ele. Datele introduse n anumite diagrame pot fi utilizate i n alte tipuri
de diagrame i depozitul de date este cel care asigur consistena informaiei ntre diferitele
diagrame. Modificrile efectuate asupra unei entiti dintr-o diagram sunt automat
reflectate n reprezentarea ulterioar a aceleai entiti n orice alt diagram.
Dintre caracteristicile i n acelasi timp avantajele oferite de acest instrument sunt
urmtoarele:
Documentaia de realizare a oricrui proiect, n totalitatea ei, se gsete n repository, de
unde poate fi tiparit integral , parial sau la cerere;
Documentaia final a produsului software este realizat pe baza informaiilor despre
proiect, coninute n repository ;
Creterea preciziei i a acurateei documentaiei fa de cazul n care aceasta este realizat
pe hrtie, deoarece sunt detectate erorile, inconsistenele i omisiunile, tiut fiind c n
cazul aplicaiilor i produselor software complexe elaborate n cadrul unei echipe aceste
aspecte sunt greu de controlat;
Asigur lucrul n echip i n reea, pe de-o parte prin accesul controlat al membrilor echipei
la componente de diferite niveluri ale proiectului, pe de alt parte prin gestionarea
legturilor dintre componentele ce formeaz arhitectura unui sistem informatic.
5

Analizorul de structur
Analizorul de structur este componenta care are drept rol
depistarea i eliminarea unor erori dificil de localizat i tratat n
fazele ulterioare celei de introducere a informaiilor.
Analizorul este n strns legatur cu editorul de diagrame i cu
repository i rolul lui este de a compara ultimele date introduse
cu cele existente n repository i de a propaga o modificare de
structur la mai multe obiecte corelate cu structura
respectiv(facilitatea round-trip) .
Alte funcionaliti ale analizorului sunt:
Verific unicitatea denumirilor de obiecte - nu sunt permise
introducerea n acelai domeniu de vizibilitate (diagrama,
dicionar de date, etc.) a dou entiti de acelai tip, cu acelai
nume;
Verific dac toate entitile referite sunt definite;
Verific dac constrngerile de integritate sunt corect definite;
Semnaleaz relaii de motenire definite circular;
Verific corectitudinea semantic i sintactic a adnotrilor
formale;

Generatoare de cod i documentaie


Generatorul de cod permite transformarea n cod executabil, specific
unui anumit limbaj de programare, a diagramelor realizate n faza de
proiectare. n felul acesta, se genereaz codul pentru interfeele
aplicaiei, sau raportele specifice. Unele sisteme CASE pot genera i
fiiere de comenzi, care pot fi executate ntr-o interfa conectat la un
sistem de gestiune, de exemplu se pot genera scripturi care conin
comenzi SQL de creare de obiecte. nainte de generare, dezvoltatorul
are posibilitatea de a alege dintr-o list predefinit limbajul de
programare pentru care dorete generarea.
Generatorul de documentaie conine modele de documente i ofer
utilizatorului posibilitatea de a-i concepe propriile documente n mod
flexibil. Fiind legat de repository, furnizeaz informaii la zi referitoare
la proiect. Orice modificare a unei diagrame dintr-un proiect induce
modificarea automat a documentului asociat. Pot fi generate rapoarte
standard pentru monitorizarea unui proiect i pentru evaluarea
informaiilor de dezvoltare, dar pot fi realizate i rapoarte proprii ale
utilizatorului.
7

Alte componente ale arhitecturii

Instrumentele pentru inginerie inversat (reverse engineering) au rolul


de revenire din fazele de sfrit ale proiectrii n fazele de nceput,
adic actualizarea diagramelor n raport cu modificrile efectuate n
cod. Acest lucru permite dezvoltarea interactiv a unui produs
software prin bascularea ntre proiectare i implementare. Alt
posibilitate este generarea diagramelor, plecnd de la o versiune
anterioar de cod care nu a fost dezvoltat cu un instrument CASE.
Instrumentele de testare ofer faciliti de testare a modulelor
sistemului informatic nc din faza de proiectare. Rolul lor este de a
genera scenarii de test pentru identificarea eventualelor erori de
proiectare, sau pentru verificarea corectudinii prelucrrilor de date.
Managementul de proiect este instrumentul de administrare global a
intregului proiect (diagrame, versiuni de cod, documentaie, etc). Acest
lucru permite membrilor echipei de dezvoltare s lucreze n paralel i n
acelai timp s foloseasc obiectele create n alte proiecte, prin
adaptri i modificri minore.
Interfaa utilizator este instrumentul care pune la dispoziia
dezvoltatorilor meniul de lucru cu instrumentele sistemului CASE.
Pentru aplicaii web trebuie un browser specilizat.
8

Criterii de difereniere a sistemelor CASE


Sistemele CASE moderne ofer toate instrumentele de baz pentru
asigurarea unui ciclu intreg de proiectare. Totui, ele pot fi
difereniate n funcie de performane i funcionalitile oferite.
Un criteriu de comparaie ar fi dup numrul metodelor de analiz
i proiectare oferite, n acest caz putem vorbi de sisteme care:
ofer suport pentru o singur metod de analiz i proiectare;
ofer suport pentru mai multe metode de analiz i proiectare
( unele ofer faciliti de generare automat a documentelor
realizate pentru o anumit metod, n documente echivalente
altei metode).
Unele sisteme CASE ofer posibilitatea de lucru n echip, dar pe un
singur server, iar altele ofer posibilitatea de lucru n reea.
Nu toate sistemele CASE genereaz cod integral, unele genereaz
cod parial, care trebuie completat i optimizat manual.
Majoritatea sistemelor sunt integrate ntr-un mediu de dezvoltare
(I-CASE), dar sunt i unele care ofer instrumente de proiectare
neintegrate.
9

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 14

Metoda Zachman de evaluare a instrumentelor


CASE

Introducere
n 1997, John A. Zachman, a propus o metod de

conceptualizare a elementelor implicate n construirea


arhitecturii oricrui sistem informatic, metod care poart
denumirea de cadru de lucru Zachman (Zachman Framework). El
a evideniat faptul c proiectarea unui sistem informatic trebuie
privit din mai multe puncte de vedere i realizat n mai multe
etape, pentru specificarea fiecreia dintre acestea fiind necesare
diagrame i documentaie specific.
Conform lui Zachman, arhitectura unui sistem informatic este
determinat de strategia de business. Implicaiile sunt: sistemul
trebuie s susin obiectivele de business ale companiei, dar
aceasta nu se extinde asupra unui proces de planificare
strategic.
Modelul lui Zachman descrie rezultatele unui proces de
dezvoltare software. Astfel, el identific dou modaliti de
reprezentare care, atunci cnd sunt utilizate n combinaie,
descriu precis natura i scopul acestor rezultate n contextul
2
organizaiei.

Metoda Zachman i modalitile de reprezentare

Conform lui Zachman, arhitectura unui sistem informatic este determinat de


strategia de business i trebuie s evidenieze precis natura i scopul urmrit
n contextul organizaiei, innd cont de dou criterii:
Perspectiva uman - se refer la diferitele perspective ale persoanelor
implicate n dezvoltarea sistemului i sunt identificate trei vederi arhitecturale
fundamentale:
Modelul afacerii (businesss view) -reprezint o descriere a organizaiei n
cadrul creia sistemul urmeaz s funcioneze;
Modelul sistemului (designers view) - cuprinde modelele i arhitectura
sistemului, astfel nct s fie ndeplinite funciile cerute de beneficiar;
Modelul tehnologic (builders view) descrie cum va fi implementat sistemul
i conine detalii specifice mediului n care se realizeaz implementarea.
Etape de dezvoltare - sunt identificate trei vederi necesare pentru a descrie
fiecare etap de dezvoltare a sistemului:
Scopul (scope view) descrie scopul i strategia afacerii i servete ca baz
pentru celelalte vederi;
Prezentarea detaliat (out-of-context view) reprezentarea ilustreaz detalii
specifice implementrii pentru anumite pri ale sistemului. Aceast vedere
este mai putin arhitectural i este preocupat mai mult de anumite pri ale
sistemului dect de ntreg sistemul;
Vedere operaional (operational view) reprezint o vedere asupra
funcionrii sistemului n mediul real de exploatare.
3

Metoda Zachman i tipurile de abstractizri

Aceste abstractizri sunt folosite pentru a clarifica anumite


caracteristici relevante i pentru a pune accentul pe diferite
aspecte ale sistemului. Au fost considerate ase tipuri de
abstractizri, dup cum urmeaz:

Datele (Ce?) descriu coninul sistemului;


Funciile (Cum?) sunt descrise utilizarea i funciile sistemului,
incluznd procesele i fluxurile de control;
Reeaua (Unde?) cuprinde elementele spaiale i relaiile
dintre ele, incluznd distribuirea sistemului;
Factorul uman (Cine?) se pune accentul pe echip, manuale i
instruciunile de operare sau modelele folosite pentru realizarea
anumitor sarcini.

Timpul (Cnd?) se pune accentul pe ciclul de via i pe


planificrile folosite pentru a controla activitile;
Motivaia (De ce?) - sunt subliniate motivaiile pentru
construirea sistemului i constrngerile care se aplic asupra lui.

Cadrul de lucru Zachman

Prin combinarea celor doua dimensiuni ntr-o matrice, Zachman


a creat un cadru de lucru ce reprezinta un instrument foarte
puternic n analizarea rezultatelor proceselor din ingineria
software.
Natura distincta a diferitelor reprezentari, de-a lungul fiecarei
axe, face posibila descrierea precisa a scopului fiecarei celule.
Folosind aceasta descriere, o organizatie poate evalua acoperirea
procesului de dezvoltare software utilizat n cadrul organizatiei
i, de asemenea, poate evalua impactul noilor instrumente i
tehnici n contextul strategiilor de afaceri i referitoare la
sistemele informatice.

Cadrul de lucru Zachman


Cadrul
Zachman

Date

Funcii

Reea

Timp

Motivare

Personal

Scop

Lista
elementelor
importante
pentru
companie
Diagrame,
entitti,
legturi

Lista
proceselor
desfurate
n
companie
Modelul
procesului
de afacere

Locaiile
unde
opereaz
companie

Lista
evenimentelor
/
ciclurilor
de afaceri
Planificri

Lista
obiectivelor
afacerii

Lista
unitilor

Reguli de
business

Organigrama
companiei,
roluri

Modelul
sistemului

Modelul
datelor

Arhitectura
sistemului
distribuit

Structura
proceselor

Modelul
regulilor
de
business

Arhitectura
interfeelor
utilizator

Modelul
tehnologic

Arhitectura
datelor

Diagrame
ale fluxului
de date,
arhitectura
aplicatiei
Proiectul
sistemului

Arhitectura
sistemului

Diagrame ale
fluxului de
control

Proiectul
regulilor
afacerii

Reprezentare
detaliat

Proiectarea
datelor,
modaliti
fizice de
stocare
Datele
convertite

Codul
surs
detaliat

Arhitectura
reelei

Definirea
Problemelor
legate de
sincronizri

Specificarea
regulilor
n logica
programelor

Interfata
utilizator,
probleme de
securitate
Interfete,
arhitectura
securitii
sistemului

Programele
executabile

Faciliti
de
comunicare

Evenimente
legate de
afacere

Obligativitatea
regulilor

Personal
instruit

Modelul de
business

Operaional

Reeaua
logisticii

organizaionale

Criterii pentru evaluarea limbajului de modelare


Metoda Zachman poate fi aplicat n scopul determinrii
eficacitii instrumentelor CASE pentru acoperirea produselor
rezultate pe parcursul aplicrii unei etape de dezvoltare software
(modele, cod surs, documentaie etc.).
Pentru suportul oferit de instrument limbajului de modelare s-a
realizat o mprire n dou criterii separate:
Suportul oferit realizrii modelului afacerii (business model)include conceptele i notaiile furnizate de instrument pentru
construirea modelului de business (profilul UML pentru
modelarea afacerii);
Suportul oferit realizrii modelelor de analiz, proiectare i
implementare - include conceptele i notaiile de baz ale
limbajului universal de modelare.
7

Fazele proiectrii unui sistem informatic


Dimensiunea dinamic a procesului unificat descrie ciclul de via al
unui proiect software n termeni temporali, utiliznd faze i iteraii.
Fazele unui proces unificat sunt:
Concepia reprezint faza n care este stabilit scopul proiectului i
este definitivat modelul afacerii;
Elaborarea se pune accentul pe definirea i validarea unei
arhitecturi robuste i pe eliminarea riscurilor din punct de vedere
tehnic;
Construcia reprezint faza n care este dezvoltat produsul,
pornindu-se de la arhitectura de baz la care se adaug,
incremental, noi funcionaliti;
Tranziia reprezint faza n care produsul final este furnizat
beneficiarului.
Rezultatul fiecrei faze l constituie un produs intermediar. Astfel, o
faz este constituit din etape: modelarea afacerii, modelarea
cerinelor, analiza i proiectarea, testarea i implementarea.
Fiecare dintre aceste etape va avea o pondere diferit, n funcie de
faza din ciclul de via n care se afl proiectul.
8

Etapele proiectrii unui sistem informatic


n cadrul fazelor ciclului de via al unui proiect software, sunt
identificate urmatoarele etape:
Modelarea afacerii

Scop, Modelul afacerii

Modelarea Cerinelor,

Modelul sistemului

Analiz, Proiectare
Proiectare detaliat

Modelul tehnologic

Implementare, Testare

Reprezentare detaliat

n urma comparrii instrumentelor CASE, pe baza criteriilor


prezentate i a cadrului de lucru Zachman, se poate evalua felul
n care acestea acoper ciclul de via al unui proiect software.
9

Metodologia de aplicare a metodei Zachman


Metodologia de comparaie pe baza criteriilor i a cadrului de lucru
prezentat cuprinde urmtorii pai:
Se analizeaz, pentru fiecare instrument considerat, felul n care
acoper fiecare dintre criteriile de evaluare;
Pentru fiecare criteriu de evaluare, se realizeaz un clasament al
instrumentelor studiate;
Pentru fiecare criteriu, unui instrument i se atribuie un numr de
puncte, dup cum urmeaz: cel mai bine clasat primete un numr
egal cu numrul de instrumente analizate, al doilea primete cu un
punct mai puin etc., urmnd ca ultimul clasat s primeasc un
punct.
Fiecare etap din ciclul de via al unui proiect are o anumita
pondere si se calculeaz numrul de puncte obtinut de instrument:
Nr_Puncte_Etapa_s = Swij Coloana i Criteriul j
unde:
Coloana i - reprezint una dintre abstractizrile ce particip la
descrierea perspectivei umane din cadrul de lucru Zachman;
Criteriul j - reprezint unul dintre criteriile de comparare a
instrumentelorCASE, prezentate la nceputul capitolului;
wij ia valoarea 1, dac evaluarea se aplic pentru criteriul j i
abstractizarea i, altfel ia valoarea 0.
Se reprezint grafic rezultatele.
10

Universitatea
Politehnica
din Bucureti

Facultatea de
Automatic i
Calculatoare

Catedra de
Calculatoare

SCAD - 15

Metode de comparaie ntre sisteme CASE

Introducere

Vom folosi cadrul de lucru Zachman, pentru a face o comparaie


ntre patru sisteme CASE, din punct de vedere al facilitilor pe
care le ofer i al performanelor tehnice.
Au fost alese pentru comparaie urmtoarele sisteme CASE:
Rational Rose, Microsoft Visio, Poseidon UML si Magic Draw .
n urma comparatiei instrumentelor CASE, pe baza criteriilor
prezentate i a cadrului de lucru Zachman, se poate evalua felul
n care acestea acoper ciclul de via al unui proiect software.

Criterii de comparaie
Vom face o comparaie ntre cele patru sisteme CASE urmrind
facilitile oferite pentru rezolvarea urmtoarelor etape ale
ciclului de via ale unui sistem informatic:
Scopul
Modelul afacerii

Modelul sistemului
Modelul tehnologic
Reprezentare detaliat

ntreinere postimplementare

Suportul acordat construirii modelului afacerii - pentru care,


ncepnd cu versiunea 1.3 a standardului UML, sunt descrise o serie
de stereotipuri.

Concepte cuprinse n
profilul UML pentru
modelarea afacerii
Actor al afacerii
Entitate a afacerii
Lucrtor al afacerii
Caz de utilizare a afacerii
Realizarea unui caz de
utilizare a afacerii
Unitate organizaional

Rational Microsoft Poseidon Magic


Rose
Visio
UML
Draw
X
X
X
X
X

X
X

X
4

Suportul acordat construirii modelului cerintelor, de analiz si


proiectare n tabelul urmtor se prezint cteva concepte si
notatiile suportate de fiecare dintre sisteme.
Concepte folosite de
UML
Caz de utilizare
Pachet
Clas abstract
Clas rdcin
Clas frunz
Clas parametrizabil
Interfa
Agregare

Rational Microsoft Poseidon


Rose
Visio
UML
X
X
X

X
X
X

X
X
X
X
X
X
X
X

X
X
X
X

X
X

Magic
Draw
X
X
X
X
X
X
X
X
5

Suportul acordat generrii de diagrame n tabelul urmtor se


prezint tipurile de diagrame generate de fiecare dintre sisteme.
Diagrame folosite de
UML
Diagrama cazurilor de
utilizare
Diagrama de clase
Diagrama de secven
Diagrama de colaborare
Diagrama de stare
Diagrama de activiti
Diagram de
componente
Diagram de
amplasament

Rational Microsoft Poseidon Magic


Rose
Visio
UML
Draw
X

X
X
X
X
X
X

X
X
X
X
X
X

X
X
X
X
X
X

X
X
X
X
X
X

X
6

Suportul pentru adnotri formale textuale aa cum reiese i


din prezentarea celor patru sisteme, dei fiecare dintre acestea
permite utilizarea adnotrilor formale textuale (n special
folosind limbajul OCL), MagicDraw este singurul care realizeaz o
verificare a sintaxei acestora.
Pstrarea consistenei informaiilor ntre diferite diagrame
Verificarea consistenei se face att n cadrul aceleiai diagrame
(de exemplu o relaie de asociere trebuie s uneasc dou clase,
o tranziie trebuie s aib o stare surs i una destinaie etc.), ct
i ntre diagrame (adugarea unui mesaj ntr-o diagram de
interaciune trebuie s se reflecte n diagrama de clase etc.).
Sistemele studiate asigur consistena n cadrul aceleiai
diagrame i ntre diagramele de clase i cele de interaciune.

Suportul oferit pentru navigarea prin model Suportul oferit


pentru navigarea prin model face parte din a doua categorie de
criterii. Toate cele patru sisteme au o fereastr de tip treecontrol, fereastr ce permite navigarea prin model.
7

Generare de cod tabelul de mai jos prezint limbajele de


programare pentru care sistemele analizate genereaz cod.
Generare
cod
C++
Java / J2EE
VB
.Net
CORBA IDL
XML DTD
php
Delphi
Ada

Rational
Rose
X
X
X
X
X
X

Microsoft
Visio
X
X
X

Poseidon
UML
X
X

Magic
Draw
X
X

X
X

X
X

X
X
X
8

Suport pentru reverse engineering si round trip tabelul de mai


jos prezint limbajele pentru care sistemele ofer aceste faciliti.
Reverse
engineering
si round
trip
C++
Java / J2EE
VB
.Net
CORBA IDL
XML DTD
php
Delphi
Ada

Rational
Rose

Microsoft
Visio

X
X

X
X
X
X

Poseidon
UML

Magic
Draw

X
X

Suport pentru modelarea datelor


Rational Rose ofer cel mai bun suport pentru modelarea datelor
(lucreaz cu cele mai multe tipuri de sisteme de gestiune a
bazelor de date, realizeaz generare de cod i inginerie
inversat).
MagicDraw ocup locul doi iar Poseidon realizeaz doar
generarea de cod.
Microsoft Visio nu genereaz cod DDL sau scripturi SQL pornind
de la diagramele dezvoltate n UML. Instrumentul prezint
aceast facilitate, dar pe baza diagramelor specializate pentru
proiectarea bazelor de date relaionale.

Suport pentru tehnologii Unele dintre sistemele analizate


furnizeaz framework-uri pentru diverse platforme Java sau
pentru diverse biblioteci de clase C++.
Rational Rose ofer suportul cel mai bun pentru platforme Java i
pentru biblioteci C++. De asemenea, Rational Rose ofer un bun
suport pentru modelarea aplicaiilor bazate pe componente
(COM, EJB, CORBA IDL, .Net);
MagicDraw genereaz fiiere IDL, conine un framework pentru
EJB, genereaz cod pentru platforma .Net.
10

Reutilizabilitatea i suportul pentru utilizarea abloanelor de


proiectare
Rational Rose ofer urmtoarele faciliti : framework wizard
add-in i type library importer. n primul caz este permis
dezvoltarea i refolosirea de cadre care s fie incluse (sub forma
unor simboluri) n modelul n curs de dezvoltare. n cel de al
doilea caz este permis importul unei componente COM, aa cum
este vzut din exterior. De asemenea, instrumentul permite
integrarea cu Microsoft Repository.
Microsoft Visio nu ofer posibilitatea refolosirii modelelor
dezvoltate folosind UML (permite integrarea cu Microsoft
Repository numai pentru modelarea bazelor de date).
MagicDraw permite exportul n fiiere xml a unor module dintrun proiect, n vederea reutilizrii lor n alte proiecte (se vor
importa n proiectul dorit).
Att Rational Rose ct i MagicDraw ofer suport pentru
integrarea n model a abloanelor de proiectare descrise de Erich
Gamma n cartea Design Patterns, Elements of reusable Object
Oriented Software.
11

Generarea de documentaie pentru proiect Tabelul de mai jos


arat att modalitatea prin care fiecare dintre sisteme poate
genera documentaia pentru proiecte, ct si posibilitatea salvrii
diagramelor dezvoltate n diverse formate (care s permit
includerea lor n documentaie).
Documentatie

Poseidon

Magic

UML
X

Draw
X

GIF

JPEG

PostScript

HTML

Rational
Rose
X

Microsoft
Visio

PDF
SVG

Bitmap

Transfer prin clipboard

X
X

X
12

Import/export de date cu alte instrumente de modelare


Rational Rose folosete formatul petal (formatul companiei
Rational). De asemenea, este disponibil un add-in care, odat
instalat, permite import/export de date cu alte instrumente,
folosind formatul XMI.
Microsoft Visio permite, de asemenea, instalarea unui add-in
care s permit exportul i importul n i din fiiere XMI.
MagicDraw i Poseidon UML permit, fr instalri suplimentare,
transferul de informaii folosind formatul XMI.
Integrarea cu instrumente de dezvoltare
Rational Rose permite integrarea cu Microsoft Visual Studio i
Forte for Java.
Microsoft Visio permite reverse engineering din Visual C++,
Visual J++ i Visual Basic.
MagicDraw permite integrarea cu Forte for Java i Borland
JBuilder.

13

Prelucrarea datelor
n tabelul urmtor este prezentat clasamentul, pentru fiecare dintre criteriile
discutate, realizat pentru sistemele prezentate i punctajul corespunztor,
conform metodologiei.
Criteriu de comparatie

Rational
Rose

Microsoft
Visio

Poseidon
UML

Magic
Draw

Suportul acordat construirii modelului afacerii

Suportul acordat construirii modelului cerinelor, de


analiz i proiectare

Suportul pentru adnotri formale textuale

Pstrarea consistenei informaiilor ntre diferite


diagrame

Suportul oferit pentru navigarea prin model

Generare de cod

Suport pentru reverse engineering si round trip

Suport pentru modelarea datelor

Suport pentru tehnologii

Generarea de documentatie pentru proiect

Import/export de date cu alte instrumente de


modelare

Integrarea cu instrumente de dezvoltare

2
14

Rezultatele comparaiei
n figura urmtoare, se prezint reprezentarea grafic a
rezultatelor obinute n urma comparaiei ntre cele patru
instrumente.
Valorile reprezentate grafic au
metodologiei propuse de Zachman.

fost

calculate

conform

Se pot distinge, astfel, modalitatile n care sistemele acoper


diferitele etape din ciclul de via al unui proiect software.
n faza post-implementare, n care produsul se afl n mediu real
de exploatare, s-a considerat c sistemul intervine prin
documentaia generat pentru proiect.

15

Reprezentarea grafica a rezultatelor

16

Concluzii

Comparatia i evaluarea sistemelor CASE are ca obiectiv formarea unei


viziuni de ansamblu asupra acestora, astfel nct persoanele ce
urmeaz s decid asupra instrumentului ce va fi achiziionat de ctre
o organizaie dezvoltatoare de software, s poat lua cea mai bun
decizie innd cont de particularitile organizaiei. O decizie care are
la baz mai multe criterii de comparaie, poate fi destul de dificil,
avnd n vedere c un instrument se poate prezenta foarte bine din
punctul de vedere al unui criteriu, iar din punctul de vedere al altor
criterii poate s nu fie foarte performant. n plus, avnd n vedere c,
prin criteriile considerate, sunt acoperite mai multe etape din ciclul de
via al unui proiect software (un instrument ar trebui s fie util n ct
mai multe etape), la procesul de evaluare ar trebui s participe
persoane implicate n diverse etape ale dezvoltrii unui proiect
(analiti, arhiteci, persoane din echipa de testare etc.).
Prin metodologia propus de Zachman se ncearc rezolvarea
problemelor mai sus menionate, scopul fiind evidenierea modului n
care un sistem CASE bazat pe UML acoper etapele din procesul de
dezvoltare al unui produs software. Persoane cu diverse
responsabiliti n procesul de dezvoltare pot evalua produsele n
17
funcie de criteriile corespunztoare.

S-ar putea să vă placă și