COURSE DESCRIPTION Dept., Number CSC 170 Course Title ...

30 downloads 91 Views 22KB Size Report
James Robertson and Suzanne Robertson, Complete Systems Analysis, ... James Rumbaugh, Michael Blaha, William Premerlani, Frederick Eddy, and William.
COURSE DESCRIPTION Dept., Number Semester hours

CSC 170 3

Course Title Course Coordinator URL (if any):

Software Requirements and Specification Robert Buckley http://gaia.ecs.csus.edu/~buckley/

Catalog Description Analysis and specification of functional and non-functional requirements for real-time and nonreal-time software systems in the context of a software development lifecycle. Determining customer and user software requirements and ensuring that specifications are correct, complete, and testable. Includes modeling techniques, methods for representing real-time requirements, and the use of Computer-Aided Software Engineering (CASE) tools to illustrate analysis concepts. Prerequisite: At least a C- grade in CSC 131 and full CSC major status. Textbook Karl E. Wiegers, Software Requirements, 2nd Edition, Microsoft Press, 2003. References Ian Graham, Object Oriented Methods, Second Edition, Addison-Wesley, 1994. IEEE Standards Collection: Software Engineering, 1994 Edition, Institute of Electrical and Electronics Engineers, Inc., 1994. James Robertson and Suzanne Robertson, Complete Systems Analysis, Volume 1 & 2, Dorset House, 1994. James Martin and James J. Odell, Object Oriented Methods: A Foundation, PTR PrenticeHall, 1995. James Martin, Principles of Object Oriented Analysis and Design, PTR Prentice-Hall, 1993. James Rumbaugh, Michael Blaha, William Premerlani, Frederick Eddy, and William Lorensen, Object-Oriented Modeling and Design, Prentice-Hall, 1991. Course Goals 1. 2. 3. 4. 5. 6.

To enable the student to define an information processing system. To demonstrate an understanding of the rationale for a formally structured system analysis and design process. To describe and define structured analysis and design in the context of the software development life-cycle. To identify and represent alternative system specifications to the level of detail necessary for system design. To understand the fundamental ideas of structured design and how to use the tools of structured design. To read, understand, and use a structured design and how to use the tools of structured design.

Course Description for CSC 170 April 28, 2008 Page 2 of 3

7. 8. 9.

To understand the criteria for evaluating and improving design quality. To apply strategies for creating a good, maintainable design. To be aware of some of the pitfalls inherent in the functioning of a systems analysis and design team.

Prerequisites by Topic Thorough understanding of: • Programming methods (I and II). • Software engineering principles. Basic understanding of: • Programming methods (I and II). • Software engineering principles. Exposure to: • Programming methods (I and II). • Software engineering principles. Major Topics Covered in the Course 1. Analysis and the software development life cycle. a. Software systems (1 hour). b. The software crisis (2 hours). c. Risks (.5 hour). d. The role of the analyst (.5 hour). e. Needs assessment, problem definition, and feasibility (.5 hour). f. Fact-finding and the user interview (1 hour). 2. Requirements modeling and representation. a. Information processing network model (5.5 hours). b. Data definition (2 hours). c. Information processor specification (3 hours). 3. Database requirements modeling. a. Normalization analysis (2 hours). b. Object relationship models (2 hours). 4. Real-time system control network model. a. Control processor network (1 hour). b. Control processor specifications (2 hours). 5. Nonfunctional requirements specification (1 hour). 6. Packaging the structured system specification (1 hour). 7. The software analysis process. a. Event analysis (3 hours). b. The system and its environment (2 hours). c. The system and its internal behavior (2 hours).

Course Description for CSC 170 April 28, 2008 Page 3 of 3

8. Quality review and the structured walkthrough design. a. Preliminary considerations (2 hours). b. Modularization and system structure (3 hours). c. Human-computer interface issues (3 hours). d. Purchase or build (1 hour). Laboratory Projects Exercises and case studies involving the students working individually and collaboratively with various specification methods. Estimated Curriculum Category Content (Semester hours) Area Algorithms Software Design Comp. Arch.

Core

Advanced 3.0

Area Data Structures Prog. Languages

Core

Advanced

Oral and Written Communications Every student is required to submit at least one written report (not including exams, tests, quizzes, or commented programs) of typically five pages and to make at least one oral presentation of typically five to ten minutes duration. Social and Ethical Issues No significant component. Theoretical Content No significant component. Problem Analysis Please see the Laboratory Projects section above. Solution Design Please see the Laboratory Projects section above.

/aa