KEMBAR78
ehcahce using spring boot application.pptx
EHCache
using Spring Boot
Application
JIT1002 AGILE METHODOLOGIES L T P C 3 0 0
3
COURSE OBJECTIVES:
Understand the basic concepts of Agile Software Process
Comprehend various Agile Methodologies
Develop Agile Software Process
Apply principles of Agile Testing
Understand metrics used in Agile
UNIT I INTRODUCTION
9
Software is new product development- Iterative and Evolutionary
Methods- Agile Development – Case Study: Perform a comparative
Study between Traditional / Heavy weight Methodologies with Agile
Methodology
UNIT II AGILE AND ITS SIGNIFICANCE 9
Agile Story: Evolutionary delivery -Scrum Demo- Planning game, -Sprint
back log- adaptive planning - Agile Motivation – Problems with The
Waterfall - Research Evidence Scrum: Method Overview -Life cycle phases
and Work product roles
UNIT III AGILE METHODOLOGY 9
Extreme Programming: Method Overview -Life cycle phases and Work
product roles - Unified process: Method Overview -Life cycle phases and
Work product roles - EVO: Method Overview -Life cycle phases and Work
product roles -Case Study: Student group must collaborate and report
together along with assigned batch members. Collect the requirements
from the client and adopt the suitable agile practice method
UNIT IV AGILE PRACTICES
9
Agile Project management - Agile Environment -. Agile Requirements -
Case Study – Practices: At the end of each sprint of automated and
acceptance tests
UNIT VAGILITY AND QUALITY ASSURANCE
9
Agile product development – Agile Metrics – Feature Driven
Development (FDD)- Agile approach to Quality Assurance -Test Driven
Development – Agile approach in Global Software Development
TOTAL: 45 PERIODS
TEXT BOOKS:
1. Craig Larman, “Agile and Iterative Development – A Manager’s Guide”, Pearson
Education, 2006.
2. Elisabeth Hendrickson Quality Tree Software Inc, “Agile Testing”, 2008.
REFERENCES:
3. Chetankumar Patel, MuthuRamachandran, Story Card Maturity Model (SMM): A
Process Improvement Framework for Agile Requirements Engineering Practices,
Journal of Software, Academy Publishers, Vol 4, No 5 (2009), 422-435, Jul 2009.E.
Capriolo, D. Wampler, and J. Rutherglen, "Programming Hive", O'Reilley, 2012.
4. David J. Anderson; Eli Schragenheim, Agile Management for Software Engineering:
Applying the Theory of Constraints for Business Results, Prentice Hall, 2003.
WEB LINKS:
https://www.guru99.com/agile-scrum-extreme-testing.html
https://www.infoworld.com/article/3237508/what-is-agile-methodology-modern-software-
development-explained.html
https://www.simplilearn.com/tutorials/agile-scrum-tutorial/what-is-agile
What is Agile Methodology?
Agile Methodology meaning a practice that
promotes continuous iteration of development and
testing throughout the software development lifecycle of
the project. In the Agile model in software testing, both
development and testing activities are concurrent, unlike
the Waterfall model.
 Agile software development is based on an incremental,
iterative approach.
 Instead of in-depth planning at the beginning of the project,
Agile methodologies are open to changing requirements over
time and encourages constant feedback from the end users.
 Cross-functional teams work on iterations of a product over a
period of time, and this work is organized into a backlog that is
prioritized based on business or customer value.
 The goal of each iteration is to produce a working product
 In Agile methodologies, leadership encourages
teamwork, accountability, and face-to-face
communication.
 Business stakeholders and developers must
work together to align the product with
customer needs and company goals
 Agile refers to any process that aligns with the concepts of
the Agile Manifesto. In February 2001, 17 software
developers met in Utah to discuss lightweight development
methods.
 published the Manifesto for Agile Software Development,
which covered how they found “better ways of developing
software by doing it and helping others do it” and included
four values and 12 principles.
 The Agile Manifesto is a dramatic contrast to the
