Sunteți pe pagina 1din 23

Analiză tehnică,

Arhitectura sistemului

Colectiv de elaborare: Alexandru Szoke, Lucian Jelea.

Cuprins

Tabelă de figuri .......................................................................................................................... 2


Index de tabele ........................................................................................................................... 2
I. Analiza tehnică................................................................................................................... 3
1. Componente necesare..................................................................................................... 3
2. Analiză tehnologii .......................................................................................................... 4
A. Statistică ..................................................................................................................... 4
B. Generare de rapoarte .................................................................................................. 4
C. Generare de grafice .................................................................................................... 5
D. Server de aplicaţie ...................................................................................................... 5
E. Persistenţă şi acces la date.......................................................................................... 5
F. SGBD ......................................................................................................................... 6
G. Medii de dezvoltare.................................................................................................... 6
H. Interfaţă ...................................................................................................................... 7
I. Engine de orchestrare ................................................................................................. 7
II. Arhitectura sistemului ........................................................................................................ 8
1. Propunerea 1................................................................................................................... 8
2. Propunerea 2................................................................................................................. 10
3. Propunerea finală.......................................................................................................... 13
A. Perspectiva structurală.............................................................................................. 13
B. Perspectiva logică..................................................................................................... 15
C. Perspectiva fizică...................................................................................................... 20
Referinţe ................................................................................................................................... 21
Tabelă de figuri

Figură II-1 Arhitectura three-tier................................................................................................ 8


Figură II-2 Diagramă structurală – Propunerea 1....................................................................... 9
Figură II-3 Arhitectura SOA .................................................................................................... 10
Figură II-4 Orchestrare vs. Sincronizare .................................................................................. 11
Figură II-5 Diagramă structurală – Propunerea 2..................................................................... 12
Figură II-6 Diagrama de implementare a componentelor ........................................................ 13
Figură II-7 Diagrama structurală – Perspectiva pe layere........................................................ 14
Figură II-8 Diagramă de activităţi – Completare formular ...................................................... 15
Figură II-9 Diagramă de activităţi – Editare template de formular.......................................... 16
Figură II-10 Diagramă de secvenţă – Editare formular............................................................ 17
Figură II-11 Diagrama de comunicare – Afişare raport ........................................................... 18
Figură II-12 Diagrama UseCase............................................................................................... 19
Figură II-13 Diagrama deployment.......................................................................................... 20

Index de tabele

Tabel I-1 Componente necesare................................................................................................. 3


Tabel II-1 Layerul de Prezentare – Propunerea 1....................................................................... 8
Tabel II-2 Layerul de Aplicaţie – Propunerea 1......................................................................... 8
Tabel II-3 Layerul de Date – Propunerea 1................................................................................ 9
Tabel II-4 Layerul de Prezentare – Propunerea 2..................................................................... 11
Tabel II-5 Layerul de Orchestrare – Propunerea 2................................................................... 11
Tabel II-6 Layerul de Servicii – Propunerea 2......................................................................... 11
Tabel II-7 Layerul de Date – Propunerea 2.............................................................................. 11
Tabel II-8 Comparaţie Arhitecturi............................................................................................ 13
I. Analiza tehnică
Plecând de la analiza de buisness considerăm că sistemul se pretează a fi implementat
ca JAVA WEB application care are la bază o arhitectură three-tier.
În acest capitol vor fi detaliate atât componentele logice ale aplicaţiei cât şi soluţii
tehnice care permit implementarea.

