SlideShare a Scribd company logo
 
 

MK
Half‐day Tutorial 
6/3/2013 1:00 PM 
 
 
 
 
 
 
 

"Agile Model-Driven Development"
 
 
 

Presented by:
Scott Ambler
Scott Ambler + Associates
 
 
 
 
 
 
 
 
 

Brought to you by: 
 

 
 
340 Corporate Way, Suite 300, Orange Park, FL 32073 
888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Scott Ambler
Scott W. Ambler + Associates

Scott Ambler works with organizations worldwide to help them improve their software
processes. Scott is the founder of the Agile Modeling (AM), Agile Data (AD), Disciplined Agile
Delivery (DAD), and Enterprise Unified Process (EUP) methodologies and creator of the Agile
Scaling Model (ASM). He is the coauthor of twenty-one books, including Refactoring Databases,
Agile Modeling, Agile Database Techniques, The Object Primer 3rd Edition, The Enterprise
Unified Process, and Disciplined Agile Delivery. Scott is a senior contributing editor with Dr.
Dobb’s Journal. Visit his home page ScottAmbler.com and his Agility@Scale blog.
 
02/05/2013

Agile Model Driven Development:
Best Practices for Scaling Agile
Scott W. Ambler
Senior Consulting Partner
scott [at] scottambler.com
@scottwambler

Feel Free to
Ask Questions
at Any Time

© Scott Ambler + Associates

Twitter: @scottwambler

2

1
02/05/2013

Discussion: Defining Done
•

What are you hoping to get from this tutorial?

© Scott Ambler + Associates

3

Agenda
•
•
•
•
•
•
•
•
•

A specification parable
Thinking outside of the modeling box
Agile Modeling
Agile Model Driven Development (AMDD)
Continuous modeling and documentation
Project initiation strategies
Construction strategies
AMDD and scaling agile
Parting thoughts

© Scott Ambler + Associates

Twitter: @scottwambler

4

2
02/05/2013

A specification parable
Two years ago I asked for a toy like
the one my friends had. I didn’t know
what it was called so I described it to
Santa, hoping that he would know
what I was talking about.

My description:
It is a toy for kids. You get on it and you
bounce up and down. It is lots of fun.
© Scott Ambler + Associates

5

This is what I found under the tree.

It’s sort of fun, but it’s not what I wanted.

© Scott Ambler + Associates

Twitter: @scottwambler

6

3
02/05/2013

Last year I asked Santa Claus for a sports car. It should be bright red
with some white detailing. It should have big racing tires so that it can
hug the road on sharp turns.

© Scott Ambler + Associates

7

This is what I found under the tree.

© Scott Ambler + Associates

Twitter: @scottwambler

8

4
02/05/2013

This year I really want a
penguin. So in my letter to
Santa Claus this year I am
going to be very clear that I
want a real, live penguin.
Not a toy penguin. Not a
penguin game. Not a
penguin picture. A real, live
penguin. I will even include
this photo of the type of
penguin that I would like with
my letter.
There will be no mistakes…

© Scott Ambler + Associates

9

Exercise: Comparing Specification Strategies
•
•

Organize into teams of 5-8 people
Take a minute to introduce yourselves to one another

•

For 10 minutes, discuss within the team:
• Why didn’t he get the trampoline?
• Why didn’t he get the car he wanted?
• Assume that he gets the penguin that he asked for. How will this
actually work out in practice
• How do these observations relate to what you’ve seen in the workplace
on software development projects?
• What approaches have you seen for eliciting requirements from
stakeholders? What were the advantages and disadvantages in the
long run?

© Scott Ambler + Associates

Twitter: @scottwambler

10

5
02/05/2013

© Scott Ambler + Associates

11

What is a Model?

A model is an abstraction that describes one or more aspects of
a problem or a potential solution addressing a problem

• Commonly one or more diagrams plus any corresponding
documentation
• How the abstraction is captured, if at all, shouldn’t matter
• Sketches should be considered models
• Non-visual artifacts can also be models

© Scott Ambler + Associates

Twitter: @scottwambler

12

6
02/05/2013

A Quick Survey
Please answer from the point of view of the agile team you
are most familiar with:
1. Did the team do any up-front requirements modeling
(or “backlog population”) or have the initial
requirements provided to them?
2. Did the team do any up-front architecture modeling or
have the architecture provided to them?
3. During iteration/sprint planning do they ever create
sketches or identify acceptance criteria to help
identify tasks?
4. During an iteration/sprint, do people ever do any
modeling/sketching to explore or discuss some work
they are performing?

© Scott Ambler + Associates

13

The Survey Results Shared in this Tutorial

•

All surveys were performed in an
open manner

•

The questions as they were
asked, the source data, and a
summary slide deck can be
downloaded free of charge from
Ambysoft.com/surveys/

© Scott Ambler + Associates

Twitter: @scottwambler

14

7
02/05/2013

Comparing Communication Strategies
(4.2, 3.5)
(4.3, 4.1)

How effective are
communication
techniques on actual
agile projects?

(1.3, 1.6)
Rating of -5 (very
ineffective) to +5 (very
effective)

(1.4, 1.5)
(2.1, 0.2)
(1.1, 1.4)

Format: (within team,
with external
stakeholders)

(1.9, 1.9)

(-0.3, 0.2)
Source: Ambysoft Inc.
2008 Agile Principles
and Practices Survey
© Scott Ambler + Associates

15

Primary Strategy for Modeling

SBMT = Software Based Modeling Tool
Source: Dr Dobb’s 2008 Modeling and Documentation Survey
© Scott Ambler + Associates

Twitter: @scottwambler

16

8
02/05/2013

Project Inception Activities

90%

Initial Requirements Modeling

89%

Initial Architecture Modeling

81%

Justify Project

92%

Initial Estimate

77%

High-Level Release Schedule

Source: Ambysoft 2009 Agile Project Initiation Survey
© Scott Ambler + Associates

17

Test Driven Development (TDD) Adoption Rates

Design TDD

Acceptance TDD
Fully Adopted
Partially
Adopted
Not Adopted

0%

20%

40%

60%

80%

100%

Source: Ambysoft 2012 Testing Survey
© Scott Ambler + Associates

Twitter: @scottwambler

18

9
02/05/2013

Some “Radical” Agile Modeling Ideas
•
•
•
•
•
•
•
•
•

Defer commitment to requirements details to the last
responsible moment
Defer commitment to design details to the last
responsible moment
Modeling and documentation is an important part of
disciplined agile approaches
Reduce the feedback cycle as much as you can
Modeling a great way to think through high level
concepts
Test-first approaches are a great way to think
through the details in a just-in-time (JIT) manner
Effective agilists take a multi-view, multi-model
approach
Prove it with code, not with good intentions
Keep things as simple as you possibly can, but no
simpler
© Scott Ambler + Associates

19

The Value of Modeling

© Scott Ambler + Associates

Twitter: @scottwambler

20

10
02/05/2013

Agile Modeling

© Scott Ambler + Associates

21

Why Model?

To communicate

To think things through

To specify
© Scott Ambler + Associates

Twitter: @scottwambler

22

11
02/05/2013

Role: Stakeholder
•
•
•

Stakeholder is more than a
customer
Anyone impacted by the
outcome of the system
Types of stakeholders
– End users: Users of the system
– Principals: Decision makers
that pay for and put the system
to use
– Partners: People who make the
system work in production
– Insiders: Members of the
development team and people
who provide business and
technical services to the team

© Scott Ambler + Associates

23

Role: Product Owner
•
•
•
•
•
•
•
•
•
•

The Stakeholder “proxy”
Go-to person for information on the solution requirements
Prioritizes all work for the team
Participant in modeling and acceptance testing
Has access to expert stakeholders
Facilitates requirements envisioning and modeling
Educates team in business domain
May demonstrate solution to key stakeholders
Monitors and communicates status to stakeholders
Negotiates priorities, scope, funding, and schedule

