Interpreting an RFPPrepared by George Saines, Caktus Group
Why me?Work at a small web consultancySee full project life cycle every dayLots of hands-on experience creating proposalsbased on RFPs
Two Goals:Answer question: “What are contractors thinking?”Improve the outcomes of your RFPs
Presentation OutlineExplain how Caktus interprets an RFPWork through a short exampleOffer high level thoughts and suggestionsPresentation will take 30 minutes
Projects in the WildCaktus sees project proposals of all kinds“I have an idea”All the way to full blown RFP
The Spec Continuum
The ProcessASSIGN LEAD CREATE ROUGH ASK ADD CREATE DEVELOPER ESTIMATE QUESTIONS SERVICES SCHEDULE
#1: Assign a DevMatch based on previous experienceEstimators are lead developersEnormous value-addAlways check for this
#2: Create EstimateLine-by-line analysis of RFPBuild up spreadsheet of required work to meet thespeciﬁcation
#3 ClarifyRFP question periods are enormously importantWarning signs: evasive/uncertain/general answersto questions
#4 Add Non-Dev WorkProject managementQuality assurance testingFeedback and reviewDesign and usability testing
#5 ScheduleTake requirements, map to calendar time, produceformal schedule
TimingEstimates normally take weeksA good estimate is expensive
Now An ExampleDLPA 8/2012 RFPShort: only 7 pagesSummary: they want a website that will make iteasy and convenient for the public to accessdigital library media
#1: Assign Lead DevColin had the necessary experienceFamiliarized himself with the RFP: read it
#2: Read & Estimate
#2: Read & Estimate
#3: ClarifySubmitted during their question periodReceived answers and adjusted estimate
#4 Add Non-Dev WorkPM, QA, Feedback, Design, UXUse static percentages of total developmentbudgetThis is developer-centric and intentionally so!
#5 ScheduleIn this case, RFP requires 32 weeksNecessary to ﬁt hours into scheduleTypically schedules change
Take Home AdviceThree speciﬁc points that will improve your RFPoutcomes:1) Have developers write the RFP2) Create user stories3) Answer contractor questions fully: elaborate
Developer RFPsFuzzy requirements + fuzzy answers = ExpensiveQuotesGear the RFP to the people who will estimate itOften requires that someone in that profession tohelp write it
Create User StoriesUser stories are helpful, regardless of your industryHere’s a good link that explains how to write usefuluser stories:http://www.subcide.com/articles/how-to-write-meaningful-user-stories/
This is Not a User Story“We want the site to be intuitive, clean, andsimple. Users should be able to understand whatthey are doing at all times.”
This Is a User StoryAs a site administrator with superuser privileges, I log in to modify a Twitterhashtag via siteurl.com/admin. I am able to access the edit screen withintwo clicks and search for an existing Twitter hashtag, receiving auto-complete suggestions with available options. Once I select a hashtag, I can save it in the Twitter Aggregator app and have the site begin monitoring and collecting data immediately. The aggregated data should be visible on the front end within 30-60 minutes. Only users with superuser access privileges should be able to add Hashtags, but regular admin users should be capable of removing them. Once a Hashtag has been removed, the data associated with it should be cascade-deleted from the backend.
Answer QuestionsRespond quickly, be speciﬁc.Example: “The RFP mentioned integrating withTwitter to create front end visualizations, how isthis feature intended to work?”
A Bad Answer“The site should show up-to-date information fromTwitter that monitors the impact of the site’spopularity in real time. We would like to use thevisualizations to present to our stakeholders asevidence of social media interest.”
A Good Answer“We expect the contractor to use the Twitter API to aggregate and storeinformation about a speciﬁc subset of hashtags that will be managed via thesite admin by client staff members. The front end visualizations will consistof 2 bar charts. The ﬁrst will show the number of responses received duringa unit of time (we suggest reporting data by day). The second chart willshow the average number of links in the Tweets for the same period of time.The data will not scale based on the Y axis of the chart, and there will be noway for users to interact with the data. The underlying data should beupdated on page reload. Real-time updates will not be expected.”
The DifferenceSpeciﬁcity, attention to detail, an understanding ofwhat needs to be built.First answer might produce an estimate for thatfeature that is 4x higher.
Side NotesBudgets help contractors enormouslyGood developers won’t estimate work that isn’twell deﬁned.The project management triangle always applies.
ConclusionYou now know how contractors think of RFPs.You now have some tips for getting the most outof your RFPs.
Shout At MeEmail: firstname.lastname@example.orgWebsite: www.georgesaines.comTwitter: @gsainesLink to that article about user stories: http://www.subcide.com/articles/how-to-write-meaningful-user-stories/