1. Componente necesare
Nr. Nume componentă Descriere Funcţionalităţi
[1] Management de Permite administrarea a.) Oferă facilităţi de creare,
formulare întrebărilor din chestionare modificare, ştergere legate de
şi a chestionarelor. întrebări şi chestionare.
Constituie interfaţa de b.) Permite accesul la formular.
acces la repository-ul de
întrebări.
[2] Statistică Centralizează şi a.) Oferă funcţionalităţi de analiză a
prelucrează datele din formularului completat.
chestionar. b.) Permite accesul la datele
colectate şi prelucrate pe criterii
specificate.
[3] Generare de Permite obţinerea de a.) Generează rapoarte în format
Rapoarte rapoarte bazate pe datele human-readable respectiv print-
obţinute din componenta de ready.
statistică.
[4] Generare de Permite obţinerea de a.) Generează grafice într-un format
Grafice grafice bazate pe datele user friendly afişabil într-un raport
obţinute din componenta de sau direct într-o pagină
statistică.
[5] Securitate Permite blocarea accesului a.) Permite blocarea accesului pe
pe parţi de aplicaţie. parţi de aplicaţie pentru un user
care nu are rolul adecvat.
[6] Managementul Oferă o interfaţă pentru a.) Oferă facilităţi de autentificare
rolurilor şi userilor autentificarea utilizatorului în sistem.
[7] Content Oferă pentru interfaţă a.) Oferă facilităţi de acces la
management accesul la content. content.
system. b.) Oferă facilităţi de administrare a
conţinutului.
[8] Persistentă şi Este interfaţa pentru layerul a.) Oferă facilităţi de acces la date.
accesul la date de date.
[9] Interfaţă Site WEB prin care se a.) Permite accesare sistemului prin
realizează interacţiunea cu intermediul unui browser WEB.
utilizatorul. b.) Comunică cu celelalte module
pentru a îndeplini funcţionalităţiile
sistemului.
Tabel I-1 Componente necesare
2. Analiză tehnologii
În această secţiune vor fi prezentate tehnologii prin intermediu cărora se pot
implementa componentele. Acele componente care nu au tehnologii analizate sunt
componente custom şi ţin de organizarea internă a aplicaţiei.

A. Statistică

JRI este un API JAVA pentru a acces si prelucrare de date care se bazează pe engine-
ul R. JRI este o interfaţă care permite rularea R-ului nativ din JAVA ca o aplicaţie single
Thread.

Apache Commons-Math este o bibliotecă Java lightweight de componente


matematice şi statistice care se adresează problemelor ne tratate în limbajul Java sau în
Commons Lang. Biblioteca este self-contained şi nu necesită dependenţe suplimentare.
Pachetul abordează o varietate largă de probleme matematice, de exemplu: analiză numerică,
analiză complexă, distribuţii, estimări, geometrie, algebră lineară, ecuaţii diferenţiale,
optimizare, generare de numere aleatoare cu anumite distribuţii, transformări, generare de
statistici, etc.

B. Generare de rapoarte

Jasper Reports este un tool open-source JAVA care oferă posibilitatea de a genera
rapoarte dinamice, rich-content pentru ecran sau pentru imprimantă în format PDF, HTML,
XLS, CSV şi XML. Este scris în întregime în JAVA şi poate fi folosit cu succes în aplicaţii
J2EE sau WEB. Scopul său este de a ajuta în creare de documente orientate pagină într-o
manieră simplă şi flexibilă.

Pentaho reporting este o colecţie de framework-uri open-source care se focusează pe


creare, generarea şi distribuirea de rapoarte bogate şi sofisticate obţinute dintr-o varietate
largă de surse de informaţie.

iReport este un tool vizual scris 100% în JAVA şi bazat pe jasper reports. Datele pot
fi preluate folosind JDBC, TableModels, JavaBeans, XML şi suportă output în PDF, HTML,
XLS, CSV, XML şi Java2D. Toolul oferă posibilitatea de a fi integrat în platforma NetBeans.
Produsul este consacrat şi folosit într-o varietate de aplicaţii enterprise.
C. Generare de grafice

Google Chart API este un servlet ce returnează o imagine în format PNG ca răspuns
la un URL. Sunt suportate diverse tipuri de grafice într-o manieră flexibilă. Toată
documentaţia proiectului şi modalitatea în care sunt pasaţi parametrii sunt prezentaţi pe
pagina proiectului.

JFreeChart este o librărie de chart-uri 100% Java open-source. API-ul este util atât
pentru aplicaţii server-side cât şi pentru aplicaţii client-side. Sunt suportate ca format de
output imagini în formatele: PNG, JPEG, SVG.

D. Server de aplicaţie

Apache Tomcat este Servlet-containerul folosit în implementare oficială de referinţă


pentru tehnologiile Java Servlet şi Java Server Pages. Serverul stă la bază pentru numeroase
aplicaţii WEB critice de scară largă. Tomcat include propriul HTTP-server. Majoritatea IDE-
urilor vin integrate cu cate un Tomcat. Popularitatea este foarte mare iar documentaţia vastă.
Aceste proprietăţi fac din Tomcat unul dintre cele mai simple de utilizat şi scalabile servere de
aplicaţie. Serverul are integrate module de securitate (single sign-on), modul de role
management şi de content management.

