OREGON INSTITUTE OF TECHNOLOGY
Computer Systems Engineering Technology Department
Software Process Management - CST 316
James N. Long
Office: Purvine Hall #179
Office Phone: 885-1580
Web Page: http://www.jnltech.com
(If I am in my office, my door is usually open. You are welcome to drop by at other times.)
Class: 4 Credits
Text Books: The Mythical Man-Month, Addison Wesley, 2005
Agile Software Development , Addison-Wesley, 2002
Any student with a disability who anticipates a need for accommodation in this course is encouraged to
talk with the instructor about his/her needs as soon as possible.
In this first term of a three-term sequence, students will work in teams to gather requirements, model, analyze, develop and integrate an n-tiered architecture software product. Students will learn about project management, software development lifecycle tools and processes, and quality assurance processes. The format of the course will be mixed, lecture topics, software engineering process examples and explanation, class based excercises, and team presentations. The topics will be presented and worked on in a sequence to support enterprise level software development.
NOTE: You must complete CST 316. CST 326 and CST 336 as a sequence. If you drop out of the sequence, the entire sequence must be repeated, with or without credits.
Upon completion of this course, students will have the background to:
- Describe and contrast different software models including the iterative process used in this class.
- Understand the benefits and potential problems of teaming, describing qualities and processes of effective teams, and describing the role of teamwork in system design.
- Describe and contrast potential project organizations and the team member roles within those organizations.
- Create a Team Charter to articulate how the team will track, manage and communicate project progress, changes in scope, changes in design, and defects.
- Assess risk,probability of the risk, triggers and formulate contingency plans.
- Construct a statement of work with appropriate acceptance criteria.
- Describe the relationship between Testing and Quality Assurance.
- Describe the Quality assurance practices appropriate for each part of the development life cycle.
- Create user based requirements and engineering requirements.
- Describe traceability and be able to map a requirement through all project artifacts.
- Describe different modeling techniques and where they apply.
- Describe the different architectural views and assign them to parts of the life-cycle.
- Asses risk and develop risk management plans.
PREREQUISITES: Pass CST 211 with grade C or better.
Evaluation for a final quarter grade will be based on quality of an accumulated protfolio of artifacts resulting from class activities and project develoment. The total grade will be split 1/3 group presentation, 1/3 group artifact, and 1/3 individual. Participation in class, lab, and team project work will be considered as part if individual grade. Project groups and individuals will assign themselves both a mid-term and final term grade. These grade assignment will be presented to the instructor in a scheduled meeting and must be supported through portfolio artifacts, group based project development, and group based presentations. The instructor has the right to raise or lower presented grades as negotiated in the evaluation meeting.
As the project teams advance toward the final goal of creating a fully engineered enterprise software project solution, artifacts of the software development lifecyfcle will be generated.
For the first term, the follwoing project artifacts will be created:
Inidividual artifacts created in software development process are:
- Software System User Stories
- Software Engineering Requirements List
- Initial User Interface Prototype
- Logical Architecture Model
- Initial Class Model
- Early Test Scripts
- Initial Business Case
- Functional Architecture
- Gantt Chart
- Team Software Process Definition
- Database Challenge
- Bi-Weekly Status Reoprts
- Gantt Chart Updates
Team presentations that must be done are:
- Mythical Man Month Article Summaries
- Agile Software Develoment Chapter Summaries
- Other research artifacts as approved by the instructor
It is the responsibility of individual students and project groups to submit artifacts for feedback prior to submission for grade evaluation. Artifacts that have not had a feedback submission will not be included in the evalatuion protfolio.
- Initial UI Prototype Presentation
- Bi-Weekly Sprint Demonstrations
To get an 'A' on the in the class:
Complete all project deliverables, producing all deliverable line-items.
Fully implement all top priority requirements as determined by your team members and the instructor.
Deploy the end project in a manner acceptable by your project sponsor and the course instructor.
Complete all of your tasks accurately.
Attend all meetings, demos, presentations, etc.
Keep minutes of your group meetings
Complete weekly progress reports.
Attend all meetings, demos, presentations, etc.
Complete your assigned tasks on time.
Complete self and peer evaluations.
Attend lectures regularly.
Actively support your group.
Do more than what is asked of you.
The lab will consist of demonstrations and tutorials related to how to use the process tools and what will be expected in each of the deliverables. Failure to attend lab will weaken your team knowledge of deliverables and tools and will reflect on individual effort and individual attendance.
When a team is ready to turn in a deliverable, they will inform the instructor and produce the artifacts for the deliverable. The deliverable will be turned in according to any rules that accompanied the task as specified in task descriptions and based on additional information provided during lecture and/or lab. An artifact must be turned in once for feedback before it can be included in a project portfolio. Written feedback will only be provided once; however, office visits with the instructor can be made any number of times for feedback on artifacts.
The assigned text books are an important part of the course sequence. Reading of a chapter or article can be accompanied by a write-up turned in after the reading is done. The write-up can be retained and included in the individual portfolio for mid-term and final evaluation. The write-up should explain:
- Major topic(s) covered by the chapter/article.
- How the topics are relevant today in software engineering.
- How the topics will apply to software development in CST 316/326/33
Software Engineering and Software Development Process
Risk Driven Design