A Tale of Choices

In the year 2015 SOCS is at a crossroads. We can choose status quo, to take a road well travelled, or to venture forth on a new approach to defining the programs we teach. Classically the undergraduate degrees under the B.Computing are comprised of two majors: CS and SE. We have both of those majors in our current degree structure. To realize an expansion of the undergraduate program requires the addition of more options for incoming students. We can't actually add any programs until we have resources, but we need to know which programs we want to add so that when we do get resources we can mobilize quickly.

We need to decide (relatively quickly) how we want to define those additional options. This document is intended to help us outline the possible choices and the benefits and drawbacks to each. We start with two possible scenarios: adding multiple new majors vs adding specializations to our existing majors.

Please edit, add comments, add some options, and generally help modify this document so that it includes your thoughts on the matter. Don't delete the thoughts of others, just add yours as well. We'll discuss this as a school soon (hopefully at a school council meeting or at a special meeting reserved just for this discussion).

Current Status

SOCS currently offers two majors, with the courses outlined below.

ExclusiveRequired but not restrictedCommon To both Majors Required but not restrictedExclusive
Sem 1 MATH*1200 CIS*1500 CIS*1250
Sem 2 CIS*1910

CIS*2500
CIS*2250
Sem 3 CIS*2910 CIS*2030

CIS*2430

CIS*2520
CIS*3250
Sem 4 CIS*2750

CIS*3110

CIS*3490
Sem 5 CIS*3150 CIS*3750

CIS*2460/STAT*2040
CIS*3260
Sem 6 CIS*3760
Sem 7 CIS*4150

CIS*4300
CIS*4250
Sem 8 CIS*4650

In addition, students are required to take an external Area of Application (AoA)

Our current area of application is described as 4 credits of a minor (8 courses). The AOA language needs to be rewritten because it refers only to the B.A and B.Sc. program minors but we have been permitting students to take AOA in other subjects such as music, business and engineering.

The Area of Application seems like a good idea, but is often implemented by students in a hap-hazard way. Many upper-year students are dissatisfied with the way the AoA currently functions, and find that completing the AOA can lead to disruptions in the program of study.

Option 1: New Majors

The first option involves the addition of 2-3 new majors. The majors vetted so far include: mobile, HCI, and game programming.

Pros Cons
A major is a definitive entity, which makes it easier to advertise Too many majors can actually be harder to advertise
Individuals and administrators who are not computer scientists understand what a major is.Majors are costly to implement because they require major-specific courses
Majors show up on the student transcripts Majors take a long time to implement because of the lead time needed to make program changes.
Forward planning is easily described in terms of majors. Majors require major-specific courses (isn't this a repeat of item 2, above)?
Majors are easier to sell to alumni during fundraising Much of computer science is common across the discipline. Separations between majors may be somewhat artificial
Majors are easy to explain to high school students and their parents Majors are somewhat difficult to change, making it slower to react to changes in computing technology and practices.

Option 2: Areas of Application / (Streams)

The second option involves maintaining the status-quo with respect to the majors, and adding some pre-defined programs of study to the AoA. The pre-defined AoA should have a combination of computing electives, and courses from the content domain.  The computing electives should be chosen to support the area of application.  

Pros Cons
Pre-defined AoA are easy to create as they do not go in the calendar. The AOA offers quick flexibility. Some new courses will be necessary
AoA offerings make it easy to offer many differing specializations, but the courses need not be restricted to any particular cohort of students, which is more cost-effective.
Students could have a clearer understanding of exactly which courses they will take over their entire degree.
The total number of electives available to students may increase

Here are six prototypes for predefined AoA’s. Each AoA would be comprised of 8-10 courses: 4-5 from SOCS, and 4-5 from a related domain. (Note these are samples only). All AofA should probably include one project course (4900-type).

Mobile Systems Interaction Design Big Data
mobile courses

3210

marketing course

GIS course
mobile HCI

2170

4300

psychology course(s)

digital humanities
3530

big data course

statistics

4110

sociology course
Entrepreneur Game Design Theoretical Computing
writing

business

marketing

web development

databases
4800

4820

4720

linear algebra

3700

marketing
linear algebra

3150

advanced algorithms

discrete optimization

4780

+math courses

For an expanded analysis, consider the Mobile Systems AofA. The AofA could include the following SOCS courses:

The AofA could include the following domain-related courses:

For a second example, consider the Big Data AofA. The AofA could include the following SOCS courses:

The AofA could include the following domain-related courses:

For a third analysis, consider the Interaction Design AofA. The AofA could include the following SOCS courses:

The AofA could include the following domain-related courses:

I like the idea of adding AofAs to our menu - but perhaps keep it open in the event that a student wants to explore something outside of our streams.

Note that Carleton is one of the few universities to offer a similar system by way of “streams”. Therir differentiator is 4 courses._

Option 3: The hybrid approach

Option three is to add a single new major to our degree (likely mobile computing) and then to also bolster the area of application by adding focussed specializations to our program description and advertising them heavily. A student could then get a B.Comp in Software Engineering with a specialization in theoretical computing, or a B.Comp in Mobile computing with a specialization in HCI, or a B.Comp in Computer Science with a specialization in Entrepreneurship or ???

The hybrid option gives us the benefits and drawbacks of both other options including the ease of explanation for incoming students, parents, and alumni who want to give us money (we like alumni who want to give us money and want to keep them happy).

Other Considerations

  1. Could we offer the AoA for some areas as a post-graduate diploma? The AofA itself could be offered as a 1-year graduate diploma, for students who already have a degree in CS or similar (from another institution)? This might be especially appealing for topics like HCI or Entrepreneurship.
  2. What about developing a week long or two week long intensive course that would be similar in nature to the GeoEpi course offered in OVC. That is, Vets, Lawyers, Doctors, and grad students take the course (and it's a good source of income for the OVC, at least I think it is). This could be in several areas - but data science seems to make some good sense to me.
  3. Regardless of the the choice we make, the coop stream will have to be modified to include at least one summer semester of teaching to offset a winter coop term. This will have to be applied to all programs equally, to maximize the number of students capable of doing coop.
  4. Is there any reason that we cannot offer summer programs as 6 week courses?