© Scott Ambler + Associates

Twitter: @scottwambler

24

12
02/05/2013

Role: Architecture Owner
•
•
•

•
•
•
•

Guides the creation and evolution of the
solution’s architecture
Mentors and coaches team members in
architecture practices and issues
Understands the architectural direction and
standards of your organization and ensures that
the team adheres to them
Ensures the system will be easy to support by
encouraging appropriate design and refactoring
Ensures that the system is integrated and tested
frequently
Has the final decision regarding technical
decisions, but doesn’t dictate them
Leads the initial architecture envisioning effort

© Scott Ambler + Associates

25

Agile Modeling (AM)
•

AM is a chaordic, practices-based
process for modeling and
documentation

•

AM is a collection of practices
based on several values and
proven software engineering
principles

•

AM is a light-weight approach for
enhancing modeling and
documentation efforts for other
software processes such as
Extreme Programming (XP),
Scrum, and Unified Process (UP)

•

Principles

Practices

Values

AM is built right into Disciplined
Agile Delivery (DAD)
© Scott Ambler + Associates

Twitter: @scottwambler

26

13
02/05/2013

What Are Agile Models?
•

Agile models:
–
–
–
–
–
–
–

•

Fulfill their purpose
Are understandable
Are sufficiently accurate
Are sufficiently consistent
Are sufficiently detailed
Provide positive value
Are as simple as possible

As a student I want to
enroll in a course so
that I can complete my
degree

Agile models are just barely
sufficient!

© Scott Ambler + Associates

27

Agile Modeling’s “Best” Practices

© Scott Ambler + Associates

Twitter: @scottwambler

28

14
02/05/2013

Exercise: We Can’t Do That!
•

Pair up

•

Instructions:
– This is a role playing exercise
– One person will play the role of a traditional:
• Business Analyst
• Solution/Application Architect
• Technical Writer
– The traditionalist doesn’t believe the agile
approach will work, and they have twenty years
of “successful” traditional experience that backs
up this assertion
– The other person will play the role of an agile
coach
– For five minutes, have a back and forth
discussion with your pair
– At the end, identify three solid points that favor
the adoption of an agile approach and three
solid points against it

© Scott Ambler + Associates

29

© Scott Ambler + Associates

30

Agile Model
Driven
Development
(AMDD)

Twitter: @scottwambler

15
02/05/2013

Agile Model Driven Development (AMDD):
Project Level

© Scott Ambler + Associates

31

The Basic/Agile Lifecycle of
Disciplined Agile Delivery (DAD)

© Scott Ambler + Associates

Twitter: @scottwambler

32

16
02/05/2013

DAD Lifecycle: Advanced/Lean

© Scott Ambler + Associates

33

DAD Lifecycle: Continuous Delivery

© Scott Ambler + Associates

Twitter: @scottwambler

34

17
02/05/2013

Continuous
Modeling
and
Documentation

© Scott Ambler + Associates

35

Continuous Modeling and Documentation
•

In agile,
–
–
–
–

•

This occurs because:
–
–
–
–

•

Analysis is so important we do it every day
Design is so important we do it every day
Testing is so important we do it every day
and so on

Our stakeholder’s understanding of what they want evolves over time
Our understanding of the solution evolves over time
The technology, including tools, evolves over time
The business environment evolves over time

We can no longer afford to risk treating important activities such as
architecture, design, testing, and more as mere phases

© Scott Ambler + Associates

Twitter: @scottwambler

36

18
02/05/2013

Exercise: Continuous Modeling and Documentation?
•

Get back together in your groups

•

Choose one of the following activities:
– Architecture
– Analysis
– Design
– Technical writing

•

Given the AMDD and DAD lifecycles, how do you think that activity will be
addressed throughout development? Consider:
– Project initiation/Inception
– Construction
– Transition

•

You have 5 minutes to discuss

© Scott Ambler + Associates

37

Agile Analysis Strategies
•
•
•
•
•
•
•
•
•
•
•

Initial requirements envisioning
Look-ahead modeling
Active stakeholder participation
Inclusive modeling
Just in time (JIT) model storming
Work in priority order
Executable specifications
Smaller is better
Adopt stakeholder terminology
Question traceability
Travel light

© Scott Ambler + Associates

Twitter: @scottwambler

38

19
02/05/2013

Agile Architecture Strategies
•

Look beyond technology

•

Initial requirements envisioning

•

Initial architecture envisioning

•

Prove the architecture with working code

•

Architecture spikes

•

Think about the future, but wait to act

•

Architects also code

•

Architecture owners, not architects

•

Travel light

•

Take a multi-view approach

© Scott Ambler + Associates

39

Agile Design Strategies

•
•
•
•
•
•
•
•
•

Travel light
Agile designs emerge
Keep it as simple as possible
Executable specifications
Prove it with code
Inclusive modeling
Just in time (JIT) model storming
Take a multi-view approach
Designers should also code (and coders also design)

© Scott Ambler + Associates

Twitter: @scottwambler

40

20
02/05/2013

Agile Documentation Strategies
•
•
•
•
•
•
•
•

Document continuously
Work closely with the actual audience of
the document
Document as a last resort
Distinguish between deliverable
documentation and disposable project
Active stakeholder participation
Describe good things to know
Keep documents concise
Invest in documentation only if you intend
to invest in maintaining it

© Scott Ambler + Associates

© Scott Ambler + Associates

Twitter: @scottwambler

41

42

21
02/05/2013

The Inception Phase

© Scott Ambler + Associates

43

Inception Artifacts Evolve in Parallel

Team
Environment

Cost and Schedule

Scope

Architecture

These artifacts are often summarized in a Project Vision/Charter

© Scott Ambler + Associates

Twitter: @scottwambler

44

22
02/05/2013

Agile Modeling Best Practices: Inception

© Scott Ambler + Associates

45

Exercise: Modeling at Project Initiation
•

This is a group assignment

•

As a group take 10 minutes to discuss:
– What modeling activities, if any, did your team perform early in the
project?
– How much detail did you go into?
– What types of models did you create?
– Did anyone have to review, accept, or even sign off, on the work?

© Scott Ambler + Associates

Twitter: @scottwambler

46

23
02/05/2013

Level of Initial Scope Detail
•
•
•
•

BRUF (detailed specifications)
Requirements envisioning (lightweight specifications)
Goals driven
No modeling at all

© Scott Ambler + Associates

47

Trade-offs with Early Details
•

Benefits:
– The more detail you gather the greater your ability to
estimate the work required
– Culturally comfortable for organizations new to agile

•

Dangers:
–
–
–
–

•

Details will evolve over time
Some requirements will never be implemented
You increase the time required to get to Construction
Chance of “analysis paralysis” increases

Consider:
– Exploring only the details of high-priority stories at first

© Scott Ambler + Associates

Twitter: @scottwambler

48

24
02/05/2013

Functional Requirements: Potential Model Types

© Scott Ambler + Associates

49

Non-Functional Requirements:
Potential Views and Concerns

© Scott Ambler + Associates

Twitter: @scottwambler

50

25
02/05/2013

Initial Architecture:
Potential Model Types

© Scott Ambler + Associates

51

Requirements Change Management

© Scott Ambler + Associates

Twitter: @scottwambler

52

26
02/05/2013

Disciplined Agilists Take a Goal-Driven Approach

Goal

Explore the Initial
Scope
Form the
Initial Team
Address
Changing
Stakeholder
Needs

*

Issue

*

Source
Team size
Team structure
Team members
Geographic distribution
Supporting the team
Availability

© Scott Ambler + Associates

