Requirements

by
Effective requirements collection, management and traceability plus smart PM practices equals project success.

About this Blog

RSS

Recent Posts

Caution: Agile Surface May be Hot

Organizational Change Management: The Most Critical Requirement of All!

Rethink Requirements: The Natural Language Processing Approach

Quality - Consider it in all Knowledge Areas!

Don't get COT[s] by your package!

Caution: Agile Surface May be Hot

Most people are familiar with the Agile Manifesto and its Principles developed in 2001 by seventeen people engaged in the IT (software) industry. Requirements take the form of a Vision Statement, Epics, Features and User Stories. Agile is much loved by those who like simplicity (does that include you?), high user involvement, high visibility of work to be done and work in progress, continuous team collaboration, self-managed teams, minimal documentation, face to face communication and very fast turnaround of deliverables in pre-planned, fixed iterations, creating a project cadence that raises expectations for frequent showcasing of completed work.

You may concur that sixteen years is a very long time in the software industry. I suspect Agile approaches are already baked into many methods. There has been talk and action for a few years now to make Agile scalable to deal with large projects, and hybrid methodologies have appeared that take advantage of the best of Agile and the best of traditional and iterative approaches. I believe there is wisdom in this thinking - something about not throwing out the baby with the bath water.

But Agile was clearly meant for software projects. Can it be used in non-IT projects?

A recent rather unscientific poll I added here seems to prove that one of the Agile frameworks, Scrum, is sufficiently pliable that it can be used outside the software industry. About 1/3 of the respondents (OK - only 21 responded, but you can change that), said they had used it on non-IT projects already and another third said they were planning to do so.  And there are plenty of industry posts about this. One of which I am particularly fond is by InfoQ, where they highlight some of the challenges with using Scrum on non-IT projects and provide some clues about how to convert from technical software terms to business terms.

I believe any project can benefit from Scrum methods. Who would not want to reap the benefits of high visibility of work to be done, progress being made, frequent communication, an engaged team and client, and work being presented in weeks instead of months or years? Wouldn't everyone want work to be broken down into chewable chunks when it is possible to do so? Remember what our friend Albert said: "If you can't explain it simply, you don't understand it well enough."

Maybe it is time to create an Agile Manifesto for non-IT business projects. What might it look like? I'll go out on a limb here to take a stab at it:

  • Individuals and interactions over complicated methods and software tools
  • Completed deliverables over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

Okay - so what changed? Not a lot, really. I changed "processes" to "complicated methods" and "tools" to "software tools" in the first line; "software" to "deliverables" in the second line; and I didn't change the last two at all.

I chose the word deliverables since it is generic and could represent a process, a document, a change in the thinking of a group of people, a new product line - you get it - a business-focused item.

So we might think much of the change would be in the Agile Principles. As they say, the devil is in the detail, which is what the principles start to address. Let's take a shot at modifying those to be more business-focused and less software-focused:

  • Our highest priority is to satisfy the customer through early and continuous delivery of usable deliverables.
  • Welcome changing requirements, even late in deliverable development. Agile processes harness change for the customer's competitive advantage.
  • Produce deliverables frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
  • Business people, subject matter experts and deliverable-producers must work together daily throughout the project.
  • Build projects around motivated individuals.  Give them the environment and support they need, and trust them to get the job done.
  • The most efficient and effective method of conveying information to and within a project team is face-to-face conversation.
  • Credible and usable deliverables are the primary measure of progress.
  • Agile processes promote a sustainable pace. The business people and the team should be able to maintain a constant pace indefinitely.
  • Continuous attention to excellence and good deliverable design enhances agility.
  • Simplicity--the art of maximizing the amount of work not done--is essential.
  • The best work emerges from self-organizing teams.
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Once again, not a lot has changed. Software becomes deliverables and some of the more technical terms are converted to more business-friendly terms.

