Sie sind auf Seite 1von 7

Software Engineering, INFSCI 2540 Syllabus

Fall 2015

Thursday 6:00 8:50, IS 403

Joshua W Burns (jwburns@pitt.edu)


Office hours by appointment
Course Description
As software becomes more prominent in society, the number of software projects increases exponentially.
However, many of these projects run over budget, take too long to deliver, or just fail outright. Most of the time
these failures could have been prevented; this is where the importance of software engineering and its
practitioners is realized. This course intends to explain and clarify the profession, processes, tools and
disciplines of software engineering.
From the practitioners point of view, we will first explore the software development lifecycle and the activities
it encompasses. After that, we will explore the various activities concerned with planning, executing and
managing a software engineering project.
Course Learning Objectives
This course will provide an introduction to software engineering - its processes, management and technology.
Software engineering encompasses many subtopics; after completing this course the student will understand:
the importance of software engineering
software development processes and activities
identification and analysis of software requirements
architecting, modeling and designing software
validation and testing techniques and process
planning and managing a software project
risk identification, analysis and mitigation
software quality and assurance
Textbooks:
Software Engineering: A Practitioner's Approach, by Roger Pressman, 7th Edition, McGraw-Hill, 2009
ISBN-10: 0073375977
ISBN-13: 978-0073375977
Readings: Available on course web, internet or via handouts if necessary.
Course Content
Course content (lecture slides, readings, homework, templates) will be provided via the Blackboard site
accessible at: http://courseweb.pitt.edu. Content for each lecture will be available by the day of the class
meeting.
Readings are designated on the syllabus and are meant to supplement the textbox and lectures and to assist with
completion of the assignments and team project.
Grading

Quizzes (3-4)
Assignments (3-4)
Midterm Exam
* Team Project
** Class
Participation/attendance

10%
20%
35%
35%
2%

* Team Evaluations can affect Team Project grade


** Class participation/attendance can only help your grade
Quizzes will be provided at the beginning of class and will cover the assigned non-textbook readings. They will
not cover lectures.
Assignments will be directly related to the project and will be both individual and team based. Assignments are
due by 11:59PM on the night of class. Each homework assignment will be graded based on the following
criteria:
- 25% of grade is a submission grade
- 75% will be graded based on quality of the assignment (see note on quality below)
- Late assignments will be subject to a 25% penalty for each day. No credit will be given after 4 days.
The following table illustrates grading for assignments:
On time (11:59PM on day it is
due)
Up to 24 hours late
24 48 hours late
48 72 hours late
Over 72 hours late

100%
75%
50%
25%
0%

Material for exams will be derived from the textbooks, readings and lectures. Note that lectures may include
additional material not in the required textbook, so it is important to attend the lectures in addition to reading the
textbook.
Schedule (subject to change)
Wee
k

Date

Topic

09/03

09/10

Readings
(readings marked with * are
recommended)

Course Introduction
Syllabus
Introduction to Software
Engineering

Software Process
Vision and Scope

09/17

Quiz #1 (covers weeks 2


and 3)
Requirements 1
Team Assignments
Assignment 1 Overview

Pressman:1, 4, 31, 32
Brooks: No Silver Bullet
*NATO Science Committee: Software
Engineering
Standish Group: Chaos Report
Tockey: Recommended Skills for
Software Engineers
Pressman: 2, 5
Fairley/Thayer: The Concept of
Operations
Weigers: Quality Requirements
Weigers: Customer Voice
Davis: Fifteen Principles of Software
Engineering
IEEE: Why Software Fails (web)

Assignment Due

Wee
k

Date

Topic

09/24

Requirements 2
Team Activity Lego House

10/01

UML
Analysis Models
Assignment #2 Overview

10/08

Quiz #2 (covers weeks 4,


5, 6)
Architecture
Requirements Review
Activity
Design
Implementation
Team Project Working
Session

Weigers: When Telepathy Wont Do:


Requirements Engineering Key Practices
Weigers: 10 Requirements Traps to Avoid
McConnell: Less Is More
Pressman: 6, 7, Appendix 1

Pressman: 8, 9, 10, 12, Appendix 2

Pressman: 17, 18, 19


Ariane 5 Flight 501 Failure (page 114)
Therac 25 (1, 2, *3, 4)