Advantages
Option
Disadvantages
Default Option
Considerations

Co-located
Partially dispersed
Fully dispersed
Distributed subteams

53

Goal: Explore the Initial Scope

© Scott Ambler + Associates

Twitter: @scottwambler

54

27
02/05/2013

Goal: Identify Initial Technical Strategy

© Scott Ambler + Associates

Modeling During
Construction
© Scott Ambler + Associates

Twitter: @scottwambler

55

56

28
02/05/2013

Agile Modeling Best Practices: Construction

© Scott Ambler + Associates

57

Exercise: Modeling and Documentation During
Construction
•

This is a group assignment

•

As a group, take 10 minutes to discuss what your current agile
team(s) are doing:
–
–
–
–

When you are iteration/sprint planning, are you doing any modeling?
Do you model throughout an iteration? If so, what are you doing?
What is your approach to producing deliverable documentation?
Is the team taking a TDD approach?

© Scott Ambler + Associates

Twitter: @scottwambler

58

29
02/05/2013

Goal: Produce
a Potentially
Consumable
Solution

© Scott Ambler + Associates

59

Goal: Address Changing Stakeholder Needs

© Scott Ambler + Associates

Twitter: @scottwambler

60

30
02/05/2013

Agile Modeling and
Test Driven Development
(TDD)
© Scott Ambler + Associates

61

Test-Driven Development (TDD)

Test-First Development (TFD) is a
technique where you write a single test and
then you write just enough production code
to fulfill that test.
Refactoring is a technique where you make
a simple change to your code/schema to
improve its quality without changing its
semantics.
TDD = TFD + refactoring

© Scott Ambler + Associates

Twitter: @scottwambler

62

31
02/05/2013

Acceptance
and
Developer
TDD
Together

© Scott Ambler + Associates

63

TDD Example
•

Story:
– As a Student I want to order my official transcript online so that I can
provide it to potential employers

•

Acceptance tests:

•

– Ensure the person is or has been a student
– Ensure that the student are in good standing (all fees have been paid)
– Ensure that the student has finished at least one course
– Ensure that at least one valid ship to address is provided
– …
Unit tests for: Ensure the person is or has been a student
– The student ID should be a nine-digit number
– The last digit should be modulo 11 of the sum of the first 8 digits
– One and only one student record should exist for the provided student
ID
– …
© Scott Ambler + Associates

Twitter: @scottwambler

64

32
02/05/2013

Agility at
Scale

© Scott Ambler + Associates

65

What Does it Mean to Scale Agile?

http://disciplinedagiledelivery.wordpress.com/2013/03/15/sdcf/
© Scott Ambler + Associates

Twitter: @scottwambler

66

33
02/05/2013

Large Teams

Organizational options:
• Feature teams: A
subteam works on a
feature from end to
end.
• Component teams: A
subteam does all the
work for a specific
component.
• Internal open source:
A component is
developed via open
source techniques.

© Scott Ambler + Associates

67

AMDD and Large Teams
•
•

Larger teams are often a response to greater domain complexity,
technical complexity, or cultural challenges
Inception:
– You will likely need to invest a bit more time exploring the initial
requirements
– You may need to take an “API First” or “Contract Model” approach to
the architecture where you define the interface to components in detail
early in the project
– There will likely be a bit more initial specification

•

Construction:
– Product Owners will need to coordinate requirement dependencies
– Architecture Owners will need to coordinate technical dependencies
– TDD may need to be enhanced with parallel independent testing

© Scott Ambler + Associates

Twitter: @scottwambler

68

34
02/05/2013

Geographically Distributed/Dispersed Teams

© Scott Ambler + Associates

69

AMDD and Geographic Distribution
•
•

Geographically distributed/dispersed teams are usually the result of
large teams or organizational culture
Inception:
– You will likely need to invest a bit more time exploring the initial
requirements
– You will likely need to take an “API First” or “Contract Model” approach to
the architecture where you define the interface to components in detail
early in the project
– There will likely be a bit more initial specification
– Get key players together physically for Inception

•

Construction:
–
–
–
–
–

Dispersed members will need to coordinate with their co-workers regularly
Product Owners will need to coordinate requirement dependencies
Architecture Owners will need to coordinate technical dependencies
TDD will likely need to be enhanced with parallel independent testing
Get key players together for critical milestones
© Scott Ambler + Associates

Twitter: @scottwambler

70

35
02/05/2013

Thoughts on Compliance
•

Not all regulations are the same
– Read and understand them

•

Distinguish between
– Regulatory compliance which is legally required
– Internal audit compliance (e.g. CMMI) which is self imposed

•

Compliance will be driven by the interpretation of the guidelines
– If you leave interpretation to bureaucrats don’t be surprised if you end
up with a bureaucratic strategy

© Scott Ambler + Associates

71

AMDD and Compliance
•

Inception:
– Invest time to understand the true implications of the regulations
regarding specification, documentation, and traceability
– The regulations MAY require more detailed requirements and
architecture specification, some traceability, and some level of formality
of validation of the specifications

•

Construction:
– You may need to adopt more formal modeling and documentation
tooling
– You may need to keep all artifacts in sync throughout construction
– You may need to invest in traceability activities, or better yet in activities
and tooling that automatically result in sufficient traceability
– TDD may need to be enhanced with parallel independent testing

•

Transition:
– You may need to hold final reviews and sign-offs of key artifacts
– You may need to generate final artifact manifests, traceability trees, and
so on
© Scott Ambler + Associates

Twitter: @scottwambler

72

36
02/05/2013

© Scott Ambler + Associates

73

Modeling is an Important Aspect of Disciplined
Agile Delivery
•

Disciplined agilists:
– Invest some up-front time exploring the initial scope
– Invest some up-front time identifying a viable technical strategy
– Work closely with enterprise professionals, including enterprise
architects and operations professionals, to ensure that what they’re
producing is enterprise compliant
– Tailor their approach to meet the context of the situation that they face
– Model throughout construction in a just-in-time (JIT) manner
– Document throughout construction because they realize that
documentation is part of their overall deliverable
– Work closely with their stakeholders whenever they can, not just with
stakeholder proxies such as product owners

© Scott Ambler + Associates

Twitter: @scottwambler

74

37
02/05/2013

AMDD at the Enterprise/Program Level

© Scott Ambler + Associates

75

Exercise: What Have You Learned?
•

Individually, on a sheet of paper, answer the following questions:
– What three new things have you learned about modeling in general?
– What three new things have you learned about how modeling occurs on
an agile project?
– What improvements in the way you approach modeling and
documentation can you make on your current project team?
– What still puzzles you?

© Scott Ambler + Associates

Twitter: @scottwambler

76

38
02/05/2013

A Disciplined Ending….

Please…
– Take the opportunity to thank your teammates – we all learned together
– Fill out the workshop evaluation form(s)
– Turn in the evaluation(s) to the instructor

© Scott Ambler + Associates

77

Got Discipline?
DisciplinedAgileConsortium.org
DisciplinedAgileDelivery.com
ScottAmbler.com

© Scott Ambler + Associates

Twitter: @scottwambler

78

39
02/05/2013

Thank You!
scott [at] scottambler.com
@scottwambler
AgileModeling.com
AgileData.org
Ambysoft.com
DisciplinedAgileConsortium.org
DisciplinedAgileDelivery.com
ScottAmbler.com
Disciplined Agile Delivery
Disciplined Agile Delivery
© Scott Ambler + Associates

79

Recommended Resources

80
© Scott Ambler + Associates

Twitter: @scottwambler

40

More Related Content

What's hot

Agile methodology
Agile methodologyAgile methodology
Agile methodology
Tyler Rose
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
Muhammad Shoaib
 
Agile Software Development Model
Agile Software Development ModelAgile Software Development Model
Agile Software Development Model
Ritika Balagan
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
Rasan Samarasinghe
 
