Agile SDLC

Posted by admin at January 6, 2021

Agile development is a collaborative process that drives product development, generating solutions to listed requirements and meeting project milestones based on a continuous, iterative and incremental approach.

The goal of the process is to shorten the time from planning to product deployment by cutting out the extra time spent focused on entirely completing one of the key project phases before moving to the next. This one-phase-at-a-time approach as employed in a Waterfall process.

The Agile methodology, on the other hand, employs members from cross-functional teams engaged in product incremental sprints, with the aim of shipping the product in smallest time possible. A sprint is a period of time scheduled for the development of a certain number of incremental product specifications. This period lasts for a few weeks usuals 2 weeks to a month of which at the end, the project is expected to hit a development milestone and a presentation made to stakeholders.

The process requires the breakdown of the entire project in to smaller components or iterations, each iteration produces a functional version of the product capable of being tested, evaluated and feedback collection. Each iteration also require the complete development process (Planning, implementation, testing, evaluation, and deployment). This is why cross functional teams are employed for each iteration, as specialized team members maybe required for each phase. The first iteration developed is most likely the minimum viable product, the smallest yet functional piece of the product, ready for the market.

                            [Figure 1 SDLC]

PROS:

Minimal pre-planning required: The agile process requires less planning as emphasis is placed on completing an iteration of the product within the spring, instead of planning out the entire product at its expected final stage. This is way better compared to enormous amount of bureaucracy and paperwork done before work can commence in a waterfall approach.

Realist and intuitive approach to development: Agile development allows for the freedom and flexibility of the team member to react to both management and market demands, finding a middle ground between both. This gives the team member the leeway to do what comes naturally in decision-making as regards to product development.

Stakeholder and client engagement: After each iteration, the product is presented to stakeholders and approval or disapproval is expected. This means that after each iteration, the product must be functional and meet the required needs. Each iteration is incremental. Afterwards, when the product is made available to the market, customer feedback generated is used to drive the direction of development.

Increased product market value: With the MVP being the first iteration of the development process, and the fact that each iteration is completed with the capability to collect customer feedback, the market value of products developed with this methodology is highly increased. The development of the MVP mandates that the product is has a viable market, reducing risks and cost as well as providing data-driven development environment.

Data-driven development: As stated earlier, the agile process encourages data collection after each iteration as against the waterfall approach which leans more on assumptions and documentation pre-development. This also means data collection from both the project stakeholders as well the customers, which translates to a larger source of insights to direction of the development process.

Speed to deployment: The goal of the Agile methodology is to facilitate the speedy deployment of iterations to the end-user. Each iteration is small enough, to be quickly developed and shipped, while ensuring functionality and minimizing resources and risks. This ensures that the product gets into the hands of users in very little time.

Maximum flexibility to team members and customers satisfaction: In addition to ensuring that the customers get what they want to spend money on (the MVP), the agile approach provides an efficient and effective process to measuring customer expectations and allow the team pivot development. This allows agile companies to quickly respond to customer needs. Companies employing the waterfall approach tend to react slower to customer needs and therefore become less relevant as time goes on.

CONS:

Poor Documentation: Even though the agile methodology generates tremendous insight into customer needs, the actual development process and work done by the team members are not properly recorded. This is because the agile process relies on the speed of the individuals in the team to respond to changes and new directions. There is a need therefore, to employ effective documentation conventions and reporting policies for every specialization involved in each iteration.

Sustainability and transfer of responsibility: Due to poor documentation and dependency on people, the exact details of the product at any one time are not always entirely available. This leads to difficulties sustaining the process when a team member leaves or responsibilities are transfered.

Scope creep: As user feedback enter and iterations increase, the expeceted responsibilities of the team members can tremendously sky-rocket and get out of control.

Overall plan needed: There is a need for an overall plan and a high-level product manager in order to balance volatility of the development process and to ensure that status of the project is properly documented.

CASE SCENARIOS:

SCENARIO ONE: Beta Versions on everything

Companies competing on similar market spaces employ this methodology to the full extent. Agile started out as a predominantly software development process, office software and game companies shipped their products to market with labels like beta and pre-release versions slapped on them while asking for feedback from their customers. Iterations came in the form patches to correct errors and bugs. Updates and extension packs provided more market value to customer based on collated feedback. Subsequently, the methodology was employed in developing physical products and processes.

Coorporations in electronics, cable service and even banking employed the agile process with the aim of reaching their customers, shipping products backed with customer data and offering upgrades to increase market value.

SCENARIO TWO: Approving Medical Certificates

Another scenario would be a project I completed years ago. The project involved digitizing and implementing the Medical Certificate Requirements and Approval process for a collection of aviation regulation offices.

The client had an international audit scheduled in a month and wanted a way to track the documentation involved in approving their licenced personnel medical certificates across their offices. This implementation would significantly improve their audit scores. Civil aviation regulations require tons of documentation backing every process being carried out. This could have adversely affected the delivery time of the product if we employed a waterfall approach which would mean an in-depth study of the provisions of the regulation as regards to pilot and crew medical certificate approvals.

So we employed the agile approach. First we engaged subject matter experts with specialisation in personnel licencing regulations. We then proceeded to breaking the product down to the smallest possible version, the first iteration.

It turns out the client was more interested in tracking correspondence from pilots, flight crew, engineers and medical personnel. Any doucment tracker off-the-shelf would have served. However, we increased the functionality of the MVP to ensure that the necessary data elements are captured by authorized personnel. So the MVP was designed to:

  1. Enable a beneficiary (pilot, crew, engineer) provides bio data and medical data as stipulated in the regulations,
  2. Enable registered medical personnel conduct and document medical tests results (full-checkup, vision, hearing, personal and medical family history)
  3. Enables approved client staff approve and issue medical certificates based on provided information all according to regulation.
  4. Collect feedback from all end-user on experience, bugs and suggestions.

With these basic functionalities listed and agreed upon, my team and the subject matter experts were able to complete and deploy the MVP in under 2 weeks. We were also able to training key staff members on software use just in time for the client’s audit.

CONCLUSION:

From experience, the Agile methodology extends beyond shipping products and connecting with your clients. Processes like managing an organization or running a business can employ this approach as a philosophy, especially if the industry involves high volatility and demands consistent customer engagement.

   0 likes

Suggested Read