In his often-cited article from The Wall Street Journal, with the telling title, “Why Software is eating the world”, Marc Andreseen presented the thesis that within 10 years most industries and businesses will be substantially changed by the companies whose main asset and competitive advantage lies in software. He gave the example of companies such as Amazon (online bookstore), LinkedIn (recruitment industry) and Spotify (music industry). Over the last three years, this thesis has also been confirmed by Uber (taxi industry), and Airbnb (hotel industry).
Bearing the above in mind, we cannot deny that software and the digitalization of companies are not just a fashion or trend but rather the main element in shaping strategies as well as in obtaining sustainable competitive advantage. Decisions associated with it should be taken at the highest level of any business, because they can determine its survival and market position.
In this regard, it is also interesting to see the results of a study conducted in 2013 by IBM in more than 400 large companies worldwide (cross-sectional selection of industries), according to which about 54% of companies realize that software is critical to their business. Only 25% select it well and efficiently, and those companies that do it effectively in 69% of cases are more profitable than their competitors.
The decision to implement software is only the first step. There is still a number of other choices that can determine success.
Finished product or dedicated solution?
The purchase of software usually consists in a choice between a finished product (and its implementation), or the creation of a dedicated solution. Recently, it has also become popular to “rent” software (SaaS – Software as a Service) based on a subscription fee (usually monthly).
While finished products seem to be cheaper, the problem is that they often do not fit a particular organization, their cost is high and it is often impossible to implement changes in them. Good practice suggests that in the case of strategic areas that could determine the company’s competitive edge, a better and more cost-effective long-term solution is to create dedicated software. More and more companies in Poland seem to understand it. Importantly, Poland is very well perceived in the global IT market and it is increasingly becoming popular as a place where software development centres are located. It speaks in favour of Polish IT professionals and the potential of this industry in our country. When companies decide to opt for such solutions, they also look for very high quality and the security of IT project management.
Choose an appropriate process
Traditionally, software was (and very often in Poland still is) built in a linear fashion, starting with the phase in which requirements are gathered, through drafting to implementation and testing. It often takes many months, or even years, while the end product leaves much to be desired.
Eric Ries, the author of Lean Startup method popularized the approach based on MVP (Minimum Viable Product), which is the product of key functionality. In practice, this means selecting a minimum set of components, the fastest possible design of the product and its transfer to users in order to receive feedback, on the basis of which next steps are undertaken. Such iterations take place a few times and they lead to the creation of products that are better adapted to the expectations of the users and contain only relevant functionalities.
Iteration is also associated with the use of Agile development. As evidenced by research, projects carried with the use of Agile methodologies (e.g. Scrum, Kanban) are much less likely to fail (approx. 6%) as compared to traditional methodologies (approx. 13%).
Remember about User Experience
User Experience (UX) covers all aspects of the user’s contact with the company, its services or products, including IT solutions. Market leaders understand that providing useful solutions that are not only good, but which simply delight end users, can be the foundation of lasting market success. In the case of software, this means that UX designers with appropriate knowledge and experience should participate in the project.
Appropriate technology
Technology (including programming language) is only a tool, not a factor determining the success of software. Nevertheless, wrong decisions associated with it may have unpleasant consequences. It is also important to match technology and modern trends, such as the use of mobile devices, cloud computing, i.e. to give the possibility of more efficient use of hardware and big data, which is understood as taking business decisions based on the analysis of existing data sets.
Financial aspect
It is precisely the financial aspect that leads many IT projects undertaken in Poland to failure. One can remind the recent infamous purchase of software by Polish National Electoral Commission, or public procurement system, which is largely based on the criterion of price. It is true, however, that in the private sector most companies also base their decision to select specific software on the price factor. This often leads to the attempts at reducing the cost on the supply side, which results in the lowering of quality and making economies on testing. Typically, the client receives what he or she pays for, and low price leads to the poor quality of software.
Be ready for a change
We live in an era in which every company should ask the question of how software dominates the industry in which it operates or when it will dominate it. Noticing this trend too late and making bad strategic decisions related to software may lead some companies to failure.