Gallery

Debate Settled – 9 women can deliver a baby in 1 month

“More people” equates to “less time” for the same amount of job, right? When we search for “9 women can deliver a baby in 1 month” in google, it usually brings back results which suggests every “Project Manager” thinks like that in the world of software development. Here’s the proof:

 

I disagree on the fact that “every” PM is like that. Anyway, this article is not about a PM though. It’s about anyone who thinks and act the same way as it highlights in the joke. This joke has another dark side which suggests it’s easier for “any person” to think the same.

Let me be the devil’s advocate for a moment and prove that it is in fact possible but isPointless !

Biology as an Analogy

A baby stays in the mother’s womb on an average 9 months, before being officially “born” (natural birth as an example). Dad’s sperm invades mum’s ovule after competing with a million of inferior competitors. Survival of the fittest. It forms an embryo and begins a new life in a state which technically should be known as the moment of birth.

Imagine a Sci-Fi Movie “1 Month Baby”

Goal – Deliver the baby in 1 month

Hmm.. we have only 1 month to make this work and modify the human anatomy so it can produce each limb/body part of a baby separately on 9 wombs.

9 parts are (for simplicity) – Head (1), Hands(2), Legs (2), Chest compartment plus Respiratory organs (1), Spine and back (1), Buttocks (1) and reproductive organ (1) which decides if it’s a boy or a girl. 9 woman volunteers are chosen to make this happen.

To support this, each woman is specialised to deliver a particular organ/part effectively in the given deadline. The incubation period starts off well, everything is hunky dory. It’s a movie so there has to be a twist isn’t it? One unfortunate day, one of them got hit by a truck. Laying in the hospital bed she is not thinking about her own broken spine, she is thinking about the damage to the “head” inside her. Although it’s not a whole baby, it still is a baby for the mother.

Now the plan was to synchronise and deliver all parts on a single date, so we can eventually get a fully grown baby. The accident damaged the head and is not fit for purpose anymore. So the baby will never have a head, which is in fact the most important bit. So basically after a month there are 2 options –

  1. Let the baby live without a head
  2. Declare failure and blame the mother for getting hit by a truck

On top of that, questions will be raised on “Ethical” subjects –

  1. Who gets the baby after all this? Who will be called as the mother?
  2. To do this, don’t we need 9 specialised “Men” as well. So who will be the father?

FFS.. this is getting out of hands, lets plan a sequel to cover that subject later !

Back to Reality !

Question: Have the medical science managed to find a solution like that yet, in real world?

Answer: Not yet, phew ! But we are humans. We are good at breaking nature’s law for our selfish lives. We may one day able to do it in the name of “best breed” of babies. After all, human are playing the new god.

I believe, we should just iterate over each stages of development, on the same baby. It’s only natural.

 

Do you have a better option under your sleeves? Let’s explore it then, shall we?

Leave a comment !

Gallery

WWWA – #3 Experience of Customer Service is Mandatory to get Agile

WWWA = What’s Wrong With Agile

Hope you had (is having) a great long Easter Holiday with your family. Back to reality.

A quick recap to the goal of this series, which will stay same on every following article – to make some space in our brains for this to stay in:

 

#1 – Agile is widespread, the Agile Manifesto isn’t

#2 – Harsh critics of Waterfall or Agile (or Bacon) are Awful Researchers

#3 – Experience in a Customer Service role is mandatory to understand Agile

Agile is still very much a software development philosophy that we are trying to adopt, mostly due to the fact that it was born within it. Although it applies to any product development as we already know. The candidates who wants to know more about Agile are somehow connected to a career around software development. That’s the biggest blocker in establishing a company wide Agile mindset as it is not considered suitable for everything else. But to understand Agile, we need that consumer focused environment on areas other than software.

 

People – We tend to avoid the term “Resource”. It’s disrespectful to call someone that. Semantics may seem irrelevant at times but are way more important than you think in this context. If you are letting someone call you a resource, you are equally responsible to what comes after. This “People” aspect is what makes it necessary to understand your consumers and get experience on how to serve them. Yes, you “serve” them by not following all instructions they tell you to do. You stay focused on delivering a good customer service.

