350 likes | 468 Views
Caracteristicile de baza ale aplicatiilor compozite.
E N D
Caracteristicile de baza ale aplicatiilor compozite • Un sistem informatic este format din oameni, probleme si tehnici informatice ce sunt in stransa legatura. Acestea actioneaza impreuna pentru a pune la dispozitie, pentru subiectele tratate, o reprezentare a starilor, bazata pe date istorice, prezente si de perspectiva, precum si legatura dintre aceste date.
Caracteristicile de baza ale aplicatiilor compozite • Sisteme de aplicatii reprezinta realizari software a unor probleme partiale, respectiv procese, care pun in legatura date si functiuni pentru a realiza prelucrarea dorita
Caracteristicile de baza ale aplicatiilor compozite • CA se bazeaza pe framework-uri • Metaframework se construieste pe baza diferitelor framework-uri care sprijina diferitele faze de dezvoltare ale unei aplicatii (modelare, proiectare, implementare, testare, utilizare si intretinere)
Functionalitatile de baza ale framework-urilor CA • Modelare/simulare • Business Activity Monitoring BAM • Derularea proceselor (workflow-uri tehnice) • Colaborare (workflow-uri umane) • Cresterea productivitatii (toos, reusability)
Reguli pentru armonizarea framework-urilor • Folosirea IDE (Integrated Development Environment) • Trebuie stabilit modul in care se manifesta in practica politicile diferitelor framework-uri (governance) • trebuie sa existe un mecanism care asigura corecta evaluare a stadiului proiectului
Componentele unui framework de proiectare pentru CA • Framework de modelare • Modele de arhitectura • Arhitectura de business • Arhitectura de sistem • Arhitecturaaplicatiei • Metamodel • DSL (domain specification language) • Platforma de executie, de baza • Sistemul de operare • Platforma hardware
Componentele unui framework de proiectare pentru CA (2) • Conducerea proiectului • Governance • Abordare • Agile • Cicluri de update • Documentatie • Managementul ciclului de viata • Versionare
Componentele unui framework de proiectare pentru CA (3) • Runtime environment siplatformavirtuala • Runtime environment pentru application framework • Platforme de executie software • Java Virtula Machine (JVM) • Common Language Infrastructure (CLI) • Monitorizare • Tehnologii de integrare • Enterprise Service Bus (ESB) • Cloud Computing • Software as a Service (SaaS)
Componentele unui framework de proiectare pentru CA (4) • Framework de dezvoltare • Framework de implementare, resp. Mediu de dezvoltare • IDE (Integrated Development Environment) • Editoare de model • Unelte de testare • Build&Deployment • Framework pentru aplicatie • Modele de programare • Concepte pentru distributia sistemului (Componente/SOA) • Functionalitati specifice sistemului
Tehnologiile incluse in CA acopera: • Arhitectura IT • Interactiunea cu utilizatorul • Aplicatiile • Managementul IT • Reteaua • Centrul de date (Software as a Service, Infrastructure as a Service) • Securitatea
CA si procesele de afaceri • Initial, procesele de afaceri au fost tratate din perspectiva economica (costuri, termene, cantitati, resurse, etc. ) • Aspectul tehnic vizeaza automatizarea proceselor de afaceri • CA permite realizarea unor sisteme integrate care acopera mai multe procese de afaceri
Componentele mediilor de dezvoltare • IDE (integrated development environment) • Munca in echipa • KM/SCM • Merge tools • Calitate • Code coverage • Code Convention Checker • Analizastatica a codului • Unit test • Productivitate • Editoarespeciale • Server tools (runtime container vizualization)
Componentele mediilor de dezvoltare (2) • Dezvoltarea in echipa • Wiki • Bug-Tracking • Management de proiect • Instante locale, resp. remote ale mediului de dezvoltare • Simularea interfetelor (Mock-up)
Application framework • Sprijina dezvoltarea bazata pe modele MDSD (Model-driven Software Development) • Descriere formala: UML, editoare de proces, generatoare • Workflow-Management System WfMS • Integrarea pe orizontala a sistemelor • Integrarea de servicii Web • Tehnologii GUI
Prezentare aspectelor tehnice ale CA • Arhitecturacomponentelorpermiterealizarealogiciiprocesuale in sistemeheterogene si • Componentele sale se bazeazadoarpenivelultehnic inferior, fiindindependente de restulcomponentelor 1976: DemerersiKron • Programming in the small – functionalitatiindependente • Programming in the large – functionalitatitransversale
Descompunereafunctionala a arhitecturii de sistem a CA Composition • Se refera la arhitectura componentelor distribuite si cuprinde: • Elementele de comanda, in special GUI Composite Controls • Se concetreaza pe logica de proces si comanda • Parti ale logicii de business
Descompunereafunctionala a arhitecturii de sistem a CA (2) Invocation • Cuprindetoateunitatile care tin de realizareatehnica a arhitecturiicompozite • Implementareacomponentelorintr-un format tehnic, utilizabil (deployment package), de ex. Web services • Informatii de configurarepentru runtime container • Implementarile software necesarepentruprotocoalele de comunicatiesiaccesul la foldere
Descompunereafunctionala a arhitecturii de sistem a CA (3) Data and infrastructure • Asigura accesul la bazele de date si integrarea cu sisteme externe, prin intermediul interfetelor
Blocurifunctionale ale arhitecturii softwareNivelurilogiceNivelurifunctionale(arhitectura software) (arhitectura de sistem)
Notiuni asociate CA GUI • Nivel Prezentare - arhitectura software • Compozitie – arhitectura de sistem • Cuprinde toate interactiunile cu utilizatorul • Contine: • Continutul paginilor (Page Content) • Succesiunea paginilir (Page Flow) • Modelul datelor
Notiuni asociate CA (2) Procese • NivelAplicatie- arhitectura software • Compozitie – arhitectura de sistem • Au rol important la nivelulmodelarii. Elereprezintadescriereafunctionalitatilorviitoruluisistem • Descrieriliniare de proces – BPEL (Business Process Execution Language) • Descriereaevenimentelor care declanseazaprocese – Event Processing Engine
Notiuni asociate CA (3) Workflow • Nivel Aplicatie (Domeniu) - arhitectura software • Compozitie, Invocare – arhitectura de sistem • Constituie un ajutor in implementarea proceselor de afaceri specifice. • Detaliaza modelul tranzactiilor • Se pot reprezenta prin diferite diagrame de secventa care descriu actvitati, pres si post conditii.
Notiuni asociate CA (4) Componente • Nivel Domeniu/Infrastructura- arhitectura software • Invocare – arhitectura de sistem • In aplicatii de tip SOA, serviciile sunt componente • O colectie de componente care depind functional una de alta determina un domeniu functional • Fac parte din logica domeniului
Notiuni asociate CA (5) Reguli • Nivel Domeniu - arhitectura software • Invocare – arhitectura de sistem • Parte logica a workflow-urilor si a logicii procesului Date • Nivel Domeniu - arhitectura software • Date si infrastructura – arhitectura de sistem • Modelul datelor
Notiuni asociate CA (5) Grupuri si roluri • Nivel Infrastructura - arhitectura software • Infrastructura – arhitectura de sistem • Tin de managementul identitatii si accesului • Gruparea utilizatorilor pe roluri permite accesul diferentiat la functionalitati
Descrierea Workflow-urilor • BPMN (Business Process Modelling Notation) este un limbajgrafic de definire a workflow-urilor. El oferaposibilitatea de a construi workflow-uriintr-un mediuvizual cu o mare usurintapentru un utilizatorfarapregatiretehnica. • Prezentatprimuldatoritamapariiclarepeceledouanecesitatiprezentate la procesele de business
BPEL (Business Process Execution Language) • BPEL reprezinta un limbaj standard de executiepentruprocesele definite cu BPMN • Permiteasistareadefinirii de workflow-uri la un nivelmultmaidetaliatsimaitehnic, specific pentruutilizatorii IT. • Este unul din celedouastandardedominante in industrie • Problemastandardului e ca un limbaj de orchestrare de procese de business nu de coreografie • Orchestrare – definirecompletasiexecutabilitate pt un peer (nivel workflow) • Coreografie – definirecomplatasiexecutabilitate pt totipeeri (nivel de grupuri de workflow-uri) • Probleme de standard de securitate (part rez in BPEL 2.0)
XPDL (Process Definition Language) • Standard de industriepentruatatdefinireavizuala a workflow-urilor cat sipentrusuportul de executie al lor. Este un standard ce a crescut ca popularite in ultimiianidatoritafaptului ca reprezinta o platforma de asistarepentrucontructiesiimplementare de workflow-uri. • Este unul din primelestandardepropuse, influentand conceptual mareamajoritate a solutiilorulterioare (inclusivcele din aceastaprezentare) • Este doar un standard nu o platformacompleta cu medii de testaresiimplementaresi cu functionalitatiavansate de acceleraresiusurare a procesului de dezvoltare al aplicatiilor de tip workflow
XAML si Silverlight • XAML esteuna din alternativelepropuse de Microsoft pentruproblema de definire de formaturipentrulucrul cu workflowuri • Mareleavantaj al XAML fata de celelaltestandardurieste ca, prinutilizareaunui motor de interpretare de elemente de graficaincluse in XAML, workflow-ulpoatefivizionat in orice browser. Acestmotiv face ca XAML sa fie un format foartedezirabilpentrumedii in care portabilitateaestefoarteimportanta. • Motorul de interpretareeste Microsoft Silverlight.