Posts

Showing posts from July 1, 2012

Non-functional Requirements in Scrum

How should we handle reliability, availability, portability, scalability, usability, maintainability in Scrum product backlog? These are constraints which should be part of either the Tasks of a backlog item/user story or acceptance criteria. Example - Data migration projects where no business functionality/features are there we just need to create a utility which will migrate the data. For such requirement, we can create a user story which is to create the utlity which will allow me to handle the data migration and its tasks should have the constaints like  reliability, availability, portability, scalability, usability, maintainability.

Essence of Kanban

Kanban is just a device for a "pull system" to realize Just-In-Time . Just-In-Time can be paraphrased as "making and delivering what is needed, just when needed, and just in the amount needed." It aims at meeting a customers' need: "the best quality product at the lowest price as soon as possible." 

User story checklist...

Try the INVEST acronym. If you just google this, you should find a few links.  One should try to have Stories be:  Independent  Negotiable  Valuable  Estimatable  Small  Testable  Also, a popular format used is:  As a <Persona> I need <some functionality> so that <benefit>.  Acceptance criteria is critical to get before sprint planning as this removes any ambiguity of what has to be delivered and how it will be accepted. That is if you can prove the acceptance criteria (and your other DoD) then the product owner has to accept it. If suddenly a "Yes, but it doesn't do", the answer is simply "Not in the acceptance criteria, add this to the backlog and prioritise when it should be done" 

Where exactly DSDM fits in Agile world

DSDM originated in England, has become popular in Europe, and has a number of sites using the approach in the U.S. 1. Active user involvement is imperative. 2. DSDM teams must be empowered to make decisions. 3. The focus is on frequent delivery of products. 4. Fitness for business purpose is the essential criterion for acceptance of deliverables. 5. Iterative and incremental development is necessary to converge on an accurate business solution. 6. All changes during development are reversible. 7. Requirements are baselined at a high level. 8. Testing is integrated throughout the life cycle. 9. A collaborative and cooperative approach between all stakeholders is essential.