Today, I want to have a look at the 12 principles of the agile manifesto. How doe the agile manifesto apply to your personal productivity? The manifesto was published in 2001 by a group of developers and thought leaders. It brought together many alternative development approaches. Today “agile” has revolutionized the way software is build. Many younger developers might not even remembter the times of waterfall planning and long release cycles.
In the meantime, the agile principles have also been successfully applied to other areas. Examples are product development, project manamgent or business model design.
I will examine how you can apply the twelve core principles of agility on a personal level. The goal is to increase your personal productivity by following the twelve agile principles. I also want to look at this beyond software and apply the ideas on a more general level. I strongly believe everybody can profit from being more agile.
I’l go through them one by one.
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
The key words in this sentence are “satisfy the customer”, “early and continuous delivery” and “valuable”. Lets’s dig into them:
Satisfy the customer: Whatever you do, keep in mind who your customer is. On a personal level, you can understand customer very broadly. It is not only meant in an economic sense. It means anything you do or produce will be received or taken by somebody. That person is you customer. It can be your boss or your spouse, your kids or your parents. Sometime it’s even be yourself or your future self. This would be the case when you are working out to improve your health and wellbeing. If you want to go an extra mile, also think about your customer’s customers.
“Valuable software” can simply be replaced with “value” to make the princible applicable to a broader context. Then, it is pretty straigthforward: Look at the true problems and wishes of your customers. Solve their problems and fulfill their wishes. Important: pay more attention to how they behave and how they feel and less to what they say.
Finally, “early and continous delivery” emphazises the importance of being fast and responsive. Try to get something valueable out to your customer as quickly and as often as possible even if it does not yet produce the full value. Why? Because delivering early creates value in itself. Otherwise they would have to wait longer without anything. Delivering early can allow them to start working for their customers as well. Second, you can receive valuable feedback for the next steps. Third, sometimes the initial value might be good-enought and you can focus on other areas of value creation.
- For every task you have, ask yourself these questions:
- Does it really produce value for my customer?
- Can this value be achieved in a different, easier and faster way?
- Could something else add more value with a similar effort?
- How important is the “customer” to me?
- How can I break this down to deliver an initial value very quickly (e.g. imediately, in one hour, today, this week – depending on the size of the task)?
- Work in sprints
- Perform tasks in full
Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
Welcoming change is easily said but more difficult to achieve. It’s important because we can not predict and plan ahead the exact way how to achieve the value we want to create. We will want to harness ideas that come up while creating. In addition, we live in a dynamic world. New ways of solving the problems might evolve and the priorities of our customers and of ourselves will change.
Often, the real problems and wishes will only become visible when you start creating. Only, putting your product in front of your customers will deliver these insights. People in general have difficulties with expressing their true feelings. They have a hard time envisioning things that do not exist yet.
Plans are great if they give us a sense of orientation and direction. But they should not limit our creativity and flexibility to adapt to changing requirements.
- Avoid overplanning or even procrastiplanning. Plan as little as possible and only as much as really needed
- Nurture a mindset of curiosity and being open to change
- Put your “product” in front of the customer as early as possible to get feedback early.
- Focus on what helps to create value. Be ready to add or ditch tasks when needed
Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
This principle is closely related to the “early and continuous” aspect of the first principle. Having short intervals in which you deliver you stay closer to your customer. A huge benifit lies in reducing waste. The other keyword here is “working software”. If we translate it to a more general setting it means that you should always deliver something that our customers can actually use. Though this sounds like common sense, it is not always common practice. All too often we focus to much on completing a sub-step of a task. Instead we should be thinking about how this fits into the broader picture. How will it fit to the real world?
- Whatever you are working on, set yourself regular “delivery dates”. Depending on the nature of your work, this can be monthly, weekly or even daily
- Align sprints, iterations and delivery dates for maximum effect
- Use an appropriate tool like a tickler file or a project board to plan monthly or daily deliveries
Business people and developers must work together daily throughout the project.
On first sight, this principle seems to be only applicable to software development and only to team settings. What can we learn from it for our personal productivity? There are always multiple perspectives from which you could look at every problem. Thus, you should be open to answers from other domains and not only your own. Furthermore, today few projects can really be realized completely singlehandedly. Almost always, you collaborate with other people. It is better to connect and talk to them on a regular basis instead of working in an ivory tower for weeks or months. You might end up with a solution that does not fit.
- Have regular updates with other stakeholders on the work you are doing, ideally daily.
- Discuss the progress and roadblocks with your colleagues from other functions
- Have daily morning or evening calls with your team
Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
This is a leadership principle. Work with excellent people. Chose people who do want to complete the tasks you give them. Find people to realize the vision you share with them. Often motivation is more important than genius. If you delegete work, make sure everybody has the tools and competencies to get it done. Then, trust them to do it!
- Don’t try to do everything yourself. Delegate work to those people who are best suited to perform it.
- Do not micromanage others. Asign a goal, but do not predefine every single step to reach it.
- Use a simple and effective follow-up system to keep an overview of delegated tasks.
- Do not blame and shame people who do not reach goals. Search for the obstacles and roadblocks for better performance.
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
Face to face conversation can be increadibly efficient. Face to face communication is the directest form of communication available. It is also the most natural. Our minds are hard wired for it. They are super efficient processors. There is less need to elaborate long times on a perfect wording. Speaking and listening is much faster than writing and reading.
Note, that the principle speaks of “conversation” not of “meetings”. Though meetings can be efficient and effective they are not for the most part. Face to face conversations also strengthen the bonds and relations within the teams. They increase trust, commitment and accountability. This way, they reduce the need for costly control mechanisms.
Today, many of as work in distributed teams and remote working. Face-to-face will not always be possible. Luckily video calls can give us 80% of the value at a fraction of the cost.
We also should take oe drawback of face-to-face conversations into account. Conversations are a synchronous form of communication. People have to be available at the same time and schedule their conversation. It is not possible for the recipient to decide when to receive the information, this might lead to interruptions.
- Do not write lengthy emails. Talk to people instead.
- Use video calls as a proxy for face to face conversation if needed.
- Make sure your conversations keep efficient and do not become a meeting hell.
- Do not be dogmatic. Sometimes a personal conversation is not possible. Other forms of communication have their merits as well.
- Make sure to make place for undisrupted time and deep work as well
Working software is the primary measure of progress.
Well, this obviously needs to be adapted to be applied to a broader scope. We can reade “working software” as “something the end user can actually use”. It’s not about how many discussions or meetings you have held. It’s not about the number of mails you’ve written. It’s not even about the hours you’ve worked. Success is about the output you achieve.
- For everything you do, ask yourself honestly: Does this contribute to my equivalent of “working software”? Does it contribute to my vision? Does it create value to the customer?
- Focus on meassuring output, not input – for yourself and others
Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
This is a really interesting principle which is seldomly covered by productivity gurus but strongly emphasized by people from the mindfulness area. When talking about productivity, we all too often focus on achieving more and more and more. This is, however, not ideal. We should strive for a pace that we can sustain over a long period of time. If we burst out in super intense 16 hours shift, there will be, at some point in time, a price to pay. We will lose energy, willpower, health and – yes – productivity. How intense can your schedule be? Find your pace.
- Get the breaks and sleep you need. The amount is different from person to person, but everybody needs them.
- Use mindfulness meditation to get a better feeling for yourself. Listen to your inner voice.
- Set clear and good priorities.
- Strive to do things you love at least 70 % of your time.
Continuous attention to technical excellence and good design enhances agility.
This is a call for quality. Why does quality enhance agility? Don’t they say “be fast and break things”. Shouldn’t we fail fast and often? Isn’t agility all about getting something out quickly and and refining it based on the feedback? Well, yes and no. It is about getting your work out to the customer as fast as possible to collect feedback. But it is also about creating value from the first moment on.
If you ship a flawed product, the feedback will focus on technical problems people encounter. They will show you the bugs and what is not working. While this is good to know, it is not the purpose of customer feedback. Technical quality and the application of good design principles can be verified by yourself and your team.
You should not outsource quality control to your customers. You want their feedback on the insights you do not or can not have: How does your solution fit into their workflows? How well are their problems solved? What new problems arise from your solution?
Besides this, technical excellence and good design lead to higher adaptability when change is needed. It usually also leads to less effort down the road. Correcting errors is much less costly early on. Errors usualy cause more problems when they are highly intertwined with other results. On a personal level this means that focusing on the quality of your work from the start pays off in the long run. The same is true for good design. Good design helps emphasizing the important aspects of your work. It focuses the attention of your customers where you want it. It also eliminates bells and whistles and enhances simplicity for your customers and yourself. Thus good design eliminates unneccessary work.
- Follow the principle: Do it right or not at all
- Prefer a small but great solution over a large mediocre one
- Use quality products and processes yourself
- Learn the basics of good design.
- Simplicity leads to quality
Simplicity–the art of maximizing the amount of work not done–is essential.
The principle of simplicity can be esaily applied to personal productivity. Strive for simplicity in your output as well as in your processes. There is a saying: perfection is reached, when nothing can be ommitted anymore. Creating value and being productive is not about doing more. It is about doing exactly the right thing and leave the rest undone. Often this means doing less.
- Whenever you perform a task: Ask yourself, is this really needed?
- Whenever you perform a task: Ask yourself, can this be done in an easier way?
The best architectures, requirements, and designs emerge from self-organizing teams.
This is a call to collaboration. Nobody can have the best knowledge and skills in every domain. By combining our skillset with the unique abilities of others we can achieve better results. We will also be more efficient. We tend to achieve faster results if everybody can contribute his or her strengths.
This is also a call against top-down decision making. There is now single know-it-all-person who oversees all implications of every decision. Not your boss and not yourself. Be prudent. Acknowledge the experience and competence of others. If you want to increase your personal productivity make use of this. Do not try to solve every problem on your own.
- Focus on what you are good at. Leverage the skills of people from other domains.
- Base your decision on discussions with your co-workers and observations from the field.
- If you delegate work. Delegate the responsibility for the output, not the tasks to be performed
- Do not be afraid to reach out for help.
At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
This last principle from the agile manifesto calls for learning. It applies to individuals just the same as to teams. Perfection in agility and productivity is not a goal to be reached but a journey to be traveled.
- Set aside some time with yourself for reflection and review at regular intervals
- Do weekly, monthly and anual reviews of your goals and your work
- Write a journal about your challenges, successes and visions.
The agile manifesto and its twelve principles can be well applied to personal productivity. It can serve as a guidance for best practice. The twelve principles help to increase simplicity, flexibility, efficiency, speed and learning – not only for teams but also on an individual level.