0% found this document useful (0 votes)
26 views16 pages

Agile RFP Booklet With Template

Uploaded by

Shahan Jahangir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views16 pages

Agile RFP Booklet With Template

Uploaded by

Shahan Jahangir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

AGILE RFP FOR

SOFTWARE
PROJECTS
Building value and trust since day 1

JAROSLAV PROCHÁZKA
TRADITIONAL RFP 3

WHAT IS AN AGILE RFP? 4


BUILT-IN BENEFITS OF THIS APPROACH 5
PROJECT VELOCITY AS THE FAIR-ASSURANCE 7

SIMPLE CHECKLIST FOR AGILE RFP 8

BEFORE YOU EVEN START YOUR AGILE RFP THOUGHTS 8


OK, LET’S GO FOR IT! 10
3, 2, 1 … RFP KICKOFF 12
THE RFP SPRINTS 13
THERE IS ALWAYS ONE WINNER: YOU! 14

ABOUT AUTHOR 16
TRADITIONAL RFP
Traditional procurement procedures including
Traditional RFP is sort of legal steps like RFI (Request for Information) and RFP
preparation, unintentional (Request for Proposal) steps are based on
declaration of mistrust and extensive paper work consuming a lot of time and
delivers very low business resources on customer and vendor side. Such a
value regarding the project procedure is sort of legal preparation,
itself. unintentional declaration of mistrust and delivers
The “valuable part” of the very low business value regarding the project
project only starts after itself. We “only” select the vendor but there is
contract is signed and the almost nothing to be used on business side when
scope is fixed. this procedure is done. The “valuable part” of the
project only starts after contract is signed and the
In traditional RFP, you do not
scope is fixed.
have many ways how to
practically verify provided Such procedure and behavior is quite
information, apart from understandable from the customer point of
references. view. Customer would like to select the best
vendor according to proposed price, promised
quality, declared business knowledge, experience
and speed capability. But the point is the word
“proposal”, “promised” or “declared”.

In traditional RFP, you do not have many ways how to practically verify this information,
apart from references. Is the proposed triplet price-quality-speed real? Is it even
physically feasible? How can I – the customers that is not an IT expert – even asses it?
The experience says the reality quite often varies from the proposal. And one of the
reasons is the procedure itself. Big pressure on price, fixed scope with very low
flexibility for change, late delivery, low value, lack of trust… Sounds familiar to you?

Such a distorted conditions are even more affected by so-called fix-price-contracts that
are in reality fixing the scope, budget as well as delivery date. Still I don’t get the point
why we call it fix price, if we fix all project aspects, not just the price. IT vendors are
forced to lie in their proposals under such conditions. Fortunately, there are also other
options. One of them is an Agile RFP.
What is an Agile RFP?
Agile RFP is a practical way of value-based competition between invited or pre-selected
software vendors. Rather than asking and replying to questions and than determining
which answer and proposal is better, you really try it, experience the vendors and see
the real results.

What do you need to run such a RFP? You only


need Agile experience and have a relatively
small part of the future project that can be in
Agile RFP is a practical way
the scope of RFP competition. It doesn’t matter
of value-based competition
whether it is a new service or a product to be
between invited or pre-
selected software vendors.
built, integration project or implementation of
CRM or ERP. Always, there can be found a
small horizontal cross-layer-step that can be
Rather than asking and delivered to see (and immediately consume) the
replying to questions and value of the project.
than determining which
answer and proposal is
better, you really try the
Examples can be following:
project, experience the
vendors and see the real • For the new project: it can be one core
results. user story like the calculation of salary, first
version of management dashboard with just a
few measures or the invoice issuing, not the
register to insert or edit the data although
vendors can tell you they need to start with this. But what is the value of simple
register without any extra function on top of it?

• For integration: it can be just one typical scenario integrating subpart of planned
systems but delivering new functionality. Typically the scenario used daily (not
only sometimes) or processing 30% of all requests or low frequent one but with
highest value.

• CRM implementation: it can be simple sales pipeline feature or new valuable


report based on existing company data.

