Agile Estimation? The Story of Kano Model

Kano Model

This article will cover you the basic uderstanding about the Kano Model. Kano from the name of Dr. Kano, is a quality mode or estimation model based on the user requirements. Model Kano works suitable with CTQ (Critical to Quality) characteristics. CTQ will remember you what the Agile principles said “YAGNI” – You aren’t gonna need it. YAGNIS is a principle when we want to develop a software feature for the tomorrow requirement without the need from the user. CTQ has three categories

  • Must be / Essentialy Needed / Basic
  • Deliver Performances / Business Value / Performance
  • Delighter / Nice to Have / Excitement

Please beware that the priority is different than story points on a user story. it justifies a feature based on priority. Some peoples also use M-L-E-I-R-Q model (please the reference for more information about this). it gives you a wide selection of priority and it will be great if you use questioner for this approach, whereas the three categories above is great when it is implemented for observation or interview.

Quick Steps on Agile Estimation

  • Choosing the right model of requirements approaches (interview, observation, or questioner).
  • Choosing the right model for priority model (Kano, MOSCOW, simple numeric, etc)
  • Sort out the story based on its priority
  • Give the story its story points.
  • Measuring the release length and iteration length.
  • Filling the user story into the iteration release. you can put the story based on several technique such as normalism techniques (gaussian), important thing first, or equality technique

Example

For example, I have questionere the potential users. and use KANO model with M-L-E-I-R-Q. I got

3 story M, L, E

7 story I

3 story R, and Q

Let’s make it simple, if M, L, and E category has 20 story points so that I have 60 points (3 x 20), if I story has 10 points therefore I will have 70 points (7 x 10), and if R & Q has 5 points, I will have 15 points (5 x 3). It has 95 points.

If my team has velocity of 30 story points, and the contract is based on cost scope on two months. Therefore it will have only 60 story points / realease. It shows that the project doesn’t cover the 35 points (95 – 60 points). It means you should select only 40 points from the I classification feature.

In order to select the I features, you should re-priotize or do others requirements process to sort the I features based on the user need. You should remove 30 points and pick only 40 points from release plan

References

Development Activities on Visual Studio Online

After estimating and planning, it is time to develop the software. Visual Studio Online provides you a set of tools to improve the team collaboration. This article will cover several features that van be used for collaborate, codes, and test.

Collaborate

Visual Studio Online provides the team room. Team room is a IM based model that not only provide IM features but also track and audits the codes and checks in. You can read the description of this feature here “Collaborate your Team with Team room on Visual Studio Online”

Links to additional team rooms on Rooms page

 

 

 

 

 

Codes Review

Pair programming on ALM minimalist can be done through the feature of Visual Studio such as codes review. Codes review is a way to implement manual code quality review through Visual Studio. Please read “Code Review on Visual Studio”

Submit request button on the filled out new code review page in the team explorer

 

 

 

 

 

 

 

 

 

 

 

Unit Test

Unit test is “strange” but usefull. You might be hear test driven development (TTD).  TTD is a way when developer create a test first and after that create the codes. You will remember the concept of test first design. In Visual Studio Online, the developer can easily create unit test and run it just like before. You can read this article “Creating Unit Test On Visual Studio Online”

Unit test project template

 

 

 

 

 

 

 

 

 

 

 

Get Feedback to the Stakeholder

After an iteartion of a project. It will be good idea to request a feedback from the stakeholder. ALthough, you can send an email and tell them to test it. Visual Studio Online through Microsoft Feedback system can get more detail on the feature feedback from the stakeholder. You can read “Get feedback from your customer”:

Start the feedback session

 

 

 

 

 

 

 

 

 

 

Automated Build

On traditional development, you might build the codes before the codes is commited. On Visual Studio Online, the build will be automatically done when the user checked in. You can to automatic build by reading this “Build Check In”

Go to builds page

 

 

 

 

 

 

 

 

Creating Test Plan

There are several resrung that can be done in Visual Studio Online. You can read the how to create test plan on Visual Studio Online.

  • Test Case. small unit of test
  • Test Plan, several test case that combined into a scenario or features.
  • Test Suite, is a combination of test plan and others test that can be happen outside the Visual Studio.

New button in the test plan explorer pane and then choose requirement-based suite

 

 

 

 

 

 

 

 

 

 

Good Book To Read

Estimating The Project on ALM MInimalist

image

If customer ask you how long this project will take? or how the software will be deliveres. The ALM Minimalisr provides you several ways to estimate the project.

In Visual Studio Online, you can do that by filling the story point on the stories or tasks. This article will cover you several ways to estimathe the project using Agile and ALM Minimalist

Story Points

Story point is the default way to estimate the project. Story point is specific and subsjective based on the team. Story points is not related directly with the time but it’s related directly with the effort. it estimated by the developer.

Story Point = Effort

