About the Author(s)


Mzwandile M. Shongwe Email symbol
Department of Information Studies, University of Zululand, South Africa

Department of Information Studies, University of KwaZulu-Natal, South Africa

Citation


Shongwe, M.M., 2017, ‘Knowledge management in small software development organisations: A South African perspective’, South African Journal of Information Management 19(1), a784. https://doi.org/10.4102/sajim.v19i1.784

Original Research

Knowledge management in small software development organisations: A South African perspective

Mzwandile M. Shongwe

Received: 02 Sept. 2016; Accepted: 12 Mar. 2017; Published: 29 June 2017

Copyright: © 2017. The Author(s). Licensee: AOSIS.
This is an Open Access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

Background: Software organisations have been experiencing software development failures since the beginning of software development. Globally, latest Standish Group CHAOS reports indicate that only 29% of projects are successful. In South Africa (SA), the ITWeb report (2013) indicates that only 11% of all projects are successful. Intervention strategies such as software process improvement (SPI) frameworks and new software development methodologies such as agile methods have been introduced to address this issue. These intervention strategies do not seem to be effective because software development projects continue to fail. To address this issue, software organisations are turning to knowledge management (KM). This is because software development is a knowledge-intensive task.

Objectives: The study aimed to investigate KM practices in small, medium and micro (SMMEs) software development organisations in SA and to determine if KM has benefited the organisations.

Method: Fifteen software development project managers from 15 software development SMMEs were interviewed. Content analysis was used to analyse the data.

Results: The study found six KM practices in the organisations: knowledge acquisition, creation, storage, sharing, organisation and application. The study found that KM has benefited organisations by making them effective, efficient and productive.

Conclusions: The study concluded that software development organisation have adopted KM, although informally, and that KM practices have improved organisational routines and processes.

Introduction

Globally, software organisations are faced with many challenges. They include, among others, poor software quality, failure to learn from past mistakes, projects exceeding their budget and time, collapse in organisational intelligence and lack of software development skills (Charette 2005; Gruner & van Zyl 2011; Lindvall, Rus & Sinha 2002; Lyytinen & Robey 1999; Tarawneh 2011). The Standish Group CHAOS report (2015) indicates that only 29% of projects are successful, 52% are challenged and 19% fail outright. In South Africa (SA), the ITWeb software development surveys (2011, 2012 and 2013) indicate that 11% of software development projects (in-house or outsourced) are successful. That is, they are delivered on time, on budget and with expected functionalities and quality. The 2013 report further indicates that 2% are a complete disaster and the rest (87%) are challenged. That is, they are late, over-budget and of poor quality. These results paint a grim picture of the software development industry locally and globally.

Software process improvement (SPI) frameworks such as the capability maturity model and capability maturity model integration and new software development methodologies such as agile methods have been introduced in the industry to address software development challenges (Bellini & lo Storto 2006; Lehtinen et al. 2014). These intervention strategies do not seem to have absolutely addressed these problems. This is because organisations either do not know these frameworks or perceive them as expensive, time consuming and difficult to perform (Al Tarawneh, Abdullah & Ali 2009; Richardson & von Wangenheim 2007; Saranya & Kannan 2013).

Consequently, software organisations are turning to knowledge management (KM) strategies in an attempt to address the challenges they face (Lindval et al. 2002; Sholla & Nazari 2011). This is because software development is a knowledge-intensive task that has the potential to benefit from KM principles (Dorairaj, Noble & Malik 2012; Jiang et al. 2009). In the global software industry, KM has helped to improve the execution and coordination functions across the organisation and increased the speed of the delivery and precision of quality products (Bjornson & Dingsoyr 2008; Chandani, Neeraja & Sreedevi 2007; Kristjansson, Helms & Brinkkemper 2014). According to the FDI Intelligence Report (2012) and the Switzerland Global Enterprise (2014), SA has the biggest information technology (IT) industry in Africa. Software development is one of the major services provided by this industry. Unfortunately, as indicated by the ITWeb survey report (2013), SA software development organisations encounter software development failures just like other organisations around the globe. In developed countries such as Germany, Australia and Ireland – to mention but a few – studies by Aurum, Daneshgar and Ward (2008), Heavin and Adam (2012) and Betz, Oberweis and Stephan (2014) have been conducted to investigate KM practices in software development organisations. Developing countries in the Brazil, Russia, India, China, SA (BRICS) block such as Brazil, China and India have investigated this issue too (Jiang et al. 2009; Neves et al. 2014; Sharma, Singh & Goyal 2012). This does not seem to be the case in SA, yet she is an African IT giant. A review of the SA literature on this subject revealed only three studies by O’Neil (2005), Silverman (2006) and Khoza and Pretorius (2016). This means that such a problematic issue has been ignored by SA researchers, thus denying the industry and the country valuable knowledge about the current KM situation in software development organisations and possible KM-driven solutions to software development problems. This study aimed to fill that gap. Specifically, it aimed to answer the following questions: (1) What KM practices are adopted by small, medium and micro software development organisations in SA? (2) What benefits has KM brought to the organisations? We believe that this investigation will shed light on KM practices and offer practical and theoretical KM solutions to the SA software development industry.

The rest of the paper is structured as follows. A brief overview of the IT industry in SA follows this section, then the theoretical background and brief literature review, research methodology, results and discussion, and lastly conclusions and recommendations.

Software development in South Africa