The goal is to find few simple scenarios delivering something new that can be ideally
used in real life customer environment after the RFP is finished. Of course, not always
need to be released in the live environment, but it is and should be shippable. It is not
buggy-spaghetti-code prototype. This is the point. And by such mini-project you verify
the promises of the vendors. You experience their way of working, communication style,
the team, flexibility, skills and domain experience. At the same time, it serves also your
learning. By the regular demonstrations of the initial solution, you clarify your needs and
expectations. Based on this, you can still adjust the scope of the whole project.

In other words, there is no better way to clarify your needs and


verify vendors’ promised ability of frequent releases, high quality
code, velocity, ability to work with open and changing scope, and
cooperation style, than to experience it in real life under future
planned conditions.

Already after the first sprint demonstration, you’ll see the profile, abilities,
communication style and attitude of the vendor. You also see the week-by-week
progress. Some vendor will set the speed and run like hell all the time. Others will
significantly improve as they learn. One can be really business-oriented or proactive.
Other can be more technical or passive. All this will help you to clarify your needs.

Built-in benefits of this approach


Why is it good to conduct such a competitive selection mini-project rather than a
traditional RFP procedure?

• You build trust and cooperation routines since day 1.


• All competitors deliver real and shippable value.
• Much shorter time is spent on paper work, people work on real value product, not
on paper piles used later on for decision.
• Practical verification of vendors’ skills, experience, working routines and
approach in the future project context.
• No (or at least less) room for politics. There is usually collective agreement on
the winner. The skills and results are clearly visible to all people participating the
demonstrations. It is based on facts, not on theoretical answers and
personal/political preferences.
What people say after the Agile RFP? I will mention only one statement:

“Now we have 3 usable MVPs and clarified project roadmap just after 1 month of
work. In the traditional RFP, we would be still in the phase of internal discussions
about what we really need with just part of initial requirement description.”

Such Agile RFP is not so easy to run. There are many small aspects that can go wrong
and a lot need to be prepared upfront (but still less than for traditional RFP). Therefore
there is one key precondition before starting Agile RFP. You should be practically
experienced with agile way of working, not just from software development or IT
operations teams, but also from business teams.

If you answer yes to few of the following questions, you should be ready to try Agile
RFP:

• Have you already tried to run project/product cross-functional business teams


sitting and working together instead of “teams” in functional silos?
• Does your team have a clear prioritized backlog of tasks/projects (not just all is
priority 1)?
• Do you limit Work-In-Progress (at least on project level)?
• Do you show and release outcomes of your work frequently?
• Do you ask your real users for the feedback on your work?
• Do you run regular retrospectives to improve?
• Was some of the mentioned done in the context of your business units, HR,
sales, marketing or even in the management team?

If you don’t understand these questions or you haven’t heard yet the terms like
retrospective, WIP or prioritized backlog, than I recommend to try it internally first. You
can also read more about the required Agile experience and phases of Agile evolution in
organization as I see it from the Agile adoption cases.

Your experience is important, because you need to prepare the business side of the
project for RFP (scope, stories, benchmark estimates). You need to provide
experienced Product Manager (team) that will take care of the competing vendors,
consult priorities, and discuss acceptation criteria and all the proposed changes. You
are also supposed to conduct regular demo sessions with vendors and all this should
not be new for you.
Project velocity as the fair-assurance
You can wonder how to “compare” the vendors’ capability, velocity, value delivered and
how to ensure the sustainability in the subsequent project. Vendors can run
exhausting sprints to deliver the highest value and story points to win the RFP or they
can use “hidden” internal people. But this is not much sustainable. This is quite crucial
and can be done in several ways. We had following thoughts:

• Have the same/similar environment (internal or external)


• Have the same (claimed) team size and wanted to know the changes for the
sprints during the sprint planning
• We have prepared benchmark stories (with expert estimate from our side)
mandatory to all vendors
• Velocity achieved with claimed team in RFP was expected as the initial one in the
subsequent project.

Although we trust our pre-selected vendors, we wanted to have these checks included
in the RFP procedure. Such commitment to proven velocity removes all tempting
techniques and forces vendors to be sustainable in the speed and be open to us. It
worked perfectly in our case.