Serve as a Doctor and not as a Servant.

Before we go deeper in the subject, we need to explore a key aspect of our surrounding culture, the people.

Personas surrounding Software Development and Agile et al

The Hard Workers

Future aspirations includes but not limited to moving on to a managerial/leadership role.

A typical software development professional get where they are by taking the formal route: the learning phase such as BSc, MSc, PhD or similar. Building a software is a knowledge work right? It require investment of multiple years of hard work trying to sharpen those specific skills that helps in doing the technical bit of software development. After all that technical bit is the “actual work” isn’t it?

For MBA (or similar) graduates it’s the non-technical bit that matters the most and ofcourse it’s much better than the the low level work carried out by the technical “Resources” isn’t it?

They all start off with a theory they have (or given) and aim to apply it in practice as a career on their respective fields. “Freshers” are therefore more comfortable in a controlled environment as that’s what their environment was during the learning phase. That’s what they have been taught and that’s what they have been asked to write on exams. Unless they won’t get a ‘Distinction’ required to be placed in an organisation providing “Internship”. They are usually behind (module wise) when compared to the real world.

The Vampires

Future aspirations includes moving up on the ladder to a role requiring Technical Excellence

These are the over enthusiastic kind – the non-academics who excel in every aspect without a formal education. These borderline vampires were busy being that nerd who hates direct sunlight or something. No, it wasn’t me. These form a majority of extremely good developers we see around us today, simply because it’s their passion. Most probably then don’t even consider work life as a separate part from their personal life, which is not necessarily a bad thing (up for a debate).

Road to Customer Service

During these learning phases very few “lucky” academics and non-academics above work (or got a chance to work) in a consumer facing environment e.g. sales, retail, call center or a restaurant. You will find out soon why they are lucky. How do we expect the majority of these candidates to learn what “feedback” means? How do we propose they learn about making a “end user happy” while staying in the boundaries and policies of their controlled environment? How can they possibly know what it takes to be “fair” and honest when they themselves are confused? The dissertation which some are proud of becomes a small book and doesn’t help, again, in a controlled environment with set rules.

Unless a customer looking straight to their eyes and say “You know what, let me speak to your manager” – they haven’t seen customer service at all. If they cannot handle a overweight diner going on and on about a £2 overcooked chips, how exactly are they planning to handle that £2M revenue generating client breathing down their neck? They have a lot to lose, they have spent a fortune (on their passion and certificates/degrees) to get that job. They have to bend at some point because they are more vulnerable and exposed.

The Naturals – Wildlings

Future aspirations always to move up on the ladder to a managerial/leadership role, challenging the status quo with necessary improvements.

Then there’s an interesting third kind, the opportunists, the naturals, the wildlings – one that enjoyed their youth until the mid/late 20s or so. They were confused about what the hell they were supposed to do in life or simply was too busy working on customer facing job to pay the bills in time, assuming that was it. Suddenly one day they found something that they actually love and decided to raise hell by doing something different to make that extra cash and become a software developer (alike) to start with.

The tutorial videos we find in YouTube helped them learn more languages compared to a university degree. Attending those conferences or meetups helped them learn even more in an hour, that they couldn’t have possibly learned in a month by reading a book. Soon they realised that learning a lot is worth fuckall unless they can apply it in practice.

Knowing multiple programming languages may sound impressive but mastering only one of them makes us valuable.

Also they have learned that the above “technical bit” and the “administration bit” complement each other. Both are useless in absence of the other and both needs to work alongside for a successful product/project/business whatever the goal is.

Road to Customer Service

Customer service is something these naturally skilled individuals did everyday since they can remember, it’s their second nature. These personas have knowledge and skills which can rip apart some of the most highly qualified certified professionals, if given a chance. They follow every single word of that Agile Manifesto, which they may not even know is called Agile (to begin with). These candidates are the fastest learners you will ever find in a workplace.

