Our clients need to accelerate their software development and speed up project delivery. With our help, they have increased throughput of sotware teams enabling them to keep up with the changing needs of the business. Some of the issues they have tackled are improving software architecture, managing technical debt and applying continuous delivery principles. Over the last two years, we achieved:
The improvement model is designed to help NZ companies understand the state of their current software development practices, with the aim of identifying improvement opportunities. These improvement opportunities aim to help software teams increase their efficiency and ultimately deliver software at the speed of business.
The improvement model primarily focuses on technical practices and architecture that support both high quality and throughput without delays. However, other important aspects are taken into consideration in this improvement model, including the mindset and values of people within the organisation and how they contribute to higher performance.
Each of the eight sections (see across) contains a number of statements that can be answered yes, no or not applicable. Broad answers are good enough! The answers are then aggregated in spider (or radar) chart (see below). The improvement model attempts to provide an simple but empirical tool to help organisations understand their relative strengths and weaknesses and to learn through practical improvement opportunities.
This section explores questions around team structure, communication, physical space and clear roles and alignment, pair working, t-shaped people and feature teams, as well as onboarding and training
This section focuses on principles of flow and product development.
This section queries the levels of planning, collaboration and prioritisation and visible artefacts
This section looks into the code and explores technical debt, as well as source control, branching and versioning practices and the general development ecosystem.
This section digs into practices of the test-automation pyramid (microtesting, integration, acceptance, manual exporatory testing) and non-functional testing such as performance, security and integrity, topped off with usability.
This section tends to focus in on coupling, modular design and dependency management and the ability to scale this for people and systems.
This section opens up the deployment pipeline to look at distinctions made between build servers, continous integration and how it is managed through environment and the level of automation in deployments, as well as general release management.
This section is all about people and their communication, learning and problem solving.
Our research using the improvement model suggests that most companies’ technology is performing at a 25-50% level—see the chart below. A few are in a class of their own, above 90%, with high business growth. So our aim is to help companies with great ideas move from a mediocre to a high level of technical execution performance, so that their business can accelerate.
Build for Speed is for businesses who are experiencing or are expecting technical and capacity challenges with scaling their business. It is suitable for both small and large organisations. We adapt our approach to the specifics of your organisation. We look to understand what works well and where improvements can be made; embed new practices and skills in the organisation; as well improve cost efficiency and scalability.
The program has two parts: Discovery and Deep Dive. Deep Dive ideally follows on from Discovery and is optional.
We usually work in pairs. In doing so, we tend to be able to pick up more information, more quickly and with greater clarity. On the flip-side for clients, who wants to hear only one person's view anyway?
We are also proud to offer these services in conjunction with Callaghan Innovation as part of their innovation skills programme.
2-8 weeks before you intend to start.
We recommend that you start early on discussions so that we can reach an agreement on how to proceed and give your team as much lead-time as possible.
1-2 weeks before you intend to start.
We send out an email to people participating introducing ourselves and asking them to do some preparation which gets sent back to us before arriving. For example, we get developers to give us a short example of a "smelly" piece of code and explain why.
Length: 1-2 weeks—with 2 days onsite
We have created an improvement model which is informative and light-weight based on where your business is and what it really needs. You can also use it to see where you might sit in relation to other companies that we have used the model on.
While onsite we talk to people about the code, systems, processes and general patterns of behaviour. We are looking for areas of improvement that are relevant to the business. We create an improvement backlog and report. The backlog is presented at the end of day and agreed on while onsite with the people who were involved.
Before we leave we agree on an engagement plan consisting of ranking, sizes, timeframes and metrics for success and failure to be addressed. We think of these as 30/60/90-day plans.
Over the following week or so we create a report for review and feedback. We're not finished until you return the report and are happy with the contents. This report is for your reference so that you can track progress in the future.
Length: about 40 hours
Out of the Discovery backlog, you will have identified some key areas or ideas to incubate. Deep Dive is a chance to get in-house, hands-on help. We look to build your in-house capability through the transfer of expertise from one of our people. It is surprising how clients all have specific needs, so we look forward to the challenge you set us here!