And to really gain the value out of the RFP, you should own the delivered code at the
end. Therefore prepare the license and IPRs agreement and pay all vendors for their
effort if they pass agreed RFP’s Definition of Done (e.g.: conducted all demo sessions,
showing the sprint plans, having code in GIT for demo, …).

Remember, the goal of such RFP is not to act from the position of power. The goal is
neither to catch vendors on something they don’t know. The goal is to build trust,
uncover risks early enough, see how they progress and solve these situations, learn
together and set the basis for future Agile project you are hiring for.
SIMPLE CHECKLIST FOR AGILE RFP
In the previous chapter, I introduced the nature of Agile RFP, its benefits, important
preconditions and the differences between Agile and traditional one. In this chapter, I
would like to share some points to focus on before, during and after the Agile RFP.

Before you even start your Agile RFP thoughts


As I already emphasized in the previous part, the most important precondition for
smooth and valuable Agile RFP is your own Agile experience. The rest is more about
accurate preparation, but your own Agile experience cannot be substituted by it. It has
to be witnessed. Why your own experience from Agile projects is so important? Your PM
and business people need to know the way planning, demo, scope changes or
acceptation is done to run Agile RFP successfully. Although Agile mentor can help you
to prepare it, she will not inject your business people the experience.

So, before you even start, think about following:

• Have you run your own IT and business Agile projects (at least several
releases, in several domains/units, not just IT) to become familiar with Agile way
of working and to change the mindset of business people involved in the future
RFP?

If not, first try it for several months at minimum to gain the knowledge and
experience. There will be too many new things in Agile RFP, therefore no time to
learn the new way of working.

• Involve also procurement and PMO people in early discussions, give them
some intro training and invite them to existing planning, demo, and retrospectives
of existing Agile projects to see how it works.

This is quite important to absorb the mindset and routines.


Figure 1: Map of Agile RFP
Ok, let’s go for it!
Preparation itself (several weeks) can be also run in several one-week iterations and
should cover following activities:

• Nominate Product Manager/Product team, who will be accessible for the


vendors during the project (someone on business side from existing Agile project
being purchased). It can be also small group of, e.g. 3 people to cover all
business aspects, knowledge and needs, but also for the case of substitutability.

We had just one Product Manager and it was quite exhausting for him, since he
was still involved in the business part of the project being contracted for IT
implementation. But he was very capable and efficient and he managed it quite
well.

• Prepare the high-level business scope of the RPF (goal, context, selected
business area and first few stories to be implemented, those can be more
detailed).

• Prepare benchmark stories/use cases with business and IT people


(description, acceptation criteria, estimates) that will be mandatory to implement
and can serve as a basis for the “vendors’ comparison”.

Although the velocity among the teams is not comparable, we’ve chosen to set
story etalons to compare somehow the speed as well as thinking of vendors. We
described several basic and integration stories, set their effort estimation (with IT
guys), set them as mandatory and kept the rest of the scope open for
modifications to see vendors’ approach, communication style, proposal ideas and
business thinking. It was risky, but one of the best decisions at the end!

• Set the size of allowed vendors’ development team (keep it small, something
like 3 to 5 people including analysts and testers) to have comparable results and
deliverables.

Ask for openness if vendors use other people to help, e.g. UX people, other
analysts, architect helping with design.

• Communicate clearly the way RFP will be handled to all vendors invited.
Show them the model, calendar of planned sessions, explain them the conditions
and Definition of Done.

Not all may potentially accept such form of RFP, mostly if they are not
experienced with Agile. By the way, you set the expectations and demonstrate
one key Agile principle, that is open communication.
• Prepare IT environment for all vendors invited to RFP (e.g. to verify the
integration with selected internal system/interfaces).

You can transfer this responsibility to vendors by proposing external IT


environment, but you will not verify their ability to integrate with your systems if
you plan to use your internal environment. If you plan to use some cloud
platforms, use it from start. This setup depends a lot on the nature of the project
and your intention with it.

• State technology preferences and limitations if any. Many customers have


