02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method...
Transcript of 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method...
![Page 1: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/1.jpg)
02291: System IntegrationWeek 10
Hubert [email protected]
DTU ComputeTechnical University of Denmark
Spring 2018
![Page 2: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/2.jpg)
Last Week
I Principles of good design: layered architectureI Software Development ProcessesI Introduction to Examination Project
![Page 3: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/3.jpg)
Contents
Software Development Process
Agile Modeling
Model Driven Architecture
More UML Diagrams
![Page 4: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/4.jpg)
Resource Triangle
Plan Driven
D I TA
Time
Features
Release date
Agile
Database / Infrastructure Layer
Presentation Layer
Application Layer
Domain Layer
UserStory
UserStory
UserStory
![Page 5: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/5.jpg)
eXtreme Programming (XP)I Kent Beck 1999I 12 Practices
Kent Beck, Extreme Programming 1st ed.
![Page 6: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/6.jpg)
Scrum
Working incrementof the software
Sprint Backlog SprintProduct Backlog
30 days
24 h
file:///Users/huba/Desktop/Scrum_process.svg
1 of 1 /18.3.13 24:16
Wikipedia
I Robert Martin (Uncle Bob) about ”The Land that ScrumForgot”http://www.youtube.com/watch?v=hG4LH6P8Syk→ History about agile methods, the agile manifesto, and
Scrum and its relationshop to XP
![Page 7: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/7.jpg)
Lean Software Development
I Lean Production:I Value for the customerI Reduce the amount of waste in the production processI Generate flow
I Waste: resources used which do not produce value for thecustomer
I time needed to fix bugsI time to change the system because it does not fit the
customers requirementsI time waiting for approvalI . . .
![Page 8: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/8.jpg)
Generating flow using Pull and Kanban
WIP = Work in Progress Limit
1324
A T IWork Item DoneDQueue WIP Queue QueueQueue WIP WIP WIP
8
7
9
10
5
6
BlahComposite
Leaf Assembly4 2 3
3 3 3 3
![Page 9: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/9.jpg)
Flow through Pull with Kanban
I Process controlling: local rulesI Load balancing: Kanban cards and Work in Progress
(WIP) limitsI Integration in other processes
Figure from David Anderson www.agilemanagement.net
![Page 10: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/10.jpg)
Online Kanban Tool: Trello
I www.trello.com: Electronic Kanban board useful foryour project
I Kanban board the exam project example https://trello.com/b/CqzwTiRT/02291-example-lean
I Another Example https://trello.com/b/4wddd1zf/kanban-workflow
![Page 11: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/11.jpg)
Contents
Software Development Process
Agile Modeling
Model Driven Architecture
More UML Diagrams
![Page 12: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/12.jpg)
Agile Modelling
I Traditional modelling: Requirements model, design model→ waterfall
I What is the role of modelling in agile softwaredevelopment?
I XP and documentsI XP and modelling
→ Agile modelling
![Page 13: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/13.jpg)
Agile Modelling
I Agile Modelling: values, principles, and practicesI References
I http://www.agilemodeling.com (Scott Ambler)I ”Agile Modelling” Scott Ambler, Wiley 2002
![Page 14: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/14.jpg)
Agile Modelling Values
I CommunicationI SimplicityI FeedbackI CourageI Humility
http://www.agilemodeling.com/values.htm
![Page 15: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/15.jpg)
Agile Modelling Principles
I Core PrinciplesI Software is your primary goalI Enabling the next effort is your secondary goalI Travel lightI Incremental changeI Model with a purposeI Multiple models
. . .
![Page 16: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/16.jpg)
Practices
I Core PracticesI Supplementary PracticesI Real Good Ideas
![Page 17: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/17.jpg)
Core Practices
I Active Stakeholder ParticipationI Collective OwnershipI Model in Small IncrementsI Create Several Models in ParallelI Iterate to Another ArtifactI Display Models PubliclyI Model With OthersI Prove it With CodeI Use the Simplest ToolsI . . .
List of practices:http://www.agilemodeling.com/practices.htm
![Page 18: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/18.jpg)
Disciplined Agile Development (DAD)I Hybrid Agile development method evolved from
I Agile ModellingI Agile Unified Process
I Based on
SAFe: Scaled Agile Framework, Outside In Dev.: Focus onstakeholder requirements, Evo: Evolutionary Development
http://disciplinedagileconsortium.org
![Page 19: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/19.jpg)
Iterative Processes: E.g. Rational Unified Process(1996)
![Page 20: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/20.jpg)
DAD
Focus on complete lifecycle
A*High*Level*Lifecycle*
© Disciplined Agile Consortium 4
http://disciplinedagileconsortium.org
![Page 21: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/21.jpg)
DAD
DAD + Lean
12
Options
Business Value
Expedite
Fixed Delivery Date
Intangible
Work items are pulled when
capacity is available to address them
Replenishment modeling session
Operate and
support solution in production
Enhancement Requests and Defect Reports
New features
Initial Require-ments
Initial Architectural Vision
Initial modeling,
planning, and organization
Daily work
Retrospective
Demo
Release solution into production
CoordinationMeeting
Construction Transition
Continuous stream of developmentStakeholder vision
Sufficient functionality
New features
Feedback
Learnings
Strategy
Inception
Production readyDelighted stakeholders
Proven architecture
Identify, prioritize, and select projects
Initial Visionand Funding
Envision the future
Business Roadmap, Technology Roadmap
strategies should enhance the ability of DAD teams
to deliver business value to their stakeholders in
a cost eff ec ve and mely manner. Unfortunately
many exis ng IT governance strategies are based on a
command-and-control, bureaucra c approach which
o en proves ineff ec ve in prac ce. Chapter 20 of the
DAD book provides a comprehensive discussion of
agile governance [3].
Open and honest monitoring.• Although agile
approaches are based on trust, smart governance
strategies are based on a “trust but verify and then
guide” mindset. An important aspect of appropriate
governance is the monitoring of project teams
through various means. One strategy is for anyone
interested in the current status of a DAD project
team to a end their daily coordina on mee ng
and listen in, a strategy promoted by the Scrum
community. Although it’s a great strategy that we
highly recommend, it unfortunately doesn’t scale very
well because the senior managers responsible for
governance are o en busy people with many eff orts
to govern, not just your team. Hence the need for
more sophis cated strategies such as a “development
F®¦çÙ� 10. T«� DAD L��Ä ½®¥��ù�½�.
intelligence” approach supported via automated
dashboards.
Being enterprise aware has several important implica ons
for the delivery lifecycle. First, to help teams understand
the enterprise context that they operate in we should
explicitly depict major collabora on fl ows with other
parts of the organiza on. Figure 9 shows how to do so by
evolving the governed agile delivery lifecycle of Figure 4.
Note that these fl ows are not necessarily ar fact based,
they may represent other forms of communica on such
as face-to-face discussion.
The second implica on is that one lifecycle does not fi t all. We have worked with several organiza ons, some
as small as thirty IT staff , that had teams that followed
very diff erent lifecycles. For teams that are new to agile
the lifecycle of Figure 9 is a great place to start. But,
because of the agile philosophy of ac vely striving to
learn and improve your approach teams start to evolve
away from the Scrum-based lifecycle. It is common for
them to realize that prac ces such as itera on planning,
itera on modeling, retrospec ves, and demos do not
need to be on the same cadence, that instead they
http://disciplinedagileconsortium.org
![Page 22: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/22.jpg)
Contents
Software Development Process
Agile Modeling
Model Driven Architecture
More UML Diagrams
![Page 23: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/23.jpg)
Traditional Development to MDA
![Page 24: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/24.jpg)
Traditional Development to MDA
![Page 25: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/25.jpg)
Traditional Development to MDA
![Page 26: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/26.jpg)
MDA
I Model Driven Architecture (MDA)→ Derive code from models through transformations
I LiteratureI Anneke Kleppe, Jos Warmer, Wim Bast ”MDA Explained”,
2003, Addison Wesley ProfessionalI MDA Website by OMG (http://www.omg.org/mda/)
![Page 27: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/27.jpg)
Example I: Attributes
Platform Independent Model (PIM):
![Page 28: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/28.jpg)
Example I: Attributes
Platform Specific Model (PSM) for Java:
Transformation PIM → PSMI Introduce getter and setter methods for each attribute
![Page 29: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/29.jpg)
Example II: Associations
PIM:
![Page 30: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/30.jpg)
Example II: Associations
PSM for Java
Transformation PIM → PSMI Introduce an attribute for a navigable association
![Page 31: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/31.jpg)
PIM for Rosa’s Breakfast Service
![Page 32: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/32.jpg)
MDA for Rosa’s Breakfast Service
I Three PSM’sI Relational database modelI Enterprise Java Beans implementationI Web interface
![Page 33: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/33.jpg)
PSM Relational database model
![Page 34: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/34.jpg)
PSM EJB
![Page 35: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/35.jpg)
PSM Web Interface
![Page 36: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/36.jpg)
Communication Bridge EJB relational DB
![Page 37: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/37.jpg)
Principles of MDA: Models
![Page 38: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/38.jpg)
Principles of MDA: Models
![Page 39: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/39.jpg)
Principles of MDA: Models
![Page 40: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/40.jpg)
Principles of MDA: Transformations
![Page 41: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/41.jpg)
Principles of MDA: Transformations
![Page 42: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/42.jpg)
Principles of MDA: Transformations
I Another example: Java Emitter Templates
![Page 43: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/43.jpg)
Transformations
I Standard transformationsI Customised transformations
![Page 44: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/44.jpg)
Example Transformation
Transformation classes to DB schema (Pseudo Code)
if the association A to B is adorned by an association classor the multiplicity at both ends is more-than-one
then create a table representing the association class or theassociationand create foreign keys in both the table representing A andthe table representing B referring this new table
else if the multiplicity at one end is zero-or-onethen create a foreign key in the table representing the class
at that end, referencing the other endelse // the multiplicity of the association is one-to-one
create a foreign key in one of the tables, referencing theother end
endifendif
![Page 45: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/45.jpg)
MDA and Metamodels I
![Page 46: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/46.jpg)
MDA and Metamodels II
Short notation for the previous diagram
![Page 47: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/47.jpg)
MDA and Metamodels III
I UML: Meta Object Facility(MOF)
I EMF: Eclipse ModellingFramework
I 02162 SoftwareEngineering II
![Page 48: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/48.jpg)
The MDA/MDA promise
![Page 49: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/49.jpg)
The MDA/MDA promise
![Page 50: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/50.jpg)
MDA
I BenefitsI Higher productivityI PortabilityI InteroperabilityI Maintenance and Documentation
I IssuesI Modelling is abstraction
I Transformations need to add thingsI Multiple models
I Behavioural models
![Page 51: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/51.jpg)
Contents
Software Development Process
Agile Modeling
Model Driven Architecture
More UML DiagramsObject DiagramsPackage DiagramsDeployment Diagram
![Page 52: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/52.jpg)
Object Diagram Example
Class Diagram Object Diagram
![Page 53: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/53.jpg)
Object Diagram Purpose
I Snapshot of a running systemI objects: Instance of a classI links: instance of an association
I Communication diagram
![Page 54: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/54.jpg)
Update operation of Account
State before executingupdate(n)
a: Account
bal = b
h: History
bal = m
{ n + b > = 0 }
State after executingupdate(n)
h1: History
bal = b
h: History
bal = m
a: Account
bal = b + n
prev
![Page 55: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/55.jpg)
Notation
I Variant 1: an object with name and class
I Variant 2: an anonymous object of a class
I Variant 3: a named object of unknown class
![Page 56: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/56.jpg)
Notation
I Value Specifications
I Slots
I Links to other objects
![Page 57: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/57.jpg)
Package Diagram
I Groups model elements: classes, objects, use cases,packages, . . .
I Structures the model , not the systemI c.f. component diagram
I Define a name spaceI P::C means class C in package P
→ Java packages
![Page 58: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/58.jpg)
Package notation
I Notations for packages
![Page 59: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/59.jpg)
Examples
I Dependencies between packages
![Page 60: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/60.jpg)
Deployment Diagram
Martin Fowler, UML Distilled
![Page 61: 02291: System IntegrationDisciplined Agile Development (DAD) I Hybrid Agile development method evolved from I Agile Modelling I Agile Unified Process I Based on SAFe: Scaled Agile](https://reader033.fdocuments.in/reader033/viewer/2022053023/6053b5bf47fac73f9c012c6a/html5/thumbnails/61.jpg)
Next Week
I Validation of models: Model checkingI Summary of the course