BUT who do these “Naturals” follow and learn from in future? That’s right, most probably from the first 2 types who have already occupied the leadership roles with next to nothing experience on “customer service” in the first place. Back to square one.

Customer Service is about Honesty and Fairness – not bending over when shouted at for money

Honesty is when we convey the truth, doesn’t matter how good or bad it is. Fairness is knowing if we are being transparent and unbiased; and then expecting the same from the end user for their own good. Transparency, accessibility and length of feedback cycle plays a very important role. Just because the end user wants it by next Saturday, doesn’t always mean they have figured it all out. Development work is not as predictable as manufacturing where following a set of precisely designed steps can get to the solution on a predictable date. Development is unpredictable that’s why we need the principles of Agile which can be summarised in the one sentence below:

Being agile needs a swift change in one’s personality:

from knowing how to get shit half done before deadline

to get the most important shit done first, properly.

Stop judging, Start helping

So how do we teach them what customer service is? So far I did manage to judge all the personas above and assumed we only have these 3 kinds. Consider these 3 to be the most popular routes rather than an absolute number of types. However, we have no right to judge anyone of them, as we can barely make a difference by pointing out what is missing in their journey towards agility. Unfortunately, our approaches can be patronising at times as no one likes to hear that then need to improve. For some, whatever we do to help them will never get their attention.

The way I see it is, none of them are perfect and need help to understand what Agile or Lean or XYZ means. There are so many similarities in all type of mindsets, we might as well drop the names and focus on the principles. To do that you need an Agile Coach or some call them Lean Agile Coach or a Scrum Master.

The 3rd kind above, shows the highest potential to become a good Agile Coach due to their “nothing to lose” attitude.

Make 1st Line Support a mandatory role during Probation

We cannot expect any employees to work following Agile principles without giving a formal hands on training, coaching and mentoring. Then making sure they continuously use those lessons in practice in relevant fields. It’s not possible in a controlled environment. If a company paid to make the employees agile in few days, they have been robbed in broad daylight. If our employees are shadowing us they will probably assume we are being agile, as we are good at throwing the A-word now and then.

Making everyone work for a month or so in the 1st line customer support, will expose the new employees to understand the customer needs on that business. Support them and ingrain these basic principles before they actually start working on the relevant teams with relevant skill set. This may sound out awkward but can create a culture which focuses on end users first.

Don’t be Shy, get Help !

To get help in creating an agile mindset in your organisation, find an Agile Coach “per team” (to begin with). Just make sure –

  1. You know why you are hiring them for
  2. Stay out of their ways, as it will most probably won’t be the same as your’s
  3. Listen, listen and listen again.
  4. Agile Coaches need the most support as they have no authority over anything

 

Most Agile Coaches I have come across so far are the mix of all kinds mentioned above and one way or another they live by those principles in their personal lives as well with an aim to be the 3rd kind and stay like that.

If you have hired an Agile Coach as a “Trophy” to show your clients, don’t expect any improvement.

And don’t blame Agile for your own arrogance and bias towards command and control. At first hiring a dedicated Agile Coach per team may seem out of your yearly budget but it is necessary for the longer run (if you really care) as they create lasting changes, which stays when they leave. A true Agile Coach respects the status quo but doesn’t tolerate it. Make sure you understand “Agile” before hiring an Agile Coach unless you will never like what they propose for a change.

 

P.S: Scrum Masters are Agile Coaches. If you don’t agree, you are most probably the above mentioned hard working 1st kind. Open for a debate here.

Gallery

Stop Redesigning the UI – Add/Remove Features instead

We are working on a new Project to redesign the current User Interface (UI)

This is what I hear when someone says a version of the above statement-

1) “We were stupid enough to rush our first project following the management triangle and screwed the business over in the name of Digital Transformation. Now we are covering our own shit by spending more money and sugar coating the phrases around it.”

