Christmas Opening: 22nd - Closed from 1pm | 25th December - 2nd January - Closed | Emergency Support Only for SLA Clients 01527 919980

Why we choose to work with an agile software development mindset…

The way you view and work with something will, inevitably, drive its success. 
 
It was Einstein who said that we can't solve problems by using the same kind of thinking we used when we created them. We whole-heartedly agree. 
 
An agile mindset suggests that the old, formulaic ways of thinking are not the best way to drive successful software development. 
 
Older methodology involved processes, documents contract negotiation, and standardised plans.
 
The world changes, and it changes fast. In our world – it changes even faster. The same level of thinking that was used to fix a problem last year won’t always serve us to fix a new problem we have now. 
 
Moreover, the learning from the last project we completed doesn’t always serve us for the next one. We prefer viewing each project with fresh and flexible thinking.
 
Agile Software Development is more powerful and successful and this is the methodology we use with our project management at iO Studios. 
 
But what is it, and how does it improve the success of software creation?

 

The 12 principles of Agile Software Development

 
There are 12 rules or guidelines to work by that go against the older, more traditional ways and encourage a fresh and growth mindset. 
 
‘This is the way it’s always been done’ is the antithesis of Agile. 
 

Here are the 12 principles:

 
1. Satisfy the customer through early and continuous delivery.
 
2. Welcome changing requirements, even late in development. 
 
3. Deliver working software frequently, from a couple of weeks to a couple of months.
 
4. Developers and customers must work together daily throughout the project.
 
5. Build projects around motivated individuals by giving them the right environment and trust.
 
6. Face-to-face conversation is the best way to share information.
 
7. Working software is the primary measure of progress.
 
8. Agile processes promote sustainable development. 
 
9. The continuous attention to technical excellence and good design will enhance the agility.
 
10. Simplicity is key to success. Minimise the unnecessary.
 
11. Some of the best results come from self-organising teams.
 
12. At regular intervals during the build, the team must reflect on the current progress and success, and adjust to improve on it. 
 
Each principle will help and nurture the Agile process and produce better results and more successful projects. 
 
Avoiding long meetings, endless streams of emails, and complicated spreadsheets encourages creativity as well as new ideas and growth which encourages the success of the final piece of software. This is something we’re constantly striving for. 
 
 

How and why Agile works for software development

 
Let’s break down each section briefly and look at why we believe they’re essential to our work…
 
1. Satisfy the customer through early and continuous delivery.
 
Getting some early work and results of meetings and explorative session is essential to drive the energy in a project. Then, continuing to deliver throughout the project drives it more. The highest priority is the satisfied client, and the core goal drives the team and their actions. 
 
 
2. Welcome changing requirements, even late in development. 
 
In the old days, a client who “has an idea” late in the project was an annoyance to software devs and teams working on a project. But companies, like we always have, see this and welcome it and something that happens to truly successful software. The iPhone is a great example of this. Many say they were late to the game. It wasn’t the first smartphone, but what Apple did was wait and research and learn, and then they built the easiest to use, and thus it became the most popular. 
 
 
3. Deliver working software frequently, from a couple of weeks to a couple of months.
 
Speed can be seen as a bad thing, but in software terms and certainly with Agile, speed keeps everything on track. Working at speed stops the to and fro, the lacklustre working, and encourages the best use of the time available. How often have you given yourself a long lead time and found yourself working right up to it? And how quickly could you get your suitcase packed right now for a surprise trip tomorrow? Parkinson’s Law is at work everywhere, so we make it work for us and our clients.
 
 
4.Developers and customers must work together daily throughout the project.
 
We don’t build the software for ourselves, and our clients don’t tend to understand how to build the software at all. So, we have to work together. Using our clients’ ‘on-the-ground’ knowledge and our skills combined is far better. In the past, software was often built without the end user in mind, or solely based on what the customer thought they wanted. The better, more Agile approach, is to combine them, constantly!
 
 
5. Build projects around motivated individuals by giving them the right environment and trust.
 
Your environment is important. Even a messy desk can hamper your productivity. At Google’s London HQ they have fake grass on certain floors, beds, play rooms, bike racks, and a bar on the top floor. The fresh, vibrant, and exciting environment means a more happy and productive team. Agile working needs a positive environment that motivates the team to produce far greater work. 
 
6. Face-to-face conversation is the best way to share information.
 
Sending documents back and forth, working in Google Drive, sharing content in the cloud. It’s all wonderful, but nothing - even Zoom and Skype – beats a real life 121 meeting. Getting people together creates a vibe, a buzz, an energy, and there’s plenty of research to prove that two heads are not only better than one, but have the capacity of more than two. Face-to-face conversation is essential to Agile software development, so we make sure we facilitate this.
 
