Evaluation Criteria

Advanced Software Engineering, aka Field Session, is a rigorous course. Be sure you understand the general expectations for this course.

The students will be graded on the following criteria:

Writing
5% Working documents Documents you will create throughout the session.
15% Final Report The final report will summarize your project.
5% Individual Reflection Individual activity documenting your Field Session journey.
Presentations
5% Design proposal Your proposed project design.
5% Ethics Paraphrase Individual activity related to ethical decision making.
5% Software quality & ethics Your software quality plan and a discussion of ethical considerations for your project.
10% Final Presentation Describe your project to your classmates and client.
Performance Evaluations
30% Client Evaluation The client must be satisfied!
10% Teammate Evaluation All members must contribute equitably - this peer evaluation will help us assess.
10% Advisor Evaluation Subjective analysis.

Team Effort and Individual Grades

Teamwork is essential for a successful field session project. Everyone should contribute equally, and everyone should facilitate effective collaboration. It is the responsibility of the team members, not the instructor, to find a group structure to achieve this goal. If team members are not contributing equally, the team members must inform their faculty advisor as soon as possible so that appropriate action may be taken.

All students will be graded individually and will not just receive a group grade. Every member must: a) be responsible for some technical aspects of the project, b) write some portions of the required documents, and c) participate in all presentations. Students who do not put in the same level of effort as their teammates will receive grade deductions.

Work Schedules

Summer session teams may find it most convenient to work from 8 a.m. to 5 p.m. Monday through Friday, especially if much of the work is done on the client site. Expect to spend 25-30 hours for a given week on project-specific work and an additional 5 - 10 hours for course deliverables and meetings. Work out your schedules to spend at least 20 hours working as a team, preferably in the same physical space.

Fall session teams have the tricky task of setting a weekly schedule that works for all team members despite other class obligations. Teams should allocate this time as if for a regular job shift and commit to participation for the agreed upon time. Fall session teams are not expected to work at a client site.

Required Meetings

Although much of the work for this course can be done at a time and location of the team's choosing, there are a number of required meetings. Specifically:

  • Students should spend a significant proportion of time each week meeting/working together face-to-face. Working in isolation is not nearly as effective, and will frequently result in having to work extra hours to achieve the same result.
  • The team will meet once each sprint with the faculty advisor.
  • The team will meet as needed with the client, at least once per week. Some projects will require more frequent communication. In some cases clients will not be available to meet each week, but teams should still communicate with the clients (e.g., via email or Zoom) on a regular basis.
  • The team must participate in all presentation sessions. See the schedule for details.
  • Team members must attend all guest lectures and course meetings (also on the schedule).
  • All students must attend their assigned block of final presentations.

Client Evaluation

A fundamental requirement of field session is for the client to be satisfied. This is your responsibility. You must allocate time to demonstrate your product and to allow your client to test it. Testing should be done incrementally, if possible. Do not wait until the day before final presentations to show the product to your client!

Your final product must satisfy the definition of done as defined and agreed upon by the client. It is important to delimit the scope of the product so you have a clear definition of done.

Also note that a significant part of your grade depends on the communication aspect of this project. You need to do more than write great software.

The client will provide an evaluation of the students' work to the advisors. Clients will be asked to fill out a survey form, and may also provide input verbally. Be sure to read this survey now, so you know what feedback we will be collecting (e.g., clients are asked about items like communication and documentation, not just whether the final product is acceptable). Bottom Line: The client must be happy!

Teammate Evaluation

As described above, all team members need to contribute equally, participating fully in meetings, project work, presentations, and written communications. Team members should also be contributing to their team's successful collaboration. This requires good communication above all, and may motivate you to develop your emotional intelligence skills.

During the weekly advisor meetings, team members will participate in a sprint retrospective - an agile practice for continuous improvement. The purpose of a sprint retrospective is not to point fingers, but to address issues with the team and the team's process for accomplishing work.

As part of the course grade, each person will provide two confidential evaluations of each of their teammates, one at mid-session and one at the end of the session.

Advisor

The advisor will evaluate the level of effort and professionalism for individual students. This includes participation in the daily scrum, meaningful contributions to the scrum process (sprint planning, sprint retrospective, etc.), attendance at all group activities and client meetings, etc. Being late to meetings, coming unprepared or not responding to emails in a timely fashion can negatively impact this score.

Another goal for field session is to ensure that all projects require similar levels of effort and provide sufficient technical challenges. Although it is not possible for the effort to be exactly the same for all projects, the faculty advisors will work with the teams to ensure that no projects are too simple or too extensive. If a project is judged to be too simple, the advisor will work with the team and the client (if needed) to determine additional functionality. If the project is too large, the advisor and the team will determine what subset constitutes a reasonable effort.

“People, not methodologies or tools, make projects successful.” - Lisa Crispin