One the participants from my last in-house course (at a bank) found that I was unfairly grouping the V-Model with “waterfall.” So let’s look at what is the difference between Scrum and the V-Model, see where the two come into conflict, and see where they can complement each other.
Update: It turns out this comparison is not as simple as I thought – there are actually two V-Models: a German government project management methodology, das V-Modell and much vaguer V Model that testers are familiar with. In researching this, I landed on the German government version, not realizing that there are really two versions of it. The following discussion is related to the German government model. Thanks to James Christie for pointing this out!
Scrum is a simple, team-based framework for solving complex problems. Its roots are in product development. It assumes that solving complex problems (like creating a software product or system) is a creative process, which by definition, cannot be defined in advance. This class of problems requires an empirical approach, with much interaction and feedback between the developers, users and stakeholders in the project. Therefore Scrum says nothing about how to do the work, but defines a few roles, rituals and artifacts to ensure effective communication.
The V-Modell is “designed as guidance for planning and executing development projects…. It defines the results to be achieved in a project and describes the actual approaches for developing these results. In addition the V-Modell specifies the responsibilities of each participant. Thus, the V-Modell describes in detail, ‘who’ has to do ‘what’ and ‘when’ within a project.”
A key feature of the V-Modell flow is the Decision Gate, which indicates “a milestone in the project sequence, where the current state of the project has to be evaluated. For every decision gate, the V-Modell defines a quantity of products which must be submitted in state Finished…”
So looking at these descriptions, I must say, V-Modell looks pretty Waterfall to me: a defined approach, with clearly defined phases and strong gatekeepers between the phases.
So philosophically, Scrum and the V-Modell are on different planets:
Scrum = empirical
V-Modell = defined
Often this phase based approach is reflected in the organizational structure. Requirements phase comes from Business, Implementation from Development, Test from QA, and Deployment from Operations. Each group of course has its own Vice President, which is helpful for the cooperation… not!
If they are so different, is there value in the V-Modell and how can a V-Modell practitioner so a future for himself in a Scrum managed environment? I’ll look at this question tomorrow.
Cookie | Duration | Description |
---|---|---|
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Cookie | Duration | Description |
---|---|---|
mailchimp_landing_site | 1 month | The cookie is set by MailChimp to record which page the user first visited. |
Cookie | Duration | Description |
---|---|---|
CONSENT | 2 years | YouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data. |
_ga | 2 years | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors. |
_gat_gtag_UA_42152348_1 | 1 minute | Set by Google to distinguish users. |
_gcl_au | 3 months | Provided by Google Tag Manager to experiment advertisement efficiency of websites using their services. |
_gid | 1 day | Installed by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously. |
Cookie | Duration | Description |
---|---|---|
NID | 6 months | NID cookie, set by Google, is used for advertising purposes; to limit the number of times the user sees an ad, to mute unwanted ads, and to measure the effectiveness of ads. |
test_cookie | 15 minutes | The test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies. |
VISITOR_INFO1_LIVE | 5 months 27 days | A cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface. |
YSC | session | YSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages. |
yt-remote-connected-devices | never | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
yt-remote-device-id | never | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
Cookie | Duration | Description |
---|---|---|
COMPASS | 1 hour | No description |
cookies.js | session | No description available. |
S | 1 hour | No description available. |
5 Comments
Sorry Peter, I have to disagree. The V Model can be implemented at each sprint or even sprint backlog item level can't it?
It would have been written in the context of a waterfall world, but it is a useful framework for thinking through the testability of requirements and development work.
Personally I think it aligns perfectly with many quality practices within the agile collective.
Hi Craig,
Yes, it can be implemented within a sprint. I have seen teams do exactly that. I have also seen many teams employ higher performing strategies.
I agree with you that many ideas of the V-Model are valid. You'll be able to read about that tomorrow.
Particularly if you add 'test first', i.e. define the test before you write the code, then it works much better.
So my hope is that V-Model trained professionals will recognize known valid principles in the agile approach and thereby become more willing to try out the new stuff.
Cheers,
Peter
Peter -one of the problems of the V Model is the way that it can mean different things to different people.
You are talking about the German government project management methodology, das V-Modell, which bears little resemblance to the much vaguer V Model that testers are familiar with. I don't think many people outside the German speaking countries are familiar with das V-Modell.
Unlike the exhaustive and rigorously defined V-Modell, the testing V Model is a loose concept. It can be useful in helping beginners think about the relationship between the requirements, coding and testing, but I believe that it is damaging if it encourages people to think that testing should be structured in the way that the V depicts.
I think that might explain the disagreement between Craig and yourself. I would agree with you that das V-Modell is rooted in the Waterfall, and I would agree with Craig that can be a useful, though superficial, concept for thinking about testing.
I wrote an article about the V Model that explained my concerns, and also highlighted the confusion caused by very different creatures having the same name. http://www.clarotesting.com/page11.htm
Excellent article James. Thanks for bringing it to my attention.
Hi James, thanks for pointing this out! I have updated this and the followup article to reflect this (for me) new information.
Thanks again!