South Africa has the biggest IT market in Africa. It consists of hardware and software products and services. The software industry deals with software development and packaged software services. It is projected to be worth $3919 billion in 2016. The Gauteng province is the leader in the IT industry with 60% of all projects, followed by the Western Cape (35%) and KwaZulu-Natal (KZN) (5%) (FDI Intelligence 2012; Switzerland Global Enterprise 2014). The Johannesburg Centre for Software Engineering Source Code Report (JCSE) (2012) indicates that there are fewer than 8000 software development organisations in SA. Most of these are SMMEs with fewer than 50 employees. Depending on the sector of the economy, a SMME is an organisation with fewer than 200 full-time paid employees (SA Department of Trade and Industry 2008). The software development industry employs about 180 000 people, of whom 15 000 are software developers (JCSE Source Code Report 2012). Citing a Gartner research report, the Switzerland Global Enterprise (2014) states that SA is one of the top 30 software development destinations in the world.

Theoretical background and literature review

Knowledge management has gained popularity in the software engineering field over the past decade. The growing interest in this field is instigated by the notion that KM plays a vital role in software development because software development is a knowledge-intensive task. It is associated with innovation and efficiency, activities which are vital in software development (Bjornson & Dingsoyr 2008; Chandani et al. 2007; Gendreau & Robillard 2013). Software development methods such as agile methods, strategies such as post-mortem reviews and SPI frameworks are regarded as KM activities (Desouza, Dingsøyr & Awazu 2005; Chouseinoglou et al. 2013).

Knowledge management scholars agree that there is no single definition of KM. Wiig (1993) defines it as approaches and processes aimed at identifying positive and negative uses of knowledge in different organisational operations. Dalkir (2011) synthesises definitions from many scholars and concludes that KM is the planning, organising, motivation and controlling of processes, routines and people within an organisation to ensure that knowledge is accessed by those who need it. Holsapple and Joshi (2003) hold that the goal of KM is to provide the right knowledge at the right time to the right people in the right presentation.

Knowledge management is viewed from several perspectives: personalisation and codification (Hansen, Nohria & Tierney 1999), schools of thought (Earl 2001) and from the lifecycle perspective (Alavi & Leidner 2001; Dalkir 2011; Evans & Ali 2013). The personalisation and codification perspective focuses on the importance of converting tacit knowledge into explicit form (Hansen et al. 1999). This means that organisations should focus on converting knowledge in the minds of people to documented knowledge so that it can be easily accessed and used by everyone within the organisation. The schools of thought perspective views KM from three broad schools: the economic, technocratic and behavioural. The economic school focuses on the economic gains brought by KM, the technocratic school focuses on the use of technology to support KM activities and the behavioural school focuses on KM human activities; that is, how human beings can be proactive in KM activities (Earl 2001). The lifecycle perspective views KM as a series of processes that when used together create a KM strategy. The processes include, among others, knowledge acquisition, creation, storage, transfer, application and learning. There are many KM frameworks that have been created in the KM field to explain this perspective. Examples are Wiig (1993), Alavi and Leidner (2001), Evans and Ali (2013) and Shongwe (2016). This study adopted the KM lifecycle perspective. This perspective was chosen because it shows the various KM activities or processes that organisations adopt and is widely accepted in KM. No particular framework was adopted for this study. Respondents were asked questions constructed from frameworks found in the literature.

The following subsection presents a brief literature review and identifies the literature gap addressed by this study.

Knowledge management practices in software organisations

Studies have been reported in the literature on how software development organisations manage their knowledge assets. The studies have been conducted in small, medium, micro and large organisations. They take several KM perspectives: schools of thought, software development frameworks and methods, KM lifecycle, and KM in terms of the personalisation and codification strategy. For example, Bjornson and Dingsoyr (2008) used Earl’s schools of thought to classify KM studies in software engineering into behavioural, economics and technocratic schools. Jelínek (2010), Galvis-Lista and Sánchez-Torres (2013), Lakulu (2010) and Cabral, Ribeiro and Noll (2014) are of the view that software development methodologies such as the waterfall, agile, rational unified process, software process reference models, SPI and open source software development apply KM principles. The study by Abdullah, Eri and Talib (2011) shows the importance of KM and SPI in software organisations. Other studies focus on KM from the KM lifecycle perspective, for example, studies by Aurum et al. (2008) and Heavin and Adam (2012).

Studies investigating KM practices in software organisations have been conducted in many parts of the world. The study by Aurum et al. (2008) in Australia found that Australian organisations use information networks of colleagues to share knowledge and that they store their knowledge in directories, archives and repositories. The study also discovered the following KM activities in software organisations: knowledge creation (sharing ideas with colleagues); acquisition, adaptation and identification (reusing past knowledge to identify current problems); organisation (directories); distribution (sharing knowledge with colleagues); and application (developers reapplying their accumulated knowledge in a range of scenarios). Heavin and Adam (2012) conducted a similar study in Ireland and found that software organisations engage in six KM activities: knowledge creation, transfer, storage, maintenance, codification and acquisition. Pástor, Šipikal and Rehák (2013) found evidence of knowledge creation through innovation and knowledge acquisition from external sources in Slovakian organisations. Neves et al. (2014) investigated the role of KM in mitigating risk in micro and small software organisations in Brazil. Their study found that combination – as explained by Nonaka and Takeuchi (1995) – is mostly used to mitigate risk in software development teams.

