Current Management Opportunities and Challenges in the Software Industry
During the past 30 years, the world went through a very dynamic technological transformation. In retrospect, it can be stated without exaggeration that the emergence of electronic devices and the Internet has greatly impacted daily life and managerial practice to an unforeseen extent. In addition, the computerization of multiple business processes and the creation of large-scale databases, among many other radical technological advances, have to lead to enormous cost savings and quality improvements over the years.
The interconnection of financial markets through electronic means and the worldwide adoption of the Internet have greatly reduced transaction and communication costs and brought nations and cultures closer to one another than ever imaginable. Computers are now fundamental tools in almost all businesses worldwide. Their application and adaptation to specific business problems in software development is a practice that many companies perform on their own.
In the past, such computerization and automation efforts were very costly and therefore only practiced by large corporations. Over the years, however, the software industry emerged to offer off-the-shelf solutions and services to smaller companies. Today, having survived the massive dot-com crash of 2000, software development businesses established themselves as strong players in the technology industry.
The emergence of numerous computer standards and technologies has created many challenges and opportunities. One of the main opportunities provided by the software sector is the relatively low entry barrier. Since the software business is not capital intensive, successful market entry largely depends on know-how and specific industry domain knowledge.
Entrepreneurs with the right skills can relatively easily compete with large corporations and pose a considerable threat to other, much larger organizations. On the other hand, companies need to find ways to reduce turnover and protect their intellectual property; hence, the strong knowledge dependence combined with the relatively short lifespan of computer technologies makes knowledge workers very important to the organization.
Therefore, knowledge workers in this industry enjoy stronger bargaining power and require a different management style and work environment than in other sectors, especially those with higher market entry capital requirements. However, this relatively strong position of software personnel challenges human resource strategies in organizations, and it also raises concerns about the protection of intellectual property.
The relatively young industry is blessed with sheer endless new opportunities, such as the ability of companies to cooperate with other organizations around the globe without interruption and incur practically no communication costs. In addition, no import tariffs exist, making the transfer of software across borders very efficient; however, the industry with its craft-like professions suffers from the lack of standards and quality problems. The successful management of such dynamic organizations challenges today’s managers and contemporary management science because traditional management styles, such as Weberian bureaucracies, seem unable to cope with unstable environments.
Challenges in the Software Industry
Many studies indicate that present-day software development practices are highly inefficient and wasteful (Flitman, 2003). On average, projects are only 62% efficient, which translates to a waste of 37 %. The typical software development project has the following distribution of work effort: 12% planning, 10% specification, 42% quality control, 17% implementation, and 19% software building (2003). There are many possible interpretations of the nature of this distribution of resources.
First, the extraordinarily high share of 42% for quality control purposes can indicate a lack of standards and standardized work practices. This large waste of effort may also be the result of inefficient planning and specification processes. Because the share of 19% for software building is a function of software complexity, hardware, and tools used, there is a chance to reduce it by carefully managing and standardizing internal work processes. However, the disappointing share of only 17% for implementation should be alarming to business owners since implementation activities are the main activity that results in revenue.
The relatively low productivity level reported by Flitman (2003) seems to be also reflected in the fact that the average U.S. programmer produces approximately 7,700 lines of code per year, which translates to just 33 per workday (Slavova, 2000). Considering that a large software project, such as Microsoft Word, is reported by Microsoft to require 2 to 3 million lines of code, it becomes obvious how costly such projects can become and that productivity and quality management are major concerns to today’s software businesses. Thus, the challenge for contemporary software managers is to find the root of the productivity problem and a remedy in the form of management practice.
A plethora of recent studies address software development productivity and quality concerns. Elliott, Dawson, and Edwards (2007) conclude that there is a lack of quality skills in current organizations. Furthermore, the researchers put partial blame on prevailing organizational cultures, which can lead to counterproductive work habits. Of the main problems identified, project documentation was found to be lacking because documents are deficient in detail and not updated frequently enough. In addition, quality control in software testing is not practiced as often. There seems to be a lack of quality assurance processes to ensure that software is built with quality in mind from the beginning. Finally, organizational culture was deficient in companies where workers avoid confrontation and avoid product tests altogether (2007).
Since knowledge workers are the main drive in software organizations, creating a fruitful and efficient organizational culture constitutes the main challenge to today’s managers. The relationship between organizational culture and quality and productivity in software businesses was recently investigated by Mathew (2007). Software organizations tend to be people-centered, and their dependency on knowledge workers is also reflected by the enormous spending remuneration and benefits of more than 50% of revenue.
As the industry matures and grows further, the challenge to organizations is that a larger number of employees needs to be managed, bringing culture to the focus of management. Mathew (2007) found that the most important influence on productivity was achieved by creating an environment of mutual trust. Higher levels of trust lead to greater employee autonomy and empowerment, which strengthened the existing management view that trust and organizational effectiveness are highly related. Those companies with higher trust and empowerment levels benefitted from more intensive employee involvement and achieved better quality products (2007).
However, product quality depends on other factors that reach beyond the discussion of work processes. For example, relatively high employee turnover was detrimental to product quality and organizational culture (Hamid & Tarek, 1992). Constant turnover and succession increase project completion costs, cause considerable delays and expose the organization to higher risks because their development processes can be severely disrupted. While human resources strategies should help find ways to retain key personnel in the company, organizations need to be prepared for turnovers and minimize their risks. One of the greatest risks for people-centered, knowledge worker organizations is losing knowledge when employees leave.