2) “We built 1000 features few years back, out of which only 15 are being used regularly. We are actually in deep shit in terms of coping with the maintenance cost of the rest. If we delete the rest (which we should), our bosses will bend us over and ride our arse off !”

3) “We are calling it a UI redesign but it really is a disguise to hire more developers to recover from the technical debt we ignored for the past few years.”

4) “We need to look busy as we are permanent middle managements. We need more meetings, whiteboards, sticky notes, sharpies and latest gadgets to save our worthless jobs.”

5) Finally, when a fellow “Consultant” says it, I hear – “We have managed to brainwash the client that they need a platform redesign of existing fully working application (not just UI), so we can place more expensive consultants (who will be paid half the amount as permanent employees btw) for the next few years. We can sell frameworks like Agile/Lean/DevOps and processes like SCRUM, xp, KANBAN (yes, someone actually wrote it to me once; god was feeling helpless). We can then convert them to one of the scaled agile frameworks.”

So I am not a fan of these characters, let’s move on. Although it was necessary to set the tone of this article to get things straight around fake “projects” which could have easily been a few months of lightweight but effective revamp work.

What’s wrong with UI re-designing?

Nothing. It’s always a good idea to present a fresher look to keep our application visually attractive than our competitors. Problem starts when we use it as an excuse to authorise a hefty budget for a spurious “Project” and not an improved “Product”.

It leaves a room for uncertainty and make our lives hell when we come across a surprise, which we were not expecting. Most “UI redesign” I have come across are basically the same application (with exact same features and specifications) from scratch with different technical stack aka a full platform implementation instead. You may have a better experience elsewhere. It just didn’t made sense at the beginning and didn’t created a sense of purpose. Instead it added high volume of unnecessary work in the backlog. Would love to hear a positive story, please share in the comments.

Top Root Causes

Product? What’s that?

It doesn’t always happen on purpose by the agents of “Change Management”. It happens due to a lack of knowledge in applying an approach which is based on empiricism and using a little less common sense. As long as we treat “development” as another standard project in the business, we will come across these issues. There are good agents, although less in number and are helpless as they won’t get the support from the culture.

Thankfully, a majority of thought leaders in our current world has made it very clear that we should focus on a product, dedicate a team towards it, iterate with empirical evidence and don’t work on anything which doesn’t have a purpose of providing value. May be the world is not ready for it, may be we need to let the world learn by it’s own mistake or maybe we can educate them faster instead of becoming their critic.

Here’s a Million, Burn it

Another root cause is having way too much to spend. No one care about a drop of water from an ocean or whatever analogy we use to describe it. That’s why the amount of waste is proportionally high when a company starts “scaling” their products. We don’t need scaling for products, we need descaling. We need iterations in burst mode so we can compare them and choose the one which actually provide some value and throw out the rest without feeling guilty about performing those small experiments.

In majority of companies, a predicted increase in revenue is measured as success.

 

“We need a 18% rise in the revenue next year as we managed to hit our last year’s target of 16.5%. To do that we will authorise a generous £2 Million on a re-design project proposed by the application development department for the existing application” – it is practically nothing in compared to that £100 Million+ profit they made last year.

Prediction is the worst kind of lie, it creates a sense of premature satisfaction.

Shareholders are happy as they have received more than their predicted cut last year and no improvement is required in anything as long as that number always increases according to “prediction”. Employees will be given bonus based on that as well, whether they have done their job or not.

Adding or Removing Features – Where to start?

Eat your own Dog Food – The What?!

If this concept is new to you – Dog food eating is a (well) known self scrutinising timeboxed event where you taste your own medicine and for a moment forget that you are part of the solution provider. The application we are building for someone, we use it in our own work and see how satisfied we are as the real user for a moment. In case the product is unrelated to our daily work, we pretend we are the user for the timebox.

Technically we should always be doing this without considering it as an event. Although I have seen only a handful of companies doing this and embracing the huge benefit around it. It’s not easy. You have to mimic that asshole who always wait for your mistake and resurface from the grave to screw your life around by changing your plan of action for another quarter (or worse, a year). Better be that critic yourself than giving a random opportunist take a ride.