In SA, a few studies focusing on the software development industry are found in the literature. Labuschagne, Marnewick and Jakovljevic (2008) investigated IT management maturity in SA and discovered that IT project maturity has improved, but IT projects continue to fail. Similar results are seen in Bogopa (2010) and Pretorius, Steyn and Jordaan (2012). Only three studies focusing on KM were found. Silverman (2006) found that KM practices contributed positively to software development success; O’Neil (2005) found that software organisations found it harder to manage tacit knowledge than explicit knowledge; and Khoza and Pretorius (2016) found factors that influence knowledge sharing to include, among others, job security, poor communication, unrealistic expectations, lack of time and psychological factors.

The literature reveals KM practices in software development organisations in different parts of the world. However, what is noticeable is the lack of such studies in SA. It is not known whether such activities are adopted in SA and whether organisations have benefited from KM. This study aims to fill that literature gap by focusing on SA software development SMMEs.

Research methodology

This is an interpretive, qualitative case study (Olikowski & Baroudi 1991) of KZN. This province was selected because of its accessibility to the researcher and because it has the third largest number of IT projects in SA (FDI Intelligence 2012; Switzerland Global Enterprise 2014). It targeted software development SMMEs. This is because according to the JCSE (2012), most software development organisations in SA are SMMEs. According to this study, software development organisations are organisations whose core business is the development of software products. Software vendors are excluded because they do not develop software, but sell completed software. Fifteen software development organisations were identified on a list provided by the JCSE (2012), using web searches and snowball sampling. The JCSE list was used first to locate the organisations, but it was discovered that most of them had closed down or moved to other locations. Only two organisations from the original list were located. A web search of the SA Yellow Pages and a local portal (Snupit) and snowball sampling were then used to locate the other 13. A pilot study was conducted in a different organisation to test the research instrument (interview schedule), and necessary adjustments were made before the final data were collected. Structured face-to-face interviews were conducted with 15 software development project managers. The interview questions were informed by a hybrid combination of KM processes found in the literature. The interviews were conducted at the organisations’ premises and lasted on average 1 h each. A tape recorder was used to record them. Data were analysed by a deductive qualitative content analysis approach. This approach is appropriate in situations where theory exists and data are used to test or advance theory. In this approach, data are grouped into categories and themes (Cho & Lee 2014; Elo & Kyngäs 2008; Mayring 2000). Deductive qualitative content analysis steps proposed by Elo and Kyngäs (2008:110) were adopted in this study. The results are presented in the following section.

Results analysis and discussion

Responses of the 15 software project managers are presented in this section. To ensure confidentiality, pseudonyms are used to indicate participants, with the use of P1–P15.

Knowledge management practices in software organisations

The findings reveal six KM practices in SA software SMMEs: knowledge acquisition, creation, sharing, storage, organisation and application. They are discussed in detail below.

Knowledge acquisition

Software development organisations were asked whether they encounter knowledge gaps and to indicate the knowledge sources they use to fill the knowledge gaps.

All 15 software project managers indicated that their organisations do encounter knowledge gaps at some point in time. It could be knowledge about the industry or technical software development knowledge. When asked if they encounter knowledge gaps, one manager said:

‘Yes, it happens a lot.’ [Male; Manager; P3]

Another said:

‘Every time! You’re trying to write a piece of code, but you have no idea what you’re doing.’ [Male; Manager; P4]

This was confirmed by another manager who said:

‘Yes! With software development there are new technologies, and in our case there is hardware we need to support, e.g. a new printer, and you have to find information about it.’ [Male; Manager; P5]

Another manager concurred:

‘Yes, always. As a person you don’t always know everything.’ [Male; Manager; P6]

They were then asked to identify the knowledge sources they use to fill the knowledge gaps. Their responses indicate that knowledge is acquired from internal and external sources.

Internally, knowledge is acquired from employees and organisational documents. Internal knowledge acquisition happens when employees exchange knowledge among themselves. It could be junior employees helping each other or more experienced seniors helping out juniors. One manager said:

‘I become the main source of knowledge when new employees are recruited.’ [Male; Manager; P11]

This was supported by another manager, who said:

‘If we have new employees they might struggle to get new information. Obviously, they have to ask senior people in the organisation for assistance.’ [Male; Manager; P1]

The managers also confirmed that junior staff members acquire knowledge from each other. One manager said:

‘The programmers usually help each other when they have information gaps relating to their specific work areas. That is when they ask each other questions.’ [Male; Manager; P7]

Another manager who is also a programmer said:

‘We ask each other questions and explain how to do it so that you can learn.’ [Male; Manager; P9]

The study also revealed that various organisational documents are used to acquire knowledge. One manager said:

‘The best thing is to acquire knowledge from documents and teach yourself.’ [Male; Manager; P8]

Another said:

‘I consult the textbooks if I encounter programming challenges.’ [Male; Manager; P4]

Manuals, textbooks, minutes of meetings, programming code samples, notes and emails are documents kept by organisations.

External knowledge sources are the Internet, customers or clients and industry networks. All managers indicated that the Internet is the main source of external knowledge. When asked about the main sources of external knowledge, one manager said:

‘Google! We do a lot of online research, searching a lot of websites.’ [Male; Manager; P11]

Another concurred, saying:

‘We usually get [development] information from Internet forums such as Google groups and the Microsoft development network.’ [Male; Manager; P2]

Two managers indicated that they use video tutorials they download from YouTube; others indicated that they use social networks, blogs and discussion forums, one responded:

‘We simply go to Google user groups and look at things there, and then you find information.’ [Male; Manager; P2]

Another manager wondered:

‘I don’t know how I would perform my duties without Google’, [Male; Manager; P10]

Clients or customers are sources of knowledge too. The managers revealed that clients interact with them on a regular basis, thus providing valuable feedback on their products. They use this feedback to improve their processes and products, if necessary. This was confirmed by a manager, who said:

‘We have software packages that we have developed and enhanced. We do that based on feedback that we get from our clients.’ [Male; Manager; P2]

Another said:

‘You have to extract the knowledge from the customer because that is where it is.’ [Male; Manager; P7]

The same sentiments were shared by another manager, who stated that:

‘You can be short of business knowledge, which means that you have to get close to the clients.’ [Male; Manager; P3]

Another manager confirmed:

‘Client base is a very rich source of information for us.’ [Male; Manager; P8]

Networks of peers in the software industry have also been cited as sources of knowledge, especially technical knowledge. These are alliances formed by some of the organisations, specifically to share knowledge. For example, if a member company encounters a problem, the other alliance members help. A manager said:

‘We get people from our network to help the developers.’ [Male; Manager; P2]

Another manager gave an example of a situation whereby his company had no knowledge of Oracle integration. They had to ask industry peers to integrate it for them, he said:

‘For example, we don’t work with Oracle database, so we ask others to help us.’ [Male; Manager; P11]

Another indicated that they use developers from other organisations to help them, he said:

‘We use available resources like Skype and social networks [to communicate].’ [Male; Manager; P6]

One manager indicated that they are in partnership with a big, well-known software developer and vendor. The vendor provides them with needed expertise each time they need it:

‘We are a Microsoft partner and we get most of the information from them. You simply go to their network and look at things there.’ [Male; Manager; P2]

The results reveal that organisations encounter knowledge gaps and that they use a number of internal and external sources to fill them. Studies conducted in other parts of the world show similar results. Sharma et al. (2012) found that the Internet is widely used to acquire knowledge. Aurum et al. (2008) found that networks of peers are used as sources of knowledge. Gendreau and Robillard (2013) confirm the importance of peers as sources of knowledge. In the SA case, we see that organisations also use vendors and clients as knowledge sources.

Knowledge creation and sharing

Knowledge creation and sharing are similar activities that could be easily confused. Pentland (1995) and Taskin, Verville and Al-Omari (2011) define knowledge creation as a process of developing new knowledge or content from existing knowledge. Citing Schwartz (2006), Paulin and Suneson (2012:83) define knowledge sharing as ‘the exchange of knowledge between and among individuals, and within and among teams, organisational units, and organisations’. In this study, it was discovered that these activities are similar. For example, a training or brainstorming session could be a knowledge creation or sharing activity.

Knowledge creation and sharing activities found in the organisations are meetings, brainstorming sessions, training, conferences and workshops, and reading and acting on information from the Internet and organisational documents. Brainstorming sessions are used for knowledge creation and sharing. These are informal sessions where employees share, refine and adopt ideas. Once adopted, the ideas become organisational knowledge because employees act on them, one manager said:

‘We come together as a group to brainstorm on what, why and how the project goes.’ [Male; Manager; P15]

Another said,

‘We do a lot of brainstorming on how best we could handle projects.’ [Male; Manager; P11]

Managers also indicated that they hold meetings to share ideas about their work:

‘We do a lot of meetings for our internal processes.’ [Male; Manager; P14]

Another one said:

‘We usually update our staff in meetings.’ [Male; Manager; P12]

Formal and informal training is also used for knowledge creation and sharing purposes. When asked if they conduct training sessions, the managers responded as follows:

‘Look, we are very small; offering [formal] courses internally is not really worthwhile, but we do offer one-on-one training.’ [Male; Manager; P2]

‘We occasionally do training, but it has been ten years since I last attended training myself.’ [Male; Manager; P9]

‘What happens if we need help, we just call someone to teach us.’ [Male; Manager; P6]

Other organisations indicated that they send employees to workshops and conferences to acquire new knowledge. This was confirmed by one manager, who said:

‘Some of our employees are taken to the US [United States of America] to learn about technologies of the future.’ [Male; Manager; P4]

Another said:

‘They will notify us [and] send us emails, and we’ll attend [workshops] if we’re interested.’ [Male; Manager; P5]

Reading has been found to be an effective way of knowledge creation. As discussed earlier, employees use documents and the Internet to acquire information. When the information from these sources is internalised and acted upon, it becomes valuable organisational knowledge. The Internet plays a huge role in this regard. One manager said:

‘I think all the knowledge is found on the WWW [World Wide Web].’ [Male; Manager; P10]

Another stated:

‘We download video tutorials about the latest software trends, so we keep updated by watching these tutorials.’ [Male; Manager; P6]

This was confirmed by another who said:

‘We use the Internet a lot, especially for standards and specifications. For example, if you want to design a solar panel [simulator] you look for the specifications on the Internet.’ [Male; Manager; P9]

The results indicate that formal training does not seem to be conducted often in most organisations and that the Internet is widely used for knowledge creation and sharing. Apart from not opting for formal training methods, the rest of the results are a confirmation of studies conducted previously. Dorairaj et al. (2012) explain that in software organisations, knowledge is generated by brainstorming, customer collaboration, formal training; communities of practice and self-learning. Boden, Nett and Wulf (2010) state that knowledge is transferred by holding meetings, training sessions and the use of technology (the Internet in this case).

Knowledge storage

All organisations indicated that they do store their knowledge using different storage methods and technologies. They use central storage places such as portals, servers, external hard drives and email systems. When asked where they store their knowledge, one manager said:

‘Usually in our emails with the boss.’ [Male; Manager; P6]

Another said:

‘We have stored it [knowledge] in the server in product files. We also use DropBox to move it around.’ [Male; Manager; P2]