Agile Methodology (scrum)
Agile Methodology (scrum)Agile Methodology (scrum)
Agile Methodology (scrum)
Manoj Ellappan
 
What is Agile Methodology?
What is Agile Methodology?What is Agile Methodology?
What is Agile Methodology?
QA InfoTech
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
C.P. Maurya
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
Software Park Thailand
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
Purvik Rana
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
Abhilash Chandran
 
Agile Methodology - Introduction
Agile Methodology - IntroductionAgile Methodology - Introduction
Agile Methodology - Introduction
Roberto de Paula Lico Junior
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overviewguestb4c770
 
10 Advantages of Agile Software Development
10 Advantages of Agile Software Development10 Advantages of Agile Software Development
10 Advantages of Agile Software Development
ValueCoders
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
Aciron Consulting
 
Agile Methodology and Tools
Agile Methodology and ToolsAgile Methodology and Tools
Agile Methodology and Tools
Naresh Gajuveni
 
Agile software development methodology
Agile software development methodologyAgile software development methodology
Agile software development methodology
justinleague0819
 
Apt agile methodology
Apt agile methodologyApt agile methodology
Apt agile methodologyIndra
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
Sachith Perera
 
Agile software development
Agile software developmentAgile software development
Agile software development
Rajesh Piryani
 
Software Development Methodologies By E2Logy
Software Development Methodologies By E2LogySoftware Development Methodologies By E2Logy
Software Development Methodologies By E2Logy
E2LOGY
 

What's hot (20)

Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile Software Development Model
Agile Software Development ModelAgile Software Development Model
Agile Software Development Model
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 
Agile Methodology (scrum)
Agile Methodology (scrum)Agile Methodology (scrum)
Agile Methodology (scrum)
 
What is Agile Methodology?
What is Agile Methodology?What is Agile Methodology?
What is Agile Methodology?
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
 
Agile Methodology - Introduction
Agile Methodology - IntroductionAgile Methodology - Introduction
Agile Methodology - Introduction
 
Agile Development Overview
Agile Development OverviewAgile Development Overview
Agile Development Overview
 
10 Advantages of Agile Software Development
10 Advantages of Agile Software Development10 Advantages of Agile Software Development
10 Advantages of Agile Software Development
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile Methodology and Tools
Agile Methodology and ToolsAgile Methodology and Tools
Agile Methodology and Tools
 
Agile software development methodology
Agile software development methodologyAgile software development methodology
Agile software development methodology
 
Apt agile methodology
Apt agile methodologyApt agile methodology
Apt agile methodology
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Software Development Methodologies By E2Logy
Software Development Methodologies By E2LogySoftware Development Methodologies By E2Logy
Software Development Methodologies By E2Logy
 

Viewers also liked

Scaling Scrum with Scrum™ (SSwS): A Universal Framework
Scaling Scrum with Scrum™ (SSwS): A Universal FrameworkScaling Scrum with Scrum™ (SSwS): A Universal Framework
Scaling Scrum with Scrum™ (SSwS): A Universal Framework
TechWell
 
What’s Your Leadership IQ?
What’s Your Leadership IQ?What’s Your Leadership IQ?
What’s Your Leadership IQ?
TechWell
 
Going Agile at Scale: A Mindset Transformation of Global Proportions
Going Agile at Scale: A Mindset Transformation of Global ProportionsGoing Agile at Scale: A Mindset Transformation of Global Proportions
Going Agile at Scale: A Mindset Transformation of Global Proportions
TechWell
 
The Lean Executive Agility Framework
The Lean Executive Agility FrameworkThe Lean Executive Agility Framework
The Lean Executive Agility Framework
TechWell
 
Where Is Test in DevOps?
Where Is Test in DevOps?Where Is Test in DevOps?
Where Is Test in DevOps?
TechWell
 
Scrum: An Experiential Workshop
Scrum: An Experiential WorkshopScrum: An Experiential Workshop
Scrum: An Experiential Workshop
TechWell
 
Doing Agile in a Waterfall World? Without Breaking Your Neck
Doing Agile in a Waterfall World? Without Breaking Your NeckDoing Agile in a Waterfall World? Without Breaking Your Neck
Doing Agile in a Waterfall World? Without Breaking Your Neck
TechWell
 
Ready and Fit: Adopting Agile in Highly Regulated Environments
Ready and Fit: Adopting Agile in Highly Regulated EnvironmentsReady and Fit: Adopting Agile in Highly Regulated Environments
Ready and Fit: Adopting Agile in Highly Regulated Environments
TechWell
 
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and MoreThe Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
TechWell
 
Scaling Agile with the Lessons of Lean Product Development Flow
Scaling Agile with the Lessons of Lean Product Development FlowScaling Agile with the Lessons of Lean Product Development Flow
Scaling Agile with the Lessons of Lean Product Development Flow
TechWell
 
Shut Up ‘n Play Yer Guitar Some More
Shut Up ‘n Play Yer Guitar Some MoreShut Up ‘n Play Yer Guitar Some More
Shut Up ‘n Play Yer Guitar Some More
TechWell
 
Continuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of LifeContinuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of Life
TechWell
 
Agile Metrics: Measuring Outcomes and Results
Agile Metrics: Measuring Outcomes and ResultsAgile Metrics: Measuring Outcomes and Results
Agile Metrics: Measuring Outcomes and Results
TechWell
 
Addressing the Challenges of Mobile Test Automation
Addressing the Challenges of Mobile Test AutomationAddressing the Challenges of Mobile Test Automation
Addressing the Challenges of Mobile Test Automation
TechWell
 
Better Together: Group Exploratory Testing
Better Together: Group Exploratory TestingBetter Together: Group Exploratory Testing
Better Together: Group Exploratory Testing
TechWell
 
Performance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps EnvironmentsPerformance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps Environments
TechWell
 
Test Metrics in Agile: A Powerful Tool to Demonstrate Value
Test Metrics in Agile: A Powerful Tool to Demonstrate ValueTest Metrics in Agile: A Powerful Tool to Demonstrate Value
Test Metrics in Agile: A Powerful Tool to Demonstrate Value
TechWell
 

Viewers also liked (17)

Scaling Scrum with Scrum™ (SSwS): A Universal Framework
Scaling Scrum with Scrum™ (SSwS): A Universal FrameworkScaling Scrum with Scrum™ (SSwS): A Universal Framework
Scaling Scrum with Scrum™ (SSwS): A Universal Framework
 
What’s Your Leadership IQ?
What’s Your Leadership IQ?What’s Your Leadership IQ?
What’s Your Leadership IQ?
 
Going Agile at Scale: A Mindset Transformation of Global Proportions
Going Agile at Scale: A Mindset Transformation of Global ProportionsGoing Agile at Scale: A Mindset Transformation of Global Proportions
Going Agile at Scale: A Mindset Transformation of Global Proportions
 
The Lean Executive Agility Framework
The Lean Executive Agility FrameworkThe Lean Executive Agility Framework
The Lean Executive Agility Framework
 
Where Is Test in DevOps?
Where Is Test in DevOps?Where Is Test in DevOps?
Where Is Test in DevOps?
 
Scrum: An Experiential Workshop
Scrum: An Experiential WorkshopScrum: An Experiential Workshop
Scrum: An Experiential Workshop
 
Doing Agile in a Waterfall World? Without Breaking Your Neck
Doing Agile in a Waterfall World? Without Breaking Your NeckDoing Agile in a Waterfall World? Without Breaking Your Neck
Doing Agile in a Waterfall World? Without Breaking Your Neck
 
