IN-MMO F2: 6/2 UML Oppførselsmodellering, Prosess, RUP og RUP/J2EE, Interoperabilitet og Arkitektur (MDA),COMET UML Oppførselsmodellering Øving + Oblig 1 UML Notasjon og prosess RUP - (Rational) Unified Process - Phases and workflows RUP for J2EE J2EE Developer roadmap OMG MDA Driven Architecture - overview COMET overview Arne J. Berre 11 Two parts of a Harmonized Whole Unified ing Language Process Convergence Today Unification leads to standards Convergence in the future Process frameworks through consensus RUP(Rational Unified Process), OOram/WE, MAGMA, ObjectOry, Open, Perspective, Catalysis, Arne J. Berre KobrA, COMET 22 1
Utvikling/Trender for Utviklingsprosesser 1960-1979 1980-1999 2000-2019? Fossefallsmodell Funksjonell design -Skalerings-økonomi Egne verktøy 100% skredder Ad hoc prosess Alltid: over tid/kost Prosess forbedring Innkapslings-basert -Skalerings-økonomi Uavhengige verktøy 30% komp 70% eget Gjentakbare prosess Uvisst: til tid / kost Iterativ utvikling Komponent-basert ROI Integrerte verktøy 70% komp 30% eget Admin/Målt prosess -Of: til tid og kost Source: Software Project Management, A Unified Framework, Walker Royce, Addison-Welsey, 1998 Arne J. Berre 33 10 viktige prinsipper for moderne systemutvikling Arkitektur-orientert tilnærming Iterativ livs-syklus prosess Komponentbasert utvikling Endrings-orientert miljø Round-trip engineering l-basert notasjon Objektiv kvalitets-kontroll Økende detaljeringsgrad Konfigurerbar prosess Arne J. Berre 44 2
The Unified Software Development Process (UML book 3) I. Jacobson, G. Booch, J. Rumbaugh Addison Wesley, 1999 ISBN 0-201-57169-2, 463 pages The Rational Unified Process P. Kruchten Addison Wesley, 1998 first edition, 2001, second edition ISBN 0-201-60459-0, 255 pages Arne J. Berre 55 The Unified Software Development Process A Use-Case-Driven Process An Architecture-Centric Process An Iterative and Incremental Process Arne J. Berre 66 3
Unified Process Framework Process Components Process Requirements Workflows Analysis Business ing Requirements Architecture Level Analysis Design Design ation Class Level Test ation Deployment Test Supporting Workflows Supporting Components Management Project Management Process Configuration Conf. Mngmt Environment Inception preliminary iteration(s) Phases #1 Phases Elaboration Construction Transition #2 #n #n+1 Iterations #n+2 #m #m+1 Arne J. Berre 77 Faser i livssyklusen Inception (Begynnelse/unnfangelse) Elaboration (Utdyping av planer, beskrivelse av egenskaper og basis arkitektur) Construction (Bygging av produktet) Transition (Overgang til brukere) Arne J. Berre 88 4
SA System Analyst Roles Test Engineer TE UCS Use-Case Spec ifier System Integrator SI UID User-Interface Designer Integration Tester IT A Architect System Tester ST UCE Use-Case Engineer CE Component Engineer Arne J. Berre 99 Requirements Core development workflows Analysis.Design ation Test Arne J. Berre 10 10 5
SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 11 11 Virksomhets (Business) lering Resultater: Felles terminology/vokabular, Virksomhets aktører og virksomhets bruks-tilfelle, Virksomhets Objekt modell (arbeidere/entiteter) Roller: Virksomhets analytiker, designer, kritiker Arne J. Berre 12 12 6
Kravfrembringing Resultater: Visjon, bruks-tilfeller, term-bok, kravegenskaper, software arkitektur dokument, brukergrensesnitt-prototyp Roller:System analytiker, bruks-tilfelle forfatter, arkitekt, brukergrensesnitt-bygger, krav-kritiker Aktiviteter: Finn aktører og brukstilfeller, prioriter brukstilfeller, detaljer brukstilfelle, prototyp brukergrensesnitt, strukturer brukstilfelle modell Arne J. Berre 13 13 SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 14 14 7
(Krav) Analyse Resultater: Analyse modell, Analyse klasser, brukstilfelle realisering-analyse, analyse-pakker, arkitekturbeskrivelse (view på analyse modell) Roller: Arkitekt, brukstilfelle-engineer, komponentbygger Aktiviteter: Arkitektur analyse, v brukstilfelle, analyse av klasse, analyse av pakke Arne J. Berre 15 15 SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 16 16 8
Design Resultater: Design modell, Design klasser, Software arkitektur dokument (m/design-view + deployment-view) bruks-tilfelle realisering, pakker/sub-systemer, data modell Roller: Arkitekt, Brukstilfelle-ansvarlig, Komponentbygger Aktiviteter: Arkitektur design, v brukstilfeller, v klasser, v subsystemer Arne J. Berre 17 17 SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 18 18 9
asjon Resultater: asjons modell, software arkitektur dokument (implementasjons-modell), integrasjons/bygge-plan, komponenter, implementerte sub-systemer, realiserte grensesnitt Roller: Arkitekt, system integrator, komponent-bygger Aktiviteter: Arkitektur implementasjon, system integrasjon, implementer subsystem, implementer klasse, utfør enhets- Arne J. Berre 19 19 SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 20 20 10
Test Resultater: Test modell, -tilfeller, -prosedyrer, -skripts, plan, last-modell, subsystemer - komponenter - pakker - klasser, feil-rapporter Roller: Test-designer, system-er, integrasjonser, last/ytelses-er, komponent-bygger Aktiviteter: Planlegg, design, implementer, utfør integrasjons-, utfør system-, evaluer Arne J. Berre 21 21 SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 22 22 11
Igangsettelse (Deployment) Resultater: Innføringsplaner, sluttbruker dokumentasjon, release dokumentasjon, installasjonsprodukter, opplæringsmateriale Roller: Innføringsansvarlig, Teknisk forfatter, ør, kurs-utvikler Arne J. Berre 23 23 Konfigurasjons Administrasjon Resultater: Konfigurasjons-administrasjons-plan, endrings-forespørsler Roller: Prosjekt-leder, Konfigurasjons-ansvarlig, andre i prosjektet Arne J. Berre 24 24 12
ProsjektAdministrasjon Resultater: Forretningsmessig begrunnelse, Systemutviklings-plan, Iterasjons-plan, Iterasjonsvurdering, Status-vurdering, Målings-plan, risiko-liste, prosjekt-plan Roller: Prosjekt-leder Arne J. Berre 25 25 Omgivelse Resultater: Retningslinjer for Virksomhetsmodellering, Utvikling/Programmering/Test, Brukstilfellemodellering, Design, dokumentasjon, brukergrensesnitt Roller: Virksomhetsanalytiker, prosess-ansvarlig, system analytiker, system integrator, system administrator, verktøy-ansvarlig, brukergrensesnittansvarlig, teknisk forfatter, arkitekt Arne J. Berre 26 26 13
Faser i livssyklusen Inception (Begynnelse/unnfangelse) (5-8 %) Elaboration (Utdyping av planer, beskrivelse av egenskaper og basis arkitektur) (20-25 %) Construction (Bygging av produktet) (60-65%) Transition (Overgang til brukere) (8-10 %) Arne J. Berre 27 27 Inception Goal: Establish the business case - launches the project Execute core workflow activities to: Define the system scope, Outline the candidate architecture Results: feature list, first business/domain model, first use-case /design models, first candidate architecture, possibly a proof-of-concept prototype, initial risk-list, use-case ranking list, project plan, first draft of business case (context and success criteria) Arne J. Berre 28 28 14
SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 29 29 Elaboration Goal: Make the Architectural baseline Execute core workflow activities to: Capture and refine most of the requirements, develop the architectural baseline Results: complete business/domain model, new versions of use-case (80%) (80%) design (10%), deployment (10%) and implentation (10%) models, executable architecture, arch description, updated risk list, plan for const/tran, preliminary user manual (optional), completed business case Arne J. Berre 30 30 15
SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 31 31 Construction Goal: to get initial operational capability Execute core workflow activities to: Grow the system Results: plan for transition, executable software, all artifacts/models, maintained architecture description, prel. User manual, business case Arne J. Berre 32 32 16
SA Find actors and s Structure use case model Plan and design Evaluate TE UCS Detail a Integrate system SI UID user interface Perform integration tes IT A UCE Prioritise s Architectural Design Impl Perf.sys. ST CE class/ss -u. Arne J. Berre 33 33 Transition Goal: to complete the product release Activities to: meet requirements to the satisfaction of the stakeholders, handle all issues needed for operation in the user environment, including correction of errors reported by beta-users/acceptance ers Results: executable software, legal documents, comleted artifacts/models, completed architecture description, Final. User manual, training and support material Arne J. Berre 34 34 17
RUP/J2EE book Requirements J2EE Developer Roadmap Define the system Refine the system definition Analysis.Design Define initial Architecture Analyze behaviour Refine the Architecture Detail the design ation Structure the implementation model Design elements Arne J. Berre 35 35 J2EE Roadmap Systems realized by refined into (ref) defined in Use-case realized by ref Design ref ref Implemen ation Deployment User Experience Data Arne J. Berre 36 36 18
OMG -Driven Architecture (MDA) MDA book www.omg.org/mda Arne J. Berre 37 37 Tool-chain for -based development ing&code-generation Documents UI logic Programming & Test Environment Deployed Infrastructure Interaction/Pres services UML models Code generation UML profiles - using Rose, COOL:Jex,... XMI Application logic Shared Business logic Data base schema Repository - using Java, C++, VB,.. Application and process services Shared Business Services Data services & Legacy systems - using J2EE, Corba, COM, Real-time,... Arne J. Berre 38 38 19
Sal es & Pl anni ng Vessel Schedul e Work Order Exec. M oni t or i ng Sei smi c Acqui si t i on Vessel Oper at i on Pr od. st at i stics Downt i me st at. NC R Op. Mgr Repor t i ng & M oni t or i ng Supp or t Engi neer i ng Registrator Secretariat application ClubRegister Obt ai ncl ubinf oanddeliver to regi steri ngprocessor Cl ubregi stration Information Existi ngclubinfo Edi t and aceptexistingclubinfo AskClubRegi stertocheck if Cl ubalreadyexists ExistingClubInfo Asktoeditandconfirmexisting ClubInfo Askto registerclub [Cl ub Exists] CheckifCl ubexists [Club do notexi sts] AddClub : Registr ator : Secreta riat : ClubRe gister Applicatio n registe rclu b clubexists registe rclu b : Registr ator : Secreta riat : ClubRe gister Applicatio n registe rclu b clubexists registe rclu b A rnor e r en k ul ty pe Dette er et forsøk på å fylle denne k omm enten m ed text 0,1 Context Business model Goal Context statement Vision for change Risk Business Resource Business Process & Role Busines domain to system domain mapping Work element Use case refinement and RA 0,1 world Business model Scoping statement s Context statement Vision for change Risk Architecture model Component structure and internal design Interface and interaction specification Platform specific model UMT Config model Component implementation model Goal Business Resource Business Process & Role -> WARM Work Element Analysis Requirements model Use case model System Boundary RA Analysis * Use case Scenario PIM Data Types User Service Tier User Resource Service Tier Business Service Tier Resource Service Tier Real world Concepts& Processes Arne J. Berre Deployment 39 39 UserService Domain Business Service Domain User Interface Tier RA RA Actors WorkflowServiceDomain PresentationTier UserDialog Tier LA COMET LS Artifacts Component Infrastructure & Workflow Engine (Microworkflow) Legacy Business Domain System Domain Context statement Business (What and why) Goal Business process & Role model (warm) Business Resource model System Boundary Requirements (What) Use case scenario s Other requirements Arnor er en kul type Dette er et forsøk på å fyll e d enne k om men ten med text Vision for change Risk BCE Subsystem1 Su bs yste m 2 Iterative & Incremental Subsystem4 Subsystem3 Component structure & internal design Interface and interaction specification Problem domain Platform Specific model (HowSolution) UMT config model Deployment Applications Business components General components OS HW Arne J. Berre Solution domain Component 40 ation 40 20
Activity organizationby work type Phases - organisation along time Process activities Inception Elaboration Construction Business modelling Requirements modelling Architecture ling PSM modelling Test Supporting activities Project management Work product management Iterations: preliminary iteration(s) #1 #2 #n Transition #n+1 #n+2 #m #m+1 Review milestones: Concept Review Iteration Launch Technical Audit Product Commit Demonstrator Iteration Launch Demonstrator Iteration Launch Demo / Delivery Beta Test Launch Acceptance Meeting Arne J. Berre 41 41 Sekvensdiagram - Buy Black Coffee : CashBox : FrontPanel : M ixe r : CupDispenser : CoffeeDispenser : Wat e r Dis p e ns e r : Custome r coin(s) enable select black coffee dispense cup, coffee, water dispense dispense coffe e served dispense disable Arne J. Berre 42 42 21