CS561 Fall 2015

TIME AND LOCATION

Tue and Thu, 2:00-3:20pm
KEC 1005

INSTRUCTOR

Prof. Danny Dig (digd@eecs.oregonstate.edu)
Office: 3043 Kelly Engineering Center Center
Phone: (541) 737-8216
Hours: By appointment

Teaching Assistant: Kendall Bailey (baileken@oregonstate.edu)
Office: Kelly Engineering Center Center
Hours: TBA

ABOUT THE COURSE

Change is the heart of software development. As new platforms appear, some batch systems have been retrofitted with first a web interface, then a web service interface, and now interfaces to mobile devices. Unfortunately, programmers perform most software changes manually, through low-level text edits, which are almost never reused. This makes software development time-consuming, error-prone, and expensive. It is widely known that at least two-thirds of software costs are due to evolution, with some industrial surveys claiming 90%.

The purpose of this course is to expose students to seminal topics and recent trends in the field of software engineering and more specifically in software evolution. The topic of this course varies with each offering. For Fall 2015, the theme of the course will be "Software Evolution for Mobile Devices & Cloud". Mobile devices represent the environment where end-users spend most of their time. According to Gartner, by 2016 more than 300 billion apps will be downloaded annually. In this course, we will explore state-of-the-art techniques for how to evolve existing apps. We will be investigating (i) what are the common changes that app developers make, and (ii) how can we automate such changes to improve programmer productivity and software quality. Examples of changes include making an app more responsive, moving code and data between the mobile device and the cloud, etc. Our exploration will consist of in-class discussions of the literature and team projects that encourage risk taking.

The course will offer an opportunity for students to pursue research-oriented term projects in small teams (2-4 students). Students may pursue any project of their choosing that explores the intersection of software evolution, mobile development, cloud.

COURSE OBJECTIVES

Course Syllabus

SCHEDULE
Date Presenter Readings
09/24 Danny Dig
09/29
  • Denis Bogdanas
  • Kendall Bailey
10/01

Michael Hilton

10/06

All Students

Pitch Project Idea

10/08

Danny Dig

10/13

Danny Dig

10/15

Ayda and Rana

10/20

Sean and James

10/22

Everyone

10/27

Spencer and Deepthi

10/29

Nick and Kim

11/03

Charles and Rana

11/05

Everyone

11/17

Ayda and James

11/19

Everyone

11/24

Deepthi and Kim

12/01

Sean and Spencer

12/03

Nick and Charles