“It is easier to change the specification to fit the program
than vice versa.”

Welcome to Advanced Software Engineering

Advanced Software Engineering, also known as field session, is a capstone course in which students apply their coursework knowledge to a challenging applied problem in computer science. Students are expected to gather requirements, create a detailed design, then implement and document their solution. Team work and communication skills are emphasized throughout the six-week session. There will typically be 2 to 4 students per field session group. Students are expected to spend approximately 35-40 hours/week to meet all the requirements for this course. This includes about 25-30 hours working on the project, plus 5-10 hours fulfilling other course requirements.

Course objectives include:

  • Improve written communication skills,
  • Practice presentation skills,
  • Expose students to social, legal and ethical issues for computer scientists, and
  • Provide experience using an agile/scrum-like process.

Ethics is an important component. After this course, students should:

  • be able to recognize various ethical problems commonly faced by software engineers and other computer professionals,
  • appeal to one or more rational ethical theories to reason about those problems, and
  • see themselves as moral agents with a responsibility to understand and adhere to the Software Engineering Code of Ethics.

What traits do most employers look for in new graduates? Two that are cited frequently include the ability to complete tasks and the ability to learn. This course provides an opportunity for students to take full responsibility for delivering working products to real clients. Most students will learn at least one new language or technology as part of the course.

Prerequisites: students should have completed coursework through CSCI 306, Software Engineering.

Session Highlights

We will have guest speakers lined up for this session!

See schedule for details

Session Dates

Proposals due: April 1

Teams assigned: ~May 1

Session starts: Monday May 12

Final presentations: June 18-20

Teams and Projects

List of Projects

List of Teams