0% found this document useful (0 votes)
2 views24 pages

Intrd Agile Technologies

Agile is a software development approach that prioritizes flexibility, collaboration, and customer feedback, guided by the Agile Manifesto's values and principles. It encompasses various methodologies like Scrum, Kanban, and Extreme Programming, and is complemented by Application Lifecycle Management (ALM) and DevOps practices to enhance efficiency and communication across development and operations. Together, Agile and DevOps foster a culture of continuous improvement and rapid delivery of high-quality software.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views24 pages

Intrd Agile Technologies

Agile is a software development approach that prioritizes flexibility, collaboration, and customer feedback, guided by the Agile Manifesto's values and principles. It encompasses various methodologies like Scrum, Kanban, and Extreme Programming, and is complemented by Application Lifecycle Management (ALM) and DevOps practices to enhance efficiency and communication across development and operations. Together, Agile and DevOps foster a culture of continuous improvement and rapid delivery of high-quality software.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Agile Technologies

What is Agile?
Agile is a set of principles for software development under which requirements and
solutions evolve through collaborative effort of self-organizing and cross-functional
teams.

Agile emphasizes flexibility, collaboration, and customer feedback over rigid


planning and documentation.
Agile Manifesto
Values of Agile:

● Individuals and interactions over processes and tools


● Working software over comprehensive documentation
● Customer collaboration over contract negotiation
● Responding to change over following a plan

Principles of Agile:

● Continuous delivery of valuable software


● Welcome changing requirements
● Sustainable development pace
● Close collaboration with business stakeholders
Agile Methodologies

Scrum:

● A framework for managing and completing complex projects.


● Iterations are called "Sprints" (usually 2-4 weeks).
● Roles: Scrum Master, Product Owner, Development Team.

Kanban:

● Visualizing workflow to identify bottlenecks and optimize flow.


● Uses a Kanban board with columns for each stage of work.

Extreme Programming (XP):

● Focuses on improving software quality and responsiveness to changing customer requirements.


● Practices include pair programming, test-driven development, and continuous integration.

Lean Software Development:

● Focuses on minimizing waste and improving efficiency.


● Principles include reducing batch sizes, optimizing the flow of work, and empowering teams.
Unit I What is application lifecycle management?

Application lifecycle management (ALM) is an integrated system of


people, tools and processes that supervise a software application
from its initial planning and development, through testing and
maintenance, and into decommissioning and retirement.
Aspects: The application lifecycle management process
Portfolio Rationalisation

SDLC

Operations

Business value

If any change comes back to first step


Roles in the ALM process
Stakeholders: end users or who pay for the Project

Business manager: Decides about the project

Project manager, product owner: who is working on the project

Project management office: Decision makers or planning for company portfolio

Business analyst:responsible for analyzing the business needs and requirement of the stakeholders to find business
problems and find solutions

Architect: draws the initial picture of a solution. Blueprint of the system, should consider various levels of changes such
as hardware replacement , scalability

User experience: To meet out the requirements and design to be satisfied

DBA: controls Database, expected to understand vertical knowledge, not focus on coding

Developers:real code for the project

Testers:test for quality, developers write coding for testing and automate the system

Operations and Maintenance staff: rectifies the bugs

All roles are done collaboratively.

In Agile development Process:3 roles: product owner, scrum master and team members
Four ways of looking at ALM
SDLC view: In project: Business side and IT side

Service management or operations view: operations separated from IT devt.

Application portfolio management:managing gap between business and IT

Unified view: to take control over all the three.


SDLC view
Analysis: based on stakeholders input, feasibility,cost

Management decision : made to start the project, plan the project

Initial requirement: compared with Inputs , evaluated and updated based on the
Project

Initial Architecture: Overall plan of the Project, Project head, teams will be planned

Development: user interface designers, DBA

Delivery
Service management or operations view

Activities involved in development, operations, support and optimization of an


application

APM view: comes from Project Management Institute. Managing resources and
projects is important.

Steps: business plan, product life cycle( initial,intermediate, final), operations ,


upgrade.

Unified view:

Steps: Business needs, portfolio rationalisation, SDLC,operations and business


value
Three Pillars of Traditional ALM
Introduced by Forrester Research

● Traceability
● Process Automation
● Visibility
Traceability
The traceability matrix enables ALM users to determine the extent of relationships
between requirements and other requirements.

It is also used to determine the extent of relationships between requirements and


tests.

It helps users to verify if all the requirements are met and helps product owners to
identify changes to the scope of the requirements when they occur.

The purpose of traceability is to keep track of and record the history of an item
Process Automation

Organisation Approval process

Collaboration between analysis and design

Automate the task for more effective and less time consuming process
Visibility into the Progress of Development Efforts
To know the progress about the project

Visibility comes from steering group meetings and reviews.

To develop Daily status report to be reported

Entire project will be visible only to the project manager.


ALM tools and Concepts
Modelling: Software modelling

Issue management: Keeping track of incoming issues

Design: design the system

Construction: developing the system

Production monitoring: operations staff

Build: building the executable code

Test:testing the software

Release management:planning application releases


Devops
DevOps combines development (Dev) and operations (Ops) to unite people,
process, and technology in application planning, development, delivery, and
operations.
DevOps enables coordination and collaboration between formerly siloed roles
like development, IT operations, quality engineering, and security.
Teams adopt DevOps culture, practices, and tools to increase confidence in the
applications they build, respond better to customer needs, and achieve business
goals faster.
DevOps helps teams continually provide value to customers by producing better,
more reliable products.
Why need Devops
The software development process can be a highly manual process, resulting in a
significant number of code errors.

Development and operations teams can often be out of sync, which can slow
software delivery and disappoint business stakeholders.

DevOps creates efficiency across all tasks involved in the development,


deployment, and maintenance of software.

Connecting development and operations leads to increased visibility, more


accurate requirements, improved communication, and faster time to market.
Why Devops unique?
DevOps bridges the gap between development and operations, creating significant
efficiencies across the development and deployment of software.

DevOps includes a strong emphasis on automation, helping reduce the overall number
of errors.
Devops and Agile
DevOps is a culture that focuses on creating efficiency for all stakeholders
involved in the development, deployment, and maintenance of software.

Agile is a lean manufacturing process that helps provide a software development


production framework.

Agile is often specific to the development team, where the scope of DevOps
extends to all stakeholders involved in the production and maintenance of
software.

DevOps and agile can be used together to create a highly efficient software
development environment.
Devops services: Azure boards, pipelines,
artifacts,Repos,Test plans

Azure Boards is a web-based service that enables teams to plan, track, and discuss work across
the entire development process, while it supports agile methodologies.

Azure Boards offers predefined work item types for tracking features, user stories, bugs, and
tasks, making it easy to start using your product backlog or board.

It supports different Agile methods, so you can implement the method that suits you best.

You can add teams as your organization grows to give them the autonomy to track their work as
they see fit.
Azure DevOps Pipeline

Azure Pipeline is a cloud service that we can use to build and test our code
project automatically.
The Azure pipeline has a lot of capabilities such as continuous integration and
continuous delivery to regularly and consistently test and builds our code and ship
to any target.
Three key distinct advantages of using Azure DevOps pipelines.
Azure Artifacts
Azure Artifacts lets you create, host, and share packages.
It also provides integrated package management with support for Maven, npm,
Python, and NuGet package feeds from public or private sources.

Azure Test Plans


Azure Test Plans provides manual and exploratory testing solutions. Azure
DevOps is also compatible with various third-party tools.
Azure Repos
Azure Repos provides unlimited, cloud-hosted private, and public Git repos.

You might also like