COMPSCI 320 – Introduction to Software Engineering
Fall 2026 Syllabus - Revised 09/07/2026
UMass College of Information and Computer Sciences
Credits: 4
Instructor: James Perretta
Office Hours: Thursdays by appointment
Section 01
Lecture: Tue, Thurs 10:00 AM - 11:15 AM CSW 142
Discussion: Friday 2:30 PM - 3:20 PM CSW 142
Final Demos: In-class on Tuesday, Dec. 15
Course Website
The course schedule, lecture slides, homework assignments, activities, and other materials are available on the course website.
Table of Contents
Table of Contents
- COMPSCI 320 – Introduction to Software Engineering
- Course Website
- Table of Contents
- Course Description
- Student Learning Objectives
- Prerequisites
- Behavioral Statement
- Course Materials
- Attendance Policy
- Electronic Devices in Class Policy
- Late/Make-Up Work Policy
- Course-related Communication
- Grading Components
- Accommodations Statement: How learning is accessible to you
- Academic Integrity Policy
- Inclusive Learning: Why you are welcome
- The Undergraduate Student Success Center Academic Alert Initiative
- Classroom conduct: Why you matter
- Title IX Statement
- Schedule
Course Description
This course differs from many other undergraduate courses in that much of what you will do is not predefined. You and your team will need to explore the possible design and implementation options as you develop a working prototype as proposed by your customer. In this sense, the course is more of a hybrid between a graduate and undergraduate level course.
The main activity of this course is to develop a software system for a customer according to their needs. All other materials and activities are designed to support your development and to introduce you to concepts and techniques used in the field of software engineering.
The main concept is that engineering involves analysis, planning and design as well as implementation. This is not a course about coding although you will be doing a lot of coding, probably with software you have not worked with before. Note that although you will be developing a working prototype (minimum viable product), this is not a hackathon. Your coding and design will be done in an organised manner as part of a team effort under the management of a student in the COMPSCI 429 seminar.
By participating in the project development and completing the assigned activities you will have the opportunity to experience the software engineering process as it is practised in industry. The success of this process depends on the quality of your collaboration with a team of other developers.
COMPSCI 320 is an integrative experience course. It focuses on developing communication, reflection, and learning-aware learning skills. You will:
- engage in an in-class discussion at the start of the semester about what you will learn in COMPSCI 320 and how the skills you have acquired in your general education requirements will help you.
- engage in a reflective in-class discussion at the end of the semester about what you actually learned, and which learning activities were the most effective.
- work extensively in groups.
- present your work orally in class.
- participate in active-learning activities with significant reflection components
- reflect on submitted assignments and improve and resubmit the work, and
- be guided by COMPSCI 429 students and their experience having previously taken COMPSCI 320.
Student Learning Objectives
At the conclusion of the course you should be able to:
- work effectively in a software development team using agile methodology.
- analyse a proposed system and produce a set of requirements.
- produce an efficient, modular design for a proposed software system.
- understand the process of building software to specification on a schedule.
- apply the discipline of software engineering to the process of developing high-quality software with a limited amount of time and resources.
Prerequisites
COMPSCI 220 or equivalent course.
Behavioral Statement
This course emphasises the importance of teamwork in software development. Teamwork involves professional behavior at all times and to be a responsive communicator with your team and manager. These skills are highly valued by employers as much as your technical skills. We will cover good workplace behavior in this course, and anyone violating this behavioral standard may face the possibility of failing the course or other consequences regardless of any other work done in the course.
Course Materials
Lecture material is delivered synchronously in class, and lecture slides will be posted on the course website. Lectures will not be recorded. There is no textbook for this course. Some required readings may be assigned. This material covers the basic concepts in software engineering, most of which, but not all will relate directly to your project development. The goal of this material is to provide a broad overview of topics in the discipline, while your development will be more specifically focused.
Attendance Policy
Attendance at all course meetings is required. Unexcused absences from will result in losing credit from your attendance, in-class activity, or sprint evaluation scores depending on the type of class session missed. Repeated unexcused absences, particularly from team meetings, may result in a lower overall course grade or failing the course, depending on the severity of the situation.
Final Demos
Final demos for your team project take place in class on the final day of class. As such, in-person attendance and participation are mandatory.
Excused Absences
Team Meetings
Absences from team meetings (in-class or otherwise) must be communicated to your team manager. The team manager will recommend to the instructor whether the absence should be excused, and the instructor will make final determination.
Class Sessions
Excused absences for non-team-meeting class sessions must be requested by filling out the Excused Absence Request Form in advance. Medical conditions, religious or funerary events, university-related events (athletic event, field trip, or performance), extenuating non-academic reasons (military obligation, family illness, jury duty, automobile collision) will be accommodated with written documentation.
Electronic Devices in Class Policy
- During presentations, no electronic devices may be used (unless you’re currently presenting)
- During other class sessions, we request that electronic devices be used only to engage with the material, e.g., taking notes, following along with the material, completing in-class activities. If you find yourself using a device in class for other purposes, we ask that you please put it away so as to not distract those around you.
- During certain in-class activities, electronic devices are not allowed. This will be stated in the activity description.
Late/Make-Up Work Policy
Team Formation Survey, Peer Evaluations, & Student Evaluations of Managers
Since the information submitted in these surveys and evaluations is time-sensitive, no late submissions will be accepted, and no extensions will be granted. Exceptions to this policly may be considered at the instructor's discretion on a case-by-case basis.
Sprint Presentation Slides
Slides for your sprint presentations are typically due at 8pm several days before the presentation. Please refer to the course schedule on the course website for specific due dates.
Slides submitted after these due dates will have the 10 points (out of 47) allocated for "overall slide quality."
Homework Assignments & Integrative Experience Essays
Homework assignments must be submitted by the listed due date. Late submissions will be accepted until the last day of class for half credit.
Resubmitting Homework Assignments
We want students to have the opportunity to learn by revising their work. You may revise and resubmit assignments up to one time; your assignment score will increase by half the difference between the previous and new score. This increase is applied before any late submission penalties applied to the original submission. Your score will not go down from a resubmission. We will accept such revised submissions until 8pm on the last day of classes.
Final Project Report
The due date for the final project report is listed in the course schedule. Late submissions will receive a 10% penalty per hour (rounded up) late.
Requesting Extensions
Extensions must be requested by filling out the Extension Request Form in advance. Medical conditions, religious or funerary events, university-related events (athletic event, field trip, or performance), extenuating non-academic reasons (military obligation, family illness, jury duty, automobile collision) will be accommodated with written documentation. Holiday or other non-emergency travel will not be considered for granting extensions. Computer or internet access issues will not be considered for granting extensions. As software engineers, it is our responsibility to back up our work and plan enough time to complete our tasks even if we encounter technical issues. If you experience computer hardware or software failure that prevents you from completing your work on time, please contact your manager and the instructor as soon as the issue arises. With advance notice, we can help arrange alternative means for you to complete your work, i.e., help you find another device to borrow or arrange an alternative means of submitting.
Course-related Communication
Important announcements will be posted on Canvas. Please use the course forum on edstem for all course-related communication. You may make a public or private (only for instructor, managers, & UCAs) post for any course-related questions. Make a private post for administrative and grading matters. Please do not use email to communicate with the instructor or staff.
Grading Components
Integrative Experience Essays (5%) Individual grade
- Two essays: one assigned at the beginning and one towards the end of the semester.
Team Surveys and Peer Evaluations (12%)
- Completing the initial survey and three rounds of peer and manager evaluations.
Attendance (8%) Individual grade
- Attendance & participation at non-team-meeting class sessions.
Weekly Evaluations (20%). Individual grade
- Your manager’s weekly evaluation of your contribution to the project. Contribution includes work done on tasks and level of communication with your team.
Presentations (5%) Individual grade
- Effective presentation delivery. Three presentations per student are required.
Weekly Sprint Presentation Content (20%) Team grade
- Content (e.g., slides) of weekly sprint presentations. It is expected that the presenters for the week take a lead role on creating the presentation content and that the other team members promptly provide information and diagrams related to their own sprint tasks. Team members not presenting should also take turns providing feedback on practice runs of the presentations.
Homework Assignments & In-Class Activities (10%) Individual/pairs grade.
- Homework assignments to be completed individually or in pairs as specified per assignment.
Final Demo & Report (20%) Team grade.
- The final presentation consists of a live demo and a more detailed presentation of the project.
Course Number (as percentage) map to Letter Grade:
- 100.00% - 93.00% A
- 92.99% - 90.00% A-
- 89.99% - 87.00% B+
- 86.99% - 83.00% B
- 82.99% - 80.00% B-
- 79.99% - 77.00% C+
- 76.99% - 73.00% C
- 72.99% - 70.00% C-
- 69.99% - 67.00% D+
- 66.99% - 60.00% D
- 59.99% - 0.00% F
Note that a lack of engagement with your development team or failure to meet the professionalism standards of this course may result in a failing grade for this course regardless of your individual grades. Please be sure you communicate with your manager and the instructor if you encounter any issues which affect your participation in this course as soon as possible.
Please do not hesitate to contact the instructor if you have any concerns about the course, including any external events that may hinder your participation. All students are expected to conduct themselves in a professional and mature manner. Please let the instructor know if you feel that you are experiencing any behaviour that is not acceptable.
Accommodations Statement: How learning is accessible to you
The University of Massachusetts Amherst is committed to providing an equal educational opportunity for all students. If you have a documented physical, psychological, or learning disability on file with Disability Services (DS), you may be eligible for reasonable academic accommodations to help you succeed in this course. If you have a documented disability that requires an accommodation, please notify me within the first two weeks of the semester so that we may make appropriate arrangements. For further information, please visit Disability Services (https://www.umass.edu/disability/)
Academic Integrity Policy
UMass Amherst has an Academic Integrity Policy that includes cheating and plagiarism as forms of dishonesty. What is plagiarism? Generally speaking, it is any attempt to take credit for work done by another person. Yet, all scholars rely on the work of others to shape their own knowledge and interpretations. If you have any questions about what may constitute plagiarism, please consult the Academic Dishonesty Guide for Students.
AI Policy for the Course
This policy aims to guide students towards AI usage that allows them to explore the capabilities and trade-offs of using these tools without inadvertently preventing them from learning critical software engineering skills.
You MAY NOT:
- Use generative AI tools to aid in designing, documenting, or testing any code, features, or other contributions to your team’s project. This includes diagrams.
- Use generative AI tools in any way to aid in the completion of homework assignments or presentation material.
You MAY:
- Use generative AI tools to write non-test code, set up infrastructure, or aid in other dev-ops tasks. See the "You MUST" section below for requirements when doing so.
- Use generative AI tools in a "search engine"-like way. When doing so, you must request and examine the sources used by the tool to produce an answer.
You MUST:
- Be able to explain without assistance any code or deliverables that you contribute or create a pull request for.
- Document how you used generative AI tools to produce or modify code or assist in other permitted tasks.
- Documenting your AI usage helps your teammates retrace your steps, understand what you did, and potentially learn from your process.
- In your team's repository, create a directory called
ai_logsspecifically for this purpose.- As part of your pull requests, create a markdown file with the following structure:
# Task Title ## Main takeaways (You must write this section manually and without AI assistance. The purpose is for you to reflect on what you did and practice articulating that for others.) * List of important takeaways * (E.g., "I set up a build system and linters for our project frontend") Other summary information you feel is important ## Resource Usage Tool and Model(s) Used: (E.g., GitHub Copilot + ACME-super-duper-AI-model-2000) Tokens Used & Dollar Equivalent (if using a free tier, specify how much of your allocation was used): (E.g., 11.56/200 AIC ~= $0.11) ## Chat Log (Paste the full chat history from the session).
- As part of your pull requests, create a markdown file with the following structure:
- For smaller snippets of code (< 10 lines) that didn't require a full prompting session, include a comment stating the prompt you used, which tool/model used, and the number of tokens & dollar cost.
Inclusive Learning: Why you are welcome
Your success in this class is important to me. We all learn differently and bring different strengths and needs to the class. If there are aspects of the course that prevent you from learning or make you feel excluded, please let me know as soon as possible. Together we’ll develop strategies to meet both your needs and the requirements of the course. There are also a range of resources on campus, including:
- Writing Center: http://www.umass.edu/writingcenter
- Learning Resource Center: http://www.umass.edu/lrc
- Center for Counseling and Psychological Health (CCPH): http://www.umass.edu/counseling
- English as a Second Language (ESL) Program: http://www.umass.edu/esl
The Undergraduate Student Success Center Academic Alert Initiative
Your success in this course is important. UMass Amherst uses Navigate360, a student success management system, to help identify students who may need additional support to achieve academic success. Throughout the semester you may receive emails from Navigate360 regarding your course grades and academic performance. Please check your UMass email account regularly and, if you receive an alert, read the email carefully and connect with one or more of the campus resources provided. Alerts are meant to help you achieve success in the course; they are not meant to be punitive. UMass has many ways to support students and Navigate360 is a tool that helps us connect you with the services, resources, and people you need.
Classroom conduct: Why you matter
The following applies equally to in-person as well as any online meetings: In this course, each voice in the classroom is valued. We honor UMass’s commitment to embrace diverse people, ideas, and perspectives to create a vibrant learning and working environment.
You are welcome regardless of age, background, citizenship, disability, sex, education, ethnicity, family status, gender, gender identity, geographical origin, language, military experience, political views, race, religion, sexual orientation, socioeconomic status, and work experience.
This course requires students to work in groups and to present material in class. As such, it is expected that all students will observe a “workplace” level of social decorum at all times when interacting with managers and peers. You are expected to treat your work in this class in a professional manner and to treat all individuals with dignity and respect. Please consult the UMass Guidelines for Classroom Civility and Respect: http://www.umass.edu/dean_students/codeofconduct/classroomcivility.
Title IX Statement
"In accordance with Title IX of the Education Amendments of 1972 that prohibits gender-based discrimination in educational settings that receive federal funds, the University of Massachusetts Amherst is committed to providing a safe learning environment for all students, free from all forms of discrimination, including sexual assault, sexual harassment, domestic violence, dating violence, stalking, and retaliation. This includes interactions in person or online through digital platforms and social media. Title IX also protects against discrimination on the basis of pregnancy, childbirth, false pregnancy, miscarriage, abortion, or related conditions, including recovery. There are resources here on campus to support you. A summary of the available Title IX resources (confidential and non-confidential) can be found at the following link: https://www.umass.edu/titleix/resources. You do not need to make a formal report to access them. If you need immediate support, you are not alone. Free and confidential support is available 24 hours a day / 7 days a week / 365 days a year at the SASA Hotline 413-545-0800.”
Schedule
The course schedule is available on the course website.