SIGCSE 2020 Pre-Symposium Event by the SIGCSE Committee on Computing Education in Liberal Arts Colleges
Contributed by Jim Teresco, jteresco@siena.edu
Computer Science has a long history at Siena College. The Computer Science Department was created and started offering a B.S. in Computer Science in 1979.
A second major program in Software Development was approved and first became available to students in 2018-19. Its original name was “Software Engineering”, and that what it really is, but the word “Engineering” is forbidden by New York State Department of Education rules for schools like Siena which do not have an accredited program in an engineering discipline.
It is our experience in designing and implementing this Softwate Development major, and our plans going forward that we wish to present and discuss.
All Siena students are required to complete a Core Curriculum consisting of 42 credits/14 courses. These include a 2-course First-Year Seminar, 8 courses in the Disciplinary Core, and 4 courses in the Franciscan Concern Core. Further, a total of 60 credits must be in courses designated as “liberal arts and science”. As with many similar schools, these College requirements limit the number of credits/courses that can be required by majors.
This is a 5-year program, where the B.S. in Computer Science from Siena is earned by spending 3 years at Siena, then a B.S. in Engineering is earned by spending 2 additional years at Rensselaer Polytechnic Institute, Clarkson University, or SUNY Binghamton.
At least 18 CSIS credits, including CSIS 210: Data Structures.
Plus any of the following to complete 18 credits:
Plus any 2 of the following for 6 credits:
CSIS 110 is a breadth-first introduction, offered with several themes, and is often taken by students of any major to satisfy the college-wide Quantitative Analysis requirement.
School of Business majors take CSIS courses as part of their requirements.
Computer Science students are hired to serve as lab assistants and/or to hold evening hours in the public lab as peer tutors.
Computer Science students are active participants in our outreach activities including our annual Project IMPACT (a full day of CS activities for local high school students) and our annual High School Programming Contest.
We have an active Computer Science and Women in Computing Clubs who organize both internal and external events. Recently, these have included trivia nights at local homeless shelters and hosting a Hackathon.
Important motivations for the creation of the Software Development major included flexibility for students by adding a second major option and by requiring fewer specific courses for the Computer Science major, and recruiting from among a potential new pool of students.
The Software Development major is very early in its existence, but so far it has generated minimal new interest. However, many current students have switched back and forth between the two majors. They naturally and conveniently share most early requirements, allowing students to choose late in their careers which major to complete.
Several challenges and opportunities have arisen since the introduction of the Software Development major:
As mentioned above, the name change from “Software Engineering” to “Software Development” has limited its effectiveness as an admissions recruiting tool.
The Computer Science major lacks a specific capstone experience, which previously existed in the form of a two-course Software Engineering course.
Students and academic advisors need to understand both majors. For example, a student who wishes to avoid a specific course required by one of the majors (Assembly/Architecture and Theory of Computation come to mind) and his/her advisor need to make sure the change is consistent with the student’s goals after graduation, and need to understand the ramifications for making the change on the student’s ability to graduate on time.
Upcoming changes to courses in the Business programs will necessitate some changes to Software Development requirements.
In response to this, we are considering returning to a single major, but retaining and expanding the flexibility introduced by the introduction of Software Development. The new major is being designed to include a core of required courses, but with a number of tracks or concentrations, one of which would need to be completed to satisfy the major requirements.
We would like to share our thoughts on the new major requirements and to get advice and feedback from the attendees.