7. Working software is the primary measure of progress.
 
When it comes to goals, this is a great one to work to. Working software doesn’t just mean ‘it works’. It means it’s signed off, fulfils the goals of the project, and meet or exceeds the requirements of the whole team involved. Without ‘working’ software, the project isn’t a worthwhile one according to an Agile mindset. 
 
8. Agile processes promote sustainable development. 
 
It can be very easy to lose momentum in a big project. It’s often tempting to leap off the starting line and exhaust all your enthusiasm right away. Agile processes promote a more sustainable flow of work and other areas that create a winning creation. 
 
 
9. The continuous attention to technical excellence and good design will enhance the agility.
 
Hang on! Aren’t we trying to deliver all this quickly and continuously? How will we create beautiful and clever design that pushes the boundaries? Well… that’s the kicker with principle 9… you have to hold back on showing off! Our aim is to deliver what gives the best result and works the best, and this isn’t always the sexiest of designs or the over-complicated version. 
 
10. Simplicity is key to success. Minimise the unnecessary.
 
Simplicity should drive Agile. Our projects create software that is beautiful in its simplicity, not because it’s stunning to look at or hear about. Think about some of the most popular software in the world and you’ll find that it’s really rather simple. Google, for example is a brilliantly simply solution to finding that best results online. The design is basic, the functionality pretty much unchanged. Contrast this with over-complicated software that you’ve tried to use in the past. You probably got frustrated or gave up on it.
 
 
11. Some of the best results come from self-organising teams.
 
This all comes down to having faith in the team you work with and not putting people in compartments and stopping them from being involved in areas that they’re not specialist in. Trusting in this process is a tough one for some developers as it leaves the door wide open to conflicting views and direction. A good team should move and flex with each other and this self-organising approach creates better thinking and results. 
 
 
12. At regular intervals during the build, the team must reflect on the current progress and success, and adjust to improve on it. 
 
Leaving the reviews until late in the project won’t allow for Agile movement and thinking. It won’t allow for being open to new ideas. It will quash those great moments and won’t help you identify any issues early on.
 
Building in regular intervals to reflect, learn, and discuss the project will be more likely to help to produce great software. 
 

Then sprint!

 
And then you take all those principles and work in sprints. The idea of sprints is laid out perfectly in Jack Knapp’s book, Sprint. Sprints are based on a style of working created by three workers at Google who needed a way to create software faster and more efficiently.
 
As described in the book, Sprint, a Sprint is: “A unique five-day process aimed at helping businesses to answer crucial questions and deliver the best results in the least time, allowing the business to move on to the next level.”
 
A Sprint short-circuits the endless debates and comms that many projects are strangled by. Instead it uses the people, knowledge, and tools that every team already has.
 
They kick-off with a meeting with everyone involved and continually pull the team back in for continuous improvement and working. 
 
The principles fit perfectly into a Sprint. 
 
Sprints are time blocks in Agile which are used to deliver work. We use 2-week time blocks. 
 
A sprint for us is usually 2 weeks, although there are sometimes exceptions.
 
With Sprints and Agile Software Development we’re creating better results, more quality software, and changing the way we work and build constantly. 
 
Something that the world, the tech world, needs more and more. 
 
 

Ready to sprint?

 
We’d love to chat about your project and show you how Agile and Sprints could deliver some business-changing software for your business. 
 
Software, good software, can change a business. Long, overly complex, drawn-out projects are not going to do that. 
 
Contact us now… let’s Sprint!  
 

Our recent work

View all case studies

Core

Back Office middleware system that integrates multiple third-party software using API technology.

View case study >

Waste Efficiency: Waste Management Software

Read the case study on our online order processing, compliance and reporting software for Waste Efficiency here...

View case study >

ABS Vehicle Fleet Management systems

Certify, Resolve and Vault were created as a suite of systems so ABS could digitise various key commercial processes across their operation in order to improve efficiency and customer service.

View case study >

Effective Pricing

Effective Pricing is a multi-layered, tenanted system that allows for customised, buildable quotations from finance professionals - allowing firms to prioritise value, rather than cost.

View case study >

Leisurecentre.com: Member Acquisition Software

Read the case study on our configurable modular software for consumer tablets for Parkwood Leisure here..

View case study >

SWIO: Transport Management Software

Read the case study on our multi-platform logistics & transport management software for Skirting World here.

View case study >

IO Studios Ltd | Company No: 6490299 | VAT No: 901 4808 48