CSSE375 – Software Construction and Evolution

Spring 2013

Schedule Overview

Unless otherwise noted, Preparation reading is to be done before the listed class session, Homework exercises are due by 11:55 p.m. on the day listed, and Project Deliverables are due by 11:55 pm of the listed day.

Schedule is subject to change, though we will strive to avoid that. Schedule last updated Sun Mar 9, 2014.

 

Week
/Day

Date

Session

Reading for Next Class

Homework & Project Assignments

Due Date

Topic Content
&
Notes

1/1

3/10

1

Feathers, Ch. 1
Fowler, Ch. 1 (thru Pg. 21)

Quiz1 and Moodle Survey
Milestone 1

3/10
3/12

Intro to the Course and to SW Change

1/2

3/11

2

Rest of Fowler Ch. 1 & Ch. 2

Quiz 2

 

Refactoring at 1000 ft.

1/3

3/12

3

LAB DAY

Milestone 1 (reviewed in class), Schedule meetings with Mike McDonald (your PM)

 

Proj Mtg w/clients & instructor
Review Milestone 1 for Grade

1/4

3/13

4

Fowler Ch. 3

Quiz 4, Fri 8 AM - Weekly report due (see example)

 

Intro to Bad Smells

Plan for Milestone / Sprint 2

2/1

3/17

5

Feathers Ch.21

Swap-1: Review Code, Find Smells, and make Changes - ID your "pair" on Moodle

Milestone 2 - I look at your Trello plan.

3/24

 

Start working on Swap 1 HW

2/2

3/18

6

Fowler Ch. 6

Quiz 6

 

More Code Smells: Duplication and the rest

2/3

3/19

7

LAB DAY

Design clinic - show a refactoring to the class. See Milestone 2. Work on Swap 1 with your partner, too.

 

Proj Mtg w/instructor

2/4

3/20

8

Fowler Ch. 7

Quiz 8, Fri 8 AM - Weekly report due

 

Composing Methods

3/1

3/24

9

 

Swap-1 due at start of class. Start Swap-2.

3/31

 

3/2

3/25

10

Fowler Ch. 8

Quiz 10

 

Moving Features

3/3

3/26

11

LAB DAY

Client meeting.

Personal design clinic - show me someone else's code.

Milestone 2 and Personal Journal (see example)

Work on Swap 2 with your partner, too.

Start Milestone 3.

 

 

 

 

4/9

See list at left!

3/4

3/27

12

Fowler Ch. 9 & Ch. 10

Quiz 12, Fri 8 AM - Weekly report due

 

Organizing Data, parts 1 & 2

4/1

3/31

13

Fowler Ch. 11

Swap-2 due at start of class. Start Swap-3. Q13 & Q13-1.

Milestone 3 - I look at your Trello plan.

4/8

Simplifying Conditionals & Method Calls

4/2

4/1

14

Fowler Ch. 12

Q14. See also Midterm Exam Prestudy

 

Generalization

4/3

4/2

15

LAB DAY

Work on Swap 3 with your partner, too. Design clinic - Show your ideas of a "big" refactoring in class.

 

Proj Mtg w/instructor

4/4

4/3

16

 

Q16. Fri 8 AM - Weekly report due

 

Big Refactorings

 

Week
/Day

Date

Session

Reading for Next Class

Homework & Project Assignments

Due Date

Topic Content
&
Notes

5/1

4/7

17

Feathers Ch. 2 & Ch. 3

 

 

Midterm Exam

5/2

4/8

18

Feathers Ch. 4 & Ch. 5

Swap-3 due at start of class. We'll grade them in one last swap! Q18

 

Legacy Code, Sensing & Separation

5/3

4/9

19

LAB DAY

Client meeting. Design clinic - Show how someone else tests your stuff against theirs.

Milestone 3 and personal journals.

 

Proj Mtg w/instructor

5/4

4/10

20

Feathers Ch. 6, 7 & 8

Q20, do First Course Feedback on Moodle, do First Team Evaluation using this form, turn in on Moodle, all by 11:55 pm tonight.

Fri 8 AM - Weekly report due

 

Seam Model

6/1

4/14

21

Feathers Ch. 9, 10, & 11

Q21,

Milestone 4 - I look at your Trello plan.

 

Sprouting, wrapping, tough changes, and programming by difference

6/2

4/15

22

Tutorial on Java Exception Handling (it's 6 web pages long - read it all!) Look at Java program MyExceptions.

Q22

 

 

Test harness misfits, what to test

6/3

4/16

23

LAB DAY

Design clinic - Show something where you can build a Mock data provider to test your system.

 

Proj Mtg w/instructor

6/4

4/17

24

Another reading on Exception Handling

Q24, Individual Homework 1,

Fri 8 AM - Weekly report due

5/1

Exception Handling

Spring Break Week of
April 21st thru April 25th

7/1

4/28

25

 

Q25

 

Defensive Programming & Error Handling

7/2

4/29

26

SW Doc. Survey paper

Q26

 

More Exception Handling - Chaining, Logging, Design

7/3

4/30

27

LAB DAY

Milestone 4 and personal journals, Design clinic - show how Mock data provider turned out

 

Proj Mtg w/instructor

7/4

5/1

28

 

Q28, Individual Homework 1 due. Fri 8 AM - Weekly report due

 

SW Documentation - 1

8/1

5/5

29

 

Q29

 

SW Documentation - 2

8/2

4/6

30

 

Q30

 

Program Understanding

8/3

5/7

31

LAB DAY

Design clinic - present your plan for Sprint 5.

 

Proj Mtg w/instructor

8/4

5/8

32

Read about open source.

Q32, Fri 8 AM - Weekly report due, Homework 2 due

 

Code Tuning

9/1

5/12

33

 

Q33

 

Open Source Software, parts 1 and 2

 

9/2

5/13

34

 

 

 

Guest speaker - Tom Harrison

 

9/3

5/14

35

LAB DAY

Design clinic - how did the Sprint 5 activities go, and what's left? Milestone 5 and personal journals

 

Proj Mtg w/instructor

9/4

5/15

36

 

Q36, Fri 8 AM - Weekly report due, Homework 3 due

 

SW Modernization, parts 1 and 2

10/1

5/19

37

Review the paper on Lehman's Laws.

Q37

 

SW Evolution and Maintenance

10/2

5/20

38

 

Q38, Documentation Right after class, do send-off to Client See red addition to Final Deliverables document.

 

Maintenance Process

10/3

5/21

39

LAB DAY

Proj Mtg w/instructor, client meeting with Final Deliverables and goodbyes, Presentations

Turn in your presentations and second team evaluations on Moodle. Turn in final personal journals.

 

Project wrap-up, Presentations

10/4

5/22

40

Read about Software Configuration Management!

Q40,

Review for final exam. Take "Last Day Survey" on Moodle.

 

Configuration Management 1 and 2, Do Course Evaluations, or, if 90%, Steve brings donuts!

Finals
Week

5/26
-5/30

 

 

 

 

Final Exam - is Wed, 5/28, 8 AM, in M111 (Sec 2) and M115 (Sec 3)