JBoss Application Platform este o platformă web de aplicaţie care are la bază un
JBoss Application server peste care sunt deployate o serie de produse JBoss. Platforma este
heavyweight şi oferă o varietate de soluţii în materie de securitate, role şi content
management. Serverul de aplicaţie are la bază un Tomcat care are funcţie de servlet-container
pentru deservirea cererilor WEB.

GlassFish este un server de aplicaţii Java EE 5 open-source dezvoltat de SUN, este


varianta necomercială a Sun System Application Server. GlassFish are la bază o implementare
de Tomcat folosit ca servlet-container. Face parte din aceeaşi familie de produse cu NetBeans,
OpenJDK, OpenESB, OpenPortal, OpenSSO, OpenDS şi OpenSolaris. Serverul este dotat cu
propriul sistem de securitate, role, user şi content management.

E. Persistenţă şi acces la date

Hibernate este un framework relaţional de mapare obiecte, care permite prelucrarea


orientată obiect a bazelor de date relaţionale. Hibernate este open-source şi permite obţinerea
unui nivel de abstractizare mai înalt a unui model relaţional. Interogările se exprimă fie cu
ajutorul extensiei proprii de SQL (HQL) fie prin SQL nativ fie cu ajutorul criteriilor orientate
obiect. Din punct de vedere al performanţei Hibernate nu poate ţine piept la driverele de tip 1,
2 şi 4 care obţin rezultatele în mediu nativ.
JDBC (Java Data Base Connectivity) API este standardul de industrie pentru
conectivitate între limbajul de programare Java şi o mare varietate de baze de date
(relaţionale, tabelare, fişiere, etc.). JDBC poate folosi orice tip de drivere (1-4). Cel mai mare
avantaj este oferit de folosirea unui driver de tipul 4 care oferă un nivel de performanţă
deosebit de bun şi nu este nevoie de software suplimentar. Aceste drivere pot fi downloadate
şi întreţinute dinamic. JDBC oferă o arie foarte largă de acces asupra obiectelor bazei
permiţând astfel o grad foarte mare de libertate în privinţa operaţiilor. Driverele JDBC sunt
free şi sunt oferite de cele mai multe ori de baza de date. Interogările se realizează prin SQL
dinamic.

F. SGBD

ORACLE10gXE este o variantă free a consacratului sistem de gestiune a bazelor de


date care oferă o mare parte din facilităţile variantei comerciale impunând o serie de restricţii
cum ar fi: încărcare RAM de maxim 1GB şi dimensiune maxima pentru spaţiu de tabel de
4GB. Din punctul de vedere a configurării este relativ simplu de folosit (arta constă în a
optimiza) şi pune la dispoziţie numeroase tool-uri de administrare. Varianta Xpress vine
integrată cu o interfaţă WEB de administrare. Sistemul se pretează la aplicaţii care depind de
un volum foarte mare de date. În cazul de faţă el reprezintă un adevărat heavyweight pentru
aplicaţie.

MySQL Community Server 5 este poate cel mai consacrat sistem open-source de
gestiune a bazelor de date. Nu impune nici un fel de restricţii fizice asupra bazei sau asupra
utilizării acesteia şi vine cu driver nativ de JDBC. Documentaţia este vastă iar forumul intern
este foarte bine întreţinut.

G. Medii de dezvoltare

NetBeans este un mediu open-source dezvoltat de SUN. Oferă o varietate largă de


plug-in-uri pentru majoritatea tehnologiilor din familia J2EE şi nu numai. Principalul avantaj
este ca oferă interfeţe developer friendly pentru generat bucăţi întregi de aplicaţie. Astfel,
devine un mediu puternic, uşor de folosit si rapid de învăţat. Din punct de vedere al
performantei este mai lent decât Eclipse si necesita putere mai mare de calcul însoţită de un
consum ridicat de resurse. Oferă posibilităţi de importare si integrare cu proiecte Eclipse.

Eclipse este un mediu de dezvoltare open-source bazat pe o arhitectură micro-kernel.


A fost iniţial dezvoltat de IBM şi apoi donat comunităţii open-source. Este foarte bine
întreţinut, pune la dispoziţie cea mai mare varietate de plug-inuri şi este foarte rapid. Nu în
ultimul rând este cel mai popular mediu de dezvoltare Java.
H. Interfaţă

NetBeans Visual WEB Application este un tip de proiect din mediu de dezvoltare
NetBeans bazat pe frameworkul JSF (Java Server Faces) care pune la dispoziţie un editor
vizual pentru interfeţe împreună cu un generator complex de cod in back-end. Interfeţele sunt
generate Ajax-enabled deci oferă o soluţie simpla si eficienta de a dezvolta GUIuri complexe.
Aceasta soluţie pentru interfaţă, oferă si posibilitatea de a folosi puterea de dezvoltare a
platformei NetBeans.

