The Computer Engineering and Computer Science Departments are jointly offering a BS degree program in Software Engineering. The mission of the Software Engineering program is to be the leading provider of high quality, practice-oriented software engineering graduates to Northern California, and to enhance engineering knowledge through research and scholarship. The graduates of the program will be skilled in the analysis, design, implementation and deployment of software systems. Graduates will be able to apply these skills to satisfy the requirement of a specific application.
Every student is assigned to a faculty advisor. The program expects every student to consult regularly with their advisors and to obtain the advisor's approval and signature on all required registration forms. Undergraduate transfer students have a special responsibility to obtain approval of transfer credits with the assistance of their advisor during their first semester at San José State University.
The role of program coordinator will alternate between these two departments every three years; the program office and support will be provided by the current program coordinator's home department.
The program prepares students to enter the profession immediately or to go on to graduate school.
The goal of the BS program in Software Engineering is the preparation of software engineers: professionals who develop software products on time, within budget and that meet customer requirements. The coursework builds on computer science fundamentals and mathematical principles to cover the design, analysis, verification, validation, implementation, deployment, and maintenance of software systems. The program focuses on practical aspects of building and deploying real software systems in a socially responsible way.
The hallmark of the program provides the students with an educational experience that builds on traditional computer science and engineering, but distinguishing itself in the following ways:
The software engineering curriculum culminates in a year-long capstone sequence where the students work in teams to build a large software system. Students are encouraged to complete a co-operative education experience prior to enrollment in these courses, in order to gain some direct, industrial experience before embarking upon their own project.
The software industry increasingly requires those with a suitable software engineering background for their cutting edge projects. Graduates with a BS 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 departments, with a variety of sophisticated workstations and state-of-the-art software engineering tools. Students are required to have a laptop with wireless capability.
Freshmen should choose their major when they apply for admission. However, the software engineering program is designed to be flexible for those students who might want to refocus their efforts after beginning in another program. To that end, lower division Software Engineering is quite similar to the Computer Science and Computer Engineering programs.
Note: Students should periodically review the B.S. Software Engineering Student Guide on the web site or obtain the B.S. Software Engineering Student Guide booklet for the latest information regarding the B.S. in Software Engineering Program.