Capstone Design—Computer Systems

403 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
403
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Capstone Design—Computer Systems

  1. 1. Capstone Design—Computer Systems gStock—A Virtual Stock Application Project Statement
  2. 2. Christopher Juliano Mansoor Khan Guddu Mony
  3. 3. Overview: There has always been a desire for a fantasy stock application that lets you trade stock in the current market using virtual money. These applications let you watch stocks of interest and trade them at market price with a virtual portfolio. This is ideal for mainly two kinds of users. First are the beginners who would like to learn the trading basics and strategies to be successful in the market. Second is for users who have money invested in the market and would like a real time report indicating their gains and losses. In today’s mobile era there is a need more than ever for such applications that include these features “to-go”. Most platforms already have similar programs already deployed. But as a newly released platform, the Google Android has limited applications with limited options related to stock tracking and virtual trading. We propose a user-friendly, all-inclusive application that can be utilized by all Android users both experts and beginners alike. This application would combine many popular features like stock tracking, history, up to date news feeds, live streaming, virtual trading and risk analysis in one application for Google Android based phones. Customers: Currently the target customers are the Google Android GPhone Users. Any one who owns a GPhone who would like to track stocks and follow the stock while on the go are the ideal prospect as customers. Goals/Features: • Allow users to view up to date quotes and information of desired stocks on demand • Allow management of portfolio with stocks and quantities of choice • Have desired amount of virtual money to try out different stocks and strategies • Watch list that monitors stocks of choice • View history of recent transactions
  4. 4. System Functions: • Evident • Track stock quotes from stock market • Manage virtual portfolio and cash • Buy and sell stock at real market prices • View Gains/Losses at current market prices • Watch List functionality • View recent Transactions • Hidden • Retrieve stock information form Google Feeds • Sell and buy automatically at market prices • Save any changes to Portfolio/Watch list in an active database (No loss of data if program is exited) • Frill • View graphical history / streamer for stocks • View News for a given stock • View Risk of holding/buying a stock • Setting menu to adjust update interval • Link to more information from recent transactions. System Attributes: • Details • User Interface • Must be aesthetically pleasing • Simple and easy to navigate • Back End Code • Must be efficient (to conserve resources) • • Constraints • Database space availability on the phone • Availability of Feeds and their accuracy •Lack of actual device (G1) • Emulator functionality same as actual phone • Changes in google feeds and the learning curve • Must/Wants • Using minimal resources • Battery life conservation • Disk space • Bandwidth
  5. 5. Use Case Diagram
  6. 6. Use Case Specification Add Money to Account UGS0001 Description: This use case allows the User to add money to their portfolio. Purpose: This use case is important because it gives the User a means to adjust the amount of funds their portfolio contains. It also displays the control path of the case of a User adding money to their portfolio. Requirements Trace: Increases the amount of money in the User’s portfolio. Subject Area: Information Modification Related Use Cases: UGS00002 Primary & Secondary Actors: • User (Primary) • Database (Primary) Technical Requirements: • Frequency of Use: Rarely • Typical Actor: Human Pre-Condition: 1) The application is running. 2) The database is accessible. Main Course: 1) User first selects “Navigate”. 2) User then selects “Manage Money”. 3) User enters amount of money to add to account. 4) User selects “Add”.
  7. 7. 5) The application increases the amount of money the User can use. 6) A success or error dialog is shown. Post-Condition: The transaction succeeded and the User’s money is updated to show the new amount. Alternate Course(s): There are no alternate courses for this use case. Issues: There are no issues as of yet for this use case. Assumptions: User inputs a positive, valid amount in the money field. Design Comments: There are currently no design comments. Change Log: 1) Created by Christopher Juliano (02/26/2009)
  8. 8. Remove Money from Account UGS0002 Description: This use case allows the User to remove money from their portfolio. Purpose: This use case is important because it gives the User a means to adjust the amount of funds their portfolio contains. It also displays the control path of the case of a User removing money from their portfolio. Requirements Trace: Decreases the amount of money in the User’s portfolio. Subject Area: Information Modification Related Use Cases: UGS00001 Primary & Secondary Actors: • User (Primary) • Database (Primary) Technical Requirements: • Frequency of Use: Rarely • Typical Actor: Human Pre-Condition: 1) The application is running. 2) The database is accessible. Main Course: 1) User first selects “Navigate”. 2) User then selects “Manage Money”. 3) User enters amount of money to remove from account. 4) User selects “Remove”. 5) The application decreases the amount of money the User can use. 6) A success or error dialog is shown. Post-Condition:
  9. 9. The recent transaction list retrieval succeeded and the list is displayed on the screen. Alternate Course(s): There are no alternate courses for this use case. Issues: There are no issues as of yet for this use case. Assumptions: There are no assumptions required yet for this use case. Design Comments: There are currently no design comments. Change Log: 1) Created by Christopher Juliano (02/26/2009) Sell Stock UGS0003 Description: Allows User to sell stock in his portfolio. Purpose: The ability to sell stocks one of the critical functions of a virtual stock portfolio Requirements Trace: Sell currently owned stocks Subject Area: Information Modification Related Use Cases: UGS0004 Primary and Secondary Actors: • Phone User (Primary) • Google Feeds (Primary) • Database (Secondary) Technical Requirements: Frequency of Use: Often Typical Actor: Human Pre-condition:
  10. 10. User should have stocks in quantity he wishes to sell already in his/her portfolio Main Course: 1. User opens application 2. User chooses Navigate  Trade 3. User Enters symbol and quantity of the stock he/her wishes to sell 4. User chooses Sell 5. Google Feeds then provides the current price of the stock 6. User is asked to verify the sell given the Name, quantity and price. 7. User confirms the sell Post-condition: • Quantity of sold stocks removed from database • Recent history updated with transaction • Appropriate cash added to database • Application returns to main screen. Alternate Course A: 1. User chooses Change in the verify screen 2. User Enters symbol and quantity of the stock he/her wishes to sell 3. User chooses sell 4. Google Feeds then provides the current price of the stock 5. User is asked to verify the sell given the Name, quantity and price. Alternate Course B: 1. User chooses No in the verify screen 2. Application returns to Home screen Issues: None Assumptions: • Only positive available quantities are inputted. • Only owned symbols are inputted. Design Comments: None
  11. 11. Change Log: 1) Created by Guddu Mony (02/26/2009)
  12. 12. Buy Stock UGS0004 Description: Allows User to buy stock to add to his portfolio. Purpose: The ability to buy stocks one of the critical functions of a virtual stock portfolio Requirements Trace: Buy specified quantity of stock. Subject Area: Information Modification Related Use Cases: UGS0003 Primary and Secondary Actors: • Phone User(Primary) • Google Feeds(Primary) • Database(Secondary) Technical Requirements: Frequency of Use: Often Typical Actor: Phone User (Human) Pre-condition: User should know the symbol and quantity of stock he would like to buy. Main Course: 1. User opens application 2. User chooses Navigate  Trade 3. User Enters symbol and quantity of the stock he/her wishes to buy 4. User chooses Buy 5. Google Feeds then provides the current price of the stock 6. User is asked to verify the buy given the Name, quantity and price. 7. User confirms the buy Post-condition:
  13. 13. • Quantity of bought stocks added to database • Recent history updated with transaction • Appropriate cash subtracted from database • Application returns to main screen. Alternate Course A: 1. User chooses Change in the verify screen 2. User Enters symbol and quantity of the stock he/her wishes to buy 3. User chooses buy 4. Google Feeds then provides the current price of the stock 5. User is asked to verify the sell given the Name, quantity and price. Alternate Course B: 1. User chooses No in the verify screen 2. Application returns to Home screen Issues: None Assumptions: • Only positive quantities are inputted. • Only existing symbols are inputted. • User has sufficient money for transaction. Design Comments: None Change Log: • Created by Guddu Mony - 2/26/2009
  14. 14. View Stock UGS0005 Description: Allows User to view the details of any stock in the market Purpose: The ability to view stock information is a critical functions of a virtual stock portfolio Requirements Trace: View information of a stock. Subject Area: Information Retrieval Related Use Cases: UGS0006, UGS0007 Primary and Secondary Actors: • Phone User(Primary) • Google Feeds(Primary) Technical Requirements: Frequency of Use: Often Typical Actor: Phone User (Human) Pre-condition: User should know the symbol of the stock he would like to view Main Course: 1. User opens application 2. User chooses Navigate  View Stock 3. User Enters symbol of the stock he/she wishes to view 4. User chooses View 5. Google Feeds then provides information about the stock Post-condition: None Alternate Course(s): None Issues: None Assumptions:
  15. 15. • Only existing symbols are inputted. Design Comments: None Change Log: • Created by Guddu Mony (02/26/2009) View Portfolio UGS0006 Description: Allows User to view his current portfolio. Purpose: The ability to view Portfolio is one of the critical functions of a virtual stock portfolio Requirements Trace: View Portfolio elements Subject Area: Information retrieval Related Use Cases: UGS0005 Primary and Secondary Actors: • Phone User(Primary) • Google Feeds(Primary) • Database(Secondary) Technical Requirements: Frequency of Use: Often Typical Actor: Phone User (Human) Pre-condition: None Main Course: 1. User opens application
  16. 16. 2. User chooses Navigate  View Portfolio 3. Database provides a list of stocks and their quantities in the portfolio 4. Google Feeds provides price and information about the stock in portfolio Post-condition: • His/her portfolio is displayed with stocks, quantities and their respective price information Alternate Course(s): 1. User clicks on a stock in the portfolio 2. Use Case UGS0005 is executed with the symbol of the clicked stock as input 3. Details are retrieved from Google and displayed Issues: None Assumptions: • User has an existing portfolio Design Comments: None Change Log: • Created by Guddu Mony - 2/26/2009 Watch List UGS0007 Description: Allows User to view Watch List Purpose: The ability to watch a listed of interested stocks is useful. Requirements Trace: View changes in stocks being watched. Subject Area: Information Retrieval Related Use Cases: UGS0005, UGS0008, UGS0009
  17. 17. Primary and Secondary Actors: • Phone User(Primary) • Google Feeds(Primary) • Database(Secondary) Technical Requirements: Frequency of Use: Often Typical Actor: Phone User (Human) Pre-condition: None Main Course: 1. User opens application 2. User chooses Navigate  View Watch List 3. Database provides a list of stocks and their quantities in the Watch List 4. Google Feeds provides price and information about the stock in Watch List Post-condition: • His/her Watch List is displayed with stocks, quantities and their respective price information Alternate Course(s): 1. User clicks on a stock in the Watch List 2. Use Case UGS0005 is executed with the symbol of the clicked stock as input 3. Details are retrieved from Google and displayed Issues: None Assumptions: • User has items on the Watch List Design Comments: None Change Log: • Created by Guddu Mony - 2/26/2009
  18. 18. Add Stock to Watch List UGS0008 Description: This use case allows the User to add a stock symbol to their watch list. Purpose: This use case displays the control path of the case of a User adding a stock to their watch list. This action is necessary for maintaining the User’s watch list. Requirements Trace: Adds a stock to the User’s watch list. Subject Area: Information Modification Related Use Cases: UGS00007 & UGS00009 Primary & Secondary Actors: • User (Primary) • Database (Primary) Technical Requirements: Frequency of Use: Moderate Typical Actor: Human Pre-Condition: 1) The application is running. 2) The database is accessible. Main Course: 1) User first selects “Navigate”. 2) User then selects “Watch List”. 3) User then selects “Add to Watch List”. 4) User enters symbol of the company they would like to add. 5) User selects “Add”. 6) The application adds the symbol of the company to the watch list section of the database. 7) A success or error dialog is shown. Post-Condition:
  19. 19. The transaction succeeded and the symbol is added to the User’s watch list and also to the database. Alternate Course(s): There are no alternate courses for this use case. Issues: There are no issues as of yet for this use case. Assumptions: User inputs a valid stock symbol. Design Comments: There are currently no design comments. Change Log: 1) Initially created by Christopher Juliano (02/26/2009)
  20. 20. Remove Stock from Watch List UGS0009 Description: This use case allows the User to remove a stock symbol from their watch list. Purpose: This use case displays the control path of the case of a User removing a stock from their watch list. This action is necessary for maintaining the User’s watch list. Requirements Trace: Removes a stock from the User’s watch list. Subject Area: Information Modification Related Use Cases: UGS00007 & UGS00008 Primary & Secondary Actors: • User (Primary) • Database (Primary) Technical Requirements: Frequency of Use: Moderate Typical Actor: Human Pre-Condition: 1) The application is running. 2) The database is accessible. Main Course: 1) User first selects “Navigate”. 2) User then selects “Watch List”. 3) User then selects “Remove from Watch List”. 4) User enters symbol of the company they would like to remove. 5) User selects “Remove”. 6) The application removes the symbol of the company from the watch list section of the database. 7) A success or error dialog is shown. Post-Condition:
  21. 21. The transaction succeeded and the symbol is removed from the User’s watch list and also from the database. Alternate Course(s): There are no alternate courses for this use case. Issues: There are no issues as of yet for this use case. Assumptions: User inputs a valid stock symbol. Design Comments: There are currently no design comments. Change Log: 1) Initially created by Christopher Juliano (02/26/2009)
  22. 22. Show Recent Transactions UGS0010 Description: This use case allows the User to view the most recent transactions they have performed. Purpose: This use case displays the control path of the case of a User choosing to display their recent transaction list. Requirements Trace: Display a list of the User’s recent transactions. Subject Area: Information Retrieval Related Use Cases: There are no related use cases for this use case. Primary & Secondary Actors: • User (Primary) • Database (Primary) Technical Requirements: Frequency of Use: Moderate Usage Typical Actor: Human Pre-Condition: 1) The application is running. 2) The database is accessible. Main Course: 1) User first selects “Navigate”. 2) User then selects “Recent Transactions”. 3) The application retrieves the recent transactions stored in the database. 4) The application displays in a list form the recent transactions. Post-Condition: The transaction succeeded and the User’s money is updated to show the new amount. Alternate Course(s): There are no alternate courses for this use case. Issues:
  23. 23. There are no issues as of yet for this use case. Assumptions: User inputs a positive, valid amount in the money field. Design Comments: There are currently no design comments. Change Log: 1) Created by Christopher Juliano (02/26/2009) Data Dictionary Document Virtual Stock Portfolio – The page that contains all the currently owned stocks. Database – The backend storage used to keep track of transactions and account balances Stock Symbol – The unique letters used to identity each company Google Feeds – The source used to obtain current stock prices. This comes in the form a an RSS Feed. Watched List – The paged used to track stocks prices. This page is similar to portfolio except it can contain stocks not currently owned. User Interface Map
  24. 24. Deliverables Use Case # Deliverable Contributers UGS0001 First Deliverable Chris Juliano UGS0002 First Deliverable Chris Juliano UGS0003 First Deliverable Guddu Mony UGS0004 First Deliverable Guddu Mony UGS0005 First Deliverable Mansoor Khan UGS0006 Second Deliverable Chris Juliano Second UGS0007 Guddu Mony Deliverable Second UGS0008 Mansoor Khan Deliverable
  25. 25. Second UGS0009 Mansoor Khan Deliverable UGS0010 Final Deliverable Group` *These Use Case only correspond to the basic functionality of the application Others will be added for the final deliverable if time permitting.

×