Date post: | 31-Jul-2015 |
Category: |
Software |
Upload: | embarcadero-technologies |
View: | 143 times |
Download: | 0 times |
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
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.comand 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
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
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
Karen Lopez@DATACHICK
Jun 2015
www.datamodel.com 5
I love working on
Agile projects
It’s FRAGILE
projects I hate.
Karen Lopez@DATACHICK
Jun 2015
www.datamodel.com 6
Agile Manifesto
http://www.agilemanifesto.org/
Agile Principles
…readable copy coming next…
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
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?
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.
Karen Lopez@DATACHICK
Jun 2015
www.datamodel.com 10
https://www.scrumalliance.org/why-scrum
Agile/Scrum development project
Karen Lopez@DATACHICK
Jun 2015
www.datamodel.com 11
Typical “Fragile” Sprint
Sprint Planning
Backlog Stories
STA
RT
READING DEVELOPMENT DELIVER
EN
D
Where the heck is
our database?
WTH! Zone
$#*!
2-3 weeks
$#*!
Agile Data Modeling Workflow - Fix
Sprint Planning
Backlog Stories
STA
RT
READING DEVELOPMENT DELIVER
EN
D
Karen Lopez@DATACHICK
Jun 2015
www.datamodel.com 12
Agile DM Workflow– Fix it BetterSprint Planning
Backlog Stories
SA
RT
READING DEVELOPMENT
ST
AR
T
READING DEVELOPMENTDELIVE
R
EN
D
Sprint Planning
Backlog Stories
ST
AR
T
READING
Agile DM Workflow– Fix it BetterSprint Planning
Backlog Stories
SA
RT
READING DEVELOPMENT
ST
AR
T
READING DEVELOPMENTDELIVE
R
EN
D
Sprint Planning
Backlog Stories
ST
AR
T
READING
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
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
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 custADD custage Decimal(3,1) NOT NULL;
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
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
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
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.
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
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