|
Download Print Version
Software Engineering is a discipline concerned with the practical
problems of developing large-scale software systems. Software engineers
are the architects of the software component of a computer-based system,
providing several levels of representations or blueprints leading to
specifications through which programmers build the subsystems and
modules of the system. Software development methodologies and management
techniques combine with theories from mathematics and computer science
in a cost-effective manner to solve real-world system development
problems. This degree provides students with the theoretical foundations
of software engineering, experience in team projects involving software
development and management, hands-on experience with state-of-the-art
tools, an understanding of advanced software development and management
techniques, and exposure to the most recent developments and emerging
technologies in SE.
For graduate programs in
2002, the main prerequisite programming language is Java.
Some programs include other languages as prerequisites. Students who
wish to transition to the new curricula should review their status with an
advisor.
All students complete any necessary prerequisite courses plus 13
graduate courses. All students are required to participate in an
extensive team software development project using cutting edge
technologies and the Software Engineering Research Seminar to keep them
abreast of this rapidly changing field. For this reason, they are not
required to take a Core Knowledge Examination. However, to be admitted
into the program, they need to have demonstrated through their prior
coursework that they can consistently perform at a B level or higher.
Students complete the requirements of one of the three concentrations:
Project Management, Software Development, or Software Systems.
Admission to the Project Management concentration requires two or more
years of experience in software development or a closely related field.
The Project Management Concentration
of the Master of Science in Software Engineering addresses the
management of the quality of software products and processes and
provides coursework in management and measurement techniques.
The Software Development Concentration
of the Master of Science in Software Engineering addresses the
foundations, methodologies, and tools for developing high quality
large-scale software systems, with an emphasis on the technical issues
of software development.
The Software Systems Concentration
of the Master of Science in Software Engineering addresses the
foundations and theories in designing and developing system software and
tools for programming languages and software development.
The Software Engineering program has two phases:
The Prerequisite Phase ensures that all students acquire the
necessary background prior to enrolling in graduate courses. All or part
of the Prerequisite Phase may be waived if a student has the equivalent
academic background. In the Graduate Phase, students develop as software
engineering professionals by completing required courses that provide a
common body of knowledge for their concentration as well as advanced
courses that complement and add depth to the common body of knowledge.
All students also participate in an extensive team software development
project and the Software Engineering Research Seminar. Individual needs
are addressed through elective courses chosen in consultation with a
faculty advisor.
Prerequisite Phase
|