Search This Blog

Sunday, January 31, 2016

Career Management starts with managing oneself for competencies required for the new role

We must all recognize that time has moved well past the industrial revolution into digital explosion. Let us all look around and we can see that new industries have surfaced, and new business models have evolved. Yet, how often can we all say we have developed new skills and competencies to compete not obsoleting ourselves. We are all still looking for promotion and increased pay but has anyone refused a promotion because they need to sharpen themselves for the new competencies required to succeed in the new role. I would like to share in this blog a few simple techniques that I have found working well as well as observed others do to managing the career.

1. Establish your brand by thinking strategically big
Simply put, in your absence when people think of a new structure for the organization, a new venture to consider, or a bigger problem to solve, will many people think positively of you to be the ombudsman? Here are a few powerful questions to establish your brand.
·         What quantifiable results have you consistently produced in the current organization?
·         How much does your organization remember of your previous work experience when a challenge arises?
·         What references can the customers internal and external to the organization provide consistently that elevates the perception of you?

2. Come to terms that you are a salesperson for your unit, product, and organization
This was difficult for me to relate to! Evolving from being a software engineer to a project and program management career, I never conceived myself to be a salesperson until I heard in a networking event on how I was referring attendees to a local restaurant that I have frequented! We may not know that we are not a salesperson but when we interface with the other units within the organization, we are selling the quality in code, good design in the architecture, positive returns on the product features, and solutions through out products for customers! Some questions to ask ourselves to expand our competencies are:
·         What new business problems will your existing skills solve for the organization or customers?
·         How much do you know what new competencies are required for your growing organization?
·         Given the same pay and terms and conditions, are your skills on par with the consultants in your discipline?
·         What business value have you added beyond your current role to stretch yourself out of the comfort zone?
·         How much reputation precedes you among your peers, customers, and employees in your problem-solving skills?

3. Continuously focus on becoming an expert
Too often, people rest in their comfort zone because they have a job or just got one! This is an expectation mirage as what we know is frequently replaced by new information, business paradigms, changes in technology, or tools used in their chosen professional discipline. Every year fresh graduates come to the candidate pool and experienced candidates that amass new knowledge come to the job market. It is inexorable for individuals and management to ignore the competencies required of themselves and of their team. A few ideas to take a pulse check are as follows:
·         What outside organizations are you actively involved in to learn new concepts?
·         What new team management skills have you gained if you are a manager in a balanced or functional organization?
·         What additional skills and competencies have you developed to further your knowledge of your own discipline?
·         Have you been asked to speak or write in journals, trade events, or conferences in your field of interest?
·         What specific challenges does your organization face where you bring expertise to the table from your previous experience without depending on on-the-job-training?
·         Have you been proactively able to challenge the status quo where customers and peers recognize your voice and instituting changes?
·         What opportunities have you explored moving laterally within the organization expanding your cross-functional knowledge and expertise on products, processes, and people in your own organization?

4. Bringing out the best in others
I once heard a definition of success that read, “My success is defined by how soon I eliminate myself.” It struck me so much that I never focus on job security by staying in the comfort zone of siloed expertise. Instead, I focus on employability where I develop others to expand on the paths that I have found or allow them to find a new paths to make things even more productive. This succession planning is critical for one to be unplugged from one’s current responsibilities and be available for the next opportunity that may knock. A few suggestions to consider at this point on this forefront are below.
·         Do you have a mentor yourself to help you see beyond your own blind spots?
·         Do you have succession planning in your individual development plan where you have identified someone and mentoring them to be where they can be?
·         Have you helped someone see the long-term impact of the project that they are working on, the challenge they are solving, or the opportunity they are resolving and its relationship to their own career through the eyes of the customers and organization?
·         What’s your professional life’s mission or philosophy?

No one can entirely predict what fluctuations can change the way businesses operate or technologies evolve. Just like financial institutions say past performance is not an indicator of current or future performance, the skills and competencies that got an entry into an existing role or maintain the existing role is not an indicator of what the organization or industry is demanding. The longer these skills and competencies are not on par with the industry, the deeper the experience gained will lose its significance. So, develop a quest to do your own assessment and wake up to the competition. 

What are your thoughts on these observations? Please share.

Wednesday, December 30, 2015

Starting the Problem Half solved: Strategic about Successful requirements gathering

In one of the recent round table discussions that I spoke on the differences between traditional and agile approaches, it became apparent to me that there was some disconnect in the notion of what constitutes a requirement. The software development approaches leveraging traditional plan driven approaches to project management focuses on scope planning activities that centers on requirement definition because it is well known that a successful definition of the problem means we have the problem half solved.

Considering the developments in agile approaches to project management where change is welcome even at later stages in the development, the gathering of up-front requirements is often frowned upon. Although the requirements definition may be a daunting task when there is ambiguity around it, value delivery happens only when an attempt is made to eliminate such ambiguity. When client facing members fail to ask powerful probing questions and engage the expertise to eliminate some level of ambiguity, the business goals are often compromised.

For instance, a requirement should at a minimum address what the software must to do satisfy what the users need so that the value is maximized, and benefit is realized. On the contrary, if the requirements are conflicting and attempts made to eliminate ambiguity are thwarted, then neither the traditional nor the agile approaches to software development will benefit. As the movie, Apollo 13 calls its mission at the end, such requirement gathering from the beginning can only lead to "Successful failure."

Readers are directed to check out an interesting video at this point to gather some insights into the incomplete requirement gathering This video is on youtube at https://www.youtube.com/watch?v=BKorP55Aqvg. What went wrong here? A few thoughts are as follows. Share your thoughts.
  • Is starting immediately with a “No” a good approach?
  • When trying to ask what the end result will look like, is attempting to over-please rather than understand the business goal appropriate?
  • Is both the client facing person and the project manager on the same team as the expert?
  • Were any attempts made to negotiate for an acceptable best alternative?
  • Is this project setup to succeed?
  • Is this a productive meeting?
What powerful questions can you add to ensure that redefine the requirements correctly? Stepping outside of this video into our own projects or products, what additional questions can we ask to understand the client’s requirement and the reasons behind the requirements better to position ourselves for success?


Monday, November 30, 2015

Negotiation: Tactical Conflict Resolution to Strategic Transcendent Eloquence

Managers and leaders can always recognize that they may not always get what they want when working with stakeholders. Whether it is working with external vendors and clients or internal business units and employees, negotiating for the right resources, contractual agreements, time, cost, scope and even risk is omnipresent in today’s business environments. The fundamental reason for negotiation is to agree on a term that allows both parties in the negotiation to perform better or produce something on relatively better terms than in the absence of the negotiation agreement.

