|
|
 |
 |

| Instructor |
Ramkumar Sevanan Arjunan
sevananr@onid.orst.edu
Office: 4126 Kelly Engr Center
Office Hours: Tuesdays & Thursdays 2:00pm - 4:00pm or by appointmnet
|
| |
| Official Course Catalog Description |
| Introduction to the "front end" of the software engineering lifecycle; requirements analysis and specification; design techniques; project management. (Writing Intensive Course) |
| |
| Course Description |
| This class is the first class of the pro-program, and the first of two required Software Engineering classes you will take here. The goal of the class is to give you hands-on introduction to what software engineering is, what software engineering processes are, and how to work effectively on a team. This is not a programming class, and you are not required to do any development work as part of your coursework. That said, you should be very familiar with programming concepts and practices, including Object-Oriented Programming, basic testing and debugging methodologies, and basic code documentation practices. This is a writing intensive class with a major project component. |
| |
| Course Learning Objectives |
The purpose of this course is to teach you the basic software engineering methods, focusing especially on the first half of the software engineering lifecycle. After completion of this course you should be able to:
- Describe process models of software life cycle and discuss their phases, advantages and disadvantages.
- Synthesize requirements for a realistic software system by interacting with a user or user group, and write a requirements specification document.
- Model system requirements using one or more semi-formal notations such as UML, dataflow diagrams, entity-relationships diagrams, state diagrams.
- 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.
- Validate requirements and designs by reviewing specification with user or user group; adjust the specification or design as necessary.
- Describe several methods of estimating the cost and developing a schedule for a programming project.
- Participate effectively in a team environment.
- Produce professional-quality software related documents.
Because this is a course in the CS pro-program, we make certain assumptions about you, and your abilities to work independently. I expect you to be responsible and keep up with the reading and complete your assigned work on time. Lectures will not necessarily cover the material assigned in the reading. Given limited lecture-time I will focus class-time on explaining material which is particularly difficult, or which is not well-explained in the book, etc. If something is explained well in the book, I may not spend time on it in class. You are still responsible for said material for exams and your work. |
|
 |

|
|