Software Engineering – SE361

Spring 2013

Revised: 3/4/2013

 

Course Schedule

 

Notes on Project Deliverables

Your instructor will clarify the deadlines, format and manner in which project deliverables are submitted (e.g. noon day prior via Wiki, dropboxi or other)

 

Notes on Assigned Problems (unless otherwise directed by your instructor)

Assigned Problems are due at the start of the session indicated on the schedule.

Your instructor will clarify the format and manner in which problems are submitted.

 

 

Session

Topics

Readings
(complete by start of class)

Supporting Materials

Assigned  Problems

(see note above)

Class
Activity

 

Project
Deliverables

(see note above)

Project

Points

1-1

 

 

Course Intro

SE Intro

Teams/Roles

 

 

 

Chapter 1

SW Development & Teams

Role Descriptions

 

 

 

Individual Preference Clipboard survey by end of day.

 

1-2

 

Process Models
Project Planning

Ch. 1 (all)
Ch. 2 (except 2.1.3)
Ch. 3 (3.1-3.3)

 


Chapter 2
Chapter 3

 

 

Introduce POS Project

How to use the Project Delivery Mechanism

 

Smart Vending machine Customer Exchange

 

 

2-1

 

Modeling

Requirements

UML Use Cases

 

Ch. 4 (4.1-4.4)
Ch. 5 (5.1, 5.2, 5.4)

Ch. 6 (6.1, 6.2)

Chapter 4
Chapter 5

Chapter 6

 

Planning Activities

 

 

 

Project Delivery Mechanism or Wiki operational

 

 

5 pts

2-2

 

 

Application Testing

 

Ch. 18 (18.0 - 18.6, except 18.6.4)

Chapter 18
SVN Intro

 

1.5
2.7, 2.10
3.2, 3.3

4.1, 4.3

5.1, 5.9

 

Eclipse and SVN setup (subclipse)

Requirement Activities

 

 

 

3-1

 

Domain Analysis

Design Concepts
Architecture (Layered)
UML Class Diagrams

 

Ch. 6 ( 6.5.1, 6.5.2, 6.5.3)

Ch. 8 (all)

Fast Track UML 2.0 by Kendall Scott (Books 24x7)
Ch. 1, 2, 3 (class diagram only)

Chapter 6

Chapter 8

 

 

Acceptance Testing

 

 

 

Initial Plan
Requirements

Status

 

20 pts

3-2

 

Design

 

UML Demystified by Paul Kimmel (Books 24x7) - Ch. 4

 

 

6.1, 6.3

18.1, 18.3

8.1, 8.7, 8.8, 8.11

 

 

Design Activities

 

 

4-1

 

 

  EXAM #1 (1 hour)

JUnit

Unit Testing
Integration

 

Ch. 17 (all)

 

 JUnitIntro

Chapter 17
Chapter 19

 

JUnit Activity


Status

5 pts

4-2

 

 

  UML Sequence Diagrams

 

Ch. 19 (19.1-19.4)

 

Sequence Diagrams

(see myCourses)

 

 


Design

10 pts 

5-1

 

UI Design

Chapter 11

 

 

Test Plan

Status
+ Updates

15 pts

5-2

 

UI Design

UML State Diagrams

 Ch. 11 (11.0-11.4.1, but NOT 11.2.2, 11.3)

State Diagrams (see myCourses)

 

17.1, 17.4, 17.6, 17.8
19.2

11.1, 11.9 (for their project)

 

 UI mockup (show and tell)

 

 

6-1

R1 PRESENTATIONS

Planning, Refactoring

 

 

 

 

 

 

Release 1
Status

 

R1 Rubric

 

45 pts

6-2

Patterns

Ch. 12 (12.1 – 12.1.3)

 

 

SE361 Design Patterns

 

 

 

 

Reflection (ask instructor for due date)

 5 pts

7-1

Inspections

Ch 15 (all except 15.3)

 

Chapter 15

 

Inspection Process

 

 

 

Print Spooler (sample code)



R2 Planning

Status

15 pts

7-2

OPEN

 

 

 12.1, 12.4
15.1, 15.2, 15.9, 15.10

 

Code Inspections

 

 

8-1

EXAM #2 (1 hour)

 

 

 

 

 

Inspection Report
Status

15 pts

8-2

Acceptance Testing

Product Release

 

Testing/Release

 

 

 

 

9-1

Quality Concepts

Ch. 14

Chapter 14

 

 

 

 

Cross Team Testing

Status

 

15 pts

9-2

OPEN

 

 

14.1, 14.3, 14.8

 

 

 

10-1

R2 PRESENTATIONS

 

 

 

 

Release 2
Status

55 pts

10-2

Postmortems

 

 

 

 

