Skip to main content

Software in Kilograms

Software is by far different than tomatoes!

Software development depends heavily on the following factors:SWinKilos

  • Requirements clarity
  • Business complexity
  • Client maturity
  • Team understanding for the requirements
  • Team experience
  • Team productivity
  • People mood
  • Technology
  • Aiding tools availability
  • Company processes and strategy

Any of these factors or the combination of these factors can heavily impact the project and its estimate. I am not saying that we cannot estimate projects, I am saying that we cannot estimate accurately, and even if the estimate is accurate, given other circumstances, the same estimate may not be accurate.

The major difference between Software and other merchandises is that Software cannot really be measured. There were and are many efforts and theories trying to quantify Software and measure it, yet there is nothing accurate. Software can be measured by complexity, lines of code, effort, features, points… too many theories and models, yet none of them suggested measuring Software in Kilograms!

Grocery Model

Given the fact that no 2 developers with the same skill set and years of experience can develop the exact same application using the same requirements, clients don’t trust/believe the time and cost plans vendors provide for their projects and they always bargain these plans and push on vendors to reduce the cost and shorten the time duration whether it is acceptable and achievable or not.

Clients bargain as if they are at the grocer’s choosing tomatoes for dinner! They bargain as if they understand how Software is made. Unfortunately, many PMs allow their clients to behave in such a shaming manner and also encourage them to do so by the unethical tricks they use to manage projects and clients. Some PMs abuse their clients and use the intangibility of Software as a double edge weapon which the client can also use to fire back on vendors.

These PMs introduced the Grocery Model in the field of Software Development. The model is simple in definition, and at the same time very difficult to apply. The model totally depends on the bargaining power and negotiation skills, it has nothing to do with actual Software Development, processes or the proposed effort and cost.

The Grocery Model is driving the Software field into an abyss of no creativity and no serious work. This model empowers the Hit & Run concept and destroys vendors differentiators, reputation, and long term relationships where all parties benefit from the work done and produce good Software.

Comments

Popular posts from this blog

The Triangle of Tactics

Sometimes referred to as the Triangle of Horror… where the PM tries his best to maintain his balance while walking on the very thin project rope between this triangle and the Project Constraints Triangle (time, cost & scope). The triangle sides represent: The Team, The Client and The Management Every side of this triangle is obsessed by the sole idea that the other two sides want him dead, i.e. the team thinks that the client and the top management want him dead and vice versa. Usually a good PM gets lost while trying to maintain this triangle in good shape to keep all parties satisfied and happy while making them think they are his first and only priority to get out what is needed from them for the sake of the project. From my perspective, this is a much harder balance to keep rather than maintaining and managing the Project Constraints Triangle… It highly depends on people, their culture, maturity level, and on the PM’s ability to understand this and deal with it in a ...

The Bus Driver

They took some time to plan for the trip… They drew the road map, bought some food and beverages… and got equipped with the necessary tools… They were going to travel through the woods to draw the magnificent scenes which were observed by their neighbors early this year… This wasn’t their first trip together as a team, though they were all excited… The bus driver was in charge for making the big decision in the trip while taking care of the travellers’ team while of course driving the bus and communicating daily with his supervisor in the station. The map was clear, the weather was very well studied, though the bus driver expected to pass by some pitfalls in the road as there were some reparation in the way. He reported this to his supervisor and requested to take some more supplies just in case they have to camp one or two days more, but the supervisor refused “ the trip has to be completed on time and the painting should be ready for sale by the end of the week ” Anyways, ...

RPM Technique

I once used a very weird technique with my team to get things done in a short duration in a project that was very far away from being on schedule… For a while I’ve been asking my team for their progress, following up heavily and on daily basis, staying late with them in the office and sometimes staying till the next morning (online from home), trying to dig deeper by developing and testing with them…. And still we were very late in achieving any of our internal milestones… By time, I was empathizing them and I was trying my best to reduce the effect of the pressure under which they were put for a long time. We started a weekly game competition with some funny yet work-related rules, amongst which was “ each member in a sub-team should finish his work before the day of the competition ”… it went fine for about 3 weeks, then the situation became worse… and we all stopped participating in the competition… I then tried another technique… I started buying them either lunch or dinner in ...