96695166 Inventory Management System Project Report

download 96695166 Inventory Management System Project Report

of 108

description

INVENTORY MANAGEMENT

Transcript of 96695166 Inventory Management System Project Report

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 1

    PROJECT REPORT

    ON

    INVENTORY MANAGEMENT SYSTEM

    SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE AWARD OF

    THE DEGREE OF

    MASTER OF COMPUTER APPLICATIONS

    SUBMITTED BY

    YATENDRA SOLANKI

    (UNIVERSITY ROLL NO: 0909414117)

    DEPARTMENT OF COMPUTER SCIENCE

    GALGOTIAS INSTITUTE OF MANAGEMENT AND TECHNOLOGY

    1, KNOWLEDGE PARK 2

    GREATER NOIDA (U.P) 201 306

    MAY,2012

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 2

    CANDIDATE'S DECLARATION

    I, hereby certify that the work which is being presented in the project entitled INVENTORY

    MANAGEMENT SYSTEM is carried out at Drishtee Development & Communication LTD in

    partial fulfillment of the requirement for the award of degree of MASTER OF COMPUTER

    APPLICATION submitted in the Department of Computer Science at GALGOTIAS INSTITUTE OF

    MANAGEMENT AND TECHNOLOGY, GREATER NOIDA under GAUTAM BUDDH TECHNICAL

    UNIVERSITY, LUCKNOW is an authentic record of my own work carried out during a period from

    January to May,2012 under the guidance of Mr. SUSHIL PANDEY.

    Name: YATENDRA SOLANKI

    University Roll No: 0909414117

    This is to certify that the above statement made by the candidate is correct to the best of my knowledge.

    Industrial coordinator:

    H.O.D

    (Computer Science)

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 3

    CONTENTS

    ABOUT THE ORGANIZATION

    1. INTRODUCTION

    1.1 Abstract Of Project

    1.1.1 Title Of The Project

    1.1.2 Objective

    1.2 Problem Specification

    2. Feasibility Study

    3. Software Requirement Specification

    3.1 Introduction

    3.2 Selection Of Technology/Specific Requirement

    4 Design

    4.1 ER Diagram

    4.2 Data Flow Diagram

    4.3 Modules

    4.4 Database

    4.5 Input-Output Form

    5. Implementation

    6. Testing & Result

    7. Enhancement

    8. Limitation

    9. Conclusion

    10. Bibliography

    11. Snap Shots & Description

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 4

    ACKNOWLEDGEMENT

    I convey my gratitude to all those who helped me reach a stage where I have immense confidence to

    launch my career in the competitive world of Information & Technology.

    I would like to express my deep sense of gratitude to Drishtee Development and Communication Ltd. ,

    Noida for extending me the opportunity for the project training and improving all the necessary resources

    and expertise for this purpose.

    I am very grateful to Mr. Deependra Singh Solanky, Mr. Sushil Panday,Mr. Gaurav Choudhary and Mr.

    Utkarsh Choudhary for helping me in completing my project. I would definitely like to pay my thanks for

    his constant interest and support for this venture.

    My profound thanks to Ms Blassy, Head of MCA Department, Galgotias College, Greater Noida, who

    has been a source of perpetual inspiration to me and for gently guiding and paving my way towards a

    bright career, throughout my M.C.A Course.

    I acknowledge the role of my Project Head, Mr. Mr. Sushil Panday who guided me frequently during my

    training period. He was always willing to give all kind of support and encouragement. It was only

    because of care, support and help of the teachers that I was able to overcome my initial hiccups during

    my early days in the institute.

    Although I have tried to express my gratitude to every person who contributed to my project, there may

    still someone hiding the veils of unknown, whom I may not be able to recognize. I would like to say

    thanks to all of them who helped me throughout my training.

    YATENDRA SOLANKI

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 5

    In rural India, villagers live without easy access to trade, government, business and health services. This

    makes them easy prey for intermediaries who control the supply chain of products and services and can

    demand high payments to allow villagers access to it. In addition to this, there is a high opportunity cost

    for availing these services as any transaction involves long travel and loss of daily wage.

    In this context, Information and Communication Technologies (ICTs) can play a significant role in

    making information and services available at a reasonable cost. Through a tiered franchise and

    partnership model, Drishtee facilitates the establishment of ICT nodes enabling access to information as

    well as local services to the rural community at nominal value. The business model is driven by the

    village entrepreneur, who owns the village node to operate a self-sustaining, profitable kiosk. The kiosk

    provides access to information like government records, agricultural data, and health insurance; help in

    filing of applications for licenses, certificates, compensations, and benefits; commodity product rates in

    different markets; education like computer courses, and Spoken English Programs. The entrepreneur

    earns by charging the community a nominal fee for the services provided. Drishtee has a fixed sharing

    with the Kiosk operator and a variable revenue sharing with the service providers. The Social Return on

    Investment Analysis shows that for every US$1 of social cost incurred, US$20 of social benefit is

    generated.

    Drishtee has successfully demonstrated this concept across various geographic regions. Each Kiosk

    caters to approximately 1200 households, majority of which have an aggregated income of less than $ 2 a

    day. With a vision to reach out to every village in the country and beyond, Drishtee has set for itself an

    ambitious target of reaching out to 10,000 Villages in the next 2 years. Over a longer a period, Drishtee is

    geared up to become a rural supply chain for last mile deliveries.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 6

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 7

    Abstract of Project

    In times of economic slow -down, cutting costs is the major strategy used by the companies.

    There is a need to track the performance of each product in terms of demand to determine

    how much to order and when to order. The parameters that are required to answer these

    questions are economic order quantity (EOQ) and the re-order point. The annual cost of

    each product is obtained to determine the best deal for the invoices received for the product.

    The Project INVENTORY MANAGEMENT SYSTEM is for maintaining the IT Assets of

    Drishtee.

    Till now the assets of company maintained manually, this is very much time consuming and

    have lots of errors. To overcome this problem INVENTORY MANAGEMENT SYSTEM

    software isrequired.

    This project implemented a inventory management system and tracks the performance of

    each product using a web application. This will help the decision makers to initiate accurate

    re-order and make forecast and demand of the product at any point of time.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 8

    Title of the Project

    The Project INVENTORY MANAGEMENT SYSTEM is for maintaining the IT Assets of

    Drishtee.

    Till now the assets of company maintained manually, this is very much time consuming and

    have lots of errors. To overcome this problem INVENTORY MANAGEMENT SYSTEM

    software isrequired.

    This project implemented a inventory management system and tracks the performance of

    each product using a web application. This will help the decision makers to initiate accurate

    re-order and make forecast and demand of the product at any point of time.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 9

    Objectives

    Inventory Management system provides information to efficiently manage the flow of

    materials, effectively utilize people and equipment, coordinate internal activities and

    communicate with customers . Inventory Management does not make decisions or manage

    operations, they provide the information to managers who make more accurate and timely

    decisions to manage their operations.

    Inventory Management must be designed to meet the dictates of market place and support the

    companys Strategic Plan . The many changes in the market demand , new opportunities due

    to worldwide marketing , global sourcing of materials and new manufacturing technology

    means many companies need to change their Inventory Management approach and change

    the process for Inventory Control.

    The Inventory Management system and the Inventory Control Process provides information

    to efficiently manage the flow of materials, effectively utilize people and equipment,

    coordinate internal activities, and communicate with customers. Inventory Management and

    the activities of Inventory Control do not make decisions or manage operations; they provide

    the information to Managers who make more accurate and timely decisions to manage their

    operations.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 10

    Practicality:

    The system should be stable and can be operated by the people with average

    intelligence.

    Efficiency:

    There should be balance amongst various factors like accuracy, comprehensiveness on

    one hand and response timeliness of the system on the other hand.

    Cost:

    It is desirable to aim for the system with a minimum cost subject to the condition

    that it must satisfy the entire requirement.

    Flexibility:

    The system should be modifiable depending on the changing needs of the user. Such

    modifications should entail extensive reconstructing or recreation of software. It should also

    be portable to different computer systems.

    Security:

    This is very important aspect requiring rigorous designing of database including hardware

    reliability, fallback procedures and physical security of data.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 11

    DESCRIPTION OF SOFTWARE DEVELOPMENT LIFE CYCLE

    Problem Specification

    The first step of Inventory Management System is identifying the problem.The Project

    INVENTORY MANAGEMENT SYSTEM is for maintaining the IT Assets of Drishtee. Till

    now the assets of company maintained manually on exel, this is very much time consuming

    and have lots of errors. To overcome this problem INVENTORY MANAGEMENT

    SYSTEM software is required.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 12

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 13

    Feasibility Study

    A feasibility study is a formal study used to decide what type of system can be developed

    which meets the needs of the organization.

    Systems Investigation

    Techniques used in gathering information to investigate the present system include:

    Observation and inspection of records

    Systems Analysis

    Systems analysis is a detailed look at a current system and what a new system will be

    required to do. The objectives of the new system:-

    To ease data management and storage of information.

    To reduce the number of errors creeping with the current system.

    Designing in a proper sequenced way to facilitate cross-checking.

    Testing The primary purpose of this phase is to determine whether the software developed and unit

    tested in Phases 3 and 4 is ready for implementation. Each testing stage will have a unique

    testing team, who will define the work plan, approach, scope and entry and exit criteria for

    each stage. Each testing stage should be completed

    Maintenance Phase

    Any change to any component of the product (including documentation) after it has passed

    the acceptance test.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 14

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 15

    General Architecture Of Inventory Management System

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 16

    FEASIBILITY STUDY

    Feasibility study is a test of a system proposal according to its workability, impact on the

    organization, ability to meet user needs, and effective use of resources. It focuses on 3 major

    questions: -

    1. What are the users demonstrable needs &how does a candidate system meet them?

    2. What resources are available for given candidate systems? Is the problem worth solving?

    3. What are the likely impacts of the candidate system on the organization? How well does it fit

    within the organizations?

    The objective of a feasibility study is not to solve the problem but to acquire a sense of its

    scope. During the study, the problem definition is crystallized and aspects of the problem to

    be included in the system are determined. Consequently, costs and benefits are estimated

    with greater accuracy at this stage.

    The result of the feasibility is a formal proposal. It consists of the

    following: -

    1. Statement of the problem

    A carefully worded statement of the problem that led to analysis.

    2. Summary of findings& recommendations

    It is ideal for user who requires quick access to the results of the analysis of the system

    under study. Conclusions are stated, followed by a list of the recommendation justification

    for them.

    3. Details of findings

    An outline of the methods & procedures undertaken by the existing system, followed by

    coverage of the objective and procedures of the candidate system. It also includes output

    reports, file structures& cost and benefits of candidate system.

    4. Recommendations and conclusions

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 17

    Specific Recommendations regarding the candidate system, including personnel assignments,

    costs, project schedule, and target dates.

    FEASIBILITY CONSIDERATION

    Three key considerations are involved in the feasibility analysis: -

    1. Economical feasibility

    2. Technical feasibility

    3. Behavioral feasibility

    Economicalfeasibility :-

    It is used for evaluating the effectiveness of a candidate system. More commonly known as

    cost/benefit analysis, the procedure is to determine the benefits and savings that are expected

    from a candidate system and compare them with costs.

    Technical feasibility :-

    It centers around the existing computer system and to what extent it can support the roposed

    addition. If the budget is a serious constraint, then the project is judged not feasible.

    Behavioral feasibility:-

    People are inherently resistant to change & computers have been known to facilitate change.

    An estimate should be made of how strong a reaction the user stay is likely to have toward

    the development of a computerized system. It is common knowledge that computer

    installations have something to do with turnover, transfers & changes in employee job status.

    Therefore, it is understandable that the introduction of a candidate system requires special

    effort to educate, sell & train the staff on new ways of conducting business.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 18

    ECONOMICAL ANALYSIS

    Among the most important information contained in a feasible study in cost benefit analysis

    and assessment of the economic justification for a computer based system project. Cost

    benefit analysis delineates costs for project development and weighs them against tangible

    (i.e. measurable directly in dollars) & intangible benefits of a system. Cost benefit analysis

    is complicated by criteria that vary with the characteristics of system to be developed the

    relative size of the project & the expected returns on investment desired as part of companys

    strategic plan. In addition many benefits derived from computer-based systems are intangible

    (e.g. better design quality through interactive optimization, increased patient satisfaction pre

    analyzed sales data). Direct quantitative comparisons may be difficult to achieve. Costs

    associated with development of a computer-based system are:

    TECHNICAL ANALYSIS

    During technical analysis, analyst evaluates the technical merits of system concept, while at

    the same time collecting additional information about performance, reliability,

    maintainability and predictability. Technical analysis begins with an assessment of the

    technical viability of the proposed system.

    1. What technologies are required to accomplish system function and performance?

    2. What new materials, methods, algorithm, or processes are required and what is their

    development risk?

    3. How will these technology issues affect cost? The result obtained from technical analysis

    from basis for another go/no-go decision on the test system If technical risk severe, if models

    indicates that desired function cannot be achieved, if the pieces just wont fit together

    smoothly- its back to the drawing board! data and information generated were firstly

    retrieved. The project that has to be completed must have minimum data entry and

    consistency of record.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 19

    PROBLEM ANALYSIS

    The application of computers speeds up data processing activities and adds some flexibility

    to the management of data and the information generated from it. Widespread and easy

    access to data from computers, advances in logical and physical access methods, matched by

    step increased in the density and volumes of disk storage devices, led gradually to a

    reassessment of the role of data management decision making. Here the recognition of need

    is done.

    Analysis involves interviewing the clients and end users. During this process of analysis, a

    massive amount of information is collected in forms of answers to questions. One of the

    major problems during analysis is how to organize the information obtained so the

    information can be effectively evaluated for completeness and consistency.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 20

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 21

    SYSTEM REQUIREMENT SPECIFICATION

    Requirement specification document:-

    1. Abstract 2. Purpose 3. Scope

    1. Abstract:-

    This is the requirements specification document There is a need to track the performance of

    each product in terms of demand to determine how much to order and when to order. The

    parameters that are required to answer these questions are economic order quantity (EOQ)

    and the re-order point. The annual cost of each product is obtained to determine the best deal

    for the invoices received for the product. The Project INVENTORY MANAGEMENT

    SYSTEM is for maintaining the IT Assets of Drishtee.

    2. Purpose:-

    The Project INVENTORY MANAGEMENT SYSTEM is for maintaining the IT Assets of

    Drishtee. Till now the assets of company maintained manually on exel,this is very much

    time consuming and have lots of errors. To overcome this problem INVENTORY

    MANAGEMENT SYSTEM software is required.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 22

    3. Scope:-

    The software will be ONLINE, web based software to manage the IT assets of Drishtee.. The

    proposed software will run from an Internet browser and Internet connectivity is compulsory

    for the functioning of this software.

    Developers responsibility over view

    The developer is responsible for:

    (a) Developing the system.

    (b) Performing test cases

    (c) Installing the software on clients hardware.

    (d) For conducting any user training that might be needed for using system.

    (e) Designing course and assignments.

    (f) Monitoring system for period of one year.

    FRONT END - A DESCRIPTION

    For software applications, front end is the same as user interface.

    In client/server applications, the client part of the program is often called the

    front end and the server part is called the back end.

    Compilers, the programs that translate source code into object code, are often

    composed of two parts: a front end and a back end. The front end is responsible for checking

    syntax and detecting errors, whereas the back end performs the actual translation into

    object code.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 23

    WHY FRONT END - ASP.NET?

    1: ASP.NET Is integrated with the .NET Framework

    The .NET Framework is divided into an almost painstaking collection of functional

    parts, with a staggering total of more than 10,000 types(the .NET term for classes, structures,

    interfaces, and other core programming ingredients). The massive collection of functionality

    that the .NET Framework provides is organized in a way that traditional Windows

    programmers will see as a happy improvement. Each one of the thousands of classes in the

    .NET Framework is grouped into a logical, hierarchical container called a namespace.

    Different namespaces provide different features. Taken together, the .NET namespaces offer

    functionality for nearly every aspect of distributed development from message queuing to

    security. This massive toolkit is called the class library.

    2: ASP.NET Is Compiled, Not Interpreted

    One of the major reasons for performance degradation in classic ASP pages is its use of

    interpreted script code. Every time an ASP page is executed, a scripting host on the web

    server needs to interpret the script code and translate it to lower-level machine code, line by

    line. ASP.NET applications are always compiledin fact, its impossible to execute C# or

    Visual Basic code without it being compiled first.

    3: ASP.NET Is Multilanguage

    IL is a stepping stone for every managed application. (A managedapplicationis any

    application thats written for .NET and executes inside the managed environment of the

    CLR.) In a sense, IL is thelanguage of .NET, and its the only language that the CLR

    recognizes.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 24

    4: ASP.NET Is Hosted by the Common Language Runtime

    The most important aspect of the ASP.NET engine is that it runs inside the runtime

    environment of the CLR.

    Its benefits are :-

    A: Automatic memory management and garbage collection:

    Every time your application instantiates a reference-type object, the CLR allocates space on

    the managed heapfor that object. However, you never need to clear this memory manually.

    The garbage collector runs periodically inside the CLR, automatically reclaiming unused

    memory for inaccessible objects. This model saves you from the low-level complexities of

    C++ memory handling and from the quirkiness of COM reference counting.

    B: Type safety:

    When you compile an application, .NET adds information to your assembly that indicates

    details such as the available classes, their members, their data types, and so on. As a result,

    other applications can use them without requiring additional support files, and the compiler

    can verify that every call is valid at runtime. This extra layer of safety completely obliterates

    whole categories of low-level errors.

    C: Extensible metadata:

    The information about classes and members is only one of the types of metadata that .NET

    stores in a compiled assembly. Metadatadescribes your code and allows you to provide

    additional information to the runtime or other services. For example, this metadata might tell

    a debugger how to trace your code, or it might tell Visual Studio how to display a custom

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 25

    control at design time. You could also use metadata to enable other runtime services, such as

    transactions or object pooling.

    D: Structured error handling: .

    NET languages offer structured exception handling, which allows you to organize your error-

    handling code logically and concisely. You can create separate blocks to deal with different

    types of errors. You can also nest exception handlers multiple layers deep.

    E: Multithreading:

    The CLR provides a pool of threads that various classes can use. For example, we can call

    methods, read files, or communicate with web services

    asynchronously, without needing to explicitly create new threads.

    5: ASP.NET Is Object-Oriented:

    ASP provides a relatively feeble object model. It provides a small set of objects; these objects

    are really just a thin layer over the raw details of HTTP and HTML. On the other hand,

    ASP.NET is truly object-oriented. Not only does your code have full access to all objects in

    the .NET Framework, but you can also exploit all the conventions of an OOP (object-

    oriented programming) environment. For example, you can create reusable classes,

    standardize code with interfaces, extend existing classes with inheritance, and bundle useful

    functionality in a distributable, compiled component.

    6 : ASP.NET Is Multiservice and Multibrowser:

    One of the greatest challenges web developers face is the wide variety of browsers they need

    to support. Different browsers, versions, and configurations differ in their support of HTML.

    Web developers need to choose whether they should render their content according to HTML

    3.2, HTML 4.0, or something else entirelysuch as XHTML 1.0 or even WML (Wireless

    Markup Language) for mobile devices. This problem, fueled by the various browser

    companies, has plagued developers since the World Wide Web Consortium (W3C) proposed

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 26

    the first version of HTML. Life gets even more complicated if you want to use an HTML

    extension such as JavaScript to create a more dynamic page or provide validation.

    7 : ASP.NET Is Easy to Deploy and Configure :

    Every installation of the .NET Framework provides the same core classes. As a result,

    deploying an ASP.NET application is relatively simple. Distributing the components your

    application uses is just as easy. All you need to do is copy the component assemblies along

    with your website files when you deploy your web application. Because all the information

    about your component is stored directly in the assembly file metadata, theres no need to

    launch a registration program or modify the Windows registry. Configuration is another

    challenge with application deployment, particularly if you need to transfer security

    information such as user accounts and user privileges. ASP.NET makes this deployment

    process easier by minimizing the dependence on settings in IIS (Internet Information

    Services). Instead, most ASP.NET settings are stored in a dedicated web.config file. The

    web.config

    file is placed in the same directory as your web pages. It contains a hierarchical grouping of

    application settings stored in an easily readable XML format that you can edit using nothing

    more than a text editor such as Notepad.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 27

    .NET Framework in context

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 28

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 29

    BACK END A DESCRIPTION

    The back-end comprises the components that process the output from the front-end.Back-

    end is hidden from the user.

    A back-end database is a database that is accessed by users indirectly through an

    external application rather than by application programming stored within the database

    itself or by low level manipulation of the data (e.g. through SQL commands).

    A back-end database stores data but does not include end-user application elements

    such as stored queries, forms, macros or reports.

    SQL SERVER:-

    SQL Server is an SQL-compliant RDBMS. SQL-compliant means it

    use the ANSI (American National Standard Institute) version of Structured Query Language

    or SQL. Structured Query Language is a command that allow us to modify or retrieve

    information from the database.

    Client server means that SQL Server is designed to store data in the central location (the

    server) and deliver it on demand to numerous other locations (the client). SQL Server is also

    a Relational Database Management System (RDBMS).

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 30

    SOFTWARE AND HARDWARE REQUIREMENT

    Processing Environment :-

    PLATFORM : .NET 3.5

    Operating System : Windows 7 Professional.

    Language : ASP.NET using C#

    Back End : SQL Server 2000 R2

    Hardware Requirements :-

    Pentium Dual-Core Processors

    1GB of RAM

    160GB of Hard Disk

    Server/Client Machine

    Software Requirements :-

    Visual Studio.Net (version 3.5)

    .Net Framework (version 3.5) SQL Server 2008

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 31

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 32

    SYSTEM DESIGN

    System layout is the first step of the software development, which requires a mindful

    and sensible planning. The aim of S/W designing is to achieve the desired goal by planning

    how various parts are to be coded properly. It is to be done carefully because if this phase

    contains any error then that is going to effect the performance of the system. As a result it

    may take more processing time, response time and extra coding i.e. programs will occupy

    extra memory.

    What is system design?

    As S/W is to be designed in Microsoft Visual Studio 2008 with Microsoft SqlServer

    2005, the concept of database must be known for the quality designing, containing the design

    of database, design of forms, design of reports. Chances of errors are minimized and if done

    then corrected. Designing the system has reduced all the time consuming efforts, manual

    work and handling of history cards. The existing system contains all information in manual

    files. The files have been created and indexes have been created on the tables in which

    number of records is very large. As a result, the system search for a value has been direct

    and fast in comparison to the sequential searching.

    Design objective:-

    Goals in mind while designing the system:

    1 To reduce the manual work required to be done.

    2 To reduce errors inherently manually making the output inconsistent & incorrect.

    3 To make the system completely menu driven & user friendly.

    4 To design the system so that even non- programmer can use the system effectively and

    system could act catalyst in achieving objectives.

    5 To improve the management of permanent information of the company by keeping it in

    properly structured tables.

    6 To provide the facility to modify any record whenever required.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 33

    DESIGN OVERVIEW

    The design stage takes the final specification of the system from analysis stages and finds

    the best way of fulfilling them, given the technical environment and previous decision on the

    required level of automation.

    The system design is carried in two phases:

    The architectural design (high level design)

    The detail design (low level design)

    LOW LEVEL DESIGN

    The low level design maps the business system described in the program requirements

    specification data structure, involving:

    Identification of entities:

    All the entities related to the module were identified, checked and can be solicited.

    Identification of relationship:

    The relationship between the entities, within and outside the system was identified.

    Normalization

    The entities were normalized first.

    HIGH LEVEL DESIGN

    The high-level design maps the logical model of the physical databases design.

    Fast path table mapping:

    Table was created for the system using fast path table mapping. This has provision to map

    the entities and attributes into the tables. The name of entity is taken as the table name.

    Default database design:

    This utility creates columns and cons traits definition from the entity modeland the table

    entity mapping entered in the case of dictionary. The database design can be refined

    according to your application to your regarding using the tables, columns and key cons traits

    definition screen to make amendments.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 34

    The steps involved were:

    Generation of table script.

    Check the constraint.

    Keys.

    Generate the program:

    The program was generated based on the relationship specified and according to the

    preferences.

    Program specification:

    The program specifications are written for the transaction, modification, queries, reports and

    printer. The logic for each field, block and form were written so that anyone who does not

    know system will be able to code logic. Field validation and friendly messages were written

    as a part of program specification

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 35

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 36

    DATA BASE DESIGN:

    One of the most important factors is building a well executing application and the

    design of the database tables. For a good databases design, good understanding of the

    normalization concept is needed. The tables are the basic building materials of data. A table

    is two-dimensional grids with rows and columns. The column indicates fields of the table

    while rows indicate records of the table. The tables have been so created that duplicity of the

    items and optimizing the database prevents redundancy. The packages is made keeping in

    mind that job mustnt be time consuming and less manpower and efforts are required so that

    the user is satisfied.

    Table design:-

    The tables of the project designed on the behalf of following pages :-

    1. Product Brand

    2. Product Category

    3. Product

    4. Product Transaction

    5. Product Transaction List

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 37

    TABLE FOR PRODUCT BRAND PAGE

    The Application Page table is used to contain all the details of Product Category that newly

    added :-

    Table design:-

    Field name Datatype Size Key Allow nulls

    Brand_code Varchar 6 Primary

    key

    ___

    Brand_name Varchar 250 Checked

    Created_on Datetime - Checked

    Created_by Char 10 Checked

    Modified_on Datetime - Checked

    Modified_by Char 10 Checked

    Ip_address Varchar 15 Checked

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 38

    TABLE FOR PRODUCT CATEGORY PAGE

    The Application Page table is used to contain all the details of Product Category that newly

    added :-

    Table design:-

    Field name Datatype Size Key Allow nulls

    Category_code Int - Primary

    key

    ___

    Category_sub_code Varchar 6 Checked

    Category_name Varchar 250 Checked

    Category_parent_code Int - Checked

    Created_on Datetime - Checked

    Created_by Char 10 Checked

    Modified_on Datetime 50 Checked

    Modified_by Char 10 Checked

    Ip_address Varchar 15 Checked

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 39

    TABLE FOR PRODUCT PAGE

    The Product table is used to contain all the details of Product that has been existed :-

    Table design:-

    Field name Datatype Size Key Allow nulls

    Category_code Int - Primary

    key

    ----

    Brand_code Varchar 6

    Checked

    Product_fixed_

    asset_no

    Int -

    ----

    Product_id Int -

    Product_name Varchar 250 ----

    Product_detail Varchar 1000 ----

    Serial_no Varchar 100 Checked

    Purchase_date Datetime - Checked

    Search_option1 Varchar 100 Checked

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 40

    Search_option2 Varchar 100 Checked

    Office_id Int - ----

    Current_status Char 1 Checked

    Current_status_on Datetime Checked

    Created_by Char 10 ----

    Created_on Datetime - ----

    Modified_on Datetime - Checked

    Modified_by Char 10 Checked

    Ip_address Varchar 15 Checked

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 41

    TABLE FOR TRANSACTION PAGE

    The table is used to contain all the details of Transactions :-

    Table design:-

    Field name Datatype Size Key Allow nulls

    Serial_no Int - Primary key ----

    Product_id Int - ----

    Transaction_type

    _

    code

    Int - ----

    Transaction_date Datetime - ----

    Remarks Varchar 1000 ----

    Office_id Int - ----

    Holder_emp_cod

    e

    Char 10 ----

    Transaction_

    history_no

    Int - ----

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 42

    Created_on Datetime - ----

    Created_by Char 10 ----

    Ip_address Varchar 15 Checked

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 43

    TABLE FOR TRANSACTION LIST PAGE

    The table is used to contain all the details of Transactions List :-

    Field name Datatype Size Key Allow nulls

    Transaction_type_

    code

    Int - Primary key ----

    Transaction_type_

    name

    Varchar 250 ----

    Active_status Char 1 ----

    Created_on Datetime - ----

    Created_by Char 10 ----

    Ip_address Varchar 15 Checked

    Holder_emp_code Char 10 ----

    Transaction_

    history_no

    Int - ----

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 44

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 45

    DATA FLOW DIAGRAM

    External entities Data flow diagrams are a graphic tool .It is a model of system. It is used to

    describe and analyze the movement of data through system. They focus on the data flowing

    into system. Between process and Out of data stores .a DFD also knew as a bubble chart.

    Data flow elements:

    A data flow diagram is composed of 4 elements:-

    1. Data flows

    2. Processes

    3. External Entities

    4. Data stores

    Data flows:-

    Data flow is, with an arrowhead showing the direction of flow.

    Data Flow Processes:-

    A process transforms incoming data flows into outgoing data flow. It can be symbolized by a

    circle. The area of the circle is divided into two parts i.e. identification & description of

    function.

    External Entities:-

    External sources or destination of data, which may be people, organization or outer entities,

    interact with system but are outside its boundary. A solid square defines a source or sink of

    data.

    Data stores:-

    An open-ended rectangle is a data store data at rest or temporary storage of data.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 46

    Developing data flow diagrams:-

    1. Physical diagram

    2. Exploded diagram

    Physical diagram:-

    The DFD showing the general that is the top layer of the system is called the context

    diagram. The physical context diagram describes the payroll monitoring system at very top

    level.

    Exploded diagram:-

    To understand the system better we required to get a clear idea of the system in that case we

    draw a lower level of DFD i.e. exploded.

    DATA FLOW DIAGRAM There are following types of DFD's has been created:

    DFD( Data flow Diagram) for Login Page :-

    Following Data Flow Diagram shows the user Login Authentication to protect unwanted

    users.First Check the users authentication before Inventory Management system Login if

    login authentication is true then he/she will be Login for Inventory Management system

    Home else not Login for desired Login Users.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 47

    Data Flow Diagaram0 Level

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 48

    DFD( Data flow Diagram) for 1 level:-

    After you login following Data Flow Diagram shows the user interaction with the login. The

    DFD shows Login, Assets Master, Transaction, Report and user output.

    Data Flow Diagaram1 Level

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 49

    DFD( Data flow Diagram) for 2 level:-

    In 2 level DFD the user enter the Product Brand Master, Product Category Master and then

    only move to the Product Master. The entry details save on Assets Master Database

    Data Flow Diagaram2Level

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 50

    DFD( Data flow Diagram) for 3 level:-

    In 3 level DFD the user enter the Product Brand Master, Product Category Master and

    directly on Product Master. The entry details save on Assets Master Database

    Data Flow Diagaram3Level

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 51

    DFD( Data flow Diagram) for 4 level:-

    Data Flow Diagaram3Level

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 52

    FLOWCHARTS

    Flowcharts are maps or graphical representations of a process. Steps in a process are shown

    with symbolic shapes, and the flow of the process is indicated with arrows connecting the

    symbols.

    Benefits of using flowcharts are that they:

    Promote process understanding by explaining the steps pictorially. People may have differing

    ideas about how a process works. A flowchart can help you gain agreement about the

    sequence of steps. Flowcharts promote understanding in a way that written procedures cannot

    do. One good flowchart can replace pages of words.

    Provide a tool for training employees. Because of the way they visually lay out the sequence

    of steps in a process, flowcharts can be very helpful in training employees to perform the

    process according to standardized procedures.

    Identify problem areas and opportunities for process improvement . Once you break down

    the process steps and diagram them, problem areas become more visible. It is easy to spot

    opportunities for simplifying and refining your process by analyzing decision points,

    redundant steps, and rework loops.

    Depict customer-supplier relationship, helping the process workers understand who their

    customers are, and how they may sometimes act as suppliers, and sometimes as customers in

    relation to other people.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 53

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 54

    SYSTEM IMPLEMENTATION

    After a thorough testing of the different aspects of the system described above are to be put

    to actual use by use by using live data by user staff after sufficient training for the use of the

    software has been provided to the department members. The result indicated a considerable

    time saving with the candidate system and comes out with fast and efficient development.

    What is system implement:-

    System Implementation is the process of having system personnel check out and put new

    software in to use, train users, install the new application and construct any files of data

    needed to use it.There are many implementation strategies, sometimes system developers

    may choose to pilot (test) the operation in only one area of the firm, say in one department or

    with only one or two persons. Sometimes they run old and new system together to compare

    the results.

    USER`S TRAINING

    In the Inventory Management System all the separate modules were put into a menu and after

    that this menu was attached with a master page. The first few days, I was physically present

    with the staff of the training department and made them understand the new system, as they

    were unfamiliar with it. I got them acquainted with the various screens and the various terms

    and the various interrelationships between them.After a thorough testing of the different

    aspects of the system as described above are to be put to actual use by using live data by user

    staff after sufficient training for the use of the software has been provided to the all drishtee

    staff members of Territery Division Office. The result indicated a considerable time saving

    with the candidate system and comes out with fast and efficient development.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 55

    IMPLEMENTATION MECHANISMS

    To implement this software, the following s/w and h/w specification are needed as:

    Operating environment: -

    Pentium processor

    20MB hard disk memory space.

    128-256MB RAM and more for fast and efficient execution.

    Pointing device such as mouse

    Windows XP/7

    Minimum Software environment required: -

    Platform used: Windows 7

    Front end (GUI): Visual Studio .Net 2010

    Back end (Data base): SQL Server 2008 R-2

    Minimum Hardware required: -

    Processor speed-133MHz

    Memory-2GB and more

    RAM-64MB

    Monitor

    Keyboard

    Floppy Drive

    Mouse

    CD-ROM.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 56

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 57

    FILE UPLOAD CONTROL

    Making Use of the File Upload Control

    The FileUpload control lets users upload a file to your Web site. It displays a text box in

    which the user can enter a filename and path. In addition, a Browse button displays a dialog

    box the user can access to browse to the file.

    ASP.NET includes two controls that allow website users to upload files to the web server.

    Once the web server receives the posted file data, its up to your application to examine it,

    ignore it, or save it to a back-end database or a file on the web server.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 58

    The controls that allow file uploading are HtmlInputFile (an HTML server control) and

    FileUpload (an ASP.NET web control). Both represent the HTML tag.

    The only real difference is that the FileUpload control takes care of automatically setting the

    encoding of the form to multipart/form data. If you use the HtmlInputFile control, its up to

    you to make this change using the enctype attribute of the tagif you dont, the

    HtmlInputFile control wont work.

    Declaring the FileUpload control is easy. It doesnt expose any new properties or events that

    you can use through the control tag.

    C# example :-

    protected void btnUpload_Click(Object sender,

    System.EventArgs e)

    { _

    String path = @C:\temp\

    + FileUpload1.FileName;

    FileUpload1.PostedFile.SaveAs(path);

    }

    Some few other quirks of the FileUpload control that are good to know:

    You can check the size of the uploaded file using the PostedFile. ContentLength

    property. This lets you put a size limit on uploads. Just dont call the SaveAs

    method if the file exceeds the maximum length.

    The ASP.NET user account must have access rights to the location to which you

    save the file.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 59

    The SaveAs method isnt what copies the file from the users computer to the

    server. Instead, the file is copied to the server when the user posts the page by

    clicking the Upload button. The SaveAs method merely directs the FileUpload

    control to save the file that has been copied to the server. If you dont call the

    SaveAs method, the uploaded file is discarded.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 60

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 61

    MASTER PAGE

    A Master Pageis simply a template a page that provides elements that appear consistently

    on each page, as well as contentplaceholdersthat specify where the variable content for each

    page should appear. A page that actually holds the content that a Master Page displays in its

    content area is called acontent page. The ContentPlaceHolder is a portion of the page where

    the content page can insert content.

    We can use a master page to ensure that every web page in your application has the same

    header, footer, and navigation controls. Master pages are an ASP.NET feature thats designed

    specifically for standardizing web-page layout.

    Master Page Basics

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 62

    To provide a practical, flexible solution for page templating, a number of requirements must

    be met:

    The ability to define a portion of a page separately and reuse it on multiple pages.

    The ability to create a locked-in layout that defines editable regions. Pages that reuse this

    template are then constrained to adding or modifying content in the allowed

    regions.

    The ability to allow some customization of the elements you reuse on each page.

    The ability to bind a page to a page template declaratively (with no code) or to bind to a page

    dynamically at runtime.

    The ability to design a page that uses a page template with a tool such as Visual Studio.

    Master pages meet all of these requirements.

    How to create a Master Page ?

    To create a master page in Visual Studio, select Website. Add New Item from the menu.

    Select Master Page, give it a filename (such as SiteTemplate.master), and click Add.

    A master page is similar to an ordinary ASP.NET web form. Like a web form, the master

    page can include HTML, web controls, and code (either in an inline script block or in a

    separate file). One difference is that while web forms start with the Page directive, a master

    page starts with a Master directive that specifies the same information, as shown here:

    Another difference between master pages and ordinary web forms is that master pages can

    use the ContentPlaceHolder control, which isnt allowed in ordinary pages. The

    ContentPlaceHolder is a portion of the page where the content page can insert content.

    Creating a content pages

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 63

    There are two ways to create a content page:

    Use the WebsiteAdd New Item command, select Web Page as the template, check

    the Select Master Page option, and then choose the Master Page you want the content

    page applied to.

    Select a Master Page either in the Solution Explorer or the Web Designer window,

    then choose the WebsiteAdd Content Page command.

    When we create a content page in this manner, initially the page contains just the following

    markup:

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 64

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 65

    WEB CONFIG

    Web.config acts as a central location for storing the information to be accessed by web

    pages. This information could be a Connection String stored at a centralized location so that

    it can be accessed in a data-driven page. If the connection string changes its just a matter of

    changing it at one place.

    In classic ASP such global information was typically stored as an application variable.

    In the sample we'll read the information from web.config using ASP.NET and ASP as there

    could be a possibility of project having ASP and ASP.NET pages.

    What is Web.ConfigFile ?

    Web.config file, as it sounds like is a configuration file for the Asp .net web

    application. An Asp .net application has one web.config file which keeps the configurations

    required for the corresponding application. Web.config file is written in XML with specific

    tags having specific meanings.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 66

    What is Machine.configFile ?

    As web.config file is used to configure one asp.net web application, same way

    Machine.config file is used to configure the application according to a particular machine.

    That is, configuration done in machine.config file is affected on any application that runs on

    a particular machine. Usually, this file is not altered and only web.config is used which

    configuring applications.

    What can be stored in Web.config file ?

    There are number of important settings that can be stored in the configuration file. Here are

    some of the most frequently used configurations, stored conveniently inside Web.config file..

    1. Database connections

    2. Session States

    3. Error Handling

    4. Security

    Database Connections :

    The most important configuration data that can be stored inside the web.config file is the

    database connection string. Storing the connection string in the web.config file makes sense,

    since any modifications to the database configurations can be maintained at a single location.

    As otherwise we'll have to keep it either as a class level variable in all the associated source

    files or probably keep it in another class as a public static variable. But it this is stored in the

    Web.config file, it can be read and used anywhere in the program. This will certainly save us

    a lot of alteration in different files where we used the old connection.

    Session States :

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 67

    Session in Asp .net web application is very important. As we know that HTTP is a stateless

    protocol and we need session to keep the state alive. Asp .net stores the sessions in different

    ways. By default the session is stored in the asp .net process.

    Error Handling :

    Error handling is one of the most important part of any web application. Each error has to be

    caught and suitable action has to be taken to resolve that problem. Asp.net web.config file

    lets us configure, what to do when an error occurs in our application.

    Security :

    The most critical aspect of any application is the security. Asp.net offers many different types

    of security method which can be used depending upon the condition and type of security you

    need.

    1.) No Authentication:

    No Authentication means "No Authentication" :) , meaning that Asp.net will not implement

    any type of security.

    2.) Windows Authentication:

    The Windows authentication allows us to use the windows user accounts. This provider uses

    IIS to perform the actual authentication, and then passes the authenticated identity to your

    code. If we like to see that what windows user is using the Asp.net application we can use:

    User.Identity.Name;

    This returns theDOMAIN\UserNameof the current user of the local machine.

    3.) Passport Authentication:

    Passport Authentication provider uses Microsoft's Passport service to authenticate users.

    You need to purchase this service in order to use it.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 68

    4.) Forms Authentication:

    Forms Authentication uses HTML forms to collect the user information and than it takes

    required actions on those HTML collected values.

    web.config: Contains a key-value pair.

    web.config

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 69

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 70

    ADO.NET ADO.NET consists of managed classes that allow .NET applications to connect to data

    sources (usually relational databases), execute commands, and manage disconnected data.

    The ADO.NET Architecture

    ADO.NET uses a multilayered architecture that revolves around a few key concepts, such as

    Connection, Command, and DataSet objects.

    1. ADO.NET Data Providers

    A data provideris a set of ADO.NET classes that allows you to access a specific database,

    execute SQL commands, and retrieve data. Essentially, a data provider is a bridge between

    your application and a data source.

    The classes that make up a data provider include the following :

    Connection: You use this object to establish a connection to a data source.

    Command: You use this object to execute SQL commands and stored procedures.

    DataReader: This object provides fast read-only, forward-only access to the data

    retrieved from a query.

    DataAdapter: This object performs two tasks. First, you can use it to fill a DataSet (a

    disconnected collection of tables and relationships) with information extracted from a

    datasource.Second, you can use it to apply changes to a data source, according to the

    modifications

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 71

    The .NET Framework is bundled with a small set of four providers:

    SQL Server provider: Provides optimized access to a SQL Server database (version

    7.0 or later).

    OLE DB provider: Provides access to any data source that has an OLE DB driver. This

    includes SQL Server databases prior to version 7.0.

    Oracle provider: Provides optimized access to an Oracle database (version 8i or later).

    ODBC provider: Provides access to any data source that has an ODBC driver.

    The ADO.NET Namespaces

    1. System.Data : Contains the key data container classes that model columns, relations,

    tables, datasets, rows, views, and constraints. In addition,contains the key interfaces that are

    implemented by the connection based data objects.

    2. System.Data.Common: Contains base, mostly abstract classes that implement some of

    the interfaces from System.Data and define the core ADO.NET functionality. Data providers

    inherit from these classes (such as DbConnection, DbCommand, and so on) to create their

    own Specialized versions.

    3. System.Data.OleDb :Contains the classes used to connect to an OLE DB provider,

    Including OleDbCommand, OleDbConnection, OleDbDataReader and OleDbDataAdapter.

    These classes support most OLE DB providers,but not those that require OLE DB version 2.5

    interfaces.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 72

    4. System.Data.SqlClient : Contains the classes you use to connect to a Microsoft SQL

    Server database, including SqlDbCommand, SqlDbConnection, SqlDataReader, and

    SqlDBDataAdapter. These classes are Optimized to use the TDS interface to SQL Server.

    5. System.Data.OracleClient : Contains the classes required to connect to an Oracle

    database including OracleCommand, OracleConnection, OracleDataReader, and

    OracleDataAdapter. These classes are using the optimized Oracle Call Interface (OCI).

    6. System.Data.Odbc: Contains the classes required to connect to most ODBC drivers.These

    classes include OdbcCommand, OdbcConnection, OdbcDataReader, and OdbcDataAdapter.

    ODBC drivers are included for all kinds of data sources and are configured through the Data

    Sources icon in the Control Panel.

    7. System.Data.SqlTypes : Contains structures that match the native data types in SQL

    Server.These classes arent required but provide an alternative to using standard .NET data

    types, which require automatic conversion.

    The Connection Class

    The Connection class allow us to establish a connection to the data source that you want to

    interact with. Before you can do anything else (including retrieving, deleting, inserting, or

    updating data), you need to establish a connection.

    When we create a Connection object, we need to supply a connection string. The connection

    string is a series of name/value settings separated by semicolons (;).

    The Command and DataReader Classes

    The Command class allow us to execute any type of SQL statement. Although we can use a

    Command class to perform data definitiontasks (such as creating and altering databases,

    tables,and indexes), were much more likely to perform data manipulationtasks (such as

    retrieving and updating the records in a table).The provider-specific Command classes

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 73

    implement standard functionality, just like the Connection classes. In this case, the

    IDbCommand interface defines a few key properties and the core set of methods that are

    used to execute a command over an open connection.

    Command Basics

    Before we can use a command, we need to choose the command type, set the command text,

    and bind the command to a connection. We can perform this work by setting the

    corresponding properties (CommandType, CommandText, and Connection), or we can pass

    the information we need as constructor arguments.

    Method Description

    1. ExecuteNonQuery() Executes non-SELECT commands, such as SQL commands that

    insert, delete, or update records. The returned value indicates the number of rows affected by

    the command. You can also use ExecuteNonQuery() to execute data-definition commands

    that create, alter, or delete database objects (such as tables, indexes, constraints, and so on).

    2. ExecuteScalar() Executes a SELECT query and returns the value of the first field of the

    first row from the rowset generated by the command. This method is usually used when

    executing an aggregate SELECT command that uses functions such as COUNT() or SUM()

    to calculate a single value.

    3. ExecuteReader() Executes a SELECT query and returns a DataReader object that wraps a

    read-only, forward-only cursor.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 74

    The DataReader Class

    A DataReader allow us to read the data returned by a SELECT command one record at a

    time, in a forward-only, read-only stream. This is sometimes called a firehose cursor. Using

    a DataReader is the simplest way to get to your data, but it lacks the sorting and relational

    abilities of the disconnected DataSet.

    Method Description

    1. Read() Advances the row cursor to the next row in the stream. This method must also be

    called before reading the first row of data. (When the DataReader is first created, the row

    cursor is positioned just before the first row.) The Read() method returns true if theres

    another row to be read, or false if its on the last row.

    2. GetValue() Returns the value stored in the field with the specified index, within the

    currently selected row. The type of the returned value is the closest .NET match to the native

    value stored in the data source. If you access the field by index and inadvertently pass an

    invalid index that refers to a nonexistent field, you will get an IndexOutOfRangeException

    exception.

    3. GetValues() Saves the values of the current row into an array. The number of fields that

    are saved depends on the size of the array you pass to this method. You can use the

    DataReader.FieldCount property to determine the number of fields in a row, and you can use

    that information to create an array of the right size if you want to save all

    the fields.

    4. NextResult() If the command that generated the DataReader returned more than one

    rowset, this method moves the pointer to the next rowset (just before the first row).

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 75

    5. Close() Closes the reader. If the originator command ran a stored procedure that returned

    an output value, that value can be read only from the respective parameter after the reader

    has been closed.

    The DataAdapter Class

    To extract records from a database and use them to fill a table in a DataSet, we need to use

    another ADO.NET object : a DataAdapter. The DataAdapter comes in a provider-specific

    object, so there is a separate DataAdapter class for each provider (such as SqlDataAdapter,

    OracleDataAdapter, and so on).

    The DataAdapter serves as a bridge between a single DataTable in the DataSet and the data

    source. It contains all the available commands for querying and updating the data source. To

    enable the DataAdapter to edit, delete, and add rows, you need to specify Command objects

    for the UpdateCommand, DeleteCommand, and InsertCommand properties of the

    DataAdapter. To use the DataAdapter to fill a DataSet, you must set the SelectCommand.

    .

    Method Description

    1. Fill() Adds a DataTable to a DataSet by executing the query in the SelectCommand. If our

    query returns multiple result sets, this method will add multiple DataTable objects at once.

    You can also use this method to add data to an existing DataTable.

    2. FillSchema() Adds a DataTable to a DataSet by executing the query in the

    SelectCommand and retrieving schema information only. This method doesnt add any data

    to the DataTable. Instead, it simply preconfigures the DataTable with detailed information

    about column names, data types, primary keys, and unique constraints.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 76

    3. Update() Examines all the changes in a single DataTable and applies this batch of changes

    to the data source by executing the appropriate InsertCommand, UpdateCommand, and

    DeleteCommand operations.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 77

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 78

    Testing

    Testing is the major control measure used during software development. Its basic function is

    to detect errors in the software. During requirement analysis and design, the output is a

    document that is usually textual and no executable. After the coding phase, computer

    programs are available that can be executed for testing purpose. This implies that testing not

    only has to uncover errors introduced during coding, but also errors introduced during

    previous phase. Thus the goal of testing is to uncover the requirements, design and coding

    errors in the programs.

    Objectives of testing

    First of all objectives should be clear.

    Testing as a process of executing a program with the intent of finding errors.

    To perform testing, test cases are designed. A test case is a particular made up of artificial

    situation upon which a program is exposed so as to find errors. So a good test case is one that

    finds undiscovered errors.

    If testing is done properly, it uncovers errors and after fixing those errors we have software

    that is being developed according to specifications.

    The above objective implies a dramatic change in viewpoint .The move counter to the

    commonly held view than a successful test is one in which no errors are found. In fact, our

    objective is to design tests that a systematically uncover different classes of errors and do so

    with a minimum amount of time and effort.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 79

    Testing principles

    Before applying methods to design effective test cases, software engineer must understand

    the basic principles that guide the software testing process. Some of the most commonly

    followed principles are:

    All test should be traceable to user requirements as the objective of testing is to uncover

    errors, it follows that the most severe defects (from the users point of view) are those that

    causes the program to fail to meet its requirements.

    Tests should be planned long before the testing begins. Test planning can begin as soon as

    the requirement model is complete. Detailed definition of test cases can begin as soon as the

    design model has been solidated. Therefore, all tests can be planned and designed before any

    code can be generated.

    The Pareto principle applies to software testing stated simply the Pareto principle implies that

    80 percent of all errors uncovered during testing will likely be traceable to 20 percent of all

    program modules. The problem of course, is to isolate these suspects modules and to

    thoroughly test them.

    Testing should begin in the small and progress towards testing in large. The first tests

    planned and executed generally focus on individual modules. As testing progresses, testing

    shifts focus in an attempt to find errors in integrated clusters of modules and ultimately in the

    entire system.

    Exhaustive testing is not possible. The number of paths permutations for impossible to

    execute every combination of paths during testing. It is possible however to adequately cover

    program logic and to ensure that all conditions in the procedural design have been exercised.

    To be most effective, an independent third party should conduct testing. By most effective,

    we mean testing that has the highest probability of finding errors (the primary objective of

    testing).

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 80

    Test information flow

    Testing is a complete process. For testing we need two types of inputs:

    Software configuration

    It includes software requirement specification, design specification and source code of

    program. Software configuration is required so that testers know what is to be expected and

    tested.

    Test configuration

    It is basically test plan and procedure. Test configuration is testing plan that is, the way how

    the testing will be conducted on the system. It specifies the test cases and their expected

    value. It also specifies if any tools for testing are to be used.

    Test cases are required to know what specific situations need to be tested. When tests are

    evaluated, test results are compared with actual results and if there is some error, then

    debugging is done to correct the error. Testing is a way to know about quality and reliability.

    Error rate that is the occurrence of errors is evaluated. This data can be used to predict the

    occurrence of errors in future.

    A software product can be tested in two ways :-

    In first approach, only overall functioning of the product is tested. Inputs are given and

    outputs are checked. This approach is called black box testing. It does not care about the

    internal functioning of the product.

    The other approach is called white box testing. Here the internal functioning of the product is

    tested. Each procedure is tested for its accuracy. It is more intensive than black box testing.

    But for the overall product both these techniques are crucial. There should be sufficient

    number of tests in both categories to test the overall product.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 81

    Basic methods of Testing

    White box testing

    White box testing is performed to reveal problems with the internal structure of a program.

    This requires the tester to have detailed knowledge of the internal structure. A common goal

    of white box testing is to ensure a test case exercises every path through a program. A

    fundamental strength that all white box strategies share is that the entire software

    implementation is taken into account during testing, which facilitates error detection even

    when software specification is vague or incomplete. The effectiveness or thoroughness of

    white box testing is commonly expressed in terms of test or code coverage metrics, which

    measure the fraction of code exercised by test cases.

    Basic Path Testing

    It is a white box technique. It was proposed by Tom McCabe. These tests guarantee to

    execute every statement in the program at least one time during testing. Basic set is the set of

    all execution paths of a procedure.

    Black Box Testing

    Black box tests are performed to access how well a program meets its requirements, looking

    for incorrect or missing functionality. Functional tests typically exercise code with valid or

    nearly valid input for which the expected output is known. This includes concepts such as

    boundary values.

    Performance tests evaluate response time, memory usage, throughput, device utilization and

    execution time. Stress tests push the system to or beyond its specified limits to evaluate its

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 82

    robustness and error handling capabilities. Reliability tests monitor system response to

    representative user input, counting failures over time to measure or certify reliability.

    Black box testing uncovers the following types of errors

    4. Incorrect or missing functions

    5. Interface errors

    6. External database access

    7. Performance errors

    8. Initialization and termination errors

    What is a Black Box Testing Strategy?

    Black Box Testing is not a type of testing; it instead is a testing strategy, which does not need

    any knowledge of internal design or code etc. As the name "black box" suggests, no

    knowledge of internal logic or code structure is required. The types of testing under this

    strategy are totally based/focused on the testing for requirements and functionality of the

    work product/software application. Black box testing is sometimes also called as "Opaque

    Testing", "Functional/Behavioral Testing" and "Closed Box Testing".

    The base of the Black box testing strategy lies in the selection of appropriate data as per

    functionality and testing it against the functional specifications in order to check for normal

    and abnormal behavior of the system. Now a days, it is becoming common to route the

    Testing work to a third party as the developer of the system knows too much of the internal

    logic and coding of the system, which makes it unfit to test the application by the developer.

    In order to implement Black Box Testing Strategy, the tester is needed to be thorough with

    the requirement specifications of the system and as a user, should know, how the system

    should behave in response to the particular action.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 83

    Various testing types that fall under the Black Box Testing strategy are: functional testing,

    stress testing, recovery testing, volume testing, User Acceptance Testing (also known as

    UAT), system testing, Sanity or Smoke testing, load testing, Usability testing, Exploratory

    testing, ad-hoc testing, alpha testing, beta testing etc.

    These testing types are again divided in two groups:

    a) Testing in which user plays a role of tester

    b) User is not required.

    Testing method where user is not required:-

    Functional Testing :-

    In this type of testing, the software is tested for the functional requirements. The tests are

    written in order to check if the application behaves as expected.

    Stress Testing :-

    The application is tested against heavy load such as complex numerical values, large number

    of inputs, large number of queries etc. which checks for the stress/load the applications can

    withstand.

    Load Testing :-

    The application is tested against heavy loads or inputs such as testing of web sites in order to

    find out at what point the web-site/application fails or at what point its performance

    degrades.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 84

    Ad-hoc Testing :-

    This type of testing is done without any formal Test Plan or Test Case creation. Ad-hoc

    testing helps in deciding the scope and duration of the various other testing and it also helps

    testers in learning the application prior starting with any other testing.

    Exploratory Testing :-

    This testing is similar to the ad-hoc testing and is done in order to learn/explore the

    application.

    Usability Testing :-

    This testing is also called as Testing for User-Friendliness. This testing is done if User

    Interface of the application stands an important consideration and needs to be specific for the

    specific type of user.

    Smoke Testing :-

    This type of testing is also called sanity testing and is done in order to check if the

    application is ready for further major testing and is working properly without failing up to

    least expected level.

    Recovery Testing :-

    Recovery testing is basically done in order to check how fast and better the application can

    recover against any type of crash or hardware failure etc. Type or extent of recovery is

    specified in the requirement specifications.

    Volume Testing :-

    Volume testing is done against the efficiency of the application. Huge amount of data is

    processed through the application (which is being tested) in order to check the extreme

    limitations of the system.

  • INVENTORY MANAGEMENT SYSTEM Master of Computer Applications

    Galgotias Institute Of Management & Technology, Gr. Noida | Project Report 85

    Testing where user plays a role/user is required:

    User Acceptance Testing :-

    In this type of testing, the software is handed over to the user in order to find out if the

    software meets the user expectations and works as it is expected to.

    Alpha Testing :-

    In this type of testing, the users are invited at the development center where they use the

    application and the developers note every particular input or action carried out by the user.

    Any type of abnormal behavior of the system is noted and rectified by the developers.

    Beta Testing :-

    In this type of tes