Spring este cel mai consacrat şi complet framework bazat pe tehnologii Java
Enterprise. Frameworkul oferă un container uşor de utilizat, un strat de abstractizare pentru
managementul de tranzacţii, un strat de abstractizare pentru conexiuni JDBC şi un framework
flexibil MVC pentru aplicaţii WEB.

Struts este un framework de aplicaţii J2EE dezvoltat şi întreţinut de Apache Software


Foundation care are la bază trei layere. Unul de pentru logistică buisness (Spring, Xwork),
unul pentru acces la date (Cayenne, EJB, Hibernate, JDBC), şi un layer de prezentare
(JasperReports, Velocity, XSLT).

I. Engine de orchestrare

Active VOS este un engine de orchestrare comercial oferit de compania Active


Endpoints. Oferă o gamă largă de facilităţi, documentaţie bună, un forum foarte bine întreţinut
şi de un mediu vizual propriu pentru creare şi utilizare de procese în contextul engine-ului de
deployment. Suportă Tomcat, JBoss.

Active BPEL este varianta open-source în materie de engine de orchestrare oferit de


compania Active Endpoints, este deployabil numai pe Tomcat, vine cu un mediu de
dezvoltare implementat peste platforma Eclipse şi deţine o interfaţă WEB pentru
administrarea modulului în contextul serverului pe care rulează.

JBoss JBPM-BPEL face parte din suita de aplicaţie JBoss şi reprezintă o varianta
open-source în materie de engine de orchestrare. De la versiunea 2.0 suportă BPEL 2.0 şi
poate fi utilizate alături de un plug-in Eclipse pentru dezvoltare de procese. Deploymentul
este bazat pe scripturi ANT.
II. Arhitectura sistemului
În acest capitol va fi detaliat modelul conceptual al sistemului, se vor prezenta două
propuneri de realizare după care se va detalia o variantă finală.
Fiecare propunere este însoţită de o diagramă de implementare urmând ca pentru
propunerea finală să fie detaliate şi tehnologiile prin care se poate atinge funcţionalitatea
sistemului.

1. Propunerea 1
Prima propunere este bazată pe o arhitectură three-tier J2EE.

Figură II-1 Arhitectura three-tier

Aplicaţia este împărţită logic în trei layere. Layerul de prezentare care constituie
interfaţa cu utilizatorul poate fi uşor separat de restul componentelor după cum urmează.
Componentă Tehnologie
Securitate JAAS
Managementul rolurilor şi userilor Apache Tomcat Role mangement
Content management system. Custom
Interfaţă NetBeans Visual WEB Application (JSF)
Tabel II-1 Layerul de Prezentare – Propunerea 1

Layerul de aplicaţie va conţine componente ce pot fi dezvoltate ca librării de clase şi


folosite cu scopul de a realiza funcţionalităţiile sistemului. Fiecare componentă rezolvă cate o
problemă ridicată folosind tehnologii existente pe piaţă după cum urmează:
Componentă Tehnologie
Management de formulare Custom
Statistică Apache Commons-Math
Generare de Rapoarte iReport bazat pe JasperReports
Generare de Grafice Google Chart API
Tabel II-2 Layerul de Aplicaţie – Propunerea 1
Layerul de date conţine o interfaţă pentru SGBD şi serverul de date in sine.
Componentă Tehnologie
Persistenţă Hibernate (JDBC based)
SGBD MySQL
Tabel II-3 Layerul de Date – Propunerea 1

Arhitectura aplicaţiei în contextul prezentat mai sus este reprezentată grafic în


următoarea diagramă:

Figură II-2 Diagramă structurală – Propunerea 1


2. Propunerea 2
Plecând de la ideea că aplicaţia va fi extinsă şi integrată într-un sistem mai larg putem
propune o abordare orientată pe servicii pentru arhitectura aplicaţiei. Această extindere se
manifestă prin transformarea layerului de aplicaţie din librarii de clase în servicii WEB ce pot
fi refolosite în manieră distribuită.

Următoare diagramă ilustrează stratificarea SOA:

Figură II-3 Arhitectura SOA


Elementul cheie în acest tip de arhitectură este adăugarea unui layer suplimentar de
orchestrare a serviciilor. Funcţionalităţiile se rezolvă prin intermediul noului layer.

