Documente Academic
Documente Profesional
Documente Cultură
ACKNOWLEDGEMENT
It is said that what you have said is PAST, what you have done is HISTORY, what you have WRITTEN lasts till the end, Hence I would take this opportunity to thanks some of the important persons who made our project a fruitful experience. We would like to thank Prof. Om Vir Singh, Director, Amity School of Engineering & Technology. We specially thank Ms. Richa Arya for his excellent co-operation and support extended to us during this period, which helped us to understand the project. We express our heartfelt gratitude to Mr. Sunil Vyas, for providing us with endless support and encouragement in all our endeavours at every moment during our project.
TABLE OF CONTENTS
1. Abstract........
1.1 Project Proposal 1.2 Project Plan
ABSTRACT
Project Proposal
Introduction:
As a part of the project, our project team (team of $) has duly decided to concentrate their efforts on developing an online virtual stock trading game dealing particularly in the trading of equity. We aim to collect the live stock exchange rates and integrate it into our virtual trading game so as to give the end users the semi-real time experience (user considered as standalone entity and he, on his trading will not be capable to change prices of a given share) of trading in the market with only a slight difference, i.e. their virtual assets only at stake, rather than the real ones.
Goal:
We intend to develop an online game that addresses the problem stated above. We aim to provide our users with the semi-real time (because of the reason mentioned in introduction) market experience without staking their money. We intend to achieve this by providing the virtual trading ground to our users with a sum of fixed virtual money and all the key features that shall help them trade efficiently and also at the same time provide them the opportunity to learn about the market and associated technicalities.
Stakeholders:
Name Mr. Sunil Vyas Sunil Kumar Baithadiya Sahil Bhalwal Gaurav Rajpurohit Varun Vashisth Project Guide Team Leader Team Member Team Member Team Member Role
Project Scope:
Applicability:
This game is for everyone whether you are a Student, Office Working, Part time blogger, Housewife or simply a computer (internet) user. This is for all those who wish to invest in real market but dont really think that they have the proficiency enough at the given time to put the real money at stake. It helps you building your Portfolio better and better. This endeavor of ours can also be a source of entertainment to those who only want to play it as a game.
Project Environment:
Since we are developing a website, our project will be Operating System independent. The end user will simply need a browser to log on to our website and will be able to explore the website. We intend to make the full use of only the open-source resources for our project, but as and when needed we might make use of the licensed software as well.
Project Features:
Features that define the Product:
We will include in the website the features that are all present there in a real trading website. Features that we will be including are : 1) Providing the user with all the three trading (virtual here) options Future Delivery Intra-day 2) Market Watch: - Providing the feature of market watch, from where he/she will be able to see the current prevailing rates in the market of selected share company. 3) Order book 4) Trade History: - Providing user all the records of his previous transactions. 5) Limits (Buying and Selling)
There are certain features that are there in real trading websites, but due to the limitations of our website being only a ground for virtual trading, there are some features which irrelevant to provide. Like for example, we wont provide for the feature of fund transfer. Also our website will give a semi-real experience because we consider user as standalone entity and he, based on his trading will not be capable to change prices of a given share. So we will not be implementing a model which would change the prices of shares based on the trading of the user.
Assumptions:
During the course of developing this product there are some high-level assumptions that we have made. We are assuming that the end-user will be: 1) Familiar with English. We are not providing multi-language support. 2) Familiar with the use of computers and he is capable to browse through the website to explore the feature, though we also will be providing an online user-manual that shall explain all the features supported in project website. 3) The trading done by the user has a zero or negligible effect on the prices, hence we are not changing the prices based on a certain model used by websites like Reliance Money. 4) User considered as standalone entity and he, on his trading will not be capable to change prices of a given share.
Project Plan
1. Overview:
1.1 Purpose:
This document is created to act as a project plan for the software project VSE. It is a supposed explanation of the different phases of the project life cycle. It will be used as a reference during the process of software development. This document is extremely valuable for the team especially the team leader to allot resources and manage time efficiently. It also acts as a mark of the progress that the team is making. It acts as a guide for the team members ensuring that the team is moving in the right direction and has not lost sight of the set goals.
Provide an interface for virtual stock exchange Provide the users with updated stock exchange rates Provide status of the user among the players and track record Provide semi-real time experience in terms of money and risk
To observe various news articles which help in understanding fluctuations and latest news in stock exchange world. To comment and view about various topics or doubts by other players through forum.
The website application is deployed on localhost. After the website deployment, users can create their account and obtain the virtual money and start their transactions. Source code will be provided for further maintenance and extending the scope of the project.
1.5.3 Documents:
At the end of this course, the following documents are provided along with the software:
Proposal: This document provides complete information about the proposed features and the tentative time required for each phase of project. Feasibility Analysis: This document gives details about economic, operational and technical feasibility of this project. Project Plan: This document gives details about project purpose, scope, risk management and roles of team work. Software Requirements Specification: This document gives information about the requirements of the end users. At the end of the project, this helps in understanding the use cases and basic technical details of the website. Design Model: This used as essential input to activities in implementation and testing. During implementation, this is referred for realization of use cases and implementation model. System Test Plan: This provides goals and objectives of testing in our project context and the approach taken to fulfill the same. User Manual: This document acts as a technical document which clearly explains all the options and features of project and how to handle the problems occurring in the course of project usage.
2. Definitions:
3.1 Acronyms:
VSE: Virtual Stock Exchange LAN: Local Area Network
3. Project Organization:
4.1 Approach:
This project is developed in a team of 10 members. The team will be meeting in group meetings twice or thrice every week to discuss about the next target, work distribution among members and tentatively deciding the completion of it. After the completion of work, it is reviewed by other group member and group leader and then submitted. Frequent meetings with Professor and TAs will help us in giving the suggestions related to projected and resolve the confusion in implementation etc. This project development is planned to follow the phases like proposal, feasibility, requirement gathering, learning of the technology or programming language required to implement, SRS documentation, software architecture and design, coding, testing and debugging. Continuous evaluation of the quality of work produced in each phase and each group member is discussed in the corresponding group meetings.
Project TA
Project Members
Sahil
Varun
Gaurav
ensure a smooth process. The decision of deadlines will take into consideration the holidays as per
Project Phase
Goal
Deadline (tentative)
Approach Taken
End result/Output Feasibility Report, Cost Benefit Analysis results, Project Plan SRS
Initial Study
Establish a high-level view 17th January of the project and analyze its functioning feasibility
Analyze end user needs and specifications Describe the desired features in detail using diagrams and pseudo code Code the modules
8th March
Coding
Operational system Relatively bugfree operational system Production-ready operational system Updated/Improv ed System
Bring the pieces together and check for errors and bugs Run in the actual intended environment
12th April
Integrate the modules and apply the test benches developed earlier Deploy the system
Installation/D eployment
12th April
Maintenance
Improve performance according to the new system specifications and add new functionalities
the academic calendar.5.1.1: Staffing Plan: This will specify The number of staff required by skill level. Our team consists of 10 project members.
The project phases in which the number of personnel and types of skill are needed along with the duration of need. This is depicted in the following table:
System Design Implementation and Coding Integration Unit testing and System Testing Deployment
26th Feb 2011 10th Feb 2011 7th April 2011 8th April 2011 12th April 2011
16th March 2011 8th April 2011 10th April 2011 12th April 2011 -
5.3
Control Plan:
The control plan specifies the metrics, reporting mechanisms, and control procedures necessary to measure, report, and control the product requirements, the project schedule, budget, and resources, and the quality of work processes and work products.
The team members are supposed to meet in the scheduled group meetings to report their work and to discuss their queries. Summary of each group meeting is noted down by our project manager. Information exchange through group members is carried down using webmail. In case of coding and testing phases, group members are supposed to give their progress face to face to project manager. Any information exchange between group members is carried out with the help of DropBox and the purpose and outcome of each and every group meeting are noted down to assess our project progress.
5.4
Risk Management:
In course of this 4 month project, we encounter with no. of risks. Below gives the risks which we probably encounter and way to track and provide a solution:
Database Crash: In case of database crash with data loss in the server, then last updated good configuration should be set up. To avail this, we need to have a proper backup for all this security related information. Unavailability of Technical Resources: Required technology for the intermediate phase can be downloaded through internet resources available in the college. And freeware are to be used in order to avoid inconvenience in obtaining license of the software. Human Resources: In the situations where a group member is not available, then the corresponding work should be divided among other members. Wrong Way of Approach: If the software development is losing the track of the proposed plan, then extra time is spent in completing the previous module and taking the suggestions of TAs.
6.2
Acceptance Plan:
The delivered project should meet following requirements to be accepted by the client: User friendly with proper documentation Meet the requirements specified in SRS Submitted within the given deadline Proper user manual for easy understanding of the features and its implementation Facility to contact developers for maintenance during deployment
7 Learning Plan:
Group members are provided with their job for rest of the project development process. All of them who are related to coding are supposed start learning required programming languages PHP and SQL to deal with the database part. Members related to requirement gathering are supposed to start making a plan of organizing the phases of requirement collection and submitting it to the group leader. Members related to documentation are supposed to be familiar with the templates required to prepare an appropriate document. Any further clarifications can be cleared in scheduled group meetings.
Forum
Logout
User Info
Order Book
Brief Description: There are accounts for all the users. They need to log in the system before they can use any features of DABBA MARKET. This use case allows the user to login to the system for experiencing the virtual stock exchange website. Users: Students Faculty Staff Flow of events: Main flow: 1. The system displays the fields for login, namely user-name and password. 2. User enters the information. Alternate flow: If the user doesn't exist then or entered user name or password is wrong then error in log in screen is displayed.
Pre-conditions: User must open the URL of the DABBA MARKET website before login. Post Conditions: The login detail is send to the concern authority and if the authentication is valid then the user will be directed to the home or main page.
Start
Login Page
yes
end
Use Case2: Create an account Brief Description: This use case allow user to create an account in the DABBA MARKET website.
Users: Students Faculty Staff Flow of events: Main flow: 1. User need to click on create an account page. 2. User have to fill these information: Full Name Sex Daiict student yes or no If yes your Student Id Birthday Current Email address Username Password Reconfirm Password Select type- 1.student 2.faculty Alternate flow: An error message will be displayed if something went wrong or in case user provides wrong information according to the constraints.
3.staff
Pre-conditions: User must open the URL of the DABBA MARKET website and need to click on create an account page.
Post-conditions: 1. New account information is send to the concern authority. 2. User will be asked to login again with his/her given username and password.
Start
yes
end
Brief Description:
This Use case is the basic or main page of the website which link to all other functionalities of the DABBA MARKET website. This use case includes various functionalities and features of the system that enables Users to look for availability of different trading options provided by the DABBA MARKET website. Users: Students Faculty Staff Flow of events: 1. After login user is directed to this home page. 2. Link of these features are provided on this page: User info Market Watch Current Holdings Order book Trade history User rankings News Feedbacks Forum 3. User can click on the particular feature by selecting the feature. Pre-conditions: User must be logged in the system. Post-conditions: User has information about the features provided and can go to particular functionality page by clicking on that option.
Start
login
valid no
Show error
yes
Home page
data
end
Use case 4: View User Info Brief Description: This use case model contains the basic information of the users. This system takes information from users and stores them in database. It is like the public profile of the users. Users:
Students Faculty Staff Flow of events: 1. The system provides the information of the User involved (logged in User). 2. This model includes following field: Name Address Phone No. Email Address Sex Pre-conditions: User must be logged in the system Post-conditions: User will be able to view his/her personal details.
Start
View info
end
Use case 5: Edit/Update Profile Brief description: This use case allow user to change or update his/her personal details. Users: Students Faculty Staff
Flow of events: 1. User click on the edit profile tag provided on user info page. 2. User enters or changes his details and saves them. The corresponding changes get updated in the database. Pre-conditions: User must be logged in. Post-conditions: User will be able to edit his/her personal details.
start
end
Brief Description: User can view his/her market watch list in this use case model. This model shows information of the companies selected by the user. Users: Students Faculty Staff Flow of events: 1. User click on market watch tab provided by the system. 2. User selects the market watch list to view (on having more than one list to look at). 3. Informations displayed in market watch are: Company Name and its shares net change Its high and low market price. Pre-conditions: User must be logged in the system and shares information (price etc.) must be up to date with the current market value. Post-conditions: User has the information about particular company he/she wants to keep track on.
Start
end
Use case 7: Create a market watch list Brief Description: This use case allows user to create a market watch list.
Users: Students Faculty Staff Flow of events: 1. User click on market watch tab provide by system 2. Then user select create a market watch list by providing listname which is not used already. 3. User can add companies in this list. Pre-conditions: User must be logged in.
Post-conditions: User can create a new market watch list and add companies in them.
Start
Add comapny
end
Use case 8: Add Company in market watch list Brief Description: This model allows user to add or select his preferred company in market watch list. User can select limited number of companies only that is predefined by the system. Users: Students Faculty Staff
Flow of events:
Main Flow: 1. User click on market watch list in which he/she wants to create and add company. 2. User selects the company he/she wants to keep an eye on and add it. 3. These changes made by user are updated in database. Alternate Flow: If there is already enough companies (predefined by the system) and user adds another company to the list, it will display error information. Pre-conditions: User must be logged in. Post-conditions: User can add a company in market watch list. Use case 9: Order Book Brief Description: This use case allows the user to buy and sell shares .This order book is basically uses to record the interest of buyers and sellers in a particular financial instrument (shares here). Users: Students Faculty Staff
Flow of events: 1. User has to select the share which he/she wants to buy or sell. 2. Order book module consist of: Share Select trading type Number of shares Order type 3. Trading can be of any type like Intraday, delivery. User has to select among them. 4. Order type means what type of order you want like Market order, Limit Order, stop Order etc. 5. System displays information about the status of the shares and provides user with the availability of the shares depending upon his trading type. Pre-conditions: User must be logged in the system and this order should be fast (should execute on high speed net) as price keep changing at each moment.
Post-conditions: User can buy or sell shares. And corresponding entry is made in the system.
Start
Buy share
Sell share
end
Use case 10: Trade History Brief Description: This use case show all the transactions made by user. Users: Students Faculty
Staff Flow of events: 1. User is directed here from the home page. 2. By selecting the trade history option user can view his/her transactions. 3. This use case model contains the information of purchasing and selling of all shares that are made by user. Pre-conditions: User must be logged in the system and all transactions must be up to date.
Start
Home page
end
Use case 11: Current Holdings Brief Description: This use case displays information of shares that are currently being held by user. Its similar to the stock portfolio of an individual. Users: Students Faculty Staff
Flow of events: 1. The user log in the account. 2. System maintains a list of current holdings of user. User can see the list. Pre-conditions: User must be logged in the system. Post-conditions: The system displays the information of shares held by user.
start
Home page
end
Use case 12: User Ranking Brief Description: Use case displays the ranks of existing users according to the profit they make in the DABBA MARKET ranking game. Users: Students Faculty Staff
Flow of events: 1. User log in the system to see user ranking page 2. Entry is made in user ranking page depending upon investment made by user in shares and remaining cash amount i.e. net worth 3. System display the user ranking; user ranking has three categories Daily Ranking 4. User ranking will show the top ten rankers in each category . Pre-conditions: User must be logged in. Post-conditions: User can view his/her rank and view top rankers in each category.
Start
Home page
Student Faculty
Staff
end
Use case 13: News Feedback Brief Description: This model provides the facility of giving users the latest news and updates regarding the fluctuations in the market and includes comments by stock experts about the future behavior of some chosen stocks. Users: Students Faculty Staff Flow of events: 1. User log in the system and click on feedback option provided on home page. 2. It will display the stock related articles that are provided in stock magazines, newspapers, other professional stock market websites etc. and comments by stock experts. Pre-conditions: User must be logged in the system. Post-conditions: User will be aware of latest stock news and can take precautionary steps in order to prevent loss.
Start
Home page
end
Use case 14: Add Forums Brief Description: This use case allows user to add forums. User can share his/her view about particular share, company or any kind of information with other users. This model provides the facility of online discussion where user can hold conversation in form of posted messages. Users: Students Faculty Staff
Flow of events: Main flow: 1. User log in the system and click on forum tab provided on home page 2. User clicks on start a new forum. 3. System ask user to enter forum information. This include Forum title Enter details in forum 4. Once the user provided the details forum is added into 5. System display the forum created by user. Alternate flow: If the required field is not filled and user leaves the required field empty and wants to move to next step, system display the error message. Pre-conditions: User must be logged in the system Post-conditions: If use case is successful, the Forum is started and a mail is sent to the user.
start
No
end
Brief Description: This use case allows user to comment in particular forum. Users: Students Faculty Staff
Flow of events: 1. User clicks on Forums. 2. User selects one of the available Forums. 3. User Comments in that particular forum. Pre-conditions: User must be logged in.
start
Select forum
Comment is added
end
Use case 16: Logout Brief Description: Log-out is used to end users session and takes him/her to the log in page.
Users: Students Faculty Staff Flow of events: Main Flow: 1. 2. 3. 4. The system provide with a log out option User select that option System saves all changes made by the user The user is redirected to log in page
Alternate Flow: If there is connection failure, error message is displayed. Pre-conditions: User must be logged in the system Post-conditions: User is logged out.
Start
end
Use case 17: Change Password Brief description: This will allow user to change his/her password. Users: Students Faculty Staff
Flow of events: Main Flow: 1. User click on the edit profile tag made available to him/her. 2. Here user is asked to enter his new password and to re-enter his new password. User has to provide his old password also only then he can change his password. 3. Once the user is done a new password would is set for his/her account. Alternate Flow: 1. System validates the password entered by user, if old password is wrong then system ask user to enter again password.
Post-conditions: User will be able to set a new password for his/her account.
start
Edit profile
Is valid yes
no
end
8. Design Diagram:
8.1. Activity Diagram Login
no yes
User is logged in
Register
no yes
User is registered
Forgot password
User enters id
no yes
user profile edited
List displayed
no
yes
user profile edited
Place an order
no
yes
order placed
Delete an order
MarketWatch -listName : String -userID : String -script1 : String Forum -script2 : String -Topic : String -script3 : String -CreationDateAndTime : String -script4 : String -Author : String -script5 : String -NumberOfPosts : Long -script6 : String -views : Long -script7 : String CurrentHoldings -script8 : String -script9 : String -userID : String -script10 : String -TransactionId : String 1..n 1...n -script11 : String -scriptName : String Cr -script12 : String -NoOfShares : Integer ea te_ -script13 : String -price : Long MW -script14 : String lis -script15 : String t 1 1 -script16 : String -script17 : String User -script18 : String +Username : String -script19 : String TradeHistory +emailID : String -script20 : String ew -userID : String Vi 1..n +Password : String1 +saveList(in userID : User, in listName : string) 1 -TransactionId : String +userType : String -scriptName : String +CashBalance : String 1 -NoOfShares : Integer +userID : String -price : Long +DOB : Date -buySell : Char +sex : Char ew Vi 1..n -date : Date +rank : Integer 1 Administrator +netProfit : String +deliveryPower : String +dayPower : String -ApproveRegistrations() +holdingsValue : String +DeleteUserAccount() +DeleteForums() 1 #Login() +ViewUserprofiles() #Logout() +viewCompanies() +ViewProfile() +updatePrices() 1 +ViewForum() er rd +CreateForum() _O +EditProfile() te 1..n ea +ChangePassword() OrderBook r C +viewMarketWatch() Student -userID : String +createMarketWatch() -TransactionId : String +resetPassword() -scriptName : String +addComapnyInMW() +createAnAccount() -NoOfShares : Integer +deleteCompanyInMW() +DeleteHisProfile() -limitPrice : Long +viewAllShareslist() -buySell : Char +createAnOrder() -triggerPrice : Long +viewTradeHostory() -tradeType : Char +viewCurrentHoldings() -orderType : Char +viewUserRanking() +saveOrder(in userID : string, in transactionID : string) +viewArticles()
C re a te_F o ru m
[sign up]
[Submit_Details()]
[Valid_entry()]
registration successful
1.2 Interfaces:
The application will have a general interface for all the users. The user will have to login using his username and password and will then be directed to his customized page. It will have user-friendly and simple visualization and easy navigation facility to help.
1.3 Hardware:
Since the software will be accessed through a web based portal, the basic requirement will be a computer (or any device with web browsing capability) connected to the internet. This is possible through a full-time internet connection (possibly a leased line), or a line through the telephone cable.
1.4 Software: Database Server program: The database used is MySQL. OS: On the client side, there is no specific OS which needs to be installed, because
the client interacts only through the Web Browser. Browser: We will use Microsoft Internet Explorer 8 or Mozilla Firefox 4 above while coding and testing, that supports a good GUI-oriented website in real-time and has an encapsulation of application-level security measures.
On the Server side: On the server side also the source code written is OS independent.
All we need is a php, MySql and Apache server to host the website to be installed. If these minimal requirements are fulfilled, then the software will run good on any computer
USER:
UserId Password Username Gender
ENTITY: USER ATTRIBUTE userId password username Gender Birthday emailId Usertype cashBalance Rank netProfit dayPower deliveryPower holdingsvalue DATA TYPE INT(7) VARCHAR(20) VARCHAR(20) VARCHAR(6) VARCHAR(20) VARCHAR(30) VARCHAR(10) INT(20) INT(20) INT(20) INT(20) INT(20) INT(20) FEATURE NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL UNIQUE NOT NULL
ORDER BOOK:
UserId TransactionID Script Name Order Type Trade Type No of Shares Buy Sell Limit Price Trigger Price
ENTITY: ORDER BOOK ATTRIBUTE Userid transactionid scriptname ordertype tradetype noofshares Buysell limitprice trigerprice DATA TYPE INT(9) INT(10) VARCHAR(20) VARCHAR(10) VARCHAR(10) INT(5) VARCHAR(4) INT(10) INT(10) FEATURE NOT NULL, FOREIGN KEY NOT NULL AUTO_INCREMENT NOT NULL, FOREIGN KEY NOT NULL NOT NULL NOT NULL NOT NULL
TRADE HISTORY:
UserId Transaction Id Trade ID Script Name No of Shares Order Type Trade Type Buy Sell Buy Sell Price Date
ENTITY: TRADE HISTORY ATTRIBUTE userid tradedid transactionid scriptname noofshares buysell ordertype tradetype buysellprice date DATA TYPE INT(9) INT(10) INT(10) VARCHAR(20) INT(5) VARCHAR(4) VARCHAR(10) VARCHAR(10) INT(10) DATE FEATURES NOT NULL, FOREIGN KEY NOT NULL AUTO_INCREMENT NOT NULL, FOREIGN KEY NOT NULL, FOREIGN KEY NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL
COMPANY:
Script Name
Current Price Percentage Change Open Price Close Price High Price Low Price Last Traded Price
ENTITY: COMPANY ATTRIBUTE Scriptname Currentprice percantagechange Openprice Closeprice Highprice Lowprice Lasttradedprice FEATURES DATA TYPE VARCHAR(20) NOT NULL INT(10) VARCHAR(5) INT(10) INT(10) INT(10) INT(10) INT(10)
MARKET WATCH:
UserId Listname Script1 Script2 Script3 Script4 Script5 Script6 Script7 Script8 Script9 Script10 Script11 Script12 Script13 Script14 Script15 Script16 Script17 Script18 Script19 Script20
Entity: Market Watch ATTRIBUTE DATA TYPE FEATURE userid Int( INT(9) NOT NULL, FOREIGN KEY listname VARCHAR(10) NOT NULL script1 VARCHAR(20) FOREIGN KEY script2 VARCHAR(20) FOREIGN KEY script3 VARCHAR(20) FOREIGN KEY script4 VARCHAR(20) FOREIGN KEY script5 VARCHAR(20) FOREIGN KEY script6 VARCHAR(20) FOREIGN KEY script7 VARCHAR(20) FOREIGN KEY script8 VARCHAR(20) FOREIGN KEY script9 VARCHAR(20) FOREIGN KEY script10 VARCHAR(20) FOREIGN KEY script11 VARCHAR(20) FOREIGN KEY script12 VARCHAR(20) FOREIGN KEY script13 VARCHAR(20) FOREIGN KEY script14 VARCHAR(20) FOREIGN KEY script15 VARCHAR(20) FOREIGN KEY script16 VARCHAR(20) FOREIGN KEY script17 VARCHAR(20) FOREIGN KEY script18 VARCHAR(20) FOREIGN KEY script19 VARCHAR(20) FOREIGN KEY script20 VARCHAR(20) FOREIGN KEY
NEWS_DATA:
News_id Headlines Url Entity: News_DATA ATTRIBUTE DATA TYPE FEATURE News_id Int( INT(2) NOT NULL headlines VARCHAR(100) NOT NULL url VARCHAR(100) NOT NULL
TYPE: Function DESCRIPTION: There are accounts for all the actors. They need to log in the system before they can use any features of DABBA MARKET. This use case allows the user to login to the system for experiencing the virtual stock exchange website. IMPLEMENTATION: We will send the information entered by the user to the server and will compare the data from the database to allow the user to enter into the system. If the authentication is valid then the user will be directed to the home or main page.
3.2) MODULE 2
NAME: Create an Account TYPE: Function DESCRIPTION: This function allows user to create an account in the DABBA MARKET website. IMPLEMENTATION: The user will be asked to fill the relevant information and submit the information. An error message will be displayed if something went wrong or in case user provides wrong information according to the constraints. On successful creation of the account, the user will be asked to login again.
3.3) MODULE 3
NAME: User Info TYPE: Function DESCRIPTION: This function is used to see the basic information of the users. This system takes information from actors and stores them in database. Its like the public profile of the users. User can update and change this information whenever he/she wants. IMPLEMENTATION: Once the user is on this page, the user will be able to see their current information. He/she will be able to change the information. The information changed will be checked for validity and once its confirmed the information will get changed.
3.4) MODULE 4
NAME: Market Watch TYPE: Function DESCRIPTION: This function is used to show information of the companies selected by the user. User can select at maximum 20 companies in which he is interested.
IMPLEMENTATION: User selects the company he/she wants to keep an eye on. Informations displayed in market watch are: Company Name and its shares, net change, its high and low market price of that particular day. If there is already enough companies (predefined by the system) and user adds another company to the market watch, it will display error information.
3.5) MODULE 5
NAME: All Shares List TYPE: Function DESCRIPTION: This function will include list of all shares of the companies that are provided by the system. This module is same as the market watch in functionality; difference is that in market watch user can keep track of his/her favorite companies while in this module all company shares are present. System updates these shares information in every few seconds. IMPLEMENTATION: The function will show list of all shares of companies. Information in this module: Symbol of share, Company name, Last price, Change, High, Low, volume.
3.6) MODULE 6
NAME: Order Book TYPE: Function DESCRIPTION: This function will allow the user to buy and sell shares .This order book is basically used to record the interest of buyers and sellers in a particular financial instrument (shares here). IMPLEMENTATION: The user will be able to view the orders, place a new order. In order to place an order, the user will enter the required information. The information will be checked for validity and if it is valid the order will be placed or else the user will be asked to enter the information again.
3.7) MODULE 7
NAME: Trade History TYPE: Function
DESCRIPTION: This function will show all the transactions made by the user. IMPLEMENTATION: By selecting the trade history option user can view his/her transactions. This use case model contains the information of purchasing and selling of all shares that are made by user.
3.8) MODULE 8
NAME: User Portfolio TYPE: Function DESCRIPTION: This function is used to display information of shares that are currently being held by user. This is called the stock portfolio of an individual.
IMPLMENTATION: The user log in the account. Click on current holding option on home page. System maintains a list of current holdings of user. User can see the list. If there is an error retrieving the information, the system should display error message.
3.9) MODULE 9
NAME: Forgot Password TYPE: Function DESCRIPTION: In case the user has forgot the password to his profile then this functionality will help the user to recover his password on his DA-IICT webmail id. IMPLEMENTATION: User will click on the forgot password link and then enter his user-id then a mail will be automatically send to his DA-IICT webmail id. No need of separate e-mail id here, because the user-id is the same as the DA-IICT student ID.
3.10) MODULE 10
NAME: Log Out TYPE: Function DESCRIPTION: Log-out is used to end users session and takes him/her to the log in page. IMPLEMENTATION: The system provides with a log out option, User select that option. System saves all changes made by the user. The user is redirected to log in page. If there is connection failure, error message is displayed.
Software Testing
1.2 References:
Rational Unified Process. IEEE 829-2008System Test Plan Format. Template by Cancer Biomedical Informatics Grid.
Requirements analysis phase is completed. First draft of user requirements and data collected from questionnaire are formally specified. Test cases and test scripts are produced. For unit testing, formal use cases are developed and checked against it. For integration testing, we assume developers team has completed unit testing and they are working according to the requirements specified. Test team provided required guidance to developers.
Developer will receive consolidated list of request for test environment set up, user accounts set up, data set (actual and mock data), defect list, etc. Developer and Test team is well co ordinated and organizes meetings to address any testing related issues. Test Scripts are approved by Test Team leader before using for testing. Developers should be provided with related and valid data (actual and imitation data) to carry out basic testing. The Developer cannot execute the User Acceptance and End to End test scripts. After debugging, the developer can conduct their internal test, but no results from that test can be recorded / reported.
According to the SRS developed and the requirements specified following items are to be testing in the given test schedule. Registration Procedure Password Recovery Facility Virtual Money Allocation Market Watch details Shares Types and their facilities Points Calculation Ranking System Trading History Shares Values Working of marginal trading Order Book Confidentiality and Security issues related personal shares and orders Allocation of shares after buying and deletion of money from total available
and check whether the output produced is as desired by end user. For effective results, this mostly carried out by the end users. This testing is done at different levels of abstraction i.e. performance of specific sub area or a module, or the whole page and finally the overall application.First step of usability testing is to identify a set of usability categories and establish testing objectives for each category.
Unit testing should be completed before coming to this phase. All components should be integrated using bottom up or top down approach. And then the system all together should be checked.
Test Deliverables:
Specific Deliverables are produced during the testing phase. We can divide them in three basic categories 1) Documents, 2) Test Case, 3) Reports Each deliverable has its own requirements and dependencies without which it is difficult to complete the deliverable.
Specify the approach we are going to use to test the product, and the deliverables. It helps us to think through the efforts needed to validate the acceptability of a software product. It includes test cases, conditions, and the test environment, a list of related tasks, pass/fail criteria, and risk assessment. Specify the procedures to be used for testing sign-off and product release. List the resource and scheduling plans.
4.3 Reports:
A final Test Report will be issued by the test leader.
5.2 Software
MS-Office 2007 Professional, Windows 2003 are our software requirements. These are the minimum software requirements for our system.
Error Prediction, Validity of the Input provided, Interference from other processes, unexpected interruptions, etc need to be take care of. So they are checked before
members would help to decide about the result. In some cases, the test case goes wrong if it is tested repeatedly, in that case you cant show it to others. So, these comments should be included in bug reports. Some test cases fail across platforms and we should report clearly the platform on which the passed or failed. Some test cases fails during re check after some days and if this happens testing team should figure out the problem. Everyone should report and explain the bug clearly for other members to understand about the result of test case.
6. Acceptance Criteria:
Result of all test cases should be PASSED i.e., output of each component should be equal to the expected result. All web pages should follow the flow as specified in use case model. Performance requirements should be met. All bugs expected should be tackled. Proper documentation with user manual and help should be provided.
Test Cases
1. Login:Test ID Test Objective User category Environmental needs Steps of execution Expected Output Pass/Fail Criteria Login To successfully login into the user account All Browser, Web server and database server 1) User open the home page of the website 2) User clicks on the login button without entering any information Please fill the username and password fields to login Fail
Expected Output Pass/Fail Criteria Test ID Test Objective User category Environmental needs Steps of execution
Login To successfully login into the user account All Browser, Web server and database server 1) User open the home page of the website 2) User enters incorrect username and/or password 3) User clicks on the login button Incorrect username or password. Please try again. Fail Login To successfully login into the user account All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the Login option 3) User enters correct information of username and password (Login successful) User sees his/her profile. Pass
2. Register
Test ID Test Objective User category Environmental needs Steps of execution Register To successfully register a new user All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the register option 3) User fills the form partially 4) User clicks on the submit button without entering some necessary information Please fill the necessary field those are marked by * Fail
Register To successfully register a new user All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the register option 3) User fills the form partially 4) User inputs correct information and dont check the terms and conditions box and clicks on submit button. Accept the terms and conditions first Fail
Register To successfully register a new user All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the register option 3) User fills the form partially 4) User enters username that is already registered. Please choose a different username, username already exists Fail
Register To successfully register a new user All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the register option 3) User fills the form partially 4) User enters correct information and accepts the terms and conditions User profile created successfully Pass
3. Forgot Password
Test ID Test Objective User category Environmental needs Steps of execution Forgot Password
To successfully recover the users password. All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the Forgot Password option 3) User is taken to the Forgot Password form 4) User clicks on GO without entering E-mail ID. Enter E-mail ID. Fail
Test ID Test Objective User category Environmental needs Steps of execution Expected Output
Forgot Password
Forgot Password_run2 To successfully recover the users password. All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the Reset Password option 3) User is taken to the reset password form 4) User gives a valid username, and an invalid email id. Invalid email id.
Forgot Password
To successfully recover the users password.
All Browser, Web server and database server 1) User open the home page of the website 2) User chooses the Forgot Password option 3) User is taken to the Forgot Password form 4) User entered da-iict email id. The password is sent to the e-mail id. Pass
4. Order Book:Test ID Test Objective User category Environmental needs Steps of execution Order book To successfully place an order(buy/sell) All Browser, Web server and database server 3) User opens the home page of the website 4) User logs in 5) User chooses the order book option 6) User does not enter at most one mandatory field and hit the buy/sell option. Please fill the necessary field those are marked by * Fail Order book To successfully place an order(buy/sell) All Browser, Web server and database server 1) User opens the home page of the website 2) User logs in 3) User chooses the order book option 4) User chooses order type stop-loss and doesnt enter trigger price and hit the buy/sell option. Please enter the trigger price as you have chosen order type stop-loss Fail
Expected Output Pass/Fail Criteria Test ID Test Objective User category Environmental needs Steps of execution
Order book To successfully place an order(buy/sell) All Browser, Web server and database server 1) User opens the home page of the website
Expected Output Pass/Fail Criteria Test ID Test Objective User category Environmental needs Steps of execution
2) User logs in 3) User chooses the order book option 4) User select shares such that his buying amount exceeds balance amount and click on buy button. You dont have enough balance to buy that many shares. Please re-enter no of shares. Fail Order book To successfully place an order(buy/sell) All Browser, Web server and database server 1) User opens the home page of the website 2) User logs in 3) User chooses the order book option 4) User fills all necessary fields and buy shares amount does not exceeds the balance amount and click on buy/sell button. Order placed successfully. Pass
5. Market Watch:Test ID Test Objective User category Environmental needs Steps of execution Market watch To successfully select shares for market watch All Browser, Web server and database server 1) User opens the home page of the website 2) User logs in 3) User chooses the market watch option 4) User selects create list option and does not enter list name and click on create list button. Please enter the name of the list you are creating: This field is mandatory Fail
Market watch To successfully select shares for market watch All Browser, Web server and database server 1) User opens the home page of the website 2) User logs in 3) User chooses the market watch option 4) User selects create list option and selects more than 20
companies for the list. Please select less than 20 shares Fail
Market watch To successfully select shares for market watch All Browser, Web server and database server 1) User opens the home page of the website 2) User logs in 3) User chooses the market watch option 4) User selects create list option, enters the list name and selects less than 20 companies for the list. List created successfully, and displays created list. Pass
Test Report
1. Introduction
Software testing is the process used to help identify the correctness, quality, security, complying by the standards, and completeness of the software that is developed during the course of the project. It ensures that the defect (loopholes) isnt present in the software. Also the features are explored so as to find the correctness of the functionality it provides. Also we can ensure that modules when integrated works correctly.
1.1
Purpose
Main motto of Software testing is to identify the defects in the working of the software and correcting it. It enhances quality of the software, as it reduces the defects and the errors that have crept in one or more modules during the coding phase and hasnt been detected till testing phase. Testing is also required because it is indication of whether the software we have generated is reliable and of high class. Also checked is the functionality, whether they respond as mentioned in specifications.
1.2
Scope
This test report consists of the summary of the tests that were performed on our system Dabba Market. The cases mentioned in the Test Cases document were applied on the system.
1.3
References
1.3.1 Test Cases 1.3.2 System test plan.
A unit test is a procedure used to validate that a particular module of source code is working properly. Test cases were written for all the functionalities and methods so that whenever a deviation from its expected behavior, it was quickly identified and fixed. This testing was done only by the developers and not by the end users. The goal was to isolate each module of the program and verify that the individual module was functioning correct.
2.2
Integration Testing
This consists of testing of integrated module of an application to determine if they function correctly together. Modules are added and then checked for each of their functionality, so that error can be found out immediately and we can know the module that contains the bug.
2.3
System Testing
System testing is carried out on a complete with all modules integrated to evaluate its compliance with the specified requirements in System Requirements Specification (SRS) document. It requires no knowledge of the code or the inner logic of the software, considering it as a black box, it is used from users perspective and checked out for any faults or errors that pop up.
3. Test Summary Login:Test ID Test Objective User category Environmental needs Steps of execution Expected Output Pass/Fail Criteria Test Result Pass/Fail
Login_run1
To successfully login into the user account All Browser, Web server and database server 7) User open the home page of the website 8) User clicks on the login button without entering any information Please fill the username and password fields to login Fail Passed
Login_run2 To successfully login into the user account All Browser, Web server and database server 4) User open the home page of the website 5) User enters incorrect username and/or password 6) User clicks on the login button Incorrect username or password. Please try again.
Expected Output
Fail Passed
Login_run3 To successfully login into the user account All Browser, Web server and database server 4) User open the home page of the website 5) User chooses the Login option 6) User enters correct information of username and password (Login successful) User sees his/her profile. Pass Passed
Register:Test ID Test Objective User category Environmental needs Steps of execution Register_run1 To successfully register a new user All Browser, Web server and database server 5) 6) 7) 8) User open the home page of the website User chooses the register option User fills the form partially User clicks on the submit button without entering some necessary information
All Browser, Web server and database server 5) 6) 7) 8) User open the home page of the website User chooses the register option User fills the form partially User inputs correct information and dont check the terms and conditions box and clicks on submit button.
Register_run3 To successfully register a new user All Browser, Web server and database server 5) 6) 7) 8) User open the home page of the website User chooses the register option User fills the form partially User enters username that is already registered.
Register_run4 To successfully register a new user All Browser, Web server and database server 5) User open the home page of the website 6) User chooses the register option 7) User fills the form partially 8) User enters correct information and accepts the terms and conditions User profile created successfully Pass
Passed
Forgot Password:Test ID Test Objective User category Environmental needs Steps of execution Forgot Password_run1 To successfully recover the users password. All Browser, Web server and database server 5) User open the home page of the website 6) User chooses the Forgot Password option 7) User is taken to the Forgot Password form 8) User clicks on GO without entering E-mail ID. Enter E-mail ID. Fail Passed
Forgot Password_run2 To successfully recover the users password. All Browser, Web server and database server 5) User open the home page of the website 6) User chooses the Reset Password option 7) User is taken to the reset password form 8) User gives a valid username, and an invalid email id. Invalid email id. Fail Passed
Test ID
Forgot Password_run3
To successfully recover the users password. All Browser, Web server and database server User open the home page of the website User chooses the Reset Password option User is taken to the reset password form User gives a valid E-mail ID and an email id containing his password is sent to that E-mail ID. The password is sent to the e-mail id. Pass Passed 1) 2) 3) 4)
Order Book:Test ID Test Objective User category Environmental needs Steps of execution Order book_run1 To successfully place an order(buy/sell) All Browser, Web server and database server User opens the home page of the website User logs in User chooses the order book option User does not enter at most one mandatory field and hit the buy/sell option. Please fill the necessary field those are marked by * Fail Passed 9) 10) 11) 12)
Order book_run2 To successfully place an order(buy/sell) All Browser, Web server and database server
Steps of execution
User opens the home page of the website User logs in User chooses the order book option User chooses order type stop-loss and doesnt enter trigger price and hit the buy/sell option. Please enter the trigger price as you have chosen order type stop-loss Fail Passed
5) 6) 7) 8)
Order book_run3 To successfully place an order(buy/sell) All Browser, Web server and database server User opens the home page of the website User logs in User chooses the order book option User select shares such that his buying amount exceeds balance amount and click on buy button. You dont have enough balance to buy that many shares. Please re-enter no of shares. Fail Passed 5) 6) 7) 8)
Expected Output
Order book_run4 To successfully place an order(buy/sell) All Browser, Web server and database server 5) 6) 7) 8) User opens the home page of the website User logs in User chooses the order book option User fills all necessary fields and buy shares amount does not exceeds the
balance amount and click on buy/sell button. Order placed successfully. Pass Passed
Market Watch:Test ID Test Objective User category Environmental needs Steps of execution Market watch_run1 To successfully select shares for market watch All Browser, Web server and database server User opens the home page of the website User logs in User chooses the market watch option User selects create list option and does not enter list name and click on create list button. Please enter the name of the list you are creating: This field is mandatory Fail Passed 5) 6) 7) 8)
Market watch_run2 To successfully select shares for market watch All Browser, Web server and database server
Steps of execution
User opens the home page of the website User logs in User chooses the market watch option User selects create list option and selects more than 20 companies for the list. Please select less than 20 shares Fail Passed
5) 6) 7) 8)
Market watch_run3 To successfully select shares for market watch All Browser, Web server and database server User opens the home page of the website User logs in User chooses the market watch option User selects create list option, enters the list name and selects less than 20 companies for the list. List created successfully, and displays created list. Pass Passed 5) 6) 7) 8)
4. Defect results:Total number of test cases: 17 Total number of successful test Cases:17 Total number of test Cases failed: 0
Conclusion
Document Name: Risk Analysis and Management
Reviewer: Sunil Kumar Baithadiya
The following things were checked in the Risk Analysis and Management document: All risks are covered. Mitigation, monitoring and management corresponding to the risks are correct. Probability and impact of risk are correct as best of our knowledge. We forgot to write the mitigation, management and monitoring for the risk of difficulty in coping with schedule. A new risk was added in the other version which is lack of full participation from the team members. The mitigation, monitoring and management of the risk were included in the new version.
In the Trade History table three attributes were added. Other than this, in all the tables, the datatype of the attributes were changed. For e.g. INT(7) was changed to INT(10). Script was given the datatype of VARCHAR(10). All the changes have been accommodated in the latest version of System Design Document i.e. in version_2.
All the other test cases where appropriate and needed no modifications. The errors found are listed in the above points. They are modified and the changes have been accommodated in the later version of the test cases.
Agenda In introduction it is mentioned that users are given real time experience of trading in the market, but actually it is only semi-real because we consider user as standalone entity and there wouldnt be any effect on prices of shares based on the trading of the user. In the section What we are not going to do:, we have added the point the prices of the Real Stock Exchange wouldnt change based on the trading of the user considering it has zero effect. In Assumptions: we have one more assumption that user of our website will have no effect on real trading prices.
All the other points covered in this document still holds true. Some of the changes that were made in the document are mentioned above. The changes were accommodated in the Version 2 of this document.
Remaining topics still remain good to the system that is built. The above errors or modifications have been accommodated in the Ver_2 of this Project Plan document.
The system features are explained in detail with use case model. The user info, ranking and holding were a different feature initially which was
removed. But still the ranking, info and holdings will be available
The system is said to be a semi-real experience of stock market now as the users
buying or selling capacity wont affect our system.
The user classes were lately categorized to students, faculty and staff which was
updated
other points and features mentioned are same which hold true The above changes are made to SRS v2.0
SNAP SHOTS:
Registration Page
Login Page
Access Denied
Future Prospect:
We intend to develop an online game that addresses the problem stated above. We aim to provide our users with the semi-real time (because of the reason mentioned in introduction) market experience without staking their money. We intend to achieve this by providing the virtual trading ground to our users with a sum of fixed virtual money and all the key features that shall help them trade efficiently and also at the same time provide them the opportunity to learn about the market and associated technicalities. This project is basically for beginners who do not have any knowledge of share market. This project values their ideas and they can implement their ideas without the stake of money. We have added almost all the features of share market that will help them a lot. At present this project is virtual but if any company gives a domain to this project then no modifications are required for this project.
References
1. 2. 3. 4. www.google.com www.w3schools.com Xamp Guide Reference: Beginner to Intermediate PHP5