0% found this document useful (0 votes)
27 views3 pages

Software Engineering Project Guidelines

This document outlines the course project requirements for a software engineering class. Students will work in teams to design and implement a complex software system over multiple sprints. Project requirements include submitting a product backlog, giving a midterm presentation, presenting sprint retrospectives and reports, demonstrating the working software, and providing a user manual. Students will be graded both as a team and individually based on their contribution to the project and peer evaluations.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views3 pages

Software Engineering Project Guidelines

This document outlines the course project requirements for a software engineering class. Students will work in teams to design and implement a complex software system over multiple sprints. Project requirements include submitting a product backlog, giving a midterm presentation, presenting sprint retrospectives and reports, demonstrating the working software, and providing a user manual. Students will be graded both as a team and individually based on their contribution to the project and peer evaluations.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

CS 410/510 - Software Engineering Course Project - Fall 2021

Objective: design and implement a complex software system utilizing the skills acquired
in this course.

Product backlog (10 pts, due 10/7/21)


Submit a detailed prioritized product backlog document (PDF, no page limit) as
described below:

 Refine your user stories taking into account the instructor's feedback.
Break down previously identified large user stories (epics). Indicate which
epics resulted in what new user stories (2 pts)
 Estimate the size of your user stories. Use Fibonacci numbers within the
range of 1 to 8 to represent a relative size of each user story. Label each
user story as high, medium, or low priority. Note the cumulative size of
all user stories in your product backlog (2 pts)
 Provide an updated numbered list of all user stories; indicate pre- and
post-conditions (1 pt)
 Taking into account the pre- and post-conditions identify a subset of user
stories to be implemented during the first sprint (there will be a total of
four sprints). Be sure that the cumulative size of the selected user stories is
about 1/4 of the size of the full backlog. Describe the functionality that
your partially implemented system will have at the end of this sprint (3
pts)
 Design key features of the user interface; provide sketches of your designs
(2 pts)

Midterm presentation (10 pts, due 10/14/21)


Each team will make an in-class presentation reflecting on the following:

 The project, its goals, its problem domain, project users and their needs (2
pts) -
 Main functional and non-functional requirements of the project (2 pts)
 Highlights of the product backlog and sprint planning strategies (2 pts)
 Any lessons learned about interacting with the customer, teamwork, and
other non-technical aspects of the project (2 pts)

Submit a PPT used for the in-class presentation. The presentation must be free of
typos, readable and understandable by the audience, and neatly formatted (2 pts)
Sprint retrospectives/reviews and reports (4 @ 5 pts each, due 10/26/21, 11/9/21,
11/23/21, 12/7/21)
During every in-class sprint retrospective/review, each team needs to present
and address the following:

 Briefly introduce your team and project


 What did you accomplish during the sprint? How many story points did
you a) plan for and b) completed? Include a demo focusing on the work
completed in this sprint.
 What aspects of the sprint (development/technologies/teamwork/etc)
worked well for you?
 What problems did you encounter and how did you resolve them?
 What are the lessons learned so far?
 What changes will you be making based on the lessons learned?
 What challenges do you anticipate in the next sprint?

At the end of each sprint, submit a sprint report (PDF, no page limit) containing
the following:

 What functionality does the system have at the end of this sprint? List user
stories that you successfully implemented during this sprint (1 pt)
 Did you end up making any changes to any of these user stories? Did you
break down further any the user stories? Did you identify any new user
stories during this sprint and, if so, did you add them to the product
backlog or decide to implement them right away? Explain (1 pt)
 What are the "lessons learned" at the end of this sprint? What would you
do differently next time? Explain (1 pt)
 Provide an updated numbered list of all user stories yet to be
implemented; indicate pre- and post-conditions (1 pt)
 (1 pt)
o If this is not the last sprint:
Given the current functionality of the system and taking into account
the pre- and post-conditions, identify a subset of user stories to be
implemented during the next sprint. Be sure that the cumulative size of
the selected user stories is about 1/4 of the size of the full backlog.
Describe the functionality that your (partially implemented) system will
have at the end of this sprint.
o If this is the last sprint:
Are there any user stories left unimplemented in the backlog? Are there
any new user stories that you would consider adding to the backlog.
List these user stories and explain them.

