Posts From This Author
About Our Authors
Modeling Methodologies
By William McKnight on May 25, 2010View Full Bio →
I’m very excited to be blogging here at the ERwin Expert Blogs and I look forward to creating a destination for noteworthy issues and musings on information architecture. Today, I am thinking about the methods and methodology used to bring together the data model. No, I’m not talking about dimensional versus normalized. That decision point deserves due consideration and is an important starting point for numerous data modeling architectural guiding principles. I see many organizations acting very inefficiently in their modeling methodology - their approach to building the data model.
In building up to the recommendations, I first offer several observations of the business climate surrounding modeling as a foundation.
- It’s a real-time business world where information is a key asset that must be properly nurtured
- Data modeling is no longer confined to the major operational and analytical systems
- Systems are being built and appended to on a very frequent basis
- Data modelers must start modeling for data that will not persist forever
- Information cannot be out of date and the business actions triggered from the evidence within data should trigger immediate action
- Architecture cannot be sacrificed for deadlines
- Deadlines cannot be sacrificed for architecture
On the one hand, there is the waterfall approach to modeling whereby full requirements are gathered up front, next comes design with all of the associated gatekeeping reviews and possibly even physical sign offs. Said model and associated development is then moved through unit testing, functional testing, performance testing, regression testing, end-to-end testing and possibly other types of testing that the program manager feels is necessary.
The plan with this approach is that the model will still hang together for the business need in the multi-months that have passed since requirements. It never does. Modeling is not linear. Modelers preferring this approach may get upset when reality intervenes and changes are required. It can be overheard that “management doesn’t know what they’re doing, they keep changing their mind.” Yes, “they” always will.
At the other extreme, where quick response is a must, policies and procedures may be unheard of. Whatever happens happens, as long as the business need is met in a perceived quick, but sometimes undocumented, timeframe. I’ll call this a methodology-less modeling environment.
Creativity is valued in these environments. Responsiveness is essential, since requirements for new tables, columns, relationships and calculations come in or are discovered irregularly over time, as opposed to up front. Often times, the model development does not resemble development at all, but active support of a production model that happens to be pre-production. The lack of controls in these environments can lead to poor development, a ton of trust in the data modelers – perhaps more than even the modelers would allow, and a very chaotic environment that can get the best of the best modeler.
In summary, the downside to the modeling extremes are:
|
Waterfall Approach to Modeling |
Methodology-less Approach to Modeling |
|
Analysis Paralysis |
Difficult to Validate ROI |
|
Excessive Bureaucratic Overhead & Cost |
Excessive Breakage and Rework |
|
Inflexibility |
Limited Interdepartmental Communications |
|
Stagnation |
Extended Work Hours for Employees |
|
Frustrated User Community |
Low Confidence Level with the User Community |
|
Excessive Interdepartmental Barriers and Boundaries |
High Stress Levels Among Modelers |
|
CYA becomes Prominent Attitude |
Over Commitment to the Business Community |
|
Poor Employee Retention and Motivation |
High Support Cost |
|
Lost Creativity, Ingenuity, and Enthusiasm |
Many Unknowns in Problem Resolution |
|
New Modeling Approaches Difficult to Deploy |
Little Time for Employee Development |
|
Extended Project Timelines |
|
Fast forward to the reality that mature, efficient data modeling operations end up at over time – Agile.
We’ve all heard of Agile by now. It’s what I use for modeling and overall project management whenever I get the chance. You have to have the right personnel to do it right, but it’s truly a balance of the above extremes. With Agile, modelers have guidance in the form of principles and milestone dates, but are also allowed the freedom to shift focus and do what it takes. There is a fair amount of guided prototyping with the users. The business is actually part of the extended development team in Agile modeling.
Agile modeling done right means:
- High Quality, Low Maintenance Models with Minimal Breakage
- Limited Rework
- Fewer Working Hours with more Productivity
- A Predictable Environment
- Resource Leveling (enough resources in the right places)
- On Time and On Budget Models
- Easier Justification Process and Business Approval of New Modeling Approaches
- More Opportunity for Career Path, Employee Development and Training
- Faster Problem Resolution with Calculated Predictive Research Actions
- Realistic Expectations Set at all Levels, Open Communications
Approach methodology is as important as the modeling style of dimensional or normalized. It’s every bit as important as architecture. Unlike the common impression that Agile sits at the chaotic extreme end of the spectrum, true Agile-based modeling is guided by methodology. It’s methodology that strikes the right balance between architecture and deadlines.
Follow all Expert Blog updates by subscribing to the
RSS feed.
About the Author
William functions as Strategist, Lead Enterprise Information Architect, and Program Manager for complex, high-volume full life-cycle implementations worldwide utilizing the disciplines of data warehousing, master data management, business intelligence, data quality and operational business intelligence.
Hi William -
Great to see you hear on the ERwin blogs.
You do a real service by correcting “the common impression that Agile sits at the chaotic extreme end of the spectrum.” I regularly meet people who believe that “agile” and “modeling” are mutually exclusive, but as you point out, the best agile environments seem to occupy the middle ground. They do enough forward looking modeling to be sure they don’t paint themselves into a corner, but don’t sweat the precision and details until it matters.
Nice job!
Alec
June 12, 2010
This is a great commentary on the tradeoffs that we go through as modelers and a helpful reminder to stay informed on the bigger issues that impact our modeling. We cannot operate in a vacuum outside of organizational issues. Nor should we operate without methodology, even if the organization does not demand it. I like the approach to Agile. It’s not the academic approach to Agile, but it sounds like it’s where modeling should start.





















May 27, 2010