Testing and Validation

Maintenance and Evolution


Midterm

Configuration Management

Change Management

Risk Management

Quality Management

Pressman: 22, 29
Yamura How To Design Practical Test Cases

Pressman: 24, 25, 26, 27, 28

Pressman: 11, 13, 20.4


Eick: Does Code Decay
Fairley/Rook Risk Management For
Software Development
Crader Lessons Learned From
healthcare.gov

10/15

10/22

9
10

10/29
11/05

11

11/12

12

11/19

11/26
13

12/03

14

12/10

15

12/17

Readings
(readings marked with * are
recommended)

Program Management
(Guest Lecture)

Quiz #3 (covers weeks


10, 11, 12)

*** Topic TBD

Midterm Results (tentative)


Thanksgiving Break (no
class)

Security Engineering (Guest


Lecture)

Special Topics in Software


Engineering

Quiz #4 (11/24)

Agile Development

Team Activity (Agile


Velocity)

Final Project Presentations

Important Dates
o
o
o
o
o
o
o
o
o
o

September 11
September 17
September 30
October 1
October 8
October 22
October 29
November 19
December 3
December 7

Add/drop period ends


Quiz #1
Withdrawal period ends
Assignment #1 Due
Quiz #2
Assignment #2 due
Midterm
Quiz #3
Quiz #4
Final Project Presentations

Assignment Due

Assignment #1
Vision and
Scope
Document

Assignment #2
Requirements

Assignment #3
Data Analysis
and Modeling

Pressman: 3
Royce: Improving Software
Economics
TDB

Final Project
Package

Collaboration and Quality


Software engineering is a highly collaborative process. Therefore you will be expected to participate in and out
of class and with your team for assignments, projects and exercises.
Quality is one of the most important facets of software engineering, therefore assignments, exams, project
material and presentations will be graded based on attributes of good quality, including but not limited to:
- Consistency
- Completeness
- Correctness
- Spelling / grammar
- Readability
- Professionalism
- Citations when applicable
- Diagrams
Team Projects
Your team will be responsible for developing, managing and documenting a software engineering project. The
weekly assignments will aid your team in developing materials for the final project submission. In addition to
the final project submission, there will be two project review presentations. Team projects and presentations
will be graded based on quality, completeness, consistency and application of the material taught in this class as
well as incorporation and improvement of the feedback from assignments.
The purpose of the team project is to apply your knowledge of software engineering and develop skills needed
for a software engineering project, while introducing students to teamwork.
Team Project Grading
Weekly assignments are graded separately from the final project submission. However, incorporation of
material and comments from assignments will count as part of the final project grade.
The final software engineering package will be comprised of several documents and diagrams and graded
according to the following weights:
Scope/ Feasibility / Context
Requirements
Analysis Models
Review Presentation(s)
Collaboration
Competitive Analysis

25%
25%
15%
15%
10%
10%

Software Requirements Specification: This score is an assessment of the Software Requirements Specification document. This grade
represents the document only; the actual content is assessed under Requirements and Analysis Models.
Collaboration: This score represents the amount of collaboration that the team had with the project stakeholders and any research that
the team did to support the project (market analysis, feasibility, competitors, etc.) Note that lack of collaboration from a team will
usually affect other scores, as quality may suffer (see Collaboration and Quality and Voice of Customer).
Competitive Analysis: This grade designates overall how on the mark the project was, the team dynamic, quality, etc. It is meant to
encourage teams to put forth their best effort and have a polished product.

Voice of Customer (VOC)


Wikipedia defines Voice of the Customer as:

a term used to describe the in-depth process of capturing a customer's expectations, preferences and aversions.
Specifically, the Voice of the Customer is a market research technique that produces a detailed set of customer wants and
needs, organized into a hierarchical structure, and then prioritized in terms of relative importance and satisfaction with
current alternatives. Voice of the Customer studies typically consist of both qualitative and quantitative research steps. They
are generally conducted at the start of any new product, process, or service design initiative in order to better understand the
customer's wants and needs, and as the key input for new product definition