Have you used Scrum on non-IT projects? How did it work for you? Did your business users embrace it? Was the high visibility too much for them? Did the team manage themselves? How was the business user interaction? And perhaps most importantly, were business requirements satisfied?

Weigh in with your thoughts!

Posted on: May 25, 2017 10:53 AM | Permalink | Comments (9)

Organizational Change Management: The Most Critical Requirement of All!

You have all heard disaster stories of computer systems going into production that are over budget, over time, and deliver less than the expected scope. And we have all heard of the new mantra: Business Value/Benefits, Benefits Management, Benefits Realization. This is all good and a step in the right direction to carry us forward from the days of the Iron Triangle of Time, Scope and Cost that some of us may feel is like the fabled albatross hanging round our necks.

BUT - what about new systems, whether those are automated or manual, that when implemented actually damage the business? You can probably think of some and if you do, please comment. This is a situation where something is implemented and everything goes to that hot place in a hand basket, costing sometimes more than the original system cost to repair.

Let's consider the recent implementation of a payroll system in a large organization in a somewhat cold country - the warming of which should not be from the heat generated by systems crashing and burning. The system went in, and it didn't even cover the core functionality of the packaged solution. What was that core functionality? Well, to grossly trivialize it, the system was meant to pay people. What does that mean? In most situations there are categories of people you pay, for example employees (Gross Pay - multiple, sometimes complex deduction = Net Pay) and contractors (Hours claimed X hourly rate from timesheets or invoices = Gross Pay - Deductions = Net Pay). As I said, this is a gross simplification, but I often find this approach serves to raise the real issues to the surface.

What I am really trying to say here is that the technical part of this implementation was, if not a piece of cake, at least very understandable and relatively easy to implement. I mean, really, have we ever paid people before? Have there been payroll and benefits systems flogged by vendors for more than a few weeks? Well, of course! When were computers invented? And before computers, haven't we been paying employees for hundreds of years? This is not rocket science or virgin territory. It takes me back to when managed the implementation of upgrades to the MSA Payroll system at Nova Corporation in Calgary decades ago. I think we can all agree that the technical solution is quite simple.

So what caused all the issues? Aside from the obvious questions we won't get into (but someone should) like "Was there a parallel run?" and "Was there a backout plan in case it didn't work?", one has to delve deeper into the underlying issues.

First of all, how was the contracting managed for this job? Was it competitive such that the job went to the lowest bidder? To that I say "You get what you pay for". Was there an algorithm for selection that put the important things at a higher priority over price, such as "Turn Key solution.", "Includes comprehensive training.", "Guarantees the system will not be implemented until it is proven to work across the organization both technically and organizationally."? These sorts of questions seem to be common sense, yet we all know the rarity of that type of sense, despite its description.

And what type of contract was it? Fixed Price? If so, was everything known at the time of the bid so that vendors can make a reasonable financial proposal? Or did they have to load their proposal down with change order ready assumptions because they didn't know enough to provide a fixed price bid?

Or was the procurement based upon the reputation of the vendor with some sort of executive order to hand them the work based on how they had performed in the past, and based perhaps on possibly unfounded assertions that it had to be done this way to avoid a lengthy procurement cycle in a "burning platform" situation?

And where did responsibility lie for successful implementation?

Now we get to the crux of the matter. IT vendors are usually very good at the technical solutions, but not so good at the human side of things - organization and process, fear of job loss, future expectation for advancement and so on. Often this is shuffled off to the client. Ever hear of the "Train the trainer" solution? You see it in so many proposals, once might say it has become a standard approach.

So far we have talked about the ease of implementing a technical solution and the methods used by large organizations to choose vendors. Now let's talk about the real subject of this article - Organizational Change Management (OCM).

There are many models for change expressed by organizations like ACMP, PMI and Prosci, and from authors like John Kotter and Jeffrey Hiatt. And these are all excellent approaches to OCM, but I have to ask: Are IT companies reading them? Are they putting deliverables and activities into their proposals to account for the steps required to manage change? Or are they weaseling out of it and transferring the responsibility to budget strapped naive clients? And are clients reading these well-founded missives of change management? If so, are they making them an integral part of a bid request? More to the point, are they willing to pay for it?

