Skip to content

Latest commit

 

History

History
92 lines (88 loc) · 3.32 KB

File metadata and controls

92 lines (88 loc) · 3.32 KB

Previous Project - Requirements Info

The following information was developed in an effort to articulate goals for a similar project, not this Quality Tools for BlueJ project. These stories are provided to stimulate ideas only and should not be considered as either effective or valid for this project.

Glossary

  • product :: the BlueJ extension for the Quality Assessment Tools for BlueJ project

User Stories

User Story

Acceptance Criteria
As a user, I want to be able to easily download and install the Quality Assessment Tools for BlueJ product so that I may install the product for my own use.
  1. User-level instructions for downloading and installing the product are provided.
  2. To Do: Metric for "easily"
As a user, I want to easily get this product running on my computer so that I may use it.
  1. User documentation describes and explains all installation steps.
  2. The product installation conforms to the norms and standards for BlueJ extensions.
As a user, I want to have all functionality of the included tools accessible to me so that I do not have to use another product.
  1. All functionality of all of integrated tools are available to users.
As a product owner, I want several tools to work together within this extension so that users do not need to manage several extensions.
  1. The product integrates Checkstyle, PMD/CPD, and JaCoCo.
  2. Users do not need to install any integrated tools directly because all necessary installations are done during product installation.
  3. Tool integration avoids confusion due to potentially overlapping functionality.
As a user, I want menu items labeled by functionality and not underlying tool, so that I can specify my intent without needing to know specific tool names.
  1. Functionality is communicated in the user interface.
  2. All functionality labels are understood by beginner programers. (No industry jargon.)
As an educator, I want the user to know which tool they are using so they learn about the tools themselves.
  1. The user interface indicates both functionality and actual tool names.
As a user, I want the product to work with the newest version of BlueJ so I do not have to use a legacy version.
  1. Product functions with the current stable version of BlueJ.
  2. Product maintainability accounts for future updates to BlueJ.
As a developer, I want the product to facilitate upgrading to newer versions of BlueJ and integrated tools so that I do not need to manually edit the source code to accommodate each update.
As a quality engineer, I want there to be complete regression tests so that old features are not broken in updates.