submitted to: dr. lawrence chung associate professor, department of computer science, the university...

25
SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED BY: STEVEN FORD GILBERT ISLAS PAUL WASILEWSKI OBI OGBANUFE MICHAEL MURPHY TEAM WEBSITE: HTTP://WWW.INDIGOMARK.COM/ALPHA/ Schedule360

Upload: moshe-hirons

Post on 15-Dec-2015

222 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

S U B M I TT E D T O :

D R . L AW R E N C E C H U N GA S S O C I AT E P R O F E S S O R ,

D E PA R T M E N T O F C O M P U T E R S C I E N C E ,T H E U N I V E R S I T Y O F T E XA S AT D A L L A S ,

R I C H A R D S O N, T X - 7 5 0 8 0

S U B M I TT E D B Y:

S T E V E N F O R DG I L B E R T I S L A S

PA U L WA S I L E W S K IO B I O G B A N U F E

M I C H A E L M U R P H Y 

T E A M W E B S I T E : HTTP : / /WWW. IND IGOMARK . COM / ALPHA /

Schedule360

Page 2: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Agenda

Problem DefinitionScenarioGoalVision StatementProject SpecificationBudget / Scope CreepProcess SpecificationRequirements and WRS refinementTraceabilityTest CasesMock-up

Page 3: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Problem Statement

The problem of multiple schedules without a source to consolidate into a single form of

media affects Business Professionals with lives outside of work. The impact of which is an

unawareness of all appointments and various other commitments.

Page 4: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Scenario

Steven is the Sales Director of a startup of 20 employees and a devoted husband and father of 2.

Steven has important meeting with a possible customer that is rescheduled after he has already left for the day.

Steven did not receive the reschedule notification due to family commitments outside of work.

Steven is late to the meeting the next morning and misses out on a big opportunity for new business.

The startup’s success is now in jeopardy due to the missed opportunity.

Page 5: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Goal

Consolidate all schedules into one location and allow user to modify them at their

convenience.

Page 6: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Project Specification

The project spec for the creation of Schedule360

Using NFR Framework

SIG (Softgoal Interdependency Graph) – Star UML FR Framework

UML – Visual Paradigm for UML

Page 7: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Project Specification (NFR)

Page 8: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

req Schedule 360 Functional Req

Text = "The application shall allow users to synchronize information between the application and all other existing electronic calendars (personal, work, etc.)."ID = "2.2.1"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.1 Interface

Text = "The application shall allow the user to create appointments."ID = "2.2.2"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.2 Create Appts

Text = "The user shall be able to select the display for all appointments as a List, Daily, Weekly, or Monthly view"ID = "2.2.15"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.15 View Appts

Text = "The user shall be able to specify which calendar is updated."ID = "2.2.17"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.17 Update Calendar

Text = "The application shall provide a warning if a scheduling conflict exists."ID = "2.2.18"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.18 ID Conflicts

Text = "The software shall be updateable"ID = "2.2.23"source = ""kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.23 Update Software

Text = "The application shall allow users to interface with it on the Apple iPhone and iPad."ID = "2.2.16"kind = "Functional"verifyMethod = "Test"risk = "High"status = "Proposed"

<<requirement>>2.2.16 Interface - Apple Iphone Ipad

Text = "The application shall have a search function"ID = "2.2.19"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.19 Interface - Search

Text = "The application shall allow the user to sort it by location, start date, end date, start time, and end time."ID = "2.2.20"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.20 Interface - Sort

Text = "The application shall allow users to modify or edit the fields of an existing appointment."ID = "2.2.21"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.21 Interface - Modify

Text = "The application shall allow users to delete appointments"ID = "2.2.22"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.22 Interface - Delete

Text = "The calendar shall allow registration online from www.360schedule.com."ID = "2.2.24"kind = "Functional"verifyMethod = "Test"risk = "Low"status = "Proposed"

<<requirement>>2.2.24 Interface - Registration

Text = "The appointment shall allow the creator to specify the subject of the appointment."ID = "2.2.3"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.3 Create Appts - Subject

Text = "The appointment shall allow the creator to specify the location of the appointment."ID = "2.2.4"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.4 Create Appts - Location

Text = "The appointment shall allow the creator to specify the start date of the appointmen...ID = "2.2.5"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.5 Create Appts - Start Date

Text = "The appointment shall allow the creator to specify the end date of the appointment."ID = "2.2.6"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.6 Create Appts - End Date

Text = "The appointment shall allow the user to specify the start time of the appointment in hours and minutes."ID = "2.2.7"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.7 Create Appts - Start Time

Text = "The appointment shall allow the user to specify the end time of the appointment in hours and minutes."ID = "2.2.8"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.8 Create Appts - End Time

Text = "The appointment shall allow the creator to place notes in the appointment."ID = "2.2.9"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.9 Create Appts - Notes

Text = "The appointment shall allow the creator to set a reminder alarm."ID = "2.2.10"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.10 Create Appts - Reminder

Text = "The appointment shall allow the creator the ability to invite others via email."ID = "2.2.11"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.11 Create Appts - Invitation

Text = "The appointment shall allow the creator to set future reoccurrences."ID = "2.2.12"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.12 Create Appts - Reoccurrences

