sales & customer tracking

Upload: khushboo-khanna

Post on 14-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Sales & Customer Tracking

    1/101

    A Project Reporton

    Sales & CustomerTracking System

  • 7/30/2019 Sales & Customer Tracking

    2/101

    TABLE OF CONTENTS

    Acknowledgment 3Chapter 1: Introduction

    71.1 Introduction81.2 Objective1.3 Requirements Specification

    201.4 Software/Package Used

    20

    Chapter 2: Literature Survey

    Chapter 3: Problem Formulation10

    3.1 Present State of Subject11

    3.2 Realization of the Problem12

    3.3 Problem Definition

    133.4 Scientific Novelty of work

    143.5 Steps Involved 15

    Chapter 4: Project Design19

    4.1 DFDs 434.2 E-R Diagrams 484.3 Data Dictionary 49

    Chapter 5: Experimental Results

    5.1 Database Design56

    5.2 Form Design57

    5.3 Reports 66

  • 7/30/2019 Sales & Customer Tracking

    3/101

    Chapter6:Conclusion & Scope

    6.1 Future Enhancements81

    6.2 Limitations82

    6.3 Advantages82

    6.4 Scope83

    6.5 Importance of Work83

    Bibliography 86

    ABSTRACT

    A well planned, systematically executed project development helps a

    lot in inculcating a good work culture. It provides linkage between

    students and industry in order to develop awareness of industrial

    approach to problem solving based on broad understanding of

    operations of the industrial organizations.

    The project Sales & Customer Tracking System has been an

    enriching experience for us in the field of programming.

    This project report provides an elaborate coverage of the salient

    features of developing software, its capabilities, and its limitations and

    of course all software development process followed.We hope this project report would prove to be a comprehensive source

    of information for the reader.

  • 7/30/2019 Sales & Customer Tracking

    4/101

    CHAPTER1:CHAPTER1:INTRODUCTIONINTRODUCTION

  • 7/30/2019 Sales & Customer Tracking

    5/101

    INTRODUCTION TO SALES &CUSTOMER TRACKING SYSTEM

    This Sales and Customer Tracking System project mainly deals with

    automating the tasks of maintaining and transacting the goods. In

    the Sales and Customer Tracking System inventory management is the

    key process. This process includes the activities such as maintenance

    of stock details, maintenance of receipts and items etc. It is a tedious

    job to maintain all these details manually. Hence we opted to automate

    the Sales and Customer Tracking System.

  • 7/30/2019 Sales & Customer Tracking

    6/101

    OBJECTIVE

    To automate the Sales and Customer TrackingSystem for a warehouse

  • 7/30/2019 Sales & Customer Tracking

    7/101

    CHAPTER 2:CHAPTER 2:PROBLEMPROBLEM

    FORMULATIONFORMULATION

  • 7/30/2019 Sales & Customer Tracking

    8/101

  • 7/30/2019 Sales & Customer Tracking

    9/101

    REALIZATION OF PROBLEM

    The current procedure is completely manual and suffers from the

    following drawbacks:

    1. Physically damageable ordersThe orders may get lost, torn burnt because of physical calamitiesor mismanagement leading to loss of important information,reproduction of which would take immense time and effort

    2. High probability of manual errorsSince the executives are manually filling in the details, theprobability of making typing errors and redundancy may occurwhich can lead to inconsistency of data.

    3. Time consumingThe entire procedure of entering the details as received from paperinto SQL Script was tedious and highly time consuming.

    4. Time LagThe orders were not processed unless all details were receivedcorrectly at the firms end. This led to a time lag between thesubmission of the details and submission of the order and thecustomer had to suffer even though he had sent the order, a timelag of at least one week.

    5. Difficult Reference and crosschecking proceduresTo refer to any particular details of an order the physical order ofthat customer had to be located and the details looked up manually.This was a waste of time and effort at the firms end.

    6. No central database

  • 7/30/2019 Sales & Customer Tracking

    10/101

    A central database was not maintained for all the orders,customers, suppliers or items for all the departments, eachdepartment maintained the database corresponding to its dutieswhich could lead to inconsistency of data at different ends.

    7. No authorizationThere was no check on the authority of the customer beingassociated with the firm. Thus the possibility on an unauthorizedcustomer submitting an order also existed.

    PROBLEM DEFINITON

    To design an automated inventory management system for anorganization the key system requirements include:

    1. Tracking inventory for various products as they enter intothe warehouse shipped from a variety of suppliers.This refers to the creation, maintenance and updating of the centralinventory database for all the products of an organization. Newrecords are created every time a new product is introduced. Thesystem should check for products whose stock levels are less thanthe recommended level or are pending against some orders, andthen generate a purchase order to be given to the supplier andrecords are updated every time an order request is successfullymet.

    2. Tracking orders as they are received from a centraltelemarketing organization.The telemarketing organization provides details of each order assupplied by the customer. At this point the tracking systemidentifies the customer, processes the order and after theverification is duly completed the system will add the order in itsdatabase and automatically updates the central database.

    3. Generating invoice and tracking amount receivable.The invoice should be generated automatically after checking theorder to be shipped to the customer.

    4. Providing Web based Application.

    Companies can log on to the Warehouses website and allows itsregistered customers to place an order through internet for thevarious products. Registered companies can also see all theprevious orders they have made on the website.

    5. Generating various printable reports.

  • 7/30/2019 Sales & Customer Tracking

    11/101

    The system allows its user to view and print various reports. Thesereports cover almost all sections like reports for invoices and orderscategorized as all orders or particular order between some specifieddates; reports for purchase of different products categorized as allpurchases or particular purchase order between some specified

    dates; reports for customers and suppliers categorized as all orlisted by their cities; reports for various products etc.

    6. Tracking records of customers and suppliers.The system keeps track of each of its customers and suppliers. Itinvolves storage of all the updated information about its customersand suppliers. The system keeps track of all sales made againsteach customer and all the purchases against each supplier.

    7. Providing Customers Relation ManagementThis is done by making advance reservations of orders for its

    clients, prioritizing its clients etc.

  • 7/30/2019 Sales & Customer Tracking

    12/101

    SCIENTIFIC NOVELTY OF WORK

    Developing the software is an attempt to completely automate themanagement of an organization and overcome the drawbacks faced bythe currently existing system. The software does this in the followingmanner:

    1. Online OrderingThe registered customers can place the order online. On thecompletion of an order, the order is forwarded to the concerneddepartment and items requested are arranged.

    2. ReliableThe database is automatically filled with the details as submitted bythe customer in online interface, thus eliminating any possibility ofmanual errors. Moreover, this software also controls the redundancyof data.

    3. Time EfficientThe software enables maintaining database easily, taking minimumtime to add, edit or view data.

    4. Simple to useThe software is designed such that users with no prior exposure tothe same can easily use it. Alerts are generated at the occurrenceof any inconsistent transaction thus minimizing the probability oferrors.

    5. Minimized Time LagOnline ordering and easy database management through thedesktop application simplifies and hence quickens the processing ofthe placed order to the customers satisfaction.

    6. Specific Search Simplified

  • 7/30/2019 Sales & Customer Tracking

    13/101

    The software enables searching records on the basis of manycriteria like customer name, items, orders, etc.

    7. Central Database MaintainedThe software enables the management of a centralized database,

    the access to which is distributed as intended by the administratordepending on the kind of transactions they are able to undertake.Different departments are given access to different parts of thedatabase, in which they can append or modify the records.

    8. Data loggingPrintable reports are provided in the software to enable maintainingrecords for particular customers, orders, suppliers and to overseetransactions of a particular time period.

  • 7/30/2019 Sales & Customer Tracking

    14/101

    STEPS INVOVLED

    The following table describes the steps involved in developing theproject divided in various phases of work.

    Phase

    StepNo.

    Activity

    Phase1

    123

    Process AnalysisSystem StudySRS Formation

    Phase2

    12

    SoftwareDevelopmentModule Integration

    Phase3

    12

    Unit TestingSystem LevelTesting

    Phase4

    1 SoftwareMaintenance

  • 7/30/2019 Sales & Customer Tracking

    15/101

    CHAPTER 3:CHAPTER 3:PROJECTPROJECT

    MONITORINGMONITORINGSYSTEMSYSTEM

  • 7/30/2019 Sales & Customer Tracking

    16/101

    GANTT CHART

    When creating a software project schedule, the planner begins with a

    set of tasks (the work break down structure). If automated tools are

    used, the work break down is input as a task network task outline.

    Efforts, duration and start date are then input for each task. In

    addition, task may be assigned to specific individuals.

    As a sequence of this input, a timeline chart, also called a Gantt Chart,

    is generated. A Gantt Chart can be developed for the entire project.

    Alternatively, separated it depicts a part of a software project schedule

    that emphasizes the concept scooping task for a new word processing

    software project. All project tasks (for concept scooping) are listed in

    the left hand column. The horizontal bars occur at the same time on

    the calendar, task concurrency is implied. The diamonds indicate

    milestones.

    Once the information necessary for the generation of the Gantt Chart

    has been input, the major of software project scheduling tools produce

    project tables a tabular listing of all project tasks, their planned and

    actual start and end dates and a verity of related information. Used in

    conjunction with the Gantt Chart project tables enable the project

    manager to track progress.

  • 7/30/2019 Sales & Customer Tracking

    17/101

    3.1.1 Gantt Table

    PROJECT :-Sales and Customer Tracking System

    S.N

    O

    TASK START FINISH DAY

    S1. SYSTEM STUDY AND

    ANALYSIS

    22 Aug

    2010

    26 Sep 2010 35

    1.1 Survey & Plan the

    Project

    22 Aug 2010 30 Aug 2010 10

    Survey Problem 31 Aug 2010 04 Sep 2010 5Plan the Project 05 Sep 2010 10 Sep 2010 5

    1.2 Analyze & study the

    Current System

    11 Sep 2010 26 Sep 2010 15

    2. SYSTEM DESIGN 27 Sep2010

    11 Oct 2010 14

    Database Design 27 Sep 2010 01 Oct 2010 4Design of User

    Interface

    02 Oct 2010 11 Oct 2010 10

  • 7/30/2019 Sales & Customer Tracking

    18/101

    S.NO WORK BREAKDOWN/TIME 22 Aug 26 Sep

    1. SYSTEM STUDY AND ANALYSIS

    1.1 Survey & Plan the Project

    Survey Problem

    Plan the Project1.2 Analyze & study the Current System

    2. SYSTEM DESIGN 27 Sep 11 Oct

    Database Design

    Design of User Interface

  • 7/30/2019 Sales & Customer Tracking

    19/101

    PERT CHART

    Program Evaluation and Review Technique (PERT) and Critical Path

    Method

    (CPM) are the project scheduling techniques that can be applied to

    software

    development. Both technique are driven by information already

    gathered in

    earlier planning activities:

    Estimation of Effort

    A decomposition of the product function

    The solution of the appropriate model and task set

    Decomposition of task

    Both PERT and CPM provide quantitative tools that allow the software

    planning to determine critical path the claim of task that determined

    the duration of the project establish most likely times estimates for

    individual task

    By applying statically models: and Calculation boundary times that

    define a time window for a particular task.

    Both PERT and CPM have been implemented in a wide verity of

    automated tools that are available for the personal computer. Such

    tools are easy to use and make the scheduling methods described

    previously available to every software project manager.

  • 7/30/2019 Sales & Customer Tracking

    20/101

    CHAPTER 4: SYSTEMCHAPTER 4: SYSTEMSTUDYSTUDY

  • 7/30/2019 Sales & Customer Tracking

    21/101

    FEASIBILITY STUDY

    Technical Feasibility

    The Technical Feasibility of the software system developed is centered

    around the existing computer system (hardware and software etc.) and

    to what extent it can support the proposed addition. Its various aspects

    are discussed hereby.

    Hardware Feasibility

    The hardware feasibility of the software under development will be asa under

    1. The present hardware setup of the organization may be sufficientfor running the software applications to be developed.

    2. System Support Group of the company provides the entirehardware requirement for the proposed system as and when

    needed.

    3. Two servers will be used to manage the application.

    Software Feasibility

    The software feasibility of the software under development can bestated as under:

    1. The new application requires .Net framework 1.1 which isavailable in the company.

    2. System Support Group of the company provides the entiresoftware requirement for the proposed system as and whenneeded.

  • 7/30/2019 Sales & Customer Tracking

    22/101

    Economic Feasibility: Cost and Benefit Analysis

    The Economic Feasibility study or the Cost / benefit analysis gives the

    picture of various costs and benefits and rules associated with the

    system. The various costs and benefits associated with the system

    under development will be as under. The feasibility will evaluate over a

    five-year period.

    Costs:

    Since it is an External project for the company, there will be cost

    benefit analysis in terms of resources according to the companypolicy, which cannot be declared.

    Moreover the application being developed will assume Windows

    NT as its server and license from Microsoft for .Net.

    Benefits:

    1. Since it is an External project for the company, it help company inachieving financial support for further company development.

    2. It helps client to sale the product to the property managers aroundthe world.

    3. It overall helps the community in managing the things like property.

    Operational Feasibility

    The Operational Feasibility of the system relates to the fact that, to

    what level the proposed system is able to achieve its objectives, for

    which it is designed. The various factors that decide the operational

    feasibility of the system are as under:

    System Performance

    Growth Potential

  • 7/30/2019 Sales & Customer Tracking

    23/101

    User friendliness / User Training

    Security Issues

    System Performance

    The proposed system would be able to achieve the required

    performance level, it will be meant to achieve. System Performance

    can be classified into two major components namely:

    System Response TimeThe Response Time for fetching the data and displaying on the

    interface of the entire system is likely to be minimal.

    System Accuracy

    The system under design is accurate to the desired level in its

    operations. The user interface provides all the desired information

    related to that interface accurately.

    Growth Potential

    Since the proposed system is likely to be designed using object

    oriented approach in such a way that it can be expanded and made

    more powerful with the changing requirements of the user as and

    when needed.

    Security issues

    The System designed gets login id and password of the end user

    automatically from his login and displays the relevant screen for

    him/her.

    The application has its data in the MS-Access database, which is

    Run in only Office 2000 and Operating system will be Windows 2000

    professional.

  • 7/30/2019 Sales & Customer Tracking

    24/101

    Appropriate backup of the code and the database will be regularly

    taken, so as to not have a crisis situation in the event of a server crash.

    CHAPTER 5: SYSTEMCHAPTER 5: SYSTEMANALYSISANALYSIS

  • 7/30/2019 Sales & Customer Tracking

    25/101

    REQUIREMENT SPECIFICATION

    4.1 Hardware Requirements

    Processor PC with a Pentium II-class processor, 600 MHz

    (Recommended)

    RAM 256 MB (Recommended)

    Hard disk 10GB (4GB space required to install VS .NET

    and related softwares)

    4.2 Software Requirements

    System Software

    The software can be executed in the Windows 2000 (Professional or

    Server) or Windows XP Professional environment.

    Application Software

    It requires VISUAL STUDIO 2005 .NET runtime environment with SQL

    server installed for database related programming.

    It also requires .net 2.0 framework to be installed on the client PC.

    It requires MDAC (Microsoft Data Access Component) to be installed

    on the PC to support data access components such as SQL server.

  • 7/30/2019 Sales & Customer Tracking

    26/101

    ASP Requirements

    Processor : Pentium or AMD Athlon 200 MHz or greater

    RAM : 32 MB RAM

    Free HD Space : 100 MB disk space

    Operating System : Windows 98 (Enterprise only), Win 2000,

    WindowsXP

    Microsoft Visual Studio .NET Requirements

    Processor : PC with a Pentium II-class processor,

    450 MHz

    RAM : Windows 2000 Professional 96 MB;

    Windows 2000 Server 192 MB;

    Windows NT4.0 Workstation 64 MB;

    Windows NT 4.0 Server 160 MB;

    Windows XP Professional 160 MB

    Free HD Space : 500 MB on system drive3 GB installation drive

    Operating System : Windows 2000, Windows XP, or Windows NT

    4.0

    Microsoft Access Requirements

    Processor : Pentium 75 MHz or higher processor

    RAM : 8 MB RAM

    Free HD Space : 161 MB Disk Space

  • 7/30/2019 Sales & Customer Tracking

    27/101

    Operating System : Windows 95 or later or Windows NT

    Workstation

    version 4.0, Service Pack 3 or later.

    Getting Started

    To start the software, the following steps are followed:-

    1. Install the software on the centralized server with the database.

    This server must have .NET Framework installed on it.

    2. The software is then installed on each node by installing the .exe

    and the .Net framework on the node.

    3. The site is installed on the centralized, IIS enabled web server

    which can be accessed from any node for maintenance.

    4. Site is however uploaded on the internet for providing online

    customer interface. But this option is optional and depends on

    the warehouse.

    5. Each user is given rights by the administrator according to which

    he can access the authenticated parts of the software.

    6. Customers are given passwords by which they can access the

    site.

  • 7/30/2019 Sales & Customer Tracking

    28/101

    SOFTWARE/PACKAGE USED

    Microsoft Visual Studio .NET

    Visual Studio is a complete suite of tools for building both desktop and

    team-based Enterprise Web applications. In addition to building high-

    performing desktop applications, you can use Visual Studio's powerful

    component-based development tools and other technologies to

    simplify team-based design, development, and deployment of

    Enterprise solutions.

    Visual Studio .NET is a complete set of development tools for building

    ASP Web applications, XML Web services, desktop applications, and

    mobile applications. C# .Net, Visual C++ .NET, and Visual C# .NET all

    use the same integrated development environment (IDE), which allows

    them to share tools and facilitates in the creation of mixed-language

    solutions. In addition, these languages leverage the functionality of the

    .NET Framework, which provides access to key technologies that

    simplify the development of ASP Web applications and XML Web

    services.

    Visual Studio .NET Highlights

    Some of the latest features available in the Visual Studio .NET are:

  • 7/30/2019 Sales & Customer Tracking

    29/101

    Language Enhancements

    Microsoft Visual Basic, Microsoft C++, and Microsoft JScript have all

    been updated to meet your development needs. Additionally, a new

    language, Microsoft C#, has been introduced. These languages

    leverage the functionality of the .NET Framework, which provides

    access to key technologies that simplify the development of ASP Web

    applications and XML Web services

    The .NET Framework

    The .NET Framework is a new computing platform that simplifies

    application development in the highly distributed environment of theInternet. The .NET Framework is designed to fulfill the following

    objectives:

    To provide a consistent object-oriented programming

    environment whether object code is stored and executed locally,

    executed locally but Internet-distributed, or executed remotely.

    To provide a code-execution environment that minimizes

    software deployment and versioning conflicts.

    To provide a code-execution environment that guarantees safe

    execution of code, including code created by an unknown or

    semi-trusted third party.

    To provide a code-execution environment that eliminates the

    performance problems of scripted or interpreted environments.

    To make the developer experience consistent across widely

    varying types of applications, such as Windows-based

    applications and Web-based applications.

    To build all communication on industry standards to ensure that

    code based on the .NET Framework can integrate with any other

    code.

  • 7/30/2019 Sales & Customer Tracking

    30/101

    The .NET Framework has two main components: the common

    language runtime and the .NET Framework class library. The

    common language runtime is the foundation of the .NET Framework.

    You can think of the runtime as an agent that manages code at

    execution time, providing core services such as memory management,

    thread management, and remoting, while also enforcing strict type

    safety and other forms of code accuracy that ensure security and

    robustness. In fact, the concept of code management is a fundamental

    principle of the runtime. Code that targets the runtime is known as

    managed code, while code that does not target the runtime is known

    as unmanaged code. The class library, the other main component of

    the .NET Framework, is a comprehensive, object-oriented collection of

    reusable types that you can use to develop applications ranging from

    traditional command-line or graphical user interface (GUI) applications

    to applications based on the latest innovations provided by ASP.NET,

    such as Web Forms and XML Web services.

    The .NET Framework can be hosted by unmanaged components that

    load the common language runtime into their processes and initiate

    the execution of managed code, thereby creating a software

    environment that can exploit both managed and unmanaged features.

    The .NET Framework not only provides several runtime hosts, but also

    supports the development of third-party runtime hosts.

    Features of the Common Language Runtime

    The common language runtime manages memory, thread execution,

    code execution, code safety verification, compilation, and other system

    services. These features are intrinsic to the managed code that runs on

    the common language runtime.

  • 7/30/2019 Sales & Customer Tracking

    31/101

    With regards to security, managed components are awarded varying

    degrees of trust, depending on a number of factors that include their

    origin (such as the Internet, enterprise network, or local computer).

    This means that a managed component might or might not be able to

    perform file-access operations, registry-access operations, or other

    sensitive functions, even if it is being used in the same active

    application.

    The runtime also enforces code robustness by implementing a strict

    type- and code-verification infrastructure called the common type

    system (CTS). The CTS ensures that all managed code is self-

    describing. The various Microsoft and third-party language compilersgenerate managed code that conforms to the CTS. This means that

    managed code can consume other managed types and instances,

    while strictly enforcing type fidelity and type safety.

    In addition, the managed environment of the runtime eliminates many

    common software issues. For example, the runtime automatically

    handles object layout and manages references to objects, releasing

    them when they are no longer being used. This automatic memory

    management resolves the two most common application errors,

    memory leaks and invalid memory references.

    The runtime also accelerates developer productivity. For example,

    programmers can write applications in their development language of

    choice, yet take full advantage of the runtime, the class library, and

    components written in other languages by other developers. Any

    compiler vendor who chooses to target the runtime can do so.

    Language compilers that target the .NET Framework make the features

    of the .NET Framework available to existing code written in that

    language, greatly easing the migration process for existing

    applications.

  • 7/30/2019 Sales & Customer Tracking

    32/101

    .NET Framework Class Library

    The .NET Framework class library is a collection of reusable types that

    tightly integrate with the common language runtime. The class library

    is object oriented, providing types from which your own managed code

    can derive functionality. This not only makes the .NET Framework

    types easy to use, but also reduces the time associated with learning

    new features of the .NET Framework. In addition, third-party

    components can integrate seamlessly with classes in the .NET

    Framework.

    For example, the .NET Framework collection classes implement a set of

    interfaces that you can use to develop your own collection classes.

    Your collection classes will blend seamlessly with the classes in the

    .NET Framework.

    As you would expect from an object-oriented class library, the .NET

    Framework types enable you to accomplish a range of common

    programming tasks, including tasks such as string management, data

    collection, database connectivity, and file access. In addition to these

    common tasks, the class library includes types that support a variety of

    specialized development scenarios. For example, you can use the .NET

    Framework to develop the following types of applications and services:

    Console applications.

    Scripted or hosted applications.

    Windows GUI applications (Windows Forms).

    ASP.NET 20052005applications.

    XML Web services.

    Windows services.

  • 7/30/2019 Sales & Customer Tracking

    33/101

    For example, the Windows Forms classes are a comprehensive set of

    reusable types that vastly simplify Windows GUI development. If you

    write an ASP.NET 20052005Web Form application, you can use the

    Web Forms classes.

    Visual Studio .NET 2005

    C#. Net is one of the easiest programming tool to master. With some

    basic guidance, anybody could come up with a nice little windows-

    based program within a short time, age is not the limit. In addition to

    this, Visual Basic enables one to you could develop very advance and

    powerful applications. Indeed, Visual Basic 6.0 even allows you todevelop web applications.

  • 7/30/2019 Sales & Customer Tracking

    34/101

    C# .Net, the next generation of Visual Basic, is designed to be the

    easiest and most productive tool for creating .NET applications,

    including Windows applications, Web Services, and Web applications.

    While providing the traditional ease-of-use of Visual Basic

    development, C# .Net also allows optional use of new language

    features. Inheritance, method overloading, structured exception

    handling, and free threading all make Visual Basic a powerful object-

    oriented programming language. C# .Net fully integrates with the .NET

    Framework and the Common Language Runtime, which together

    provide language interoperability, simplified deployment, enhanced

    security, and improved versioning support.

    Asp.Net 200520052005 is the second release of C# .Net, building on

    the high productivity and outstanding performance of the first release.

    Using a single programming model, Asp.Net 200520052005 enables

    you to easily create rich desktop applications for Microsoft Windows,

    and powerful Web applications. This release also includes integrated

    support for the creation of applications for wireless, Internet-enabled

    hand-held devices. You can accomplish these capabilities using the

    Visual Basic programming skills that you already have. Unless

    otherwise noted, all of the features listed below are available in every

    member of the Visual Studio family product line which enables C# .Net

    development including: Asp.Net 200520052005 Standard, Visual

    Studio .NET 2005 Professional, Visual Studio .NET 2005 Enterprise

    Developer, and Visual Studio .NET Enterprise Architect.

    Its Features include:

    1.Powerful Windows-based Applications in Less Time

  • 7/30/2019 Sales & Customer Tracking

    35/101

    In addition to great C# .Net 2002 features such as a powerful new

    forms designer, an in-place menu editor, and automatic control

    anchoring and docking, Asp.Net 200520052005 delivers new

    productivity features for building more robust applications easily and

    quickly. With an improved integrated development environment (IDE)

    and a significantly reduced startup time, Asp.Net 200520052005 offers

    fast, automatic formatting of code as you type, improved

    IntelliSense, an enhanced object browser and XML designer, and

    much more.

    2. Direct Access to the Platform

    Visual Basic developers have full access to the powerful capabilities

    available in the new and improved .NET Framework 1.1. Now,

    developers can easily program system services including the event log,

    performance counters, and file system eliminating the need to use

    cumbersome 'Declare' statements. The new Windows Service project

    template enables Visual Basic developers to build real Microsoft

    Windows NT Services. Please note, programming against Windows

    Services and creating new Windows Services is not available in C# .Net

    Standard, it requires Visual Studio 2005 Professional, or higher.

    3. .COM Interoperability

    Maintain your existing code without the need to recode. COM

    interoperability enables you to leverage your existing code assets and

    offers seamless bi-directional communication between Visual Basic 6.0

    and C# .Net applications.

    4. Web-based Applications

    Create Web solutions in Asp.Net 200520052005 using the shared Web

    Forms Designer and the familiar "drag and drop to build your forms,

    double-click and write code to respond to events" mechanism. New to

  • 7/30/2019 Sales & Customer Tracking

    36/101

    Asp.Net 200520052005 is an enhanced HTML Editor for working with

    complex Web pages. Use IntelliSense technology and tag completion,

    or choose the WYSIWYG editor for visual authoring of interactive Web

    applications.

    5. Full Object-Oriented Constructs

    Create reusable, enterprise-class code using full object-oriented

    constructs. Language features include full implementation inheritance,

    encapsulation, and polymorphism. Structured exception handling

    provides a global error handler and eliminates spaghetti code.

    6. Simplified Deployment

    With Asp.Net, you can build applications more rapidly and deploy and

    maintain them with greater efficiency. Together, Asp.Net 20052005and

    the new .NET Framework 1.1 solve your application setup and

    maintenance problems and make "DLL Hell" a thing of the past. Side-

    by-side versioning enables multiple versions of the same component to

    live safely on the same machine so that applications can consume a

    specific version of a component. XCOPY-deployment and Web auto-

    download of Windows-based applications combine the simplicity of

    Web page deployment and maintenance with the power of rich,

    responsive Windows-based applications

    7. Mobile Applications

    Asp.Net 2005and the .NET Framework 1.1 now offer integrated support

    for developing mobile Web applications for more than 200 Internet-

    enabled mobile devices. These new features give developers a single,

    mobile Web interface and programming model to support a broad

    range of Web devices, including WML 1.1 for WAPenabled cellular

    phones, compact HTML (cHTML) for i-Mode phones, and HTML for

    Pocket PC, handheld devices, and pagers.

  • 7/30/2019 Sales & Customer Tracking

    37/101

    8. XML Web Services

    XML Web services enable you to call components running on any

    platform using open Internet protocols. Working with XML Web services

    is easier than ever in Asp.Net, where enhancements simplify the

    discovery and consumption of XML Web services that are located

    within your firewall. XML Web services can be built as easily as you

    would build any class in Visual Basic 6.0. The new XML Web service

    project template builds all underlying Web service infrastructure for

    you.

    9. Reuse Existing Investments

    Reuse all your existing ActiveX Controls. Windows Forms in Asp.Net

    20052005provide a robust container for existing ActiveX controls. In

    addition, full support for existing ADO code and data binding enable a

    smooth transition to Asp.Net.

    10. Upgrade Wizard

    Upgrade your code to receive all of the benefits of Asp.Net. The C#

    .Net Upgrade Wizard, available in Asp.Net 20052005Standard Edition,

    and higher, upgrades up to 95 percent of existing Visual Basic code

    and forms to C# .Net with new support for Web classes and User

    Controls.

    11. The Easiest, Most Popular Language

    Develop applications using the most readable and easy-to-write

    programming language available. Background compilation provides

    instant feedback and squiggles for error detection.

  • 7/30/2019 Sales & Customer Tracking

    38/101

    12. The Largest Developer Community

    Incorporate resources, components, and code from more than 3 million

    Visual Basic developers worldwide. Utilize components from the

    immense third-party control vendor market to build rich .NET-

    connected applications.

  • 7/30/2019 Sales & Customer Tracking

    39/101

    Active Server Pages

    ASP is a server-side scripting feature that can be installed with IIS 5 on

    Windows 2000. Earlier versions of IIS and ASP were included with IIS 3

    and 4 (NT Option Pack).

    Once you've installed Windows 2000 with IIS 5, you're ready to create

    scripts that run on your server and generate pages and Web content.

    Active Server Pages are HTML pages that contain scripts which are

    processed on the server. The result of the script is converted to HTML

    before being sent to the Web browser. These server-side scripts,

    written in VB Script, JScript, Perl or other scripting language, can make

    use of custom or packaged ActiveX Server components to extend the

    Web server with application-specific functionality. Because only HTML

    need be sent to the client, a user can access the pages using a wide

    variety of browsers on different operating systems. Figure 1 shows a

    schematic of the processing behind a browser request to an ASP page.

  • 7/30/2019 Sales & Customer Tracking

    40/101

    Figure 1. Active Server Pages is a powerful Web application

    development framework for building dynamic Web sites.

    Since an ASP page is an HTML document, all HTML tags are allowed in

    the ASP file and can be used normally. ASP files provide the ability to

    dynamically generate HTML tags within the source ASP page before it

    is sent to the browser. You can freely include server side script

    anywhere in the ASP file and intermingle it with HTML.

    Specifically, Active Server Pages provide the following core

    functionality:

    Server-side scripting. The ability to embed scripting such as

    VB Script, JScript, Perl, or other language syntax directly in an

    HTML page for execution on the Web server as opposed to the

    Web browser.

    Flexible Web-to-database connectivity. Through server-

    side scripting and Active Data Objects (ADO), developers can

    easily build rich database functionality into their Web sites.

    State Management. Active Server Pages provide the ability to

    easily track and manage application state on a per-user, per-

    application, and per-server basis using built-in objects. This helps

    overcome the limitations of the stateless HTTP protocol for

    building rich Web applications.

    Active Server Components. Perhaps the most important

    feature of Active Server pages is the ability to instantiate and

    use programmable components. These components can be

    created in tools such as Visual Basic, Visual C++, Visual J++,

    Borland Delphi and Powersoft PowerBuilder. This enables

  • 7/30/2019 Sales & Customer Tracking

    41/101

    developers to integrate Web applications with existing

    client/server systems.

    The Scripting Engine

    Active Server Pages features an environment that processes scripts

    that may be incorporated into HTML pages. It is not a scripting

    language. It contains specific language-specific syntax required for

    operations, based on the scripting engine being used.

    VBScript and JScript scripting languages are contained within ASP. The

    default scripting language is VBScript, but this can easily be changed

    to JScript.

    Scripts are written in languages that have specific rules. A user must

    employ the correct syntax for successful application. To use another

    scripting language, the server must run the scripting engine that

    understands the language. Users may refer to Using Scripting

    Languages for more information on changing the primary scripting

    language default, use of VBScript, JScript and other scripting languages

    with ASP.

    Java Script

    JavaScript is used in millions of Web pages to improve the design,

    validate forms, and much more. JavaScript was developed by Netscape

    and is the most popular scripting language on the internet.

    JavaScript works in all major browsers that are version 3.0 or higher.

  • 7/30/2019 Sales & Customer Tracking

    42/101

    What is JavaScript?

    JavaScript was designed to add interactivity to HTML pages

    JavaScript is a scripting language - a scripting language is a

    lightweight programming language

    A JavaScript is lines of executable computer code

    A JavaScript is usually embedded directly in HTML pages

    JavaScript is an interpreted language (means that scripts execute

    without preliminary compilation)

    Everyone can use JavaScript without purchasing a license

    JavaScript is supported by all major browsers, like Netscape and

    Internet Explorer

    What can a JavaScript Do?

    JavaScript gives HTML designers a programming tool :

    HTML authors are normally not programmers, but

    JavaScript is a scripting language with a very simple

    syntax! Almost anyone can put small "snippets" of code

    into their HTML pages

    JavaScript can put dynamic text into an HTML page

    A JavaScript statement like this: document.write("" +

    name + "") can write a variable text into an HTML

    page

    JavaScript can react to events :A JavaScript can be set to execute when something

    happens, like when a page has finished loading or when a

    user clicks on an HTML element

    JavaScript can read and write HTML elements :

  • 7/30/2019 Sales & Customer Tracking

    43/101

    A JavaScript can read and change the content of an HTML

    element

    JavaScript can be used to validate data :

    A JavaScript can be used to validate form data before it is

    submitted to a server, this will save the server from extra

    processing

    VB Script

    VBScript is a Microsoft technology that requires Microsoft's Internet

    Explorer!

    VBScript is a script version of visual basic supported by Internet

    Explore 3.0 and above. With VB Script, you can make your web site

    dynamic and interactive. VB Script code is interpreted as an script by

    the browser and Visual Basic terms are used. For example declaring a

    variable, writing sub, or function in VB Script is done similar to Visual

    Basic but keep in mind that Visual Basic is programming language for

    applications while VB Script is small script version coded with HTML or

    ASP documents.

    To place VB Script with ASP or HTML document, use . With this term script tells the browser that the content

    from this tag to the end tag to be interpreted as script

    language. We also inform the browser that this is a VB Script by setting

    the language equal to "vbscript". VB Script code can be placed in head

    or body section of any HTML document depends on the favored result.

    The head section is good place to insert any procedures while the body

    section is good place to execute the final results.

    What is VBScript?

    VBScript is a scripting language

  • 7/30/2019 Sales & Customer Tracking

    44/101

  • 7/30/2019 Sales & Customer Tracking

    45/101

    To build all communication on industry standards to ensure that

    code based on the Asp Framework can integrate with any other

    code.

    The ASP Framework can be hosted by unmanaged components

    that load the common language runtime into their processes and

    initiate the execution of managed code; thereby creating a

    software environment that can exploit both managed and

    unmanaged features. The asp Framework not only provides

    several runtime hosts, but also supports the development of

    third-party runtime hosts.

    For example, ASP hosts the runtime to provide a scalable,

    server-side environment for managed code. ASP works directly

    with the runtime to enable ASP applications.

  • 7/30/2019 Sales & Customer Tracking

    46/101

  • 7/30/2019 Sales & Customer Tracking

    47/101

    Datatypes:Datatypes are the propertiesof each field. A field only has 1 datatype.FieldName) Student LastNameDatatype) Text

    ADO .NET

    ADO .NET is extremely flexible and dynamic and you can do anything.A simplified diagram of ADO .NET objects was given below:

  • 7/30/2019 Sales & Customer Tracking

    48/101

    The Active-X data object data control (ADODC) allows the user tocreate a connection to the data source. A connection can beestablished to any type of database whether relational or non-relational, local or remote. It provides an object-oriented programming

    interface for accessing a data source using an OLE DB data provider.

    The ADO model has three main components: the connection object,the command object, and the recordset object.

    Objects

    Connection Object:The connection object is the highest-level object in the ADO objectmodel. It is used to make a connection between your application andan external data source, here Microsoft Sql server.

    Command Object:The command object is used to build queries, including user-specificparameters, in order to access records from a data source. Typically,these records are returned in a recordset object.

    Recordset Object:The recordset object is used to access records returned from a SQLquery. Using this object, you can navigate through the recordsreturned, modify the existing record, add new record or delete specificrecords.

  • 7/30/2019 Sales & Customer Tracking

    49/101

    The main benefit of this, and one of the greatest innovations of ADO.NET, is that once you build a DataSet in your project, you can processit in about the same way no matter what the original source of the data

    was. It doesn't really matter to your program where the data camefrom. The DataAdapter objects provide the unique capability thatdifferent sources of data require but they all create the same DataSetobject.

    A key advantage is that this means ADO .NET works great with muli-tiered

    ('client/server' or 'client/middleware/server') systems -- such as the Internet!

    After a Dataset is created, your program can disconnect from the actual

    physical source of the data (the database) and only needs to reconnect once

    either a change or more data is needed. A Dataset can be thought of as being

    like a custom database just for your program. There are tables, columns,

    relationships, constraints, views, and so forth. Changes to the 'real' database

    are communicated using messages (that is, SQL commands in our case) and

    this further isolates your program from changes, differences, or even

    problems (such as the database being taken offline) to the 'real' database.

  • 7/30/2019 Sales & Customer Tracking

    50/101

    ANALYSIS

    Data Flow Diagrams (DFDS).

    Entity Relationship Diagram (ER-Diagram).

    Structured charts.

    Data flows.

    Database Design.

    DATA FLOW DIAGRAMS (DFDS)

    A DFD is a graphical representation that depicts information flow and the

    transitions that are applied as data now from input to output, the basic form of a DFD is

    also known as a Data Flow graph, or a Bubble chart.

    DFD may be used to represent a system or software at any level of abstraction.

    DFDS can be portioned into levels that represent increasing information flow and

    functional detail.A level 0 DFD, also called a fundamental system model or a context model,

    represents the entire software element or a single bubble with input and output data

    indicated by incoming & outgoing arrows, respectively.

  • 7/30/2019 Sales & Customer Tracking

    51/101

  • 7/30/2019 Sales & Customer Tracking

    52/101

    Information

    Query from

    Members

    Query solved

    Use Case Diagram

    Customer

    SuppliersDetails

    RetailerDetails

    Products

    Details

    Parts Details

    Sub location in

    charges Details

    Users

    Login

    Masters

    Receiving

    Billing

    Report

    Shipment

    Graph

  • 7/30/2019 Sales & Customer Tracking

    53/101

    Activity Diagram

    Customer Users

    Login Masters

    Receiving

    NoYes

    Send Validation Error

    message

    Show Details

    New Customer

    Billing

    Shipment

    Report

    Graph

    Start

    Stop

    Validation

  • 7/30/2019 Sales & Customer Tracking

    54/101

    Zero level DFD

    Client database

    Gathering information

    Gathering

    QueryQuery

    Generic

    information

    Details information database

    GatheringInformation

    Stockist databaseBrand report

    database

    Pharma

    Helpline Customer

  • 7/30/2019 Sales & Customer Tracking

    55/101

    ERDIAGRAM

    Users

    User

    Name

    Passwor

    d

    HasSales and Customer

    Tracking System

    Suppliers

    BName

    CName

    Gender

    Sid Address

    Website

    CPerson

    Email

    Photo

    Retailer

    RName

    Address

    Pno

    Co.Name MNo

    Email

    Photo

    Manage

    Manage

    Manage Products

    ID

    Name

    Remarks

    PartsProName

    PName

    Qty.

    Cost.

  • 7/30/2019 Sales & Customer Tracking

    56/101

    ManageSub location

    Country

    State

    City

    Manage Purchase Order

    RName

    CName

    Gender

    Co.Name Address

    Date

    ProName

    Total

    SNo.

    Cost

    Qty.

    MNO

    Billing

    Purchase Order

    AdministrativeInventoryManage

    Manage TransferInventory

    Put Inventory

  • 7/30/2019 Sales & Customer Tracking

    57/101

    ENTITY RELATIONSHIP DIAGRAM

    ER Diagrams are used to represent the output relationship pair. It was originally

    proposed for the design originally of relational database system. A set primary

    component is identified for the ER Diagrams, data objects, attributes, relationship and

    various type indicators.

    This primary purpose of ER Diagram is to represent data object & their

    relationships. Data objects are real world entities represents by a labeled rectangle. A

    labeled diamond represents relationships. Connections between data objects and

    relationships are established using a special symbol that indicates cardinally and

    modularity.

    ER notations

    Entity

    Relationship

  • 7/30/2019 Sales & Customer Tracking

    58/101

    Attribute

    Composite attribute

    ENTITY RELATIONSHIP DIAGRAM (ER-DIAGRAM)

    E

    E1

    E1 E2

    E2

    R

    R

    R

  • 7/30/2019 Sales & Customer Tracking

    59/101

    ER- DIAGRAMSHOWINGCUSTOMERAND PHARMA HELPLINE RELATIONSHIP

    STRUCTURED CHARTS

    Structured charts are rough guidelines that explain the working of the program.

    The structure chart of the program is a graphical representation of its structure. Thestructure of a program is made up of the modules of that program together with the

    interconnections between modules. The general structured chart about the working of

    Pharma helpline system i.e. as follows:

    Pharma Helpline

    Clientinformation

    Generic nameinformation

    Stockistinformation

    Report

    Brandinformation

  • 7/30/2019 Sales & Customer Tracking

    60/101

  • 7/30/2019 Sales & Customer Tracking

    61/101

    DATA DICTIONARY

    User tabel

    Rid: A unique ID that is allocated to each Customer

    in order to identify him.

    Name: The name of the New Customer.

    FName: The Father name of the New Customer.

    Gender: The Gender of the New Customer.

    Quali: The Qualification of the New Customer.

    DOB: The Date of Birth of the New Customer.

    Address: The Address of the New Customer.

    MobileNo: The Mobile Number of the New Customer.

    UName: The User Name of the New Customer.

    Pass: The Password of the New Customer.

    Photo: The Photo of the New Customer.

  • 7/30/2019 Sales & Customer Tracking

    62/101

    Suppliers table

    Rid: A unique ID that is allocated to each in order

    Suppliers to identify him.

    Sid: A unique ID that is allocated to each in order

    Suppliers to identify him.

    BName: The Business Name of the Suppliers.

    CName: The Contact Name of the Suppliers.

    Gender: The Gender of the Suppliers.

    Address: The Address details of the suppliers.

    Mob: The contact details of the Suppliers.

    Email: The contact details of the Suppliers.

    Website: The contact details of the Suppliers.

    CPerson: The contact person of the Suppliers.

    Photo: The Photo of the Suppliers.

  • 7/30/2019 Sales & Customer Tracking

    63/101

    Retailer table

    Rid: A unique ID that is allocated to each Item that is

    in the catalogue of the warehouse in order to

    identify it.

    CoName: The name of the Retailer Company.

    RName: The name of the Retailer.

    Address: The Address of the Retailer.

    PNo: The phone Number of the Retailer.

    MNo: The contact number of the Retailer.

    Email: The Email address of the Retailer.

    Photo: The Photo of the Retailer.

    Products table

    Rid: A unique ID that is allocated to each Item that is

    in the catalogue of the warehouse in order to

    identify it.

    Id: A unique ID of the Products.

    Name: The name of the Products.

  • 7/30/2019 Sales & Customer Tracking

    64/101

    Remarks: The Products of Remarks.

    Parts table

    Rid: A unique ID that is allocated to each Item that is

    in the catalogue of the warehouse in order to

    identify it.

    ProName: The name of the Products.

    PName: The Part name of the Products.

    Qty: The Quantity of the Parts.

    Cost: The Cost of the Parts.

    Remarks: The Parts of Remarks.

    Sublocaton table

    Rid: A unique ID that is allocated to each Item that is

    in the catalogue of the warehouse in order to

    identify it.

    Country: The Name of the Country.

    State: The name of the State.

    SLocation: The sub location of the State.

  • 7/30/2019 Sales & Customer Tracking

    65/101

    Purchase table

    Rid: A unique ID that is allocated to each in order

    Purchase to identify him.

    CoName: The name of the Company Name.

    RName: The Name of the Retailer.

    Address: The Address details of the Retailer.

    Mob: The contact details of the Retailer.

    Email: The contact details of the Retailer.

    Date: The Purchase Date.

    SNo: The Bill Number of the Purchase.

    RefNo: The Reference number of the Purchase.

    ProName: The name of the Products.

    PName: The Part name of the Products.

    Cost: The Cost of the Parts.

    Qty: The Quantity of the Parts.

    Total: The Total Cost of the Parts.

  • 7/30/2019 Sales & Customer Tracking

    66/101

    TInventory table

    Rid: A unique ID that is allocated to each in order

    Transfer Inventory to identify him.

    Date: The date of Transfer Inventory.

    CoName: The name of the Company Name.

    RName: The Name of the Retailer.

    ProName1: The name of the Products.

    Remarks1: The Products of Remarks.

    Parts: The Part name of the Products.

    Parts1: The Part name of the Products.

    Billing table

    Rid: A unique ID that is allocated to each in order

    Billing to identify him.

    BillNo: The Bill No of the Billing.

    Date: The date of the Billing.

  • 7/30/2019 Sales & Customer Tracking

    67/101

    CoName: The name of the Company Name.

    RName: The Name of the Retailer.

    Address: The Address details of the Retailer.

    Mob: The contact details of the Retailer.

    Email: The contact details of the Retailer.

    ProName: The name of the Products.

    PName: The Part name of the Products.

    Des: The Description of the Part.

    Stotal: The Sub total of the Parts.

    Vat: The vat (%) in parts.

    TCartage: The Transport Cartage fair of the parts.

    PExpense: The Packing Expense fair of the parts.

    RounOff: The Round off of the parts.

    GrandTotal: The Grand Total of the Parts.

    Cost: The Cost of the Parts.

    Qty: The Quantity of the Parts.

    Disc: The Discount (%) of the Part.

    Total: The Total Cost of the Parts.

  • 7/30/2019 Sales & Customer Tracking

    68/101

  • 7/30/2019 Sales & Customer Tracking

    69/101

    CHAPTER 6: SYSTEMCHAPTER 6: SYSTEMDESIGNDESIGN

    FORM DESIGN

    frmLogin.cs

  • 7/30/2019 Sales & Customer Tracking

    70/101

  • 7/30/2019 Sales & Customer Tracking

    71/101

    frmMain.cs

  • 7/30/2019 Sales & Customer Tracking

    72/101

    frmSuppliers.cs

  • 7/30/2019 Sales & Customer Tracking

    73/101

    frmRetailer.cs

  • 7/30/2019 Sales & Customer Tracking

    74/101

    frmProducts.cs

  • 7/30/2019 Sales & Customer Tracking

    75/101

    frmPart.cs

  • 7/30/2019 Sales & Customer Tracking

    76/101

    frmSubLocation.cs

  • 7/30/2019 Sales & Customer Tracking

    77/101

    frmPurchaseOrder.cs

  • 7/30/2019 Sales & Customer Tracking

    78/101

    frmBilling.cs

  • 7/30/2019 Sales & Customer Tracking

    79/101

    frmTInventory.cs

  • 7/30/2019 Sales & Customer Tracking

    80/101

    frmViewIBalance.cs

    FrmviewITranstions.cs

  • 7/30/2019 Sales & Customer Tracking

    81/101

    frmInventoryReport.cs

  • 7/30/2019 Sales & Customer Tracking

    82/101

  • 7/30/2019 Sales & Customer Tracking

    83/101

    frmPOReport.cs

    frmAdminReport.cs

  • 7/30/2019 Sales & Customer Tracking

    84/101

  • 7/30/2019 Sales & Customer Tracking

    85/101

    CHAPTER 7: SYSTEMCHAPTER 7: SYSTEM

    TESTINGTESTING

    TESTING

    Software testing is any activity aimed at evaluating an attribute or

    capability of a program or system and determining that it meets its

    required results. Although crucial to software quality and widely

    deployed by programmers and testers, software testing still remains

    an art, due to limited understanding of the principles of software. The

    difficulty in software testing stems from the complexity of software: we

    cannot completely test a program with moderate complexity. Testing is

    more than just debugging. The purpose of testing can be quality

    assurance, verification and validation, or reliability estimation. Testing

  • 7/30/2019 Sales & Customer Tracking

    86/101

    can be used as a generic metric as well. Correctness testing and

    reliability testing are two major areas of testing. Software testing is a

    trade-off between budget, time and quality.

    Software bugs will almost always exist in any software module with

    moderate size: not because programmers are careless or irresponsible,

    but because the complexity of software is generally intractable -- and

    humans have only limited ability to manage complexity. It is also true

    that for any complex systems, design defects can never be completely

    ruled out.

    There are two types of testing required in software:

    Black-box Testing

    The black-box approach is a testing method in which test data are

    derived from the specified functional requirements without regard to

    the final program structure. It is also termed data-driven, input/output

    driven or requirements-based testing. Because only the functionality of

    the software module is of concern, black-box testing also mainly refers

    to functional testing -- a testing method emphasized on executing the

    functions and examination of their input and output data. The tester

    treats the software under test as a black box -- only the inputs, outputs

    and specification are visible, and the functionality is determined by

    observing the outputs to corresponding inputs. In testing, various

  • 7/30/2019 Sales & Customer Tracking

    87/101

    inputs are exercised and the outputs are compared against

    specification to validate the correctness. All test cases are derived

    from the specification. No implementation details of the code are

    considered.

    It is obvious that the more we have covered in the input space, the

    more problems we will find and therefore we will be more confident

    about the quality of the software. Ideally we would be tempted to

    exhaustively test the input space. But as stated above, exhaustively

    testing the combinations of valid inputs will be impossible for most of

    the programs, let alone considering invalid inputs, timing, sequence,

    and resource variables. Combinatorial explosion is the major roadblock

    in functional testing. To make things worse, we can never be sure

    whether the specification is either correct or complete. Due to

    limitations of the language used in the specifications (usually natural

    language), ambiguity is often inevitable. Even if we use some type of

    formal or restricted language, we may still fail to write down all the

    possible cases in the specification. Sometimes, the specification itself

    becomes an intractable problem: it is not possible to specify precisely

    every situation that can be encountered using limited words. And

    people can seldom specify clearly what they want -- they usually can

    tell whether a prototype is, or is not, what they want after they have

    been finished. Specification problems contribute approximately 30

    percent of all bugs in software.

    The research in black-box testing mainly focuses on how to maximize

    the effectiveness of testing with minimum cost, usually the number of

    test cases. It is not possible to exhaust the input space, but it is

    possible to exhaustively test a subset of the input space. Partitioning is

    one of the common techniques. If we have partitioned the input space

    and assume all the input values in a partition is equivalent, then we

  • 7/30/2019 Sales & Customer Tracking

    88/101

    only need to test one representative value in each partition to

    sufficiently cover the whole input space. Domain testing partitions the

    input domain into regions, and considers the input values in each

    domain an equivalent class. Domains can be exhaustively tested and

    covered by selecting a representative value(s) in each domain.

    Boundary values are of special interest. Experience shows that test

    cases that explore boundary conditions have a higher payoff than test

    cases that do not. Boundary value analysis requires one or more

    boundary values selected as representative test cases. The difficulties

    with domain testing are that incorrect domain definitions in the

    specification can not be efficiently discovered.

    Good partitioning requires knowledge of the software structure. A good

    testing plan will not only contain black-box testing, but also white-box

    approaches, and combinations of the two.

    White-box testing

    Contrary to black-box testing, software is viewed as a white-box, or

    glass-box in white-box testing, as the structure and flow of the

    software under test are visible to the tester. Testing plans are made

    according to the details of the software implementation, such as

    programming language, logic, and styles. Test cases are derived from

    the program structure. White-box testing is also called glass-box

    testing, logic-driven testing or design-based testing.

    There are many techniques available in white-box testing, because the

    problem of intractability is eased by specific knowledge and attention

    on the structure of the software under test. The intention of exhausting

    some aspect of the software is still strong in white-box testing, and

    some degree of exhaustion can be achieved, such as executing each

  • 7/30/2019 Sales & Customer Tracking

    89/101

    line of code at least once (statement coverage), traverse every branch

    statements (branch coverage), or cover all the possible combinations

    of true and false condition predicates (Multiple condition coverage).

    Control-flow testing, loop testing, and data-flow testing, all maps the

    corresponding flow structure of the software into a directed graph. Test

    cases are carefully selected based on the criterion that all the nodes or

    paths are covered or traversed at least once. By doing so we may

    discover unnecessary "dead" code -- code that is of no use, or never

    get executed at all, which cannot be discovered by functional testing.

    In mutation testing, the original program code is perturbed and many

    mutated programs are created, each contains one fault. Each faulty

    version of the program is called a mutant. Test data are selected based

    on the effectiveness of failing the mutants. The more mutants a test

    case can kill, the better the test case is considered. The problem with

    mutation testing is that it is too computationally expensive to use. The

    boundary between black-box approach and white-box approach is not

    clear-cut. Many testing strategies mentioned above, may not be safely

    classified into black-box testing or white-box testing. It is also true for

    transaction-flow testing, syntax testing, finite-state testing, and many

    other testing strategies not discussed in this text. One reason is that all

    the above techniques will need some knowledge of the specification of

    the software under test. Another reason is that the idea of specification

    itself is broad -- it may contain any requirement including the

    structure, programming language, and programming style as part of

    the specification content.

    We may be reluctant to consider random testing as a testing

    technique. The test case selection is simple and straightforward: they

    are randomly chosen. Study in indicates that random testing is more

    cost effective for many programs. Some very subtle errors can be

  • 7/30/2019 Sales & Customer Tracking

    90/101

    discovered with low cost. And it is also not inferior in coverage than

    other carefully designed testing techniques. One can also obtain

    reliability estimate using random testing results based on operational

    profiles. Effectively combining random testing with other testing

    techniques may yield more powerful and cost-effective testing

    strategies.

  • 7/30/2019 Sales & Customer Tracking

    91/101

    CHAPTER 8:CHAPTER 8:DOCUMENTATIONDOCUMENTATION

    USERS MANUAL

    The following points provide the user sample knowledge on HOW TO

    USE the project:

    (1) As this project is menu based, on the start up the user will see

    the main menu consisting of seven options, the user is

    required to click any one of these options.

  • 7/30/2019 Sales & Customer Tracking

    92/101

    (2) According to the option selected, the user will get a new

    screen where all the necessary information is asked from him.

    The working of this project has been done in such a way that

    user is given every information about his current working.

    (3) If a new item is to be registered the user will automatically be

    asked to enter all the relevant details. If the user wants to

    view any details related to customer or supplier the user is

    required to just click on the view menu and the record of that

    automatically generated.

    (4) If some transaction is to be made which can either be

    purchase or invoice of items the user will automatically be

    asked to enter the relevant details. Also when the user clicks

    on the purchase order option the changes are automatically

    saved at the backhand.

    (5) If the user wants to add, edit or delete the supplier details he

    just has to click on Enter/View other information in the main

    menu. Automatically the relevant information is asked from

    him. The user just has to click on add, edit to save the

    changes.

    (6) Last but not the least, if the user wants to see the reports that

    include list of items that are categorized as customer

    information report, product information report user just has to

    click on the caption of the report and automatically that

    report will be generated.

    (7) The Back option in the sub menus enable user to come back

    to the previous menu and Exit option in the main menu

    enable user to quit from the project itself.

    (8) In certain cases it is required that only integer values should

    be entered so a validation is made which allows the user to

    enter only integer values in that places. Any other value is not

    entertained.

  • 7/30/2019 Sales & Customer Tracking

    93/101

    (9) When the user is entering the date a validation has been put

    to check that the date entered by the user is a valid one.

    (10) Also various type of exception handlers have also been

    included throughout the application which raise an error

    message when some error occurs while running the

    application.

  • 7/30/2019 Sales & Customer Tracking

    94/101

    CHAPTER 9:CHAPTER 9:

    CONCLUSIONCONCLUSION

    CONCULSION

    The system is a step to completely automate the management system

    of AIMS, with respect to the customers, Suppliers, items and the

    orders. It aims at reducing the time and effort of the officials at AIMS ,

    hence enabling proficient resource management. The system is

    expected to be a complete CRM solution that will enhance the Clients

    business value.

    From the features of the system discussed in this report, it is evident

    that the objective of this software has been met as per the client

    requirements successfully.

  • 7/30/2019 Sales & Customer Tracking

    95/101

  • 7/30/2019 Sales & Customer Tracking

    96/101

    CHAPTER 11: SCOPECHAPTER 11: SCOPE

    FUTURE ENHANCEMENTS

    Distribution System

    If the warehouse has several branches then a proper allotment of

    resources and distribution of products should be carried out in an

    opposite and efficient manner.

    VAT Implementation.

    With the advent of Value Added tax in the industry, it will eventually

    become essential to consider the new tax system in the generation

    of the bills and invoices.

  • 7/30/2019 Sales & Customer Tracking

    97/101

    Providing Dynamic Help

    A dynamic application to provide the user with real-time help could

    be included to make the application more users friendly.

    Use of Bar Codes

    Using bar code scanners to log stock movement in or out greatly

    improve accuracy and efficiency. Bar code labels can easily be

    printed from stock records held in the database.

    LIMITATIONS

    1. A centralized database increases the possibility of single pointerrors. I.e. any incorrect data in any module of the software will

    affect all modules.

    2. In case the administrators password is not secure, access can be

    obtained to all modules of the software.

    ADVANTAGES

  • 7/30/2019 Sales & Customer Tracking

    98/101

    The Online interface simplifies the user interaction with the firm

    thus increasing revenues.

    A fully automated Database management system simplifies the

    work at the companys end.

    Easy retention of customers as well as increase in the market

    penetration.

    Updating customer records is greatly simplified through this

    software.

    Activation of customer accounts with minimum time lag.

    The possibility of unauthorized access is completely eliminated.

    SCOPE OF PROGRAM

    The Automated Inventory Management System (AIMS) is efficient

    software that is being used to maintain customer, supplier, items and

    orders accounts related to the submission of orders and supplying

    them. This software can be used at various levels of management by

    determining the respective rights of users to completely automate the

    system as required by the staff of AIMS.

  • 7/30/2019 Sales & Customer Tracking

    99/101

    IMPORTANCE OF WORK

    The work carried is of great importance from the CRM point of view. In

    addition to this, the other important aspects of developing this

    software are:

    Simple

    The software developed is simple to use by any user without priorknowledge of software development.

    Efficient

    The software is developed such that maximum no. of transactions

    are enabled in minimum time and with minimum errors. Alerts and

    checks are provided at every step of the software to eliminate

    errors.

    Reduced Overhead

    The software reduces the overhead of maintaining the database

    manually, thus saving on time and effort.

    Time Efficient

    The development of this software has greatly reduced time taken for

    maintaining records, updating records and activating customer

    accounts.

    Security

  • 7/30/2019 Sales & Customer Tracking

    100/101

  • 7/30/2019 Sales & Customer Tracking

    101/101