Change has to come in a package. First we start with the reason for the change strategically. Why are we making the change? What is the change exactly? Who will support the change at various levels (including the top) in the organization? Who be involved in making the change? Who will be impacted by the change? Who will see change on the receiving end? Who will be "right sized" out of a job as a result? Who will be given completely new activities to do in their job and what level of expertise will be required? How will they gain that expertise? How will you know if they have actually gained it? How will the change be woven into the fabric of the organization so that it becomes an integral part of it? How will organization structures be altered as a result of this change? Will there be support for the organizational change? Is a distributed function being centralized? Will there be resistance? How will compliance be achieved? Where will the change be implemented? How will it be implemented? Why? Who? Where? Why? What? How? Kipling and his serving men come to mind.

If you ask questions like these, you will be led down the road of good Organizational Change Management, and you will take into account all of the human factors involved in such a change. Choose the right projects, consider how you will enlighten the organization about what is coming, how you will persuade all levels of the organization to take part, how you will instruct them in the change and confirm that there was a positive effect, how you will weave it into the organization so it becomes an expected part of organizational life. And above all, how you will ensure the benefits you so diligently defined when you started all this have been or will be realized.

So, if you think of your next big contract going a vendor to make a substantial change within your organization, what forces do you have to muster? Organizational support from the top, filtering down through all parts of the organization that are impacted. Clear definition of business benefits. How communication will take place throughout the organization. How quality of the result will be ensured. How the PEOPLE in your organization will want to take part in the change to help you succeed.

Think of your next big change as a package. Strategic planning resulting in the right change being implemented. Selecting vendors who know about the technical machinations required to make your vision a reality, but are also keenly aware of the people side of things and will be there to help you through it if they are not going to do it for you. If your vendor shies away from discussions of communication, awareness, training, checking and operational institutionalization.... run in the opposite direction!

Make sure that the entire picture has been painted before you try to make your vision, your change, a successful reality.

Mike Frenette, PMP, I.S.P., CMC, SMC is a very experienced project manager who likes to post on controversial topics. For his paid job, he teaches Agile and PMP certification courses through his company, CorvoProjectManagement.com. 

 

Posted on: February 08, 2017 10:56 AM | Permalink | Comments (14)

Rethink Requirements: The Natural Language Processing Approach

It might seem a little odd to write a blog item about a webinar on this same web site, but I thought those who don't know about it might gain by watching it. Besides, I'm proud that a colleague, Jordan Kyriakidis, from my home town, Halifax, Nova Scotia, and his firm, QRA Corp, have been so innovative in coming up with such a fascinating automated method of assessing requirements.

That it is being used in the aerospace industry is just "icing on the cake"!

According to PMI’s Pulse of the Profession, “When projects do not meet their original goals and project objectives, inaccurate business analysis/requirements management is cited as the primary cause 47% of the time.” And the increasing scale and complexity of projects is making it extremely difficult to assess and verify the project requirements. As a result - many critical errors in project and systems development arise in the initial concept & design stages. 

The webinar focuses on how harnessing automated computational tools utilizing Natural Language Processing can help project managers ensure their requirements are consistently clear to ensure poorly written requirements do not infiltrate later project stages. Why not reduce stress and increase the probability of project success?

Take and hour or so to listen to Jordan Kyriakidis (and me to some extent). Judging by all the positive comments already recorded there, you'll be glad you did!

Here's a link to the webinar:

https://www.projectmanagement.com/videos/337012/Rethink-Requirements---The-Natural-Language-Processing-Approach 

Enjoy!

Posted on: January 24, 2017 08:00 PM | Permalink | Comments (2)

Quality - Consider it in all Knowledge Areas!

Categories: Quality

