As the third month of my first sabbatical quickly winds to a close, I have two main thoughts – neither of which are particularly profound. First – how have three months flown by already? Second – sabbaticals are amazing.
Of course, with three months under my belt, I’ve also begun going through a mental checklist of the various things I had hoped to achieve during my sabbatical. This included working on some papers, reading more (especially for fun), taking time to actually think about my research programs (where they are and where they are going), and developing a course manual for CIS3750.
For those unaware, CIS3750 is a third year computer science course called Systems Analysis & Design in Applications that tasks students with developing software design skills. This includes developing proficiencies with discipline-specific tools and methods (such as requirements gathering, paper prototyping, and UML diagrams), as well as transferable skills such as teamwork, communication, and critical thinking.
Since 2012, students in my class have achieved both the discipline-specific and transferable learning outcomes through the use of community-engaged learning (CEL). That is, they have been partnered with a not-for-profit or charitable organization that has provided them a unique local social challenge to be solved using software. Last year, for example, the students worked with Community Living Cambridge to develop web and mobile app prototypes of a health support system for young adults with FASD. Other cohorts have spent their time developing tools to support the fight against food insecurity or to improve education.
The introduction of CEL to a computer science classroom is, as far as I am aware, not entirely common. As I’ve mentioned previously, it comes with a lot of unique challenges and requires a significant time investment. However, the outcomes are definitely worth it.
One of the challenges I’ve had – especially as the classroom has grown from its original single fall semester offering of 30 students, to the current fall and winter semester offerings of about 150 and 80 students respectively – is the lack of a resource that would help guide the students through this particular course. Yes, I have a textbook that I use, but it doesn’t really cover the unique aspects of working with a community partner, especially one from the not-for-profit space. And while the students have access to my slides, the course is presented in a flipped-classroom format – which means the slides are relatively sparse and focused on activities to help foster the various skills the students have been tasked with mastering.
As such, I’ve been wanting to develop a resource for the course for some time. In fact, I’ve been mulling various ideas for content and topics probably for the last four years at least.
And this is one of the reasons why I’m currently loving my sabbatical. I have finally found time over the last three months to begin drafting my course manual! While I’m still sorting out the particular content and order, the first chapters so far include:
- Introduction to CIS3750 – which describes the software design process, the learning outcomes of the course, and a general course timeline.
- Community-Engaged Learning – which includes a description and examples of CEL, how CEL and computer science can overlap, expectations for the students and the teaching team, how to work with a community partner, and how working on social challenges can support the learning outcomes of the course.
- Working In Teams – which provides students with some tips and tricks for good communication within and between teams, setting expectations, and developing a rubric to ensure everyone stays on track.
And of course, there will be chapters on Planning, Analysis, and Design – three stages of the software design cycle that are the focus of the course – and an as yet ill-formed but packed “Other stuff” chapter. So far it includes topics related to accessibility, security, and privacy, as well as basic user interface design. These items may be moved elsewhere – once I figure out where they might best fit – or they might just stay where they are.
To keep myself organized as I continue to develop this document, I have created a set of visuals that are now happily posted on my whiteboard. These come in three groups: a set of visuals that describe:
- the major and minor discipline-specific learning outcomes of the course,
- the stages of the software design cycle that are the focus of the course, and
- the timeline for achieving the major learning outcomes – colour coded such that each block of time represents a particular stage of the software development cycle.
And of course, all of this is complete with scribbles and Post-It notes that outline potential textbook, classroom, and lab activities that will help achieve the learning outcomes in a way that supports the development of the course deliverables.
Taking the time to create these visuals has been extremely helpful for me to align the learning outcomes of the course with the various stages of the software design cycle, and to map out which learning outcomes align with the various course deliverables. It has also allowed me to move beyond documenting and mapping just the discipline-specific learning outcomes to also documenting the transferable skills the students should develop with each course activity and deliverable.
While there remains a lot of writing still to do to complete this book, I’m really excited about how it is coming together. I can only hope that come next fall when I’m scheduled to teach CIS3750 again, that the students will find it as useful and helpful as I’d like it to be.
As an added bonus, I’ve also enjoyed creating the various images and such that I’m using to populate the book. Almost all of them are of iconic Guelph landmarks, or statues – including the portico, Johnston Hall, the Basilica of Our Lady, the Begging Bear, Old Jeremiah, and the Gryphon.