Text = "The appointment shall allow the creator to set their availability as Busy, Free, Tentative, and Out of the Office."ID = "2.2.13"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.13 Create Appts - Availability

Text = "The appointment shall allow the creator to attach files to the appointment."ID = "2.2.14"kind = "Functional"verifyMethod = "Test"risk = "Medium"status = "Proposed"

<<requirement>>2.2.14 Create Appts - Attachments

Text = "Schedule 360 Software"ID = "2.2"source = ""kind = "Functional"verifyMethod = "Demonstration"risk = "High"status = "Approved"

<<requirement>>2.2 Schedule 360

Project Specification (FR)

Page 9: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Schedule / Budget

Team Quantity Hourly Rate Start Finish Work Days Hours CostProject Manager 1 55$ 1/14/2012 4/28/2012 75 600 33,000$ Software Engineer 2 50$ 1/14/2012 4/28/2012 75 1200 60,000$ Web Designer 1 45$ 1/14/2012 4/28/2012 75 600 27,000$ Systems Engineer 1 50$ 1/14/2012 4/28/2012 75 600 30,000$

Totals: 3,000 150,000$

Core Project Schedule/Budget

Identified roles for each of the 5 team members and based their hourly rates on industry standards

Multiplied that rate at 5 days/wk 8 hrs/day over course of semester leaving slack in schedule

Core budget came out to be $150,000

Page 10: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Slack Time / Scope Creep

Team Quantity Hourly Rate Start Finish Work Days Hours CostProject Manager 1 55$ 4/29/2012 5/19/2012 15 120 6,600$ Software Engineer 2 50$ 4/29/2012 5/19/2012 15 240 12,000$ Web Designer 1 45$ 4/29/2012 5/19/2012 15 120 5,400$ Systems Engineer 1 50$ 4/29/2012 5/19/2012 15 120 6,000$

Totals: 600 30,000$

Slack Schedule/Scope Creep/Project Issues

Projected Start Projected Finish Hard Deadline Slack Days Team Members Slack Hours Project Hours Scope Creep Max1/14/2012 4/28/2012 5/19/2012 15 5 600 3000 17%

Measured budget needed to continue project to the end of semester

Given the schedule for the project the maximum allowable amount of scope creep was measured to 17%

Page 11: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Process Specification

The process for the creation of Schedule360Using

NFR Framework SIG (Softgoal Interdependency Graph)

FR Framework IDEFO Class Diagram

Page 12: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Process Specification (NFR)

Page 13: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Process Specification (FR)

Page 14: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Process Specification (FR)

Page 15: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Requirement (FR)

The application shall allow the user to create appointments

The application shall allow users to synchronize information between the application and all other existing electronic calendars (personal, work, etc.).

Page 16: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

WRS Requirement Refinement (FR)

Functional Refinement There is no definition of what fields need to be in

the appointment. Issue description: A problem exists creating the

appointments because there are currently no functional requirements defining what fields are required for an appointment.

Options: An option is to define the common fields required when creating the appointment.

Decision and Rationale: Create additional functional requirements to clearly define the field required.

Revised functional requirement The appointment shall allow the creator to specify the

subject of the appointment, location, start time, end time, etc.

Page 17: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Requirement (NFR)

The software shall be compatible with the following calendars: Outlook, Google, Yahoo, and Lotus Notes.

The software shall be compatible as an application on the Apple iPhone version 3GS and newer.

Page 18: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

WRS Requirement Refinement (NFR)

Non-Functional Refinement The software shall be available for download

from a database containing the Schedule 360 smartphone application. Issue description: How can availability be defined better

to ensure users have easy access to the application. Options: Keep or modify the current requirement. Decision and Rationale: Need to be specific on the term

“available for download” or describe where it is available.

Revised non-functional requirement The software shall be available for download from the

iPhone App Store.

Page 19: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Traceability

Page 20: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Functional ExampleNon-Functional Example

Test Cases

Page 21: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Synchronizing the Device

Select ‘Synchronize Devices’ to Sync.

Home

Calendar

Settings

Help

More

Synchronize Devices

Page 22: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Viewing Calendar

Select ‘Calendar’

Home

Calendar

Settings

Help

More

Synchronize Devices

Page 23: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Editing Appointments

Select the appointment you would like to edit from your calendar.

Select which fields to edit.

Select ‘Delete Event’ to remove it from the calendar.

Select ‘Cancel’ to return to the calendar.

Page 24: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Vision Document

Consolidated overall plan for developing Schedule 360 application in one document. Product Positioning Stakeholder and User Descriptions Product Overview Functional/Non-Functional Requirements Product Features and Constraints Quality Ranges Precedence and Priorities Product Requirements Documentation Requirements

Page 25: SUBMITTED TO: DR. LAWRENCE CHUNG ASSOCIATE PROFESSOR, DEPARTMENT OF COMPUTER SCIENCE, THE UNIVERSITY OF TEXAS AT DALLAS, RICHARDSON, TX- 75080 SUBMITTED

Summary Project Development

Defined a Problem Illustrated using a scenario Developed a goal of solving the problem

Created a Vision of how to achieve goalRefined vision into project and process

specification Defined scope of what project plans to achieve (Project Spec) Developed & organized process to solve the problem (Process

Spec)Defined requirements and refined them

Tracked and Tested these requirementsUsed information to develop application and

achieved goal