Those that have worked on negotiation may very well know the common techniques like issue resolution, democratic dispute resolution, bargaining, and litigation. But some may relate to the term phrase best alternative to a negotiating agreement (Fisher and Ury, 1981). Depending upon the root cause that led to a disagreement or conflict, the negotiation may have to morph from simple dispute resolution to a transcendent eloquence. For instance, the discussions such as negotiating for an extension to a project or salary negotiations for a new job may involve evaluating the BATNA from the following areas:
  • Opportunity cost of the existing status quo relative to the alternative arrangement
  • Impact of the alternative arrangement on the immediate needs that caused the dispute
  • Timely feasibility of executing the alternate arrangement
  • Risk of the alternative arrangement not providing the promises relative to the status quo
  • Evaluating the risk profile and thresholds of the appropriate stakeholders who can be enablers of the best alternative 
However, when the disagreement is no longer simple and arises due to differences of opinions that are both equally valid and respectable, then the resolution to such disputes may involve strategic negotiation techniques like transcendent eloquence. This is a technique where the parties to conflict themselves develop a framework for understanding and addressing their conflict (Freeman, Littlejohn, Pearce, 1992). This approach fosters a constructive dialogue evaluating the strategic fit of these incompatible yet morally valid disagreements. Such beyond-the-normal discourses need to philosophical, comparative, dialogic, critical, and transformative, says Pearce and Littlejohn (1997, p.157). While it is generally recommended to apply this technique in extreme scenarios like military negotiations and high corporate decision-making involving spin-off, merger, etc., this technique can also be beneficial for middle management to exercise their strategic skills.

The philosophical nature of this approach looks beyond the root cause analysis to evaluating the fundamental belief system that gives raise the conflict. Such a journey can encourage both parties to educate themselves on the paradigm shifts in the industry to think outside the box to raise the bars on performance measures. Similarly, the comparative nature of this approach attempts to resolve differences of opinions arising from incorrect frames of references, such as those in differing geographical cultures or vendor relations where each party may have different operating rhythm in software development. As a result, both the parties may establish common patterns of language that serve as the framework of reference on the roles and responsibilities moving further beyond eliminating conflict to addressing productivity.

The dialogic nature of transcendent eloquence engages active listening steering towards breaking a new ground by using powerful questions towards exploring the root causes. Both parties are now engaged in not only establishing common ground but collaborating towards alternative generation that neither party could have arrived at working alone. On the contrary, the critical nature of this technique applies the concepts of power and influence each party can exercise in implementing the solution by evaluating the strengths and weaknesses of the espoused solutions to ensure that the best alternative is not only a strategic fit but also is rooted on operational efficiency promoting changes that also need to be provided to the appropriate managers and leaders in successfully implementing the solution. 

Finally, the transformative nature looks beyond the conflict into applying the alternative agreement and seeing if the costs of winning justifies being in the game. In other words, should we even be engaged in resolving this situation? For instance, if continuous investment for a product losing its market share may be justified to some extent but if the massive adoption of a new technology is acknowledged in the macro-environment, should alternatives to sustain the product be even considered?

Have you applied any of these approaches in addressing your challenge? How do you think you can apply these negotiation techniques in addressing your challenge?

References
Fisher, R. and Ury, W. (1981) William Ury. Getting to Yes: Negotiating agreement without giving in. 3rd ed. New York: Penguin Books.

Freeman, S.A., Littlejohn, S.W, and Pearce, W.B. (1992, Fall). Communication and Moral Conflict. Western Journal of Communication, 56, 311-329.

Pearce, W.B. and Littlejohn, S.W. (1997). Moral conflict: When social words collide. Thousand Oaks, California: Sage Publications 


Thursday, October 29, 2015

Project is a verb in Project Management

Project Management is one profession that has grown from practice. While education and some experiences were the only prerequisites for one to be considered a project manager, the surge of accidental project managers has really led to the loss of the fundamental skills and competencies of a project manager. The project management role is a conduit to projecting a voice backed with action managing and leading change using projects as a vehicle in managing all areas of project management.




Therefore, I view “Project” as a verb and not as a noun. This is one way to make project managers move much beyond cookie cutter project management. Each character of "Project" therefore defines the competencies expected in a project manager.
  • P - Passion for people. Project management is all about people management. This is where the transformational leadership elements of a project manager is displayed.
  • R – Resourceful around Risk management. Seeing proactively the risks and managing them by maximizing opportunities and minimizing threats  
  • O - Organized around self to manage all aspects of the project. As the saying goes, if you can’t manage yourself, you can’t manage the people that do not work you in the project.
  • J - Justified in constant review of resource utilization including both the human and non-human resources keeping in mind the total cost of ownership on the project managing scope and quality
  • E - Effective in leading change seeing it as a vehicle to improve scalability and as a liaison to other business units within the performing and client organization
  • C - Collaborative in bringing ideas together letting the individuals become groups and then evolve as teams to support each other
  • T - Trustworthy to transform people’s career. This completes the cycle of project where one’s passion for people makes them servant leaders.


Wednesday, September 30, 2015

Abuser Stories:What shouldn't the software do?

The general tendency of the requirements document has predominantly focused on what the software should do. In project charters and scope control documents, sometimes we also write what features will be out of scope. The UML diagrams and use cases discuss how the classes should interface, and modules should interoperate, for instance. The agile paradigm discusses persona approaches drilling down DEEP property for describing backlog features and INVEST principle elaborating on the characteristics of a user story. Even test cases that focus on negative testing use a requirement traceability matrix to the requirements limitedly testing the functionality of what a system shouldn't do.

But, when a system is hacked or inappropriately accessed, the loopholes rests on the inefficiencies in how the system was designed to allow such loopholes to exist. So, how do you avoid these vulnerabilities so that the hacker doesn't exploit these "working as designed" gaps?

While volunteering at the Agile 2015 conference, I chose to attend a section on Abuser stories by Judy Neher from Celebrity Technical Services. It was a great session introducing the concept that a persona of a hacker or disgruntled employee could potentially have a malicious intent to deliberately break the system. The speaker suggested describing user stories that specifically could break the system or expose the system for malicious intent. The participants in an activity gave examples for a simple user authentication such as the stringent password recycle policy, the use of a double password and picture identification, the use of external devices such as phone, email, or mobile texting to use tokens for validation within a short timeframe before the account is locked, the creation alerts for maintenance for incorrect and frequent access to multiple accounts, the enforcement of HR exit policies on employment dates before the role based access can be authenticated, the validation of human versus robot logging by tracking the speed of password entry, etc. Imagine having such stories to bulletproof the system against malicious attacks on standard user stories and have automation capabilities to constantly check for these loopholes.

I am sure one would say that this would add more time to the scheduled release or limit the stories written per iteration/sprint. Of course, like non-functional stories that add some time, the abuser stories also will add time. The need to develop hunches on the type of regulations in the industry, the type of technical platforms used, the time to market considerations, etc. However, the question shouldn't be whether to do them or not but when to do them. If we fail to do them, we are increasing the technical debt. A couple of alternatives are to dedicate a sprint or a portion of every sprint to address these abuser stories.

