Software Systems Engineering Courses (SWSE)
Related Catalog Entry: School of Information Technology and Engineering / Information and Software Engineering
Related Mason Website: School of Information Technology and Engineering (http://ite.gmu.edu/), Information Software Systems Engineering (http://isse.gmu.edu/)
619 Software Construction (3:3:0).Prerequisite: SWSE foundation courses
or equivalent. An in-depth study of software construction using a modern language.
Concepts such as information hiding, data abstraction, concurrency, and object-oriented
software construction are discussed.
620 Software Requirements and Prototyping (3:3:0).Prerequisite: SWSE foundation
courses or equivalent. An in-depth study of methods, tools, notations, and validation
techniques for the analysis and specification of software requirements. Students
participate in a group project on software requirements.
621 Software Design (3:3:0).Prerequisite: SWSE 619, or CS 540 and 571,
or permission of instructor. Concepts and methods for the architectural design of
large-scale software systems. Fundamental design concepts and design notations are
introduced. Several design methods are presented and compared, with examples of their
use. Students participate in a group software design project.
623 Formal Methods and Models in Software Engineering (3:3:0).Prerequisite:
SWSE 619, or CS 540 and 571, or permission of instructor. Formal mechanisms for specifying,
validating, and verifying software systems. Topics include program verification through
Hoare's method and Dijkstra's weakest preconditions; formal specifications,
including initial specification and refinement toward implementation; integration
of formal methods with existing programming languages, and the application of formal
methods to requirements analysis, testing, safety analysis, and object-oriented approaches.
625 Software Project Management (3:3:0).Prerequisites: SWSE foundation
courses or equivalent. Life-cycle and process models; process metrics; planning for
a software project; mechanisms for monitoring and controlling schedule, budget, quality,
and productivity; and leadership, motivation, and team building.
626 Software Project Laboratory (3:3:6).Prerequisites: SWSE 619, or CS
540 and 571; SWSE 620, 621, 623, and 625; or permission of instructor. Students analyze,
design, implement, and manage a software system project. Students work in teams to
develop or modify a software product, applying sound principles of software systems
engineering. Both industrial and academic standards are used to assess the quality
of the work products.
630 Software Engineering Economics (3:3:0).Prerequisite: SWSE 625. Quantitative
models of the software life cycle; cost-effectiveness analysis in software engineering;
multiple-goal decision analysis; uncertainty and risk analysis; software cost estimation;
software engineering metrics; and quantitative life-cycle management techniques.
631 Object-Oriented Software Development (3:3:0). See CS 631.
632 User Interface Design and Development (3:3:0).Prerequisite: SWSE 619,
or CS 540 and 571, or permission of instructor. Principles of user interface design,
development, and programming. Topics include user psychology and cognitive science,
adaptive user interfaces, icon and window design, command language design, user guidance
systems, and collaborative working.
637 Software Testing and Quality Assurance (3:3:0).Prerequisite: SWSE
619, or CS 540 and CS 571, or permission of instructor. Concepts and techniques for
testing software and assuring its quality. Topics cover software testing at the unit,
module, subsystem, and system levels, automatic and manual techniques for generating
and validating test data, the testing process, static vs. dynamic analysis, functional
testing, inspections, and reliability assessment.
699 Special Topics in Software Systems Engineering (3:3:0).Prerequisite:
Permission of instructor. Special topics not occurring in the regular SWSE sequence.
May be repeated for credit when the topic is different.
706 Concurrent Software Systems (3:3:0). See CS 706.
720 Advanced Software Requirements (3:3:0).Prerequisites: SWSE 620 and
621. State of the art and state of the practice in software requirements engineering.
The course gives in-depth coverage of selected methods, tools, notations, or validation
techniques for analysis and specification of software requirements. The course work
includes a project investigating or applying approaches to requirements engineering.
721 Advanced Software Design Methods (3:3:0).Prerequisites: SWSE 620 and
621. A study of advanced design methods for large-scale software systems, including
concurrent, real-time, and distributed systems. Course work includes a project investigating
or applying software design methods.
735 Concurrency (3:3:0). See CS 735.
763 Software Engineering Experimentation (3:3:0).Prerequisites: SWSE 621
and STAT 610 (or equivalent), or permission of instructor. A detailed study of the
scientific process, particularly using the experimental method. The course examines
how empirical studies are carried out in software engineering. The distinction between
analytical techniques and empirical techniques is reviewed. Other topics include
experimentation required in software engineering, kinds of problems that can be solved
using experimentation, methods used to control variables and eliminate bias in experimentation,
and analysis and presentation of empirical data for decision making.
796 Directed Readings in Software Systems Engineering (3:3:0).Prerequisite:
Permission of instructor. An analysis and investigation of a contemporary problem
in software engineering. Prior approval is required by a faculty member who supervises
the student's work. A written report is also required. A maximum of six hours
may be earned.
799 Thesis (6:0:0).Prerequisite: Permission of advisor. A research project
completed under the supervision of a faculty member, which results in a technical
report accepted by a three-member faculty committee. The report must be defended
in an oral presentation.
Return to Course Descriptions
Return to Catalog Index
|