Ready and Fit: Adopting Agile in Highly Regulated Environments
Ready and Fit: Adopting Agile in Highly Regulated EnvironmentsReady and Fit: Adopting Agile in Highly Regulated Environments
Ready and Fit: Adopting Agile in Highly Regulated Environments
 
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and MoreThe Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
The Challenges of BIG Testing: Automation, Virtualization, Outsourcing, and More
 
Scaling Agile with the Lessons of Lean Product Development Flow
Scaling Agile with the Lessons of Lean Product Development FlowScaling Agile with the Lessons of Lean Product Development Flow
Scaling Agile with the Lessons of Lean Product Development Flow
 
Shut Up ‘n Play Yer Guitar Some More
Shut Up ‘n Play Yer Guitar Some MoreShut Up ‘n Play Yer Guitar Some More
Shut Up ‘n Play Yer Guitar Some More
 
Continuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of LifeContinuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of Life
 
Agile Metrics: Measuring Outcomes and Results
Agile Metrics: Measuring Outcomes and ResultsAgile Metrics: Measuring Outcomes and Results
Agile Metrics: Measuring Outcomes and Results
 
Addressing the Challenges of Mobile Test Automation
Addressing the Challenges of Mobile Test AutomationAddressing the Challenges of Mobile Test Automation
Addressing the Challenges of Mobile Test Automation
 
Better Together: Group Exploratory Testing
Better Together: Group Exploratory TestingBetter Together: Group Exploratory Testing
Better Together: Group Exploratory Testing
 
Performance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps EnvironmentsPerformance Testing in Agile and DevOps Environments
Performance Testing in Agile and DevOps Environments
 
Test Metrics in Agile: A Powerful Tool to Demonstrate Value
Test Metrics in Agile: A Powerful Tool to Demonstrate ValueTest Metrics in Agile: A Powerful Tool to Demonstrate Value
Test Metrics in Agile: A Powerful Tool to Demonstrate Value
 

Similar to Agile Model-Driven Development

Disciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the EnterpriseDisciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the Enterprise
TechWell
 
Governing Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
Governing Agile Teams: Disciplined Strategies to Increase Agile EffectivenessGoverning Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
Governing Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
TechWell
 
Disciplined Agile Business Analysis
Disciplined Agile Business AnalysisDisciplined Agile Business Analysis
Disciplined Agile Business Analysis
Scott W. Ambler
 
Continuous Architecture and Emergent Design: Disciplined Agile Strategies
Continuous Architecture and Emergent Design: Disciplined Agile StrategiesContinuous Architecture and Emergent Design: Disciplined Agile Strategies
Continuous Architecture and Emergent Design: Disciplined Agile Strategies
Scott W. Ambler
 
How To Build Scrum Task Boards that Radiate Information
How To Build Scrum Task Boards that Radiate Information How To Build Scrum Task Boards that Radiate Information
How To Build Scrum Task Boards that Radiate Information
mikedep01
 
(In Agile) Where Do All The Managers Go?
(In Agile) Where Do All The Managers Go?(In Agile) Where Do All The Managers Go?
(In Agile) Where Do All The Managers Go?
Scott W. Ambler
 
Ambler's agile modelling
Ambler's agile modellingAmbler's agile modelling
Ambler's agile modelling
Craig Brown
 
The Disciplined Agile Enterprise: Harmonizing Agile and Lean
The Disciplined Agile Enterprise: Harmonizing Agile and LeanThe Disciplined Agile Enterprise: Harmonizing Agile and Lean
The Disciplined Agile Enterprise: Harmonizing Agile and Lean
Bosnia Agile
 
Agile Modeling: A Disciplined Approach to Modelling and Documentation
Agile Modeling: A Disciplined Approach to Modelling and DocumentationAgile Modeling: A Disciplined Approach to Modelling and Documentation
Agile Modeling: A Disciplined Approach to Modelling and Documentation
Scott W. Ambler
 
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
Scott W. Ambler
 
Program Management in MBSE
Program Management in MBSEProgram Management in MBSE
Program Management in MBSE
TaylorDuffy11
 
Test Automation on Large Agile Projects: It's Not a Cakewalk
Test Automation on Large Agile Projects: It's Not a CakewalkTest Automation on Large Agile Projects: It's Not a Cakewalk
Test Automation on Large Agile Projects: It's Not a Cakewalk
TechWell
 
Continuous Delivery: Rapid and Reliable Releases with DevOps Practices
Continuous Delivery: Rapid and Reliable Releases with DevOps PracticesContinuous Delivery: Rapid and Reliable Releases with DevOps Practices
Continuous Delivery: Rapid and Reliable Releases with DevOps Practices
TechWell
 
Short Intro to Agile-Scrum for NCA-CPA
Short Intro to Agile-Scrum for NCA-CPAShort Intro to Agile-Scrum for NCA-CPA
Short Intro to Agile-Scrum for NCA-CPA
LeanAgileTraining
 
Agile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little PigsAgile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little Pigs
Craig Smith
 
Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009
Marc Bless
 
Continuous architecture and emergent design
Continuous architecture and emergent designContinuous architecture and emergent design
Continuous architecture and emergent design
Synerzip
 
Agile enterprise architecture
Agile enterprise architectureAgile enterprise architecture
Agile enterprise architecture
Scott W. Ambler
 
Agile Truths and Misconceptions Exposed
Agile Truths and Misconceptions ExposedAgile Truths and Misconceptions Exposed
Agile Truths and Misconceptions Exposed
Richard Cheng
 

Similar to Agile Model-Driven Development (20)

Disciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the EnterpriseDisciplined Agile Delivery: Extending Scrum to the Enterprise
Disciplined Agile Delivery: Extending Scrum to the Enterprise
 
Governing Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
Governing Agile Teams: Disciplined Strategies to Increase Agile EffectivenessGoverning Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
Governing Agile Teams: Disciplined Strategies to Increase Agile Effectiveness
 
Disciplined Agile Business Analysis
Disciplined Agile Business AnalysisDisciplined Agile Business Analysis
Disciplined Agile Business Analysis
 
Continuous Architecture and Emergent Design: Disciplined Agile Strategies
Continuous Architecture and Emergent Design: Disciplined Agile StrategiesContinuous Architecture and Emergent Design: Disciplined Agile Strategies
Continuous Architecture and Emergent Design: Disciplined Agile Strategies
 
How To Build Scrum Task Boards that Radiate Information
How To Build Scrum Task Boards that Radiate Information How To Build Scrum Task Boards that Radiate Information
How To Build Scrum Task Boards that Radiate Information
 
(In Agile) Where Do All The Managers Go?
(In Agile) Where Do All The Managers Go?(In Agile) Where Do All The Managers Go?
(In Agile) Where Do All The Managers Go?
 
Ambler's agile modelling
Ambler's agile modellingAmbler's agile modelling
Ambler's agile modelling
 
The Disciplined Agile Enterprise: Harmonizing Agile and Lean
The Disciplined Agile Enterprise: Harmonizing Agile and LeanThe Disciplined Agile Enterprise: Harmonizing Agile and Lean
The Disciplined Agile Enterprise: Harmonizing Agile and Lean
 
Agile Modeling: A Disciplined Approach to Modelling and Documentation
Agile Modeling: A Disciplined Approach to Modelling and DocumentationAgile Modeling: A Disciplined Approach to Modelling and Documentation
Agile Modeling: A Disciplined Approach to Modelling and Documentation
 
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
Agile Data Warehousing (DW)/Business Intelligence (BI): Addressing the Hard P...
 
Program Management in MBSE
Program Management in MBSEProgram Management in MBSE
Program Management in MBSE
 
Test Automation on Large Agile Projects: It's Not a Cakewalk
Test Automation on Large Agile Projects: It's Not a CakewalkTest Automation on Large Agile Projects: It's Not a Cakewalk
Test Automation on Large Agile Projects: It's Not a Cakewalk
 
