Agile software development methodologies, process and implementation in sort?

Utpal Biswas
Oceanize Lab Geeks
Published in
4 min readAug 1, 2017

Introduction:

This article is about introduction to agile software development methodologies, agile processes and implementation and why Software Company and developer need to know and flow these methodologies and process of it in shortly. It is about how to work together to achieve a common goal.

This article focus on how development team work together well to plan, develop and deliver software, This is not only suitable for software developers but also for Team Leaders, Project Managers, Product Managers, Development Managers, Testers, QA Managers, QA Engineers, Technical Writers, UX Designers, anyone involved in the developing and delivering software. It does not talk about only code or specific technologies. It is about from head to tail software development process.

In software engineering, a software development process is the process of dividing software development work into distinct phases to improve design, product management, and project management. It is also known as a software development life cycle. The methodology may include the per-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.

There are different kind of method is available and these are used according to project kind and the project nature but now a day’s modern development processes described as agile.

Other methodologies include:

waterfall

prototyping

iterative

incremental development

spiral development

rapid application development

extreme programming

AGILE:

Before dive into deep, let’s start by defining this first. Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. Agile methods or Agile processes generally promote a disciplined project management process that encourages frequent inspection and adaptation, a leadership philosophy that encourages teamwork, self-organization and accountability, a set of engineering best practices intended to allow for rapid delivery of high-quality software, and a business approach that aligns development with customer needs and company goals.

OK let’s talk about the ultimate goal and agile alert. The principles and values of agile software development were formed as a way to help teams to break the cycle of process inflation and mainly focus on simple techniques for achieving their goals. So what is the goal?

The main goal of every software developer and every development team is to deliver the highest possible product or value to employers and the customers.

The participants or team members in an agile process are not afraid of change. They view changes to the requirements as good things, because those changes mean that the team has learned more about what it will take to satisfy the customer. Agile team members work together on all aspects of the project. Each member is allowed input into the whole. No single team member is solely responsible for the architecture or the requirements or the tests. The team shares those responsibilities, and each team member has influence over them.

For use the agile method there are many processes of implementations like:

➢ SCRUM

➢ Crystal

➢ Behavior-Driven Development (BDD)

➢ Test-Driven Development (TDD)

➢ Feature-Driven Development (FDD)

➢ Adaptive Software Development (ADP)

➢ Extreme Programming (XP)

➢ and more…

SCRUM:

Between all of these processes, i am going to talk about “Scrum” because it is one of the most popular processes for implementing agile. It’s very popular in fact, many people think scrum and agile are the same thing. That’s not true. Many processes can be used to implement agile, such as “kanban” for example, but scrum has a unique flavor because of the commitment to short iterations of work.

With scrum, the product is built in a series of fixed-length iterations called sprints that give teams a frame for shipping software on a regular tone.

Scrum has four process that bring structure to each sprint and do pure agile implementation

Sprint planning: A team planning meeting that determines what to complete in the coming sprint.

Daily stand-up: Also known as a daily scrum, a 15-minute mini-meeting for the software team to sync.

Sprint demo: A sharing meeting where the team shows what they’ve shipped in that sprint.

Sprint retrospective: A review of what did and didn’t go well with actions to make the next sprint better.

For complete implementation this agile process some roles are responsible and the process becomes success.

Scrum Roles:

These are core roles for producing the product:

➢ Product Owner

➢ Scrum Teams

➢ Scrum Master

➢ Stakeholders

➢ Managers

Between of these roles here is the main three roles that Scrum become success.

The first one is “Product Owner” who builds and manages the product backlog, give the team clear guidance on which features to deliver next and decide when to ship product.

Second one is “scrum master” the heart or coach of the team. As a coach scrum master must have deeply understands the work being done by the team and can help the team optimize their delivery flow.

Third one is “Scrum teams”. The most effective scrum teams are tight-knit, co-located, and usually 5 to 7 members. Team members have differing skill sets, and cross-train each other so no one person becomes a bottleneck in the delivery of work.

Conclusion:

A best agile team picks and chooses the management and technical practices that best work for them. When trying to adopt agile practices, there will be a ton of excuses as why it won’t work. Those who understand the real benefits of the approach and genuinely want to make the transition will likely have success.

Not Agile. It’s important to remember that Scrum and Agile methodologies are not a one-time look at a company’s process, it’s an on-going philosophy based on continuous improvement.

In the end of this topic, let me leave you with some words:

“In preparing for battle I have always found that plans are useless, but planning is indispensable.” — General Dwight David Eisenhower

--

--