How to create software that everybody wants to use
Open-sourcing’s collaborative model has applications beyond IT
At a private school near Canberra, the teachers struggle on a daily basis with software that has been forced upon them. It is supposed to connect them more closely with each other, with school management, with the students and parents, but instead it regularly deletes or loses the lesson plans they’ve spent hours developing.
The software is intended to make their lives easier, but it adds several layers of repetitive work. The IT department constantly organises training sessions, but the teachers have realised such sessions are best avoided, for as soon as they are taught a new way to operate the software, changes are made and it no longer works the way they were told.
The teachers (who prefer to remain unidentified) are now in the process of actively undermining the system their school executive purchased off the shelf. They have gone back to the old, tried and tested way of doing things – using pen and paper. The technology, the teachers have decided, is for technology’s sake and not for theirs.
This is a classic and typically negative result of an ill-conceived software acquisition program, one that did not involve the most important stakeholders – the end users – in the development process.
'In order to innovate over the long term, open-source developers and software businesses have to have a sustainable relationship'DAMRONGSAK NAPARAT
Development and functionality
Experts agree that best practice is a process known as open-sourcing – a form of crowd-sourcing that brings together software development leaders, external developers and stakeholders in an open and democratic process.
And when managed well, open-sourcing results in a product everybody wants to use. Perhaps more importantly, it results in a community that is able to constantly update the product as processes change and technologies advance.
But the open-sourcing process doesn't always work out. Sometimes the main software developer becomes too heavy-handed. Or the client company is overly protective. Sometimes there is simply too little interest in the project from the community. So how is this process best managed? What are its ingredients for success?
These questions are behind a recent paper, Healthy Community and Healthy Commons: Open-sourcing as a Sustainable Model of Software Production?, by Damrongsak Naparat, a lecturer at Chiang Mai University and research student at UNSW Business School, along with Patrick Finnegan, a professor and head of the school of information technology and management at UNSW Business School, and lecturer colleague Michael Cahalane.
Naparat wanted to discover the DNA of open-sourcing, the driver of various outcomes in an environment that often appears to be free flowing and difficult to manage. To do this he followed the ultimately successful development of the Hospital Operating System (HOS), a government-funded project in Thailand that was carried out across more than a decade.
The objective of the HOS was to help district hospitals increase internal process efficiency through the better use of information, and it corresponded with the government's introduction of a universal healthcare coverage scheme. Members of the open-sourcing community included software developers, medical industry leaders, doctors, nurses, other medical specialists and more.
Unlike the school near Canberra, where the teachers were handed a system and told to use it, all HOS stakeholders would have a say in the development and functionality of the software. In fact, participants would play two very important roles.
"First, participants were highly involved in software production through providing business process insights, suggesting change requests, coding, reporting bugs and providing user-to-user support," Naparat says.
"Second, by closely collaborating to develop HOS, the HOS community participants established strong ties to each other both online and offline, not just an arm's length relationship between firm and community."
'When a business no longer has to guess what the market wants, the result will always be better'PATRICK FINNEGAN
Trust and sustainability
It was imperative for Thailand's medical system that the project succeeded. If people within the system rejected the result, it would have national repercussions.
Naparat identified six vital mechanisms that positively influenced the outcome and which are essential inclusions in any open-sourcing project:
Positive experience: As in any workplace, positive knowledge, perception and attitude is vital to keep participants engaged.
Trust in the leadership of the project leader: The participants must believe the project leader is visionary, knowledgeable and has enough resources and control to steer the open-sourcing project in a way that benefits the community at large.
Demonstration of reciprocity: Financial reward is only effective for paid developers, so reciprocity is essential to create buy-in among everybody else.
Marketing the community: Managers must create awareness and encourage a good reputation for the project in order to attract and engage new talent.
Enriching knowledge: The project, and those involved, must contribute to the constant improvement of the technical knowledge of its participants.
Face-to-face meetings: Regular face-to-face meetings must be organised by the open-sourcing community to allow participants to meet each other in person and create a real-world community.
"In order to innovate over the long term, open-source developers and software businesses have to have a sustainable relationship. But they are more naturally competitors. The main issue when it comes to the sustainability of a collaboration is trust," Naparat says.
"The ideas in the businesses are quite limited in a way. The companies only have their employees. Ideas and inspiration that come from the crowd, from outside, can help businesses a lot. That is why a lot of businesses are now trying harder to connect to their customers; they use this connection to better understand what the customer wants. Open-sourcing really opens up this kind of thinking."
According to Finnegan, the idea of a healthy open-sourcing culture is an important one on both the industry and the community levels.
"Industry is beginning to realise they don't need to employ everybody," Finnegan says.
"If we think about the way we would traditionally look at requirements for a piece of software, or indeed for any product you might think about, the most foolproof way to do it is by asking the customers and offering them samples before having them decide what is best."
If a business is able to source ideas externally and in a structured way, but while relinquishing some of the formal control, that business is going to be in a position of power over its competitors, whether it is in software or any other field.
"These mechanisms could be applied to absolutely anything, because they are social," Finnegan says.
"They're not the way we have traditionally managed organisations. We tend to think about structure and formalisation and policies within business. But these are social mechanisms that allow people to come together and determine requirements around what's important, without having the company control it."
Finnegan sees the open-sourcing process as being particularly important in poorer and developing communities around the globe, territories where Western businesses cannot just walk in with a pre-packaged solution.
The process helps a company meet people in communities, builds trust and eventually shows the business exactly what it is that the community requires.
As opposed to the process that led to a group of Canberra teachers working against a 'solution' that was forced upon them, open-sourcing by its very nature results in a system that does exactly what its users require.
"Normally a sample of users is included as stakeholders, but the company produces the software," Finnegan says.
"Here, ultimately, the community is determining the requirements and the company is simply implementing it. The market is saying, 'This is exactly what we want. Go produce it.' When a business no longer has to guess what the market wants, the result will always be better."