Continuous Delivery: Rapid and Reliable Releases with DevOps Practices
Continuous Delivery: Rapid and Reliable Releases with DevOps PracticesContinuous Delivery: Rapid and Reliable Releases with DevOps Practices
Continuous Delivery: Rapid and Reliable Releases with DevOps Practices
 
Short Intro to Agile-Scrum for NCA-CPA
Short Intro to Agile-Scrum for NCA-CPAShort Intro to Agile-Scrum for NCA-CPA
Short Intro to Agile-Scrum for NCA-CPA
 
Agile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little PigsAgile Project Experiences - The Story of Three Little Pigs
Agile Project Experiences - The Story of Three Little Pigs
 
Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009
 
Continuous architecture and emergent design
Continuous architecture and emergent designContinuous architecture and emergent design
Continuous architecture and emergent design
 
Agile enterprise architecture
Agile enterprise architectureAgile enterprise architecture
Agile enterprise architecture
 
Agile for startups
Agile for startupsAgile for startups
Agile for startups
 
Agile Truths and Misconceptions Exposed
Agile Truths and Misconceptions ExposedAgile Truths and Misconceptions Exposed
Agile Truths and Misconceptions Exposed
 

More from TechWell

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
TechWell
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
TechWell
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
TechWell
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
TechWell
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
TechWell
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
TechWell
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
TechWell
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
TechWell
 
Ma 15
Ma 15Ma 15
Ma 15
TechWell
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
TechWell
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
TechWell
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
TechWell
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
TechWell
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
TechWell
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
TechWell
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
TechWell
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
TechWell
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
TechWell
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
TechWell
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
TechWell
 

More from TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Recently uploaded

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 

Recently uploaded (20)

Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 

