Current Software Development: Conditions and Characteristics

Today’s software development requires cooperation and collaboration. Along with the growth of software complexity and also the load of modern software functions. Software is currently developed in groups not individually. Software development work shifts from personal to collective. Various development practices also emphasize the importance of direct communication and collaboration. Modern approaches based on agile processes, for example, encourage direct communication to have a more important degree than even documentation. That’s why kanda software engage users directly and work on them face-to-face and intensely.

Unfortunately, such ideal conditions are not easy in the pandemic era. Conditions that do not allow mobility, limited interaction, and limited connectivity have made software development in the pandemic era enter a new phase.

Distributed software development

The good news, researchers have designed various software development processes in a distributed manner. The concept of distributed software development in the past was not designed because of the pandemic. Distributed software development is carried out due to the need for development that utilizes 24 hours of work time to accelerate the deliverable of software. Call it the Unbent, Microsoft, and Novel companies that carry out the “round the clock follow the sun” concept. This approach is allegedly effective in providing superpowers for continuous development by taking advantage of time zone differences, proximity to local markets, to more competitive labor costs in developing countries. Two commonly used methods are

  • Global Software Development – ​​a formal approach to distributed software development.
  • Global extreme Programming – Agile approach to distributed software development

Both are designed in a distributed manner because of the effectiveness and efficiency factors, then how to apply them in the pandemic era.

Software development in the pandemic era

Whether the GXP or GSD approach can be applied in the era of the pandemic. The answer is of course you can. However, is it effective? Whether it will be in accordance with the needs based on the pandemic conditions. This is an interesting topic to discuss. At the time of the pandemic, so we could see different conditions as shown in the following characteristics.

  • Distributed software development is done on team members who are not too far apart and in the same time zone. This results in the development process in the same working hours
  • Distributed software development due to the pandemic is done with team members who tend to be more sporadic. This is because team members are not trained to work in a distributed manner.

Based on these conditions, at least the software development research agenda in the epidemic era must consider

  1. A work process that combines collaborative work and independent work so that the same working hours can be used effectively for independent work and collaboration.
  2. Organizations need to prepare a conducive environment based on their respective home situations. Provide safe and comfortable work spaces to facilitate work that meets health protocols.
  3. Organizations need to review tools and work processes for remote collaboration. Such as using collaboration tools such as Microsoft Teams or Visual Studio Live Share. It is necessary to conduct research that measures the effectiveness of the digital collaboration work process.