traditional Project Manager’s Body of Knowledge
(PMBOK) guide and standards. 12 Principles of Agile
Methodology
The Agile Manifesto lists 12 principles to guide teams on how
to execute with agility. These are the principles:
1. Our highest priority is to satisfy the customer through
early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in
development. Agile processes harness change for the
customer’s competitive advantage.
3. Deliver working software frequently, from a couple of
weeks to a couple of months, with preference to the
shorter timescale.
4. Business people and developers must work together daily
throughout the project.
5. Build projects around motivated individuals. Give them
the environment and support they need, and trust them to
get the job done.
1) The most efficient and effective method of conveying
information to and within a development team is face-to-face
conversation.
2) Working software is the primary measure of progress.
3) Agile processes promote sustainable development. The
sponsors, developers, and users should be able to maintain a
constant pace indefinitely.
4) Continuous attention to technical excellence and good design
enhances agility.
5) Simplicity -- the art of maximizing the amount of work not
done -- is essential.
6) The best architectures, requirements, and designs emerge from
self-organizing teams.
7) At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly.
Advantages of Agile
Software is new product development
Is software development a product development?
Software Product development is the process of
creating a new product with some added
value and features. It can be anything from
developing an entire new product, or upgrading an
existing product, or improving the process,
technique, or development methodology of the
system
Is software a product or process?
Software as a product (SaaP, also programming
product, software product) is a product, software,
which is made to be sold to users, and users pay for
licence which allows them to use it, in contrast to
SaaS, where users buy subscription and where the
software is centrally hosted.
4 Basic Type of Software Products as per your
Business Needs
1. System Software Products
Systems software programs manage the resources of the
computer system that help simplify application
programming. They include software such as the
operating system, database management systems,
networking software, translators, and software utilities.
2. Programming Software Products
Programming software also knows as development tools such
as compilers, text editors, debuggers, linker are programs or
set of programs which help software developers in creating,
debugging, and maintaining other programs and apps.
3. Application Software Products:
Application Software is an application or product
that can be used to perform tasks. Famous
examples of application software are data
management software, Office productivity suites,
media players, etc.
4. Embedded Software Products:
Embedded System Software products are used to
control machines and devices through
telecommunications networks, industrial robots,
cars, and more.
Steps to Follow for Software Product Development
Process plan:
The software product development process is a basic tool for
facilitating a large number of people to work together on a
collaborative development project. Using one ultimately results
in fewer defects, drives shorter delivery times, and better value.
The software product development process consists of the
following 7 steps:
1. Ideation and planning
Everything starts with a great idea! But that idea needs to be
carefully thought over in order to be executed. Careful planning
is the first and foremost step of software product development
as it presupposes deciding the scope of the project, explaining
means and ways for the new software system to meet business
model objectives, cost-related issues, resource availability, and
timelines.
3. Design
Software product design is a prominent aspect of the development
process. The actual conceptualizing of the software system is
created during the design stage, that is the structured software
architecture meeting specific project requirements is created.
A tailored software product design by developers sets
definite workflows and standards. The whole software structure is
built with the final prototype and mockups used for the next stages
of the software product development process. Once the design is
identified it’s time to move to the very development.
4. Development & coding
The development stage is all about writing code and turning design
documentation into the actual software within the software product
development process. This stage development is the longest as it’s
the backbone of the whole process. The software developers make
sure their code meets the software requirements specifications,
conforms to the stakeholders’ requirements, etc.
5. Integration and testing
Now that the software is developed and completed the
next step involves integration starts and system
testing. The Quality Assurance (OA) team conducts a
series of tests including systems integration,
functionality testing, and interoperability along with
user acceptance testing. This is to make sure the code
is clean and the business goals of the solution are met.
6. Implementation and deployment
This is a step that includes the installation of the
build software system. It’s a step-by-step procedure
based on the implementation plan. The newly built
and tested software system is moved to production
and transfer for the specific changes to be deployed.
Different Software Product Development
Methodologies
There are different software product development
methodologies in the market today, each offering a
different set of advantages: from minimized risk to
improved process efficiency and continuous
iterations to enhanced scalability. Here’s a look at
the 4 most popular software product development
methodologies – waterfall, agile, scrum,
Incremental and Iterative– and see which fits
the best for your business needs best.
Scrum
Scrum, is a subset of Agile methodologies, it is used to
manage the software product development process at the
macro level. It follows the principles and values of agile;
plus, it covers further specification and definition by
considering some important software product development
practices. This approach is best suitable for software
products with changing demands.
Incremental and Iterative
The incremental and iterative software product
development approach is like a center ground between the
upfront planning of the Waterfall process and the flexibility
of the Agile process. While both follow the idea of creating
bits of software and exposing them to customers for
feedback, however, they differ in what you create during
each release.
What is considered product development?
Product development, also called new product
management, is a series of steps that includes
the conceptualization, design, development
and marketing of newly created or newly
rebranded goods or services.
Agile Development
Agile Development:
The Agile software development methodology is one of
the simplest and effective processes to turn a vision for a
business need into software solutions.
Agile is a term used to describe software development
approaches that employ continual planning, learning,
improvement, team collaboration, evolutionary
development, and early delivery. It encourages flexible
responses to change.
The agile software development emphasizes on four
core values.
 Individual and team interactions over processes
