The Autobots/Milestone2

From Software Engineering

Jump to: navigation, search

Contents

[edit] Use Case 0 – Create Builder Account

Primary Actor: Admin
Stakeholders: Builder, Site Admin
Precondition: Admin has Builder's information
Main Success Scenario

1. Admin logs in
2. Admin selects to add builder
3. Admin enters builder information
4. Information is entered into database
5. Builder account is created

Extensions:

1a: Admin has unsuccessful login.

  • 1a.1: Admin asked to re-enter information.

2a: Builder's information is not valid.

  • 2a.1: Admin receives error message and asked to re-enter information.

4a: Builder already exists.

  • 4a.1: Admin receives error message.

[edit] Use Case 1 – User Logs In

Primary Actor: User
Stakeholders: User, Site Admin
Precondition: User Account has been created and using valid password
Main Success Scenario

1. User accesses HomePix homepage
2. User enters username and password into fields
3. User submits username and password
4. User is directed to their personal HomePix page

Extensions:

3a. User entered invalid information.

  • 3a.1: User is prompted to try again.

[edit] Use Case 2 – Admin Views and Prints List of Current Builders

  • Primary Actor
    • Admin
  • Stakeholders
    • Admin
  • Preconditions
    • Admin is logged in
  • Main Success Scenario
  1. Admin clicks on view current builders button
  2. Website displays list of current builders and their information
  3. Admin clicks on Print button
  4. List of current builders is printed
  • Extensions

1a: Database connection error

  • 1a.1: Error message is displayed

[edit] Use Case 3 - Builder Create Customer Account

  • Primary Actor
    • Builder
  • Stakeholders
    • Builder, Customer
  • Precondition
    • Builder is logged in
    • Builder has customer's information
  • Main Success Scenario
  1. Builder selects to add customer
  2. Builder enters customer information
  3. Information is entered into database
  4. Customer account is created
  • Extensions

2a: Customer's information is not valid.

  • 2a.1: Builder receives error message and asked to re-enter information.

4a: Customer already exists.

  • 4a.1: Builder receives error message.

[edit] Use Case 4 - Builder Views And Prints List of Current Customers

  • Primary Actor
    • Builder
  • Stakeholders
    • Builder
  • Preconditions
    • Builder is logged in
  • Main Success Scenario
  1. Builder clicks on view current customers button
  2. Website displays list of current customers and their information
  3. Builder clicks on Print button
  4. List of current customers is printed
  • Extensions

1a: Database connection error

  • 1a.1: Error message is displayed

[edit] Use Case 5 - Customer Views Pictures of Buildsite

  • Primary Actor
    • Customer
  • Stakeholders
    • Builder, Customer
  • Precondition
    • Customer is logged in
  • Main Success Scenario
  1. Customer clicks on view photos button
  2. Customer is taken to page with buildsite photos
  • Extensions

2a: No photos exist for customer

  • 2a.1: Error message is displayed saying that page does not exist yet

[edit] Use Case 6 - Builder Uploads Files

  • Primary Actor
    • Builder
  • Stakeholders
    • Builder, Customer
  • Precondition
    • Builder is logged in
  • Main Success Scenario
  1. Builder clicks on file upload button
  2. Builder selects upload customer photo radio button
  3. Builder selects customer name from dropdown list
  4. Builder presses browse button and selects file for upload
  5. Builder optionally enters description
  6. Builder clicks submit button to upload file
  • Extensions

2a: Builder selects sponsor radio button

  • 2a.1: Customer dropdown list is not presented

4a: Builder selects an invalid file extension for upload

  • 4a.1:Error message saying "Invalid File Extension" is presented to builder

6a: Required information is not present

  • 6a.1 Upload is not permitted, error message is displayed

[edit] Use Case 7 - Customer Emails Builder

  • Primary Actor
    • Customer
  • Stakeholders
    • Customer, Builder
  • Precondition
    • Customer is logged in
  • Main Success Scenario
  1. Customer goes to contact builder page
  2. Customer enters a message into the text box
  3. Customer clicks the submit button
  4. Message is sent to the builder
  • Extensions

1a: Contact Builder Page Not Available

  • 1a.1: Customer is redirected to the previous page

4a: Builder’s e-mail address is wrong in database

  • 4a.1: Message is relayed to the customer that the builder could not be contacted

4b: Cannot connect to database

  • 4b.1: Error message displayed

[edit] Use Case 8 - Sponsor Upload and Display

  • Primary Actor
    • Builder
  • Stakeholders
  • Builder, Sponsor
  • Precondition
    • Builder is logged in
  • Main Success Scenario
  1. Builder goes to upload photos/sponsor page
  2. Builder selects the upload sponsor radial button
  3. Builder browses their computer for sponsor photo
  4. Builder enters a hyperlink for the photo
  5. Builder submits the information
  6. Sponsor photo & link are added to the database
  • Extensions

1a: Upload Photos/Sponsor Page is unavailable

  • 1a.1: Builder is redirected to the previous page

3a: Browse does not put in the correct path for sponsor photo

  • 3a.1: Builder tries to browse again

4a: Builder Enters Incorrect Hyperlink

  • 4a.1: Builder Enters the Correct Hyperlink

