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.