Are you working on agile development projects? Is your organization considering it? Have you been left off agile projects because your developers think you will just be in the way of progress? Do you understand the difference between agile data modeling and fragile data modeling? Do you know how to successfully fit data modeling deliverables into agile workflows?
With the emergence of agile development workflows in database environments, the need for modeling in highly-iterative, process-light approaches is important. In this webinar, you will learn:
+ How to position data models (hint: they are not “documentation”)
+ How to prepare your data modeling technical environment to support fast iterations
+ How to collaborate with agile teammates in a way that they can benefit from existing data model resources
+ How to demonstrate the value of data models to your agile teams
Join Karen Lopez and Rob Loranger as they discuss and demonstrate ways to work with highly iterative, sprint-focused work on agile development projects.
Learn more about data modeling with ER/Studio: http;//www.embarcadero.com/products/er-studio
Try ER/Studio free:
http://www.embarcadero.com/data-modeling/try-er-studio-enterprise-usca
1. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 1
Karen Lopez @datachick #TEAMDATA
Agile or Fragile?
How Successful is your Data Modeling Workflow?
Yes, Please do Tweet/Share today’s event
@datachick
@ERStudio
2. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 2
Karen López
Karen has 20+ years of data and information architecture
experience on large, multi-project programs.
She is a frequent speaker on data modeling, data-driven
methodologies and pattern data models.
She blogs at community.embarcadero.com, datamodel.com
and Dataversity.net
She wants you to love your data.
Rob Loranger
Rob Loranger is an Embarcadero Product Manager for the ER/Studio
product family.
Prior to his current role, Rob was a Sr. Software Consultant, and for
more than 9 years he has been one of Embarcadero's leading experts
for its database development, management, and architecture
software.
He blogs at community.embarcadero.com
3. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 3
Logistics…
Use Q&A for formal
questions – ask at any
time
Slides will be
distributed after event
Continue the
conversation on
Twitter
There’s more to
come…
Plan for Today
What is Agile, SCRUM, others?
Where does data modeling fit in Agile?
Ensuring your data modeling workflow works
DEMO!
10 Tips for making Agile not Fragile Data Modeling
4. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 4
Your take-aways today…
How to position data models (hint: they
are not “documentation”)
How to prepare your data modeling
technical environment to support fast
iterations
How to collaborate with agile teammates
in a way that they can benefit from
existing data model resources
How to demonstrate the value of data
models to your agile teams
Agile Methods
What are they? What else are they?
Plus at little bit of SCRUM
7. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 7
Principles Behind the Agile Manifesto
• Our highest priority is to satisfy the
customer through early and
continuous delivery of valuable
software.
• Welcome changing requirements,
even late in development. Agile
processes harness change for the
customer's competitive advantage.
• Deliver working software frequently,
from a couple of weeks to a couple
of months, with preference to the
shorter timescale.
• Business people and developers must
work together daily throughout the
project.
• Build projects around motivated
individuals. Give them the
environment and support they
need, and trust them to get the job
done.
• The most efficient and effective
method of conveying information to
and within a development team is
face-to-face conversation.
Emphasis Karen
Principles Behind the Agile Manifesto
• Working software is the primary
measure of progress.
• Agile processes promote sustainable
development. The sponsors,
developers, and users should be
able to maintain a constant pace
indefinitely.
• Continuous attention to technical
excellence and good design enhances
agility.
• Simplicity--the art of maximizing the
amount of work not done--is essential.
• The best architectures, requirements,
and designs emerge from self-
organizing teams.
• At regular intervals, the team reflects
on how to become more effective,
then tunes and adjusts its behavior
accordingly.
Emphasis Karen
8. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 8
Manifesto for Agile Software
Development
Agile “Extensions”…
Everyone is a generalist
Agile Blocking
Excluded titles
• Administrators
• Architects
• Managers
Test Driven Development
No BMUF/BDUF
Paired programming
Did I say Blocking?
9. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 9
Agile Blocking
The blockers effectively implement a “process façade” around your team that
makes it appear to the rest of the organization that your team is following
their existing procedures. This satisfies the bureaucrats, yet prevents them
from meddling with the people that are doing the real work. Although it
sounds like a wasted overhead, and it is because it would be far more
effective to divert both the blockers and bureaucrats to efforts that produce
something of value, the advantage is that it enables the rest of the team to
get the job done.
The role of blocker is often taken on by your team’s project manager or
coach, although in the past I have let this be a revolving role on the project so
as to spread out the pain of dealing with the paper pushers.
- http://www.agiledata.org/essays/adopting.html
Scrum Values
Focus
• Because we focus on only a few things
at a time, we work well together and
produce excellent work. We deliver
valuable items sooner.
Courage
• Because we work as a team, we feel
supported and have more resources at
our disposal. This gives us the courage
to undertake greater challenges.
Commitment
• Because we have great control over our own destiny,
we are more committed to success.
Respect
• As we work together, sharing successes and failures,
we come to respect each other and to help each
other become worthy of respect.
Openness
• As we work together, we express how we're doing,
what's in our way, and our concerns so they can be
addressed.- https://www.scrumalliance.org/why-scrum/core-scrum-values-roles
All work performed in Scrum needs a set of values as the
foundation for the team's processes and interactions.
And by embracing these five values, the team makes
them even more instrumental to its health and success.
11. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 11
Typical “Fragile” Sprint
Sprint Planning
Backlog Stories
START
READING DEVELOPMENT DELIVER
END
Where the heck is
our database?
WTH! Zone
$#*!
2-3 weeks
$#*!
Agile Data Modeling Workflow - Fix
Sprint Planning
Backlog Stories
START
READING DEVELOPMENT DELIVER
END
12. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 12
Agile DM Workflow– Fix it Better
Sprint Planning
Backlog Stories
SART
READING DEVELOPMENT
START
READING DEVELOPMENT
DELIVE
R
END
Sprint Planning
Backlog Stories
START
READING
Agile DM Workflow– Fix it Better
Sprint Planning
Backlog Stories
SART
READING DEVELOPMENT
START
READING DEVELOPMENT
DELIVE
R
END
Sprint Planning
Backlog Stories
START
READING
13. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 13
Agile Data Workflow
Data modelers must be part of
• Spring planning
• Access to users
• Story creation
Data models should be part of stories
Existing data models are key inputs
Data models are not just documentation
Iterative Data Modeling
14. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 14
Why fragile data modeling?
Most people have
never seen
productive,
iterative,
responsive,
flexible data
model driven
database
development
Agile Data Model Iterations
Iterations
are
awesome…
…Except for
those that
are
iterated
upon.
Don’t make
gratuitous
changes
Collaborate
on changes
that do
need to be
made
Plan for
delivering
the change.
Data Modeling Perfection is your Enemy here
15. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 15
Characteristics of Iterative Data Modeling
Full DDL
Alter DDLDM Changes
Compare
• Full DDL
• Compare & Merge
• Alter DDL
• Extended Alter DDL
Rapid DDL generation
• Working Closely with DBA
• Working Closely with Devs
Physical Data Modeling
• Test Data
• Reference Data
Data Generation
AntiPattern Iterative Data Modeling
Full DDL
• Full DDL
• Developers Manage Database for Rest
of Project
One Time DDL generation
• Done by Developers
• Secured and Tuned by DBA, if possible
Physical Data Modeling
• Individual Devs Generate Own Test
Data
• Reference Data an Afterthought
Data Generation
ALTER TABLE cust
ADD custage
Decimal(3,1) NOT NULL;
16. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 16
Characteristics of Agile Data Modeling
Full DDL
Alter DDLDM Changes
Compare
• DDL & Scripts
• Compare & Merge
• Versioning
Change Management
• Use the same System
• Integrate with Data Model
Issue Management
Traceability to Issue Management
Use what your team uses
• Tools
• Processes, adapted for data models
• Linkages between data model and
issues
Log data model issues, too
17. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 17
Preparing for Iterative Data Modeling
Test / Dev Database environment
Database Client tools/drivers
Skills and knowledge to quickly RE, Compare, and FE databases
Access to Dev, QA and other environments
Set up for dev tools and processes
Demo Time!
Agile not Fragile Data Modeling
18. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 18
The “D” word
Documentation can be
generated out of the
model
Don’t focus on
documentation
preparation
Automation is your
friend
Always use
“Model”
Never call it
“Documentation”
Enterprise Projects are Integration Projects
19. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 19
Generalists aren’t strong on Enterprise Data
Data models are just
enough documentation, if
done by professionals.
Use data professionals
who know where it is,
how to use it.
Build better databases
with existing data models
Build faster
with existing
data models
10 Tips for Agile not Fragile Data Modelers
1.Stop using the word Documentation when talking
about data models
2.Get Scrum training. Get certified even.
3.Prepare your Agile Data Modeling environment
4.Learn, practice and test your Data Model
iterations processes and standards.
5.Learn to automate as much as possible.
20. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 20
10 Tips for Data Modelers
6. Get data models and DDL tasks moved sprints ahead.
At least 2 sprints ahead.
7. Don’t get pushed into sprinting a marathon
8. Don’t back off from Agile teams, even if they are
hostile to data modeling…or modelers.
9. Don’t be a roadblock. Get ahead of the sprints.
10.Use the same processes for issue and change
management as the team uses.
Community
community.embarcadero.com
21. Karen Lopez
@DATACHICK
Jun 2015
www.datamodel.com 21
Plan for Today
What is Agile, SCRUM, others?
Where does data modeling fit in Agile?
Ensuring your data modeling workflow works
DEMO!
10 Tips for making Agile not Fragile Data Modeling
Thank you, you were great.
Let’s do this again some time!
Karen Lopez @datachick
Rob Loranger