Another manager said:

‘We have a portal that is a helpdesk. It is where conversations about customer issues are recorded and stored.’ [Male; Manager; P3]

Another manager said:

‘Most of the stuff is with individual hard drives.’ [Male; Manager; P7]

Others indicated that they don’t store their knowledge in central locations, but in many storage devices within the organisation. One manager stated that:

‘We don’t have a central repository to store organisational knowledge. I encourage the guys to email me whatever they get. If there is one central repository, that could be me’. [Male; Manager; P11]

Another said:

‘We don’t store our knowledge in a central place, but have several repositories using disparate systems, some new, and others with people in spreadsheets and workflow systems.’ [Male; Manager; P7]

The results indicate that the organisations use different systems to store their knowledge. Some companies use central storage facilities, and others use different storage locations found all over the organisation. Previous studies indicate that it is a good idea to have one central storage facility for knowledge storage rather than to have it scattered. A central facility allows easy access, organisation and retrieval. Basili, Caldiera and Rombach (1994) suggest an experience factory model for information storage. This is a system in which a central database is created for easy storage, organisation and access to knowledge. Garcia et al. (2011) support the idea and argue that a central database supports easy retrieval and learning in agile teams. This system has effectively been used by the National Aeronautics and Space Administration Agency to store software engineering knowledge (Jansma & Means 2012).

Knowledge organisation

Organisations were also asked to explain how they organise their stock of knowledge. The results reveal that they organise their knowledge resources mostly in their servers, using basic organisation techniques such as folders. One manager said:

‘We organise it in the server. What we do is that we have folders associated with products’. [Male; Manager; P1]

Another manager from a different organisation said:

‘Everything is organised in our computers in terms of folders. For example, if it is information pertaining to training, that document goes to the training folder. If it’s something to do with programming knowledge, it goes to the folder for that.’ [Male; Manager; P6]

Others indicated that they do not organise their knowledge. Knowledge is found in different places in the organisations. This was confirmed by one manager from a different company who said:

‘What we should do, but usually don’t [organise knowledge], is to have a central location database like SharePoint where everyone is depositing data and pulling out when necessary. But we don’t do it.’ [Male; Manager; P7]

The results indicate that knowledge is organised, but the conclusion is that it is done at a very basic level or not at all. This could be because of two reasons: (1) the organisations are small, so not a lot of information exists and (2) organising could be difficult as it is scattered. Organisations are encouraged to adopt the knowledge organisation framework proposed by Chow and Wong (2011) to cater for multiple facets of knowledge and the tool suggested by Mat and Liu (2011) use to organise knowledge.

Knowledge application

Software organisations were asked to state how they apply the knowledge they have in their tasks. A couple of examples were given by the managers. Two managers gave examples where stored knowledge was used when employees left the organisation. One said:

‘Unfortunately the lady who developed it left, and we used the documentation in the server.’ [Male; Manager; P1]

The other said:

‘When one of our senior developers died, we used the code samples he developed to finish the project.’ [Male; Manager; P6]

Others gave different scenarios in which available knowledge is used in the development process. For example, one said:

‘We definitely incorporate the knowledge we have into our coding.’ [Male; Manager; P15]

Another said:

‘What we do is look at the actual costs of the project and the time taken to complete that project. We then apply that information to future projects.’ [Male; Manager; P7]

This was confirmed by a similar scenario, whose manager stated that:

In terms of programming, what we do is that we put comments after each programming code. So if we want to use that code in another project, basically what we do is that we copy and paste that code so that we can make it work in another program.’ [Male; Manager; P4]

The results reveal that organisations use the knowledge at their disposal in their daily development tasks. In fact, all the managers indicated that knowledge is used in their organisations. Dorairaj et al. (2012) and Chandani et al. (2007) found similar results. They found that software organisations apply the knowledge they have thus learning from it.

Improved software development

After the revelation that knowledge is applied in organisational routines and processes, managers were asked to indicate if KM has improved their processes. All organisations indicated that KM has enabled them to change their behaviour and do things better than they did before. They indicated that KM has made their organisations more accurate, effective, efficient and productive by saving time and preventing the ‘reinvention of the wheel’. When asked if KM has changed the way things are done in their respective organisations, one manager said:

‘Definitely! This stuff we have discovered over the years has made us more efficient and accurate as a company. For example, what took a couple of hours to run previously is run within minutes today.’ [Male; Manager; P11]

Another manager said:

‘Now we have libraries of code which we use in the development environment. That prevents reinvention of the wheel and helps us learn from our past mistakes.’ [Male; Manager; P7]

These sentiments were echoed by the manager who said:

‘Definitely, it [KM] makes us more efficient as a company. If there is a problem and none of us has come across that problem, we basically research and document it. That information is then used in future projects instead of researching the problem again. So it helps us become more efficient and productive as a company.’ [Male; Manager; P6]

‘Let’s say one encounters a set of conditions that you struggle with. It’s absolutely essential that knowledge be kept somewhere’, said another manager.’ [Male; Manager; P2]

This statement could be interpreted as meaning that stored knowledge is used to solve problems.

The responses show clear evidence of the importance of KM in software development organisations. Managers indicated that KM practices have one way or the other improved their processes. They concur with Chandani et al. (2007), who state that KM has helped improve the execution and coordination functions across organisations. That assertion is echoed by Sholla and Nazari (2011), who state that the goal of KM in software organisations is to produce software faster, with fewer costs and with higher quality. It is not clear though what exact processes have been improved, but we conclude that KM is benefiting software development organisations.

Summary, conclusions and recommendations

