CS-130: Creative Software Architectures for Collaborative Projects
For Fall semester 2016 I am teaching a course on collaborative software development. This course is focussed on developing software in teams, so we will be working with a client and trying to deliver a software product at the end of the semester. This is a tricky class because it’s project based and students are learning new skills with tools like github and web development at the same time they are trying to deliver the results. Understanding software architectures is a new skill for students at this level, but one that is critical to software development in the job market.
Santa Barbara Foodbank
Our client this year is the Santa Barbara Foodbank. They have asked us to explore a couple different projects including a restaurant food waste reducing program in which extra food at the end of the night is delivered to organizations like the Salvation Army or Rescue Mission. In addition to taking a field trip so the Foodbank’s distribution center, we are also going out into the community to do some contextual inquiry. There are a lot of complicated constraints on such a problem so we will take it one step at a time and try and figure out what the best solution is.
We are tackling this course with a start up mentality which is why we are reading “The Lean Startup” . This book shows the students how real world problems are taken one small step at a time in which something new is learned at each step and a decision about whether or not to pivot happens regularly. Having participated in several start-ups I know how complicated it can be to succeed in this space. Of course any course in software development would be remiss without also reading “The Mythical Man Month“, a classic.
The course webpage can be found here: http://djp3.westmont.edu/classes/2016_09_CS130/structure.html