Agile software development refers to a particularly flexible type of software development. The process is referred to as agile because it is small-step and involves a lot of coordination. This allows us to react quickly to changing requirements, technologies, customer wishes, problems and recognized misunderstandings.
The basic aim is to develop software as it is needed, but not necessarily as it was originally planned.
There is an “Agile Manifesto” for agile software development. The principles of agile software development include self-organized teams, a strong focus on collaboration and the functionality of the software, a continuous pace of work, direct communication with each other and with the customer, and flexibility. Various processes are used to implement these principles. These include Scrum and Kanban.
The advantages of agile software development are the flexibility of the development process, the transparency for the customer and the often high motivation of the programmers.
Disadvantages of agile software development include the fact that the customer must also be prepared to work agilely and that comparatively frequent coordination takes place.
You will encounter it if you develop software yourself or have it developed. If this is not the case, it is still possible that you will be familiar with some procedures, especially those of Scrum or Kanban. Kanban was developed in 1947, originally for the production process at Toyota. Scrum was founded in the 1990s and was initially used in software technology. It is now also used in other industries and areas for project management.
If you have business software developed in an agile process, address the topic of cyber security early and often. This allows the programmers to consider this aspect in a targeted manner and across as many development stages as possible. Improving your company’s cyber security can also be done in an agile way. This approach has the advantage that security-relevant aspects that were not initially considered can also be addressed. Typical examples of this include so-called “shadow IT” and IoT devices.
Further information can be found on the website with the Manifesto for Agile Software Development.