Universities offer a software engineering accelerated option to individuals who currently hold a bachelor's degree in the field and wish to advance quickly through a compacted time frame to complete a master's degree. Undergraduates seeking a combined BS and MS may also complete programs in an accelerated manner due to some credit overlap that is built into the programs.
MS in Software Engineering Accelerated Programs
While each school has its own guidelines, an MS in software engineering requires completion of a related BS degree. Master's programs have commonly accepted core classes. A few examples follow.
This type of course is usually, as the title states, theory based. This means it typically applies and builds upon topics covered in lower level classes such as computability, computer languages, discrete mathematics, and Automata. This type of course is often composed of ongoing work and projects rather than being based solely on the completion of exams.
Ethics for Programming
Here, the focus might be on the ethical and legal use of computers and their programming. The course typically includes sections on privacy laws and intellectual property, significant topics in this particular field. For schools that include AI courses in their program, ethics regarding artificial intelligence is likely to be a core topic as well.
The architecture of a system is the framework over which the rest of the application is built. Classes focused on this skill are often oriented around types of architectures, identifying which is best for a particular task. Students might also explore the processes of working with varying styles, methods for building the frameworks, and how reuse may be utilized.
Using Advanced Algorithms in Programming
This kind of course commonly focuses on designing original algorithms, checking them for effectiveness and potential issues, and then trying them. Content likely includes but is not limited to: word level parallelism, approximating algorithms, bit scaling, external memory usage, fixed-parameter algorithms, amortization, online algorithms, net flow, and linear programming.
Graduate Research or Thesis
For this degree, many schools require the completion of a graduate research project or the creation and presentation of an original thesis. This activity often functions more as a lab in which the degree seeker might define, outline, and complete either a research project or thesis on a topic of personal interest. This final product typically must have credit awarded in order to obtain the MS degree.
Transcripts should be provided for all schools attended, and a minimum GPA, such as a 3.0, may be required. Some schools may choose to waive the GRE, but it is often required, and many schools will accept either the ACT or SAT results, as long as minimum score benchmarks are met. Some programs also ask for personal essays, declaration of intent, personal goal statements, and letters of recommendation.
Programs that condense the graduate timeline typically require the BS degree to be completed before starting any graduate courses. For those following a BS/MS combined enrollment program, a student generally must have completed 90 hours towards the bachelor's degree, or have attained mid-junior standing, for admittance to the master's program.
Options for an accelerated MS degree in software engineering are available to current BS degree holders and to those presently in a BS program. Schools generally have a common set of core classes built upon program specifics.