Title: MS in Computer Science and MS in Software Engineering at CSU Sacramento
1MS in Computer Science andMS in Software
Engineering atCSU Sacramento
- Cui Zhang and Don Warner
- Department of Computer Science
- CSU Sacramento
2Two MS Programs PlusCertificates of Advanced
Study
- MS in Computer Science
- MS in Software Engineering
- Certificates for MS students
- (1) Intelligent Systems (2) Computer
Architecture - (3) Computer Engineering (4) Networks and
- Communications (5) Software Engineering
- (6) Systems Software (7) Data Management
systems and (8) Bioinformatics.
3Goals of the Two MS Programs
- To prepare students to serve as effective
professional computer specialists and/or software
engineers in our society - To prepare students for research, teaching, or
further study towards the Ph.D. in CS or SE - To enable individuals with background in other
areas to obtain the skills and knowledge
necessary to enter and/or advance in employment
in computer-related industries.
4A Significant Difference
- Degree education program
- v.s.
- Technical training program
5Admission Requirements
- A baccalaureate degree
- A minimum 3.0 GPA in the last 60 units attempted
- GRE General Test
- Math preparation including two semesters of
calculus, one semester of calculus based
probability and statistics, and discrete
mathematics corresponding to CSUS courses Math30,
Math31, Stat50, and Math101
6Admission Requirements (Cont.)
- Computer Science lower division preparation
including programming proficiency, machine
organization, and UNIX and PC-based program
development environment proficiency corresponding
to CSUS CSc15, CSc20, CSc28, CSc35, and CSc60 - Computer Science advanced preparation as
evidenced by a 3.25 GPA in the following CSUS
upper division courses or their equivalent
elsewhere CSc130, CSc131, CSc132, CSc137,
CSc138, and CSc139.
7Application Procedures
- Application deadlines are April 1 for Fall
semesters and October 1 for Spring semesters. - All prospective graduate students must file the
following with the CSUS Graduate Center - (1) Application for admission (Form A and
- Form B in the CSU application booklet)
- (2) Two sets of official transcripts from all
colleges - and universities attended, other than
CSUS - (3) GRE General Test score report.
8Admission Decisions
- University processing
- Program processing
- Main admission decisions
- admitted as fully classified
- admitted as conditionally classified
- admitted as pre-Computer Science
- denied.
- Also possible as 2nd BS in CS or unclassified.
9Preparation for Entering a MS Program
- Taking lower division courses from community
colleges - Taking courses from CSUS as a 2nd BS in CS
student - Taking courses from CSUS as a open university
student - Taking GRE General Test before filing the
application - Please be aware of Articulation Agreements!
10Program Advising
- Regular advising hours (office hours) of the
graduate coordinator for prospective students and
students admitted - Regular advising hours (office hours) of graduate
advisors for fully classified students - Graduate program orientations every semester for
new coming graduate students (CSUS and CS
Department) - Placement tests every semester for new coming
graduate students (CS Department).
11MS in CS Degree Requirements
- 30 units of coursework completed within 7 years
and with a minimum 3.0 GPA - Required Courses (13 units)
- CSc201 Programming Language Principles
- CSc204 Data Models for Database Management
- Systems
- CSc205 Computer System Structure
- CSc206 Algorithms and Paradigms
- CSc209 Graduate Seminar
12MS in CS Degree Requirements (Cont.)
- Breadth Requirement (9 units)
- Software Engineering CSc230
- Systems software CSc239, 246, 250, 251
- Intelligent Systems CSc215
- Database Management Systems CSc244
- Networks and Communications CSc255, 258, 275
- Computer Architecture/Computer Engineering
- CSc237,
242, 273, 280
13MS in CS Degree Requirements (Cont.)
- Restrictive Electives (3-6 units)
- (1) Taking from a restricted list of CSc
upper - division courses
- (2) Taking other graduate level CSc courses
- (3) Taking graduate level courses outside the
CS - Department with prior department
approval - Culminating Requirement (2-5 units)
- CSc500 Masters Thesis, or
- CSc502 Masters Project
14MS in SE Program
- Beginning offering MS in SE in Spring 1999 as the
first MS in SE program in the California State
University system with CS and SE courses
available then. - Having had a major program change effective Fall
2002 with more courses and emphasis on SE. -
15MS in SE Degree Requirements
- 30 units coursework completed within 7 years and
with a minimum 3.0 GPA. - Required SE Core Courses (16 units)
- CSc230 Software System Engineering
- CSc232 Software Requirements Analysis and
- Design
- CSc233 Advanced SE Project Management
- CSc235 Software Architecture
- CSc238 Human-Computer Interface Design
- CSc209 Graduate Seminar
16MS in SE Degree Requirements (Cont.)
- SE Electives (6 units)
- Select two from the following
- CSc204 Data Model for Database Management
- Systems
- CSc231 Software Engineering Metrics
- CSc234 Software Verification and Validation
- CSc236 Formal Methods in Software Engineering
17MS in SE Degree Requirements (Cont.)
- Restrictive Electives (3-6 units)
- (1) Taking other graduate level CSc courses
- (2) Taking graduate level courses outside the
CS - Department with prior department
approval - Culminating Requirement (2-5 units)
- CSc500 Masters Thesis, or
- CSc502 Masters Project
18CSc230 Software System Engineering
- The integration of managerial and technical
activities in system engineering that control the
cost, schedule, and technical achievement of the
developing software system. Application of the
principles, activities, tasks, and procedures of
system engineering and software engineering to
the development of a software system.
19CSc231 Software Engineering Metrics
- Software quality and quantity metrics in
software engineering. Measurement theory and
metrics. Metrics include management metrics,
indirect and direct metrics, and predictive
metrics. Uses of metrics include software cost
and schedule estimation, model calibration, and
software productivity measurements. Metrics
techniques include the Goal-Question-Metric
approach, COCOMO, and function point analysis.
20CSc232 Software RequirementsAnalysis and Design
- Software engineering requirements including
elicitation, analysis, specification,
verification, and management. Emphasizes IEEE
software engineering requirements and standards
and the concept of operations (ConOps) document.
Techniques include structural analysis, use cases
and object-oriented analysis.
21CSc233 Advanced Software EngineeringProject
Management
- Advanced methods and procedures for managing
a software development project. Includes project
planning, scheduling, and cost estimation,
project organizational types, staffing and
training considerations, leading and motivating
computer personnel, and methods for measuring and
controlling a project. Emphasizes IEEE software
engineering management standards and keys to
project success.
22CSc234 Software Verification and Validation
- Verification and validation (V V)
techniques to identify and resolve software
problems and high-risk issues early in the
software lifecycle. Application of V V to all
phases of the lifecycle process. Includes
planning and reporting on the V V effort.
Topics also include software quality assurance
and testing.
23CSc235 Software Architecture
- Software architecture styles. Concepts and
activities for software architecture design.
Notations, models, and specification languages
for software architecture design. Engineering
principles and guidance for software architecture
design. Techniques, methods, tools for
designing, building, analysis, and evaluating
software architecture. Object-oriented approach
to software architecture design.
Architecture-based software development.
Management and reuse of software architecture
design.
24CSc236 Formal Methods in SE
- An introduction of basic concepts of formal
methods in software engineering. Students will
learn why and how formal methods should be used
in the software development process for
delivering a quality product. Formal-method-based
software lifecycle models, languages for
software system specification, modeling and
abstraction of software systems, analysis and
verification of system properties, software
system refinement, formal semantics, program
verification, object-orientation of formal
methods, systems and tools for the application of
formal methods, and advances of formal methods in
SE.
25CSc238 Human-Computer Interface Design
- Issues involved I design of interaction
between people and computers. Insight and
experience in key issues of HCI design. Emphasis
on identifying issues and trade-offs in
interaction design. Development and evaluation
of alternative solutions to design problems.
26Program Advising and Planning
- Classification with possible multiple steps
- Course taking planning and completion
- Course evaluation for waive/substitution
- Advancement to candidacy
- MS thesis/project topic and supervisor
- MS thesis/project completion
- Graduation with a degree MS in CS/SE
- Additional certificate of advanced study possible
27Certificates of Advanced Study
- The certificates in Computer Science program are
designed to recognize students who have completed
the core graduate courses CSc201, CSc204,
CSc205, and CSc206 plus additional advanced
coursework in a specialty area. - The certificates are available only for MS in CS
matriculated students. - There are eight certificate programs.
28Certificate Programs
- Intelligent System (9 units)
- Computer Architecture (15 units)
- Computer Engineering (12 units)
- Computer Networks and Communications (9 units)
- Software Engineering (9 units)
- System Software (9 units)
- Data Management Systems (9 units)
- Bioinformatics (12 units)
29More Information
- Computer Science Department web site
- www.ecs.csus.edu/csc
- CSU Sacramento web site
- www.csus.edu
- Faculty
- Programs
- Course schedules
- Course descriptions
- Activities
- Campus contacts/links
30Questions?
31Thank You!