M.S. in Computer Science:
Web Application Development
The MS/CS concentration in Web Application Development is suggested for individuals with a background in a discipline other than computer science, who are specifically interested in gaining the skills to develop applications on the Web. You will obtain a basic grounding in the software development and problem solving skills required of all computer scientists. You then learn the principles of database management systems and web programming, so that you can develop three-tier Web applications. You will also obtain skills in requirements acquisition and human computer interaction, so you can work with clients to determine the functionality and interface that they desire for the application you are developing.
Students considering this concentration should also consider, as an alternative, the M.S. in Service Oriented Computing, that is specifically intended as an accelerated professional education program for students interested in Web and Internet applications. The M.S./SOC provides a ramp for developing software development skills that is specifically intendeed for developers of such applications, that eschews some of the traditional education in data structures and algorithms, which nowadays are available as software libraries. The M.S./SOC focuses instead on the skills that you need to build reliable distributed applications. For example, for someone with no programming background, this concentration requires the following courses before taking CS 546 Web Programming:
- SOC 611 Web Fundamentals
- MA 502 Discrete Mathematics
- CS 570 Programming in C++
- CS 590 Algorithms
- CS 561 Database Management Systems
By contrast, the M.S./SOC allows you to take a course in Web programming after taking two courses:
- SOC 611 Web Fundamentals
- SOC 605 Introduction to Service Oriented Computing
where the latter course teaches introductory programming using Visual Basic rather than C++. By eschewing the long prerequisite chain described above, the M.S./SOC allows more time to focus on topics such as distributed application development (using a popular toolkit such as Microsoft .NET) and service oriented architecture (SOA). The study plans suggested below allow you to "drill down" deeper into topics such as software engineering and databases, at the cost of not leaving enough time to develop skills in distributed programming, software engineering and applications of SOA.
If you already have a strong background in software development skills, you may want to consider the M.S./CS concentration in databases and SOA.
If you follow this study plan, you will graduate with:
- a Master of Science in Computer Science, and
- a Graduate Certificate in Service Oriented Computing.
Core Courses
If you already have some background in computer science, you may be exempted from taking some or all of the "ramp" courses (MA 502, CS 570 and CS 590). These courses are typically intended for students with a background outside of computer science, who are interested in obtaining the problem-solving skills necessary to develop IT applications.
| Mathematics | MA 502 Discrete Mathematics |
| Foundations | CS 570 Programming in C++ |
| CS 590 Algorithms | |
| Computer Science | CS 561 Database Management Systems |
| Service Oriented Computing | CS 545 Human Computer Interaction |
| CS 546 Web Programming | |
| CS 548 Engineering of Enterprise Software Systems | |
| SOC 511 Web Fundamentals | |
| SOC 521 Software Requirements Acquisition and Analysis |
Suggestions for Elective Courses
The enterprise computing electives give you a deeper background in distributed applications and service oriented architecture. These courses together give a good coverage of Web services.
| Enterprise Computing | CS 549 Distributed Systems |
| Data Mining and Privacy | CS 578 Privacy in a Networked World |
| CS 513 Knowledge Discovery and Data Mining | |
| Management | MGT 662 Legal Issues for the IT Professional |
| MGT 679 Management Information Systems |
Sample Study Plan - Part Time
For this study plan, you should have already taken at least one programming course, otherwise you will need to take the foundation course CS 570 Programming in C++ that is a prerequisite to CS 590 Algorithms.
| Fall | Spring | Summer | |
|---|---|---|---|
| Year 1 | MA 502 Foundations of CS CS 590 Algorithms |
CS 545 HCI CS 578 Privacy |
SOC 521 Software Reqts |
| Year 2 | SOC 611 Web Fundamentals CS 561 Database Mgt Systems |
CS 513 Data Mining CS 548 Eng of Ent Soft Sys |
CS 546 Web Prog |
Ask a question of the graduate advisor. *
* Remove the spaces around "@" when sending email.