The study found six KM practices in SA software development SMMEs: knowledge acquisition, creation, sharing, storage, organisation and application. Table 1 summarises the results.

TABLE 1: Summary of knowledge management practices.

The conclusion is that SA software development SMMEs have adopted KM, but we assume that it is informal because there was no mention of KM specialists responsible for driving KM initiatives and policies in the organisations during the interviews. Aurum et al. (2008), and Heavin and Adam (2012) found that KM in SMMEs was applied informally. Apart from the knowledge sources found in the literature, the study discovered that clients and vendors are sources of knowledge in the SA context. Software organisations do not conduct formal training and organise their knowledge resources using basic methods. KM has made them more effective, efficient and productive. We believe that if organisations can formally adopt KM, improvements could be seen in the software development industry.

It is therefore recommended that software development organisations formally adopt KM by: (1) adopting formal training methods to reskill developers; (2) storing their knowledge assets in central databases for easy access, organisation and retrieval; and (3) employing KM specialists and implementing formal KM policies to facilitate the full implementation of KM.

The main limitation of the study is that data were collected in one province only. The study could have carried more weight if all three major software development provinces were included.

A quantitative study to measure the actual KM benefits and their impact on the organisations’ performance is recommended. The research could determine how KM has benefited software organisations in terms of reducing or eliminating software development failures.

The contribution of this study to the literature is that it gives a different context of KM adoption. Many studies have been conducted in developed countries in Europe, North America and Australia, but relatively few in developing countries, especially in SA. This study offers a perspective on a developing country with limited knowledge, skills and resources in software development.

Acknowledgements

This project was funded by the University of Zululand.

Competing interests

The author declares that he has no financial or personal relationships that may have inappropriately influenced him in writing this article.

References

Abdullah, R., Eri, Z.D. & Talib, A.M., 2011, ‘A model of knowledge management system in managing knowledge of software testing environment’, paper read at the 5th Malaysian Conference in Software Engineering (MySEC), Johor Bahru, Malaysia, 13–14th December, pp. 229–233.

Al Tarawneh, M.Y., Abdullah, M.S. & Ali, A.B.M., 2009, ‘Software process improvement (SPI) in small software firms’, viewed 23 November 2014, from http://www.zuj.edu.jo/conferences/ICIT09/PaperList/Papers/Software%20Engineering/594mejhem.pdf

Alavi, M. & Leidner, D., 2001, ‘Review: Knowledge management and knowledge management systems: Conceptual foundations and research issues’, MIS Quarterly 25(1), 107–136. https://doi.org/10.2307/3250961

Aurum, A., Daneshgar, F. & Ward, J., 2008, ‘Investigating knowledge management practices in software development organisations – An Australian experience’, Information and Software Technology 50, 511–533. https://doi.org/10.1016/j.infsof.2007.05.005

Basili, V.R., Caldiera, G. & Rombach, D.H., 1994, ‘The experience factory’, in Marciniak J.J. (ed.), Encyclopedia of software engineering, vol. 1, pp. 469–476, Jonh Wiley, New York.

Bellini, E. & lo Storto, C., 2006, ‘CMM implementation and organizational learning: Findings from a case study analysis’, in Proceedings of the PICMET 2006, Istanbul, Turkey, 9–13th July, pp. 1256–1271.

Betz, S., Oberweis, A. & Stephan, R., 2014, ‘Knowledge transfer in offshore outsourcing software development projects: An analysis of the challenges and solutions from German clients’, Expert Systems 31(3), 282–297. https://doi.org/10.1111/exsy.12005

Bjornson, F.O. & Dingsoyr, T., 2008, A study of a mentoring program for knowledge transfer in a small consultancy company, Lecture notes in Computer Science 3547, Springer Verlag, Heidelberg, pp. 245–256.

Boden, A., Nett, B. & Wulf, V., 2010, ‘Operational and strategic learning in global software development’, IEEE Software 27(6), 58–65. https://doi.org/10.1109/MS.2009.113

Bogopa, M.E., 2010, ‘The maturity of IT project management in South Africa’, viewed 08 December 2014, from http://www.bogopa.co.za/Research%20For%20IT%20Project%20Management%20Maturity%20Model.pdf

Cabral, A.R.Y., Ribeiro, M.B. & Noll, R.P., 2014, ‘Knowledge management in agile software projects: A systematic review’, Journal of Information & Knowledge Management 13(1).

Chandani, A., Neeraja, B. & Sreedevi, 2007, ‘Knowledge management: An overview and its impact on software industry’, in IET-UK International Conference on Information and Communication Technology in Electrical Sciences (ICTES 2007), pp. 1063–1068, Chennai, India.

Charette, R.N., 2005, ‘Why software fails: We waste billions of dollars each year on entirely preventable mistakes’, IEEE Spectrum, 02 September 2005, 42, 42–49.

Cho, J.Y. & Lee, E.-H., 2014, ‘Reducing confusion about grounded theory and qualitative content analysis: Similarities and differences’, The Qualitative Report 19(64), 1–20.

Chouseinoglou, O., İren, D., Karagöz, N.A. & Bilgen, S., 2013, ‘AiOLoS: A model for assessing organizational learning in software development organizations’, Information and Software Technology 55(11), 1904–1924. https://doi.org/10.1016/j.infsof.2013.05.004

Chow, K.O. & Wong, T.L., 2011, ‘A multiplicity approach to organization of knowledge and development of web software’, in Proceedings of the 9th IEEE International Conference on Dependable, Autonomic and Secure Computing, Sydney, Australia, December 12–14, pp. 1192–1198.