I really think this is an important component of combined technical and product ownership to ensure we see the persona of other types of users and see the system from that view. As good project managers turn assumptions into risks and control quality, the technical and product owners should be accountable for products that preclude vulnerabilities by design. Abuser stories are a great start. Don't you think so? Share your thoughts.

References

Neher, J. (2015). Abuser Persona. Agile 2015 Conference. 

Sunday, August 30, 2015

Attention or Time Management

Flying over India returning from Mumbai to Chennai, I was browsing the Jet Airways magazine. Often filled with travel recommendations and shopping suggestions, these in-flight magazines have only created a browsing pleasure. But this magazine had a topic on achieving more with less perking my interest to explore.

It was an interesting read as the article began discussing how  time management pretty much shouldn't be the focus of smart managers. Instead, the article focused on attention management. Based on the time of the day, people can manage difficult tasks that require deep thinking, strategy, etc. when their attention to detail is at its peak. Then, as the energy winds down, their attention takes a deep dive. This time should be used for tasks that require less critical thinking.  Between these extremes is the reactive attention seeking time zone that should be used for other tasks that require a balance of the two.

I agree that it is a good idea and that tasks require different levels of thinking. For instance, planning for the project, evaluating strategies to grow accounts, or grooming the product backlog with new features based on the market and reactions from customers and users require thinking different from task or resource management.

However, the article said the urgency of the tasks shouldn't be a criterion for attention management.  This begs some thinking as depending upon the role of an individual manager, the urgency of the task, such as a grieving customer on the phone, an infrastructure deficiency leading to business continuity management, or a delayed or poor-quality work impacting deployment readiness of a project is not something that can be ignored.

The earlier approach on using Scrumban to think a couple of steps ahead and plan can be combined with attention management to better compartmentalize take at hand and energy/attention requirements to better manage productivity.

Thoughts?

Thursday, July 30, 2015

Client Management: The Influence of Powerful Questions

I had a wonderful opportunity to be with one of my mentors in three different client settings. I am sure people in project, account, product, and sales setting have gone through the stakeholder management aspects. Whether it was a formal status meeting, casual hallway conversation, informal dinner meeting, or an internal project evaluation meeting, I found it very inspiring to see how my mentor was skillfully weaving these questions to eliminate ambiguity and establish a solid business relationship. 

While I added a few of my own color from account and project management, I felt such a strong reinforcement of these questions that I felt compelled to package these questions for the community at large. So, here goes the list. Feel free to add - focus however on strategic account & project management and not bury with technical aspects of platform and feasibility here!
  1. What are your goals and objectives? Are you interested in market expansion, market penetration, or both? What's your timeline? 
  2. What are your challenges to meeting these goals and objectives? How would addressing these challenges benefit you and your organization financially?
  3. What are the profiles of stakeholders that you are looking at to satisfy with your campaign?
  4. What types of population are you planning to target? Why are these targets important to you?
  5. What types of channels are you planning to use? What data points do you have to support these channels to effectively reach your population? 
  6. How much of your budget are you willing to spend on these channels? What's your exit strategy?
  7. How would meeting these goals and overcoming challenges enhance the competitiveness of the product?
  8. If you were to meet your goal, what would this mean to you? 
  9. If these challenges are not met or goals accomplished, what does this mean to you?
  10. What's an example of a successful campaign or meeting? What data points are you looking at to evaluate the effectiveness of the campaign or efficiency of the meeting? 
  11. What's your communication style? 
  12. What's your risk profile? Are you adventurous and creative to try new things? 


Tuesday, June 30, 2015

Future of Project Management in the Next few years

In the Professional Development Day (PD Day) conducted by Project Management Institute Mass Bay chapter on June 19, 2015, there was a great introductory session with more than 100+ participants representing many industries that broke into numerous tables. One of the questions that all the attendees worked on was the top challenges that are facing the field of project managers in the next 10 years.

Synthesizing the various thoughts from these discussions, the following set of challenges evolved where project managers should equip themselves with more knowledge.
  1. Become more business- oriented learning strategic thinking
  2. Having to work with remote multinational teams learning the cultural nuances
  3. Become more involved with futuristic technologies on just enough automation, delegating even creative tasks to relieve human capacity, and learning new ways of doing things with mobile, service orientation, and security areas
  4. Learning to work with multiple tools for both process and analytics bringing focus into application lifecycle management and total cost of ownership
  5. Understanding agile framework as much as traditional project management framework learning to know when to apply each or a hybrid form
  6. Learning to manage external and internal stakeholders in the business learning to negotiate better
  7. Getting better at managing risks in multifaceted areas (PESTLE) besides just SWOT
  8. Being more accountable for quality to compete with the agile thinking
  9. Promoting project management in organizations much beyond PMP certification
  10. Understanding the impact of growing regulatory environments on projects
These thoughts present insightful forecasting of what is to come both in the project managers that face the clients and the account managers (Ryals, 2012) that should exhibit project management thinking. So, the landscapes around the evaluation of project management competency are rising. For instance, the Project Management Institute is looking at PMI Talent Triangle (Know the details, n.d.) incorporating technical project management as integral component to continuing credit requirements. 

Similarly, Computerworld in an independent study (Pratt, 2014) forecasts the growth of project managers as part of IT skills emphasizing project managers to exhibit both business and technical acumen to oversee large enterprise projects, growth of security and compliance skills, demand for skills in the mobile application and device management and increase in the knowledge of big data analysis. 

So, competition is rising! How equipped are we in rising to this challenge stepping out of our comfort zone? One or two years from now if we come to read the same blog, what new skills by training and experience would we have gained?

References
Know the details (n.d.) Project Management Institute. Retrieved  from http://www.pmi.org/certification/ccr-updates/know-the-details.aspx

Pratt, M.K. (2014, Nov 18). 10 hottest IT skills.  Retrieved from http://www.computerworld.com/article/2844020/it-careers/10-hottest-it-skills-for-2015.html

Ryals, L. (2012, July 13). How to succeed at key account management. Harvard Business Review. Retrieved from https://hbr.org/2012/07/how-to-succeed-at-key-account/#sthash.0YH3ELKn.dpuf 

Sunday, May 31, 2015

Extreme Productivity: Basic principles to doing more with less

Having been in a managerial capacity as a functional manager and having led several complex programs and projects as a project manager in many industries, I have seen challenges from people on work life imbalance and from organizations for maintaining business productivity by doing more with less. However, in my experience, the percentage of the population that seek continuous growth pursuing the professional certifications or attending the networking events or conferences is slim.  

Having taught more than 150 classes through various academic institutions for adult learners, I observe learners missing classes because the academic institutional policy allows missing 20% of classes or accepting a “C” in their courses as that guarantees employer compensation. So, why should organizations invest in people that won’t invest in themselves by integrating their professional and personal life by managing time to acquire knowledge? By the same token, how could organizations allow mediocrity with a "C" and expect stellar performance? Aren't the organizations then enabling a behavior that allows individuals to be satisfied with the knowledge in their chosen fields that doesn't scale with the growth?