their IT strategy, preferred architecture, communication systems (e.g. SOA or
MQ), databases and people skills (which is important for daily support).

If you request specific technologies, state it in RFP conditions. But also keep your
RFP open for new possibilities and technologies that can improve your IT
environment as well as teams productivity.

• Prepare the calendar of all RFP ceremonies: kick-off workshop, separate


planning sessions with vendors, consultancy with PO, IT, business users (and
others if needed) and demonstration sessions.

We discussed common or separate planning sessions also with vendors and


decided to have separate session with each of them. The main reason was the
voice of vendors. They wanted to use their domain expertise and knowledge
during the planning sessions to propose feature updates, look and flow and we
liked it.

• Prepare your Definition-of-Done (DoD) for the RFP. Based on their


achievement you will pay vendors for their effort (for source code ownership).
Use standard DoD items like demo happened, code stored in and built from
agreed repository, code reviewed by your IT people, etc.

The amount of money you pay is up to you (remember, in traditional RFP you pay
vendors nothing for their time spent on RFP answers), but it should be fair price
for both sides. Depending on the length of the RFP project it can be 5.000-50.000
Euro per vendor.

• Prepare further material for vendors: project details (context, needs, goals),
epics and stories for the RPF sprints (2 to 4), templates for planning, assessment
and demo.

We had 3 one-week working sprints and initial release planning sprint to see their
progress, ability to work with changes, and ability to understand and propose
business value.
• Prepare RFP evaluation criteria and templates to be used by your internal
people during the sessions (mostly demo) to evaluate the vendors. This is
usually based on your RFP selection criteria, therefore items like business
knowledge, added value, usability, Agile skills demonstrated are used. This would
be later on completed by proposed price for the future project development,
delivered value in RFP mini-project and support conditions.

As you can see, there are many steps that need to be prepared. These steps consume
mostly the time of business people. You may be confused now, where is the promised
benefit of less time spent and more value delivered ;) Although mentioned activities can
look time-consuming, it is and should be less time than would be spent on preparation
of full detailed scope of traditional RFP.

Moreover, you get a working code for it, not just paper answers! And last, it is also
preparation for the future project development continuing after best vendor is selected.
Now you also see why there is no time to teach people Agile, they need to be already
aware, skilled and self-sufficient.

3, 2, 1 … RFP kickoff
Kick the RFP off by the initial workshop with all the vendors to ensure all hear the same
project information at the same time. Explain the context and the goals of the business
project that will be in the scope of this RFP. It is great, if business owner can present it
herself. Of course, the details are provided by Product Manager or by other team
members.

Explain and have discussion about the initial mandatory stories required in the RFP and
ask vendors to prepare RFP roadmap (it was our sprint 0, so called release planning).
We had four one-week-sprints. The first one was release planning and preparation and
the 3 following sprints were already delivering the value in form of functioning software.
The RFP sprints
What to focus on during the Agile RFP:

• Conduct planning and consulting sessions with PO (or Product team)


o Separately for each vendor so they can be safe to ask the questions
based on their domain and engineering expertise.
• Conduct regular demo (separately for each vendor), evaluation criteria could
contain following:
o Demo itself (professional, clear, on time, achieved scope?)
o Business value delivered (acceptance criteria and value thinking)
o Agility (cooperation, learning, openness, visibility)
o DoD fulfilled (roadmap presented, demo happened, code in repository,
agreed documentation e.g. as commented code)
• Provide whatever support if needed
• Assess the vendor continually and synchronize quickly after each demo. For
this reason you prepared the internal evaluation template.
• Run regular retrospective with internal team and adjust what is needed.
• Explain to vendors future Agile Contract model and send it for review if
planned (current mini-project velocity will be set as a basis to avoid any tricks
and cheating in the RFP mini-project).
• Ask vendors to propose release plan for the first release of the subsequent
project to see how they understood the project and think about the value for
customer.

Be also prepared to change and tune up the sessions, templates and way of working
based on the real findings. In other words, you will be also iterative and change
according the vendors’ feedback and the real needs.