Responding to change Over following a plan !

Identify the change needed before someone else do.

 

Summary of steps:

  1. Plan a half day timebox for this session.
  2. Make sure everyone on the team except the stakeholders join this. This is important – stakeholders will influence your opinion, so excluding them is a necessary step. You ARE the stakeholder in this session and you have to be brutally honest about it. If you don’t want to, don’t participate.
  3. Create a template of activities to plan a basic layout, sort of like a session based exploratory testing protocol (get help from a QA member if necessary). Remember you are the end user of that feature – establish who that feature in intended to, doesn’t have to be of one kind.
  4. Run the session and be a harsh critic of the platform, find anything that annoyed you.
  5. Document everything you felt and found.
  6. Plan few hours with stakeholders now, show them what you have found. Done.

 

From this point onwards, what a stakeholder decides will take effect, of course. But at least you have a much better understanding rather than reading a list of requirement which you always hated for being too vague.

If you are planning to achieve a sense of purpose start “dog food eating”, start analysing your own product, be your harshest critic and hire someone who makes sure the criticism doesn’t stop and call that role – Chief Nagging Officer.

Implement Analytics – as if you are prep’ing for a legal hearing

A Zombie feature don’t need to be loved, it needs to be shot in head on sight.

Analytics should be the simplest way to help a company on taking informed decision about “removing” a zombie feature. We don’t need analytics to add a new feature, addition is purely based on empiricism and can happen anytime. If we have implemented analytics (most does) but haven’t removed a feature based on the data, we are already doing it wrong. The deeper it is ingrained on our platform the better for greater insights. The purpose is simple – “We like to find out what part of the feature/platform is barely (never) used and delete the code to save maintenance cost”. It helps us in reducing technical debt and remove the stress of handling the legacy code.

It’s hard to throw out months of work knowing it is not being used. We can only blame ourselves for not doing enough research before implementation and make it right in the first place. Guess what, it’s never too late.

Adding or Removing Features – Why does it matter the most?

It’s in the name. We either add or we remove. It’s simpler, it’s almost black and white. While we are adding/removing a new/old feature we will always perform some background work on making it compatible with exciting features, redesign the UI in places, refactor the codebase or simply change the way it works or appear.

At the end, the value will be provided no matter what and it won’t become a worthless internal change with no real visibility of a new improvement. It can be a performance improvement which is not visible to naked eyes but an informative slide show can make up for it. There is always some value on everything, selecting the highest value is what matters.

There is a genuine reason a development team don’t get buy in from the stakeholders for removing technical debt. Often the team fail to provide an effective reason or simply fail to explain why it is important over providing a visible value.

New feature can equate to cost on one way or another, directly or indirectly, which is easier to articulate. When we remove a feature we have to heavily base our recommendations on analytics data explained above. It can still be equated to cost but still good luck with explaining why a working but unused feature was built in the first place. Some understands, some don’t. Be brave enough to raise concern but calm down if your job’s in question.

Conclusion

It comes back to the culture aspect, every time. The culture needs to translate these kind of failures as a learning. A zombie feature can use as much as the “resource” needed, as an actively used feature which makes them very expensive in long run. By resource, I mean real resources like storage, supporting work and maintenance costs which are a great form of waste. So focus on adding a new feature in demand or simply remove the one that nobody owns.. just don’t call it UI redesign.

Gallery

Definition of Done (DoD) in XDE Framework

In my last post about Definition of Done (DoD) – The Holy Cow Approach, we have seen how “Done” can be misinterpreted just because there is no set definition for everyone. We have ways to deal with DoD by agreeing together what is Done before starting work on a User Story or any form of backlog item. This definition therefore can change depending on context, product, team or even client demand.

What if we don’t have to go through this never ending debate of defining a done for each work item? The internet if full of these discussion, agreement and disagreements which we can live without.

What if, we have a universal DoD which establishes shared understanding company wide?

