Iasi, February 11, 2015
When an organization plans to develop a financial software, there are multiple factors that require consideration. As the current financial software market is highly dynamic, users are quick to abandon any product that does not meet their standards immediately. At the same time, the room for product error is constantly decreasing, and therefore modern day financial software needs to reach the market in a complete, user friendly state. One of the best ways that this can be accomplished is by introducing an agile methodology: Scrum, into product design as well.
To clarify, throughout this post I will use design as a generic term to encompass graphical design, user interface or user experience.
Scrum in product development: a multi-pronged approach
There are times when the simplest answer is best, and then there are times when you need to rely on a multi-pronged approach. This is useful in software development, and can successfully be applied to design separately.
To get it right the first time you need to carefully balance elements of user interface, user experience and usability. When you add the end user to the mix, the process becomes even more complex. Understanding this during the initial design planning process (and not when it is struggling in the market) can make the difference between your product flying or floundering.
If you manage, create or distribute financial software then you will know success begins with making the correct management decision. Using Scrum supports making the right decisions in the already complex area of software product development.
Initially described by its creators as a “flexible, holistic product development strategy where a development team works as a unit to reach a common goal”, Scrum evolved as an antidote to the traditional silos that existed in the product development field. It encourages the team to work together – roles overlapping – to meet an end goal. This deviates greatly from the traditional waterfall approach of sequential steps, where each step needs to be completed and closed before the next began. Instead, collaboration is encouraged, with the design being planned at the same time as development. These activities are accomplished in ‘sprints’ or iterations, which is defined as a confined and repeatable work cycle.
An ideal project starts with the end design in mind, introducing a design sprint first called Sprint 0. This allows a core design strategy to be created, after which the design and development can briefly split to focus on their respective activities for the next few Sprints.
Sprint 0 and Design Spikes
Many organizations that deal extensively with software have found the Scrum approach to be incredibly useful in the design phase of a project. Considering the unique nature of financial software implementations, a combination of Sprint 0 approach and Design Spike approach might net the best results – depending on what each application requires. The Sprint 0 approach is one that starts before any official sprint as a pre-sprint meeting. This allows any existing issue to be ironed out, and also is useful when the team in question is not familiar with Scrum. The Design Spike approach was popularized by user experience designer Damon Dimmick for use in complex projects, and it involved setting aside specific periods of time to specifically tackle design questions and queries. Design Spikes fit in between Sprints, and the aim to keep the greater team from proceeding with development work that could be unnecessary.
There are three distinctive advantages to the adoption of these methods when it comes to design, which will easily be found in other areas of product development as well:
1. Better Customer Experiences
The first marked advantage of using Scrum for design is its positive effects on customer experience. By keeping design questions in mind from the outset, any changes that need to be to implemented can be caught and carried out quickly. This also allows clients’ expectations to be managed, cutting down on the costs that usually arise from having to revisit screens or interfaces. As a result, design does not changes but evolves. Clients can define functional requirements as sprints move through while the team concentrates on delivering well-designed, fully functional software each time.
2. Maximized Efficiency
The second key advantage experienced is maximized efficiency. This allows for the unique experience of letting clients in on the product development activities. By bringing them into the loop to see the logic that goes into decision making processes, the project as a whole can be fast tracked. Product design becomes an evolution, and less of a fixed, sequential building process. Software companies use an adaptation of Sprint 0 as a good practice to introduce clients to Agile Design, as it allows them to ease into the process and become familiar with what is required of them. This is fast becoming the approach of choice, as well as using design spikes. By setting up the guidelines of the desired user experience in the beginning, teams are able to steer the project in the right direction as business requirements change and screens or features are updated.
3. More Creative Freedom
The final, and perhaps most intangible advantage of using Scrum in design is that the entire team gains freedom and creativity. By breaking up the design process, into smaller and desynchronized sprints, many organizations have found that their teams are able to have more independence when it comes to generating design ideas. By lining up processes to be executed at once, organizations test several concepts at the same time. It also allows for other members of the team who are not directly involved in design to be able to offer perspective on the various approaches being employed.
Design using Scrum
By understanding that design is compatible with an Agile methodology, Scrum becomes a viable approach towards product design. It is obvious that Scrum offer organizations a unique approach to going about this process, but it is also important to note that it may not be suitable for all companies.
A flexible mindset is required as Scrum involves constant amendments and changes over the lifetime of a project. While planning and strict delivery times may still exist, the focus is to always build most important features first, and as the project advances, business priorities take more shape and priorities shift. In using design sprints, the development team has a clear picture of the general guidelines, and focuses on using and following them on each new delivery.
Large organizations working on tight schedule may believe this approach is not suitable to their processes. Nothing further from the truth, as it is being used today from government to highly regulated industries. At Maxcode we have used it to deliver financial software products, in time and scope, that also look just as well as they work.
Scrum only sets up a superior process structure – it is up to the team be it client, developer, tester or designer, to actually make the software in question live up to its name.