Remember that the growing organizations in the future will no longer be characterized by 8 to 5 jobs but will require one to be digitally connected.  So, waking up to reality to know the demands of your profession is critical for career success. In this blog, I present three simple and powerful principles that I have found useful. I would like to call them “Extreme Productivity” unleashing people’s energy towards what the organizations are going to be looking for in the future amid growing business challenges so that the value the individuals add becomes indispensable.

Principle #1: Look for a role and not for a job
You interview for a job and so getting a job offer is just the beginning. But, if you continuously do what you in your job, you continuously get what you get.  Will the same compensation and career challenge keep you satisfied? Even if you say, “yes,” because of personal challenges, comfort zone, or unwillingness to change, will that be good for the organizational growth that provides for you?  The organization is constantly changing to meet the market conditions and so the conditions under which one got a job can no longer be the same. When the economy shifts and the organization sees the need for sustaining growth with competitive high performers, they look for those that have already proven their multifaceted skills in the organization. It is not time for them to skim the individuals resume for past experiences because current performance paints an accurate picture. They look for those that exceeded their job responsibility and went the extra mile. These members succeed because they look around, prepare themselves early, and take on a role to make themselves useful. This is not a role given by the organization but assumed by the individuals,

Principle #2: Business Impact is measured by results and not the efforts
Sometimes, the business may demand someone to put in more hours. But, from a business perspective, long hours don’t always mean more productivity. It may also mean that you are not doing your job efficiently or expanding the work to fill the time. If ambiguities in task, missing analysis in backlog grooming, lack of adherence to process control, or deficiency in the required knowledge domains surface to the organization, then, one is not only wasting their own productivity but also that of others. Depending on your role, the earlier principle will be extended so that you are becoming efficient by analyzing the market for latest trends and being ready, investing in a tool that the businesses use, learning about the trends being used in your practice to make you more success-friendly, or setting effective time management practices for yourself to manage personal and professional balance.  

Principle #3: Pack value in your day for the team
Everyone must have heard the saying about seeing things from others point of view. Those that really look at productivity will focus first to ensure that other’s time is not wasted. For instance, should the people copied on the email be copied, are those meetings necessary, will that person receiving the task know what to do? When the other person is more productive and you are not, you have just created a producer-consumer imbalance. One can avoid this imbalance and other’s dependency on them by first planning the day others will need those deliverables. This will add time to our schedule. By putting a timebox around activities on what takes less than 10 min, 15 to 30 min, more than 60 min, etc., one can start addressing these tasks efficiently. Readers are advised to an earlier post on Scrumban approach (Rajagopalan, 2014) on personal productivity.

In the end, any professional must be productive to some extent. Everyone believes that they are worth more in money and career status. If this is true, then everyone should understand that their value to the business should always exceed the economic value the business can derive. When that happens, the business will always find new ways to benefit from your talent. The only way to satisfy this equation is when one can be “extremely productive.” In today’s digitally expanding, virtually global, and multicultural distributed workforce, one’s value is constantly challenged every day that can only be addressed by a continuous improvement mentality. Are we ready to take on this challenge? 

How well do you relate to these principles? Please share your thoughts.

References

Rajagopalan, S. (2014). Adapting Scrumban to Personal Productivity. Retrieved from http://agilesriram.blogspot.com/2014/10/adapting-scrumban-to-personal.html

Thursday, April 30, 2015

What is a successful meeting?

Meetings are everywhere.  External meetings, internal meetings, individual meetings, group meetings, team meetings, daily sprints, sprint reviews, retrospectives, etc. Then, there are governance meetings, steering committee meetings, change control board meetings, etc.

Often, people claim a meeting is successful. There are meeting notes distributed too. But what determines a successful meeting and at what cost (Rajagopalan, 2014)? I am not focusing on conducting an effective meeting on meeting etiquette but evaluating the success of a meeting.

I recall a great book on How I raised successfully from failure to success in selling (Bettger, 1992). that gave the tip. A successful meeting is one that has the next meeting identified.  But wait a minute, is that it? So, if recurring meetings are set, then aren't all meetings successful?

There lies the myth. The successful meeting is the one that needs to have clear action items identified with action owners and due dates so that the next meeting serves as a follow up. The follow through happens in between these two meetings ensuring incremental and iterative progress closing the sale, improving processes, updating progress, identifying risks, lessons learned, and removing obstacles.  If every meeting does not continuously contribute the successful outcomes desired, then, is having a meeting itself considered successful? 

If follow up meetings are proving to be action owners not providing updates or providing vague updates, then it is time to evaluate if the right owner was identified or if the owner is capable and having bandwidth. Identify escalation paths if necessary. Of course, this is true when that action item is still applicable.  If a solution is identified or closure is recommended, then it is also important to ensure collaborative commitment and if any additional follow-up would be required now or later.

Would you look at your meetings and evaluate if your meetings are successful?  What other criteria would you add outside of meeting etiquette to evaluate the outcome of a meeting?

References

Bettger, F. (1992). How I raised myself from Failure to Success in Selling. New York, NY: Simon & Schuster. 

Rajagopalan, S. (2014b). Effective virtual meetings. Retrieved from http://agilesriram.blogspot.com/2014/05/effective-virtual-meetings.html


Monday, March 30, 2015

Value of Microsoft Project Schedule in Agile Environment

One of the biggest wars in today’s software development community is the choice to use Microsoft Project Plan. In a traditional plan driven approach, the value of Microsoft project plan to know the higher-level milestones, traceability of hammock, resource leveling, earned value, project and resource calendar, unit of work, impact of delay, critical chain versus critical path, network analysis, early/late start/finish, lead/lag discussions, and multi-project/program dependency are all very well understood. 

But, when you turn the attention to agile, the story shifts! Agile focuses fundamentally on self-organized teams that manage their own tasks who are empowered to try different approaches. This is one of the reasons why the Scrum methodology doesn’t even mention a project manager role but only the scrum master role and product owner roles. But, in a truly agile environment, or a matured scrum practice, the team is almost on an autopilot! The only two needs for the team are to get clear direction and business need on what features to develop (product owner) and the support to keep deviations minimum to work on the delivery (scrum master).

But how often are the teams so self-reliant that they think of the feature outside of their business unit on the delivery? When the team is depending on the other leaders to drive this priority, interface with the product development to provide the clear direction (business need and business impact) among other things, the project manager role emerges again.  If this need exists, then, what’s the question behind the MS Project in agile methodology?

