Dr. Rob Hasker. A new process: YOGA 10 Principles 1. Ignore the past, only look ahead 2. Be...

Preview:

Citation preview

SE 3800SOFTWARE

ENGINEERING PROCESS II

Dr. Rob Hasker

A new process: YOGA 10 Principles

1. Ignore the past, only look ahead

2. Be artists, free to create

3. Meditate on code each day: what to fix?

4. Daily meeting: discuss meditation results

5. Flexibility: choose a change of the day

6. Rotate often: switch roles for flexibility

7. Strengthen your core: exercises for the developers that make 80% of all changes

8. Improve balance: one foot stance at mtg

9. Salute the sun: celebrate yesterday’s changes, ensure enough food and coffee to for the day

10. Relax: stop thinking about code, chant UUUMMMLL

A new process: YOGA 10 Principles:

1. Ignore the past, only look ahead

2. Be artists, free to create

3. Meditate on code each day: what to fix?

4. Daily meeting: discuss meditation results

5. Flexibility: choose a change of the day

6. Rotate often: switch roles for flexibility

7. Strengthen your core: exercises for the developers that make 80% of all changes

8. Improve balance: one foot stance at mtg

9. Salute the sun: celebrate yesterdays changes, ensure enough food and coffee to for the day

10. Relax: stop thinking about code, chant UUUMMMLL

You only Go Ahead

SIGSOFT, July 2015David Weiss

Logistics

Class roster, attendance policy Book, Schedule, policies, grading Course web site Prereq check:

SE 2800, Software Process ISE 2832, Verification

Curricular ContextSenior Design

SE 3800 Process II

SE 2800 Process I

SE 2832 Verification

Software Development Lab

SE 3821 Requirements

Course Goals

Build on SE 2800: increase knowledge and skill in following software process

Tailor software process (especially Scrum) to project needs

Add continuous integration, verification, software quality components

Industrial strength tool use

Course Goals

Build on SE 2800: increase knowledge and skill in following software process

Tailor software process (especially Scrum) to project needs

Add continuous integration, verification, software quality components

Industrial strength tool use

Common theme: reduce risks

Textbook

Scrum Shortcuts without Cutting CornersIlan Goldstein, Addison Wesley, 2014“an approach rather than the approach to

implementing Scrum.” (p. xix)Scrum is a framework; organizations can

and must specialize to their needsKey questions: what’s mandatory? What can we change and still be effective?

Tools

Atlassian JIRA/Agile planning

& trackingConfluence (wiki)

BitbucketGit repositorySourcetree

JUnitTest automation

Jenkins/TeamcityContinuous build

The big picture

1st year: implementation 2nd year: basic elements of SE process 3rd year: project experience

This course: software quality goals and tools, tailoring process to project

Scrum Refresher

Who are these people?Product ownerScrumMasterDevelopment team

Scrum Refresher

Who are these people?Product ownerScrumMasterDevelopment team

What will be developed, and in what order

Guiding team on creating, following process; removing impediments

5-9 people: determines how to deliver what product owner requests.

Scrum Refresher

Who are these people?Product ownerScrumMasterDevelopment team

Is the product owner the only interface to the customer?

How to qualify as ScrumMaster? How to approach being ScrumMaster?

Scrum Team

Reviewing Scrum Activities The Scrum process cycle (picture)

Pair Exercise

Reviewing Scrum Activities The Scrum activity cycle

Sprintplanning

Sprint execution

Sprint review

Sprint retro-

spective

Daily scrum

Reviewing Scrum Activities The Scrum activity cycle

Sprintplanning

Sprint execution

Sprint review

Sprint retro-

spective

Daily scrum

• What are some issues that this does not clarify?

• Are there places where you did things differently on your internships?

• What needs to change about Scrum for SDL?

Product Backlog

Product backlog items (PBIs) What qualifies as a PBI? Who manages these? What is “grooming”? How are PBIs ordered? How are PBIs estimated? Differences on internships?

Course themes

What is Scrum, exactly?What can we changeWhat are things we want to not do?

How would you introduce Scrum to an organization?

How to improve your use of Scrum

Other topics

Are there other ways to develop software?

How can we solve the “it works on my machine” problem?

Can we get customers to write some of our tests?

How to ensure the development environment is the same as the production environment?

Scrum review

Product roles Scrum activities Product backlog Read: Ch. 2, 3

At start of Wed. class, submit hard copy, typed report on assigned Ch. 3 principle (Shortcuts 7-9)

Heading: student named, assigned principleDefinition: what assigned component means with

examplesAssess: reasoned opinion of value & correctness

of each component; exceptions?

Recommended