Every team helps to develop software
On how truly digital organisations include every team in their software development process. Technology is no longer just an IT affair.
As traditional sales and service channels are replaced by digital means, software has been brought to the organisational frontline and the back office too. Software now impacts every member of staff in their day-to-day.
Technology startups embrace the symbiotic relationship between software and the services they provide their customers. By pivoting and iterating both their business model and their software together, they are able to sense and respond in competitive markets.
Think about Uber's ability to launch a new service, Uber Eats, in response to consumer demand for simple food delivery. Their software development teams were able to respond with technology at a rapid pace that enabled them to enter a competitive market with a compelling product.
The opposite is true for disrupted organisations, such as banks, as they have to play catch-up feature by feature, rather than being able to innovate their services and software in parallel. They have not embraced a sense and respond approach, they have not empowered their software development teams, and they haven't got every team in the organisation feeding into the process.
For organisations to be transformed, they must ensure that every team is represented in the software development team.
Balancing user and organisational needs
The value that users derive from your software is in enabling their needs to be met. Users are employing your software to complete a task; they might be buying new clothes, renewing a driving license or preparing month-end accounts. For users to do that successfully the software must too be usable.
All too often software is shaped to solve organisational needs, rather than user needs. Why did I have to confirm my email address with Atlassian as I logged into Trello, even though I've been signed up to Trello for years? Why did I have to jump through confusing hoops – in this example, a multistep form – completely unrelated to my own needs of using Trello?
I later found that my username all over Trello had changed to an outdated username from my days of using BitBucket. To resolve that I then had to sign into Atlassian once again and change my details there, just so my colleagues that I shared Trello boards with would stop teasing me about my old gamer username.
Of course, organisational and user needs must be balanced. After all, it is organisational resources being spent on software so that the organisation's own needs are met. An e-commerce business wants to sell its wares in order to generate revenue and profit. That's the organisational value derived from e-commerce software.
The important thing for organisations to remember, is that in order for its needs to be met sustainably, its software must also meet the needs of its users:
- If your e-commerce store sucks and you've got competition: your revenue will not be sustainable
- If you don't have competition: you are a sitting duck awaiting disruption
It is therefore critical to represent both sets of needs in your team. The whole team ought to be empathetic towards both users and the organisation. User researchers and designers in particular can help focus the team on user needs, but design and research should be a team sport that everyone is involved in.
A subject-matter expert (SME) can also be included in your team to represent organisational policy and users within your team. Having a finance controller as an SME in a software development team developing a refunds and reconciliation service means that they will be able to explain finance jargon and can be a proxy for other finance users.
Supporting staff
Software is critical to staff that use it to interact with customers or colleagues while performing their role. There is a huge opportunity to close the feedback loop by ensuring your software development team works closely with staff users.
Collocating your team with the staff who will use the software they are building will enable fast feedback opportunities. Just walk your laptop over to a potential staff member and get that feedback. There's no need to wait for testing labs in a week or two.
By working closely with staff, you can not only digitise their processes but transform the way they work altogether. Coming back to the symbiotic relationship that technology startups have between business model and software, you can create this same relationship between your software development team and staff users.
By mapping the processes of service areas, you can help staff get a better understanding of the way they work and this provides them with tools to self-reflect on their process and how it might be improved regardless of technology. It also provides an opportunity to support and challenge them by showing the art of the possible with software.
Empowered to challenge
Organisational leadership must be represented within the team. Your team requires this leadership capability in order to make solid prioritisation decisions. This leadership ought to be able to defend the teams ability to pivot and adjust their plan based on their learnings.
You aren't necessarily going to be able to have the CEO of your organisation as part of your team on a daily basis; not even your CIO or CTO will be able to afford that kind of involvement if your organisation is at any kind of scale.
What you should be able to have is a service or product owner, who is involved on a regular basis and is empowered to make decisions on the organisations behalf. Your design and technical leaders within the team should also be able to make decisions autonomously regarding usability and feasibility.
This leadership must be able to challenge the wider organisation. If issues outside the remit of the team are blocking progress, or if policy and service areas need to be informed by learnings from the software development process, then the leadership within the team has a responsibility – and must be able to challenge the organisation.
Software is a good excuse for organisational change
Software, and digital transformation in general, presents a great opportunity for organisational change. By acting more like technology startups, slow-moving organisations can begin to embrace change more readily.
Only when your software development team works hand-in-hand with the wider organisation and it's users, can they maximise the impact of the software they are developing.
Sign up for new content weekly