- Department of Computer Science
- Vision, Mission, & Values
- Degrees & Programs
- Courses
- First Year Transfer Students
- Current Students
- Prospective Students
- Faculty & Staff
- Professors Emeritus
- Industrial Advisory Board
- Financial Assistance
- Employment Opportunities
- Donate
- Graduate Capstone
- Careers for Majors
- Resources
- Contact Us
- Help for Students
CS 4310 SOFTWARE ENGINEERING (4) 2005
Catalog Description:
Concepts and issues in the development of large software projects. Systematic approaches to specifications, design, implementation, testing, and maintenance of high-quality software. Prerequisite: CS 3240
Course description:
Life cycle:
specification, analysis, design, implementation, test
Specification:
narrative, inputs/outputs
Analysis:
- modeling, protoyping, user's manual
- structured analysis: data flow diagrams
- object-oriented analysis: inheritance, assembly
Design:
Preliminary:
- data design
- architectural design: modular structure, control hierarchy
- structured design: transfor/transaction analysis
- object-oriented design: objects and classes
- user interface
Detailed:
- data structure design: information hiding
- procedural design: pseudocode
Cohesion and coupling
Test:
- unit, integration, validation
- white box versus black box
- test plans, test harnesses, and test stubs
Case studies
Team designing/programming
Suggested texts:
- Pressman: Software Engineering: A Practitioner's Approach
- Sommerville, Software Engineering
- Larman, Applying UML and Patterns, Prentice Hall