On a release, each iteration should have same numbers of story points

Triangulation

Estimating by relating between stories. For example, we have two stories. One story has 4 points, and the others has 6 points. If the third story is larger than story one and smaller than story two it might be 5 points.

Theme and Epic

Here are the simple way to understand

Theme = simple stories that can be combined

Epic = a huge stories that should be separated

Theme and epis is a cacual way when you heard that the user story is to large for example story A has 20 points, if we separated into 5 stories, the total sum should be 20’

Planning Poker

Estimating the stories by discussing with the client and the developer. Planning poker discuss the stories length by using a short workshop and poker game model.

Good Book to Read

Contract on ALM MInimalist

image

Contract is something common that happen on a project. Ideally contract will cover resources, budget, and time constraint. It covers the features, the time, and the budget is needed. Contract is fragile on a project. Sometime, client want a new feature, a team has limitation to solve problem, or even client can pay the cost on time.

On ALM minimalist there are two type of contract which are

  • Optional Scope. Optional scope means the scope will flexible with fixed developer resources and fixed developer time 
  • Cost Scope. Cost scope means the scope will fix on cost and time. This contract will good for a specific deliverable date and fix time but flexible resources.

The contract should be prepared on initial planning before the iteration. It covers several points such as

  • Project background. The background problem of project (Why)
  • Mission Statement. It should clear show what to do on the project. It inspires to stakeholder and inspires a framework to make decission making. (What)
  • Methaphor. It should show a simple analogy of the project features. (How with ‘Simplicity’ on mind)
  • The time boxed. The time needed to implement the features. (When)

On DSDM (Dynamic Software Development Model) the good way to validate contract with customer is through a term called Blitz Planning. Blitz Planning is rapid planning to propose the non technical aspect of the project like Resources, Budget, and Time

Good Book to Read

Understanding Features, Stories, and Tasks on Visual Studio Online

When developing a software, you might think what is the better way to acquire the requirements. If you learn software engineering you might be remember about software requirements or requirement engineering. It is a long journey to learn about requirement engineering. You should read a lot documentation, create requierement template for your client, filling the document and discuss within the client. If you have done already you might be agreed that sometimes the 30 pages requirement page won’t satisfies the client if they change they mind. You put a lot of effort to create the req’ document but in the end is useless when client changes his mind. In this article, I will share you about what you need to know to create better requirement based on my thought on ALM (Application Lifecycle Management) minimalist. Please note, that ALM minimalist is not a formal method like waterfall, but is an Agile technique that simplify the ALM. If you akready use the Visual Studio Online, you might be familiar with Features, Stories, and Tasks on the Work Tab as shown in figure below.

image

In the picture we have features, stories, and tasks. We will describe it in this post each element of that to make your requirement simpler and adapt to change.

Starting with Features.

If you ever read a good book about FDD (Feature Driven Development), you might be remember about features. Feature is the unit of the “things that it wants by the customer’. In the ALM Minimalist, feature is simple statement that explicit the client need.

image

On the Visual Studio Online, you can add features by clicking the work tab and click the new button. Here are several sample of feature

 

image

 

 

 

 

 

 

The simple patterns of Feature is

Features = Action + Object

Feature should also provides additional information such as

  • Who owns the feature. it means who will responsible with that feature
  • The prioriy of the feature (1 for high priority, 3 for less priority)
  • The iteration when the feature will be develop.

In Visual Studio Online, you will get a lot filed to fill by clicking the feature. However, ALM minimalist encourages you to keep it simple by avoiding fields

Exploring Features into Stories

So you have features, you can break down into stories. For example, if we have a feature called “Managing The Payment of a Course” you might have several stories such as

  • Paying the course using wire transfer
  • Paying the course using credit card
  • Paying the course using invoice from company

As you see, story explains the feature more detail based on several constraint and condition based on customer needs. On Agile book such as eXtreme Programming Explained or others, you will find that the user story has a pattern like below

User Story = as a (actor) I want to (action) so that (benefit)

for example: as a member I want to pay the course by credit card so that I can join the online course right away

In Visual Studio Online, you can do that easily by clicking the stories menu. However, if you feel too complex when writing the formula, you can follow the simple statement such as “Paying the course using credit card”. You can make the story unambigous by adding several information such as

  • Work assigned to (Story Owner). it covers who will do the story 
  • Risk (1 high - 3 low)
  • Story Point. Story point is number of estimation that will be done through planning game session
  • Description. It shows the detail of the story. It is just like usage scenario of the story that described using words
  • Storyboard. It shows the flow of the story and the user interface. it uses Powerpoint to create the storyboard
  • Iteration. The iteration shows when the story will be worked by the story owner,

Story is a part of feature. Therefore, you can see the story below of a feature on Visual Studio. In the Figure, it is shown that the story name is ‘simple statement’ about the story, and the desriptions uses the “user story format”. You can add the additional information such as data field and detail information on a storyboard

