Agile Methods: Lean, Agile and Scrum in Practice
Agile methods are a constant topic of discussion in software development. At the same time, terms such as ‘agile’, ‘lean’, ‘scrum’ and ‘sprints’ are bandied about. It often sounds as though these are some sort of new innovation, even though in reality these approaches have a long history and have been firmly established for decades. They are now an integral part of software development.
Agile development is now an established model in many software houses and technology companies. In practice, however, project models are not purely agile or waterfall-based; instead, they are often combined. This makes sense: every project requires its own unique approach, and no single model suits everyone.
This blog explains in plain language what agile development means, how the related terms differ from one another, and how we at Hurja carry out software development that truly delivers business value.
- What are agile methods – and why are people talking about them?
- Lean, agile, scrum – what’s the difference between them?
- The agile development model at Hurja
- Requirements specification is the cornerstone of a project, even in agile methodologies
- Why does agile development reduce project risks?
- Project management in agile development
- Agile methods in everyday life – through the eyes of a Scrum Master
- Agile methods are not a silver bullet – but they do provide the tools for success
What are agile methods – and why are people talking about them?
Agile methods describe an approach to carrying out software projects in stages, utilizing feedback and emphasizing close collaboration. This approach is based on the 2001 Agile Manifesto, which challenged traditional models and championed speed, human interaction and agility instead.
- The following aspects are emphasized in the agile development model:
- Iterative approach – do it bit by bit, assess the progress and carry on.
- Feedback – from users, customers and the team.
- Adaptability – there’s no need to be afraid of embracing change.
- Cooperation – not working in silos, but working openly.
Agile development refers to a way of thinking that can be implemented in many different ways. The most common practical models are Scrum and Kanban. Alongside these is Lean, a philosophy familiar from manufacturing that encourages a focus on the essentials and the elimination of all that is superfluous.
Lean, agile, scrum – what’s the difference between them?
Agile refers to the principles and values on which agile software development is based. It serves as a framework that guides our work. This agile approach is not about a strict process – it is more about a direction and a way of thinking.
Lean brings efficiency to work and enables the creation of value without waste. It has its roots in industrial manufacturing, but its principles are also ideally suited to software development.
Scrum, on the other hand, is a concrete agile development model that brings agile principles into everyday practice. In Scrum, development proceeds in short sprint cycles, usually lasting 1–4 weeks, during which a functional part of the software is built. At the end of each sprint, a review and retrospectives are held to help chart the next steps.
In practice, Scrum is often used in a modified form. It is also common to combine Lean and Scrum. Project teams can combine agile practices with elements of the waterfall model as required. The most important thing is that the model supports the project’s objectives and works in day-to-day practice.
The agile development model at Hurja
Agile software development involves concrete actions: customer involvement, teamwork and a clear rhythm. We use a Scrum-like structure, but adapt it to suit each project. The length of sprints, review practices and documentation requirements are always defined in consultation with the client.
Projects are broken down into manageable parts, and clear objectives are set for each sprint. This ensures that development progresses systematically and the end result becomes increasingly clear as work progresses.
- The following resources are used during the development work:
- Trello and Jira boards, which allow everyone to see the project’s status in real time.
Sprint reviews, where we go through the project’s status together with the client.
Daily stand-up meetings to keep the team in sync.
- Trello and Jira boards, which allow everyone to see the project’s status in real time.
The project manager is responsible for ensuring that the project as a whole remains under control and that communication between the client and the development team runs smoothly. Scrum also includes a Scrum Master, a role which at Hurja is usually filled by the project manager.
Requirements specification is the cornerstone of a project, even in agile methodologies
One of the most critical stages of agile development is requirements specification. Many people imagine that, in an agile model, specification is omitted entirely, but in reality it is carried out differently: in a lighter-weight manner, but continuously.
At the start of the project, the key elements are defined: objectives, key users and initial functionalities. The requirements are then refined during each sprint, based on user feedback, testing and lessons learned from the project.
- A detailed requirements specification might be structured as follows, for example:
- Workshops and user research
- Clickable prototypes and mock-ups
- Technical architecture and integration requirements
- Continuous updating of requirements during sprints
Requirements specification is therefore not a single document. It is an ongoing dialogue designed to ensure that the software is built to meet the right needs.
Why does agile development reduce project risks?
According to a BCG study, around half of all software projects exceed their schedule or budget. One of the main reasons for this is inadequate specification and the fact that the client is not kept up to date with the progress of development.
- The agile development model reduces these risks in three ways:
- The client is involved throughout. Feedback is gathered continuously and acted upon promptly.
The timelines are realistic. Each sprint is a concrete part of the project, the progress of which can be measured.
Requirements are refined at the right time. We do not speculate in advance about what is needed, but instead test and make decisions based on data.
- The client is involved throughout. Feedback is gathered continuously and acted upon promptly.
Project management in agile development
Agile development does not mean that a project runs without guidance. On the contrary, agile methods require professional project management. Project management is the force that holds everything together – and at Hurja, it’s in good hands.
- Each project has a project manager who is responsible for:
- Schedules and budgets
Planning and prioritizing
sprints Customer communication and stakeholder collaboration
Risk management and resource coordination
- Schedules and budgets
A good project manager doesn’t just lead a project – they ensure it runs smoothly. The client is assigned a clear point of contact who knows where things stand and takes care of everything.
Agile methods in everyday life – through the eyes of a Scrum Master
At Hurja, agile development is not a rigid process, but rather collaboration between people. Hannamari, Hurja’s experienced Scrum Master and project manager, is the person who keeps the project on track, the sprints on schedule and the team moving smoothly.
Hannamari’s work is evident in everyday life through the smooth running of sprints, day-to-day clarity and the client’s sense that everything is under control. She facilitates sprint reviews, leads retrospectives and ensures that communication runs seamlessly both within the team and with the client.
At Hurja, the Scrum Master isn’t just there to support the team – she’s also the client’s rock. When it’s time to stay on track, untangle issues or channel change requests to the right people, Hannamari pulls the strings and keeps the project moving.
Agile methods are not a silver bullet – but they do provide the tools for success
The agile model does not promise perfection, but it provides a framework that keeps projects under control and ensures they develop in the right direction. When work is based on continuous feedback and a shared understanding, the end result meets real needs.
Our fast-paced, agile methods underpin our promise: we do what we agree to do – and more. Every project is built on a clear structure, effective communication and professional project management.
Agile development is smart development
The agile development model works exceptionally well in software projects where objectives may become clearer as the project progresses. It keeps development on track and ensures that the end result meets actual needs.
At Hurja, we approach every project in an agile yet determined manner – with a clear plan, effective collaboration and a transparent way of working. And when a project is guided by experienced experts, clear specifications and agile collaboration, the end result is always more than just software.
Get in touch if you’re looking for a software project that’s truly agile, customer-focused and well-managed.
Shall we get started?
"*" indicates required fields
