Slide 1

Slide 1 text

jgs SER 516 Software Agility Lecture 02: Introduction Dr. Javier Gonzalez-Sanchez [email protected] javiergs.engineering.asu.edu | javiergs.com PERALTA 230U Office Hours: By appointment

Slide 2

Slide 2 text

jgs 0516 0010 Software Agility § Agile – Process Model § Definition: Organized set of steps

Slide 3

Slide 3 text

jgs 0516 0010 Process Models Linear Parallel Plan-driven Waterfall Change Iterative

Slide 4

Slide 4 text

jgs 0516 0010 Process Models Linear Parallel Plan-driven Waterfall Change V-model testing Iterative

Slide 5

Slide 5 text

jgs 0516 0010 Process Models Linear Iterative Parallel Plan-driven Incremental Change

Slide 6

Slide 6 text

jgs 0516 0010 Process Models Linear Iterative Parallel Plan-driven Agile Change

Slide 7

Slide 7 text

jgs 0516 0010 Process Models Linear Iterative Parallel Plan-driven Agile Change Agile emerged in the late 1990s and it aim was to radically reduce the delivery time for working software systems

Slide 8

Slide 8 text

jgs 0516 0010 Process Models Linear Iterative Parallel Plan-driven Agile Change An Adaptive (Informal) Plan + daily work tracking A Contract

Slide 9

Slide 9 text

jgs Scenario 1

Slide 10

Slide 10 text

jgs 0516 0010 Case Study

Slide 11

Slide 11 text

jgs 0516 0010 Case Study

Slide 12

Slide 12 text

jgs 0516 0010 Case Study

Slide 13

Slide 13 text

jgs 0516 0010 Case Study

Slide 14

Slide 14 text

jgs 0516 0010 Error This are not Sprints!

Slide 15

Slide 15 text

jgs Scenario 2

Slide 16

Slide 16 text

jgs 0516 0010 Just Programming ...

Slide 17

Slide 17 text

jgs 0516 0010 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.

Slide 18

Slide 18 text

jgs 0516 0010 Agile Manifesto Human-Human Interaction Process Working Software Documents Plan Change while there is value in the items on the right, we value the items on the left more.

Slide 19

Slide 19 text

jgs 0516 0010 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.

Slide 20

Slide 20 text

jgs 0516 0010 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.

Slide 21

Slide 21 text

jgs 0516 0010 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 most software costs in large companies come from maintaining their existing software systems.

Slide 22

Slide 22 text

jgs How we start?

Slide 23

Slide 23 text

jgs 0516 0010 Pacman

Slide 24

Slide 24 text

jgs 0516 0010 Pacman Independent loosely coupled with one another Small (sized appropriately) Testable (pass or fail)

Slide 25

Slide 25 text

jgs 0516 0010 Homework § Working alone or in a team of 2, 3, 4, or 5 define the requirements for the Pac-man videogame § Submit a list with at least 25 functional requirements § You can add non-functional requirements (they are extra to the 25 required) § Remember, check each of your candidates for the the (1) is it Small?, (2) is it Testable?, (3) is it Unambiguous/Clear?

Slide 26

Slide 26 text

jgs 0516 0010 References § Process Models Somerville Chapter 2 § Introduction to Agile Somerville Chapter 3

Slide 27

Slide 27 text

jgs SER 516 Software Agility Javier Gonzalez-Sanchez [email protected] Spring 2021 Disclaimer. These slides can only be used as study material for the class SER516 at ASU. They cannot be distributed or used for another purpose.