Agile - The basics
The agile way of working is based on the twelve principles that can be found in the agile manifesto. The basics include internal team communication and constant contact with the customer - regular meetings are a must! The subdivision of the project into iterations, i.e. one to two-week work phases (timeboxes) with defined tasks and final meetings, the retrospectives, are indispensable. Also important are the story cards that tell the product story and show why a feature is important and how the user will interact with it. The product backlog, the list of tasks still to be done, is one of the core aspects of an agile project.
In addition, an agile development process attaches great importance to having a definition done right from the start that will not be changed because time is running out. Changes in customer requirements are welcomed at any time in the agile process but are not inserted into an ongoing iteration, but only integrated into the next run. During an iteration, the team should concentrate fully on the work that has been agreed upon.
Considerations for agile software development
Agile development methods are currently in vogue, but as with all other project management techniques, there are advantages and disadvantages.
Advantages of agile software development
Agile methods offer seven key advantages:
1. Focus on quality
When software development is broken down into small chunks, it is much easier for project teams to focus on testing and reviewing each iteration. In addition, agile teams can quickly find and fix software bugs.
2. Focus on the customer
At Agile, the focus is on the continuous publication of high-quality software. Customer feedback and satisfaction have a direct impact on product development.
3. Focus on transparency and communication
Agile software development focuses on collaboration and user involvement. All stakeholders from all project areas actively give feedback on the software.
4. Focus on flexibility
Project managers can easily change priorities and redefine what's important to the product - even if that changes every week. Goals that have not yet been achieved can easily be carried over into later iterations.
5. Focus on speed
Thanks to regular publications, software developers always have a part of a finished product available. Speed is the biggest asset of Agile: According to the ninth State of Agile Survey, the most frequently cited advantage of agile methods is the accelerated product launch.
6. Focus on risk minimization
Project managers can use iterations to adapt to a changing software environment. With incremental software releases, bugs and problems can be identified early on, before the product has been completed, and bug fixes become not so difficult.
7. Focus on managing lean budgets
Breaking project costs down into smaller chunks (often called sprints) makes them easier to forecast. In addition, teams can be paid as soon as individual releases are finished.
Disadvantages of agile software development
Agile is a great option for many software development teams, but it doesn't have to be right for every team. Before you introduce agile project management methods, you should also know the possible disadvantages.
1. Agile is less than ideal for government agencies and large corporations
Detailed documentation is not wanted with agile methods and they require comprehensive transparency. For less flexible companies, they are therefore more of a hindrance.
2. Pending deliveries may override the quality
If new software iterations are constantly expected, it can quickly happen that quality assurance is neglected.
3. Change costs are ignored
Errors that were straightforward at the beginning often become more and more difficult to fix because the underlying code is constantly changing.
4. Agile works poorly on teams that want tight supervision
Agile is a great product development process for small teams that work well together. However, when a large number of team members have to be constantly managed in an IT department, the whole system often fails at the weakest link of the chain.
5. Agile takes practice
According to the State of Agile Report, the main reason why agile projects fail is a lack of experience with agile methods. Waterfall methods for project management can be used intuitively, whereas learning agile methods takes some time.
Why do we still choose Agile software development at Vilmate?
# 1: Agile software development is much faster.
Agile software development enables us to react very quickly to changing market conditions.
Classic software development originated at a time when the software was still installed locally on a computer. This made it impossible to continuously improve the software. Instead, the customer was repeatedly provided with major updates about installation. In classic software development, attempts have therefore been made to hand over seemingly “perfect” solutions to the customer. However, this meant that the development cycles were extremely long and the software could not be tested in detail in “live operation”. However, the market conditions and customer requirements often changed during the development phase, even before the changes were released.
# 2: Agile software development creates intuitive usability for the user.
More than ever, we are used to the fact that we can operate technical devices intuitively in our everyday lives. For example, we don't need anyone to train us to use an iPhone. Because during development, care was taken to make processes intuitive. To create this intuitive usability, agile software development plays a central role. In classic software development, the design was something that made the surface “beautiful”. Vilmate has User Experience Designers “journey” through the software to complete a specific task. Based on this, the surfaces are designed in such a way that the user's gaze is drawn directly to the central elements that are needed to get the job done.
To achieve this, we at Vilmate test our software interfaces very early and extensively with our customers and observe which actions they intuitively carry out. So-called clickable dummies are used here, for example. These already suggest fully functional software. In reality, however, they have only linked image components. This enables us to make continuous adjustments very quickly and in a resource-saving manner before we start the real development.
# 3: Agile software development drives innovation.
At Vilmate, however, we are not pursuing the goal of digitizing existing analog processes. Because if we're honest: bad analog processes are also bad digital processes. We aim to rethink processes and improve them holistically. The most important expert in development is and remains the customer - because who knows better than him what problems he is confronted with daily. When it comes to finding a solution, however, it is our task to question what already exists and to adopt new perspectives. For this purpose, we at Vilmate have an interdisciplinary product team that comes from a wide variety of industries and brings a lot of digital know-how with them.
Agile software development is more than just a project management fashion. It is a separate project management discipline with clear advantages, especially for IT teams. These methods focus on transparency, iterative processes, communication, and the quality of the end product.
for monthly digest