Dalkir, K., 2011, Knowledge management in theory and practice, Elsevier, Burlington, MA.

Desouza, K.C., Dingsøyr, T. & Awazu, Y., 2005, ‘Experiences with conducting project postmortems: Reports versus stories’, Software Process Improvement and Practice 10(2), 203–215. https://doi.org/10.1002/spip.224

Dorairaj, S., Noble, J. & Malik, P., 2012, Technical report 12–08: Knowledge management in distributed agile software development, viewed 20 July 2014, from http://ecs.victoria.ac.nz/foswiki/pub/Main/TechnicalReportSeries/ECSTR12-08.pdf

Earl, M., 2001, ‘Knowledge management strategies: Toward taxonomy’, Journal of Management Information Systems 18(1), 215–233.

Elo, S. & Kyngäs, H., 2008, ‘The qualitative content analysis process’, Journal of Advanced Nursing 62(1), 107–115. https://doi.org/10.1111/j.1365-2648.2007.04569.x

Evans, M. & Ali, N., 2013, ‘Bridging knowledge management life cycle theory and practice’, paper read at the International Conference on Intellectual Capital, Tel-Aviv, Israel, November, pp. 156–165.

FDI Intelligence, 2012, Software & IT services: Sector fact sheet, viewed 08 September 2014, from http://www.wesgro.co.za/publications/publication/software-and-it-services

Galvis-Lista, E. & Sánchez-Torres, J.M., 2013, ‘A critical review of knowledge management in software process reference models’, Journal of Information Systems and Technology 10(2), 323–338. https://doi.org/10.4301/S1807-17752013000200008

Garcia, J., Amescua, A., Sanchez, M.-I. & Bermon, L., 2011, ‘Design guidelines for software processes knowledge repository development’, Information and Software Technology 53(8), 834–850. https://doi.org/10.1016/j.infsof.2011.03.002

Gendreau, O. & Robillard, P.N., 2013, ‘Knowledge acquisition activity in software development’, in Rocha Á., Correia A., Wilson T. & Stroetmann K. (eds.), Advances in information systems and technologies, vol. 206, pp. 1–10, Springer-Verlag, Berlin.

Gruner, S. & van Zyl, J., 2011, ‘Software testing in small IT companies: A (not only) South African problem’, South African Computer Journal 47, 7–32. https://doi.org/10.18489/sacj.v47i0.9

Hansen, M.T., Nohria, N. & Tierney, T.J., 1999, What’s your strategy for managing knowledge?, viewed 13 September 2015, from https://hbr.org/1999/03/whats-your-strategy-for-managing-knowledge/ar/1

Heavin, C. & Adam, F., 2012, ‘Characterising the knowledge approach of a firm: An investigation of knowledge activities in five software SMEs’, The Electronic Journal of Knowledge Management 10(1), 48–63.

Holsapple, C.W. & Joshi, K.D., 2003, ‘A knowledge management ontology’, in C.W. Holsapple (ed.), Handbook on KM, vol. 1, pp. 81–124, Springer Verlag, Heidelberg.

ITWeb, 2011, Software Development Survey, viewed 14 November 2016, from http://www.itweb.co.za/index.php?option=com_content&view=article&id=47732&Itemid=2488

ITWeb, 2012, Software Development Survey, viewed 14 November 2016, from http://www.itweb.co.za/index.php?option=com_content&view=article&id=60527&Itemid=2826

ITWeb, 2013, Software Development Survey, viewed 14 July 2016, from http://www.itweb.co.za/index.php?option=com_bfsurvey_pro&view=stats&catid=838&Itemid=2879

Jansma, P.A. & Means, E.R., 2012, ‘Developing the NASA systems engineering body of knowledge’, in Aerospace Conference, Big Sky, MT, March 3–10, pp. 1–17.

Jelínek, B.P., 2010, ‘Knowledge management in software development’, Unpublished Masters thesis, Faculty of Informatics, Masaryk University, Brno, Czech Republic.

Jiang, M., Jong, C., Poppell, P., Budhathoky, K. & Hu, R., 2009, ‘Establishing business oriented system infrastructure development life cycle for enterprise systems’, paper read at the International Conference on Computational Intelligence and Software Engineering, Wuhan, China, 11–13th December, pp 1–6.

Johannesburg Centre for Software Engineering Source Code Report, JCSC, 2012, viewed 03 March 2014, from https://www.jcse.org.za/sites/default/files/u12/jcse_FINAL%202012%20-%202013.pdf

Khoza, L.T. & Pretorius, A.B., 2016, ‘Knowledge sharing in software development projects’, in Proceedings of the 13th ICICKM, Ithaca, NY, 14–15th October, pp.143–150.

Kristjansson, B., Helms, R. & Brinkkemper, S., 2014, ‘Integration by communication: Knowledge exchange in global outsourcing of product software development’, Expert Systems 31(3), 267–280. https://doi.org/10.1111/exsy.640

Labuschagne, L., Marnewick, C. & Jakovljevic, M., 2008, ‘IT project management maturity: A South African perspective’, in Proceedings of the PMSA Conference: From Strategy to Reality, Midrand, South Africa, 26–28 May, 2008, pp. 1–12.

Lakulu, M., 2010, ‘A framework of collaborative knowledge management system in open source software development environment’, Computer and Information Science 3(1), 81–90. https://doi.org/10.5539/cis.v3n1p81

