$30 off During Our Annual Pro Sale. View Details »

CSC308 Lecture 04

CSC308 Lecture 04

Software Engineering I
Agile Methods
(202209)

Javier Gonzalez-Sanchez
PRO

September 23, 2022
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs CSC 308 Software Engineering I Lecture 04: Agile Methods

    Dr. Javier Gonzalez-Sanchez javiergs@calpoly.edu users.csc.calpoly.edu/~javiergs | javiergs.com Building 14 -227 Office Hours: By appointment
  2. jgs Previously

  3. jgs Fall 2022 | 00000010 process activity activity activity activity

    Approach step step step step step step step step step step step step step step step step step
  4. jgs Fall 2022 | 00000010 Activities § Communication or Requirement

    § Modeling or Design § Construction or Coding § Testing (Unit, UI, Integration, Stress, Regression) § Deployment or Delivery
  5. jgs Fall 2022 | 00000010 Types of Structures § Linear

    § Iterative § Evolutionary § Parallel
  6. jgs Fall 2022 | 00000010 Strategy Plan-based Agile

  7. jgs Fall 2022 | 00000010 The Waterfall Model

  8. jgs Fall 2022 | 00000010 The V-Model this arrows point

    at what we are testing
  9. jgs Fall 2022 | 00000010 The Incremental Model Option A:

    Linear Increments (not all colors (activities) are repeated) Option B: Parallel Increments (most than 1 activity at the same time)
  10. jgs Fall 2022 | 00000010 The Spiral Model

  11. jgs Fall 2022 | 00000010 Prototyping Construction of prototype communication

    Quick plan Modeling Quick design Construction of prototype Deployment delivery & feedback
  12. jgs Agile Methods

  13. jgs Fall 2022 | 00000010 Strategy Plan-based Agile

  14. jgs Fall 2022 | 00000010 Agile Manifesto § Through this

    work we have come to value: “Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan “ § That is, while there is value in the items on the right, we value the items on the left more.
  15. jgs Fall 2022 | 00000010 Agile in a Nutshell

  16. jgs Fall 2022 | 00000010 Definition Product Backlog Sprint Backlog

  17. jgs Fall 2022 | 00000010 Agile in Action

  18. jgs Fall 2022 | 00000010 Applicability § Product development where

    a software company is developing a small or medium-sized product for sale. § Several software products and apps nowadays are small or medium-sized; therefore, they are developed using an agile approach § Custom system development within an organization, where there is a clear commitment from the customer to become involved in the development process and where there are few external rules and regulations that affect the software.
  19. jgs Fall 2022 | 00000010 Pros § The product is

    broken down into a set of manageable and understandable chunks. § Unstable requirements do not hold up progress. § The whole team have visibility of everything and consequently team communication is improved. § Customers see on-time delivery of increments and gain feedback on how the product works.
  20. jgs Fall 2022 | 00000010 Cons § The informality of

    agile development is incompatible with the legal approach to contract definition (requirement specification) that is commonly used in large companies. § Agile methods are most appropriate for new software development rather than software maintenance (documentation). Yet the majority of software costs in large companies come from maintaining their existing software systems. § Agile methods are designed for small co-located teams yet much software development now involves worldwide distributed teams.
  21. jgs Fall 2022 | 00000010 References Chapter 2 and 3

  22. jgs Fall 2022 | 00000010 Questions

  23. jgs

  24. jgs CSC 308 Software Engineering I Lab 04: Programming with

    Java IV Dr. Javier Gonzalez-Sanchez javiergs@calpoly.edu users.csc.calpoly.edu/~javiergs | javiergs.com Building 14 -227 Office Hours: By appointment
  25. jgs Previously

  26. jgs Fall 2022 | 00000010 Lab 02

  27. jgs Fall 2022 | 00000010 JPanel

  28. jgs Fall 2022 | 00000010 Lab 03 (part A)

  29. jgs Fall 2022 | 00000010 Lab 03 (part B)

  30. jgs Fall 2022 | 00000010 Questions

  31. jgs CSC 308 Software Engineering I Javier Gonzalez-Sanchez, Ph.D. javiergs@calpoly.edu

    Fall 2022 Copyright. These slides can only be used as study material for the class CSC308 at Cal Poly. They cannot be distributed or used for another purpose.