6a: Information not successfully added

  • 6a.1: Error Message Displayed
  • 6a.2: Form Reset for Builder to Reenter information

[edit] Use Case 9 - Customer Comments on Photograph

  • Primary Actor
    • Customer
  • Stakeholder
  • Customer
  • Precondition
    • Customer Logged In
  • Main Success Scenario
  1. Customer goes to view photos page
  2. Customer selects a photograph
  3. Customer is taken to a page with expanded photo
  4. Customer enters their name into a text box
  5. Customer enters a comment into the text box
  6. Customer clicks on the submit button
  7. Information is added to the database
  8. Page refreshes with the new comment right below the photograph
  • Extensions

1a: View photos page not available

  • 1a.1: Customer is redirected to previous page

3a: Page with enlarged photo is not available

  • 3a.1: Customer is redirected to the view photos page

7a: Information is not added to the database

  • 7a.1: Error message displayed
  • 7a.2: Form is reset for customer to try again

8a: Page does not refresh

  • 8a.1: Customer must manually refresh the page

8b: Comment not displayed

  • 8b.1: Customer reenters and submits comment

[edit] Use Case 10 - Customer Deletes Comment For Certain Photograph

  • Primary Actor
    • Customer
  • Stakeholders
    • Customer
  • Precondition
    • Customer is logged in
  • Main Success Scenario
  1. Customer clicks on view photos button
  2. Customer clicks to view large photograph
  3. Customer clicks delete button that is next to comment that is to be deleted
  • Extensions

3a: No comments are present

  • 3a.1: No delete button is presented

[edit] Use Case 11 - Customer Emails One Photograph To A Friend

  • Primary Actor
    • Customer
  • Stakeholders
    • Customer, Guest User
  • Precondition
    • Customer is logged in
  • Main Success Scenario
  1. Customer clicks on view photos button
  2. Customer clicks to view large photograph
  3. Customer enters friend's email address
  4. Customer clicks on Email this photo to a friend button
  5. Confirmation message is displayed
  • Extensions

4a: No address is present

  • 4a.1: Error message is displayed

4b: Email address does not exist

  • 4b.1: User will receive email from admin saying that the message could not be delivered


[edit] Basic Architectual Decisions

1. Platform
We are using the .NET framework for this project because of the communication required between the program and the database that needs to be accessed.

2. Programming Language
We are using C# to create the web page for the client. C# is being used at the request of the client.

3. User Interface
The user interface for our program is a graphical web page. It will be a simple design and easy to use. A web page is used because the project is required to be on the internet.

4. Persistence Mechanism
We are using a SQL database to store all persistent data. This is used at the request of the client.

5. Most Important Libraries
C# System Web Libraries are the most important libraries we are using. This is because we are creating a website that requires the security and communication functions that these libraries provide. We also make heavy use of the Data.SQLClient libraries because of the frequent interaction with our SQL database.

[edit] Basic Infrastructure

1.Web site set up
The website is set up so that there is a login box on the main page where all users will log in. If the user that logs in has admin permissions, then the user will be redirected to the admin page where all admin functions can be performed. If the user that logs in is a builder, the user will be redirected to their specific builder page where they can perform functions specific to their company. If the user that logs in is a consumer they will be redirected to their personal page. If the user that logs in is a guest they will be redirected to the specific photo page that they have permission to view.

2.Database set up
The database we are using has multiple tables. There is a table that contains the information for the builders and the users for general login. This table will contain all the users information. There will be another table for Builders which contains their information.

3.IDE set up
We are using Microsoft Visual Studio to develop our project. This helps our productivity because of the GUI builder, automatic highlighting and drop down lists with variable and function names lessen the amount of work that needs to be done by hand.

[edit] Introduction to the Requirements Document

1.Purpose and Scope
The purpose of our project is to provide a service for builders to to easily communicate with customers about the progress of their buildsite.

2.Glossary
Impressions - The frequency of a sponsor graphic being displayed. A higher impression number means the link shows up more often.
Home Selection Page - A document written up between the builder and customer that lists the details of the house construction.
Photo Book - The complete collection of photos uploaded by the builder for the customer put into an easy to manage format.
Grid View - an asp.net control that uses an sql command to fill it's fields with information from the database.

3.Nonfunctional Requirements
Our code should be fairly simple which in theory will make it fast, reliable, and easily maintained. Our final product will be commented so that future maintainers will know what features are provided for and what specific functions perform. Our website will be easy to navigate so that any user can log on and see their home with no questions or frustrations about the site.

Class Diagram
Class Diagram Description
Manual Unit Tests for Use Cases 6, 8, and 10

[edit] Possible Use Cases For Milestone 3

Use Case 12: Customer Prints Selected Photo
Use Case 13: Customer Password Retrieval
Use Case 14: Administrator Sets Sponsor Link Impressions
Use Case 15: Signing Customer Guest Book
Use Case 16: Viewing and Printing Home Selection Page
Use Case 17: Customer Prints Photo Book
Use Case 18: Builder Emails Customer Through Web Page
Use Case 19: Administrator Sends Billing Update Notice

Personal tools