Masters Degrees in Computing at GMU MS in Software Engineering (SWE) MS in Information Systems (INFS) MS in Information Security Assurance (ISA) MS in Computer Science (CS) Offered by the Department of Computer Science Jeff Offutt Professor of Software Engineering Chair, Graduate Studies Committee Coordinator, MS-SWE program Computing MS Degrees What Is An MS ? A degree that says you have “mastered” the material in a field Beyond a 4-year college degree Usually 30 credits – one to two years – 10 classes or 8 classes and an MS thesis More focused … all classes on one subject – No General Ed requirements At GMU, more than 75% of MS students are part-time students, working full-time Computing MS Degrees © 2010 2 Why Get An MS ? 1. We haven’t taught you enough as an undergrad to be successful in your job 2. To update your knowledge and skills – 3. 4. 5. 6. More important for people who come back to school after working for a few years Higher salary Job security More choices of tasks at work To change field or direction in your field Most of you will get an MS degree eventually The questions are when and what field Computing MS Degrees © 2010 3 When To Get An MS ? 1. Immediately after BS ↑ Can use “accelerated MS” option ↑ You already have study habits ↑ BS knowledge is still fresh ↓ You might need a salary … NOW ↓ You might be really really tired of school 2. A few years after BS (4 or 5) ↑ A little experience will help make the classes more relevant ↑ A way to help take the “next step” at work ↑ Learn new material that was not available ↓ Study habits are gone ↓ Financial impact ↓ Do you have time for school? Computing MS Degrees © 2010 4 When To Get An MS ? 3. Several years into a career (10 or 20) ↑ Chance to learn new material ↑ Experience helps give confidence and decide what’s important ↓ Conflicts with life … children, house, demanding career, … ↓ Less mental and physical energy to study ↓ It takes more time to learn ↓ You may have forgotten fundamentals (or they may have changed) Our students fall in all three categories Most succeed ABOUT 40% category 1, 40% category 2, 20% category 3 Computing MS Degrees © 2010 5 How To Get Accepted ? Appropriate foundation material – Discrete math, data structures, computer organization, OO programming, appropriate theory (for MS-CS) – You get all these in a BS-CS degree, most in a BS-ECE degree Undergrad GPA of 3.0 or above – Exceptions for “close to 3.0” with high grades in major or last 60 hours Accelerated BS to MS program – Must have GPA of 3.5 or above – Take two graduate courses in your senior year – they are applied to both your BS and MS degrees – Full-time students will finish the MS in one year Computing MS Degrees © 2010 6 Which MS Program ? The CS department at GMU has four – We also have 100 MS-level lecture based classes We are truly the university of diversity !!! – No university in the world can match this • MS in Software Engineering (SWE) • MS in Information Systems (INFS) • MS in Information Security Assurance (ISA) • MS in Computer Science (CS) Which one should I choose ? How do I know what’s right for me ? Computing MS Degrees © 2010 7 Which MS Program ? MS-SWE How to engineer high quality large scale software products MS-INFS How to design, build, and maintain databases and other data retrieval systems MS-ISA How to provide secure networks, information systems and software products MS-CS Fundamentally understand what we can do with computing devices Computing MS Degrees © 2010 8 Distinguishing SWE and CS Reliability Building High Quality Software specifying, modeling, designing, implementing, evaluating, deploying, maintaining, … Engineering software is distinct from the science of computing Computing MS Degrees © 2010 9 Computing MS Program “Mosts” Most theoretical, most programming Computer Science Info Security Assurance Most specialized Information Systems Most diverse students Most broad, most teamwork Software Engineering Computing MS Degrees © 2010 10 MS in Computer Science Courses : 10 Courses for the MS CS Degree – Core (1): Analysis of Algorithms – Advanced : At least five “advanced” graduate courses, i.e., with graduate prerequisites – CS : At least six courses must be CS • Including 2 “advanced” courses – Electives : At least eight courses from a list of pre-approved courses Distance Education : Students can take enough courses via distance education to finish an MS Website http://www.cs.gmu.edu/programs/masters/cs/ Computing MS Degrees © 2010 11 MS in Information Security and Assurance Courses : Ten courses for the MS-ISA Degree – Foundations : Computer Architecture, Program Design & Data Structures, Discrete Math, Object-Oriented Programming in Java – Core (4): Computer Networks, Information Security Theory and Practice , Security Laboratory, and Network – Security Electives : Four ISA courses – Electives : Two courses from a list of pre-approved courses Website http://www.cs.gmu.edu/programs/masters/isa/ Computing MS Degrees © 2010 12 MS in Information Systems Courses : Ten courses for the INFS Degree – Foundations : Computer Architecture, Program Design & Data Structures, Discrete Math, Object-Oriented Programming in Java – Core (4): Computer Networks, Database Management, Info Systems Analysis and Design, Information Security – Electives : Six courses from a list of pre-approved courses – Emphasis Areas : Database Management, Data Mining and Data Warehousing, E-Commerce, Software Engineering, Knowledge Management, Information Security and Assurance Website http://www.cs.gmu.edu/programs/masters/infs/ Computing MS Degrees © 2010 13 MS in Software Engineering Courses : Ten courses for the MS-SWE Degree – Foundations : Computer Architecture, Program Design & Data Structures, Discrete Math, Object-Oriented Programming in Java – Core (4): OO Software Specification and Construction, Software Testing, Software Modeling and Architectural Design, Distributed Software Engineering (4 courses) – Emphasis Area : Three courses from an emphasis area (Software Design, Software Assurance, Software Management, Web Applications) – Electives : Three courses from a list of pre-approved courses Website http://www.cs.gmu.edu/programs/masters/swe/ Computing MS Degrees © 2010 14 Emphasis of Concepts Concept CS ISA INFS SWE Heavy Moderate Light Heavy Programming V. Heavy Heavy Light Moderate Theory V. Heavy Moderate Moderate Moderate Algorithms V. Heavy Heavy Light Moderate Conceptual Moderate Heavy Light Heavy Abstractions Moderate Light Moderate Heavy Modeling Light Moderate Light Heavy Teamwork Light Light Heavy V. Heavy Communication Light Light Moderate Moderate Management Light Light Moderate Moderate Math Computing MS Degrees © 2010 15 Emphasis of Quality Criteria CS Speed of execution, Time-to-market ISA Security, Reliability INFS Reliability, Maintainability, Security SWE Reliability, Maintainability, Usability, Scalability, Security, Availability, Speed, Time-to-market Computing MS Degrees © 2010 16 Topics Emphasized CS Algorithms, AI, Languages, Systems, Networks, Theory, Graphics ISA Operating systems, Networking, Theory, Languages, Intrusion, Software INFS Databases, Operating Systems, Networks, Systems analysis, Information systems SWE OO programming, Requirements, Modeling, Design, Distributed software, Testing, User interfaces, Web applications, SOAs, Software patterns and architectures, Management Computing MS Degrees © 2010 17 Computer Science and Computing We have barely started the process that Physics / Engineering started a century ago Computer Science Computing MS Degrees Fields Based on Computer Science Electronic Commerce Information Security and Assurance Information Systems Software Engineering Telecommunications Information Technology ... others ... ?? © 2010 18 Frequently Asked Questions (1/4) Which MS program is better ? – They are all good, but different. Diversity benefits the student, so it depends which one is suitable for you. Which MS program is harder ? – They all focus on different things, and are harder in different ways Which will best prepare me for a PhD in CS or IT ? – It probably depends on what area you want to work in as a PhD student. You should take MS classes that prepare you for the qualifying exams. What undergraduate majors are acceptable in the MS programs? – All MS programs take students from all majors, although foundation requirements may be required. Most CS students have a CS BS, about half of SWE students have a CS BS and many of the others are engineering or science, many INFS students have business BS Computing MS Degrees © 2010 19 Frequently Asked Questions (2/4) Can I transfer from one program to another ? – Yes and many students do. Foundation requirements are similar and core courses from one program can usually be used as electives in another. Can I take classes from another program ? – Yes, all programs have free electives and most students take classes from multiple programs Can I get two MS degrees ? – Yes, but GMU does not allow a course to be applied to two different MS degrees. If you took a core course in your second degree as an elective for your first degree, we will make a substitution. Can I get certificates with my MS degree ? – Yes, GMU allows up to two certificates within one MS degree; courses can count to both an MS and a certificate Computing MS Degrees © 2010 20 Frequently Asked Questions (3/4) Why do I have to take foundation courses ? – We want all of our students to do as well as possible. Foundation courses teach undergraduate computing concepts that teachers assume the students know in MS courses. Many C grades in MS courses are a result of inadequate preparation. – The foundation requirements are there to help you !!! If I get a C, am I kicked out of school ? – No. You are allowed to graduate with at most two C grades if you have a 3.0 or above GPA (effectively, for every C, you need to get a complementary A). Why is software engineering called “SWE”, not “SE” ? – “SE” is standard around the country, but our SWE program is the oldest in the USA, so there was no standard. At GMU, “SE” is used by systems engineering. Computing MS Degrees © 2010 21 Frequently Asked Questions (4/4) Why does GMU offer so many computing MS degrees ? – For the benefit of our many students. GMU is well known for its diversity – we reflect that diversity by offering a diverse collection of classes and degree programs. We believe GMU has the most diverse collection of computing classes in the nation. Why do you keep saying “computing” instead of “computer science”? – One of our degrees is called computer science, so we use “computing” to reflect the breadth of our degrees – software engineering, security, information systems. They are all related to computer science, but have developed away from the core curriculum, just as engineering disciplines developed away from physics. Computing MS Degrees © 2010 22