General Catalog for 2009-10
(SENG) Mathematics & Computer Science
- 2003.0 Introduction to Software Engineering.
- Principles of software engineering: Requirements, design and testing.
- Review of principles of object orientation; object oriented analysis
- using UML. Frameworks and APIs. Introduction to the client-server
- architecture. Analysis, design and programming of simple servers and
- clients. Introduction to user interface technology. Pre-requisite:
- CSCI 1064.
- Fall
- 2013.0 Software Engineering and Human Computer Interaction.
- Psychological principles of human-computer interaction. Evaluation of
- user interfaces, usability engineering, task analysis, user-centered
- design, and prototyping. Conceptual models and metaphors. Software
- design rationale. Design of windows, menus, and commands. Response
- time and feedback. Color, icons, and sound. Internationalization and
- localization. User interface architectures and APIs. Prerequisite:
- SENG 2003.
- Spring Even Yrs
- 3003.0 Software Construction.
- General principles and techniques for disciplined low-level software
- design. BNF and basic theory of grammars and parsing. Basics of lang-
- uages. State-transition and table-based software design. Techniques
- for handling concurrency and inter-process communication. Introduction
- to middleware and performance tuning. Prerequisite:SENG 2003,MATH 2063
- Spring Odd Yrs
- 3013.0 Software Design and Architecture.
- An in-depth look at software design. Continuation of the study of
- design patterns, frameworks, and architectures. Survey of current
- middleware architectures. Component based and distributed design. De-
- signing for qualities such as performance, safety, security, re-
- usability, and reliability. Evaluation and evolution of designs.
- Basics of softward evolution, reengineering, and reverse engineering.
- Prerequisite: SENG 3003.
- Fall Odd Yrs
- 3033.0 Software Quality Assurance and Testing.
- Quality: how to assure it and verify it, and the need for a culture of
- quality. Avoidance of errors and other quality problems. Inspections &
- reviews. Testing, verification and validation techniques. Quality
- process standards. Product and process assurance. Problem analysis &
- reporting. Statistical approaches to quality control. Prerequisite:
- SENG 2003; MATH 2063.
- Spring
- 3043.0 Software Requirements Analysis.
- Techniques for discovering & eliciting requirements. Languages &
- models for representing requirements. Analysis & validation
- techniques, including need, goal, and use case analysis. Requirements
- document standards. Traceability. Human factors. Requirements manage-
- ment: handling requirements changes. Prerequisite: SENG 2003.
- Fall
- 4003.0 Software Project Management.
- Project planning, cost estimation, and scheduling. Work Breakdown
- Structure. Project management tools. Productivity metrics. Analysis
- of options & risks. Release & configuration management. Software
- contracts & intellectual property. Case studies of real industrial
- projects. Prerequisites: SENG 3033, 3043.
- Fall
- 4013.0 Software Engineering Capstone.
- Development of significant software system, employing knowledge gained
- from courses throughout the program. Includes development of require-
- ments, design, implementation, and quality assurance. Students may
- follow any suitable process model, must pay attention to quality
- issues, and must manage the project themselves, following all appro-
- priate project management techniques. Success of the project is
- determined in large part by whether students have adequately solved
- their customer's problem. Prerequisite: SENG 4003. [CAC-O and CAC-W]
- Spring