image

Doing the user story action on a task

Task is the lowest unit of the work. Task is assigned to an agile member. Task represents the detail of user story. For example if I have story “see the student list”, I might be have 2 tasks such as showing the student list that already paid the course, showing the student that not already paid. If I have 20 story point, each task should be have not more than 20 point. Task is not only about the activity that contains development activity but also others activity such as design, requirements, deployment, and etc.

Fortunately, in Visual Studio Online you can create task and assign them with several field such as figure below

image

 

Conclusion

ALM Minimalist is an agile technique that has a purpose to simplify the requirements engineering activity. it proposes the three main components which are Feature, Story, and Tasks (FST). The FST can be adopted easily on Visual Studio Online using Agile MSF template. 

Good Book to Read

ALM minimalist, an Agile way to Stay Agile

image

My teammate feel not really satisfied with the ALM features on VIsual Studio 2013. It is great, but lack of simplicity for small to medium project. After using Visual Studio for almost than 15 years, I agree that ALM is a good feature, but not as for startup who still fighting with the client changes and codes horror. Of you already subscribe to visualstudio.com and feel that you still

  • focusing on the codes or API usage.
  • focusing on the collaboration between client and you in terms of changes control.
  • focusing on planning schedule rather than thinking the burndown chart.

If you feel like the situation above is same with your team. This article is for you, this article will show you how to minimize the usage some of redundant TFS features on small and mediim project. This practices is already done on more tha five projects that run on two till six months. We call this practice as ALM minimalist. The ALM minimalist purpose is to

  • Empower the client and your team through multimodal communication
  • Empower the team to focus on creating quality codes by adopting eXtreme Programming practices
  • Empower the coach / project manager to minimize the changes and to get better revenue on a project.

With the three purposes of ALM Minimalist. the practice needs several subscriptions for your team which are

After you subscribe both services, we will discuss how to utilize the services for ALM activities, see you in the next post.

cheers,

@ridife

Document Collaboration with Asus Web Storage

image

 

 

 

Nowadays, If you want to search a new document collaboration software or you want to separate your work document with the personal document or club document, you have a lot alternative. One of the good alternative is Asus Web Storage. Although the space is relatively small (5 GB for free), you can put your document for free and collaborate effectively. Here are the benefit of Asus WebStorage

  • Available on any platform
  • Efficient sync model (fast upload and fast download)
  • Collaboration support
  • Internet printing support with 7-eleven printing services
  • Tiny foot print for synchronization services
  • Work fast for mobile platform like Android, Windows Phone, and IOS.

However, here are the limitation of Asus Web Storage

  • Dull experience on web storage
  • Lack of multimedia features on web storage site
  • Limited space only 5 GB for free account

Therefore, Asus Web Storage is great for

  • Document sharing with the team or your blog 
  • data backup and recovery plan
  • Mobile storage to keep sync between multiple devices
  • Uploading your personal collection to bit cast it using MyBitCast application
  • The asus device owner to get free or discounted storage

You can register the asus web storage here for free

image

MTA Windows Server Administration Certification Guide

This certification guide will cover several windows server adminsitration fundamental that discussed on Microsoft Technology Associate certification such as

  • Understanding installation and device requirements for Windows Server
  • Understanding Server role on Windows Server
  • Understaning Active Directory
  • Understanding Storage Mechanism on Windows Server 
  • Understanding Server Management

The guide itself is on PDF and can be downloaded by clicking the link below. This contents is owned by Microsoft and translated by Microsoft Innovation Center for community purpose

image

MTA Network Security Certification Guide

This certification guide will cover several network security fundamental that discussed on Microsoft Technology Associate certification such as

  • Understanding security layers
  • Understanding security on an operating system
  • Understanding security technique like Encryption
  • Understanding Security features like NAP, Firewall, and DMZ

The guide itself is on PDF and can be downloaded by clicking the link below. This contents is owned by Microsoft and translated by Microsoft Innovation Center for community purpose

image

MTA Network Fundamental Certification Guide

This certification guide will cover several network fundamental that discussed on Microsoft Technology Associate such as

  • Understaning network concept
  • Understanding network topology and model
  • Understanding Switch and Router
  • Understanding network media
  • Understanding OSI & TCP/IP
  • Understanding IPv4 and IPv6
  • Understanding naming resolution and dns

The guide itself is on PDF and can be downloaded by clicking the link below. This contents is owned by Microsoft and translated by Microsoft Innovation Center for community purpose

image

Translate It

About @ridife

This blog will be dedicated to integrate a knowledge between academic and industry need in Application Lifecycle Management (ALM), ICT tips, and Software Engineering Research. Enjoy this blog and let's get in touch in any social media.

My status

Xbox

Month List