Definition of Done (DoD) in XDE is a shared understanding

Xtreme Decoupled Engineering (XDE) has a beautiful way of replacing this small talk with something that adds real value – Delivery and End user feedback. In XDE, we don’t need to establish a ground rule about where to stop, before starting a work. We stop and call it Done when we get “a” user feedback – good, bad or neutral. If it’s good we celebrate, if bad we learn and if neutral we let the Product Expert decide where to go from there.

If this is not Simplicity, what is?

 

The One Rule in XDE makes sure we do not get distracted and the Delivery Expert being the Servant Leader of the 1R Team guides the bubble to focus on one work at a time. DoD is therefore universal to all teams and anyone interested to know the ETA of a certain value, don’t have to worry about what “state” it is coming out. It will always come out in a “Ready to Ship” state whenever it is done and wherever it is deployed for the feedback.

DoD in XDE invokes the boundary for Cycle Time measurement

Cycle time is the total time from the start to the end of the development process, which increases predictability especially if we are part of a Service Level Agreement (SLA). DoD in XDE takes help from the One Rule to establish these SLAs with predictable data over time to create a healthy metric to optimise the process. Here’s a visual which summarises how it work:

As we can see, the Cycle time is basically the duration which a 1R team takes to achieve the DoD following One Rule. It also promotes implementation of DevOps by an extreme reduction of multitasking and focusing on the end user feedback.

Conclusion

We have a tendency of making things complicated when there is a simpler solution. XDE’s definition of Done simplifies this ambiguous topic of discussion. An organisation can worry about bigger things which needs attention and teams can work towards the same goal every time like a second nature.

More about XDE: http://www.xdecouple.com

Gallery

Defining Done – The Holy Cow Approach

While reading Invest on an Epic Story and get the job Done, there was a discussion about how the done checklist can be formulated with mandatory and optional sub-tasks. This article can be considered as the prequel which forms the basis of that implementation. A question we always come across while explaining how to define Done for a Story is –

 

What is “Done” or “Done Done”? How much is enough?

 

Truth is, it can be done or done done or done done done or (done)n. Done can mean a hundred different things for a story completion within a product backlog or within a team or for the consumers. The definition lies on the “baseline done” which everyone agreed to, before the work commence and the team takes it seriously as a discipline. The goal of this article is to get back to basics about defining Done for your story, I call it the “Holy Cow Approach”. This drives the thought process around “Done” and how you can resonate with a real life example.

Steaks.. we all love steaks (apologies to vegetarians). But we like it done according to our need. We do get annoyed if it’s not the right cut, colour, texture, seasoning or even the way it is presented.

 

Now, assume I am the diner and have made it very clear while ordering that I wanted it “Medium Rare”. That does it for me, that’s the minimal requirement (MVP). When the steak finally arrived, it turned out to be Medium.

How dare they?!

Dissatisfied with the outcome even though giving the correct requirement (I hope), as a furious consumer I have sent it back. My fellow diners sitting next to me ordered a rare (what an animal) and a well done (c’mon, it ain’t a burger). They did get their steak as they like, on time and were fully satisfied with the service and left a great feedback for the chef. That’s ⅔ aka 66.67% happiness rating.

So what went wrong? There were many possibilities of things that could have gone wrong, to name a few –

  1. I might have said Medium and never said Medium Rare.. oops my bad. (Consumer)
  2. Waiting staff might have missed it and wrote the wrong order (PO)
  3. Head Chef might have vaguely communicated it (Dev team member)
  4. Sous Chef kept it a little longer on the grill (Dev team member)
  5. No one bothered checking if it was actually medium rare before serving (Inspection)

 

If we leave the point-1 aside (as wrong requirement), the rest depends on the team who delivered and is responsible, even if any one member missed a step before serving. May be the team should have considered it a part of the quality. Basically, what I have considered as Done as a consumer, wasn’t the definition the team knew or misinterpreted or was a human error. To them, say point-5 was the issue, 5 wasn’t really part of their Definition of Done (DoD).