Let us think from agility. The goal of Agility is to focus on burn rate and velocity. These are good key performance indicators (KPI) in agile world in a product development setting. For instance, if we have 500 story point worth of user stories with each sprint taking up ~50 stories over 2 weeks, then, at the end of 10 iterations (discounting the hardening iteration), we expect all features to be completed. Now, say at the end of third sprint (6 weeks have gone), you are at 120 story points. We use the velocity to look for patterns in what types of commitment can be delivered by this agile team or the burn rate to project when the project can be delivered. The project managers that understand the earned value management (EVM) principles can utilize planned value, earned value, and actual cost to analyze patterns. Properly utilized, these values can come directly out of the Microsoft Project Plan even in the absence of a Project Management Information System (PMIS).

If the individual iterations are a major milestone with additional hammock activities focusing on specific user stories, then, the Microsoft Project can still be a value-added tool for the project manager to use in an agile setting. In such cases, if required, the Project Manager can still limit the focus only to the user story level tracking and should the user story become a showstopper (DONE criteria not going to be met), then, it is possible to move this story to subsequent release. Using MS Project, commitment planning can be forecasted better. Using project reports and earned value techniques, one can do similar analysis as velocity tracking and burn rate!

At the same time, think about the transparency of work required not at the team level but at the organizational level. If every team starts using their own tool, then, how do we tell the full story to the program and portfolio management, business units, and to the senior executives? This is where the use of a good integrated application lifecycle management tool comes, such as SpiraTeam, very handy (Rajagopalan, 2012). As the Vice President of Program Management Office with many different projects and programs, even though Microsoft Project, Jira, and OnTime were used originally, we found more value in replacing it with SpiraTeam (Inflectra, n.d) that supported almost all the needs of single source of truth (SST) while reducing the total cost of ownership (TCO) further. The incremental updates we have seen in SpiraTeam based on some of our recommendations and the support we have received seem to emphasize our right choice of investing in the ALM tool rather than work with a myriad of tools and spend time in using data in the backend to discover patterns.

The tool is only a means to accomplishing the work. If simple Excel or white board can be used for Agile tracking, then, to discard such a power-loaded tool as a non-agile tool is a premature exclusion of the tool without considering its benefits. The winds are changing on how the tools have emerged and so it is also time to change the sails. Otherwise, the winds will alter the course of our voyage. 

Thoughts?

References
Inflectra (n.d.). SpiraTeam. Retrieved from https://www.inflectra.com/Products/SpiraTeam/

Rajagopalan, S. (2012). Leading Change: Remote Teams can collocate on the right ALM tools. Retrieved from https://agilesriram.blogspot.com/2012/04/leading-change-remote-teams-can.html

Saturday, February 28, 2015

Choosing between agile versus plan driven approach

Increasingly, I keep hearing references like the challenges and benefits to waterfall approach versus agile approach to software development. Whether these are software developers, testers, technical operations, project management, or sales & marketing professionals, the underlying theme is that software development life cycle (SDLC) has become synonymous with waterfall development but agile is not. Focusing on the core principles of agile, primarily ‘working software versus comprehensive documentation’, isn’t agile approach also developing a software? Aren’t the concepts of planning at various layers, such as daily, iteration or sprint, and release, to iteratively develop incremental software enhancements part of a life cycle for software development? So, where is the huge disconnect?

The challenge is not in the approaches but in people’s incorrect assumptions in thinking what the original SDLC proposition was and equating it to waterfall. In fact, in a recent meeting that I attended in PMI Mass chapter, many participants didn’t relate to the original author of SDLC, Winston Royce’s seminal proposition in 1970 who himself related to the challenges promoting incremental and iterative approach and the increasing involvement from project management in software development. Practitioners therefore created a non-existent and non-functional theory of waterfall embedded with the assumptions below that are challenged by my scholarly publication (Rajagopalan, 2014). 

1.       Linear approach to software development with no feedback
2.       Big upfront requirements gathering
3.       Gathering requirements upfront saves cost
4.       Analysis follows requirements followed by design
5.       Project Management is not part of software development
6.       High degree of documentation needed before starting work
7.       Customer sees work after all the work is developed and tested
8.       Testers need not be involved early

Therefore, I will deviate from using the word, “waterfall” or “traditional” approach and recommend using the “plan driven development” using the rapid application development and fundamental project management principles. Basically, the requirements for the choice of agile or plan driven approach to software development lies in the problem being solved. 

If the challenge is to build a mission critical application controlling the amount of x-ray radiation that will be discharged by a software application, then, a plan driven approach may be a better fit because of the certainty in requirements that can be reasonably predicted, and the amount risk involved in doing it incorrectly without impacting the profit margin. On the other hand, if the requirements are not certain and the complexity is not high where the functionality is possible to release in an iterative fashion such as a new mobile application or responsive website for student enrollment in a college, then, agile may be a better candidate. 

So, instead of choosing the methodology and solving the problem using the methodology, the methodology must be chosen based on the problem solved!

Thoughts? 

References

Rajagopalan, S. (2014). Review of the myths on original software development model. International Journal of Software Engineering & Applications, 5(16), 103-111. Retrieved from http://airccse.org/journal/ijsea/papers/5614ijsea07.pdf

Saturday, January 31, 2015

Risk Managemeent: Key to Advancing into Program Management

The Project Management Institute (PMI) introduced the principles behind program management with a critical focus on maximizing benefits.  Often project management focuses on controlling scope and schedule using available workflow tools that they miss an important component of not understanding the value of the project on a larger scale.


The question to ask here is what role did the project play in increasing the value to the performing organization, customer, and the society?  When we think about this and focus on the benefits, we step into the next stage of ensuring the project risk is constantly monitored.  There are various tools to managing risk but constantly keeping focus and most importantly the risk register.


Understanding these risks is a critical element to the next stage called program management.  Why? This is because the program management focuses on what an individual project can't deliver. The impact on value maximization is high in program management. If the risk is not more actively monitored, there will be too many interproject dependencies that may impact these projects more. So, when advancing to program management, active risk management is critical and is a sine qua non for project management excellence.

Furthermore, risk management is at the epicenter of value management. While project management focuses on delivering products, services, or results, program management focuses on benefits delivery. Since the extent to which businesses and customers derive the benefits describes value, in delivering products or benefits, lean principles advocate flow by avoiding delays. As the day passes, value should be incrementally built. Even when the project may not have been launched and the anticipated benefits realized, we monitor the progression of work so that projects don’t slip, tasks don’t wait, or decisions are not delayed. From the discipline of earned value management, this is why we even look at the 'value' earned in a snapshot in time!

One thing that I was very proud of in my current workplace is that there was an all-hands meeting from all account managers, project managers, development representatives, script writers, creative artists, testing team, and operational team members. The project management team was responsible for holding this meeting on a weekly basis at a predetermined time on Tuesday with remote representatives and traveling account managers on the telephone bridge. This meeting served as the 'synchronization' meeting where everyone synched on raising their part of the risks and issues as well as the impact to the project, client, and the revenue to be recognized by the company! Everyone was willing to pivot accordingly because there is only limited capacity of time/resources available! 