Figură II-4 Orchestrare vs. Sincronizare

Aplicaţia este împărţită logic în patru layere. Layerul de prezentare care constituie
interfaţa cu utilizatorul poate fi uşor separat de restul componentelor după cum urmează.
Componentă Tehnologie
Securitate LDAP
Managementul rolurilor şi userilor JBoss user management
Content management system. Custom
Interfaţă Spring
Tabel II-4 Layerul de Prezentare – Propunerea 2

Layerul de orchestrare are la bază un engine ce implementează standardul BPEL.


Componentă Tehnologie
Service Orchestrator Active VOS
Tabel II-5 Layerul de Orchestrare – Propunerea 2

Layerul de servicii va conţine componente independente expuse ca servicii. Fiecare


componentă rezolvă cate o problemă ridicată folosind tehnologii existente pe piaţă după cum
urmează:
Componentă Tehnologie
Management de formulare Custom
Statistică Apache Commons-Math
Generare de Rapoarte iReport bazat pe JasperReports
Generare de Grafice Google Chart API
Tabel II-6 Layerul de Servicii – Propunerea 2

Layerul de date conţine o interfaţă pentru SGBD şi serverul de date in sine.


Componentă Tehnologie
Persistenţă Hibernate (JDBC based)
SGBD Oracle
Tabel II-7 Layerul de Date – Propunerea 2
Arhitectura aplicaţiei în contextul prezentat mai sus este reprezentată grafic în
următoarea diagramă:

Figură II-5 Diagramă structurală – Propunerea 2


3. Propunerea finală
Analizând cele două propuneri prezentate mai sus, dorim să prezentăm o comparaţie
între cele două variante:
Criteriu Arhitectura three-tier Arhitectură SOA
Întreţinere simplu complex
Resurse consum redus consum ridicat
Extensibilitate mediu mare
Integrare mediu mare
Dezvoltare simplu complex
Tabel II-8 Comparaţie Arhitecturi

Ca şi concluzie am dori să propunem varianta three-tier pe care o detaliem în cele ce


urmează.

A. Perspectiva structurală
În această secţiune dorim să descriem arhitectura sistemului din punct de vedere
structural detaliind în diagramele ce urmează poziţia subsistemelor în aplicaţie şi
interacţiunile existente. De asemenea vrem sa descriem şi un lanţ de dependenţe care până în
momentul de faţă este uşor de intuit.

Prima diagramă pune în evidenţă componentele şi legăturile între ele:

Figură II-6 Diagrama de implementare a componentelor


Următoarea diagramă ilustrează aspectul structural împărţit pe layere:

Figură II-7 Diagrama structurală – Perspectiva pe layere


B. Perspectiva logică
Din perspectivă logică dorim se exemplificăm fluxul de activităţi în cazul a două
scenarii de utilizare a aplicaţiei, fluxul de comunicare şi fluxul de secvenţă. Ultima diagrama
prezentată fiind cea de useCase care tratează sistemul integral.

Prima diagramă reprezintă fluxul de activităţi în cazul completării formularului:

Figură II-8 Diagramă de activităţi – Completare formular


Următoarea diagramă prezintă fluxul activităţilor în cadrul scenariului de editare
template formular:

Figură II-9 Diagramă de activităţi – Editare template de formular


Următoarea diagramă tratează fluxul de secvenţă în situaţia aceluiaşi caz de utilizare.

Figură II-10 Diagramă de secvenţă – Editare formular


Următoare diagramă ilustrează fluxul de date în cazul generării unui raport:

Figură II-11 Diagrama de comunicare – Afişare raport


În ultima parte a acestei secţiuni dorim sa introducem diagrama tuturor usecase-urilor
care are menirea de a identifica scenarii comune şi a permite modularizarea interfeţei:

Figură II-12 Diagrama UseCase


C. Perspectiva fizică
Ultima diagramă a acestui document prezintă tehnologiile folosite în contextul
perspectivei de deployment al aplicaţiei:

Figură II-13 Diagrama deployment


Referinţe

[1] JRI
¾ http://stats.math.uni-augsburg.de/JRI/

[2] Apache Commons Math


¾ http://commons.apache.org/math/
¾ http://commons.apache.org/math/userguide/index.html
¾ http://commons.apache.org/math/apidocs/index.html

[3] Jasper Reports


