Automatic Share Transaction .Net Application

Embed Size (px)

Citation preview

  • 8/2/2019 Automatic Share Transaction .Net Application

    1/144

    www.final-yearproject.com | www.finalyearthesis.com

    A PPROJECT REPORT ON

    AUTOMATIC SHARE TRANSACTION SYSTEM

    ORGANIZATION PROFILE

    Software Solutions is an IT solution provider for a dynamic

    environment where business and technology strategies converge. Theirapproach focuses on new ways of business combining IT innovation and

    adoption while also leveraging an organizations current IT assets. Their

    work with large global corporations and new products or services and to

    implement prudent business and technology strategies in todays

    environment.

    XxxxxxxsRANGE OF EXPERTISE INCLUDES:

    Software Development Services

    Engineering Services

    Systems Integration

    Customer Relationship Management

    Product Development

    Electronic Commerce

    Consulting IT Outsourcing

    We apply technology with innovation and responsibility to achieve two

    broad objectives:

  • 8/2/2019 Automatic Share Transaction .Net Application

    2/144

    www.final-yearproject.com | www.finalyearthesis.com

    Effectively address the business issues our customers face today.

    Generate new opportunities that will help them stay ahead in the

    future.

    THIS APPROACH RESTS ON:

    A strategy where we architect, integrate and manage technology

    services and solutions - we call it AIM for success.

    A robust offshore development methodology and reduced demand

    on customer resources.

    A focus on the use of reusable frameworks to provide cost and

    times benefits.

    They combine the best people, processes and technology to achieve

    excellent results - consistency. We offer customers the advantages of:

    SPEED:

    They understand the importance of timing, of getting there before

    the competition. A rich portfolio of reusable, modular frameworks helps

    jump-start projects. Tried and tested methodology ensures that we

    follow a predictable, low - risk path to achieve results. Our track record

    is testimony to complex projects delivered within and evens before

    schedule.

  • 8/2/2019 Automatic Share Transaction .Net Application

    3/144

    www.final-yearproject.com | www.finalyearthesis.com

    EXPERTISE:

    Our teams combine cutting edge technology skills with rich

    domain expertise. Whats equally important - they share a strong

    customer orientation that means they actually start by listening to the

    customer. Theyre focused on coming up with solutions that serve

    customer requirements today and anticipate future needs.

    A FULL SERVICE PORTFOLIO:

    They offer customers the advantage of being able to Architect,

    integrate and manage technology services. This means that they can

    rely on one, fully accountable source instead of trying to integrate

    disparate multi vendor solutions.

    SERVICES:

    Xxx is providing its services to companies which are in the field ofproduction, quality control etc with their rich expertise and experience

    and information technology they are in best position to provide software

    solutions to distinct business requirements.

  • 8/2/2019 Automatic Share Transaction .Net Application

    4/144

    www.final-yearproject.com | www.finalyearthesis.com

    ABSTRACT

    Introduction:

    The objective of this application is to automate the process of Buying

    and Selling of Shares over internet. In general we should approach

    the Share Brokers for these transactions and they are going to

    charge some minimal amount for each transaction. To avoid this

    payment to the Brokers the users can register to the portal directly

    and can do their own transaction without any other Brokers

    interaction.

    This web application is accessible for registered users only can do

    their own transactions over internet. For the transactions they need

    not to pay any amount to any Brokers. Using this web application

    the authorized users can buy and sell the shares. All these

    transactions will be stored as History for the users reference. While

    performing the transactions the users must provide their secondary

    authentication details as cross verification.

  • 8/2/2019 Automatic Share Transaction .Net Application

    5/144

    www.final-yearproject.com | www.finalyearthesis.com

    Preface

    Table of Contents

    1. INTRODUCTION

    1.1 INTRODUCTION TO PROJECT

    1.2 ORGANIZATION PROFILE

    1.3 PURPOSE OF THE SYSTEM

    1.4 PROBLEMS IN EXISTING SYSTEM

    1.5 SOLUTION OF THESE PROBLEMS

    2. SYSTEM ANALYSIS

    2.1 INTRODUCTION

    2.2 ANALYSIS MODEL

    2.3 STUDY OF THE SYSTEM

    2.4 SYSTEM REQUIREMENT SPECIFICATIONS

    2.5 PROPOSED SYSTEM

    2.6 INPUT AND OUTPUT

    2.7 PROCESS MODULES USED WITH JUSTIFICATION

    3. FEASIBILITY REPORT

  • 8/2/2019 Automatic Share Transaction .Net Application

    6/144

    www.final-yearproject.com | www.finalyearthesis.com

    3.1 TECHNICAL FEASIBILITY

    3.2 OPERATIONAL FEASIBILITY

    3.3 ECONOMICAL FEASIBILTY

    4. SOFTWARE REQUIREMENT SPECIFICATIONS

    4.1 FUNCTIONAL REQUIREMENTS

    4.2 PERFORMANCE REQUIREMENTS

    5. SELECTED SOFTWARE

    5.1 INTRODUCTION TO .NET FRAME WORK

    5.2 ASP.NET

    5.3 C#.NET

    5.4 SQL SERVER

    6. SYSTEM DESIGN

    6.1 INTRODUCTION

    6.2 NORMALIZATION

    6.3 E-R DIAGRAM

    6.4 DATA FLOW DIAGRAMS

    6.5 DATA DICTIONARY

    6.6 UML DIAGRAMS

    7. OUTPUT SCREENS

    8. SYSTEM TESTING AND IMPLEMENTATION

  • 8/2/2019 Automatic Share Transaction .Net Application

    7/144

    www.final-yearproject.com | www.finalyearthesis.com

    8.1 INTRODUCTION

    8.2 STRATEGIC APPROACH OF SOFTWARE TESTING

    8.3 UNIT TESTING

    8.4 TEST CASES

    9. SYSTEM SECURITY

    9.1 INTRODUCTION

    9.2 SECURITY IN SOFTWARE

    10. CONCLUSION

    11. FUTURE ENHANCEMENTS

    12. BIBLOGRAPHY

  • 8/2/2019 Automatic Share Transaction .Net Application

    8/144

    www.final-yearproject.com | www.finalyearthesis.com

    1.INTRODUCTION TO PROJECT

    Introduction:

    The objective of this application is to automate the process of Buying

    and Selling of Shares over internet. In general we should approach

    the Share Brokers for these transactions and they are going to

    charge some minimal amount for each transaction. To avoid this

    payment to the Brokers the users can register to the portal directly

    and can do their own transaction without any other Brokers

    interaction.

    This web application is accessible for registered users only can do

    their own transactions over internet. For the transactions they need

    not to pay any amount to any Brokers. Using this web application

    the authorized users can buy and sell the shares. All these

    transactions will be stored as History for the users reference. While

    performing the transactions the users must provide their secondary

    authentication details as cross verification.

    1.1 PURPOSE OF THE PROJECT

  • 8/2/2019 Automatic Share Transaction .Net Application

    9/144

    www.final-yearproject.com | www.finalyearthesis.com

    The objective of this application is to automate the process of Buying

    and Selling of Shares over internet. In general we should approach

    the Share Brokers for these transactions and they are going to

    charge some minimal amount for each transaction. To avoid this

    payment to the Brokers the users can register to the portal directly

    and can do their own transaction without any other Brokers

    interaction.

    This web application is accessible for registered users only can do

    their own transactions over internet. For the transactions they need

    not to pay any amount to any Brokers. Using this web application

    the authorized users can buy and sell the shares. All these

    transactions will be stored as History for the users reference. While

    performing the transactions the users must provide their secondary

    authentication details as cross verification.

    1.2 PROBLEM IN EXISTING SYSTEM

    Transactions by individuals in shares and securities are not

    generally trading transactions. Such transactions normally fall within the

    charge to Capital Gains Tax. This is also true of transactions in futures,

    options or other derivative contracts.

    Manual transaction of share is having lot of problems:

    Transaction Delay

  • 8/2/2019 Automatic Share Transaction .Net Application

    10/144

    www.final-yearproject.com | www.finalyearthesis.com

    When you trade through the manual terminal, the main problem

    that can occur is that the manual terminal may stop working suddenly

    due to many reasons or that system may have some problems and then

    it becomes difficult to trade through manual terminal.

    Bank Balance

    When you trade through a broker, some time if you know the person

    well, you can pay the broker the day after the transaction was made.

    This is not the case when you trade through the internet. This internet

    trading account is usually connected to your bank account and only

    when you have sufficient balance, will you be able to trade.

    SOLUTION OF THESE PROBLEMS

    The development of the new system objective is to address the

    solutions for the drawbacks of existing problem domain.

    The development of this new system contains the following activities,

    which try to automate the entire process keeping in the view of

    database integration approach.

    Online trading eliminates both these hassles. First by making your

    transaction virtually paperless, and second by enabling you to buy and

    sell shares anytime anywhere where there is Internet access. In fact

    you can even place a sell or buy order by specifying your order value

    during non-market hours. Which broker can you talk to place a buy

    order in the middle of the night? With online trading, this is easily

    possible.

  • 8/2/2019 Automatic Share Transaction .Net Application

    11/144

    www.final-yearproject.com | www.finalyearthesis.com

    It can be your home, office or Internet caf; you are ready to go to your

    account to buy or sell shares or to just watch how your portfolio is

    performing. There is absolutely no paper involved whatsoever except for

    the initial application you sign and give for the purpose of taking a web

    trade account.

    Only thing you would need to do is send your money to the bank

    account so that you have the money in the account to be able to buy

    your favourite stocks. Your share trading system will be linked to your

    bank account and once you have the money in the account it can be

    made immediately available for purchase of shares.

    Paperless transactions your share certificates get deposited in

    electronic form (DMAT) in your web trade account.

    Orders can be also placed offline during non-market hours.

    For NRIs this is the easiest option to invest in Indian markets.

    There is no limit to information available online in sites.

  • 8/2/2019 Automatic Share Transaction .Net Application

    12/144

    www.final-yearproject.com | www.finalyearthesis.com

    2.SYSTEM ANALYSIS

    2.1 INTRODUCTION

    After analyzing the requirements of the task to be performed, the

    next step is to analyze the problem and understand its context. The first

    activity in the phase is studying the existing system and other is to

    understand the requirements and domain of the new system. Both the

    activities are equally important, but the first activity serves as a basis of

    giving the functional specifications and then successful design of the

    proposed system. Understanding the properties and requirements of anew system is more difficult and requires creative thinking and

    understanding of existing running system is also difficult, improper

    understanding of present system can lead diversion from solution.

    2.2 ANALYSIS MODEL

    SDLC METHDOLOGIES

    This document play a vital role in the development of life cycle

    (SDLC) as it describes the complete requirement of the system. It

  • 8/2/2019 Automatic Share Transaction .Net Application

    13/144

    www.final-yearproject.com | www.finalyearthesis.com

    means for use by developers and will be the basic during testing

    phase. Any changes made to the requirements in the future will

    have to go through formal change approval process.

    SPIRAL MODEL was defined by Barry Boehm in his 1988 article, A

    spiral Model of Software Development and Enhancement. This model

    was not the first model to discuss iterative development, but it was

    the first model to explain why the iteration models.

    As originally envisioned, the iterations were typically 6 months to

    2 years long. Each phase starts with a design goal and ends with a

    client reviewing the progress thus far. Analysis and engineering

    efforts are applied at each phase of the project, with an eye toward

    the end goal of the project.

    The steps for Spiral Model can be generalized as follows:

    The new system requirements are defined in as much details

    as possible. This usually involves interviewing a number of

    users representing all the external or internal users and other

    aspects of the existing system.

    A preliminary design is created for the new system.

    A first prototype of the new system is constructed from the

    preliminary design. This is usually a scaled-down system, and

    represents an approximation of the characteristics of the final

    product.

    A second prototype is evolved by a fourfold procedure:

  • 8/2/2019 Automatic Share Transaction .Net Application

    14/144

    www.final-yearproject.com | www.finalyearthesis.com

    1. Evaluating the first prototype in terms of its strengths,

    weakness, and risks.

    2. Defining the requirements of the second prototype.

    3. Planning an designing the second prototype.

    4. Constructing and testing the second prototype.

    At the customer option, the entire project can be aborted if the

    risk is deemed too great. Risk factors might involved

    development cost overruns, operating-cost miscalculation, or

    any other factor that could, in the customers judgment, result

    in a less-than-satisfactory final product.

    The existing prototype is evaluated in the same manner as was

    the previous prototype, and if necessary, another prototype is

    developed from it according to the fourfold procedure outlined

    above.

    The preceding steps are iterated until the customer is satisfied

    that the refined prototype represents the final product desired.

    The final system is constructed, based on the refined

    prototype.

    The final system is thoroughly evaluated and tested. Routine

    maintenance is carried on a continuing basis to prevent large

    scale failures and to minimize down time.

  • 8/2/2019 Automatic Share Transaction .Net Application

    15/144

    www.final-yearproject.com | www.finalyearthesis.com

    The following diagram shows how a spiral model acts like:

  • 8/2/2019 Automatic Share Transaction .Net Application

    16/144

    www.final-yearproject.com | www.finalyearthesis.com

    Fig 1.0-Spiral Model

    2.3 STUDY OF THE SYSTEM

    In the flexibility of the uses the interface has been developed a

    graphics concept in mind, associated through a browser interface. The

    GUIS at the top level have been categorized as

    1. Administrative user interface

    2. The operational or generic user interface

    The administrative user interface concentrates on the

    consistent information that is practically, part of the organizational

    activities and which needs proper authentication for the data collection.

    The interfaces help the administrations with all the transactional states

    like Data insertion, Data deletion and Data updating along with theextensive data search capabilities.

    The operational or generic user interface helps the users

    upon the system in transactions through the existing data and required

    services. The operational user interface also helps the ordinary users in

    managing their own information helps the ordinary users in managing

    their own information in a customized manner as per the assisted

    flexibilities

    Modules

    This application consists following modules

  • 8/2/2019 Automatic Share Transaction .Net Application

    17/144

    www.final-yearproject.com | www.finalyearthesis.com

    1. Admin Module

    2. Customer Module

    3. Company Module

    4. Reports Module

    5. Registration

    6. Authentication

    Modules:

    Administration:

    Can register a new Company details into the system with

    Company Profile (down-loadable document). These details will be

    received from Company owner.

    Will update the Share value of each company and no. of

    shares issued by the company for public in the system (which is

    received from the Company Owner).

    Should able to generate reports on basis of Company,

    Minimum and Maximum value of Shares for a respective period.

    Company:

    The owner of the Company sends a request to the

    Administrator of the web site along with Company profile.

    The owner of the Company should provide information to

    the Administrator like How many Shares of this Company can

    be sold at what price.

    Should able to generate report like how many users done

    transactions of their Company shares for a respective period.

    Customer:

  • 8/2/2019 Automatic Share Transaction .Net Application

    18/144

    www.final-yearproject.com | www.finalyearthesis.com

    7. Can register to the site with personal details.

    8. Should mention the amount available as Investment for the

    Shares Buying. While the buying transaction is happens, the

    respective amount has to be deducted from the Investment.

    9. Should able to see the no. of companies and no. of shares

    available from each company in Home page.

    10. Can request for Selling/Buying of a Company Share along

    with Share maximum value. (As soon the transaction is over

    successfully, the respective no. of shares of the company has to

    be updated)

    11. While Selling the share should also calculate the Profit

    against the transaction. The respective profit should be added to

    the Investment.

    12. Should able to see the transaction details as reports on

    weekly, monthly basis.

    Reports:

    Various reports will generated in this module that are benefited to

    the customer and organization.

    Web Registration

    The system has a process of registration. Every User need to

    submit his complete details in the form of registration. Whenever a

  • 8/2/2019 Automatic Share Transaction .Net Application

    19/144

    www.final-yearproject.com | www.finalyearthesis.com

    User registration completed automatically he/she can get a user id and

    password. By using that user id and password he/she can log into the

    system.

    Authentication:

    Authentication is nothing but providing security to the

    system. Here every must enter into the system throw login page. The

    login page will restrict the UN authorized users. A user must provide his

    credential like user Id and password for log into the system. For that the

    system maintains data for all users. Whenever a user enters his user id

    and password, it checks in the database for user existence. If the user

    is exists he can be treated as a valid user. Otherwise the request will

    throw back.

    2.4 System Requirement Specifications

    Hardware Requirements:

    PIV 2.8 GHz Processor and Above

    RAM 512MB and Above

    HDD 40 GB Hard Disk Space and Above

    Software Requirements:

    WINDOWS OS (XP / 2000 / 200 Server / 2003 Server)

  • 8/2/2019 Automatic Share Transaction .Net Application

    20/144

    www.final-yearproject.com | www.finalyearthesis.com

    Visual Studio .Net 2008 Enterprise Edition

    Internet Information Server 5.0 (IIS)

    Visual Studio .Net Framework (Minimal for Deployment) version

    3.5 SQL Server 2005 Enterprise Edition

    2.5 PROPOSED SYSTEM

    To debug the existing system, remove procedures those cause

    data redundancy, make navigational sequence proper. To provide

    information about users on different level and also to reflect the current

    work status depending on organization. To build strong password

    mechanism.

    NEED FOR COMPUTERIZATION

    We all know the importance of computerization. The world

    is moving ahead at lightning speed and everyone is running short oftime. One always wants to get the information and perform a task

    he/she/they desire(s) within a short period of time and too with amount

    of efficiency and accuracy. The application areas for the computerization

    have been selected on the basis of following factors:

    Minimizing the manual records kept at different locations.

    There will be more data integrity.

    Facilitating desired information display, very quickly, by retrieving

    information from users.

    Facilitating various statistical information which helps in decision-

    making?

  • 8/2/2019 Automatic Share Transaction .Net Application

    21/144

    www.final-yearproject.com | www.finalyearthesis.com

    To reduce manual efforts in activities that involved repetitive

    work.

    Updating and deletion of such a huge amount of data will become

    easier.

    FUNCTIONAL FEATURES OF THE MODEL

    As far as the project is developed the functionality is simple, the

    objective of the proposal is to strengthen the functioning of Audit Status

    Monitoring and make them effective and better. The entire scope has

    been classified into five streams knows as Coordinator Level,

    management Level, Auditor Level, User Level and State Web

    Coordinator Level. The proposed software will cover the information

    needs with respect to each request of the user group viz. accepting the

    request, providing vulnerability document report and the current status

    of the audit.

    2.6 INPUT AND OUTPUT

    The major inputs and outputs and major functions of the system

    are follows:

    Inputs:

    Admin enter his user id and password for login

    Admin Add the Companies.

    Company can update the share details.

  • 8/2/2019 Automatic Share Transaction .Net Application

    22/144

  • 8/2/2019 Automatic Share Transaction .Net Application

    23/144

    www.final-yearproject.com | www.finalyearthesis.com

    This command must be immediately preceded by the user name

    command, and, for some sites, completes the user's identification for

    access control. Since password information is quite sensitive, it is

    desirable in general to "mask" it or suppress type of it.

    3.FEASIBILITY STUDY

    Preliminary investigation examine project feasibility, the

    likelihood the system will be useful to the organization. The main

    objective of the feasibility study is to test the Technical, Operational and

    Economical feasibility for adding new modules and debugging old

    running system. All system is feasible if they are unlimited resources

    and infinite time. There are aspects in the feasibility study portion of the

    preliminary investigation:

    Technical Feasibility

    Operational Feasibility

    Economical Feasibility

    3.1. TECHNICAL FEASIBILITY

    The technical issue usually raised during the feasibility stage of

    the investigation includes the following:

    Does the necessary technology exist to do what is suggested?

  • 8/2/2019 Automatic Share Transaction .Net Application

    24/144

    www.final-yearproject.com | www.finalyearthesis.com

    Do the proposed equipments have the technical capacity to hold

    the data required to use the new system?

    Will the proposed system provide adequate response to inquiries,

    regardless of the number or location of users?

    Can the system be upgraded if developed?

    Are there technical guarantees of accuracy, reliability, ease of

    access and data security?

    Earlier no system existed to cater to the needs of Secure

    Infrastructure Implementation System. The current system developed

    is technically feasible. It is a web based user interface for audit workflow

    at NIC-CSD. Thus it provides an easy access to the users. Thedatabases purpose is to create, establish and maintain a workflow

    among various entities in order to facilitate all concerned users in their

    various capacities or roles. Permission to the users would be granted

    based on the roles specified. Therefore, it provides the technical

    guarantee of accuracy, reliability and security. The software and hard

    requirements for the development of this project are not many and are

    already available in-house at NIC or are available as free as opensource. The work for the project is done with the current equipment and

    existing software technology. Necessary bandwidth exists for providing

    a fast feedback to the users irrespective of the number of users using

    the system.

    3.2. OPERATIONAL FEASIBILITY

    Proposed projects are beneficial only if they can be turned out into

    information system. That will meet the organizations operating

    requirements. Operational feasibility aspects of the project are to be

    taken as an important part of the project implementation. Some of the

  • 8/2/2019 Automatic Share Transaction .Net Application

    25/144

  • 8/2/2019 Automatic Share Transaction .Net Application

    26/144

    www.final-yearproject.com | www.finalyearthesis.com

    developed using the existing resources and technologies available at

    NIC, There is nominal expenditure and economical feasibility for certain.

    4.SOFTWARE REQUIREMENT SPECIFICATION

    The software, Site Explorer is designed for management of web sites

    from a remote location.

    INTRODUCTION

    Purpose: The main purpose for preparing this document is to give a

    general insight into the analysis and requirements of the existing

    system or situation and for determining the operating characteristics of

    the system.

    Scope: This Document plays a vital role in the development life cycle

    (SDLC) and it describes the complete requirement of the system. It is

    meant for use by the developers and will be the basic during testing

    phase. Any changes made to the requirements in the future will have to

    go through formal change approval process.

    DEVELOPERS RESPONSIBILITIES OVERVIEW:

  • 8/2/2019 Automatic Share Transaction .Net Application

    27/144

    www.final-yearproject.com | www.finalyearthesis.com

    The developer is responsible for:

    Developing the system, which meets the SRS and solving all the

    requirements of the system?

    Demonstrating the system and installing the system at client's

    location after the acceptance testing is successful.

    Submitting the required user manual describing the system

    interfaces to work on it and also the documents of the system.

    Conducting any user training that might be needed for using the

    system.

    Maintaining the system for a period of one year after installation.

    4.1. FUNCTIONAL REQUIREMENTS

    OUTPUT DESIGN

    Outputs from computer systems are required primarily to

    communicate the results of processing to users. They are also used to

    provides a permanent copy of the results for later consultation. The

    various types of outputs in general are:

    External Outputs, whose destination is outside the organization.

    Internal Outputs whose destination is within organization and they

    are the

    Users main interface with the computer.

    Operational outputs whose use is purely within the computerdepartment.

    Interface outputs, which involve the user in communicating

    directly.

    OUTPUT DEFINITION

  • 8/2/2019 Automatic Share Transaction .Net Application

    28/144

    www.final-yearproject.com | www.finalyearthesis.com

    The outputs should be defined in terms of the following points:

    Type of the output

    Content of the output

    Format of the output

    Location of the output

    Frequency of the output

    Volume of the output

    Sequence of the output

    It is not always desirable to print or display data as it is held on a

    computer. It should be decided as which form of the output is the most

    suitable.

    For Example

    Will decimal points need to be inserted

    Should leading zeros be suppressed.

    Output Media:

    In the next stage it is to be decided that which medium is themost appropriate for the output. The main considerations when deciding

    about the output media are:

    The suitability for the device to the particular application.

    The need for a hard copy.

    The response time required.

    The location of the users

    The software and hardware available.

    Keeping in view the above description the project is to have outputs

    mainly coming under the category of internal outputs. The main outputs

    desired according to the requirement specification are:

  • 8/2/2019 Automatic Share Transaction .Net Application

    29/144

    www.final-yearproject.com | www.finalyearthesis.com

    The outputs were needed to be generated as a hot copy and as well as

    queries to be viewed on the screen. Keeping in view these outputs, the

    format for the output is taken from the outputs, which are currently

    being obtained after manual processing. The standard printer is to be

    used as output media for hard copies.

    INPUT DESIGN

    Input design is a part of overall system design. The main

    objective during the input design is as given below:

    To produce a cost-effective method of input.

    To achieve the highest possible level of accuracy.

    To ensure that the input is acceptable and understood by the

    user.

    INPUT STAGES:

    The main input stages can be listed as below:

    Data recording

    Data transcription

    Data conversion

    Data verification

    Data control

    Data transmission

    Data validation

    Data correction

    INPUT TYPES:

  • 8/2/2019 Automatic Share Transaction .Net Application

    30/144

    www.final-yearproject.com | www.finalyearthesis.com

    It is necessary to determine the various types of inputs. Inputs can be

    categorized as follows:

    External inputs, which are prime inputs for the system.

    Internal inputs, which are user communications with the

    system.

    Operational, which are computer departments

    communications to the system?

    Interactive, which are inputs entered during a dialogue.

    INPUT MEDIA:

    At this stage choice has to be made about the input media. To

    conclude about the input media consideration has to be given to;

    Type of input

    Flexibility of format

    Speed

    Accuracy

    Verification methods

    Rejection rates

    Ease of correction

    Storage and handling requirements

    Security

    Easy to use

    Portability

    Keeping in view the above description of the input types and input

    media, it can be said that most of the inputs are of the form of internal

    and interactive. As

  • 8/2/2019 Automatic Share Transaction .Net Application

    31/144

  • 8/2/2019 Automatic Share Transaction .Net Application

    32/144

    www.final-yearproject.com | www.finalyearthesis.com

    It is essential to consult the system users and discuss their needs

    while designing the user interface:

    USER INTERFACE SYSTEMS CAN BE BROADLY CLASIFIED AS:

    1. User initiated interface the user is in charge, controlling the

    progress of the user/computer dialogue. In the computer-initiated

    interface, the computer selects the next stage in the interaction.

    2. Computer initiated interfaces

    In the computer initiated interfaces the computer guides the

    progress of the user/computer dialogue. Information is displayed and

    the user response of the computer takes action or displays further

    information.

    USER_INITIATED INTERGFACES

    User initiated interfaces fall into tow approximate classes:

    1. Command driven interfaces: In this type of interface the

    user inputs commands or queries which are interpreted by the

    computer.

    2. Forms oriented interface: The user calls up an image of

    the form to his/her screen and fills in the form. The forms orientedinterface is chosen because it is the best choice.

    COMPUTER-INITIATED INTERFACES

    The following computer initiated interfaces were used:

  • 8/2/2019 Automatic Share Transaction .Net Application

    33/144

    www.final-yearproject.com | www.finalyearthesis.com

    1. The menu system for the user is presented with a list of

    alternatives and the user chooses one; of alternatives.

    2. Questions answer type dialog system where the

    computer asks question and takes action based on the basis of the

    users reply.

    Right from the start the system is going to be menu driven, the

    opening menu displays the available options. Choosing one option gives

    another popup menu with more options. In this way every option leads

    the users to data entry form where the user can key in the data.

    ERROR MESSAGE DESIGN:

    The design of error messages is an important part of the user

    interface design. As user is bound to commit some errors or other while

    designing a system the system should be designed to be helpful by

    providing the user with information regarding the error he/she has

    committed.

    This application must be able to produce output at different

    modules for different inputs.

    4.2. PERFORMANCE REQUIREMENTS

    Performance is measured in terms of the output provided by the

    application.

    Requirement specification plays an important part in the analysis

    of a system. Only when the requirement specifications are properly

    given, it is possible to design a system, which will fit into required

    environment. It rests largely in the part of the users of the existing

    system to give the requirement specifications because they are the

    people who finally use the system. This is because the requirements

  • 8/2/2019 Automatic Share Transaction .Net Application

    34/144

    www.final-yearproject.com | www.finalyearthesis.com

    have to be known during the initial stages so that the system can be

    designed according to those requirements. It is very difficult to change

    the system once it has been designed and on the other hand designing

    a system, which does not cater to the requirements of the user, is of no

    use.

    The requirement specification for any system can be broadly stated

    as given below:

    The system should be able to interface with the existing

    system

    The system should be accurate

    The system should be better than the existing system

    The existing system is completely dependent on the user to perform

    all the duties.

    4.3 APPLICATION DEVELOPMENT:

    N-Tier Applications:

    N-Tier Applications can easily implement the concepts of Distributed

    Application Design and Architecture. The N-Tier Applications provide

    strategic benefits to Enterprise Solutions. While 2-tier, client-server can

    help us create quick and easy solutions and may be used for Rapid

    Prototyping, they can easily become a maintenance and security night

    mare

  • 8/2/2019 Automatic Share Transaction .Net Application

    35/144

    www.final-yearproject.com | www.finalyearthesis.com

    The N-tier Applications provide specific advantages that are vital to the

    business continuity of the enterprise. Typical features of a real life n-tier

    may include the following:

    Security

    Availability and Scalability

    Manageability

    Easy Maintenance

    Data Abstraction

    The above mentioned points are some of the key design goals of a

    successful n-tier application that intends to provide a good Business

    Solution.

    Definition:

    Simply stated, an n-tier application helps us distribute the overall

    functionality into various tiers or layers:

    Presentation Layer

    Business Rules Layer

    Data Access Layer

    Database/Data Store

  • 8/2/2019 Automatic Share Transaction .Net Application

    36/144

    www.final-yearproject.com | www.finalyearthesis.com

    Fig 1.1-N-Tier Architecture

  • 8/2/2019 Automatic Share Transaction .Net Application

    37/144

  • 8/2/2019 Automatic Share Transaction .Net Application

    38/144

    www.final-yearproject.com | www.finalyearthesis.com

    Principal design features

    Interoperability

    Because interaction between new and older applications is

    commonly required, the .NET Framework provides means to

    access functionality that is implemented in programs that execute

    outside the .NET environment. Access to COM components is

    provided in the System.Runtime.InteropServices and

    System.EnterpriseServices namespaces of the framework; access

    to other functionality is provided using the P/Invoke feature.

    Common Runtime Engine

    The Common Language Runtime (CLR) is the virtual machine

    component of the .NET framework. All .NET programs execute

    under the supervision of the CLR, guaranteeing certain propertiesand behaviors in the areas of memory management, security, and

    exception handling.

    Base Class Library

    The Base Class Library (BCL), part of the Framework Class Library

    (FCL), is a library of functionality available to all languages usingthe .NET Framework. The BCL provides classes which encapsulate

    a number of common functions, including file reading and writing,

    graphic rendering, database interaction and XML document

    manipulation.

    http://en.wikipedia.org/wiki/Component_Object_Modelhttp://en.wikipedia.org/wiki/Platform_Invocation_Serviceshttp://en.wikipedia.org/wiki/Component_Object_Modelhttp://en.wikipedia.org/wiki/Platform_Invocation_Services
  • 8/2/2019 Automatic Share Transaction .Net Application

    39/144

    www.final-yearproject.com | www.finalyearthesis.com

    Simplified Deployment

    Installation of computer software must be carefully managed to

    ensure that it does not interfere with previously installed software,

    and that it conforms to security requirements. The .NET

    framework includes design features and tools that help address

    these requirements.

    Security

    The design is meant to address some of the vulnerabilities, such

    as buffer overflows, that have been exploited by malicious

    software. Additionally, .NET provides a common security model for

    all applications.

    Portability

    The design of the .NET Framework allows it to theoretically

    be platform agnostic, and thus cross-platform compatible. That is,

    a program written to use the framework should run without

    change on any type of system for which the framework is

    implemented. Microsoft's commercial implementations of the

    framework cover Windows, Windows CE, and the Xbox 360. In

    addition, Microsoft submits the specifications for the CommonLanguage Infrastructure (which includes the core class libraries,

    Common Type System, and the Common Intermediate

    Language), the C# language, and the C++/CLI language to both

    ECMA and the ISO, making them available as open standards.

  • 8/2/2019 Automatic Share Transaction .Net Application

    40/144

    www.final-yearproject.com | www.finalyearthesis.com

    This makes it possible for third parties to create compatible

    implementations of the framework and its languages on other

    platforms.

    Architecture

    Visual overview of the Common Language Infrastructure (CLI)

    Common Language Infrastructure

    http://en.wikipedia.org/wiki/Image:Overview_of_the_Common_Language_Infrastructure.svg
  • 8/2/2019 Automatic Share Transaction .Net Application

    41/144

    www.final-yearproject.com | www.finalyearthesis.com

    The core aspects of the .NET framework lie within the Common

    Language Infrastructure, or CLI. The purpose of the CLI is to provide a

    language-neutral platform for application development and execution,

    including functions for exception handling, garbage collection, security,

    and interoperability. Microsoft's implementation of the CLI is called the

    Common Language Runtime or CLR.

    Assemblies

    The intermediate CIL code is housed in .NET assemblies. As

    mandated by specification, assemblies are stored in the Portable

    Executable (PE) format, common on the Windows platform for all DLL

    and EXE files. The assembly consists of one or more files, one of which

    must contain the manifest, which has the metadata for the assembly.

    The complete name of an assembly (not to be confused with the

    filename on disk) contains its simple text name, version number,

    culture, and public key token. The public key token is a unique hash

    generated when the assembly is compiled, thus two assemblies with thesame public key token are guaranteed to be identical from the point of

    view of the framework. A private key can also be specified known only

    to the creator of the assembly and can be used for strong naming and

    to guarantee that the assembly is from the same author when a new

    version of the assembly is compiled (required to add an assembly to the

    Global Assembly Cache).

    Metadata

  • 8/2/2019 Automatic Share Transaction .Net Application

    42/144

    www.final-yearproject.com | www.finalyearthesis.com

    All CLI is self-describing through .NET metadata. The CLR checks

    the metadata to ensure that the correct method is called. Metadata is

    usually generated by language compilers but developers can create their

    own metadata through custom attributes. Metadata contains

    information about the assembly, and is also used to implement the

    reflective programming capabilities of .NET Framework.

    Security

    .NET has its own security mechanism with two general features:

    Code Access Security (CAS), and validation and verification. Code

    Access Security is based on evidence that is associated with a specific

    assembly. Typically the evidence is the source of the assembly (whether

    it is installed on the local machine or has been downloaded from the

    intranet or Internet). Code Access Security uses evidence to determine

    the permissions granted to the code. Other code can demand that

    calling code is granted a specified permission. The demand causes theCLR to perform a call stack walk: every assembly of each method in the

    call stack is checked for the required permission; if any assembly is not

    granted the permission a security exception is thrown.

    When an assembly is loaded the CLR performs various tests. Two

    such tests are validation and verification. During validation the CLR

    checks that the assembly contains valid metadata and CIL, and whether

    the internal tables are correct. Verification is not so exact. The

    verification mechanism checks to see if the code does anything that is

    'unsafe'. The algorithm used is quite conservative; hence occasionally

    code that is 'safe' does not pass. Unsafe code will only be executed if

  • 8/2/2019 Automatic Share Transaction .Net Application

    43/144

    www.final-yearproject.com | www.finalyearthesis.com

    the assembly has the 'skip verification' permission, which generally

    means code that is installed on the local machine.

    .NET Framework uses appdomains as a mechanism for

    isolating code running in a process. Appdomains can be created and

    code loaded into or unloaded from them independent of other

    appdomains. This helps increase the fault tolerance of the application,

    as faults or crashes in one appdomain do not affect rest of the

    application. Appdomains can also be configured independently with

    different security privileges. This can help increase the security of the

    application by isolating potentially unsafe code. The developer,

    however, has to split the application into sub domains; it is not done by

    the CLR.

    Class library

    Namespaces in the BCL

    System

    System. CodeDom

    System. CollectionsSystem. Diagnostics

    System. Globalization

    System. IO

    System. Resources

    System. Text

    System.Text.RegularExpressions

    Microsoft .NET Framework includes a set of standard class libraries.

    The class library is organized in a hierarchy of namespaces. Most of the

    built in APIs are part of either System.* or Microsoft.* namespaces. It

    encapsulates a large number of common functions, such as file reading

    and writing, graphic rendering, database interaction, and XML document

  • 8/2/2019 Automatic Share Transaction .Net Application

    44/144

    www.final-yearproject.com | www.finalyearthesis.com

    manipulation, among others. The .NET class libraries are available to

    all .NET languages. The .NET Framework class library is divided into two

    parts: the Base Class Library and the Framework Class Library.

    The Base Class Library (BCL) includes a small subset of the

    entire class library and is the core set of classes that serve as the basic

    API of the Common Language Runtime. The classes in mscorlib.dll and

    some of the classes in System.dll and System.core.dll are considered to

    be a part of the BCL. The BCL classes are available in both .NET

    Framework as well as its alternative implementations including .NET

    Compact Framework, Microsoft Silver light and Mono.

    The Framework Class Library (FCL) is a superset of the BCL

    classes and refers to the entire class library that ships with .NET

    Framework. It includes an expanded set of libraries, including Win

    Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows

    Presentation Foundation, Windows Communication Foundation among

    others. The FCL is much larger in scope than standard libraries for

    languages like C++, and comparable in scope to the standard libraries

    of Java.

    Memory management

    The .NET Framework CLR frees the developer from the burden of

    managing memory (allocating and freeing up when done); instead it

    does the memory management itself. To this end, the memory allocated

    to instantiations of .NET types (objects) is done contiguously from the

    managed heap, a pool of memory managed by the CLR. As long as

    there exists a reference to an object, which might be either a direct

    http://en.wikipedia.org/wiki/ASP.NEThttp://en.wikipedia.org/wiki/Language_Integrated_Queryhttp://en.wikipedia.org/wiki/Windows_Presentation_Foundationhttp://en.wikipedia.org/wiki/Windows_Presentation_Foundationhttp://en.wikipedia.org/wiki/Windows_Communication_Foundationhttp://en.wikipedia.org/wiki/C%2B%2Bhttp://en.wikipedia.org/wiki/Java_Class_Libraryhttp://en.wikipedia.org/wiki/Java_Class_Libraryhttp://en.wikipedia.org/wiki/ASP.NEThttp://en.wikipedia.org/wiki/Language_Integrated_Queryhttp://en.wikipedia.org/wiki/Windows_Presentation_Foundationhttp://en.wikipedia.org/wiki/Windows_Presentation_Foundationhttp://en.wikipedia.org/wiki/Windows_Communication_Foundationhttp://en.wikipedia.org/wiki/C%2B%2Bhttp://en.wikipedia.org/wiki/Java_Class_Libraryhttp://en.wikipedia.org/wiki/Java_Class_Library
  • 8/2/2019 Automatic Share Transaction .Net Application

    45/144

    www.final-yearproject.com | www.finalyearthesis.com

    reference to an object or via a graph of objects, the object is considered

    to be in use by the CLR. When there is no reference to an object, and it

    cannot be reached or used, it becomes garbage. However, it still holds

    on to the memory allocated to it. .NET Framework includes a garbage

    collector which runs periodically, on a separate thread from the

    application's thread, that enumerates all the unusable objects and

    reclaims the memory allocated to them.

    The .NET Garbage Collector (GC) is a non-deterministic,

    compacting, mark-and-sweep garbage collector. The GC runs only when

    a certain amount of memory has been used or there is enough pressure

    for memory on the system. Since it is not guaranteed when the

    conditions to reclaim memory are reached, the GC runs are non-

    deterministic. Each .NET application has a set of roots, which are

    pointers to objects on the managed heap (managed objects). These

    include references to static objects and objects defined as local variables

    or method parameters currently in scope, as well as objects referred to

    by CPU registers. When the GC runs, it pauses the application, and for

    each object referred to in the root, it recursively enumerates all the

    objects reachable from the root objects and marks them as reachable. It

    uses .NET metadata and reflection to discover the objects encapsulated

    by an object, and then recursively walk them. It then enumerates all

    the objects on the heap (which were initially allocated contiguously)

    using reflection. All objects not marked as reachable are garbage. This

    is the markphase. Since the memory held by garbage is not of any

    consequence, it is considered free space. However, this leaves chunks of

    free space between objects which were initially contiguous. The objects

    are then compactedtogether, by using memory to copy them over to

    the free space to make them contiguous again. Any reference to an

    object invalidated by moving the object is updated to reflect the new

  • 8/2/2019 Automatic Share Transaction .Net Application

    46/144

    www.final-yearproject.com | www.finalyearthesis.com

    location by the GC. The application is resumed after the garbage

    collection is over.

    The GC used by .NET Framework is actually generational. Objects

    are assigned a generation; newly created objects belong to Generation

    0. The objects that survive a garbage collection are tagged as

    Generation 1, and the Generation 1 objects that survive another

    collection are Generation 2 objects. The .NET Framework uses up to

    Generation 2 objects. Higher generation objects are garbage collected

    less frequently than lower generation objects. This helps increase the

    efficiency of garbage collection, as older objects tend to have a larger

    lifetime than newer objects. Thus, by removing older (and thus more

    likely to survive a collection) objects from the scope of a collection run,

    fewer objects need to be checked and compacted.

    Versions

    Microsoft started development on the .NET Framework in the late 1990s

    originally under the name of Next Generation Windows Services

    (NGWS). By late 2000 the first beta versions of .NET 1.0 were released.

  • 8/2/2019 Automatic Share Transaction .Net Application

    47/144

    www.final-yearproject.com | www.finalyearthesis.com

    5.1The .NET Framework stack.

    Version Version Number Release Date

    1.0 1.0.3705.0 2002-01-05

    1.1 1.1.4322.573 2003-04-01

    2.0 2.0.50727.42 2005-11-07

    3.0 3.0.4506.30 2006-11-06

    3.5 3.5.21022.8 2007-11-09

    5.1.1.NET Versions

    5.2 ASP.NET

    http://en.wikipedia.org/wiki/Image:DotNet.svg
  • 8/2/2019 Automatic Share Transaction .Net Application

    48/144

    www.final-yearproject.com | www.finalyearthesis.com

    SERVER APPLICATION DEVELOPMENT

    Server-side applications in the managed world are implemented

    through runtime hosts. Unmanaged applications host the commonlanguage runtime, which allows your custom managed code to control

    the behavior of the server. This model provides you with all the features

    of the common language runtime and class library while gaining the

    performance and scalability of the host server.

    The following illustration shows a basic network schema with

    managed code running in different server environments. Servers such

    as IIS and SQL Server can perform standard operations while yourapplication logic executes through the managed code.

    SERVER-SIDE MANAGED CODE

    ASP.NET is the hosting environment that enables developers to

    use the .NET Framework to target Web-based applications. However,

    ASP.NET is more than just a runtime host; it is a complete architecturefor developing Web sites and Internet-distributed objects using

    managed code. Both Web Forms and XML Web services use IIS and

    ASP.NET as the publishing mechanism for applications, and both have a

    collection of supporting classes in the .NET Framework.

    XML Web services, an important evolution in Web-based

    technology, are distributed, server-side application components similar

    to common Web sites. However, unlike Web-based applications, XMLWeb services components have no UI and are not targeted for browsers

    such as Internet Explorer and Netscape Navigator. Instead, XML Web

    services consist of reusable software components designed to be

    consumed by other applications, such as traditional client applications,

  • 8/2/2019 Automatic Share Transaction .Net Application

    49/144

    www.final-yearproject.com | www.finalyearthesis.com

    Web-based applications, or even other XML Web services. As a result,

    XML Web services technology is rapidly moving application development

    and deployment into the highly distributed environment of the Internet.

    If you have used earlier versions of ASP technology, you will

    immediately notice the improvements that ASP.NET and Web Forms

    offers. For example, you can develop Web Forms pages in any language

    that supports the .NET Framework. In addition, your code no longer

    needs to share the same file with your HTTP text (although it can

    continue to do so if you prefer). Web Forms pages execute in native

    machine language because, like any other managed application, they

    take full advantage of the runtime. In contrast, unmanaged ASP pages

    are always scripted and interpreted. ASP.NET pages are faster, more

    functional, and easier to develop than unmanaged ASP pages because

    they interact with the runtime like any managed application.

    The .NET Framework also provides a collection of classes and

    tools to aid in development and consumption of XML Web services

    applications. XML Web services are built on standards such as SOAP (a

    remote procedure-call protocol), XML (an extensible data format), andWSDL ( the Web Services Description Language). The .NET Framework

    is built on these standards to promote interoperability with non-

    Microsoft solutions.

    For example, the Web Services Description Language tool included

    with the .NET Framework SDK can query an XML Web service published

    on the Web, parse its WSDL description, and produce C# or Visual Basic

    source code that your application can use to become a client of the XMLWeb service. The source code can create classes derived from classes in

    the class library that handle all the underlying communication using

    SOAP and XML parsing. Although you can use the class library to

    consume XML Web services directly, the Web Services Description

  • 8/2/2019 Automatic Share Transaction .Net Application

    50/144

    www.final-yearproject.com | www.finalyearthesis.com

    Language tool and the other tools contained in the SDK facilitate your

    development efforts with the .NET Framework.

    If you develop and publish your own XML Web service, the .NET

    Framework provides a set of classes that conform to all the underlying

    communication standards, such as SOAP, WSDL, and XML. Using those

    classes enables you to focus on the logic of your service, without

    concerning yourself with the communications infrastructure required by

    distributed software development.

    Finally, like Web Forms pages in the managed environment, your XML

    Web service will run with the speed of native machine language using

    the scalable communication of IIS.

    ACTIVE SERVER PAGES.NET

    ASP.NET is a programming framework built on the common

    language runtime that can be used on a server to build powerful Web

    applications. ASP.NET offers several important advantages over

    previous Web development models:

    Enhanced Performance. ASP.NET is compiled common language

    runtime code running on the server. Unlike its interpreted

    predecessors, ASP.NET can take advantage of early binding, just-in-

    time compilation, native optimization, and caching services right out

    of the box. This amounts to dramatically better performance before

    you ever write a line of code.

    World-Class Tool Support. The ASP.NET framework is

    complemented by a rich toolbox and designer in the Visual Studio

    integrated development environment. WYSIWYG editing, drag-and-

  • 8/2/2019 Automatic Share Transaction .Net Application

    51/144

    www.final-yearproject.com | www.finalyearthesis.com

    drop server controls, and automatic deployment are just a few of the

    features this powerful tool provides.

    Power and Flexibility. Because ASP.NET is based on the

    common language runtime, the power and flexibility of that entire

    platform is available to Web application developers. The .NET

    Framework class library, Messaging, and Data Access solutions are

    all seamlessly accessible from the Web. ASP.NET is also language-

    independent, so you can choose the language that best applies to

    your application or partition your application across many languages.

    Further, common language runtime interoperability guarantees that

    your existing investment in COM-based development is preserved

    when migrating to ASP.NET.

    Simplicity. ASP.NET makes it easy to perform common tasks,

    from simple form submission and client authentication to deployment

    and site configuration. For example, the ASP.NET page framework

    allows you to build user interfaces that cleanly separate applicationlogic from presentation code and to handle events in a simple, Visual

    Basic - like forms processing model. Additionally, the common

    language runtime simplifies development, with managed code

    services such as automatic reference counting and garbage

    collection.

    Manageability. ASP.NET employs a text-based, hierarchicalconfiguration system, which simplifies applying settings to your

    server environment and Web applications. Because configuration

    information is stored as plain text, new settings may be applied

    without the aid of local administration tools. This "zero local

  • 8/2/2019 Automatic Share Transaction .Net Application

    52/144

    www.final-yearproject.com | www.finalyearthesis.com

    administration" philosophy extends to deploying ASP.NET Framework

    applications as well. An ASP.NET Framework application is deployed

    to a server simply by copying the necessary files to the server. No

    server restart is required, even to deploy or replace running compiled

    code.

    Scalability and Availability. ASP.NET has been designed with

    scalability in mind, with features specifically tailored to improve

    performance in clustered and multiprocessor environments. Further,

    processes are closely monitored and managed by the ASP.NET

    runtime, so that if one misbehaves (leaks, deadlocks), a new process

    can be created in its place, which helps keep your application

    constantly available to handle requests.

    Customizability and Extensibility. ASP.NET delivers a well-

    factored architecture that allows developers to "plug-in" their code at

    the appropriate level. In fact, it is possible to extend or replace any

    subcomponent of the ASP.NET runtime with your own custom-writtencomponent. Implementing custom authentication or state services

    has never been easier.

    Security. With built in Windows authentication and per-

    application configuration, you can be assured that your applications

    are secure.

    LANGUAGE SUPPORT

    The Microsoft .NET Platform currently offers built-in support for

    three languages: C#, Visual Basic, and Java Script.

  • 8/2/2019 Automatic Share Transaction .Net Application

    53/144

    www.final-yearproject.com | www.finalyearthesis.com

    WHAT IS ASP.NET WEB FORMS?

    The ASP.NET Web Forms page framework is a scalable common

    language runtime programming model that can be used on the server to

    dynamically generate Web pages.

    Intended as a logical evolution of ASP (ASP.NET provides syntax

    compatibility with existing pages), the ASP.NET Web Forms framework

    has been specifically designed to address a number of key deficiencies

    in the previous model. In particular, it provides:

    The ability to create and use reusable UI controls that can

    encapsulate common functionality and thus reduce the amount of

    code that a page developer has to write.

    The ability for developers to cleanly structure their page

    logic in an orderly fashion (not "spaghetti code").

    The ability for development tools to provide strong

    WYSIWYG design support for pages (existing ASP code is opaque to

    tools).

    ASP.NET Web Forms pages are text files with an .aspx file name

    extension. They can be deployed throughout an IIS virtual root directory

    tree. When a browser client requests .aspx resources, the ASP.NET

    runtime parses and compiles the target file into a .NET Framework

    class. This class can then be used to dynamically process incoming

    requests. (Note that the .aspx file is compiled only the first time it is

    accessed; the compiled type instance is then reused across multiple

    requests).

  • 8/2/2019 Automatic Share Transaction .Net Application

    54/144

    www.final-yearproject.com | www.finalyearthesis.com

    An ASP.NET page can be created simply by taking an existing

    HTML file and changing its file name extension to .aspx (no modification

    of code is required). For example, the following sample demonstrates a

    simple HTML page that collects a user's name and category preference

    and then performs a form post back to the originating page when a

    button is clicked:

    ASP.NET provides syntax compatibility with existing ASP pages.

    This includes support for code render blocks that can be

    intermixed with HTML content within an .aspx file. These code blocks

    execute in a top-down manner at page render time.

    CODE-BEHIND WEB FORMS

    ASP.NET supports two methods of authoring dynamic pages.

    The first is the method shown in the preceding samples, where the page

    code is physically declared within the originating .aspx file. An

    alternative approach--known as the code-behind method--enables the

    page code to be more cleanly separated from the HTML content into an

    entirely separate file.

    INTRODUCTION TO ASP.NET SERVER CONTROLS

    In addition to (or instead of) using code blocks to

    program dynamic content, ASP.NET page developers can use ASP.NET

    server controls to program Web pages. Server controls are declared

    within an .aspx file using custom tags or intrinsic HTML tags that contain

    a runat="server" attributes value. Intrinsic HTML tags are handled by

    one of the controls in the System.Web.UI.HtmlControls namespace.

    Any tag that doesn't explicitly map to one of the controls is assigned the

    type ofSystem.Web.UI.HtmlControls.HtmlGenericControl.

  • 8/2/2019 Automatic Share Transaction .Net Application

    55/144

    www.final-yearproject.com | www.finalyearthesis.com

    Server controls automatically maintain any client-entered values

    between round trips to the server. This control state is not stored on the

    server (it is instead stored within an form

    field that is round-tripped between requests). Note also that no client-

    side script is required.

    In addition to supporting standard HTML input controls, ASP.NET

    enables developers to utilize richer custom controls on their pages. For

    example, the following sample demonstrates how the

    control can be used to dynamically display rotating ads on a page.

    1. ASP.NET Web Forms provide an easy and powerful way to build

    dynamic Web UI.

    2. ASP.NET Web Forms pages can target any browser client (there

    are no script library or cookie requirements).

    3. ASP.NET Web Forms pages provide syntax compatibility with

    existing ASP pages.

    4. ASP.NET server controls provide an easy way to encapsulatecommon functionality.

    5. ASP.NET ships with 45 built-in server controls. Developers can

    also use controls built by third parties.

    6. ASP.NET server controls can automatically project both uplevel

    and downlevel HTML.

    7. ASP.NET templates provide an easy way to customize the look

    and feel of list server controls.8. ASP.NET validation controls provide an easy way to do declarative

    client or server data validation.

    5.3 C#.NET

  • 8/2/2019 Automatic Share Transaction .Net Application

    56/144

    www.final-yearproject.com | www.finalyearthesis.com

    ADO.NET OVERVIEW

    ADO.NET is an evolution of the ADO data access model that

    directly addresses user requirements for developing scalableapplications. It was designed specifically for the web with scalability,

    statelessness, and XML in mind.

    ADO.NET uses some ADO objects, such as the Connection and

    Command objects, and also introduces new objects. Key new ADO.NET

    objects include the Dataset, Data Reader, and Data Adapter.

    The important distinction between this evolved stage of ADO.NET

    and previous data architectures is that there exists an object -- theDataSet -- that is separate and distinct from any data stores. Because

    of that, the DataSet functions as a standalone entity. You can think of

    the DataSet as an always disconnected recordset that knows nothing

    about the source or destination of the data it contains. Inside a

    DataSet, much like in a database, there are tables, columns,

    relationships, constraints, views, and so forth.

    A DataAdapter is the object that connects to the database to fillthe DataSet. Then, it connects back to the database to update the data

    there, based on operations performed while the DataSet held the data.

    In the past, data processing has been primarily connection-based. Now,

    in an effort to make multi-tiered apps more efficient, data processing is

    turning to a message-based approach that revolves around chunks of

    information. At the center of this approach is the DataAdapter, which

    provides a bridge to retrieve and save data between a DataSet and itssource data store. It accomplishes this by means of requests to the

    appropriate SQL commands made against the data store.

  • 8/2/2019 Automatic Share Transaction .Net Application

    57/144

    www.final-yearproject.com | www.finalyearthesis.com

    The XML-based DataSet object provides a consistent

    programming model that works with all models of data storage: flat,

    relational, and hierarchical. It does this by having no 'knowledge' of the

    source of its data, and by representing the data that it holds as

    collections and data types. No matter what the source of the data within

    the DataSet is, it is manipulated through the same set of standard APIs

    exposed through the DataSet and its subordinate objects.

    While the DataSet has no knowledge of the source of its data, the

    managed provider has detailed and specific information. The role of the

    managed provider is to connect, fill, and persist the DataSet to and

    from data stores. The OLE DB and SQL Server .NET Data Providers

    (System.Data.OleDb and System.Data.SqlClient) that are part of the

    .Net Framework provide four basic objects: the Command,

    Connection, DataReader and DataAdapter. In the remaining

    sections of this document, we'll walk through each part of the DataSet

    and the OLE DB/SQL Server .NET Data Providers explaining what they

    are, and how to program against them.The following sections will introduce you to some objects that have

    evolved, and some that are new. These objects are:

    Connections. For connection to and managing transactions

    against a database.

    Commands. For issuing SQL commands against a database.

    DataReaders. For reading a forward-only stream of data records

    from a SQL Server data source. DataSet. For storing, Remoting and programming against flat

    data, XML data and relational data.

    DataAdapters. For pushing data into a DataSet, and reconciling

    data against a database.

  • 8/2/2019 Automatic Share Transaction .Net Application

    58/144

    www.final-yearproject.com | www.finalyearthesis.com

    When dealing with connections to a database, there are two

    different options: SQL Server .NET Data Provider

    (System.Data.SqlClient) and OLE DB .NET Data Provider

    (System.Data.OleDb). In these samples we will use the SQL Server .NET

    Data Provider. These are written to talk directly to Microsoft SQL Server.

    The OLE DB .NET Data Provider is used to talk to any OLE DB provider

    (as it uses OLE DB underneath).

    Connections:

    Connections are used to 'talk to' databases, and are represented

    by provider-specific classes such as SqlConnection. Commands travel

    over connections and resultsets are returned in the form of streams

    which can be read by a DataReader object, or pushed into a DataSet

    object.

    Commands:

    Commands contain the information that is submitted to a

    database, and are represented by provider-specific classes such as

    SqlCommand. A command can be a stored procedure call, an UPDATE

    statement, or a statement that returns results. You can also use input

    and output parameters, and return values as part of your command

    syntax. The example below shows how to issue an INSERT statement

    against the Northwind database.

    DataReaders:

    The Data Reader object is somewhat synonymous with a read-

    only/forward-only cursor over data. The DataReader API supports flat

  • 8/2/2019 Automatic Share Transaction .Net Application

    59/144

    www.final-yearproject.com | www.finalyearthesis.com

    as well as hierarchical data. A DataReader object is returned after

    executing a command against a database. The format of the returned

    DataReader object is different from a recordset. For example, you

    might use the DataReader to show the results of a search list in a web

    page.

    DATASETS AND DATA ADAPTERS:

    DataSets

    The Dataset object is similar to the ADO Recordset object, but

    more powerful, and with one other important distinction: the DataSet is

    always disconnected. The DataSet object represents a cache of data,

    with database-like structures such as tables, columns, relationships, and

    constraints. However, though a DataSet can and does behave much

    like a database, it is important to remember that DataSet objects do

    not interact directly with databases, or other source data. This allows

    the developer to work with a programming model that is always

    consistent, regardless of where the source data resides. Data coming

    from a database, an XML file, from code, or user input can all be placed

    into DataSet objects. Then, as changes are made to the DataSet they

    can be tracked and verified before updating the source data. The

    GetChanges method of the DataSet object actually creates a second

    DatSet that contains only the changes to the data. This DataSet is

    then used by a DataAdapter (or other objects) to update the original

    data source.

    The DataSet has many XML characteristics, including the ability to

    produce and consume XML data and XML schemas. XML schemas can be

    used to describe schemas interchanged via WebServices. In fact, a

    DataSet with a schema can actually be compiled for type safety and

    statement completion.

  • 8/2/2019 Automatic Share Transaction .Net Application

    60/144

    www.final-yearproject.com | www.finalyearthesis.com

    DataAdapters (OLEDB/SQL)

    The DataAdapter object works as a bridge between the DataSet

    and the source data. Using the provider-specific SqlDataAdapter

    (along with its associated SqlCommand and SqlConnection) can

    increase overall performance when working with a Microsoft SQL Server

    databases. For other OLE DB-supported databases, you would use the

    OleDbDataAdapter object and its associated OleDbCommand and

    OleDbConnection objects.

    The DataAdapter object uses commands to update the data source

    after changes have been made to the DataSet. Using the Fill method of

    the DataAdapter calls the SELECT command; using the Update

    method calls the INSERT, UPDATE or DELETE command for each

    changed row. You can explicitly set these commands in order to control

    the statements used at runtime to resolve changes, including the use of

    stored procedures. For ad-hoc scenarios, a CommandBuilder object

    can generate these at run-time based upon a select statement.However, this run-time generation requires an extra round-trip to the

    server in order to gather required metadata, so explicitly providing the

    INSERT, UPDATE, and DELETE commands at design time will result in

    better run-time performance.

    1. ADO.NET is the next evolution of ADO for the .Net Framework.2. ADO.NET was created with n-Tier, statelessness and XML in the

    forefront. Two new objects, the DataSet and DataAdapter, are

    provided for these scenarios.

  • 8/2/2019 Automatic Share Transaction .Net Application

    61/144

    www.final-yearproject.com | www.finalyearthesis.com

    3. ADO.NET can be used to get data from a stream, or to store data

    in a cache for updates.

    4. There is a lot more information about ADO.NET in the

    documentation.

    5. Remember, you can execute a command directly against the

    database in order to do inserts, updates, and deletes. You don't need

    to first put data into a DataSet in order to insert, update, or delete

    it.

    Also, you can use a DataSet to bind to the data, move through the

    data, and navigate data relationships

    5.4 SQL SERVER -2005

    A database management, or DBMS, gives the user access to

    their data and helps them transform the data into information.

    Such database management systems include dBase, paradox,

    IMS, SQL Server and SQL Server. These systems allow users to

    create, update and extract information from their database.

    A database is a structured collection of data. Data refers to the

    characteristics of people, things and events. SQL Server stores each

    data item in its own fields. In SQL Server, the fields relating to a

    particular person, thing or event are bundled together to form a single

    complete unit of data, called a record (it can also be referred to as raw

    or an occurrence). Each record is made up of a number of fields. No

    two fields in a record can have the same field name.

    During an SQL Server Database design project, the analysis of

    your business needs identifies all the fields or attributes of interest. If

    your business needs change over time, you define any additional fields

    or change the definition of existing fields.

    SQL SERVER TABLES

  • 8/2/2019 Automatic Share Transaction .Net Application

    62/144

    www.final-yearproject.com | www.finalyearthesis.com

    SQL Server stores records relating to each other in a table.

    Different tables are created for the various groups of information.

    Related tables are grouped together to form a database.

    PRIMARY KEY

    Every table in SQL Server has a field or a combination of fields

    that uniquely identifies each record in the table. The Unique identifier is

    called the Primary Key, or simply the Key. The primary key provides

    the means to distinguish one record from all other in a table. It allows

    the user and the database system to identify, locate and refer to one

    particular record in the database.

    RELATIONAL DATABASE

    Sometimes all the information of interest to a business operation

    can be stored in one table. SQL Server makes it very easy to link the

    data in multiple tables. Matching an employee to the department in

    which they work is one example. This is what makes SQL Server a

    relational database management system, or RDBMS. It stores data in

    two or more tables and enables you to define relationships between the

    table and enables you to define relationships between the tables.

    FOREIGN KEY

    When a field is one table matches the primary key of another field

    is referred to as a foreign key. A foreign key is a field or a group of

    fields in one table whose values match those of the primary key of

    another table.

    REFERENTIAL INTEGRITY

    Not only does SQL Server allow you to link multiple tables, it also

    maintains consistency between them. Ensuring that the data among

  • 8/2/2019 Automatic Share Transaction .Net Application

    63/144

    www.final-yearproject.com | www.finalyearthesis.com

    related tables is correctly matched is referred to as maintaining

    referential integrity.

    DATA ABSTRACTION

    A major purpose of a database system is to provide users with an

    abstract view of the data. This system hides certain details of how the

    data is stored and maintained. Data abstraction is divided into three

    levels.

    Physical level: This is the lowest level of abstraction at which one

    describes how the data are actually stored.

    Conceptual Level: At this level of database abstraction all the

    attributed and what data are actually stored is described and entries

    and relationship among them.

    View level: This is the highest level of abstraction at which one

    describes only part of the database.

    ADVANTAGES OF RDBMS

    Redundancy can be avoided

    Inconsistency can be eliminated

    Data can be Shared

    Standards can be enforced

    Security restrictions ca be applied

    Integrity can be maintained

    Conflicting requirements can be balanced

    Data independence can be achieved.

    DISADVANTAGES OF DBMS

  • 8/2/2019 Automatic Share Transaction .Net Application

    64/144

    www.final-yearproject.com | www.finalyearthesis.com

    A significant disadvantage of the DBMS system is cost. In

    addition to the cost of purchasing of developing the software, the

    hardware has to be upgraded to allow for the extensive programs and

    the workspace required for their execution and storage. While

    centralization reduces duplication, the lack of duplication requires that

    the database be adequately backed up so that in case of failure the data

    can be recovered.

    FEATURES OF SQL SERVER (RDBMS)

    SQL SERVER is one of the leading database management systems

    (DBMS) because it is the only Database that meets the uncompromising

    requirements of todays most demanding information systems. From

    complex decision support systems (DSS) to the most rigorous online

    transaction processing (OLTP) application, even application that require

    simultaneous DSS and OLTP access to the same critical data, SQL

    Server leads the industry in both performance and capability.

    SQL SERVER is a truly portable, distributed, and open DBMS that

    delivers unmatched performance, continuous operation and support for

    every database.

    SQL SERVER RDBMS is high performance fault tolerant DBMS which is

    specially designed for online transactions processing and for handling

    large database application.

    SQL SERVER with transactions processing option offers two features

    which contribute to very high level of transaction processing throughput,

    which are

    The row level lock manager

  • 8/2/2019 Automatic Share Transaction .Net Application

    65/144

    www.final-yearproject.com | www.finalyearthesis.com

    ENTERPRISE WIDE DATA SHARING

    The unrivaled portability and connectivity of the SQL SERVER

    DBMS enables all the systems in the organization to be linked into a

    singular, integrated computing resource.

    PORTABILITY

    SQL SERVER is fully portable to more than 80 distinct hardware

    and operating systems platforms, including UNIX, MSDOS, OS/2,

    Macintosh and dozens of proprietary platforms. This portability gives

    complete freedom to choose the database server platform that meets

    the system requirements.

    OPEN SYSTEMS

    SQL SERVER offers a leading implementation of industry

    standard SQL. SQL Servers open architecture integrates SQL SERVER

    and non SQL SERVER DBMS with industrys most comprehensive

    collection of tools, application, and third party software products SQL

    Servers Open architecture provides transparent access to data from

    other relational database and even non-relational database.

    DISTRIBUTED DATA SHARING

    SQL Servers networking and distributed database capabilities to

    access data stored on remote server with the same ease as if the

    information was stored on a single local computer. A single SQL

    statement can access data at multiple sites. You can store data wheresystem requirements such as performance, security or availability

    dictate.

    UNMATCHED PERFORMANCE

  • 8/2/2019 Automatic Share Transaction .Net Application

    66/144

    www.final-yearproject.com | www.finalyearthesis.com

    The most advanced architecture in the industry allows the SQL

    SERVER DBMS to deliver unmatched performance.

    SOPHISTICATED CONCURRENCY CONTROL

    Real World applications demand access to critical data. With most

    database Systems application becomes contention bound which

    performance is limited not by the CPU power or by disk I/O, but user

    waiting on one another for data access. SQL Server employs full,

    unrestricted row-level locking and contention free queries to minimize

    and in many cases entirely eliminates contention wait times.

    NO I/O BOTTLENECKS

    SQL Servers fast commit groups commit and deferred write

    technologies dramatically reduce disk I/O bottlenecks. While some

    database write whole data block to disk at commit time, SQL Server

    commits transactions with at most sequential log file on disk at commit

    time, On high throughput systems, one sequential writes typically group

    commit multiple transactions. Data read by the transaction remains as

    shared memory so that other transactions may access that data without

    reading it again from disk. Since fast commits write all data necessary

    to the recovery to the log file, modified blocks are written back to the

    database independently of the transaction commit, when written from

    memory to disk.

    6.SYSTEM DESIGN

    6.1. INTRODUCTION

    Software design sits at the technical kernel of the software

    engineering process and is applied regardless of the development

    paradigm and area of application. Design is the first step in the

  • 8/2/2019 Automatic Share Transaction .Net Application

    67/144

    www.final-yearproject.com | www.finalyearthesis.com

    development phase for any engineered product or system. The

    designers goal is to produce a model or representation of an entity that

    will later be built. Beginning, once system requirement have been

    specified and analyzed, system design is the first of the three technical

    activities -design, code and test that is required to build and verify

    software.

    The importance can be stated with a single word Quality. Design

    is the place where quality is fostered in software development. Design

    provides us with representations of software that can assess for quality.

    Design is the only way that we can accurately translate a customers

    view into a finished software product or system. Software design serves

    as a foundation for all the software engineering steps that follow.

    Without a strong design we risk building an unstable system one that

    will be difficult to test, one whose quality cannot be assessed until the

    last stage.

    During design, progressive refinement of data structure, program

    structure, and procedural details are developed reviewed and

    documented. System design can be viewed from either technical or

    project management perspective. From the technical point of view,

    design is comprised of four activities architectural design, data

    structure design, interface design and procedural design.

    6.2 NORMALIZATION

    It is a process of converting a relation to a standard form. The

    process is used to handle the problems that can arise due to data

    redundancy i.e. repetition of data in the database, maintain data

  • 8/2/2019 Automatic Share Transaction .Net Application

    68/144

    www.final-yearproject.com | www.finalyearthesis.com

    integrity as well as handling problems that can arise due to insertion,

    updating, deletion anomalies.

    Decomposing is the process of splitting relations into multiple

    relations to eliminate anomalies and maintain anomalies and maintaindata integrity. To do this we use normal forms or rules for structuring

    relation.

    Insertion anomaly: Inability to add data to the database due to

    absence of other data.

    Deletion anomaly: Unintended loss of data due to deletion of other

    data.

    Update anomaly: Data inconsistency resulting from data redundancy

    and partial update

    Normal Forms: These are the rules for structuring relations that

    eliminate anomalies.

    FIRST NORMAL FORM:

    A relation is said to be in first normal form if the values in the

    relation are atomic for every attribute in the relation. By this we mean

    simply that no attribute value can be a set of values or, as it is

    sometimes expressed, a repeating group.

    SECOND NORMAL FORM:

    A relation is said to be in sec