Now, will synchronization alone contribute to seamless value flow? Let us see. While each team had their independent meetings to discuss what was in their backlog. The creative team had a weekly meeting to discuss department specific projects and client specific projects. The development team had its daily standup with the onshore and offsite engineers. The account management team had their own retreats (that's the name they used) to discuss client and deal with specific issues. So, each team had its own cadence on when to meet, what to discuss, etc. 

Therefore, although both cadence and synchronization were present, some of the challenges that we repeatedly discussed in the synchronization meeting emphasized that there were other forces at play impeding value flow. The most common things that came up are the following:

  • Lack of Visibility: There was no combined backlog or a visible backlog of what happened inside every team. If a team discussed a new project that is slowing work for other initiatives, that was a surprise!
  • Multitasking: Some teams had a single person working on multiple things. For example, a creative artist was assigned to more than project extending the amount of time taken for both projects. This diffused the need for more resources required to meet the increasing demand. Delays in projects slowed value delivery and revenue recognition. 
  • Size of the Work Commitments: Some work commitments made were large. There was not enough questioning of the estimates to the commitments made. Sometimes, there was only one single person available to do such work introducing the key candidate risk. 
  • Complicated Workflow: Some review and approval steps in the process were unnecessary, increasing the amount of time taken for people to wait on those steps. The time zone and the manual processes fueled this fire further. 

I believe value is proportional to the waste reduced (value = f (waste reduced)). Some of these value blocking forces causing waste are common in many companies. We tried to address it by having cross-functional representatives in other cadence meetings, consolidating tools on a single ALM tool, introducing role-plays with team members rotating with others, and reviewing steps in the workflow to minimally required to ensure compliance. What other techniques could have worked? Please share.


Wednesday, December 31, 2014

Acceptance Testing: Demystified from a business perspective

Recently in building a RACI diagram, I found questions bubbling up on why acceptance testing must be done and why that’s the testing group’s responsibility. I find it interesting to see how the responsibilities have morphed over the period on the roles and responsibilities associated with testing so that I felt compelled to write this blog article with the illustration below.


When developers write the code, the code should be error free complying with the low-level design. Since most of the code today is conceived and written in a modular fashion, thanks to object-oriented analysis and design thinking, the unit testing done at this level is focused on individual modular units. Examples would be to check for memory leaks, the use of uninitialized variables, etc. As several modules are consolidated within the package, the need to ensure the modules integrate at a higher design level comes calling for integration testing. Examples would be the passing of data between modules in a meaningful way, the use of calling external databases or webservices to ensure that there is adequate time given for timeout and exceptions so that the integrated code gracefully handles the situations. These types of testing are integral to the white box testing still at the engineering or development side focusing on the internal structure and design of the program rather than the functionality of the program.

Subsequently, the build (note that I am not using the word code) is transferred to the testers who check the workings of the program to the specifications. These testers still have some intimate technical knowledge, understanding of the database to write SQL queries or check webservices methods, write test scripts, etc. For custom projects, this group ensures conformance to requirements. This type of testing is part of the grey-box testing because the testers test for specifications but have additional access to tools for technical validation. They assure us that the quality of the software meets the requirements agreed upon in the user stories or in the business requirements documents (BRDs). Here is where the gap begins within the management community.

Those that are familiar with Juran’s definition (the seminal thought leader that laid foundation of software quality) also will relate to the need for “fitness for use” as another ingredient of quality assurance. Nobody other than the customer can evaluate this fitness test which is where the user acceptance testing (UAT) evolved. But think about how the transfer of ownership is executed in an organization. There is inexorably communication from project or account managers in custom software development or product owners in the product development to customers that the software is ready for their UAT. This is where these business owners should be held responsible for executing black-box testing, evaluating at a higher level and satisfying themselves that the software is working to the customer’s requirements. This is the last window of opportunity to identify any escaped defects before the actual customer gets involved in interfacing with the software. Then, any escaped defects the customers and end users find, or new feature enhancements identified are gathered in product backlog grooming, risk adjusted for priority, and accommodated in the subsequent iterations.


This level of acceptance testing is slowly and steadily disappearing from project, program, account, and product owners leaving the image of the performing organization at risk in front of the customer leading to trust erosion. Every car goes through a lot of quality checks but still when we buy a car, we take it for a test drive. Why shouldn’t we test drive the software ourselves before we give it to our customers? 

Sunday, November 30, 2014

Cost of Quality: The increasing value of acceptance testing besides automated testing

There are two prevalent themes in software development in the corporate world: “Zero Quality Errors” and “Doing more with less”. The dominance of both these concepts has critical importance in their implementation.
  1. Eliminating the number of testers increases the level of effort on the remaining testers to check every test case as thoroughly as possible introducing errors. The testers that have the accountability to ensure that they don’t release features without signing off are under pressure compromising the quality.
  2. Keeping more testing resources also does not guarantee zero quality when the testers don’t keep up with the current trends. The number of communication lines increase with the QA manager, test lead, offshore test coordinators, and testers. This functional hierarchy removes the testers from the developers defeating the self-organized team requirements. Consequently, the requirements dilute and morph leading to management problems as the customer complaints increase, time to market slips, and product reviews decline.
The logical solution is “Automated testing” making the system do testing detecting more defects at earlier points in the development life cycle as well as continuously testing deployed code for production bugs. The solution is logical and practical as it accomplishes doing more work with fewer resources consistently, continuously, and almost effortlessly compared to the needs to have a human present to manually test. 

Does that mean automated testing is a perfect solution where we can enable computer assisted software tools (CAST) to as many testers as possible? The agile engineering practices recommend automated testing but also emphasize acceptance testing where the business owners also are involved in testing. But how far are our people in client-facing roles like product managers, project managers, program managers, and account managers increasing their knowledge of the business domain and related technical tools to test the releases?  How much is the management attuned to this fact?
  1. The client facing roles mentioned earlier may question why they should do this testing that the testing department is accountable for? It is a valid question but when buying a car why do you want a test run? Why do we do our own walk-through inspection of the home instead of leaving the work completely to the home inspector? We do this because we are equally responsible for the outcome. As these roles face the client who can claim escaped defects or the features for enhancement, how could these responsibilities have downplayed?
  2. Let us face another argument of being busy doing this acceptance testing! When automation is introduced, the developers and testers must write additional lines of code and test scripts to ensure that the automation works according to the 3A principle (Arrange what needs to be tested, Act by developing code to test, and assert by evaluating the outcome against the expected).  This needs more time commitment and learning additional tools where the developers and testers need to immerse themselves to evolve to the expectations of today’s workforce. So, if one group that is busy can increase their competencies, why should not these client facing roles elevate their skill-competency gap instead of claiming the busy life?
  3. Another important angle to consider is new functional non-customer value add requirement but a business value-add requirement, such as the heartbeat monitors, exception log checks, and time taken to test checks as part of the automation efforts. None of these requirements are part of the actual product feature a customer sees but are additional scope of work that the business mandates on the execution wings to design, develop, and test. When these are baked into the level of effort or timeline and when customer asks to reduce the time to market, the client facing roles cripple the quality by not standing up for best practices.
If quality were a coin, automation testing and acceptance testing are its two sides. Efforts spent only on one side won’t have the completely desired economic impact.  Automation is a shift in the way the code is developed, tested, deployed, and monitored requiring refined skills. It is an important element in reducing the cost of quality but so is the acceptance testing that requires additional skills. If we fail to recognize and implement both these effectively, then, the efforts spent in automation may be offset by escaped defects due to lack of acceptance testing.  A new breed of client facing roles is therefore on the rise and the management needs to focus on both the automation testing along with acceptance testing. 

Friday, October 31, 2014

Adapting Scrumban to Personal Productivity

Agile approaches to product development and project management are growing exponentially. I have been a proponent of the lean approaches even at my house chores and recently found that such approaches were discussed even in the Agile 2014 conferences. Unlike Scrum’s requirements to have self-organized teams with timeboxed iterations within which changes are generally frozen and disallowed, the project management approaches do not rejoice the dedicated team. Often, the members may be spread across multiple projects like project managers having multiple projects. So, how do we manage time effectively in multi-project and program initiatives?

An approach that I have found useful is adopting Scrumban to proactively manage myself and build on the team’s innate strengths to empower themselves to do better. Sounds great, but how? Let me explain.

Scrum
Kanban
1.       Scrum focuses on timeboxed iterations with self-organized cross-functional teams.
2.       Team decides on what can be accomplished in a 2-week sprint and emphasizes continuous improvement by retrospectives
3.       The customer representative is expected to be sometimes on-site and be multi-functional with skills in product, project, account, technical, business analysis, etc.
4.       Measure of progress is working software delivery

1.       Team visualizes the workflow in queue
2.       Anyone can pull (i.e., take) any task that is in the queue
3.       Tasks are generally not dependent
4.       Balances work in progress
5.       Reduces waste between tasks

In traditional project management where resources are not procured for the duration of the project or in balanced matrix organizations where projects inherently face wait times, such as in regulated and construction industries, the project team may not be multi-functional. Therefore, it is not possible for any member of the project team to take on any project or tasks within the project. For instance, can a tester write code? Can a database architect develop deployment requirements? Can a project manager be a business analyst? While technically these are all possible in high performing organizations, other organizations may not have resources that have multitude of skills where roles can be effectively merged eliminating waste.

Here is where Scrumban comes to help. It combines the best of both the Scrum and Kanban worlds. Tasks become structured (design a program overview, develop the stored procedure, test interactive voice response for a specific Voice XML flow, etc.) to be executed by anyone within a specific group. The group or functional leader is entitled to provide the guidelines and process direction for continuous improvement reducing cycle time increasing predictability in productivity. Example, regardless of who develops the program or tests the campaign, in the given service level agreement of 5 days, the program will be developed or tested. Yet, workflow need not be limited to changes only between iterations thereby allowing new tasks to be created eliminating wait time and allowing the team to prioritize projects.


While Scrumban is a great alternative where neither Scrum nor Kanban can be effectively applied, I found out that I can use it to manage myself to be productive better in multi-project, program, and portfolio management. I have illustrated this in the above figure. From my point of view, the team is the expert, and I am just a facilitator. So, when the team has been provided with a task, it is in progress (Yellow sticky). Now, what am I doing when the team is working on it?

I don’t need to hold a meeting to check on progress – that’s project management by unnecessary meetings. But I shift my gears to what the team may be requiring next – eliminating all ambiguity for the potential next task. As a project manager, I focus on the upcoming milestone working a step proactively ahead (Blue sticky) and work with the stakeholders to get that ready so that when the work in progress is done, I am servicing the team with the next unambiguous task. This comes in handy when the team is virtually distributed because in such cases where communication needs to be both pull- and push forms, I have time to over-communicate! This is an example of what I label as 6P principle (Proper proactive planning prevents poor performance!)

Now, the more I work at this the more effective I become and so I work another step – 2 steps ahead – and work with the client, product, account or other teams to push them to deliver on their deliverable ahead so that there is no impact to critical path (Green sticky). I stop at 2 steps only because in my mind I am 1 sprint ahead and my agility hat tells me that there may be change coming that I need to prepare for.

Let us take it to the next level. May be the green sticky (Product, account, client, or other teams) can’t do anything because they are waiting on something else. Then, so much of time becomes unfrozen. Immediately, that means productive hours can be provided to another project. This is an approach to doing more with less. This next project could be part of the same program, product, portfolio or a totally different project for a different client or even developing a hobby, helping another team member, writing this article, or dedicating time for a cause. 

This is an approach I have used to timebox all the incoming work so that within the given time available, I am still able to keep multiple things moving! 

Tuesday, September 30, 2014

Role Mergers: Is middle management – product, account, program, and project - learning from failure?

Based on the interactions I have had with attending various webinars, seminars, networking events, and conferences and bringing them to practical work, I always ponder over a question. Is middle management – product, account, program, and project - learning from failure? I share my viewpoints on the role mergers and how many are not rising up to the requirements leading to inefficiency. 

Traditional project management roles defined frequent lessons learned or post-mortem sessions and agile development practices recommended a retrospective after iterations so that inefficiencies can be addressed. With so many different types of projects, multi-project program initiatives, products developed, and accounts managed across multiple industries, have we incorporated the lessons from our failures and most importantly other people’s experiences of failures!

My definition of failure is that if we have not learned from our failure and success, then, we have a failure. If we have learned from our failure to adjust our processes to avoid repeating the same mistake, then, we have turned failure inside out. By that definition, we can’t agree that we have benefitted from the rich experiences of failure and success entirely.

In one of the Account Management seminars that I recently attended, I heard that one of the fundamental reasons for account management failure is the lack of understanding about the products and services to provide strategic direction towards solving the customer problems. Digging deeper, Kim Zoller and Kerry Preston in their book on Enhancing executive edge relate the account management operating from a quarter-to-quarter or similar frequency on their accounts (called opportunistic) will only derail even the best project management to fail unless the account management becomes relationship based and customer focused.

But is the relationship only with the client? If we say customer focused, are we not treating employees and internal teams as customers? Think about it! Relationships with internal teams are equally important as they are the ones that deliver!  Our clients watch these things too because if you fall for everything and yield to everything the client asks then you stand for nothing, losing credibility with the client and the team.

Interestingly, Schultz and Doerr (2014) from RAIN group called out in their strategic management failure white paper that the strategic account management roles will be coming with the backgrounds of relationship lead, entrepreneur, innovator, collaborator, consultant, researcher, project manager, and skeptic. In their attempt to describe this interaction as connect, convince, and collaborate, this was an interesting finding because it brought the characteristics of a product manager or product owner of how they collaborated with the client and team grooming the backlog but also playing the devil’s advocate from both the client and the value for performing organization. It also integrated how the account manager roles need to understand the foundational project management thinking that also looks for risks, schedule, scope, cost, quality, integration, and stakeholders. Even agile teams are introducing the acceptance and behavior driven testing where additional test cycles will be added to ensure that the business team performs the acceptance testing before products and projects are released to customers.

Woven deeply in these observations is the skill/task alignment required! Technology is so pervasive today but how much technical understanding is today’s middle management exposed to! Like the saying goes in the “Die Hard” movie, “you are the wrong man in the wrong place at the wrong time!” Businesses allow many reasons to continue having unskilled or untrained resources and expect a miracle instantly! Mike Schultz and John Doerr further relate to this in “Wrong People, Wrong Roles” in mandating a minimum of three skills – leading relationships, finding innovative ways to create value, and driving your (performing) organization and (client) team to get things done. As you can see these mean that no longer are the businesses requiring skilled personnel in one area but multiple skills in other areas.

These findings resonate in the fundamental Agile principle of self-organized team! If the team depends on others to initiate, route, and manage the tasks, then agile in such cases will fail! This is also the reason why Scrum didn’t even have a “Project Manager” role in their roles merging this role with either one of the three roles depending upon the multitude of skills in the project manager – account and product management knowledge.

Keane, a consulting organization in their “Productivity Management” book recommended that productivity comes when business teams, customers, and developers are all brought into one training event to hear various sides of the productivity spoilers and address them through processes. Once these processes are addressed, the onus shits to the people! Projects predominantly fail because of people and not because of processes! Extending these thoughts even from a sales perspective, Pink (2012) recommends the new adage of attunement, buoyancy, and clarity where the sales need to engage in problem-solving more! 

Even educational institutions are not an exception and recognizing this need. In one of my recent exchanges with a University in their Visual Arts and Animation curriculum review and design, the school professors were reiterating how the expansion of cultural diversity requires learner's understanding of the target markets and industry expectations of multitude of diverse skills in the graduating learners as part of the experiential learning approach. An example is having the narrators be able to write scripts, graphic artist to know and introduce animation, public relations communication member to modify the approach impromptu when the target market for the same product has changed.

So, there is a revolution happening! Customer service is no longer one department, and it sits with every person in every department. Roles are merging in the middle management because businesses are flattening the layers and going lean in their model. So, the middle management need to wake up and smell the completion and brush up on their knowledge to be multi-faceted ready to wear many hats. If not, failures are designed to repeat!

Thoughts?

References

Pink, D.H. (2012). To sell is Human: The surprising truth about moving others. New York, NY: Riverhead Books. 

Plummer, D.H. (1995). Productivity Management: Keane’s Project Management Approach for Systems Development. Boston, MA: Keane. 

Schults, M. and Doerr, J. (2014). Insight Selling: Surprising Research on what sales winners do differently. Hoboken, NJ: Wiley & Sons. 

Saturday, August 30, 2014

Differences between Kanban and Scrum

Recently when attending the 5-day Agile 2014 conference in Orlando, Florida, I had an opportunity to discuss various agile implementations. Some of the discussions centered on selecting the right type of agile methodology to consider for software implementations from extremely regulated medical devices industry and government projects where Scrum was considered prevalent. Then, when I found in my network of work and friends, there were questions that revolved around using Kanban because Scrum wasn’t working.

Having used Kanban and Scrum, I wondered why there is still confusion among the early adopters of Agile and why Kanban would be considered as a substitute for Scrum. Unclear understanding of agile concepts may lead to failure just like how people created a non-existent theory of waterfall based on inaccurate practices (Rajagopalan, 2014). So, I focus below on a comparative study of the basic premises between Kanban and Scrum. I hope this article captures the essence of these approaches demystifying the confusion and helping in the selection of the right approach for the challenge at hand.

One of the primary differences is that Kanban is a method that can be used independently or along with other approaches like Scrum. This is why we even have derivative approaches like the Scrumban.

Concept

Kanban

Scrum

Management focus

Maximize resource usage avoiding delay and enhancing accountability to support flow.

Consistent delivery in the cadence of execution, as the features in the product backlog is delivered.

Operating rhythm

No time-boxed iterative development exists.

Time-boxed iterative development – usually two to four weeks.

Granularity of work

Focus is at the task level for which the scope of work is generally known.

Focus is at the user story level for which the scope may not always be known, requiring it to be estimated before tasks can be identified and taken up by the team.

Agile Estimation & Planning

Estimation is generally not done. There is little to no ambiguity on the task that any member of that team should be able to take on the next available task and execute it.

User stories are estimated. Then, they are prioritized, and risk adjusted so that these are included in the release and iteration planning.  

Value Delivery

Every task completion may not necessarily add minimally marketable value to the customer. Task identification and dependency require careful coordination.

The cadence of release and iteration planning focuses on adding minimally marketable feature through the scrum cycle. The self-organized team determines the task identification and dependency.

Progress Tracking

Flow of items throughout the lifecycle limiting delay. This is why the focus is on limiting “Work in progress (WIP)” is promoted through “Don’t Repeat Yourself (DRY)” focuses on maximizing work not done

Focus is on tracking the velocity measuring the user stories done and delivered to customer in an iteration

Utility value

Better for managing workload and resource management.

E.g.: How many projects of different combinations can be taken up by a project?

Better for managing products, programs, and projects.

Thoughts to consider in software development

Use of Kanban for software development may impede flow if all the units don’t consume the work produced at the same speed. Therefore, additional processes must be in place to support Kanban.

E.g.: QA not having capacity to test code developed by engineering team. If QA’s capacity comes from the fact that more defects are found in the build, then, more granularity in tasks to ensure proper code review, unit testing, and documentation are processes that the organizations must have in place.

Implementing Scrum doesn’t mean the ability to write user stories and avoiding documentation completely! This requires a management shift to ensure critical thinking on the product, program, and projects. If iterative delivery is not understood by the management and client, then, Scrum is not an option to consider.

In summary, Kanban and Scrum are both light-weight approaches, but the operating philosophy is different. Scrum focuses on the work being delivered to customers through multiple iterative deliveries of minimally marketable value by assembling a cross-functional, skilled, and self-organizing team or team of teams. Kanban, on the other hand, is a pull-based system and focuses on the visualized workflow where flow is maximized by limiting what gets worked on by the team. Although both approaches require prioritization in the items represented in the backlog, Scrum team can’t pull an item outside of the Sprint backlog when they have capacity. Kanban team can pull the next priority item from the backlog. So, depending on what product, service, or result the team is delivering, or the benefit being sustained in operations, Scrum, Kanban or Scrumban may work. Select the right tool for the right job!

Thoughts?