Instructor: Carlos Jensen Office: Kelley 3061Email: cjensen@eecs.oregonstate.edu Office Hours: TTh 10am-12pm Or by appointment.
Teaching Assistant: Vaishn Avi Narayanan
Email: narayava@eecs.orst.edu
Office Hours: W 3:30-5:00, F 11:00-12:30 in Kelley
Atrium
Website: TBA Textbooks: 1) Software Engineering by Eric J. Braude. [Required]
2) Waltzing with Bears by Tom DeMarco and Timothy Lister [Required]
Course Objectives After completion of this course you should be able to:1) Describe process models of software life cycle and discuss their phases, advantages and disadvantages.
2) Gather requirements for realistic software system by interacting with a user or a user group; write a requirements specification document.
3) Model system requirements using one or more semi-formal notations such as UML, dataflow diagrams, entity-relationships diagrams, state diagrams.
4) Design software systems at architectural level, and at lower levels, using one or more techniques such as object-oriented design or structured design. Express designs in design specification documents.
5) Validate requirements and designs by reviewing specification with user or user group; adjust the specification or design as necessary.
6) Describe several methods of estimating the cost and developing a schedule for a programming project.
7) Work effectively in a team.
8) Prepare effective, professional software-related documents.
Course Assignments
Course work will consist of the following
activities:
Team Management
You will form 3-person teams. Written
work produced by the teams will indicate which team member wrote each section.
At the end of the project, each team member will assign points (confidentially)
to the other team members. The team assignments will receive an overall grade,
which will then be distributed according to the team members' point assignments
as adjusted by the instructor. In extreme cases, a team can decide to fire a
team member with just cause at week four. To do this, the team members
must contact the instructor and make their case for why the team member should
be fired.
Academic Dishonesty
The rules regarding
Academic Dishonesty will be strictly enforced. Note that the penalties are
quite severe and that the instructor has no discretion once a case of cheating
is detected.
Assignments
Lecture slides