Team projects and assignments will be partially graded on how well the Voice of the Customer has been
captured.
Software engineering is a highly collaborative process. Therefore you will be expected to participate in and out
of class and with your team for assignments, projects and exercises. This involves interaction with the
customer/stakeholders (represented by the instructor) to resolve issues, clarify concepts and gather more
information. It can also involve research and analysis outside of the classroom materials, such as market
analysis for your project or research on the current business environment for similar projects. This is especially
important when gathering requirements, and grading of assignments will reflect this.
In any case, whether your team has communicated with stakeholders, or performed research, assignments
should reflect and document these activities. I suggest adding a section in your assignments/reports with the
specifics of such collaboration/research. Example:
DATE
September 12, 2014
Ongoing

TOPIC
Email discussion
with Stakeholder
Market Analysis

NOTES
Must support iPhone app, no need to Android app at this point in time.
There are similar apps available for this type of solution: WidgetApp and
iWidget

Project Teams
Project teams will be comprised of 4-6 students, and students are randomly assigned to a team. This mirrors
real-world working conditions where a diverse group of people work together on a single project.
Incorporation of Assignments
Assignments are graded separately from the final team project submission, however incorporation of feedback
from assignments will be considered for the project grade.
As mentioned above, all assignments be graded partially on the students/teams collaboration regarding the
project. Specific grading for each milestone will be available with the assignment description.
Some assignments are assigned at an individual level (per student). For final project submissions, it will be
expected that all individual assignments will be consolidated (including feedback) into one consistent and
concise set of information by the entire team. Simply cutting and pasting individual assignments together
into the final submission will impact the team grade negatively. The idea is to work together as a team and
resolve contradictions, vague information, etc.
Project Reviews
During the review, each team will present their project materials to the instructor, and the instructor will
comment and ask questions as appropriate. These reviews are used to assess both the project and team.

Each team is allotted a time slot during normal class meeting time to present their project status to the instructor.
Each review involves a deliverable and a presentation. The deliverable is a consolidation of the previous
assignments.
A review should be considered a way to update the stakeholders of the project status, and give an overview of
the completed work to date. It should not be a regurgitation of assignments, diagrams, documents, etc. While
some explanation of detailed data will be necessary, the team should present in a manner that would instill
confidence that the team is building the right system in the right way. Part of the competitive analysis grade for
the final project is based on the presentation.
Team Evaluations
Each student is required to submit a Team Evaluation after each team assignment and review. This evaluation
will allow students to rate their team members in terms of contribution, understanding and performance, and
will not be shared with the rest of the team. The purpose of the team evaluation is to ensure that all team
members receive a fair grade based on their participation within the team. However, students are encouraged to
bring team issues to the instructors attention as soon as possible.
Document Templates
The following content should be well defined in every submission:
- collaboration notes (see above)
- team name / members
- high level project overview (7x7 marketing slide)
- milestones and deliverables
- project status (what work has been completed, is in progress, is yet to be started)
University Policies:
Academic Integrity
Students in this course will be expected to comply with the University of Pittsburgh's Policy on Academic
Integrity. Any student suspected of violating this obligation for any reason during the semester will be required
to participate in the procedural process, initiated at the instructor level, as outlined in the University Guidelines
on Academic Integrity. This may include, but is not limited to, the confiscation of the examination of any
individual suspected of violating University Policy. Furthermore, no student may bring any unauthorized
materials to an exam, including dictionaries and programmable calculators.
Disability Services
If you have a disability that requires special testing accommodations or other classroom modifications, you need
to notify both the instructor and Disability Resources and Services no later than the second week of the term.
You may be asked to provide documentation of your disability to determine the appropriateness of
accommodations. To notify Disability Resources and Services, call (412) 648-7890 (Voice or TTD) to schedule
an appointment. The Disability Resources and Services office is located in 140 William Pitt Union on the
Oakland campus.
Copyright Notice
Course materials may be protected by copyright. United States copyright law, 17 USC section 101, et seq., in
addition to University policy and procedures, prohibit unauthorized duplication or retransmission of course
materials. See Library of Congress Copyright Office and the University Copyright Policy.

Statement on Classroom Recording


To ensure the free and open discussion of ideas, students may not record classroom lectures, discussion and/or
activities without the advance written permission of the instructor, and any such recording properly approved in
advance can be used solely for the students own private use.

Das könnte Ihnen auch gefallen