When you think of quality as a PM, does your mind race to the quality management plan section of your project management plan? If so, do you think you normally cover all aspects related to the other nine knowledge areas? If not, it may be time!  

Quality is somewhat ephemeral, isn't it? It's like asking, "How long is a piece of string?"  We have to get much more succinct than that when we are dealing with quality on projects.  Consider using a Deliverable Expectation Document, where you go over a deliverable with a client, and define the level of quality needed, to which requirements it relates, and who will review and sign off the final deliverable. Maybe this is the Definition of Done and/or the Acceptance criteria in an Agile project.

So, how does quality relate to the other knowledge areas? What should you consider when composing your Quality Management Plan? Or conversely, what should you consider about quality in each of the other plans? Here is my take on it: 

  1. Scope - Of course, scope is where we start with quality. What is in scope, what is not in scope. Once we understand scope, we can start asking questions about the level of quality required. For example, if the scope of the project is to create a manual set of processes to help in the selection of products for monthly sales in a do it yourself store, what does quality look like? Do you know? Of course you don’t! You will need to discuss with your sponsor and stakeholders to figure that out. Maybe part of the process needs to take into account several factors, such as what is overstocked, what is being phased out, or what will draw customers to buy other related items that are not on sale. Or maybe it is about rotating from department to department to make sure everything in the store is covered over a period of time so that all types of customers are drawn to the store. So what does quality mean in this example? Probably that each of these situations are taken into consideration in the processes so that all the needs are met.
  2. Time - Quality processes take time, and time is money. So we must always pay attention to the cost of quality. It is fairly obvious that you can’t introduce so many quality-related processes that we spend 90% of our time in the project performing then. On the other hand, if we don’t have sufficient effective quality control processes, we may spend a lot of time in quality assurance finding issues that shouldn’t really be there, and sending work back to be redone. And as we all know, rework costs time …. and money!
  3. Cost - We’ve already established that any process will cost time, and so it will also cost money. We’ve also established that rework, caused by ineffective quality control processes, costs time, and so it, too, costs money. What is the cost of the quality processes you will have to implement? What is the cost of not implementing them? Rework: time and money!
  4. Risk - What are the risks associated with quality? They are always present. There is the risk of not being sufficiently detailed in finding out what we are supposed to be building and to what level of quality. We try to mitigate this with DEDs/Def of done/Acceptance Criteria, and so on. There is that risk of rework. There is the risk that the product as produced will not be accepted. There is even the risk that we may try as best we can to get the definition of quality down accurately through discussions, models, documents and definitions, but that we end up getting it wrong anyway! So, taking quality into account during risk planning, identification, quantitative analysis, qualitative analysis and response planning is critical.
  5. Communication -  Communication deliverables need quality definition like any other. And, of course, communicating what needs to be produced, who will define it, who will approve it is just as important. So, quality comes into play when producing communication deliverables, and is also used as the main tool in defining the required levels of quality for each of the project deliverables.
  6. Human Resources - Quality is, of course, something that each member of the project team must own. They should be asking very detailed questions about what it is they are supposed to be producing, to what level of quality, and asking questions about how to ensure they are producing the right thing the first time, that which is expected by the client (QA). They should also be asking about the processes for ensuring they have produced the right thing (QC). If they don’t feel they have the skills to meet the expected level of quality, they should speak up, ask for training or mentoring, and even to be replaced if the timing for it would be poor, so they can work on a project where their stronger skills can best be utilized. Your team members should be asking questions like, “Where’s the DED or Definition of Done?”, "what are the quality assurance processes?”, “What are the Quality Control processes”? "Who will be accepting the product I am producing?”, “Who are the relevant stakeholders?”, and so on. Your team produces the deliverables that must meet the defined levels of quality and acceptance criteria. They must perform any necessary rework to get their deliverables into the required state. They are key. They control and assure quality.
  7. Stakeholders - Of course, your project’s stakeholders are key to defining required levels of quality by being instrumental in development of DEDs, DoDs, and detailed definition of what the deliverables should look like, who should be involved in the requirements definition and who will review and accept the final deliverable. They help define your work. They sign off on your work. They can send work back for rework. Could they be any more important? Your client and sponsor are in this group, and so are all the others who can impact your project’s quality expectations. Who could be more important? If you have the best team on the planet, producing exactly the wrong things to the highest levels of quality as defined by the wrong stakeholders, you have nothing. So, find out from your sponsor who to involve, then involve them!
  8. Procurement - Quality is just as important when it comes to procurement. You need to translate your stakeholders’ quality requirements for your vendors and then you need to be sure your vendors are producing the right stuff. You may also want to get into the internal processes of your vendor’s deliverable production and overall project management so you can be sure they are running a quality operation. If not, you may find that the deliverables sent to you by the vendor are not what you, or more importantly, your stakeholders, expect. And as we all know, the buck stops with you, the project manager. You are responsible for quality on the project, and that includes everything delivered by a vendor. So in your planning, what processes will you have in place to ensure quality work from the vendor?
  9. Integration - So, we have seen that quality permeates ALL of the nine other knowledge areas, and must be dealt with in all process groups. Integration is the realm of the PM and by its very name insinuates interplay among them all. As we have seen, quality is no exception. In fact, it is probably the rule. So build it into your projects. And remember - you can't test quality