and tools
 Working software over comprehensive
documentation
 Customer collaboration over contract negotiation
 Responding to change over following a plan
ehcahce using spring boot application.pptx
ehcahce using spring boot application.pptx

ehcahce using spring boot application.pptx

  • 1.
  • 2.
    JIT1002 AGILE METHODOLOGIESL T P C 3 0 0 3 COURSE OBJECTIVES: Understand the basic concepts of Agile Software Process Comprehend various Agile Methodologies Develop Agile Software Process Apply principles of Agile Testing Understand metrics used in Agile UNIT I INTRODUCTION 9 Software is new product development- Iterative and Evolutionary Methods- Agile Development – Case Study: Perform a comparative Study between Traditional / Heavy weight Methodologies with Agile Methodology
  • 3.
    UNIT II AGILEAND ITS SIGNIFICANCE 9 Agile Story: Evolutionary delivery -Scrum Demo- Planning game, -Sprint back log- adaptive planning - Agile Motivation – Problems with The Waterfall - Research Evidence Scrum: Method Overview -Life cycle phases and Work product roles UNIT III AGILE METHODOLOGY 9 Extreme Programming: Method Overview -Life cycle phases and Work product roles - Unified process: Method Overview -Life cycle phases and Work product roles - EVO: Method Overview -Life cycle phases and Work product roles -Case Study: Student group must collaborate and report together along with assigned batch members. Collect the requirements from the client and adopt the suitable agile practice method
  • 4.
    UNIT IV AGILEPRACTICES 9 Agile Project management - Agile Environment -. Agile Requirements - Case Study – Practices: At the end of each sprint of automated and acceptance tests UNIT VAGILITY AND QUALITY ASSURANCE 9 Agile product development – Agile Metrics – Feature Driven Development (FDD)- Agile approach to Quality Assurance -Test Driven Development – Agile approach in Global Software Development TOTAL: 45 PERIODS
  • 5.
    TEXT BOOKS: 1. CraigLarman, “Agile and Iterative Development – A Manager’s Guide”, Pearson Education, 2006. 2. Elisabeth Hendrickson Quality Tree Software Inc, “Agile Testing”, 2008. REFERENCES: 3. Chetankumar Patel, MuthuRamachandran, Story Card Maturity Model (SMM): A Process Improvement Framework for Agile Requirements Engineering Practices, Journal of Software, Academy Publishers, Vol 4, No 5 (2009), 422-435, Jul 2009.E. Capriolo, D. Wampler, and J. Rutherglen, "Programming Hive", O'Reilley, 2012. 4. David J. Anderson; Eli Schragenheim, Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results, Prentice Hall, 2003. WEB LINKS: https://www.guru99.com/agile-scrum-extreme-testing.html https://www.infoworld.com/article/3237508/what-is-agile-methodology-modern-software- development-explained.html https://www.simplilearn.com/tutorials/agile-scrum-tutorial/what-is-agile
  • 7.
    What is AgileMethodology? Agile Methodology meaning a practice that promotes continuous iteration of development and testing throughout the software development lifecycle of the project. In the Agile model in software testing, both development and testing activities are concurrent, unlike the Waterfall model.
  • 8.
     Agile softwaredevelopment is based on an incremental, iterative approach.  Instead of in-depth planning at the beginning of the project, Agile methodologies are open to changing requirements over time and encourages constant feedback from the end users.  Cross-functional teams work on iterations of a product over a period of time, and this work is organized into a backlog that is prioritized based on business or customer value.  The goal of each iteration is to produce a working product
  • 9.
     In Agilemethodologies, leadership encourages teamwork, accountability, and face-to-face communication.  Business stakeholders and developers must work together to align the product with customer needs and company goals
  • 10.
     Agile refersto any process that aligns with the concepts of the Agile Manifesto. In February 2001, 17 software developers met in Utah to discuss lightweight development methods.  published the Manifesto for Agile Software Development, which covered how they found “better ways of developing software by doing it and helping others do it” and included four values and 12 principles.  The Agile Manifesto is a dramatic contrast to the traditional Project Manager’s Body of Knowledge (PMBOK) guide and standards. 12 Principles of Agile Methodology
  • 11.
    The Agile Manifestolists 12 principles to guide teams on how to execute with agility. These are the principles: 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
  • 12.
    1) The mostefficient and effective method of conveying information to and within a development team is face-to-face conversation. 2) Working software is the primary measure of progress. 3) Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 4) Continuous attention to technical excellence and good design enhances agility. 5) Simplicity -- the art of maximizing the amount of work not done -- is essential. 6) The best architectures, requirements, and designs emerge from self-organizing teams. 7) At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Advantages of Agile
  • 13.
    Software is newproduct development
  • 14.
    Is software developmenta product development? Software Product development is the process of creating a new product with some added value and features. It can be anything from developing an entire new product, or upgrading an existing product, or improving the process, technique, or development methodology of the system
  • 15.
    Is software aproduct or process? Software as a product (SaaP, also programming product, software product) is a product, software, which is made to be sold to users, and users pay for licence which allows them to use it, in contrast to SaaS, where users buy subscription and where the software is centrally hosted.
  • 16.
    4 Basic Typeof Software Products as per your Business Needs 1. System Software Products Systems software programs manage the resources of the computer system that help simplify application programming. They include software such as the operating system, database management systems, networking software, translators, and software utilities. 2. Programming Software Products Programming software also knows as development tools such as compilers, text editors, debuggers, linker are programs or set of programs which help software developers in creating, debugging, and maintaining other programs and apps.
  • 17.
    3. Application SoftwareProducts: Application Software is an application or product that can be used to perform tasks. Famous examples of application software are data management software, Office productivity suites, media players, etc. 4. Embedded Software Products: Embedded System Software products are used to control machines and devices through telecommunications networks, industrial robots, cars, and more.
  • 18.
    Steps to Followfor Software Product Development Process plan: The software product development process is a basic tool for facilitating a large number of people to work together on a collaborative development project. Using one ultimately results in fewer defects, drives shorter delivery times, and better value. The software product development process consists of the following 7 steps: 1. Ideation and planning Everything starts with a great idea! But that idea needs to be carefully thought over in order to be executed. Careful planning is the first and foremost step of software product development as it presupposes deciding the scope of the project, explaining means and ways for the new software system to meet business model objectives, cost-related issues, resource availability, and timelines.
  • 19.
    3. Design Software productdesign is a prominent aspect of the development process. The actual conceptualizing of the software system is created during the design stage, that is the structured software architecture meeting specific project requirements is created. A tailored software product design by developers sets definite workflows and standards. The whole software structure is built with the final prototype and mockups used for the next stages of the software product development process. Once the design is identified it’s time to move to the very development. 4. Development & coding The development stage is all about writing code and turning design documentation into the actual software within the software product development process. This stage development is the longest as it’s the backbone of the whole process. The software developers make sure their code meets the software requirements specifications, conforms to the stakeholders’ requirements, etc.
  • 20.
    5. Integration andtesting Now that the software is developed and completed the next step involves integration starts and system testing. The Quality Assurance (OA) team conducts a series of tests including systems integration, functionality testing, and interoperability along with user acceptance testing. This is to make sure the code is clean and the business goals of the solution are met. 6. Implementation and deployment This is a step that includes the installation of the build software system. It’s a step-by-step procedure based on the implementation plan. The newly built and tested software system is moved to production and transfer for the specific changes to be deployed.
  • 21.
    Different Software ProductDevelopment Methodologies There are different software product development methodologies in the market today, each offering a different set of advantages: from minimized risk to improved process efficiency and continuous iterations to enhanced scalability. Here’s a look at the 4 most popular software product development methodologies – waterfall, agile, scrum, Incremental and Iterative– and see which fits the best for your business needs best.
  • 22.
    Scrum Scrum, is asubset of Agile methodologies, it is used to manage the software product development process at the macro level. It follows the principles and values of agile; plus, it covers further specification and definition by considering some important software product development practices. This approach is best suitable for software products with changing demands. Incremental and Iterative The incremental and iterative software product development approach is like a center ground between the upfront planning of the Waterfall process and the flexibility of the Agile process. While both follow the idea of creating bits of software and exposing them to customers for feedback, however, they differ in what you create during each release.
  • 23.
    What is consideredproduct development? Product development, also called new product management, is a series of steps that includes the conceptualization, design, development and marketing of newly created or newly rebranded goods or services.
  • 24.
  • 25.
    Agile Development: The Agilesoftware development methodology is one of the simplest and effective processes to turn a vision for a business need into software solutions. Agile is a term used to describe software development approaches that employ continual planning, learning, improvement, team collaboration, evolutionary development, and early delivery. It encourages flexible responses to change.
  • 26.
    The agile softwaredevelopment emphasizes on four core values.  Individual and team interactions over processes and tools  Working software over comprehensive documentation  Customer collaboration over contract negotiation  Responding to change over following a plan