Documente Academic
Documente Profesional
Documente Cultură
SISTEMELOR
SOFTWARE
Dr. ing. Liviu PERNIU
Curs 1
Cauze
Nendeplinirea cerinelor
Cerine insuficiente
Cerine ambigui
Comunicare defectuoas
Imposibilitatea conectrii
modulelor
Arhitecturi fragile
Mentenan dificil
Identificarea ntrziat a
erorilor
Calitate slab
Performane slabe
Dezvoltatori aflai n
conflict
Versiuni cu probleme
Complexitate mare
Neobservarea
inconsistenelor
Testare insuficient
Evaluare subiectiv
Elaborare pe baza
modelului n cascad
Modificri necontrolate
Automatizare insuficient
Practici
Elaborarea
iterativ
Managementul
cerinelor
Utilizarea de
arhitecturi bazate
pe componente
Modelarea
vizual (UML)
Testarea
continu a
calitii
Controlul
modificrilor
Dr. ing. Liviu PERNIU
Curs 1
Arhitectura sistemului
0..*
Reutilizeaz
1..*
Proces
Conduce
Reutilizeaz
1..*
Arhitect software
Responsabil de
Arhitectura software
ofer
Avantaj
Reprezentat prin
1
Iteraie
0..*
Risc
0..*
Constrngere
Persoane interesate
0..*
Organizat pe
Cerin
1..*
1..*
Temere
Adresat prin
1..*
Vedere
1..*
Abstractizat prin
Model
1
Prezentat prin
1
UML
Curs 1
Iteraie
5
Artefacte
Definiii
Cine
Reutilizabile
Persoane
interesate
3
De ce
Avantaje
2
Curs 1
DEFINIII
Arhitectur: trei interpretri distincte
Arhitectura vzut ca proces sau disciplin
Arta sau tiina crerii de edificii destinate folosirii acestora de ctre oameni
Aciunea sau procesul de construire
Metoda special sau stilul pe baza cruia se aranjeaz detaliile de structur
i ornamentale ale unei construcii
Curs 1
DEFINIII
Perry i Wolf, 1992
Un set de elemente arhitecturale sau de proiectare care au o anumit form.
Cei doi fac n continuare distincia dintre elementele de procesare, elementele
de tip dat i elementele de conexiune.
Boehm i alii, 1995
Arhitectura unui sistem software conine:
O colecie de componente, conexiuni i constrngeri software i de sistem
Un set de cerine formulate de ctre persoanele interesate
O motivare care s arate faptul c toate componentele, conexiunile i
constrngerile definite n cadrul sistemului, prin implementare, vor satisface
cerinele de sistem cerute de ctre persoanele interesate
Clements i alii, 1997
Arhitectura software a unui program sau sistem de calcul reprezint structura
sau structurile sistemului respectiv care conine componente software,
proprieti exterioare vizibile ale acestora, precum i relaiile dintre ele.
Dr. ing. Liviu PERNIU
Curs 1
DEFINIII
Elemente comune ale tuturor definiiilor
Arhitectura stabilete care sunt principalele componente ce trebuie folosite
Arhitectura definete relaiile ce se stabilesc ntre componente (structuri) precum i
interaciunile dintre acestea
Arhitectura nu introduce acea informaie de coninut referitoare la componente care nu au
legtur cu interaciunile ce apar n cadrul unui sistem
Comportamentul unei componente este parte integrant a arhitecturii n msura n care
acesta poate fi deosebit din punctul de vedere al altei componente
Fiecare sistem are o arhitectur (chiar dac sistemul este alctuit dintr-o singur
component)
Arhitectura ofer motivaia din spatele componentelor i a structurii
Definiiile conceptului de arhitectur nu precizeaz ce este o component
Arhitectura nu are o singur structur
Curs 1
DEFINIII
Definiia conceptului de arhitectur din perspectiva
RATIONAL
Arhitectura software conine setul de decizii semnificative referitoare la
organizarea unui sistem software
Alegerea elementelor structurale i a interfeelor corespunztoare din care
este alctuit sistemul respectiv
Comportamentul, aa cum este el specificat atunci cnd se stabilete
colaborarea dintre aceste elemente
Punerea n comun a acestor elemente structurale i de comportament n
cadrul unor subsisteme mai mari
Stilul arhitectural pe baza cruia se realizeaz aceast organizare
Dup Grady Booch, Philippe Kruchten, Rich Reitman, Kurt Bittner; Rational
Curs 1
DEFINIII
Definiia conceptului de arhitectur din perspectiva
RATIONAL
Arhitectura software mai presupune:
Funcionalitate conine seturile de caracteristici, capabiliti i securitate
Utilizabilitate conine subcategoriile: factori umani, factori de natur estetic,
consistena interfeei utilizator, precum i documentaia i materialele de training ale
utilizatorului
Rezilien este capacitatea de a se putea adapta cu uurin la apariia cererilor de
modificare
Performan specific condiiile n care trebuie s fie ndeplinite cerinele funcionale.
De exemplu, pentru o anumit aciune, trebuie specificai parametrii de performan:
vitez, eficien, disponibilitate, precizie, timp de rspuns, timp de refacere, utilizarea
resurselor
Reutilizare identificarea subsistemelor existente pentru a stabili care dintre
componentele ce apar acolo pot fi folosite sau reutilizate prin intermediul interfeelor
acestora.
nelegere ct de uor poate fi neleas o anumit arhitectur
Constrngeri economice i tehnologice
Aspecte estetice
Dup Grady Booch, Philippe Kruchten, Rich Reitman, Kurt Bittner; Rational
Curs 1
DEFINIII
Component software
O component software este o unitate de distribuire, asamblare,
exploatare i nlocuire
Realizeaz o funcionalitate netrivial
Este definit prin intermediul serviciilor cerute i a celor oferite
Serviciile fac cunoscut comportamentul componentei, dar numai cel necesar
pentru asamblare
Curs 1
Curs 1
Curs 1
Curs 1
dintre
infrastructur
Curs 1
Curs 1
Curs 1
Curs 1
tiin
Art
Curs 1
Curs 1
Curs 1
Vedere
O proiecie a unui model, care este vzut dintr-o perspectiv dat i care
omite entitile ce nu sunt relevante pentru perspectiva respectiv
Perspectiv
O definiie (sau descriere) a unei vederi
Coninut, semnificaie i reprezentare (notaie, tehnici de modelare)
Curs 1
Vedere
Model
Persoana
interesat
Curs 1
Domeniu
(Funcionale)
(Informaii)
Perspectiva
de
cerine
funcionale
Logic
de
proiectare
Proces
Implementare
Rulare n mediul
Perspectiva
Spaiul soluiei
Cerine non-
Use-Case
Spaiul problemei
Perspectiva
de realizare
real
Curs 1
Vizualizare
Specificare
Construcie
documentare
Curs 1
Diagrame
de clase
Diagrame de
secven
Diagrame
de obiecte
Diagrame de
colaborare
Diagrame de
componente
Modele
Diagrame
de stare
Diagrame de
activiti
Diagrame de
rulare n mediul
real
Diagrame
statice
Diagrame
dinamice
Curs 1
Tehnologie
Complexitate
Calitate
Deprinderi
Organizaii i culturi
Curs 1
Fore arhitecturale
Funcionalitate
Tehnologie
Complexitate
Organizaii i culturi
Aspecte ale domeniului
Deprinderi
Calitate
Proces
Arhitectura
produce
conduce
Sistem
Arhitect
Curs 1
Curs 1
Separarea de preocupri
Componentele (i straturile) dein detaliile
Componentele, fiind diferite trebuie s poat fi implementate de persoane
cu expertize diferite
Dr. ing. Liviu PERNIU
Curs 1
Predictibilitatea comportamentului
Iteraiile arhitecturale elimin riscurile majore
Curs 1
Curs 1
Curs 1
Curs 1
Curs 1
Mai multe persoane pot juca acest rol, posibil n acelai timp
Curs 1
Curs 1
Echipa de arhitectur
Echipa de dezvoltare a
aplicaiei
Echipa de infrastructur
Echipa de integrare,
testare
Curs 1
Curs 1
Curs 1
Zona de interes
Pre i calitate
Momentul apariiei pe pia
Caracteristici concurente
Uurina instalrii
Uurina configurrii
Uurina integrrii cu alte sisteme
Uurina diagnosticrii problemelor
Curs 1
Curs 1
Curs 1
Curs 1
Curs 1
Curs 1
Dezvoltarea iterativ
Avantaje:
Riscurile critice sunt eliminate nainte de a face investiii majore
Iteraiile iniiale permit utilizatorilor s transmit feedback-uri n timp util
Testarea i integrarea se produc n continuu
Se pot stabili mrimi pentru msurarea atingerii obiectivelor
Progresul poate fi msurat prin evaluarea implementrilor
Implementrile pariale pot fi introduse n mediul real de lucru
R
R
D
I
T
Iteraia 1
D
C
I
I
T
Iteraia 2
Iteraia 3
T I M P
Curs 1
Elaborare
Construcie Tranziie
Mare
Riscul proiectului
Perioada de management
controlat al riscului
Profilul convenional
de risc al proiectului
Profilul riscului
n dezvoltarea iterativ
Perioada
de declarare a riscului
Perioada
de investigare a riscului
Sczut
Curs 1
Curs 1
Iteraie timpurie
Iteraie
intermediar
Iteraie trzie
Curs 1
Elaborare
Etapa de producie
Construcie
Tranziie
timp
Curs 1
Faza de iniiere
Aspecte avute n vedere la intrare
Viziunea original, sisteme existente, necesiti, valori, replicare
Modelul de analiz iniial; use case-uri sau scenarii folosite pentru a ajuta arhitectul
Presupuneri i date necesare pentru arhitectura iniial
Atribuirea de responsabiliti pentru realizarea arhitecturii
Curs 1
Faza de Elaborare
Aspecte avute n vedere la ieire:
Proiectarea aproape complet a modelului, astfel nct s se poat spune c
arhitectura este stabilit
Crearea unui model executabil al arhitecturii complet funcionale
Eliminarea celor mai importante riscuri tehnice
Plan detaliat de dezvoltare software
Identificarea riscurilor de dezvoltare
Plan de management
Planul personalului
Planul fazei de Construcie prezint iteraiile ce se vor desfura precum i scopul acestora
Curs 1
Elaborare
Etapa de producie
Construcie
Tranziie
timp
Arhitectura de baz
Arhitectura de baz reprezint o implementare parial i o
proiectare a elementelor critice ale sistemului, care mpreun
demonstreaz c:
Sistemul va ndeplini cerinele funcionale de baz
Sistemul va ndeplini cerinele non-funcionale cerute
(performan, fiabilitate etc.)
Riscurile principale de dezvoltare pot fi identificate i eliminate
Dr. ing. Liviu PERNIU
Curs 1
Faza de Construcie
Pentru fiecare iteraie:
Aspecte avute n vedere la intrare: Planul de iteraie
Caracteristici incrementale: use case-uri, scenarii
Identificarea riscurilor care se propag
Eliminarea defectelor
Identificarea de criterii pentru stabilirea de obiective msurabile necesare la
evaluarea rezultatelor
Curs 1
Faza de Tranziie
Aspecte avute n vedere la ieire:
Produs introdus n mediul real de lucru
Versiune nou a produsului
Actualizarea vechii versiuni a produsului
Analiza ulterioar
Organizare
Atributele principale de calitate ale sistemului
Aspecte pozitive suplimentare (alimentarea cu reutilizabile, experien i
practici noi achiziionate pe parcursul proiectului)
Nevoia de a evolua (potenial)
Curs 1
Iteraii i faze
Iniiere
Itera
Iteraie
preliminar
Elaborare
Construcie
Itera
Itera
Iteraie
Iteraie
Itera
Iteraie de
arhitecturalarhitectural dezvoltare
Itera
Iteraie de Itera
Iteraie de
dezvoltare dezvoltare
Tranziie
Itera
Iteraie de
tranzi
tranziie
Itera
Iteraie de
tranzi
tranziie
Curs 1
Conceptul iterativ
Faze
Fluxul de lucru al procesului
Iniiere
Elaborare
Construcie
Tranziie
Modelarea domeniului
ntr-o iteraie
se parcurg
toate
fluxurile de
lucru
Cerine
Fluxuri de
lucru
grupate
logic pe
activiti
Analiz i proiectare
Implementare
Testare
Introducere n
mediul real de lucru
Managementul proiectului
Mediu
Iteraii
preliminare
Iter.
#1
Iter.
#2
Iter.
#n
Iter. Iter.
#n+1 #n+2
Iter.
#m
Iter.
#m+1
Iteraii
Dr. ing. Liviu PERNIU
Curs 1
Planul fazei de
Elaborare
Planificarea fazelor i iteraiilor
(Faza de Elaborare)
Criterii de evaluare a
succesului
Factori externi
Dr. ing. Liviu PERNIU
Curs 1
Curs 1
Catedra
1..n
ContStudent
0..1
Un student nu se poate
nscrie la un curs dac
nu are un cont valabil
0..n
+personal
+profesor
Curs
0..n
1
Profesor
0..n
1
+profesor
+lista cursuri
1
Student
0..n
0..n
urmeaz
orar
0..n
Ora
0..n
Curs 1
Se modific des
Sunt foarte importante pentru client
Sunt cerine considerate a fi de risc ridicat
Curs 1
Cerine funcionale
Utilizabilitate - Useability
Fiabilitate - Reliability
Performan - Performance
Suportabilitate - Supportability
Cerine de proiectare
Cerine de implementare
Cerine de interfa
Restricii
Cerine fizice
Dr. ing. Liviu PERNIU
Curs 1
Suportabilitate
Cerin de proiectare
Cerin de implementare
Fiabilitate
Funcionalitate
Cerin de implementare
n limbaj Java
Curs 1
Alte restricii
Restricii de domeniu
planificare
fonduri
deprinderi
parteneriate, ...
Curs 1
cerinelor
arhitecturale
semnificative
trebuie
actualizat
permanent
Pentru fiecare cerin trebuie stabilit setul de ntrebri care ajut la
formularea cerinei
Trebuie nelese de ctre toi cei interesai de bunul mers al proiectului
Chestionar de cerine arhitecturale
Curs 1
Platforma
suport
ntrebri
Exist cerine
referitoare la
funcionarea
sistemului
nentrerupt? Acestea
pot fi specificate n
termeni de timp
mediu dintre
defectri (MTBF)
Ce platforme trebuie
s suporte sistemul?
Impact
Rspuns
Disponibilitatea
este o
caracteristic
cheie. Produsul
trebuie s aibe
o valoare MTBF
de 60 de zile
Produsul va fi
livrat pentru
urmtoarele
platforme UNIX:
Sun Solaris
IBM AIX
HPUX
Prioritate
Mare
Mare
Curs 1
Curs 1
Actori
Use Case-uri
...
Specificaie suplimentar
Cerine arhitecturale
non-funcionale :
Vederea cerinelor
arhitecturale nonfuncionale
Rapoarte Use-Case
Curs 1
Definiia riscului
Riscul = orice st n calea succesului unui proiect
Riscurile apar din contextul cerinelor
Cerine
Context
Tehnologie
RISCURI
Oameni i
organizaii
Constrngeri de domeniu
Dr. ing. Liviu PERNIU
Curs 1
Ordonarea riscurilor
Estimarea de ansamblu a apariiei unui risc (obinerea consensului)
Este egal cu: Impactul Riscului * Probabilitatea de apariie
Curs 1
Scala de periculozitate/ncredere
Periculozitatea general a riscului = Impactul riscului * Probabilitatea de
apariie
Mare
Ri
sc
ur
i
Semnificativ
Moderat
or
do
na
te
de
la
m
ar
e
la
Minor
ic
Sczut
ncredere n
Sczut
Moderat
Mare
decizie
Dr. ing. Liviu PERNIU
Curs 1
Curs 1
1
Membrii echipei
identific riscurile
tehnice din proiect
Riscurile sunt
ordonate de la cel
mai sever la cel
mai puin sever
4
Pentru fiecare iteraie
sau prototip se
stabilesc riscurile
corespunztoare
5
Se revizuiesc i se
rafineaz ipotezele
arhitecturale
Curs 1
Exemplu
Se pun bazele liniei de producie a serviciilor pentru automatizarea
traficului aerian
Se estimeaz 750 KLOC (mii de linii de cod scrise, - Ada, 2% C++)
Mai multe platforme de pentru implementare
Sistem distribuit
Elaborare:
3 iteraii, 6 luni fiecare
Construcie:
4 iteraii, +/- 6 luni fiecare
Tranziia:
2+ iteraii
Dr. ing. Liviu PERNIU
Curs 1
Exemplu: iteraia 1
4 use case-uri critice (scenarii selectate)
Introducerea planului de zbor
Introducerea autorizrilor
Introducerea raportului de poziie a controlorului de zbor
Primirea raportului de poziionare radar
Alegerea produselor COTS (COTS produse gata fabricate, mecanisme)
Middleware i GUI
Perioada de instruire
Crearea echipelor
Domeniul traficului aerian
Limbaje de programare i medii de dezvoltare
Metode de proiectare
10 KLOC dezvoltat
Curs 1
Exemplu: iteraia 2
20 use case-uri critice i importante (scenarii selectate)
Mai multe amnunte
50 KLOC dezvoltate
Curs 1
Exemplu: iteraia 3
Peste 55 use case-uri (scenarii selectate)
Cerine rezolvate
Intrarea n funciune a mai multor mecanisme
Accesul la baza de date
Mecanism tolerant la defectri
Curs 1
Curs 1
Iteraia arhitectural
Faze
Fluxurile de lucru ale procesului
Iniiere
Elaborare
Construcie
Tranziie
Modelarea domeniului
Cerine
Proiectare i analiz
Implementare
Testare
Implementare n mediul real de producie
Managementul proiectului
Mediu
Iteraii
preliminare
Iter.
#1
Iter.
#2
Iter.
#n
Iter. Iter.
#n+1 #n+2
Iter.
#m
Iter.
#m+1
Iteraii
Dr. ing. Liviu PERNIU
Curs 1
Iteraia arhitectural
Specificaii
Riscuri
Cerine
Analiz i
proiectare
bazat pe
arhitectur
Cerine i
planificare
Revizuire
Elaborarea
prototipului
arhitectural,
integrare i testare
Cod
Dr. ing. Liviu PERNIU
Curs 1
Curs 1
Arhitectur i testare
Architectura stabilete limitele testrii
Interfeele reprezint puncte de conectare folosite n faza de testare
Interfeele ghideaz dezvoltarea i generarea testelor
Pot fi generate pri finite
Se codific comportamentul componentelor
Curs 1
Artefacte de arhitectur
Modelul de analiz
Modelul de proiectare
Documentul de
arhitectur software
Modelul de punere n
mediul real de lucru
Modelul de
implementare
Arhitect
* Observaii arhitecturale
* Prototip arhitectural
Reguli de proiectare
* Prezentarea
arhitecturii
Reguli de programare
Dr. ing. Liviu PERNIU
Curs 1
Corespondena DoLo
CorespondenaUCLo
Corespondene cu toate
celelalte vederi cu excepia
vederii de domeniu
Vederea cerinelor
non-funcionale
Vederea
logic
Corespondena LoPr
Vederea
de proces
Corespondena LoIm
Corepspondena PrIm
Vederea de
implementare
Corespondena PrPMRP
Corespondena LoPMRP
Corespondena ImPMRP
Vederea punerii n
mediul real de producie
Curs 1
Comportament
Diagrame de interaciune
Diagrame de stare
Diagrame de activitate
Object Constraint Language (OCL)
Un
Un exemplu
exemplu de
de diagram
diagram de
de domeniu
domeniu este
este prezentat
prezentat n
n slide-ul
slide-ul urmtor
urmtor
Curs 1
Curs 1
Curs 1
Comportament
Descrieri Use-case sub form de text
Diagrame Use-case de activitate
Diagrame Use-case de interaciune (de secven sau colaborare)
Descrieri textuale ale felului n care cerinele se modific n timp i a modului
n care arhitectura trebuie s rspund la aceste modificri
Dr. ing. Liviu PERNIU
Curs 1
Student
Se nregistreaz la curs
Logare
Profesor
Introduce note
Se pstreaz informaiile
profesorului
Sistem de nregistrare
Se pstreaz informaiile
studenilor
Se termin nregistrarea
Curs 1
Curs 1
Persoane implicate
Client
Arhitect
Curs 1
Curs 1
Aspecte
Arhitectura suport abstractizare i separare?
Ce elemente ale sistemului pot fi refolosite?
Ce proiecte arhitecturale pot fi refolosite?
Persoane implicate
Client
Dezvoltatori
Proiectani
Managerii echipei de dezvoltare
Curs 1
Diagrame de clas
Elemente de proiectare arhitectural semnificative (clase, subsisteme, interfee)
precum i relaiile dintre acestea
Comportament
Diagrame de interaciune (de secven i de colaborare)
Diagrame de stare
Colaborri
Au att un aspect structural ct unul comportamental
Curs 1
<<strat>>
Logica de domeniu
Interfa Web
ILogin
ISesiune
Interfa LAN
<<subsistem>>
Managementul
sesiunii
<<strat>>
Servicii
Coordonatori
Middleware
Acces sistem
existent
Acces baz
de date
Reutilizare
de baz
Artefacte universitate
Curs 1
Coordonatori
(logica de domeniu)
<<subsistem>>
Sistem de plat
(sistem existent)
IPlata
(sistem existent)
ICursLista
<<subsistem>>
Lista cursuri
(sistem existent)
Artefacte universitate
(logica de domeniu)
(sistem existent)
Middleware
(servicii)
Stratul serviciilor
Acces baz
de date
(servicii)
ISesiune
(servicii)
<<subsistem>>
Managementul
sesiunii
(servicii)
ILogin
(servicii)
Reutilizare
de baz
(servicii)
Curs 1
Participant B
Participant A
Colaborare X
Participant Q
Participant R
Curs 1
Persoane implicate
Proiectani i dezvoltatori
Client
Persoanele care se ocup de sistemul de operare
Dr. ing. Liviu PERNIU
Curs 1
Curs 1
Mecanism de
comunicare
interproces: COM
Mecanism de
comunicare
interproces: HTTP
<<process>>
BrowserWeb
(Manageri de resurse)
<<process>>
ServerWeb
(Manageri de resurse)
<<process>>
AplicatiaServer
(Manageri de resurse)
<<Pagina client>>
Home
(Paginile client)
<<link>>
<<Pagina client>>
IncepeInregistrare
(Paginile client)
<<Formular>>
FormularCautareCurs
<<trimite>>
(Paginile client)
<<Pagina server>>
PreiaListaCursuri
(Paginile server)
<<creeaza>>
<<Pagina client>>
AlegeCurs
(Paginile client)
Curs 1
BW1 :
BrowserWeb
PC1 :
IncepeInregistrare
SW :
ServerWeb
SA :
ServerAplicatie
BW2 :
BrowserWeb
PS1 :
PreiaListaCursuri
PC2 :
AlegeCurs
Curs 1
Curs 1
Persoane implicate
Dezvoltatori
Managerii echipei de dezvoltare
Subcontractori
Client
Suport (din punct de vedere al configurrii i instalrii sistemului)
Personalul care se ocup de sistemul de operare
Dr. ing. Liviu PERNIU
Curs 1
Categorii de componente
Componente obinute n urma desfurrii lucrului
Fiiere de cod surs, fiiere de date etc. utilizate pentru realizarea
componentelor folosite n mediul real de lucru
mpachetarea fizic a elementelor logice/conceptuale (clase, procese etc.)
Exemple: fiiere .h, .cpp i .hpp pentru C++, CORBA IDL, sau fiiere .java
pentru Java, fiiere executabile
Suport vizualizarea dependenelor de compilare ntre elementele codului
surs (important atunci cnd se controleaz configurarea i se controleaz
versiunile)
Curs 1
Categorii de componente
Componente folosite la introducerea n mediul real de lucru
Prile necesare furnizrii sistemului funcional
Conine executabile i biblioteci (care se execut), dar i componente
auxiliare (care nu se execut)
Exemple: fiiere EXE, DLLs, COM, JAR, tabele ale bazelor de date,
fiiere de date, fiiere help, scripturi, fiiere de iniializare, fiiere de
jurnalizare, appleturi, pagini Web (.htm i .html)
Suport vizualizarea configuraiei componentelor de introducere n
mediul real de lucru
Curs 1
Categorii de componente
Componente de execuie
Elemente fizice create i distruse n mod dinamic pe parcursul
funcionrii aplicaiei
Exemple: obiecte COM+, fiiere temporare, pagini pe parte de server/
servlei, DHTML, mesaje XML transmise ntre procese
Curs 1
Curs 1
Curs 1
Exemplu de vedere de implementare: componente pentruintroducerea n mediul real
de lucru/componente obinute n urma lucrului
<<EXE>>
ConectorLista
Cursuri
<<.CPP>>
MainConectorLista
Cursuri
<<.H>>
TipuriDateUniversitate
<<.H>>
TipuriDeDate
Utilizator
<<.H>>
TipData
Orb
Curs 1
Curs 1
Curs 1
Curs 1
<<Linuxl>>
PC
<< LAN campus >>
<<Windows>>
Server Middle
Tier
<<Windows>>
Server cu lista
cursurilor
<<dialup>>
<< LAN campus >>
<<Windows>>
Desktop
<<Linux>>
HTTP
ODBC
Server
baz de
date