We used verified vendor’s velocity from RFP mini-project as the baseline for the future
Agile contract, to be realistic in the competition and not to run overtimes or have it as
door opener project. Of course, it was taken as baseline with +-% interval, not as hard
parameter.

One point I will make here is the visible progress and attitude of the vendor. Usually
after sprint 2 or 3, patterns start to emerge and vendors stand “naked in the light”.
Everybody can see their strengths, weaknesses, key differentiators and communication
style and there is common agreement among all internal people on it. In such
environment every vendor’s progress is very visible and appreciated. Quite objective
and fair, right?
There is always one winner: you!
There should be always one winner after the Agile RFP mini-project and it should be
you, the customer. Now you should own several working software implementations and
possibly some can be already shipped to LIVE environment with just slight code
additions! All this just after one month, or so.

If you cannot ship to LIVE, there is still quite high value. Now, you should have cleared
your needs and the project goals, you should get common agreement among internal
business people and decision makers and have also plenty of ideas visible and
demonstrable in the form of working software.

So, how to close the RFP project and how to continue with the project itself?

• Run separate overall demo with all vendors (check planned vs. delivered,
changes, progress, learning, feedback).
• Conduct the final vendor assessment based on your selection criteria
gathered continually after each demo.
• Check the DoD defined for RFP. Have all vendors fulfilled it? Can you pay them
for the delivery?
• Have common retrospective with all vendors. Give them feedback, thank for
their effort and also ask for the feedback on the routine as the whole.
• Ask vendors for the updated price and roadmap proposals for the future project
being purchased.
• Sign an Agile contract with the winner.

Remember, the goal of Agile RFP is not to catch vendors on something they don’t know.
The goal is to uncover it early enough, see how they communicate, learn and progress,
see how they solve these situations, learn together and set the basis for future Agile
project you are purchasing for.

Be also careful about your K.O. criteria. I recommend not to state Agile experience
and references to similar Agile projects as K.O. criteria. Why? Many flexible and skillful
vendors can teach Agile way of working during the RFP and overcome the experienced
one. And this is good for you as a customer. Isn’t it? I experience this again and again.

If proposed price is one of your most important selection criteria, I would like to stress its
relativity. Higher price with higher vendor velocity can actually mean cheaper
project and higher customer value at the end of the project. More quality and
efficient vendor can have e.g. 20% higher velocity. Such vendor will therefore deliver the
value earlier than others. You as the customer can consume these benefits earlier as
well (and generate already higher revenue). Therefore, you can afford to pay such
vendor more money and still have higher ROI. Don’t forget about this math when
making final selection!

I probably skipped many important details, so you can have even more questions than
answers. Do not take this example as one-and-only approach. I rather wanted to show,
how Agile principles can be applied in other areas in business.

How does it sound to you? Have you already tried? What was your experience, value,
biggest risk? Please share your experience with me at jarek@differ.cz
ABOUT AUTHOR
Jaroslav Procházka, Agile and Innovation Mentor, Czech Republic

Jaroslav is utilizing his strengths for more than 13 years in IT


industry in various development, maintenance and
management roles and positions. He has 10 years coaching
and mentoring experience in Agile and distributed
environment. He has worked with about 700 people and has
trained few thousands people so far. He published a book on
Agile and Lean support and maintenance in 2011 (Grada
publishing) and other free e-books on Agile and Lean topics
(can be downloaded from www.differ.cz).

Jaroslav focuses on longer-term initiatives conducted together with management (more


systematic and sustainable) also including soft skill workshops and coaching to utilize
his experience and interest in psychology. His favorite tools are Kaizen workshops and
(Agile, Lean ITIL and Service Design) games, because people find their “aha” moments
by themselves.

Jaroslav earned his Ph.D. at University of Ostrava in 2007 and was also researching
and teaching Software development and Information Systems for 10 years there. He
speaks at international conferences like Agilia Conference, IBM RSDC Conference
2009, Information Systems Development 2010 or International Conference on Global
Software Engineering 2011.

Twitter: @JarekProchazka LinkedIn: Jaroslav Prochazka

You might also like