Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

jgs 00000001 Announcement Assignment 05 Sprint 1 is due tonight § Sprint Backlog § Burndown Chart § Retrospective § Review § Product – Source Code – Clean Source Code § Product – Class Diagram– Clean Design Midterm Exam this Thursday March 11 during lecture time (AZ Time)

Slide 3

Slide 3 text

jgs 00000001 Proctoring

Slide 4

Slide 4 text

jgs 00000001 Proctoring

Slide 5

Slide 5 text

jgs 00000001 Proctoring

Slide 6

Slide 6 text

jgs 00000001 Agenda § Sample Exam is available. Test your system ASAP § Midterm Exam available March 11 from 4:30 pm to 5:45 pm Key ideas: a) Show your environment. b) It is a CLOSED BOOK exam. Do not use any material c) Scratch paper is allowed. Empty White Paper. Show it on camera when you show your environment!

Slide 7

Slide 7 text

jgs Test Yourselves

Slide 8

Slide 8 text

jgs 00000001 Correct?

Slide 9

Slide 9 text

jgs 00000001 Correct?

Slide 10

Slide 10 text

jgs 00000001 Step 1 PanelLeft JMenuBar Main JMenu JMenuItem JFrame JPanel Workspace Icon * A B C ____Listener Graph Edge Compiler

Slide 11

Slide 11 text

jgs 00000001 Dependency Injection (DI) public class ClientWindow { ... public ClientWindow() { ... = new OnePanel(); ... = new TwoPanel(); ... = new ThreePanel(); ... = new JButton(); ... = new JLabel(); } } public class ClientWindow { public ClientFrame(OnePanel a, TwoPanel b, ThreePanel c) { // ... } }

Slide 12

Slide 12 text

Review

Slide 13

Slide 13 text

jgs 00000001 Note The following is a summary of the most relevant ideas. But, the exam is not limited to these, i.e., The following IS NOT a comprehensive list

Slide 14

Slide 14 text

jgs 00000001 Review § Background of process models (5); agile vs plan-based; what is and what is not “Agile”; agile manifesto; When to use agile and when is not a “good” option? Factors to be reviewed [Somerville 2,3] § Requirement vs Task; Product backlog; sprint; agile process, ceremonies, and roles; burndown chart [Somerville 3,4] § Agile principles (7) [Rubin 3] § People factors (3); clean coding; clean code principles; [Martin 1] § PBI; user story; epics;requirements [Rubin 5]

Slide 15

Slide 15 text

jgs 00000001 Review § storyboard; epic vs story; INVEST; common errors [Rubin 5,6] § Product backlog; DEEP; Planning Poker; Grooming; [Rubin 6] § Sprint; Sprint characteristics; sprint planning; sprint backlog; [Rubin 4] § KISS, DRY, Readable, Coding Guidelines for Java [Java] § Estimation; Velocity; [Rubin 7]

Slide 16

Slide 16 text

jgs 00000001 Agile Principles 1. satisfy the customer 2. Working software. 3. motivated individuals that work together daily 4. self–organizing teams. 5. face–to–face conversation. 6. Simplicity - good design. 7. Team -tunes and adjusts.

Slide 17

Slide 17 text

jgs 00000001 People Factors People Factors Amicability Motivated individuals work together daily tune and adjust Skills value simplicity technical excellence Communication self-organized conveying information face-to-face

Slide 18

Slide 18 text

jgs 00000001 INVEST in good stories § Independent – loosely coupled with one another § Negotiable – Stories are what and why , not how § Valuable – for the customer! § Estimatable – Effort/Cost of design, build, and test. § Small (sized appropriately) § Testable – pass or fail

Slide 19

Slide 19 text

jgs 00000001 Common Errors § “As a student, I need to save my quiz so that later I can review, print, or email it for other uses. § As a student, I need to review, print, and email my quizzes so that I can request a revision or study. § As a developer, I want to create a server socket so that the client can connect to the server. § As a tester, I want to have the server finished so that when the client is completed, I can test it. § As a student, I want to see each question in my quiz displayed clearly so that I can quickly identify my errors.

Slide 20

Slide 20 text

jgs 00000001 PBI

Slide 21

Slide 21 text

jgs 00000001 Key Characteristics (DEEP) § Detailed Appropriately § Emergent § Estimated § Prioritized

Slide 22

Slide 22 text

jgs 00000001 Clean Code Principles 1. Readability e.g. Coding guidelines. 2. Simplification and Specification e.g. KISS (Keep It Simple by K. Johnson). 3. Decoupling 4. Avoid Code Bloat e.g. DRY (Do not Repeat Yourself).

Slide 23

Slide 23 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.