Master of Science in Software Engineering
The master of science in software engineering serves students who have earned a bachelor's degree in software engineering, computer science or a related discipline, as well as working software engineers who want to broaden their perspective while deepening their skills in software development. The program also accepts students who are already competent programmers wanting to prepare for careers in software engineering. Courses in this program are taught at a level that assumes that all students have a technical undergraduate degree and significant programming experience.
Applicants must have taken courses in differential and integral calculus, discrete mathematics, statistics and data structures and algorithms, as well as at least 12 credit hours of advanced coursework in undergraduate computer science. Admission may be granted with the stipulation that deficiencies are made up by taking necessary extra courses. GRE scores (General Test only) are required. Students with English language deficiencies are only permitted to enroll in a restricted set of academic courses.
The Master of Science in Software Engineering requires a minimum of 30 credit hours of approved graduate study. Students are encouraged to complete and successfully defend a thesis. Students who decide against writing a thesis must pass a final program examination. The curriculum includes four required courses:
|SWE 5001||Software Engineering 1|
|SWE 5002||Software Engineering 2|
|SWE 5411||Software Testing 1|
|SWE 5621||Software Metrics and Modeling|
All students are required to pass Computer Science Seminar (CSE 5500) or Computer Sciences Internship (CSE 5501) twice during the degree program. The internship is completed with an information technology business or industrial organization and is available only for students without prior experience in a practical information technology setting.
Each student selects elective courses to fulfill their credit hour requirements. One elective must be selected from courses that require significant programming and another must be a fundamental course in computer science. A list of courses fulfilling these requirements is available from the department.
The department excels in several specializations of software engineering and students are encouraged to concentrate in one of these areas by careful selection of elective courses.
Software testing is the process of technical investigation of a software product, usually to discover quality-related information (such as defects or product state data) about the product. This subfield of software engineering is undergoing rapid change, demanding more technical knowledge and more insight into the product and its risks. Florida Tech offers unusual breadth and depth of coursework and research opportunities in software testing. A specialization in software testing is best suited for those who have already worked in the field and want to become leaders in the testing community, perhaps as consultants, test automation architects or managers. Software engineering students who do not have significant experience should plan to take at least one, and preferably two, internships.
The specialization in software testing requires completion of both Human-Computer Interaction (AHF 5302) and Software Testing 2 (SWE 5415).
Additionally, the student must either complete a thesis on a softwaretesting- related topic or must take two optional courses that address software test related issues.