Over the last 18 months we have revolutionised the way we build your software using well recognised Agile and Scrum development methodologies. The benefits of this new approach have been demonstrable to the development team and company as a whole, but in this blog post I'd like to identify the tangible benefits to you, the end users of our system
Before starting work on our PebblePlus redesign project, we identified our vision; this became a shining light, guiding all decisions made during our development process. Our vision was based largely on customer feedback from meetings and events held in both the UK and Australia. As we compiled our collective experiences and reflected upon them, the Pebble Pirate Plan emerged: Adaptive; Responsive; Great Design; Helpful (ARGH). Our vision describes a system that adapts to how it is used, responds to whatever device it is viewed on, has great visual design whist providing an excellent user experience AND is genuinely helpful by explaining key features and ideologies. During the project we have ensured every decision has remained faithful to our pirate plan, thus turning our vision into a reality.
When building a system as complex as PebblePlus you find yourself with a long 'to do' list. However, if this is just a list of tasks how can you be sure the completion of each task is actually adding value to the product? We prefer to write our tasks as 'user stories' which identify the value element of each task. For example:
"As a user I would like to select a piece of text and make it bold so that the headings in my webfolio stand out".
Here the value is clearly the ability to make text, specifically headings, easy to identify, but we noticed that when we really started thinking about value something very interesting happened - we began to see our system through the eyes of our end users. This user story ignited a discussion about whether making headings bold was the best approach, the result was another feature that allowed CSS controlled headings to be used and changed to match any asset theme. Through writing and subsequently scrutinising our user stories we are making sure all our development effort is of real benefit to users of our system.
It is fundamental that quality underpins everything we do. We therefore apply agile principles and test every piece of work at every stage of development. Concept work is checked with all relevant team members and often tests are carried out on paper prototypes to ensure the concept is usable. At the design stage, more tests are conducted on working prototypes to confirm the concept integrates well with the rest of the system. At the development stage, each developer writes automated tests to guarantee their code functions correctly and, again, the feature is tested with end users to ensure the finished feature fulfils its original user story.
There are many other examples of how Scrum has improved our practices, but at its heart it is a reflective approach with a mantra of ‘inspect and adapt’. The synergy of building a software system that promotes reflection, using a reflective framework, allows us to constantly improve ourselves and in turn the service we provide.