Let’s compare this directly with a product team who have a similar pattern in defining done which doesn’t really align with what consumer asked for. If multiple teams are dependent on each other but defining Done differently, can we trust the process? Yes we can, if it’s a common knowledge and have been made explicit.

Forget about the consumer and interdependent teams for a moment. Consider a Product Owner (PO) and the Development team, who has completely different level of understanding about what is done. PO wants a demo of the finished iteration but the “development” team is divided between programmers and testers (reality of many teams). So they tend to assign done on their work to throw it over the fence – Programming Done and QA Done. Even after all this, the “finished” product is sometimes useless as the environment dependency wasn’t considered as a factor at any point of the “development”. These are all part of the mandatory definition of done as a common practice and basics of what we do as a team.

 

Back to the Holy Cow again. So the restaurant kitchen considers serving the food on the table as done. For the Restaurant owner it is NOT Done. It is done for the owner when the consumers pay and leave a good feedback. For the consumers, it is none of those. Consumers only care about getting the “Dinner” done and get the worth of their money.

Now, If we assume Scrum is being used as the framework and compare the roles to visualise the definitions:

 

Done for the Kitchen (Development Team):

  1. Order received and picked up by the head Chef
  2. Head Chef reads the order and asks one of the Sous chefs to pick it up or started working on it himself/herself.
  3. The Chef takes a nice 8oz cut (requirement ignored for simplicity of this discussion) and starts grilling it
  4. Chef thinks it’s done as per the order
  5. Head Chef calls for the waiting staff to take it out to the table

 

Done for Restaurant owner (SteakHolders.. Oh wait.. Stakeholders):

  1. Consumers arrive, approached and seated as quickly as possible
  2. Consumer orders food
  3. Kitchen cooks and food is delivered on the table
  4. Consumers cherish the food
  5. Consumer paid, left a positive feedback and the table is rotated

 

Done for Consumer (Clients/Users/Customers):

  1. Find a nice steak house
  2. Arrive as planned with mates to cherish a moment
  3. Steaks ordered
  4. Drinks while waiting it to arrive
  5. Steak arrives
  6. Yum.. Om Nom Nom..
  7. Pay and leave for the late night party or some prefer it the other way shown.

 

Examples above highlights a very simple behaviour we have seen, depending on who we are at that moment of time. No one is on sync and why should they, everyone has their own life. We just need to take it into consideration. We need to cooperate and work together so everyone is satisfied; especially the care should be taken from the provider side as they are responsible for the successful delivery to the consumers. That is their business and source of revenue.

 

What’s next?

Stating the obvious but it’s time to take DoD seriously if we aren’t already. Apply it to all work items. If we don’t know the goal we can never achieve it. It is ofcourse negotiable so take the opportunity to discuss, establish and share the common knowledge without bypassing the key personas – the PO or Stakeholders or the Consumers.

 

Rules of Thumb:

  • DoD should be made explicit as a discipline
  • DoD should be negotiable but a baseline is very important to start with
  • DoD should be established pragmatically and cannot be same for all stories
  • Without a baseline DoD the product team should not even start working on the story
  • DoD is essentially a checklist and should be treated like one at all times. It can change as we learn more about the story implementation.

 

P.S. Religiously, I like my steak Medium Rare and I will snap if I get served a Medium. That’s my DoD. Get in touch if you want to take this discussion further in a nice Steak House around you 🙂

Gallery

6 reasons why An Established Brand Stops Innovating !

Innovation and Reputation goes hand in hand. The history of every brand involves at least one “Epic” event which makes them an Established company. Brands follow a typical growth stages around it. These stages depends on how good you have managed to retain the existing customers and kept adding new “Brand Loyals” on your company network. This can happen by Social Media, Public announcement or High Profile merges between 2 companies.

 

That one epic announcement or innovation mostly happens during the Loyalty Marketing strategy which uses the Gamification approach as shown here:

Now, don’t go too deep into these statistics. What we really gain from this info is Existing and New customers are the main reasons why a Brand succeed and continue to flourish until there is a new game changer in the market.

 

That “Game Changer” is usually a start up trying to make a difference and Innovate to get noticed. Once they are big enough, innovation goes out the window like the previous company they “used to” challenge !

Hence, for the consumer, it is necessary to know why this happens and how the consumers can make a difference by choosing the right Brand in right time. Why a Brand stops Innovating?

1) Too many Blindly Loyal Customers

Brands pay huge and analyse Social Media Data closely to create a big fan base. They engage actively and keep the virality in check so customers themselves can start sharing and be a loyal guinea pig.

Oops, there, I said it. Yes, we are guinea pigs for the Brands as they experiment with our needs and actively manipulate the market to create a futile hype, often. Eventually as consumers after spending a fortune, end up with a product that they “thought” can make a difference. Consumers are the culprit, because of whom the Brands stops innovating as they know, whatever they build, we will give it a try without a second thought !

If you don’t make them run for their money, they will never look back. Brands won’t care if you are impressed or not unless you let them know what you feel and start being a pain for them by sharing negative comments now and then.

2) Reinventing the wheel, keeps the wheel of fortune going

Several brands are great in hiding their potential source of copy/paste achievements. Naming a few would be biased, so just imagine a Brand that you love, search the history and see it for yourself. You will be surprised.

Say an old technology ‘was’ marketed a while back, which couldn’t gain any attraction then. After 10 years finally people getting attracted towards it and another brand developed similar product and capture the market.. hell.. even tried to own a patent for that tech which wasn’t there original idea in the first place.

3) Third party businesses create unnecessary hypes

‘Marketing partners’ aka the middle men boosts a Brands image exponentially and they are present in every industry. Example you ask? Well, when you get a new gadget on contract in UK you go to O2, Orange, EE or Vodafone to name a few. If a gadget costs £500, it is usually been sold at a 24 months contract for £35 a month = £840 while you are stuck in a locked device (mostly) for 2 years..

“BOOM” – no innovation needed for a while !

4) Not many serious rivals

This, we all know and will agree together. If a Brand which has no innovative competitor they won’t feel the need to impress you. Monopoly is a curse. If you want to innovate, you often do it for free to get noticed. This is the reason why there are so many start ups challenging the established market leader as they feel the need and they know customers feel the need.

5) Timing of an Innovation is Important

Timing makes an innovation a hit or a miss. We as a consumers do not appreciate new feature as much as we should, as we got it when we didn’t asked for it. If you want innovation to continue, agree and let the Brand know that they have done a great job even when the timing is wrong.

6) Lazy Marketing sometimes supersede the power of the Tech Team

Some Brands release a feature without any marketing strategy. If you can’t show the consumers how the new feature is different, you will fail. It’s a two way street. If consumers are lazy, sometimes the Brands are too.

There might be awesome engineers working day and night for an innovative idea but if the marketing team forget to highlight the facts, brands can’t help it. Eventually we as a consumer feels that the Brand is not doing so well, when they really are.. may not be as a good team.

 

Therefore, if you want to see innovation constantly coming out of any brand, as a consumer do the following –

  • Don’t be blind fan and be very selfish, unless you think it worth your money.
  • Don’t go easy on them, be a dick and go hard on Social media.. spread the word (just don’t lie). Social media is a serious business, it’s not about fun anymore for Brands.
  • Encourage Brand rivals when they do something good. It will help make the community more innovative.
  • Remember: Slow Innovation is no Innovation. If you become a legend just before the day you die, why would you bother anyway? Make them do it fast, make them move from their arse and force them to go out of their comfort zone.
  • Remember: It is always about the money; no matter what you say. A Business can’t be just for a hobby or interest. If you are an app developer, at some point you will want to gain some profit.
  • Treat Non-profit organisations and Start ups as legends. Applaud and appreciate them, as they are the main reason why we see innovation day by day and not by an established Market lead.