How do you plan for, assure and control quality on your projects?

Posted on: November 08, 2016 03:01 PM | Permalink | Comments (3)

Don't get COT[s] by your package!

Ever been on a project where your client has already chosen a package solution?  How many times has it been based on a solid set of business requirements, complete with all those great models you can read about in PMI’s Business Analysis for Practitioners: A Practice Guide?  

In my experience, and I won’t mention any names or locations to protect the innocent and avoid shining a light on the guilty, business requirements for packages can be very sketchy, often based on a document listing many unsorted and uncategorized sentences meant to represent requirements.  In the worst cases business requirements can even be overlooked entirely.  

Why do you suppose people feel that because it is a package, it will have all the necessary functionality for a business, and that if it does not, the business can adapt?  Or that the package can be modified to meet requirements at little cost?  

Familiar with the famous term “fit gap”?  This is where requirements, however they are documented, are compared to package functionality, and the package with the highest score wins. Sadly, such analysis is often performed at far too high a level.  And worse still, the number of requirements that cannot be met are often presented as the inverse of “percent fit”.  

Sadly, the cost of changing a packaged solution to meet the 10% of requirements it doesn’t meet can often be greater than the cost of developing something to meet all requirements from scratch.  Or, the 10% some other package didn’t meet could possibly be met at a much lower cost, or even eliminated altogether if they were a low priority.

It’s a bit of a conundrum, isn’t it?  Do you spend time and money defining your business requirements in advance of making a build or buy decision when you know quite well that you are going buy a package regardless of what requirements are discovered? Are you just going through the motions? Or maybe you think your organization can adapt to the business model upon which a package was built, thinking that the package represents best practices in the associated business.

I believe no matter the route you are choosing, eliciting business requirements from the beginning and defining and managing the detailed requirements will bode well for any organization so that they can measure the success of whatever decision they make to achieve their business goals. After all, if you don’t ask the questions, you will never know the answers!

What has been your experience with the installation of packages that have been installed to satisfy specific needs? What about ERPs? Have your clients/users been satisfied with the result? Were requirements sufficiently defined prior to package purchase and installation so that a baseline comparison could even be done?

 

Posted on: July 07, 2016 03:00 PM | Permalink | Comments (1)
ADVERTISEMENTS

"Marta was watching the football game with me when she said, 'You know, most of these sports are based on the idea of one group protecting its territory from invasion by another group.' 'Yeah,' I said, trying not to laugh. Girls are funny."

- Jack Handey

ADVERTISEMENT

Sponsors