Project demonstration (40 pts, due 12/2/21, 12/7/21)


All software developed within this project must be successfully demonstrated in
class. Each demonstration must be accompanied by a brief presentation
explaining the nature/specifics of the project. Project demonstration grade will
reflect the quality and degree of project completion.

User manual (10 pts, due 12/7/21)


Submit the user manual document (PDF, 2 pages minimum, not including the
screenshots) as described below:

 Detail all necessary steps needed to deploy/install your system. Provide


all necessary technical specifications (2 pts)
 Explain the main features of the system to a potential user who may not be
familiar with it (3 pts)
 Provide a walkthrough for the main scenario of using your system; include
screenshots as necessary (3 pts)
 Provide walkthroughs for at least two additional scenarios with
additional/alternative functionality; include screenshots as necessary (2
pts)

Grading and teamwork survey


All deliverables will be graded as a result of work of the entire team. However,
individual students may receive different grades based on the degree and quality
of their involvement in the project. To facilitate the objectivity in grading, each
student will be required to complete one or more confidential survey about the
involvement of other members of his or her team in the project. These surveys
will be strictly confidential. Students who fail to complete this survey will receive
a grade of 0 for the entire course project.

Common questions

Powered by AI

Refining user stories involves breaking down large epics into smaller, manageable stories, which allows more accurate estimation, better prioritization, and ensures that all aspects of user requirements are covered . This process helps to clarify the scope and ensures that the development team understands what needs to be implemented, leading to more efficient sprint planning and execution .

The size of user stories should be estimated using Fibonacci numbers ranging from 1 to 8, representing the relative complexity and effort required for each story . This estimation is crucial in sprint planning as it helps in workload distribution, ensuring that the cumulative size of stories in a sprint is manageable and aligns with the team's capacity to deliver .

Sprint retrospectives can lead to improvements by allowing teams to reflect on what worked well and what didn't. This includes discussing accomplishments, evaluating planned versus completed work, and identifying both internal and external challenges encountered . Such insights drive continuous improvement, ensuring that the team adapts processes based on lessons learned, improving teamwork, and technical execution in subsequent sprints .

Selection criteria should include the cumulative size relative to the full backlog, relevance to project milestones, and dependencies indicated by pre- and post-conditions . Ensuring an effective transition involves choosing user stories that build logically upon completed work and align with the team's capacity and skills, facilitating continuity and progress toward project objectives .

Deployment and installation steps include system setup, dependencies installation, configurations, and environment verification . Documenting these steps in a user manual ensures users and administrators can successfully implement the software as intended, reduces support requests, and enhances user satisfaction by providing clear instructions .

New user stories identified during a sprint should be evaluated based on priority, alignment with sprint goals, resource availability, and potential impact on the sprint's outcome . If they are critical and align well with current efforts, immediate implementation may be warranted. Otherwise, they should be documented and added to the product backlog for consideration in future planning .

The project team should ensure the software is fully operational, prepare a concise presentation explaining the project's nature and specifics, and conduct a seamless demonstration showcasing its main features . They must also anticipate and manage technical issues that may arise during the demonstration, employing effective communication to clearly convey the system's value and functionality .

Individual grading based on each team member's contributions can motivate equal participation, encourage accountability, and provide a mechanism for recognizing individual efforts in team settings. This approach helps identify personal strengths and areas for development, fostering a more balanced and productive team dynamic .

Project demonstrations serve to verify and showcase the functionality and completion level of the developed software. They provide an opportunity to present the system's main features and user interactions, facilitating feedback and validating alignment with the project objectives . Walkthroughs in presentations enhance understanding by offering guided, visual explorations of key scenarios and functionalities .

A midterm presentation should cover the project goals, problem domain, and user needs, highlight the main functional and non-functional requirements, outline product backlog and sprint planning strategies, and share lessons learned from customer interaction and teamwork .

You might also like