Advanced Software Engineering

CSCI 370 - 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 session. There will typically be 3 to 5 students per field session group.

Summer Session

Summer field session runs for the first 5 weeks of the summer term. Students are expected to spend approximately 35 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.

Fall Session

Fall field session runs the length of the fall semester. Students are expected to spend approximately 10 hours/week to meet all the requirements for this course, which includes about 8 hours working on the project, with the additional time devoted to other course requirements.

Course Objectives

Students in Advanced Software Engineering will:
  • Improve written communication skills
  • Practice presentation skills
  • Examine social, legal and ethical issues for computer scientists
  • Gain experience using an agile/scrum-like process

Ethics

Ethics is an important component of field session. After this course, students should:
  • Be able to recognize various ethical problems commonly faced by software engineers and other computer professionals
  • Apply a rational approach to reason about those problems
  • 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.

Field Session Guidelines

To ensure equitable treatment for all field session participants, the CS department has established the following policy:

  • Students are expected to put in approximately 160-180 hours total in field session (including client work plus other deliverables).
  • Students may not miss significant parts of field session.
  • The following activities may NOT be used as alternatives for field session: internships, full-time employment, project work from other courses, independent study or a field session from another department. This requirement can be waived ONLY in case of extenuating circumstances, and must be appoved by the field session coordinator.
  • Tuition will not be waived for field session under any circumstances.
  • Students may propose projects or clients for field session.
  • Students should not be paid for work performed as part of field session.
  • Any funds received as donations for field session projects will be funneled back into the program, to benefit current and/or future field session participants.

Past Projects

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