How Agile implemented in DevOps

Agile is a current software process that is believed to be a solution to build a software. On this article, we discuss how to build a software that implemented Agile and DevOps. For the real example, we will use azure DevOps and eXtreme Programming (XP). Let us get started:

#1 Creating a DevOps project

After the project is agreed and the contract is raised, the team can start to create a DevOps project. They should do:

  • Choose the process template (in this case we choose Agile). You can learn step by step here Create a project - Azure DevOps | Microsoft Docs
  • Invite your development teams, product owner, and others stakeholder.
  • Set the iteration path. You can learn step by step here Define iteration paths and configure team iterations - Azure Boards | Microsoft Docs
  • Preparing the development environment. You can deploy the development infrastructure in Azure and connecting to your DevOps. You can connect by using service hooks.
    • You use Azure Service Manager if you connect with Azure Subscription that SAME with your Active Directory.
    • You use Azure Classic if you connect with Azure Subscription that different with your Azure Active Directory.
    • You can use Terraform If you want to publish your solution to Amazon AWS.
  • Creating initial project with Visual Studio and push it into GitHub or Azure DevOps.

#2 Composing the user stories.

This step is a casual XP based requirement engineering technique.

  • Creating features,
  • Defining the actor or persona
  • Creating user stories, https://youtu.be/2Qj3x1RnqHA
  • Creating iteration plan with user stories deliverables
  • Discussing the features, user story, and iteration plan with the customer

#3 Designing the Solution.

You start this step by creating a mockup for your design. You can start with.

  • Creating information architecture (IA). You can create the IA with Mindmap software such as MindManager or XMind.
  • Create low fidelity prototype. You cab create with your pencil & paper or user wireframe tool like PowerPoint or Balsamiq.
  • Discussing the low fidelity and IA with the customer
  • Creating high fidelity with Visual Studio or Visual Studio Codes.
  • Uploading and presenting the High-fidelity prototype to customer

#4 Developing the Solution.

This step can be the longest step in the project. This is because the solution is developed through one or more of iteration. Of course, this step is executed iteratively.

  • Since we are using XP, the development team (tester) should create a test suite, test plan, and test case. You can see the video here https://youtu.be/0GKPguP4qLU
  • The developer should create unit test in Visual Studio.
  • The developer should create the codes to fulfill the user story.
  • The developer will commit and check-in daily to the repositories.
  • The CI/CD process will deliver the nightly build.
  • The iteration review will be happened in two stages.
    • Internal play testing – with the development team.
    • Customer play testing – with the costumer
  • Revising and getting feedback from the customer or from the defect.
  • Iteration retrospective with the development team and others. It discusses how to improve the next iteration of the development such as:
    • How we communicate with the customer
    • What we need to change in the next iteration
    • How the development progress so far
  • Deploying the solution for the iteration.
  • Continuing to the other iteration

#5 Implementing the solution.

After the entire iteration is finished, it is a good time to implement and to finish the solution.

  • Confirming the customer that the solution is appropriate to be deployed.
  • After the confirmation, the development team can create documentation such as:
    • User manual
    • Developer manual (optional)
  • Doing several workshops to socialize the system.
  • Gathering the feedback for continuous improvement.
  • Ready for the next improvement and for the next project.
blog comments powered by Disqus

Topics Highlights

About @ridife

This blog will be dedicated to integrate a knowledge between academic and industry need in the Software Engineering, DevOps, Cloud Computing and Microsoft 365 platform. Enjoy this blog and let's get in touch in any social media.

Xbox

Month List

Visitor