Agile Model-Driven Development

  • 1.     MK Half‐day Tutorial  6/3/2013 1:00 PM                "Agile Model-Driven Development"       Presented by: Scott Ambler Scott Ambler + Associates                   Brought to you by:        340 Corporate Way, Suite 300, Orange Park, FL 32073  888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Scott Ambler Scott W. Ambler + Associates Scott Ambler works with organizations worldwide to help them improve their software processes. Scott is the founder of the Agile Modeling (AM), Agile Data (AD), Disciplined Agile Delivery (DAD), and Enterprise Unified Process (EUP) methodologies and creator of the Agile Scaling Model (ASM). He is the coauthor of twenty-one books, including Refactoring Databases, Agile Modeling, Agile Database Techniques, The Object Primer 3rd Edition, The Enterprise Unified Process, and Disciplined Agile Delivery. Scott is a senior contributing editor with Dr. Dobb’s Journal. Visit his home page ScottAmbler.com and his Agility@Scale blog.  
  • 3. 02/05/2013 Agile Model Driven Development: Best Practices for Scaling Agile Scott W. Ambler Senior Consulting Partner scott [at] scottambler.com @scottwambler Feel Free to Ask Questions at Any Time © Scott Ambler + Associates Twitter: @scottwambler 2 1
  • 4. 02/05/2013 Discussion: Defining Done • What are you hoping to get from this tutorial? © Scott Ambler + Associates 3 Agenda • • • • • • • • • A specification parable Thinking outside of the modeling box Agile Modeling Agile Model Driven Development (AMDD) Continuous modeling and documentation Project initiation strategies Construction strategies AMDD and scaling agile Parting thoughts © Scott Ambler + Associates Twitter: @scottwambler 4 2
  • 5. 02/05/2013 A specification parable Two years ago I asked for a toy like the one my friends had. I didn’t know what it was called so I described it to Santa, hoping that he would know what I was talking about. My description: It is a toy for kids. You get on it and you bounce up and down. It is lots of fun. © Scott Ambler + Associates 5 This is what I found under the tree. It’s sort of fun, but it’s not what I wanted. © Scott Ambler + Associates Twitter: @scottwambler 6 3
  • 6. 02/05/2013 Last year I asked Santa Claus for a sports car. It should be bright red with some white detailing. It should have big racing tires so that it can hug the road on sharp turns. © Scott Ambler + Associates 7 This is what I found under the tree. © Scott Ambler + Associates Twitter: @scottwambler 8 4
  • 7. 02/05/2013 This year I really want a penguin. So in my letter to Santa Claus this year I am going to be very clear that I want a real, live penguin. Not a toy penguin. Not a penguin game. Not a penguin picture. A real, live penguin. I will even include this photo of the type of penguin that I would like with my letter. There will be no mistakes… © Scott Ambler + Associates 9 Exercise: Comparing Specification Strategies • • Organize into teams of 5-8 people Take a minute to introduce yourselves to one another • For 10 minutes, discuss within the team: • Why didn’t he get the trampoline? • Why didn’t he get the car he wanted? • Assume that he gets the penguin that he asked for. How will this actually work out in practice • How do these observations relate to what you’ve seen in the workplace on software development projects? • What approaches have you seen for eliciting requirements from stakeholders? What were the advantages and disadvantages in the long run? © Scott Ambler + Associates Twitter: @scottwambler 10 5
  • 8. 02/05/2013 © Scott Ambler + Associates 11 What is a Model? A model is an abstraction that describes one or more aspects of a problem or a potential solution addressing a problem • Commonly one or more diagrams plus any corresponding documentation • How the abstraction is captured, if at all, shouldn’t matter • Sketches should be considered models • Non-visual artifacts can also be models © Scott Ambler + Associates Twitter: @scottwambler 12 6
  • 9. 02/05/2013 A Quick Survey Please answer from the point of view of the agile team you are most familiar with: 1. Did the team do any up-front requirements modeling (or “backlog population”) or have the initial requirements provided to them? 2. Did the team do any up-front architecture modeling or have the architecture provided to them? 3. During iteration/sprint planning do they ever create sketches or identify acceptance criteria to help identify tasks? 4. During an iteration/sprint, do people ever do any modeling/sketching to explore or discuss some work they are performing? © Scott Ambler + Associates 13 The Survey Results Shared in this Tutorial • All surveys were performed in an open manner • The questions as they were asked, the source data, and a summary slide deck can be downloaded free of charge from Ambysoft.com/surveys/ © Scott Ambler + Associates Twitter: @scottwambler 14 7
  • 10. 02/05/2013 Comparing Communication Strategies (4.2, 3.5) (4.3, 4.1) How effective are communication techniques on actual agile projects? (1.3, 1.6) Rating of -5 (very ineffective) to +5 (very effective) (1.4, 1.5) (2.1, 0.2) (1.1, 1.4) Format: (within team, with external stakeholders) (1.9, 1.9) (-0.3, 0.2) Source: Ambysoft Inc. 2008 Agile Principles and Practices Survey © Scott Ambler + Associates 15 Primary Strategy for Modeling SBMT = Software Based Modeling Tool Source: Dr Dobb’s 2008 Modeling and Documentation Survey © Scott Ambler + Associates Twitter: @scottwambler 16 8
  • 11. 02/05/2013 Project Inception Activities 90% Initial Requirements Modeling 89% Initial Architecture Modeling 81% Justify Project 92% Initial Estimate 77% High-Level Release Schedule Source: Ambysoft 2009 Agile Project Initiation Survey © Scott Ambler + Associates 17 Test Driven Development (TDD) Adoption Rates Design TDD Acceptance TDD Fully Adopted Partially Adopted Not Adopted 0% 20% 40% 60% 80% 100% Source: Ambysoft 2012 Testing Survey © Scott Ambler + Associates Twitter: @scottwambler 18 9
  • 12. 02/05/2013 Some “Radical” Agile Modeling Ideas • • • • • • • • • Defer commitment to requirements details to the last responsible moment Defer commitment to design details to the last responsible moment Modeling and documentation is an important part of disciplined agile approaches Reduce the feedback cycle as much as you can Modeling a great way to think through high level concepts Test-first approaches are a great way to think through the details in a just-in-time (JIT) manner Effective agilists take a multi-view, multi-model approach Prove it with code, not with good intentions Keep things as simple as you possibly can, but no simpler © Scott Ambler + Associates 19 The Value of Modeling © Scott Ambler + Associates Twitter: @scottwambler 20 10
  • 13. 02/05/2013 Agile Modeling © Scott Ambler + Associates 21 Why Model? To communicate To think things through To specify © Scott Ambler + Associates Twitter: @scottwambler 22 11
  • 14. 02/05/2013 Role: Stakeholder • • • Stakeholder is more than a customer Anyone impacted by the outcome of the system Types of stakeholders – End users: Users of the system – Principals: Decision makers that pay for and put the system to use – Partners: People who make the system work in production – Insiders: Members of the development team and people who provide business and technical services to the team © Scott Ambler + Associates 23 Role: Product Owner • • • • • • • • • • The Stakeholder “proxy” Go-to person for information on the solution requirements Prioritizes all work for the team Participant in modeling and acceptance testing Has access to expert stakeholders Facilitates requirements envisioning and modeling Educates team in business domain May demonstrate solution to key stakeholders Monitors and communicates status to stakeholders Negotiates priorities, scope, funding, and schedule © Scott Ambler + Associates Twitter: @scottwambler 24 12
  • 15. 02/05/2013 Role: Architecture Owner • • • • • • • Guides the creation and evolution of the solution’s architecture Mentors and coaches team members in architecture practices and issues Understands the architectural direction and standards of your organization and ensures that the team adheres to them Ensures the system will be easy to support by encouraging appropriate design and refactoring Ensures that the system is integrated and tested frequently Has the final decision regarding technical decisions, but doesn’t dictate them Leads the initial architecture envisioning effort © Scott Ambler + Associates 25 Agile Modeling (AM) • AM is a chaordic, practices-based process for modeling and documentation • AM is a collection of practices based on several values and proven software engineering principles • AM is a light-weight approach for enhancing modeling and documentation efforts for other software processes such as Extreme Programming (XP), Scrum, and Unified Process (UP) • Principles Practices Values AM is built right into Disciplined Agile Delivery (DAD) © Scott Ambler + Associates Twitter: @scottwambler 26 13
  • 16. 02/05/2013 What Are Agile Models? • Agile models: – – – – – – – • Fulfill their purpose Are understandable Are sufficiently accurate Are sufficiently consistent Are sufficiently detailed Provide positive value Are as simple as possible As a student I want to enroll in a course so that I can complete my degree Agile models are just barely sufficient! © Scott Ambler + Associates 27 Agile Modeling’s “Best” Practices © Scott Ambler + Associates Twitter: @scottwambler 28 14
  • 17. 02/05/2013 Exercise: We Can’t Do That! • Pair up • Instructions: – This is a role playing exercise – One person will play the role of a traditional: • Business Analyst • Solution/Application Architect • Technical Writer – The traditionalist doesn’t believe the agile approach will work, and they have twenty years of “successful” traditional experience that backs up this assertion – The other person will play the role of an agile coach – For five minutes, have a back and forth discussion with your pair – At the end, identify three solid points that favor the adoption of an agile approach and three solid points against it © Scott Ambler + Associates 29 © Scott Ambler + Associates 30 Agile Model Driven Development (AMDD) Twitter: @scottwambler 15
  • 18. 02/05/2013 Agile Model Driven Development (AMDD): Project Level © Scott Ambler + Associates 31 The Basic/Agile Lifecycle of Disciplined Agile Delivery (DAD) © Scott Ambler + Associates Twitter: @scottwambler 32 16
  • 19. 02/05/2013 DAD Lifecycle: Advanced/Lean © Scott Ambler + Associates 33 DAD Lifecycle: Continuous Delivery © Scott Ambler + Associates Twitter: @scottwambler 34 17
  • 20. 02/05/2013 Continuous Modeling and Documentation © Scott Ambler + Associates 35 Continuous Modeling and Documentation • In agile, – – – – • This occurs because: – – – – • Analysis is so important we do it every day Design is so important we do it every day Testing is so important we do it every day and so on Our stakeholder’s understanding of what they want evolves over time Our understanding of the solution evolves over time The technology, including tools, evolves over time The business environment evolves over time We can no longer afford to risk treating important activities such as architecture, design, testing, and more as mere phases © Scott Ambler + Associates Twitter: @scottwambler 36 18
  • 21. 02/05/2013 Exercise: Continuous Modeling and Documentation? • Get back together in your groups • Choose one of the following activities: – Architecture – Analysis – Design – Technical writing • Given the AMDD and DAD lifecycles, how do you think that activity will be addressed throughout development? Consider: – Project initiation/Inception – Construction – Transition • You have 5 minutes to discuss © Scott Ambler + Associates 37 Agile Analysis Strategies • • • • • • • • • • • Initial requirements envisioning Look-ahead modeling Active stakeholder participation Inclusive modeling Just in time (JIT) model storming Work in priority order Executable specifications Smaller is better Adopt stakeholder terminology Question traceability Travel light © Scott Ambler + Associates Twitter: @scottwambler 38 19
  • 22. 02/05/2013 Agile Architecture Strategies • Look beyond technology • Initial requirements envisioning • Initial architecture envisioning • Prove the architecture with working code • Architecture spikes • Think about the future, but wait to act • Architects also code • Architecture owners, not architects • Travel light • Take a multi-view approach © Scott Ambler + Associates 39 Agile Design Strategies • • • • • • • • • Travel light Agile designs emerge Keep it as simple as possible Executable specifications Prove it with code Inclusive modeling Just in time (JIT) model storming Take a multi-view approach Designers should also code (and coders also design) © Scott Ambler + Associates Twitter: @scottwambler 40 20
  • 23. 02/05/2013 Agile Documentation Strategies • • • • • • • • Document continuously Work closely with the actual audience of the document Document as a last resort Distinguish between deliverable documentation and disposable project Active stakeholder participation Describe good things to know Keep documents concise Invest in documentation only if you intend to invest in maintaining it © Scott Ambler + Associates © Scott Ambler + Associates Twitter: @scottwambler 41 42 21
  • 24. 02/05/2013 The Inception Phase © Scott Ambler + Associates 43 Inception Artifacts Evolve in Parallel Team Environment Cost and Schedule Scope Architecture These artifacts are often summarized in a Project Vision/Charter © Scott Ambler + Associates Twitter: @scottwambler 44 22
  • 25. 02/05/2013 Agile Modeling Best Practices: Inception © Scott Ambler + Associates 45 Exercise: Modeling at Project Initiation • This is a group assignment • As a group take 10 minutes to discuss: – What modeling activities, if any, did your team perform early in the project? – How much detail did you go into? – What types of models did you create? – Did anyone have to review, accept, or even sign off, on the work? © Scott Ambler + Associates Twitter: @scottwambler 46 23
  • 26. 02/05/2013 Level of Initial Scope Detail • • • • BRUF (detailed specifications) Requirements envisioning (lightweight specifications) Goals driven No modeling at all © Scott Ambler + Associates 47 Trade-offs with Early Details • Benefits: – The more detail you gather the greater your ability to estimate the work required – Culturally comfortable for organizations new to agile • Dangers: – – – – • Details will evolve over time Some requirements will never be implemented You increase the time required to get to Construction Chance of “analysis paralysis” increases Consider: – Exploring only the details of high-priority stories at first © Scott Ambler + Associates Twitter: @scottwambler 48 24
  • 27. 02/05/2013 Functional Requirements: Potential Model Types © Scott Ambler + Associates 49 Non-Functional Requirements: Potential Views and Concerns © Scott Ambler + Associates Twitter: @scottwambler 50 25
  • 28. 02/05/2013 Initial Architecture: Potential Model Types © Scott Ambler + Associates 51 Requirements Change Management © Scott Ambler + Associates Twitter: @scottwambler 52 26
  • 29. 02/05/2013 Disciplined Agilists Take a Goal-Driven Approach Goal Explore the Initial Scope Form the Initial Team Address Changing Stakeholder Needs * Issue * Source Team size Team structure Team members Geographic distribution Supporting the team Availability © Scott Ambler + Associates Advantages Option Disadvantages Default Option Considerations Co-located Partially dispersed Fully dispersed Distributed subteams 53 Goal: Explore the Initial Scope © Scott Ambler + Associates Twitter: @scottwambler 54 27
  • 30. 02/05/2013 Goal: Identify Initial Technical Strategy © Scott Ambler + Associates Modeling During Construction © Scott Ambler + Associates Twitter: @scottwambler 55 56 28
  • 31. 02/05/2013 Agile Modeling Best Practices: Construction © Scott Ambler + Associates 57 Exercise: Modeling and Documentation During Construction • This is a group assignment • As a group, take 10 minutes to discuss what your current agile team(s) are doing: – – – – When you are iteration/sprint planning, are you doing any modeling? Do you model throughout an iteration? If so, what are you doing? What is your approach to producing deliverable documentation? Is the team taking a TDD approach? © Scott Ambler + Associates Twitter: @scottwambler 58 29
  • 32. 02/05/2013 Goal: Produce a Potentially Consumable Solution © Scott Ambler + Associates 59 Goal: Address Changing Stakeholder Needs © Scott Ambler + Associates Twitter: @scottwambler 60 30
  • 33. 02/05/2013 Agile Modeling and Test Driven Development (TDD) © Scott Ambler + Associates 61 Test-Driven Development (TDD) Test-First Development (TFD) is a technique where you write a single test and then you write just enough production code to fulfill that test. Refactoring is a technique where you make a simple change to your code/schema to improve its quality without changing its semantics. TDD = TFD + refactoring © Scott Ambler + Associates Twitter: @scottwambler 62 31
  • 34. 02/05/2013 Acceptance and Developer TDD Together © Scott Ambler + Associates 63 TDD Example • Story: – As a Student I want to order my official transcript online so that I can provide it to potential employers • Acceptance tests: • – Ensure the person is or has been a student – Ensure that the student are in good standing (all fees have been paid) – Ensure that the student has finished at least one course – Ensure that at least one valid ship to address is provided – … Unit tests for: Ensure the person is or has been a student – The student ID should be a nine-digit number – The last digit should be modulo 11 of the sum of the first 8 digits – One and only one student record should exist for the provided student ID – … © Scott Ambler + Associates Twitter: @scottwambler 64 32
  • 35. 02/05/2013 Agility at Scale © Scott Ambler + Associates 65 What Does it Mean to Scale Agile? http://disciplinedagiledelivery.wordpress.com/2013/03/15/sdcf/ © Scott Ambler + Associates Twitter: @scottwambler 66 33
  • 36. 02/05/2013 Large Teams Organizational options: • Feature teams: A subteam works on a feature from end to end. • Component teams: A subteam does all the work for a specific component. • Internal open source: A component is developed via open source techniques. © Scott Ambler + Associates 67 AMDD and Large Teams • • Larger teams are often a response to greater domain complexity, technical complexity, or cultural challenges Inception: – You will likely need to invest a bit more time exploring the initial requirements – You may need to take an “API First” or “Contract Model” approach to the architecture where you define the interface to components in detail early in the project – There will likely be a bit more initial specification • Construction: – Product Owners will need to coordinate requirement dependencies – Architecture Owners will need to coordinate technical dependencies – TDD may need to be enhanced with parallel independent testing © Scott Ambler + Associates Twitter: @scottwambler 68 34
  • 37. 02/05/2013 Geographically Distributed/Dispersed Teams © Scott Ambler + Associates 69 AMDD and Geographic Distribution • • Geographically distributed/dispersed teams are usually the result of large teams or organizational culture Inception: – You will likely need to invest a bit more time exploring the initial requirements – You will likely need to take an “API First” or “Contract Model” approach to the architecture where you define the interface to components in detail early in the project – There will likely be a bit more initial specification – Get key players together physically for Inception • Construction: – – – – – Dispersed members will need to coordinate with their co-workers regularly Product Owners will need to coordinate requirement dependencies Architecture Owners will need to coordinate technical dependencies TDD will likely need to be enhanced with parallel independent testing Get key players together for critical milestones © Scott Ambler + Associates Twitter: @scottwambler 70 35
  • 38. 02/05/2013 Thoughts on Compliance • Not all regulations are the same – Read and understand them • Distinguish between – Regulatory compliance which is legally required – Internal audit compliance (e.g. CMMI) which is self imposed • Compliance will be driven by the interpretation of the guidelines – If you leave interpretation to bureaucrats don’t be surprised if you end up with a bureaucratic strategy © Scott Ambler + Associates 71 AMDD and Compliance • Inception: – Invest time to understand the true implications of the regulations regarding specification, documentation, and traceability – The regulations MAY require more detailed requirements and architecture specification, some traceability, and some level of formality of validation of the specifications • Construction: – You may need to adopt more formal modeling and documentation tooling – You may need to keep all artifacts in sync throughout construction – You may need to invest in traceability activities, or better yet in activities and tooling that automatically result in sufficient traceability – TDD may need to be enhanced with parallel independent testing • Transition: – You may need to hold final reviews and sign-offs of key artifacts – You may need to generate final artifact manifests, traceability trees, and so on © Scott Ambler + Associates Twitter: @scottwambler 72 36
  • 39. 02/05/2013 © Scott Ambler + Associates 73 Modeling is an Important Aspect of Disciplined Agile Delivery • Disciplined agilists: – Invest some up-front time exploring the initial scope – Invest some up-front time identifying a viable technical strategy – Work closely with enterprise professionals, including enterprise architects and operations professionals, to ensure that what they’re producing is enterprise compliant – Tailor their approach to meet the context of the situation that they face – Model throughout construction in a just-in-time (JIT) manner – Document throughout construction because they realize that documentation is part of their overall deliverable – Work closely with their stakeholders whenever they can, not just with stakeholder proxies such as product owners © Scott Ambler + Associates Twitter: @scottwambler 74 37
  • 40. 02/05/2013 AMDD at the Enterprise/Program Level © Scott Ambler + Associates 75 Exercise: What Have You Learned? • Individually, on a sheet of paper, answer the following questions: – What three new things have you learned about modeling in general? – What three new things have you learned about how modeling occurs on an agile project? – What improvements in the way you approach modeling and documentation can you make on your current project team? – What still puzzles you? © Scott Ambler + Associates Twitter: @scottwambler 76 38
  • 41. 02/05/2013 A Disciplined Ending…. Please… – Take the opportunity to thank your teammates – we all learned together – Fill out the workshop evaluation form(s) – Turn in the evaluation(s) to the instructor © Scott Ambler + Associates 77 Got Discipline? DisciplinedAgileConsortium.org DisciplinedAgileDelivery.com ScottAmbler.com © Scott Ambler + Associates Twitter: @scottwambler 78 39
  • 42. 02/05/2013 Thank You! scott [at] scottambler.com @scottwambler AgileModeling.com AgileData.org Ambysoft.com DisciplinedAgileConsortium.org DisciplinedAgileDelivery.com ScottAmbler.com Disciplined Agile Delivery Disciplined Agile Delivery © Scott Ambler + Associates 79 Recommended Resources 80 © Scott Ambler + Associates Twitter: @scottwambler 40