R2 Rubric

Post Mortem Rubric

 

 5 pts

11

 

5/14/2013 2:45-4:45pm

Ask you instructor for specific Location

The Final Exam may be taken at this time ONLY – please plan accordingly!


 

 

Textbooks

 

Required: Software Engineering – A Practitioner’s Approach, 7th Edition, Roger Pressman

Student Resources: http://highered.mcgraw-hill.com/sites/0073375977/student_view0/ - has Chapter Overviews and Practice Quizzes

If you are an SE major or plan on taking additional SE classes, you will want to keep this text for subsequent courses.

If you don’t intend to keep the text past this quarter you may interested in a website called http://www.coursesmart.com/ which has a 180 day 'rental' of Pressman that may be more cost effective than buying the book and selling it back. This for your information only, RIT or the SE Department has no affiliation with this service. Of course you may be able to find it used via other outlets as it is a widely used SE text. Make sure you are getting the 7th Edition.

 

Policies & Miscellaneous Items

 


      - One unexcused absence - 1 % off final grade
      - Two unexcused absences - 3 % off final grade
      - Three or more unexcused absences - 5 % off final grade
* Additionally, you will also miss credit for activities that took place during the classes you were absent. Bottom line come to class.

 

 

 

Grading

 

 

Exams

Closed book one hour exams are given during Weeks 4 & 8 on topics covered up to that point. A cumulative two hour final exam is given during Week 11. Note that exam topics may cover class activities, homework and assigned reading - whether discussed in class or not. As per department policy, exams may not be taken early or made up later with exceptions made only for substantiated medical or personal emergencies.

 

Team Project

Overview

The focal point of the course is a term long project executed by a team of 4-5 students. The goal of the project is to introduce and practice the fundamental software development life-cycle activities of planning, tracking, implementing and delivering an actual software product. Teams will be formed during Week 1 and will remain together throughout the term. Your instructor will explain the process for forming teams during the first class session. Simulating a real world project development environment is challenging due to the short amount of time teams are able to meet in person. Time will be allocated during each class session for project teams to meet and work. It is critical that you are present for these sessions, as your absence from class adversely affects your team’s ability to make progress. It is also equally important for the team to take advantage of this time to interact with their instructor who will be available to offer guidance and provide clarification on product requirements. Time will also be required outside of the classroom (usually at least once a week) to meet and work as a team.

Project Artifacts

Each instructor will have a mechanism for teams to deliver non-source code artifacts of the project (Project Plan, Requirements Specification, Test Plan and Design Document). Your instructor will specify the mechanism used in his/her section and give you the necessary access and instructions to do so. For example, he/she might choose and have access to team Wiki in order to allow grading and commenting on the state of these artifacts as your team’s project progresses throughout the term. In such cases, artifacts would be accessible via the browser at a location similar to (http://wiki.rit.edu). Other instructors may choose a different mechanism. Make sure you clearly understand this and any deadlines at the beginning of your team project work.  Regardless of the above mechanism, teams will also have a SE project account that will house their Subversion (SVN) code repository.

 

Project Releases

Each team will produce two project releases – “R1” during Week 6 and “R2” during Week 10. The level of functionality for each release is determined during the planning process in concert with your customer (instructor). A release includes the current state of project artifacts maintained on the project wiki or alternate mechanism; an executable and version controlled product and test source code. Each release is accompanied by an in-class team presentation and product demonstration.

Expectations

Participating in the team project is perhaps the most valuable experience you will take from this course. Far more projects fail as a result of poor collaboration and communication within project teams than they do for any technical short-comings. Becoming an effective team member is a critical career skill and the goal of this project is to gain some experience with effective (and non-effective) teaming practices. The expectation is that all will make an honest effort in participating in team activities to the best of their ability. Should non-constructive conflict arise, your instructor will expect the team to first make an effort to resolve issues internally. Beyond that your instructor will intercede as needed to help in resolving team issues.

 

Project Grading

Your instructor will grade your project using the following point distribution. The course schedule will be specific on what deliverables are expected on a weekly basis. Project grades are assigned on a team basis with each member initially receiving the same grade. Your instructor will reserve the right to adjust individual grades up or down after each of the project releases (Week 6 & Week 10) based on team member peer evaluations and the instructor’s observations.

 

Total Points Available - 210

 

 

Assigned Problems

Assigned problems are based primarily on readings from the Pressman text. Problems will be completed within project teams, with the team receiving a single grade for each block of assigned problems. Your instructor reserves the right to adjust individual grades based on participation.

Class Activities

A number of in-class activities will be conducted throughout the term to reinforce a parallel development activity teams are currently performing on their own projects. Activities will also be run to support the introduction of tools and techniques used in the team’s product development.