Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
by
Prashant Kr. Mittal Afsar Husain Raj Kumar Saroj Pulkit Agarwal
November, 2011-2012
iStockFolio
by
Submitted to the Department of Computer Science & Engineering in partial fulfillment of the requirements for the degree of Bachelor of Technology in Computer Science & Engineering
DECLARATION
We hereby declare that this submission is our own work and that, to the best of our knowledge and belief, it contains no material previously published or written by another person nor material which to a substantial extent has been accepted for the award of any other degree or diploma of the university or other institute of higher learning, except where due acknowledgment has been made in the text.
Signature: Name :
Signature: Name :
Signature: Name :
Signature: Name : 3
CERTIFICATE
4
This is to certify that Project Report entitled iStockFolio which is submitted by Prashant Mittal, Pulkit Agarwal, Raj Kumar Saroj, Afsar Husain in partial fulfillment of the requirement for the award of degree B. Tech. in Department of Computer Science & Engineering of U. P. Technical University, is a record of the candidate own work carried out by him under my/our supervision. The matter embodied in this thesis is original and has not been submitted for the award of any other degree.
Supervisor Date
ACKNOWLEDGEMENT
5
It gives us a great sense of pleasure to present the report of the B. Tech Project undertaken during B. Tech. Final Year. We owe special debt of gratitude to Ms. Ankita Thakur, Department of Computer Science & Engineering, J.S.S. Academy of Technical Education, Noida for his constant support and guidance throughout the course of our work. His sincerity, thoroughness and perseverance have been a constant source of inspiration for us. It is only his cognizant efforts that our endeavors have seen light of the day. We also take the opportunity to acknowledge the contribution of Professor Seema Shukla, Department of Computer Science & Engineering, J.S.S. Academy of Technical Education, Noida for his full support and assistance during the development of the project. We also do not like to miss the opportunity to acknowledge the contribution of all faculty members of the department for their kind assistance and cooperation during the development of our project. Last but not the least, we acknowledge our friends for their contribution in the completion of the project.
Signature: Name :
Signature: Name :
Signature: Name :
Roll No.: 6
Date
Signature: Name :
ABSTRACT
7
People who invest their money in stocks, wants to get them updated with current prices but due to their busy schedule they cant visit different sites. Surfing these sites through browser is time consuming & costly. The application iStockFolio help the users of android phone to get the daily changes of the stock rates without visiting different sites and it also saves the time and money. Using this application people can get the same updates of the stocks which they may get by visiting different sites but in less time. iStockFolio application needs less data and takes less time to display the updates of the stocks which are added by the user in the application. Through this application user easily can get the updates of the stock thus increasing the performance in stock market. The application is developed in java using android framework. It uses XML for UI and string definition. Thus using istockFolio will lead to faster and less costly stock updates even when the user is not accessing the applicati
TABLE OF CONTENTS
DECLARATION ................................................................................................... CERTIFICATE ..................................................................................................... ACKNOWLEDGEMENTS .................................................................................. ABSTRACT ........................................................................................................... LIST OF TABLES.................................................................................................. LIST OF FIGURES................................................................................................ LIST OF SYMBOLS .............................................................................................. LIST OF ABBREVIATIONS ................................................................................ CHAPTER 1 1.1. ................................................................................................................. 1.2. ................................................................................................................. CHAPTER 2 . ......................................................... 2.1. .................................................................................................................. 2.2. .................................................................................................................. 2.2.1. ......................................................................................................... 2.2.2. ......................................................................................................... 2.2.2.1. ................................................................................................ 2.2.2.2. .......................................................................................... 2.3. ................................................................................................................. CHAPTER 3 .......................................................... 3.1. ................................................................................................................ 3.2. ................................................................................................................ 9
Page
40 45 47 49
10
LIST OF TABLES
11
LIST OF FIGURES
12
LIST OF SYMBOLS
[x] _ _o
Integer value of x. Not Equal Belongs to Euro- A Currency Optical distance Optical thickness or optical half thickness
13
LIST OF ABBREVIATIONS
XML UI
14
CHAPTER 1 INTRODUCTION
During the early 1990s, stock exchange transactions were done using the phone through brokers. Using phones introduced many inconveniences due to long waiting times and busy lines. Moreover, the availability of the customer monitoring the stocks on the spot was a necessity to perform the transactions. Later on, and as internet use grew widely, stock markets users shifted to performing their transactions live online. Despite the fact that this shift has reduced the inconveniences of using the phone, the customer still had to be locked to his/her desk monitoring the stock market online to perform the transaction. iStockFolio has a friendly and easy to use graphical user interface that allows the users to create portfolios for the preferred stocks. The user can then retrieve the selected portfolio; hence, downloading only the few bytes constituting the required information. iStockFolio is based on client-server architecture. The server will provide all required stock information, such as live data and graphs.
1.1.
Problem Introduction
The problem statement can be defined as, what is the need of regularly visiting different website for stock details when one can see all the latest updates and change in the prices in ones phone (Android enabled) which is more systematic, user friendly, convenient and portable.
1.1.1. Motivation
15
Nowadays, and with the expansion of mobile technologies, customers can get a better alternative. Customers can have access to the internet anywhere anytime on the run using a GPRS connection. Since the customer is charged per Kbytes, the GPRS connection becomes very costly with every access to a website like Dubais Financial Market containing a plenty of data to download. Additionally, with a normal GRPS connection, if the customer is interested in stock information from different stock markets, he/she has no other choice but browsing through each website. This solution is costly, time consuming, inconvenient; in addition to this, the customers stocks of interest might be only few out of all the stocks available at the website. We are developing a mobile application to efficiently monitor and track stocks. The application consists of a client, placed on the mobile phone that connects to a server via GPRS or Wi-Fi. The server connects to the financial markets via the web, collects the latest stock information, filters out unnecessary information, and stores it in a local database.
To build up a user friendly android based application which provides the facility of selecting desired stocks and can display current updates of selected stocks. To achieve automatic synchronization of the application with the internet to fetch updated data. To notify user when a share price has crossed its bid value. To do updates with downloading small amount of data in lesser time without the need to download data from various sites in large amount. To display the current status of the share in a graph by using its current prices and earlier performance.
16
Thus the objectives of this application are to provide necessary information of desired stocks about their current prizes in less time, less cost and in a convenient way.
iStockFolio provides a friendly and easy to use graphical user interface that allows the users to create portfolios for the preferred stocks. The user can retrieve the selected portfolio hence, downloading only the few bytes constituting the required information. In turn, this process Reduces the connection costs significantly and Provides a faster screen refresh rate, as the number of bytes downloaded will be reduced.
Stocks Portfolio is a stock application that enables the user to access and manage information of any stock anywhere, anytime. Like any stock application on PC or on the Web, Stocks Portfolio lets the user: Add stocks (store stock symbols on a phone) Delete stock(s) (remove stock symbols) View live information of selected stocks, such as current high price, low price, volume, etc. User can also view the charts related to the stock symbols for which you want to see.
The application also provides currency convertor which can convert all the major currencies into one another thus providing the user can value stocks in their own currencies.
User can add bids for shares for which he/she wants to receive information.
17
The application will synchronize with the internet and fetch current values of the shares and will notify user accordingly.
This application is targeted towards Android platform. Application must synchronize with internet. Memory needed is 128MB RAM (min.); 256MB Flash External.
16-bit color or better, QVGA TFT LCD or larger of display required.
Currency Converter. Notification of updates occurring in the stocks rate. Application will be synchronized with the internet. 1.1.6. User interface priorities
Stock selection criteria is a strategy in which stock investor uses a systematic form of analysis to determine if a particular stock constitutes a good investment and should be added to their portfolio. So adding the stock and making portfolio is important for the investor but user can set alerts and receive a notification in the phone when a stock price hits a specified target defined by the user. This will maximize the total return and minimize the risk.
1.2.
Most of the available applications are meant for other operating systems. Some available for the ANDROID OS are for the US-only. Most famous application is Google Finance for android phones but it is for the US people. Applications available for Android OS are useful but they are for the earlier versions of OS.
None of the application notifies the user for the update of the stocks. There are so many options are available for the desktop users to use such applications but again investor has take their device with them which is not possible.
19
Chapter 1 describes brief description about the problem statement, the technologies that will be used for developing the application like JAVA, XML, Android OS and prototype.
Chapter 2 is the Software Requirement Specification. It includes all the requirements of the project like hardware requirements, software requirements and constraints. It also includes a set of use cases and sequence diagram which shows all the interactions user will have with the software.
Chapter 3 includes the process of defining the architecture, components, modules, interfaces and data for the system to satisfy specified requirements. Chapter 4 includes the conclusion and description of what is achieved till now. It contains the screenshots of developed modules and the agenda of next semester.
CHAPTER 2
20
General factors that affect the requirement of the project are the availability of internet, compatible version of android OS, mobile hardware requirements as enough RAM to support the application, resolution, ARM based chipset etc.
The application iStockFolio is meant for the users who want to invest more and more in the stocks and dont have much time to keep eye on the changes occurring in the stock market. Functionality which make this product more useful as compared to other related products are such as there is an option of biding means that user can also bid on the selected products so that user can get the idea of changes on the stock market and user can get the notification of the changes occurring in the stocks and user can set the upper and lower limit of the stock on which they want the notification. So these extra features makes this application more valuable for the users and by these extra features users are going to have much interaction with the stock market and can increase their profit and percent of investment money. This application not only saves the time but also help the investors to get more knowledge of the different stocks in limited time.
2.1.2 Interfaces
21
This application is based on the GUI by which it interacts with the users. It runs on the Android OS. Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
The following requirements are necessary for the android based mobile.
Feature
Notes
Chipset
For the first release, Android is primarily targeted towards mobile handsets and portions of the platform, such as Dalvik VM graphics processing, currently assume an ARM architecture.
Memory
128 MB RAM; 256 MB Android can boot and run in configurations with Flash External less memory, but it isn't recommended. Mini or Micro SD Not necessary recommended. for basic bring up, but
Storage
Primary Display
QVGA TFT LCD or The current Android interface targets larger, 16-bit color or based HVGA resolution display with better interface no smaller than 2.8 inches However, smaller displays will suffice porting.
22
The sections below describe the system and software requirements for developing Android applications using the Android SDK. Supported Operating Systems
o o o
Windows XP (32-bit), Vista (32- or 64-bit), or Windows 7 (32- or 64-bit) Mac OS X 10.5.8 or later (x86 only) Linux (tested on Ubuntu Linux, Lucid Lynx) GNU C Library (glibc) 2.7 or later is required. On Ubuntu Linux, version 8.04 or later is required. 64-bit distributions must be capable of running 32-bit applications. For information about how to add support for 32-bit applications, see the Ubuntu Linux installation notes
Eclipse 3.6 (helios) or greater Eclipse JDT plugin (included in most Eclipse IDE packages)
o o
Eclipse Classic (versions 3.5.1 and higher) Eclipse IDE for Java EE Developers
JDK 5 or JDK 6 (JRE alone is not sufficient) Android Development Tools plugin (recommended) Not compatible with Gnu Compiler for Java (gcj)
This is an online application which fetches data from internet. To run this application, an Android enabled phone is required. This application sends a HTTP request to predefined sites fetches data and show these data in a familiar way to the user.
23
There is a need of 128 MB RAM; 256 MB Flash External. Android can boot and run in configurations with less memory, but it isn't recommended.
2.1.7 Operations
Specify the normal and special operations required by the user such as: (1) The various modes of operations in the user organization (2) Periods of interactive operations and periods of unattended operations (3) Data processing support functions (4) Backup and recovery operations
(Note: This is sometimes specified as part of the User Interfaces section.) If you separate this from the UI stuff earlier, then cover business process type stuff that would impact the design. For instance, if the company brings all their systems down at midnight for data backup that might impact the design. These are all the work tasks that impact the design of an application, but which might not be located in software.
In this section: (1) Define the requirements for any data or initialization sequences that are specific to a given site, mission, or operational mode (2) Specify the site or mission-related features that should be modified to adapt the software to a particular installation
24
If any modifications to the customers work area would be required by your system, then document that here. For instance, A 100Kw backup generator and 10000 BTU air conditioning system must be installed at the user site prior to software installation. This could also be software-specific like, New data tables created for this system must be installed on the companys existing DB server and populated prior to system activation. Any equipment the customer would need to buy or any software setup that needs to be done so that your system will install and operate correctly should be documented here.
Provide a summary of the major functions that the software will perform. Sometimes the function summary that is necessary for this part can be taken directly from the section of the higher-level specification (if one exists) that allocates particular functions to the software product.
For clarity: (1) (2) The functions should be organized in a way that makes the list of functions Textual or graphic methods can be used to show the different functions and their
understandable to the customer or to anyone else reading the document for the first time. relationships. Such a diagram is not intended to show a design of a product but simply shows the logical relationships among variables.
AH, Finally the real meat of section 2. This describes the functionality of the system in the language of the customer. What specifically does the system that will be designed have to do? Drawings are good, but remember this is a description of what the system needs to do, not how you are going to build it. (That comes in the design document).
Describe those general characteristics of the intended users of the product including educational level, experience, and technical expertise. Do not state specific requirements but rather provide the reasons why certain specific requirements are later specified in section 3.
What is it about your potential user base that will impact the design? Their experience and comfort with technology will drive UI design. Other characteristics might actually influence internal design of the system.
2.4 Constraints
Provide a general description of any other items that will limit the developer's options. These can include:
(1) Regulatory policies (2) Hardware limitations (for example, signal timing requirements) (3) Interface to other applications (4) Parallel operation (5) Audit functions (6) Control functions (7) Higher-order language requirements (8) Signal handshake protocols (for example, XON-XOFF, ACK-NACK) (9) Reliability requirements (10) Criticality of the application (11) Safety and security considerations
26
This section captures non-functional requirements in the customers language. presentation of these will occur in section 3.
A more formal
List each of the factors that affect the requirements stated in the SRS. These factors are not design constraints on the software but are, rather, any changes to them that can affect the requirements in the SRS. For example, an assumption might be that a specific operating system would be available on the hardware designated for the software product. If, in fact, the operating system were not available, the SRS would then have to change accordingly.
This section is catch-all for everything else that might influence the design of the system and that did not fit in any of the categories above.
Identify requirements that may be delayed until future versions of the system. After you look at the project plan and hours available, you may realize that you just cannot get everything done. This section divides the requirements into different sections for development and delivery. Remember to check with the customer they should prioritize the requirements and decide what does and does not get done. This can also be useful if you are using an iterative life cycle model to specify which requirements will map to which interation.
27
2.7.
Use case
28
2.7.3 Use Case Scenario (Following details can be provided for a use case scenario)
Use Case Element Use Case Number Application Use Case Description Primary Actor Precondition Trigger Basic Flow
Description ID to represent your use case What system or application does this pertain to
Use Case Name The name of your use case, keep it short and sweet Elaborate more on the name, in paragraph form. Who is the main actor that this use case represents What preconditions must be met before this use case can start What event triggers this use case The basic flow should be the events of the use case when everything is perfect; there are no errors, no exceptions. This is the "happy day scenario". The exceptions will be handled in the "Alternate Flows" section. Alternate Flows The most significant alternatives and exceptions
29
Sequence diagrams:
30
31
System Design should include the following sections (Refer each figure or table in some text). Figure number should be provided below the figure and the table numbering should be provided above the table.
Architecture diagrams
STOCK DETAILS
APPLICATION
Notifications And Stock Details
HTTP REQUEST
WEB
SQLITE DATABASE
USER
32
Class diagrams
USER
Details
iStockfolio Application
INTERNET
Details
Stock Name DB
WEB
Stock Name DB
User
Add Stock Bid
WEB
Stock Ticker DB
WEB
Convert Currency
Exchange Rate
DB
3.2.Activity Diagram
34
35
CHAPTER 4 Conclusion
Should clearly state the agenda for the next semester (by means of PERT chart).
36
37
38
39
Appendix
If there is material that should be in the project report but which would break up the flow or bore the reader unbearably, include it as an appendix. Some things which are typically included in appendices are: important and original computer programs, data files that are too large to be represented simply in the results chapters, pictures or diagrams of results which are not important enough to keep in the main text. Thus in the appendix, one may include 1. All data used in the report 2. Reference data/materials not easily available 3. Tables (where more than 1-2 pages) 4. Calculations (where more than 1-2 pages) 5. All key articles 6. List of all additional resource materials 7. List of equipment used for an experiment or details of complicated procedures.
8. In case of more than one appendix , they should be numbered as Appendix A, Appendix B etc
40
REFERENCES
1. 2. 3.
Merier Reto, Wrox Professional Android 2 Application Development, New York, 2005. Wallace Jackson, Android Apps for Absolute Beginners, Appress, March 2011 Android Developer Official Forum, Development Guide, December 2005,
http://developer.android.com/guide/index.html
4.
Android
Group,
Android
Developers:,
December
2005,
http://groups.google.com/group/android-developers
41