| Masters
of Science in Software Engineering
Introduction
The MS Software Engineering program is one
of several degree programs provided by the Computer
Engineering department at SJSU. The program provides students
with an educational experience that builds on traditional
computer science and engineering, and then takes an integrative
approach to software engineering. With the increased globalization
of the software development workforce there is less programming
being performed in the United States. Therefore it becomes
increasingly important that graduates understand developing
technologies and architectures and their influence on software
engineering processes, where large-scale design is pre-eminent,
and where component integration is the standard mode of development.
The program offers a strong testing and quality assurance
component.
The software industry increasingly requires those with a
suitable engineering background for their cutting edge projects.
Graduates with an MS in Software Engineering can expect to
find significant opportunities in software development, management,
and marketing.
A wide variety of computing equipment is available. Courses
are usually conducted using the specialized equipment at the
department, with a variety of sophisticated workstations and
state-of-the-art software engineering tools.
Three specializations are provided that lead to a Masters
of Science in Software Engineering degree: Enterprise
Software Technologies, Software
Systems Engineering, and Networking
Software.
Enterprise
Software Technologies
The Enterprise Software Technologies
specialization prepares students from around the world to
become technical leaders in the rapidly changing software
development environment. It offers an education in the fundamentals
of software development and in-depth exposure to the latest
technologies and trends in enterprise software development.
It prepares students for technical careers in infrastructure
software and enterprise application development.
The specialization focuses on study and research of distributed
enterprise software architectures that employ multiple clients
and scalable server-side technologies to develop high performance
systems that scale across multiple tiers of servers.
Software
Systems Engineering
The Software Systems Engineering
specialization provides current and future software professionals
with the essential skills and real-world knowledge to succeed
in the software engineering field. It offers an education
in the fundamentals of software engineering and an in-depth
exposure to the latest technologies and trends in software
development processes, methodologies, and tools. Teamwork
is emphasized throughout the curriculum to provide students
with essential preparation for working in the industry.
The specialization covers the software development life-cycle
models, object-oriented analysis and design, design patterns,
frameworks, software architecture, and software project management.
It also provides coverage of the quantitative aspects of software
engineering, including software metrics, software quality
assurance and testing, software costs, and software reliability.
Networking
Software
The Networking Software
specialization provides a unique opportunity to software engineers
in the area of networking and distributed systems. Through
a combination of basic-concept courses and hands-on experience,
students learn the fundamentals as well as the design, development,
and implementation of networking and the impact of networking
on distributed systems.
The specialization focuses on network architecture, transport
and application layer protocols, network programming and analysis,
and includes advanced topics in network security, multimedia
networking, networking for mobile computing, network management
agents, distributed operating systems, and the impact of networking
on distributed systems.
|