¾ http://www.jasperforge.org/jaspersoft/opensource/business_intelligence/jasperreports/
¾ http://www.jasperforge.org/jaspersoft/opensource/business_intelligence/jasperreports/doc
umentation.html
¾ http://www.jaspersoft.com/nw_events1.html
¾ http://jasperforge.org/sf/projects/jasperreports

[4] Pentaho
¾ http://www.pentaho.com/products/reporting/

[5] iReport
¾ http://jasperforge.org/jaspersoft/opensource/business_intelligence/ireport/
¾ http://jasperforge.org/jaspersoft/opensource/business_intelligence/ireport/page.php?id=5
¾ http://jasperforge.org/sf/wiki/do/viewPage/projects.ireport/wiki/IReportManualV1.2.1
¾ http://jasperforge.org/jaspersoft/opensource/business_intelligence/ireport/page.php?name
=ireport-nb-getting-started
¾ http://jasperforge.org/jaspersoft/opensource/business_intelligence/ireport/page.php?name
=iReportNB

[6] Google Chart API


¾ http://code.google.com/apis/chart/
¾ http://techtracer.com/2007/12/17/the-power-of-google-chart-api/
¾ http://infosthetics.com/archives/2007/12/google_chart_api.html

[7] JFreeChart
¾ http://www.jfree.org/jfreechart/
¾ http://www.jfree.org/jfreechart/samples.html
¾ http://www.jfree.org/jfreechart/devguide.html

[8] Apache Tomcat


¾ http://tomcat.apache.org/
¾ http://wiki.apache.org/tomcat/
[9] JBoss Application Platform
¾ http://www.jboss.com/products/platforms/application

[10] GlassFish
¾ https://glassfish.dev.java.net/
¾ https://glassfish.dev.java.net/public/users.html

[11] Hibernate
¾ http://www.hibernate.org/
¾ http://www.hibernate.org/5.html
¾ http://www.hibernate.org/6.html

[12] JDBC
¾ http://java.sun.com/products/jdbc/overview.html
¾ http://java.sun.com/j2se/1.4.2/docs/guide/jdbc/index.html
¾ http://java.sun.com/products/jdbc/learning/tutorial/index.html

[13] Oracle
¾ http://www.oracle.com/technology/products/database/xe/index.html

[14] MySQL
¾ http://www.mysql.com/
¾ http://dev.mysql.com/usingmysql/java/
¾ http://dev.mysql.com/downloads/mysql/5.0.html

[15] NetBeans
¾ http://www.netbeans.org/
¾ http://www.netbeans.org/community/releases/61/
¾ http://wiki.netbeans.org/
¾ http://www.netbeans.org/kb/index.html

[16] Eclipse
¾ http://www.eclipse.org/
¾ http://www.eclipse.org/documentation/
¾ http://www.eclipse.org/resources/?category=Getting%20Started
¾ http://www.eclipse.org/downloads/

[17] NetBeans Java Visual WEB Application


¾ http://www.netbeans.org/features/web/web-app.html
¾ http://www.netbeans.org/kb/trails/web.html
¾ http://www.netbeans.org/kb/60/web/intro.html

[18] Spring
¾ http://www.springframework.org/
¾ http://www.springframework.org/documentation
¾ http://opensource.atlassian.com/confluence/spring/dashboard.action
[19] Struts
¾ http://struts.apache.org/

[20] Active VOS


¾ http://www.activevos.com/
¾ http://www.activevos.com/products-quickintro.php

[21] Active BPEL


¾ http://www.activevos.com/community-open-source.php

[22] JBoss JBPM-BPEL


¾ http://www.jboss.org/jbossjbpm/
¾ http://www.jboss.org/jbossjbpm/bpel/
¾ http://docs.jboss.com/jbpm/bpel/v1.1/userguide/

[23] Magic Draw UML


¾ http://www.magicdraw.com/

[24] Enterprise Java with UML, CTArlington, Wiley Computer Publishing.


[25] Applying UML and Patterns, an introduction to object-oriented Alaysis and
Design and the unified Process, 2nd ed., Larman C., Prentice Hall.
[26] The Unified Modeling Language Reference Manual, Rumbaugh J., Jacobson I.,
Booch G., Addison Wesley.
[27] Documenting Software Arhitectures, Clements P., Bachmann F., Bass L.,
Garlan D., Ivers J., Little R., Nord R., Stafford J., 2nd ed. Addison Wesley.
[28] Building Java Enterprise Applications vol. I Arhitecture, McLaughlin B.,
O’Reilly.

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