Lehtinen, T.O.A., Mäntylä, M.V., Vanhanen, J., Itkonen, J. & Lassenius, K., 2014, ‘Perceived causes of software project failures – An analysis of their relationships’, Information and Software Technology 56, 623–643. https://doi.org/10.1016/j.infsof.2014.01.015

Lindvall, M., Rus, I. & Sinha, S., 2002, Technology support for knowledge management, Fraunhofer Center for Experimental Software Engineering, College Park, MD.

Lyytinen, K. & Robey, D., 1999, ‘Learning failure in information systems development’, Information Systems Journal 9, 85–101. https://doi.org/10.1046/j.1365-2575.1999.00051.x

Mat, A.R. & Liu, S., 2011, ‘Organizing knowledge to support requirements analysis’, paper read at 3rd International Conference on Computer Research and Development, Shanghai, China, 11–13th March.

Mayring, P., 2000, ‘Qualitative content analysis’, Forum Qualitative Sozialforschung/Forum: Qualitative Social Research 1(2), viewed 25 October 2016, from http://www.qualitative-research.net/index.php/fqs/article/view/1089/2385

Neves, S.M., da Silva, C.E.S., Salomon, V.A.P., da Silva, A.F. & Sotomonte, B.E.P., 2014, ‘Risk management in software projects through knowledge management techniques: Cases in Brazilian incubated technology-based firms’, International Journal of Project Management 32, 125–138. https://doi.org/10.1016/j.ijproman.2013.02.007

Nonaka, I. & Takeuchi, H., 1995, The knowledge creating company: How Japanese companies create the dynamics of innovation, Oxford University Press, Oxford.

O’Neil, S., 2005, ‘Managing tacit knowledge in a hi-tech learning organisation’, Unpublished Masters dissertation, Business Studies Unit, Durban University of Technology.

Olikowski, W.J. & Baroudi, J.J., 1991, ‘Studying information technology in organisations: Research approaches and assumptions’, Information Systems Research 2(1), 1–28. https://doi.org/10.1287/isre.2.1.1

Pástor, R., Šipikal, M. & Rehák, S., 2013, ‘Knowledge creation and knowledge acquisition in the software industry in Slovakia: The case study of Košice region’, Regional Science Policy & Practice 5(4), 401–416. https://doi.org/10.1111/rsp3.12018

Paulin, D. & Suneson, K., 2012, ‘Knowledge transfer, knowledge sharing and knowledge barriers – Three blurry terms in knowledge management’, The Electronic Journal of Knowledge Management 10(1), 81–91, viewed 25 October 2016, from www.ejkm.com

Pentland, B.T., 1995, ‘Information systems and organizational learning: The social epistemology of organizational knowledge systems’, Accounting, Management and Information Technologies 5(1), 1–21. https://doi.org/10.1016/0959-8022(95)90011-X

Pretorius, S., Steyn, H. & Jordaan, J.C., 2012, ‘Project management and project management success in the engineering and construction industries in South Africa’, South African Journal of Industrial Engineering 23(3), 1–12. https://doi.org/10.7166/23-3-507

Richardson, I. & von Wangenheim, C.G., 2007, ‘Why are small software organisations different’, IEEE Software 24(1), 18–22. https://doi.org/10.1109/MS.2007.12

Saranya, A. & Kannan, S., 2013, ‘SPI challenges of small and medium sized software companies – Problems and prospects’, International Journal of Engineering Research & Technology 2(1), 1–5.

Schwartz, D.G., 2006, Encyclopedia of knowledge management, Idea Group Publishing, Herschey, PA.

Sharma, N., Singh, K. & Goyal, D.P., 2012, ‘Adoption of knowledge management practices in software engineering organizations’, in 2012 Second International Conference on Advanced Computing & Communication Technologies, Rohtak, India, January 7–8, 2012, pp. 24–29.

Sholla, A. & Nazari, E., 2011, ‘KM and factors that influence the success of codification strategies in medium-sized companies that develop software: The model, strategies and tools’, Journal of Information Technology and Economic Development 2(1), 54–63.

Shongwe, M.M., 2016 ‘An analysis of knowledge management lifecycle frameworks: Towards a unified framework’, The Electronic Journal of Knowledge Management 14(3), 140–153, viewed 10 November 2016, from www.ejkm.com

Silverman, S., 2006, ‘Improving systems development methods by incorporating the principles of knowledge management’, Unpublished Masters dissertation, School of Economic and Business Sciences, University of Witwatersrand, South Africa.

Switzerland Global Enterprise, 2014, ‘Information & communication technology (ICT) industry – South Africa’, viewed 25 October 2016, from http://www.s-ge.com/sites/default/files/private_files/1411_sA_ICT.pdf

Tarawneh, H., 2011, ‘A suggested theoretical framework for software project success’, Journal of Software Engineering and Applications 4, 646–651. https://doi.org/10.4236/jsea.2011.411076

Taskin, N., Verville, J. & Al-Omari, A., 2011, ‘A comprehensive framework for knowledge management system lifecycle’, African Journal of Business Management 7(5), 1285–1295.

The Department of Trade and Industry, Republic of South Africa, 2008, ‘Annual review of small businesses in South Africa 2005–2007’, viewed 03 March 2014, from http://www.thedti.gov.za/sme_development/docs/smme_report.pdf

The Standish Group, 2015, CHAOS Manifesto: Think Big, Act Small, viewed 02 August 2015, from https://www.standishgroup.com/

Wiig, K.M., 1993, Knowledge management foundations: Thinking about thinking, how people and organisations create, represent, and use knowledge, Schema Press, Arlington, TX.



Crossref Citations

No related citations found.