Posts

Faster development is not faster delivery

  Every chart went up except one The quarterly review opened with a slide everyone loved. Since the team adopted AI coding assistants in January, pull requests merged per week had gone from about 40 to over 110. Story points per sprint had nearly tripled. Someone in the room said "10x team" without irony. Karthik, our engineering manager, had the next slide. It showed what customers had actually received: one release every two weeks, the same as last year. Bit more features per release, give or take. Not 10x. The roadmap was still three months behind. Nobody had a good answer. The developers were clearly faster; I had watched a junior engineer build a full settings page, tests included, before lunch. So where was all that speed going? Karthik found me at the coffee machine afterwards. "You've been here longest," he said. "Have you seen this before?" I had. Many times. Just never this fast. Following one feature home I suggested we stop looking at dashb...

What is the cost of Agile project - Time

As a customer you need to spend lot of time during development with the team. Requirement from the customer Dedicated time for the project. Clarifications before it is late. Define requirement and participate in planning (assuming SCRUM model) Regularly participate and check the progress. Based on the working product define new requirement. Correct the developed product in regular intervals. This requires lot of time from the customer (product owner). Usually customer assigns a product owner who has other responsibilities. Project is secondary responsibility for this person. Time requirement for agile project will hamper the work of this person. Unless you have the commitment to see the project succeed do not go for Agile. When you have people who can decide on your behalf and they have the bandwidth to accommodate agile team's requirement only then project will succeed.

Power of Demo

How a demo can improve the quality of the product. It will not be significant if the demo is at end of project. But it will improve by leaps and bounds if it done every week or two weeks. A demonstration of application is show of confidence in the product. It requires courage to stand at the center stage and show the application to customer. You need to be 100% sure things are working fine when a demo is given. This brings in a discipline of delivering what is promised. Not to over commit on delivery. This itself is a huge achievement for a project. As a customer never hesitate to ask for a demo. If a demo is planned do not skip for any reason. If you skip it you are wasting your money. Other benefits of a demo are you know what is developed and how it works. You can correct the course of the project at this stage only. If you find few things not necessary you can scrap them right away than spending more money on them. Giving a demo requires some supporting work from the ...

Why agile is difficult

Agile development offers many benefits. Wherever it is followed it gives huge benefits. Still it is not used wide spread. There is lot of resistance for adapting agile. What are causing resistance? Courage: It requires courage to adapt agile. You are going to work in a environment full chaos (controlled chaos). You need to stand up for your work. You are responsible for the teams goal. You cannot escape by telling you did your part. Agile is a team work and you are responsible with the team. It is very scary for many people to describe their work. SCRUM flavor of agile has meetings every day to talk about what was done yesterday? What will be done today? and Issues to be resolved to achieve it. More than 70% in the industry cannot do this. Ego issues come into play. You are not safe till test team finds issue. You are exposed daily. But this very factor contributes to the success of the project. This brings the team closer. Non performers are forced to move out. Tea...

Agile in software services Industry

Any time you mention Agile you hear it is applicable in Product development. It is true agile is used more in product development. This might be due to the reason it is easy to follow agile in product development. It is also due to product development requires more agility to compete. Let us compare few aspects of product and an application (services). Product development Software Services Requirements It is in discovery. You start with an idea and develop it. Never frozen. To survive in market need to be two steps ahead of competition. Requirements are clearer. Before the service provider comes into picture customer spends lot of time defining the requirement. Quality High quality is desired. Buggy product is not liked by any customer. Support cost is part of product price in many cases. High quality is desired but not achieved. High quality costs more. Budget There is comparatively more money ...

Effort effort everywhere, but not a bit of working software

Image
“Water water everywhere but not a drop to drink”. This is a quote of ancient mariners. In most projects we see lot of effort being spent. Still there is no demo able software. Why is this happening? We are trying to use mass manufacturing techniques when the requirement is customized application. Software development is an art. Building usable software is not an easy task. Yes there are many software developers who code. But this does not result in usable software. There is a life cycle after the delivery where application takes shape. It is funny to see many times most used features are built as afterthought during enhancement. Let us see where is the waste in an application development? Life cycle of an application development: We spend lot of effort during these phases to maintain continuity. Typically there are some stages which can be avoided without big issues. Why to spend so much time in RFP and vendor selection. This can be avoided by selecting a vendor on the basis of quality...

SCRUM butt and local optimum

Image
Many projects do not become completely agile. They start by telling we will use SCRUM for this project. A small training is provided and team goes agile. There will be some benefits in the beginning and some short comings. But definitely project is not a huge success? What is going wrong? Trigger happy top management will pull the plug telling we tried agile and it is not working for us. When following SCRUM for the first time it is better to check whether SCRUM is followed to the full extent. As the old say it is the traditions which allowed humans to survive and evolve. It requires wise and old to tell what the tradition is. You can decide how to follow agile once you become expert on agile. How do you decide whether you are following agile to the full extent? Jeff Sutherland has developed a scoring system. This is called Nokia Test (or SRUMButt test). You can read more about this in Jeff Sutherland’s blog http://jeffsutherland.com/scrum/nokiatest.pdf . Most of the teams claiming to ...