Summary
Myself and a partner, Daniel Kim, were hired to develop a survey taking and administration platform for Employee Opinion Surveys. We chose to build this project with Ruby on Rails, JavaScript, AWS (EBS + DynamoDB).
Inception
During the Inception Meeting I worked with my client to define goals, risks, and anti-goals. These items served as an anchor for all future planning and prioritization.
We then created several user personas based on our ideal customer. Next, we created high-level features, refined those features, and prioritized them. By the end of our meeting we had created a high-level set of Features and Stories.
Story Writing
With the output from the Inception Meeting I began drafting up the first batch of stories. After the initial draft I made another pass to refine, gather additional requirements, and prioritize the entire backlog in PivotalTracker.
Mockups & Prototypes
Having clearly defined goals and features I proceeded to mockup the various workflows in Sketch. I started with low-fidelity wireframes and clickable prototypes, in InVision, to validate our assumptions about the User Experience. I then refined the UX and moved onto creating high-fidelity mockups to be used for development.
Development
Having concise stories with clearly defined acceptance criteria made implementing features—with complete end-to-end testing—a breeze.
Additionally, TDD gave our two-man team the confidence to implement new features without fear of regressions. Here's a quick peak at some of our tests:
Completed stories were deployed to a User Acceptance Testing (UTA) environment—for the customer to test. This allowed me to keep a tight feedback-loop with the customer. If a story passed it was moved to staging. If it failed I documented the failure, and the story was restarted.
Conclusion
I've only scratched the surface, but this project was a huge success. It's enabled my client to move away from their dependency on expensive third-party SASS offerings.
With this platform they're saving thousands of dollars each year. Further, they're now able to take a better posture in the market place. Offering competitive pricing, and additional value, that wasn't a realistic option before now.