CS490 - Introduction to Senior Capstone I
Course Syllabus
The goal of this course is to help you get a good start on your project and to become a responsible, productive software programmer. The purpose of this course is to complete the design of your senior project and to begin implementing it. There are six main phases to completing your project:
- Requirements analysis
- High level design
- Implementation
- Testing
- Analysis of results
- Final report
During this semester you will complete steps 1 and 2 and start on step 3. Next semester you will complete the remaining steps.
Course Notes and Assignments:
Week |
Date |
Topics |
Readings |
Due Next Week |
Assignments |
WEEK 1
|
Tuesday
August 31, 2004
|
-
Discuss syllabus
- Your expectations and mine
- Course Outline
- Why do we need a plan or process?
- Class exercise: fears
- Class exercise: project overview
- Class exercise: project goals
- Software processes
- Lab notebook
|
- Software Processes: Software Engineering by Sommerville p. 43 - 55
- Survival Concepts: Software Project Survival Guide by McConnell p. 19 - 33
- Why Plan? Fear: Planning Extreme Programming by Beck and Fowler p. 1 - 13
|
- Weekly log
- Electronic copy of project proposal
- Read handout 1
- Project goals
|
- Weekly logs
- Project goals
|
WEEK 2
|
Tuesday
September 7, 2004
|
The Requirements Problem
-
Why do we need requirements and why do many projects fail?
-
Software processes and where do requirements fit in?
-
Class exercise: user stories
-
Who are your actors?
-
Class exercise: use cases
|
- The Requirements Problem: Managing Software Requirements by Leffingwell and Widrig p. 5 - 13
- Introduction to Requirements Management: Managing Software Requirements by Leffingwell and Widrig p. 15 - 22
- Requirements and the Software Lifecycle: Managing Software Requirements by Leffingwell and Widrig p. 23 - 31
- A Use Case Primer: Managing Software Requirements by Leffingwell and Widrig p. 147 - 163
- Writing Stories: Planning Extreme Progamming by Beck and Fowler p. 45 - 55
|
- Weekly log
- Use cases
|
- Project requirements
description
- Proeject requirements template
|
|