Hobb-IT Hobby Information Tracker By Illumination Technologies Requirements Specification October 28 rd 2013 1 Illu mina ti on Tech nolo gi es Hobb-IT
Dec 29, 2015
Hobb-ITHobby Information Tracker
By Illumination Technologies
Requirements Specification
October 28rd 2013
1Illum
inat
ion
Tech
nolog
ies
Hobb-IT
WELCOME
Client: Dr. Darren Lim
Associate Professor Computer Science
Guest: Dr. Tim Lederman
Guest: Dr. Meg Fryling
Illum
inat
ion
Tech
nolog
ies
2Hobb-IT
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
3Hobb-IT
INTRODUCTION
Karl Appel – Team Leader
Connor Blakely – Head Developer
Jackie Hausmann – Database Administrator
Bryan Leicht – Information Specialist
Katie Sitaro – Web Developer
Illum
inat
ion
Tech
nolog
ies
4Hobb-IT
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
5Hobb-IT
STATUS OF PROJECT
Completed:• Software Plan
Defined Problem and created a Solution Strategy
• Requirement SpecificationsDeveloped understanding of features and functionality required
Not Started• Preliminary Design
• Detailed Design
• Testing and Development
• Acceptance Test
Illum
inat
ion
Tech
nolog
ies
6Hobb-IT
STATUS: SOFTWARE PLAN
Problem DefinitionTrack Magic the Gathering card prices
Goal for the System and ProjectSystem to automatically track prices
Solution StrategyWaterfall Model
Sources of InformationWebsites given by client
Acceptance CriteriaWebsite and System to track prices automatically
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 7
STATUS: REQUIREMENTS SPECIFICATION
Data Flow DiagramsProcesses and Information Flow
User Case NarrativeThe story of users’ usage of Hobb-IT
UML Use Case DiagramShows process interaction with entities in Hobb-IT
Functional RequirementsThe measurable requirements fulfilled by Hobb-IT
Prototypes for DiscoveryModel for Requirements and Existence Test
Illum
inat
ion
Tech
nolog
ies
8Hobb-IT
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
9Hobb-IT
DATA FLOW DIAGRAMS
The following diagrams show the movement of data within the system and entities outside.
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 10
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 11
DATA FLOW DIAGRAM LEGENDExternal Entity: Represents outside sources of data to the system
Data Flow: Represents the movement of data
Data Store: Represents data that is not moving or at rest
Process: Represents an activity that manipulates the data
Guest User
AdvancedUser
Hobb-IT
OraServ
Administrator
Data Flow Diagram - Context Diagram
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 12
Hobb-IT Database
Hobb-IT Database
AdvancedUser
Guest UserAdministrator
2. Login1.
CreateAccount
3.Request
Real TimeCard Price
4.Tracked
CardInfo
7. ModifyCardList
6. AccessCardList
5.ChangeParseInfo
Data Flow Diagram - Level 0
Account InfoLoginCredentials
Account InfoCardRequest
CardInfo
LoginResponse
LoginCredentials
Request ParseInfo
ParseChange
Confirmation ListInfo Request
Info
AccountRequest
AccountListInfo
LoginResponse
LoginCredentials
ConfirmationAccountInfo
ListInfo
ListRequest
List Info
ModificationsRequest
NewListInfo
CardRequest
Card Info
CardRequest
CardInfo
CardRequest
CardInfo
RequestInfo Card
Info
ListRequest
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 13
AdvancedUser
1.1. EnterAccount
Information
Data Flow Diagram - Level 1:1. Create Account
Hobb-IT Database
1.2.ValidateAccount
Information
AccountInfo
AccountInfo
Check forValidation
ValidationResponse
AccountInformationValidationResponse
1.3 StoreAccountDetails
AccountInfo
AccountInfo
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 14
Data Flow Diagram - Level 1:2. Login
Site User
2.1. EnterAccount
Credentials
Hobb-IT Database
2.2.ValidateAccount
Information
2.3.Generate
LoginResponse
LoginCredentials
LoginCredentials
LoginCredentials
AccountInformation
AccountInformation
LoginResponse
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 15
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 16
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
17Hobb-IT
ADMINISTRATOR
• One administrator account
• Update how website’s information is
parsed
• Access search history of all users
• View and edit all login credentials
• Change default website for Guest User
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 18
ADVANCED USER
• Login to system
• View card’s price from multiple
websites
• Add cards to saved lists
• View search history
• View visual representation of price
fluctuations
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 19
GUEST USER
• Search for real-time price of cards
• One card per search
• Can only access one website’s
information
• Website is determined by Administrator
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 20
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
21Hobb-IT
UML USE CASE DIAGRAM LEGEND
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 22
Actor
System Boundary
Use Case
Actor interacts with all Use CasesActor interacts with the Use CaseUse Case A includes Use Case B
Use Case B extends Use Case A
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 23
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
24Hobb-IT
FUNCTIONAL REQUIREMENTS FOR ADMINISTRATOR
• Access all data stored on database
• Access search history of all users
• Create Advanced User accounts
• Edit website’s template for parsing data
• View and change login credentials
• Change default website for Guest User
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 25
FUNCTIONAL REQUIREMENTS FOR ADVANCED USER
• Login to Hobb-It
• Search for real-time price of cards
• Save and edit lists of cards
• Access their search history
• View visual representation of price
fluctuations
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 26
FUNCTIONAL REQUIREMENTS FOR GUEST USER
• Access system without login credentials
• View price and condition of card
• Website is specified by Administrator
• Default website is TrollandToad.com
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 27
NONFUNCTIONAL REQUIREMENTS
• Easy to change a website’s template
• Efficient
• Stable
• User friendly
• Follow all laws for parsing data
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 28
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype Screens What is next?
Illum
inat
ion
Tech
nolog
ies
29Hobb-IT
SCRAPING PROTOTYPE
Illum
inat
ion
Tech
nolog
ies
30
• Must be able to scrape specified list of websites
• Using Jsoup, a Java package for scraping websites
• Must get 5 attributes from the website1. Card Name2. Edition3. Condition4. Price5. Quantity
Hobb-IT
SCRAPING PROTOTYPE (TROLLANDTOAD.COM)
Illum
inat
ion
Tech
nolog
ies
31Hobb-IT
CODE SNIPPET
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 32
Document doc =
Jsoup.connect("http://www.trollandtoad.com/p83556.html").get();
Elements conditions =
doc.getElementsByClass("productquantity");
Elements prices =
doc.getElementsByAttributeValue("class" , "productprice");
Elements cardNames =
doc.getElementsByAttributeValue("class" , "pname1");
String cardName =
cardNames.get(0).text();
SCRAPING PROTOTYPE (TROLLANDTOAD.COM)
Illum
inat
ion
Tech
nolog
ies
33
The Result (10/22/13):
Card name = Hellfire
Edition = Legends
Condition = English Near Mint
Price = $16.99
Quantity = 1 in stock
Hobb-IT
SCRAPING PROTOTYPE (CARDKINGDOM.COM)
Illum
inat
ion
Tech
nolog
ies
34Hobb-IT
CODE SNIPPET
String website =
"http://www.cardkingdom.com/catalog/item/21120";
Document doc =
Jsoup.connect(website).get();
Elements conditions =
doc.select(".grid tbody tr");
Elements names =
doc.select("td b");
String name =
names.get(1).text().substring(names.get(1).text().indexOf(":") +1);
String edition =
conditions.get(1).text().split(" ")[1];
Illum
inat
ion
Tech
nolog
ies
Hobb-IT 35
SCRAPING PROTOTYPE (CARDKINGDOM.COM)The Result (10/22/13):
Card name = Hellfire
Edition = Legends
Condition = NM
Price = 14.99
Quantity = 6
Illum
inat
ion
Tech
nolog
ies
36Hobb-IT
MAIN MENU SCREEN
Illum
inat
ion
Tech
nolog
ies
37
Hobb-ITMain Menu
Username:
Password:
Login
Login As Guest
Hobb-IT
GUEST USER WELCOME
Illum
inat
ion
Tech
nolog
ies
38
Guest Welcome
Enter a Magic: The Gatheringcard you would like to price:
Magic Card:
Website:
Enter
Edition:
TrollAndToad.com
Hobb-IT
ADVANCED USER WELCOME
Illum
inat
ion
Tech
nolog
ies
39
Advanced User Welcome
Welcome "username"
Magic Card:
Website:
Enter
Edition:
Hobb-IT
INITIAL GRAPHS SCREEN
Illum
inat
ion
Tech
nolog
ies
40
Graphs 1
Enter the card youwant to visualize:
Magic Card:
Edition:
Enter
Hobb-IT
VISUALIZED GRAPH SCREEN
Illum
inat
ion
Tech
nolog
ies
41Hobb-IT
Graphs 2
"Card Name"
Website 1
Website 2
Website 3
Dates
Date 1 Date 2 Date 3 Date 4
Price
0.0
10.0
20.0
30.0
WISH LIST
Illum
inat
ion
Tech
nolog
ies
42
Wish List
Card List Push to TrackedCards
Add Card Remove Card
Hobb-IT
TRACKED CARDS LIST
Illum
inat
ion
Tech
nolog
ies
43
Tracked Cards
Card DateCurrent Value
& WebsiteAverage
Value
Update
Hobb-IT
PAST SEARCHES
Illum
inat
ion
Tech
nolog
ies
44
Past Searches
Card DateCurrent Value
& Website
Hobb-IT
ADMINISTRATOR WELCOME
Illum
inat
ion
Tech
nolog
ies
45
Administrator Welcome
What action would you liketo perform:
Manage Account
Update Website
Hobb-IT
MANAGE ACCOUNT
Illum
inat
ion
Tech
nolog
ies
46
Manage Account
What account wouldyou like to manage?
Username:
Enter
Hobb-IT
UPDATE WEBSITE
Illum
inat
ion
Tech
nolog
ies
47
Update Website
Please choose a Website to update:
Enter
Hobb-IT
AGENDA
Introduction Status of Project Data Flow Diagrams(DFD) User Case Narrative UML Use Case Diagram Functional Requirements Inventory Prototype screens What is next?
Illum
inat
ion
Tech
nolog
ies
48Hobb-IT
WHAT IS NEXT?
Preliminary Design PresentationDecember 2, 2013
Detailed DesignSpring 2014
Acceptance TestSpring 2014
Illum
inat
ion
Tech
nolog
ies
49Hobb-IT
QUESTIONS?
Illum
inat
ion
Tech
nolog
ies
50Hobb-IT