system requirements specifications

download system requirements specifications

of 125

Transcript of system requirements specifications

  • 8/11/2019 system requirements specifications

    1/125

    COMPUTERISATION OF GLENCORE COMPANY

    TECHNICAL REPORT

    No. DU/IP/CS/BSc (H)-IV/2014/12029270015

    No. DU/IP/CS/BSc (H)-IV/2014/12029270007

    April 2014

  • 8/11/2019 system requirements specifications

    2/125

    Indraprastha College for WomenDepartment of Computer Science

    Samnath MargDELHI 110 054

    1. Report Number :DU/IP/CS/BSc (H)-III/2014/12_1045 ,

    12_0481

    2. Report Date: April 2014

    3. Type of Report : Technical Report 4. Subject /Area : Software Engineering

    5. Title: Computerization of Glencore Company 6. Authors : 12029270015

    12029270007

    BSc (H) Semester

    7. Guide : Mr. Sachin Kumar

    8. Name of the Institution : Department of Computer ScienceIndraprastha College for Women , DELHI -110054

    9. Abstract:

    The project is about the Computerization of entire system of the GlencoreCompany which is having a lot of problems in its current manual system. We shallbe converting the manual system in an automatic system by using databasesoftware. The aim of the project is to overcome the difficulties encountered in themanual system.

    10. Key Words(Suggested by Authors) :stock management, productmanufacturing, order of material, suppliers management, clientmanagement, materials management

    11. Total No. of pages : 129 12. Signature of Authors :

    13. Signature of the Guide :

  • 8/11/2019 system requirements specifications

    3/125

    1. ACKNOWLEDGEMENT

    On the successful completion of our project COMPUTERISATION OF GLENCORE

    COMPANY , we would like to express our sincere gratitude to everyone who helped us in the

    completion of the project.

    We are sincerely thankful to our project guide Mr. Sachin Kumar for his interest, guidance and

    suggestions throughout the course of the project. We feel honored and privileged to work under

    Mr. Sachin Kumar. He shared his vast pool of knowledge with us that helped us steer through all

    the difficulties with ease. We would also like to thank Mr. Vivek and Mr. Vipin . This project

    would not have been possible without their able guidance.

    Name of Project Group MembersLallmahomed Bibi RuksaarRadha Verma

  • 8/11/2019 system requirements specifications

    4/125

    2. CERTIFICATE

    This is to certify that the project entitled COMPUTERISATION OF GLENCORE

    COMPANY by LALLMAHOMED BIBI RUKSAAR AND RADHA VERMA has been carried

    out under our supervision. The project has been submitted as per the requirements in the fourth

    semester of Computer Science (H).

    Project-in-charge(Mr. Sachin Kumar)

  • 8/11/2019 system requirements specifications

    5/125

    Table of Contents 1. ACKNOWLEDGEMENT ....................................................................................................... 32. CERTIFICATE ........................................................................................................................ 43. SOFTWARE REQUIREMENTS SPECIFICATION .............................................................. 6

    3.1 Project objective ................................................................................................................... 6

    3.2. Introduction .......................................................................................................................... 63.3 Product scope ...................................................................................................................... 143.4 Similarly Other ................................................................................................................... 32

    4. PROCESS MODEL DESCRIPTION .................................................................................... 345. DESIGN AND TECHNICAL SPECIFICATION ................................................................. 35

    5.1 Context Diagram.................................................................................................................. 365.2 Data Flow Diagrams ............................................................................................................ 365.3 Data Dictionary ..................................................................... Error! Bookmark not defined. 5.4 Er diagram ........................................................................................................................... 385.5 Table description ................................................................................................................. 395.6Structure chart ....................................................................................................................... 42

    6. CODE DEVELOPMENT ...................................................................................................... 446.1 Flowchart ............................................................................................................................. 486.2 Component Level Design(Pseudo Code) ............................................................................ 66

    7. TESTING DOCUMENT...................................................................................................... 1007.1 Black Box Testing with Test case design .......................................................................... 1017.2 White Box Testing ............................................................................................................. 109

    8. PROJECT MANAGEMENT ............................................................................................... 1168.1 Function point and effort ................................................................................................... 1178.2 SCHEDULE ...................................................................................................................... 118

    9. BEST PRACTICES FOR SOFTWARE DEVELOPMENT ................................................ 12410. References ......................................................................................................................... 125

  • 8/11/2019 system requirements specifications

    6/125

    3. SOFTWARE REQUIREMENTS SPECIFICATION

    3.1Primary objective The purpose of this document is to present a detailed description of the computerization

    of the Glencore Company. It will explain the purpose and features of the system, the interfaces of

    the system, what the system will do, the constraints under which it must operate and how the

    system will react to external stimuli. This document is intended for both the stakeholders and the

    developers of the system and will be proposed to the Regional Historical Society for its approval.

    3.2. Introduction

    This software system will be a database which will computerize all the manual operations

    performed by Glencore Company.

    Glencore is an aluminium workshop which deals in the manufacture and sales of various

    kinds of doors, windows, room separations and other furniture (Mainly Cupboards) of aluminium

    on clients commands and according to their specifications. This manufacturing is c arried out at

    Kingsway Camp, Delhi-9 where the workshop is situated. None other than the Workshop,

    Glencore is also comprised of a store where all the materials like aluminium materials, window

    panes and minor materials are kept after being purchased from the manufacturers. Glencore hasaround 50 employees but the owner named Mr. Sheldon Cooper who is also the managing

    director handles all the paper work and he has an assistant who helps control the flow of

    materials from the store to the workshop, keeping track of the materials in stock and informs the

    MD if some materials need to be reordered. At present all the paper works are carried out

    manually by the MD and his assistant. As his business is expanding and the manual system has

    become redundant and at times inefficient. In the manual system, all the data of the clients,

    suppliers and the materials used are kept in books. The stock of the materials along with deals

    with the supplier is also monitored manually.

  • 8/11/2019 system requirements specifications

    7/125

    How the manual system works?

    The system consists of seven files:

    Materials file: Stores details of the materials Client file: Stores details of the clients Supplier file: Stores details of the suppliers Work undertaken file: Keeps track of the work undertaken from clients Credit file: Keeps track of the amount of money clients owe

    Quantity in stock file: Keeps track of the quantity of materials that are present in the

    organisation

    Transaction file: Keeps track of the purchases made

    FACT FINDING

    Interview (Transcript)

    A meeting was arranged with the MD in order to investigate the system. On the 18th

    February 2014 at around noon as the MD was free. A set of questions were prepared and

    were asked to him, some questions were removed on the spot from the list, while others were

    added.

    Below is the transcript of the interview, comprising of the questions asked and the answers

    given by the MD.

    1). Me: Explain how your actual manual system works?

    MD: The manual system normally keeps track of all the transactions with the clients, the suppliers

  • 8/11/2019 system requirements specifications

    8/125

    and the materials currently in stock. There are 4 main files used in the manual system namely

    the client file, material file, work undertaken file and the credit file. For the payment of the

    clients there is a receipt book and whenever there is a transaction with the suppliers, the

    receipt obtained by the latter are kept.

    2). Me: Can you explain to me which kind of data does each file stores?

    MD: The client file usually stores all the details of the clients i.e. their name, address, contact

    number etc The materials file contains all the details of the materials their price their

    quantity in stock and their reorder level. The work undertaken file contains the name of the

    client for who is the work, the descriptions of the products to be manufactured, the materials

    needed and the total cost of the job. The dimensions of the products are usually kept in the

    personal dairy of the MD. The credit file usually contains consist of different pages each page

    is for a specific client. All the payments of the clients are registered in and their overdue is

    calculated.

    3). Me: What do you do when a client approaches you to do a work for him?

    MD: First of all I go at the place where the door, window or furniture is to be placed and take

    appropriate measurements. Then I generate a quotation for the client which shows how much

    it will cost to do the work according to his specifications. The cost for the materials and

    labour is considered to do so. If the client does not agree with the price another quotation is

    made with the cheap materials and given again to the client. Once agreed the client need to

    pay 50% advance and the rest after the work has been delivered. If the client agrees to give the job the quantity in stock for material file is updated. The qty in stock for the materials that

    will be used are decremented by the qty of the materials that will be used for the job. Once the

    materials file is updated the materials are taken from the store and kept in the workshop

    4). Me: How do you prioritize your work?

    MD: First of all I check which job needs to be returned immediately. But there are also some jobs

    that can be done quickly are also given priority and if ever the client has already paid, his job

    is done first. For this I have to check the work undertaken file and sort that file according to

    their priority, this tasks takes time as each time it needs to be sorted and if its lost I have tocontact my clients once again and regenerate the work undertaken file.

    5). Me: How do your clients do their payment and how do you deal with that?

    MD: Usually most of my clients pay me an amount of money in advance and the rest after that the

    job has been delivered. Whenever a payment is made, the overdue of the client is calculated

    and he receives a receipt for each payment. The payment is also registered in the credit file

  • 8/11/2019 system requirements specifications

    9/125

    and the overdue is noted down.

    6). Me: How do you deal with the suppliers to purchase the materials? Do you pay them once or it is

    done on instalments?

    MD: All the transactions with the suppliers are done in cash and therefore I do not have any

    problem of outstanding balance with them. First of all materials have a reorder level,

    whenever their number in stock is equal or less than the reorder level a list of such materials is

    generated and the suppliers are contacted to see whether they have the required materials in

    their stock. The process of generating the reorder list is very tedious as every day the

    materials need to be counted and cross checked against their reorder level. Once the materials

    purchased in the materials file their quantity in stock is updated.

  • 8/11/2019 system requirements specifications

    10/125

    Following The interview we made a summary of how the actual system finally works

    1). The quotation generated by the MD

    These quotations are usually generated before a work is started. It gives the client an idea of

    how much it will cost and if he agrees with the price the work is started. This quotation is

    usually difficult and time consuming to generate.

    2). The receipt usually generated after the client has paid

    This receipt is usually given to the clients whenever they make a payment or their work is

    accomplished. Usually two copies of the receipts are generated, one is given to the client and the

    other one is kept in the receipt book itself. It acts as a piece of evidence.

    3).Details of client from the client file.

    A Notebook is used to store details of the clients.

    4).The quantity in stock file which keeps track of the number of materials in stock.

    The quantity in order are recorded in another notebook. At the end of each day the number of

    materials are counted manually and are tallied.

    5).The material file which stores all the details of the materials.

    This file is sorted according to the type of the material hence it facilitates the job of the MD

    when he has to search details for a particular material. But the problem arises when the price of

    a certain material needs to be altered.

    6).The work undertaken file which stores all the details of work.

    The records in the file are highlighted for works have already been completed. Those which are

    not yet completed are not highlighted until completed.

  • 8/11/2019 system requirements specifications

    11/125

  • 8/11/2019 system requirements specifications

    12/125

    When a client comes and orders for a work, details of the work and client is saved in the work

    undertaken file. The total cost for the job is calculated and the overdue of the client is calculated

    and the credit file is updated.

    Whenever a client makes a payment the new overdue of the client is calculated and the credit fileis updated.

    PROBLEMS WITH CURRENT SYSTEM

    The current manual system has the following inefficiencies:

    A. It is difficult to keep track of clients who owe the M.D money. Each and every time, the list

    of such clients needs to be generated.

    B. The contact numbers of the clients and the suppliers are often lost and difficult to retrace. If

    ever the work undertaken file is misplaced all the clients need to be contacted and a new one

    has to be created, not only the file but all the measurements and the quotations need to be

    generated again.

    C. It is always time consuming to generate the quotation, for the clients because each time the

    material file needs to be consulted.

    D. If ever a change is made in a file that is linked to others, then all the files need to be

    consulted and the data needs to be changed in all the related files. This process is time

    consuming.

    E. It is often difficult to generate the lists of works that have not completed before their

    deadline.

  • 8/11/2019 system requirements specifications

    13/125

    F. The material file needs to be altered each time, in order to change the prices of the materials

    and the quantity in stock. This process is usually messy and sometimes new material files

    need to be created.

    G. It usually takes a lot of time to search for a particular data in a file. As the data in all almost

    files are stored in chronological order the files need to be searched till the end or until the

    required data item is found.

    Solution Proposed

    In order to solve all the above mentioned problems the manual system can be computerized. All

    the files and the data will be stored in a database and data could be accessed in various ways

    such as on forms, queries tables and reports. Further queries can be made to generate the reorder

    list and other lists.

    3.2.1. Glossary

    Term Definition

    Aluminium Materials The Raw material which is used in constructing thefurniture of Glencore Company.

    Client A person who wants to buy the tailor made products ofGlencore Company

    Glencore Company The company for which the software is being developed

    MD The managing director of Glencore Company who handlesall the paperwork and is also the owner of the Company.Quotation An approximate price of how much will a finished product

    of Glencore Company cost.Stock level It defines the quantity of a specific raw material which isavailable in Store.

    Supplier A Company which provides Glencore Company with theraw materials it needs in order to make the furniture.

    Work undertakenA work undertaken is an order which has been placed by aclient. The client gives its requirements about how it wantsits product and it is sent for production.

  • 8/11/2019 system requirements specifications

    14/125

    3.2.5. Overview of Document

    The next chapter, the Overall Description section, of this document gives an overview of

    the functionality of the product. It describes the informal requirements and is used to establish a

    context for the technical requirements specification in the next chapter.

    The third chapter, Requirements Specification section, of this document is written

    primarily for the developers and describes in technical terms the details of the functionality of

    the product.

    Both sections of the document describe the same software product in its entirety, but are

    intended for different audiences and thus use different language.

    3.3 Product Scope

    3.3.1 System Environment

    The Glencore Database system will have two active users,

    The Owner who will take the new orders and handle the all the payments and the assistant will

    handle the stock level system of the company. The assistant will place orders to the Suppliers

    and will check reorder level every day

    3.3.2 Functional Requirements Specification

    This section outlines the computer related functionalities which the database is going to

    perform. It can also be defined as the computer related objectives which the database has to

    achieve

    Computer related

    3.2.3.1 To enter data easily into the computer via the mouse and the keyboard and can

    obtain a quick output processed by the CPU.

  • 8/11/2019 system requirements specifications

    15/125

    3.2.3.2 Keep all the details of Purchases, Work undertaken, and Payment made by

    clients,Users, Suppliers, Clients and aluminium bars.

    3.2.3.3 Allow the user to add, delete and modify records.

    3.2.3.4 Automatically calculate the total costs for work undertaken and purchases.

    3.2.3.5 To generate queries and lists such as the reorder list and the overdue of clients

    quickly.

    3.2.3.6 To enable a quick search of data in a file.

    3.2.3.7 Enter data only once and we can access to it several times.

    3.2.3.8 To avoid input errors as validation checks will be used.

    3.2.3.9 To prevent data loss by producing backup files.

    3.2.3.10 To link files together which means that all the other files will depend on the same

    information will be automatically updated.3.2.3.11 Filter data accessible to users according to their status in the organisation.

    3.2.3.12 Allow the user to change password, add new users and even delete some.

    Business related objectives

    a. Fasten the procedures of generating quotations, receipts etc

    b. To save time as most of the complicated tasks will be performed by the computer.

    c. To save the resources like papers and pens.

    d. Compete with rival companies; offer the clients a better service than the others.

    e. More people will tend to come, they will be curious about the computerized system; thus it

    will attract clients.

    f. To save on labour; there will be no need of the storekeeper as the system will keep track of

    the materials in stock.

    3.3.3 User Characteristics

    The owner and storekeeperare expected to be computer literate and be able to use

    Microsoft Access. On opening the Login screen is opened and the user is supposed to enter its

    credentials. The user should be able to manipulate forms. Training will be provided to the user to

    be able to use the system appropriately.

  • 8/11/2019 system requirements specifications

    16/125

    3.3.4 Non-Functional Requirements

    Hardware requirements

    CPU (INTEL CORE 2 DUO E6550)

    Any processor available which will is efficient to store and process data will be good.

    Therefore I strongly recommend an Intel core 2 duo computer system.

    Reason: it is a good processor which is able to process data very quickly and works

    extremely fast.

    KEYBOARD (DELUXE WIRELESS KEYBOARD-LOGITECH)

    It is a very important input device that will be used to enter data into the computer system. It

    also allows creating commands and selection.

    Reason: it is easy to use; the staff wont get too much problem in learning to use the

    keyboard. It is also a very good way for communicating with the computer.

    MOUSE (SCROLL OPTICAL WIRELESS MOUSE-LOGITECH)

    An optical mouse is strongly recommended as it is very easy to use. It is used to make

    selections by moving the cursor and clicking. It enables the user to use a graphical user

    interface

    Reason: it is easy to use; selection is made easier than on the keyboard and can easily be used

    to edit texts.

    PRINTER (HP Deskjet All-in-One series)

    It will be used to print reports or letters to the peoples concerned. Therefore a laser printer is

    recommended, it might be expensive but it give satisfying outputs.

  • 8/11/2019 system requirements specifications

    17/125

    Reason: it is fast and silent. It gives out good quality of printing and there is no major

    expense on the maintenance of the printer.

    LCD (View Sonic VX2235wm 22 Monitor)

    Most of the work the librarian or the user will read on the monitor so as to make reading

    easier a LCD of 22 inch is required. The LCD must be the one a view care one.

    Reasons: it occupies less space; it will not affect the eyes of the user and facilitate the reading

    as the screen is large enough.

    UPS (uninterrupted power supply)

    An UPS is very important as whenever there will be a power failure it enables the users to

    complete their task and save it within a given time of about 45 minutes or more.

    Reason: it prevents data loss when there is a power failure.

    DVD RW (SONY-DRU-840A)

    When data is processed it will be saved in RAM and the hard disk. It is necessary to create

    backup files therefore a DVD RW can be used to store the backup files.

    Reason: if ever there is a data loss it can be used to restore the system.

    MOTHERBOARD (Biostar P4M900-M4 Intel 478 Micro ATX)

    Reason: this motherboard is suitable for an Intel processor. It has on board sound andgraphics card.

    CPU fan

    Reason: It cools down the processor when it heats up.

  • 8/11/2019 system requirements specifications

    18/125

    Hard disk (256 GB)

    It is storage device which usually stores all the programs and data in a computer system.

    RAM (2 GB)

    It usually stores all the current data being manipulated, current running program and partof the O.S.

  • 8/11/2019 system requirements specifications

    19/125

    2. Software requirements

    Nowadays there are very powerful database management systems available. I have chosen

    MS ACCESS 2013 to develop the software and WINDOS 8 PROFESSIONAL as the

    operating system as MS ACCESS 2013 is compatible with WINDOS XP PROFESSIONAL.

    Antivirus software is also essentials to protect the system from being affected by viruses. I

    have chosen the ESET NOD 32 ANTIVIRUS version 4.

    REASONS FOR CHOOSING ACCESS 2013

    o Tables, forms, queries and reports can be easily created.o There can be high level security by programming username and password.o There is no duplication of data.o Error messages are displayed when there is an error.

    o Easy to sort datao Other applications such as visual basic can be used to create commands.

    o Validations and input mask can be used.

    REASONS FOR CHOOSING WINDOWS 8 PROFFESIONAL

    o Control the peripherals.o Control the processor.

    o Does the memory management.o There is interrupt handling.

    o Carries out the file management.o Does the CPU scheduling.

    REASONS FOR CHOOSING ESET NOD 32 ANTIVIRUSES

    o Most secure and effective solution on the market - has the best detection record of any

    antithreat product.

  • 8/11/2019 system requirements specifications

    20/125

    o Unique ThreatSense Technology significantly reduces exposure and risk to new threats,

    consistently detecting >80% of new threats without requiring a specific signature update.

    o Lowest overhead of any antithreat product (up to 75% less system overhead).

    o Fastest scan speed of any antithreat product (2 to 50 times faster scanning performance).

    o Smallest update files of any antithreat product (typically 10-50 kb in size).

    o Fastest growing customer-base of any antithreat product.

    o Easy to setup and use.

    o Helpful and competent local phone and email support to all registered users.

    o Flexible and scalable - from single users to very large corporates.

    REASONS FOR NERO 7

    o Is user friendly and easy to use for making backups.

    o Allows easy restore of backups.

    o Enables user to select destination (location) for backup.

    o Writes data to CD/DVD in a proper manner.

    o Easily available in the market.

    3.4.0. Requirements Specification

    3.4.1 External Interface Requirements

    The link to an external system is the database system which allows the MD, Mr. Cooper

    to manage the company

  • 8/11/2019 system requirements specifications

    21/125

    3.4.2 Functional Requirements

    3.4.2.1 3.4.2.1 To enter data easily into the computer via the mouse and the keyboard and

    can obtain a quick output processed by the CPU.In the database we will be able to enter data about materials , clients and suppliers. It will

    facilitate data input. It will allow data to be easily sorted and added and deleted. To search

    for a specific material, client or supplier it will be very easy and quick. Data entry will be

    facilitated because forms feature will be made available in the database

    3.4.2.2 Keep all the details of Purchases, Work undertaken, and Payment made by

    clients, Users, Suppliers, Clients and aluminium materials.

    The database will keep details of all transactions performed in the company. It will not be

    prone to errors because all calculations will be made automatically. Data will be stored in

    an organised way.

    3.4.2.3 Allow the user to add, delete and modify records.

    In the database we will be able to add, delete and modify records about clients, suppliers

    and materials.

    3.4.2.4 Automatically calculate the total costs for work undertaken and purchases.

    When human beings make calculations they are prone to make errors. The database will

    make all the calculations automatically. For example when a work has been undertaken the

    stock level will be decreased automatically and when new purchases have been made stock

    is increased automatically.

  • 8/11/2019 system requirements specifications

    22/125

    3.4.2.5 To generate queries and lists such as the reorder list and the overdue of clients

    quickly.

    The database will allow us to generate reports which will help in handling the company

    better.

    3.4.2.6 To enable a quick search of data in a file.

    Searching for data will be made easier with the database

    3.4.2.7 Enter data only once and we can access to it several times.

    Redundancy of data will be eliminated in the database. Since all the tables will be linkeddata needs to be entered only once and but can be manipulated and used in various

    processes

    3.4.2.8 To avoid input errors as validation checks will be used.

    The database will have validation checks which will ensure that errors are eliminated

    during data entry

    3.4.2.9 To prevent data loss by producing backup files.

    In the database a backup option will be provided which will ensure that data will not be lost

    3.4.2.10 To link files together which means that all the other files will depend on the same

    information will be automatically updated.

    Since all the files will be linked this will ensure that the database system will be always

    updated

  • 8/11/2019 system requirements specifications

    23/125

    3.4.2.11 Filter data accessible to users according to their status in the organisation.

    With the use of data encapsulation datas privacy will be ensured in the database

    3.4.2.12 Allow the user to change password, add new users and even delete some.

    In the database the owner will be able to add new users and even delete some.

  • 8/11/2019 system requirements specifications

    24/125

    3.4.3 Detailed Non-Functional Requirements

    The logical structure of the data to be stored in the Glencore Company database is given below

    Tables Design (File design)

    Material table

    Field Description Data type Validation(s) needed

    Material ID (PK) Unique code of the

    Material, it can be used to

    identify it, or search for it.

    Text Presence check, Character

    type check and format check.

    Price The price of one such

    Material.

    Currency Presence check, Type check

    (Contain integers only apart

    from RS)

    Type Indicates the type of

    Material whether it is

    curve, perfile etc...

    Text Presence check, Type check.

    (Contains alphabets only)

    Cross-

    section(mm)

    Indicates the dimensions

    of the cross-section of the

    Material if they vary.

    Text Presence check, Type check.

    Thickness(mm) Indicates the thickness of

    the Material if they vary.

    Text Presence check, Type check.

    Quantity in stock The amount of Material in

    stock.

    Number Presence check, Type check

    (Integers only)

    Reorder level Amount of Material to

    reach in stock to reorder.

    Number Presence check, Type check

    (Integers only)

    The Material table shall store all the details of the Material and will feed data to forms andreports.

    (PK-means primary key)

  • 8/11/2019 system requirements specifications

    25/125

    Client table

    Field Description Data type Validation(s) needed

    Client ID

    (PK)

    Each client has a unique

    ID.

    Text Presence check, Type and format

    check.

    Surname The surname of the client. Text Presence check and Type check.

    Other name The name of the client. Text Presence check and Type check.

    Address The address of the client. Text Presence check and Type check.

    Tel The telephone number of

    the client.

    Text Presence check and Type check.

    Mob The mobile number of the

    client.

    Text Presence check and Type check

    Overdue The amount of money that

    the client owes.

    Currency Presence check and Range check

    ( > = 0)

    The Client table shall store all the details of the clients and shall feed data to forms and reports.

    Payment table

    Field Description Data type Validation(s) needed

    Payment ID

    (PK)

    Unique code to identify a

    payment.

    Text Presence check, Type and

    format check.

    Date Date on which the

    payment was made.

    Date Presence check and Type check.

    Client ID The ID of the client who

    made the payment.

    Text Presence check, Type and

    format check.

    Amount Paid The amount paid by the

    client.

    Currency Presence check, Type and range

    check (< = Past due)

    Past Due The overdue of the client

    before the payment.

    Currency Presence check and Type check.

  • 8/11/2019 system requirements specifications

    26/125

    The payment table shall keep track of the payments made by clients and shall feed data to formsand reports.

  • 8/11/2019 system requirements specifications

    27/125

    Supplier table

    Field Description Data type Validation(s) needed

    Supplier ID

    (PK)

    Each supplier has a

    unique code.

    Text Presence check, Type and format

    check.

    Company

    Name

    The name of the

    company.

    Text Presence check and Type check.

    Surname of

    Owner

    The surname of the

    owner.

    Text Presence check and Type check.

    Other name of

    Owner

    The other name of the

    owner.

    Text Presence check and Type check.

    Address The address of the

    company.

    Text Presence check and Type check.

    Tel The telephone number of

    the company.

    Text Presence check and Type check.

    Mob The telephone number of

    the owner or a worker at

    in the company.

    Text Presence check and Type check.

    The Supplier table shall store all the details of the suppliers and shall feed data to forms and

    reports.

    User table

    Field Description Data type Validation(s) needed

    User ID (PK) Unique ID given to each

    User.

    Text Presence check, Type and format

    check.

    Name Name of the User. Text Presence check and Type check.

    Surname Surname of User. Text Presence check and Type check.

    Password Password of the User. Text Presence check and Type check.

    Post The post of the User. Text Presence check and Type check.

  • 8/11/2019 system requirements specifications

    28/125

    The user table shall store data about the users who shall use the system and feed data to forms.

    Work Undertaken table

    Field Description Data type Validation(s) needed

    Work ID (PK) Unique code for each

    job undertaken.

    Text Presence check and Type and

    format check.

    Client ID Unique code to each

    client.

    Text Presence check and Type and

    format check.

    Description of

    product

    The products to

    manufacture for the

    client i.e.: 2 doors, 1

    sliding window etc...

    Text Presence check and Type check.

    Address of

    delivering the

    work

    The address where the

    work has to be

    delivered.

    Text Presence check and Type check.

    Date undertaken The date on which the

    work has been

    undertaken.

    Date Presence check, Type and range

    check.

    (Date undertaken < Date to

    deliver)

    Date to deliver The date on which the

    work needs to be

    delivered or finished.

    Date Presence check, Type and range

    check.

    (Date undertaken < Date to

    deliver)

    Total cost The total cost of the

    work.

    Currency Presence check and Type check.

    Work completed Whether the work has

    been completed?

    Boolean

    Installation

    completed

    Whether the work has

    been delivered?

    Boolean

    The Work undertaken table shall store the details of the works undertaken by the MD.

  • 8/11/2019 system requirements specifications

    29/125

    Products table

    Field Description Data type Validation(s) needed

    Product ID (PK) Each product is given aspecific code for different

    works, for e.g. P001 for

    windows for work W001.

    Text Presence check, Type andformat check.

    Work ID This code enables the user

    to know for which work is

    this product.

    Text Presence check, Type and

    format check.

    Product Brief description of

    product.

    Text Presence check and Type check.

    Quantity of

    products

    Quantity of this kind of

    product needed.

    Number Presence check, Type and range

    check (> 0)

    Dimensions The dimensions of the

    product.

    Text Presence check and Type check.

    Labor The workmanship needed

    for the product(s).

    Currency Presence check and Type check.

    Fittings The amount of money

    required for the fittingsand other materials.

    Currency Presence check and Type check.

    Total The total cost of the

    product.

    Currency Presence check and Type check.

    The Product table shall store the details of the products for each work.

  • 8/11/2019 system requirements specifications

    30/125

    Materials Needed table

    Field Description Data type Validation(s) needed

    Material ID

    (PK)

    The Material ID for the

    Material needed.

    Text Presence check, Type and

    format check.

    Product ID (PK) The Product ID for

    which the Material is

    needed.

    Text Presence check, Type and

    format check.

    Qty of materials The quantity of this

    specific Material

    needed for the product.

    Quantity Presence check, Type and range

    check (> 0).

    Sub price

    (materials)

    The price of the

    Material.

    Currency Presence check, Type and range

    check (> 0).

    The Material needed table shall store the details of the Material needed for each product.

    Purchase table

    Field Description Data type Validation(s) needed

    Purchase ID

    (PK)

    Unique code given for

    each purchase.

    Text Presence check, Type and format

    check.

    Date The date when the

    Material had been

    purchased.

    Text Presence check and Type check.

    Supplier ID The ID of the supplier

    with whom the Material

    has been purchased.

    Text Presence check, Type and format

    check.

    Total cost The total cost of the

    Material purchased.

    Currency Presence check and Type check.

  • 8/11/2019 system requirements specifications

    31/125

    The purchase table shall store the details of purchases made

    Purchase Line table

    Field Description Data type Validation(s) needed

    Material ID

    (PK)

    The ID of the Material

    purchased.

    Text Presence check, Type and format

    check.

    Purchase ID

    (PK)

    The ID of the purchase

    for which this Material

    has been purchased.

    Text Presence check, Type and format

    check.

    Quantity The quantity of these

    specific Materials that

    have been purchased.

    Number Presence check, Type and range

    check (> 0)

    Sub price The total cost for the

    Material purchased.

    Currency Presence check and Type check.

    The Purchase line table shall store details of the Material purchased during each purchase.

  • 8/11/2019 system requirements specifications

    32/125

    3.4.4 Intended Benefitsa) The system automatically sorts all the data in all the reports after the slightest change.

    Therefore the MD has no need to waste time and sort each file.

    b) Search is made faster by the use of combo boxes and once more time is saving in the

    process of searching data.

    c) The use of validation techniques reduces virtually all the risk of having input errors.

    d) The system enables the MD to keep track of all the clients who owe him money. He does

    not need to generate a new list each time. It is done automatically.

    e) The system also produces reports which indicates the MD all the jobs that need to be

    done and those which are urgent. This shall reduce the risk of forgetting the completion

    or installation of a job.

    f) The reorder list is generated automatically by the system. Therefore the MD needs not to

    check the Materials in stock file and generate the list each time.

    g) There is less risk of data being lost for all the data will be stored on the database and in

    case the software is to be corrupted, the advanced feature of MS Access 2007 creates a

    backup automatically.

    h) There is flexibility of data in the system, for the use of relationships between files shall

    enable changes to be recognised throughout the whole system and allow easy updates.

    i) The MD shall save on stationary fees as less paper shall be used for the computerised

    system.

    j) The system aids in calculating the total cost of a job. It also takes into consideration the

    taxes and this task shall be faster compared to the old system as the MD will not have to

    consult the materials file each time while calculating.

  • 8/11/2019 system requirements specifications

    33/125

    3.4.4 Limits of the scope of the solutiona) The system shall fail to operate when there is power failure as the computer requires

    electricity to operate.

    b) The MD may be computer literate but the other workers who will be allowed to use the

    system during the absence of the MD are not computer literate. Therefore training shall

    be required for them and this might slow the process of implementation. This might be

    complicated and some worker may be reluctant to use the new computerised system.

    c) If ever there are other new sorts of reports that will be required by the MD, the system

    shall fail to produce such reports as such situations have not been catered or predicted.

    d) The system does not produce any graphical or statistical representations of the data in the

    system and this might have been a useful feature for the MD.

    e)

    However there are validations techniques there might still be input errors. (E.g.transcription or transposition errors while entering the name, surname or address...

    entering an ID in the correct format but with the wrong code...)

  • 8/11/2019 system requirements specifications

    34/125

  • 8/11/2019 system requirements specifications

    35/125

    5. DESIGN AND TECHNICAL SPECIFICATION

  • 8/11/2019 system requirements specifications

    36/125

    5.1 Context Diagram

    5.2 Data Flow Diagrams

    Level 0 DFD

  • 8/11/2019 system requirements specifications

    37/125

  • 8/11/2019 system requirements specifications

    38/125

    5.4 ER DIAGRAM

    Client_id

    Lname

    Address

    Mobile_no

    Telephone_no

    Totalcost

    Delivery

    date

    Overdue

    Work_id

    Undertakendate

    Crosssection Price

    Reorder

    level

    Date

    Supplier_id

    Material_id

    Qty instock

    Password

    Type

    Amount

    Fname

    ThicknessLname

    User

    Supplier

    Client

    Material

    Workundertaken

    Fname

    User_id

    PlacesOrder

    Supplied by

    Material Needed

    Pays

    Telephone_no

    Mobile_no

    Lname

    Address

    1:M

    M:1

    1:M

    1:M

    1:M

    M:1

    M:1

    post

  • 8/11/2019 system requirements specifications

    39/125

    5.5 TABLE DESCRIPTIONMaterial table

    Field Data type Constraints Description

    Material ID Char(5)int(5) Primary key , Not Null Unique code of the

    Material, it can be used to

    identify it, or search for it.

    Price Int(10) Not Null The price of one such

    Material.

    Type Char(30) Not Null Indicates the type of

    Material whether it is

    curve, perfile etc...

    Cross-section int(5) . Not Null Indicates the dimensions of

    the cross-section of the

    Material if they vary.

    Thickness int(5) Not Null Indicates the thickness of

    the Material if they vary.

    Quantity in stock Int(10) Not Null The amount of Material in

    stock.

    Reorder level Int(10) Not Null Amount of Material to

    reach in stock to reorder.

    Client table

    Field Data type Constraints Description

    Client ID Char(5)int(5) Primary key , Not Null Each client has a unique ID.

    lname Char(20) Not Null The surname of the client.

    fname Char(20) Not Null The name of the client.

    Address Char(30)int(30) Not Null The address of the client.

    Telephone no Int(10) Not Null The telephone number of the

    client.

    Mobile no Int(10) Not Null The mobile number of the

    client.

  • 8/11/2019 system requirements specifications

    40/125

    Overdue Int(20) The amount of money that the

    client owes.

    Payment table

    Field Data type Constraints Description

    Payment ID Char(5)int(5) Primary key , Not Null Unique code to identify a

    payment.

    Date Char(20)int(5) Not Null Date on which the payment was

    made.

    Amount

    Paid

    int(20) Not Null

    Supplier table

    Field Data type Constraints Description

    Supplier ID Char(5)int(5) Primary key , Not Null Each supplier has a unique

    code.

    lname Char(20) Not Null The surname of the owner.

    fname Char(20) Not Null The other name of the owner.

    Address Char(30)int(30) Not Null The address of the company.

    Telephone no Int(10) Not Null The telephone number of the

    company.

    Mobile no Int(10) Not Null The telephone number of the

    owner or a worker at in the

    company.

    User table

    Field Data type Constraints Description

    User ID Char(5)int(5) Primary key , Not Null Unique ID given to each User.

  • 8/11/2019 system requirements specifications

    41/125

    Lname Char(20) Not Null Name of the User.

    Fname Char(20) Not Null Surname of User.

    Password Char(20)int(20) Not Null Password of the User.

    Post Char(30) Not Null The post of the User.

    Work Undertaken table

    Field Data type Constraints Description

    Work ID (PK) Char(5)int(5) Primary key , Not Null Unique code for each job

    undertaken.

    Undertaken

    Date

    Char(20)int(5) Date The date on which the work has

    been undertaken.

    Delivery Date . Char(20)int(5) Date The date on which the workneeds to be delivered or

    finished.

    Total cost[ Int(20) Currency The total cost of the work.

  • 8/11/2019 system requirements specifications

    42/125

    5.6 STRUCTURE CHART

    5.6.1 Main system

  • 8/11/2019 system requirements specifications

    43/125

    5.6.2 File updating system

  • 8/11/2019 system requirements specifications

    44/125

    5.6.3 User Accounts

    5.2.4 Reports system

  • 8/11/2019 system requirements specifications

    45/125

    5.2.5 Item purchasing system

    Item purchasing System

    Updatesupplier file

    ProcessmaterialDelivery

    Verifymaterialdelivery

    PaymentHandling

    Generatereport

    Generatereceipt

    Checkmaterialdelivery

    Calculatetotal cost

    Generatereport

    Calculate qtyin stock

    Generatereport

    R e p o r t

  • 8/11/2019 system requirements specifications

    46/125

    DATA DICTIONARY

    INPUT VALUES COMPONENT SPECIFICATIONS

    DESCRIPTION

    Name FnameLname

    [character] n

    [character] nn=20

    Client_id [Digit][alphabet] [alphabet] n[digit] n n=5,Unique code of each client

    address [house no. + street+city+ state]

    house no.=[digits]*street =[character]*state=[character]*city=[character]*

    Contact no [mobile_no.][telephone_

    .]

    mobile_no.=[digit] n

    telephone_no= [digit] n n=10

    User_id [Digit][alphabet] [alphabet] n[digit] n n=5,Unique code of each user

    Supplier_id [Digit][alphabet] [alphabet] n[digit] n n=5, Unique code of eachsupplier

    Material_id [Digit][alphabet] [alphabet] n[digit] n n=5, Unique code of eachMaterial

    Payment_mode [cheque(ch)][cash(ca)] (y|q)[character] n n=1 only one scheme can befollowed

    Amount tendered (ca|ch)[character] n n=2, the amount paid by theclient.

    Payment_id [Digit][alphabet] [alphabet] n[digit] n n=5, Unique code of eachpayment

    Post [string] String The post of the User

    Purchase_id [Digit][alphabet] [alphabet] n[digit] n n=5, Unique code of eachpurchase

    Password [alphabet] [alphabet][digit] n n=10

  • 8/11/2019 system requirements specifications

    47/125

    6. CODE DEVELOPMENT

    Price [Digit] [digit] n Price of each material

    Type [alphabet] [alphabet]* Indicates the type of Materialwhether it is curve, perfileetc...

    Cross section [Digit] [digit]* Indicates the dimensions of the

    cross-section of the Material

    Thickness [Digit] [digit]* Indicates the thickness of theMaterial

    Quantity of material [Digit] [digit]* Quantity of specific material

    Cost [Digit] [digit]* Cost of each material

    Date =[mm/dd/yyyy] date Date, month, year

  • 8/11/2019 system requirements specifications

    48/125

    6.1 Flowchart

    Login

    Input username and password

    Is password

    correct?

    Open login Form

    Wrong password.Enter Again

    Start

    End

    No

  • 8/11/2019 system requirements specifications

    49/125

    Recording a Purchase

    Enter details of purchasei.e. Purchase ID, material

    ID, Qtyetc

    Validate fields

    Purchase File

    If Error

    Supplier File

    Total cost=Subprice *Qty Purchased= Qty instock + Qty purchased

    Save all the data

    Yes

    N

    Start

    End

  • 8/11/2019 system requirements specifications

    50/125

    Recording a new Work

    Enter details of Work i.e.Work ID, Client ID etc

    Validate fields

    If Error

    Total cost =Subprice *Qty of material neededQty Available = Qty instock - Qty needed

    Client fileFile

    Save all details

    WorkUndertakenFile

    ProductFile

    Yes

    N

    Start

    End

    MaterialFile

    Overdue = Total cost Amount Tendered

  • 8/11/2019 system requirements specifications

    51/125

  • 8/11/2019 system requirements specifications

    52/125

    Adding a new record in a file

    Enter details in fields

    Validate fields

    If Error

    Save all details

    ProductFile

    No

    Yes

    Start

    End

  • 8/11/2019 system requirements specifications

    53/125

    Deleting a record in a file

    Enter Record to be deleted

    Search record

    If NotFound

    File

    NoConfirmDelete

    Delete record

    End

    Yes

    No

    Start

    End

  • 8/11/2019 system requirements specifications

    54/125

    Editing a record in a file

    Enter Record

    Search record

    Save all details

    File No

    Ye

    If Found

    Display Record

    Edit record

    Validate fields

    If Error

    Ye

    No

    Start

    End

  • 8/11/2019 system requirements specifications

    55/125

    Searching a record in a file

    Enter Search item

    Search record

    If Found

    File

    Yes

    No

    Display Record

    Search failed

    Start

    End

  • 8/11/2019 system requirements specifications

    56/125

    Generating the reorder list report

    Search recordswhere Reorder level>= Qty in stock Bars File

    DisplayReport

    Sort in ascendingorder usingQty instock

    Start

    End

  • 8/11/2019 system requirements specifications

    57/125

  • 8/11/2019 system requirements specifications

    58/125

    Generating the urgent work to deliver report

    Search work which has not been delivered, but completedand which ought to returnedearlier

    WorkUndertakenFile

    Display Report

    Sort in ascending orderusing Date to deliver

    Start

    End

  • 8/11/2019 system requirements specifications

    59/125

    Generating the general overdue report

    Search recordswhere Overdue>0

    Client File

    DisplayReport

    Start

    End

  • 8/11/2019 system requirements specifications

    60/125

    Generating the work completed overdue report

    Search work which has been completed, but NOT delivered and forwhich the client still owemoney

    WorkUndertakenFile

    DisplayReport

    Sort in descendingorder usingOverdue

    Client File

    Start

    End

  • 8/11/2019 system requirements specifications

    61/125

    Generating the work delivered overdue report

    Search work which has beendelivered and for which theclient still owe money

    WorkUndertakenFile

    Display Report

    Sort in descendingorder using Overdue Client File

    Start

    End

  • 8/11/2019 system requirements specifications

    62/125

    Generating the urgent work to be completed report

    Search work which has not beencompleted, had to be alreadydelivered

    Work UndertakenFile

    Display Report

    Sort in ascending order usingDate to be returned

    Start

    End

  • 8/11/2019 system requirements specifications

    63/125

    Generating work to be delivered report

    Search work which has beencompleted, has not beendelivered

    WorkUndertakenFile

    Display Report

    Sort in ascending orderusing Date to be returned

    Start

    End

  • 8/11/2019 system requirements specifications

    64/125

    Generating work to be done report

    Search work which has not been completed, has to bedelivered later

    WorkUndertakenFile

    Display Report

    Sort in ascending orderusing Date to be returned

    Start

    End

  • 8/11/2019 system requirements specifications

    65/125

  • 8/11/2019 system requirements specifications

    66/125

    6.2 Component Level Design (Pseudo Code)

    6.2.1 Welcome Form

    On timer

    Close Welcome Form

    Open Login Form

    End sub

    6.2.2 L ogin F orm (Secur ity design)

    On Click

    Validate password for the user

    IF Password is correct THEN

    Open Main menu

    Save post of worker in a file

    Else

    Request to renter password

    END IF

    End sub

    6.2.1 F orms Section (F or Other users)

    On load

    if user is manager then

  • 8/11/2019 system requirements specifications

    67/125

    Unhide Users command button.

    Else

    Hide Users command button

    End if

    End sub

    6.2.2 Change Password form (Enabl es users to change their password)

    User ID field

    After Update

    Enable Enter old password command button

    Display details of User

    End sub

    Enter Old password Field

    After Update

    IF old password is correct THEN

    Ask User to enter new password

    Enable Enter new password textbox

    Disable Old password textbox

    ELSE

    Ask the user to re-enter old password

    END IF

    End sub

  • 8/11/2019 system requirements specifications

    68/125

    New password field

    After Update

    Enable Confirm New password textbox

    End sub

    Confirm password field

    After UpdateIF the 2 passwords tally THEN

    Enable Change password button

    Disable the two password textboxes

    ELSE

    Ask the user to re-confirm New password

    END IF

    End sub

    Change password button

    On Click

    Change password in the Users table

    End sub

    6.2.3 M ateri als form

    Save button

  • 8/11/2019 system requirements specifications

    69/125

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

    Add button

    On click

    IF all fields are validated THEN

    Save the record

    Disable Save button

    Enable Navigation buttons

    Enable Add button

    ELSE

    Renter data

    End IF

    End sub

    Delete button

  • 8/11/2019 system requirements specifications

    70/125

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

    Enable save button

    End sub

    Navigation buttons :

    Last Button

    On click

    IF on last record

    Error message

    Else

  • 8/11/2019 system requirements specifications

    71/125

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

    Error message

    Else

    Go to First record

    END IF

    End sub

    .Previous Button

    On click

    IF on First record

    Error message

    Else

    Go to Previous record

    END IF

    End sub

  • 8/11/2019 system requirements specifications

    72/125

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

    On click

    Close Material Form

    Open Main Menu

    End sub

    Main Menu Button

    On click

    Close material Form

    Open Forms Section

  • 8/11/2019 system requirements specifications

    73/125

    End sub

    6.2.4 Client F orm

    Save button

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

    Add button

    On click

    IF all fields are validated THEN

    Save the record

    Disable Save button

    Enable Navigation buttons

    Enable Add button

  • 8/11/2019 system requirements specifications

    74/125

    ELSE

    Renter data

    End IF

    End sub

    Delete button

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

    Enable save button

    End sub

    Navigation buttons :

  • 8/11/2019 system requirements specifications

    75/125

    Last Button

    On click

    IF on last record

    Error message

    Else

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

    Error message

    Else

    Go to First record

    END IF

    End sub

    .Previous Button

    On click

    IF on First record

  • 8/11/2019 system requirements specifications

    76/125

    Error message

    Else

    Go to Previous record

    END IF

    End sub

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

    On click

    Close client Form

    Open Main Menu

    End sub

  • 8/11/2019 system requirements specifications

    77/125

    Main Menu Button

    On click

    Close client Form

    Open Forms Section

    End sub

    6.2.5

    Supplier Form

    Save button

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

    Add button

    On click

    IF all fields are validated THEN

    Save the record

  • 8/11/2019 system requirements specifications

    78/125

    Disable Save button

    Enable Navigation buttons

    Enable Add button

    ELSE

    Renter data

    End IF

    End sub

    Delete button

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

  • 8/11/2019 system requirements specifications

    79/125

    Enable save button

    End sub

    Navigation buttons :

    Last Button

    On click

    IF on last record

    Error message

    Else

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

    Error message

    Else

    Go to First record

    END IF

    End sub

  • 8/11/2019 system requirements specifications

    80/125

    .Previous Button

    On click

    IF on First record

    Error message

    Else

    Go to Previous record

    END IF

    End sub

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

  • 8/11/2019 system requirements specifications

    81/125

    On click

    Close supplier Form

    Open Main Menu

    End sub

    Main Menu Button

    On click

    Close supplier Form

    Open Forms Section

    End sub

    6.2.6 Pur chases Form

    Save button

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

  • 8/11/2019 system requirements specifications

    82/125

    Add button

    On click

    IF all fields are validated THEN

    Save the record

    Disable Save button

    Enable Navigation buttons

    Enable Add button

    ELSE

    Renter data

    End IF

    End sub

    Delete button

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

  • 8/11/2019 system requirements specifications

    83/125

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

    Enable save button

    End sub

    Navigation buttons :

    Last Button

    On click

    IF on last record

    Error message

    Else

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

  • 8/11/2019 system requirements specifications

    84/125

    Error message

    Else

    Go to First record

    END IF

    End sub

    .Previous Button

    On click

    IF on First record

    Error message

    Else

    Go to Previous record

    END IF

    End sub

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

  • 8/11/2019 system requirements specifications

    85/125

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

    On click

    Close purchases Form

    Open Main Menu

    End sub

    Main Menu Button

    On click

    Close purchases Form

    Open Forms Section

    End sub

    Calculate button

    On Click

    Sums the data in the Sub Price field in the sub form

    Calculate the total cost by adding 15% vat to the sum.

    End Sub

  • 8/11/2019 system requirements specifications

    86/125

    6.2.7 Work Undertaken f orm

    Save button

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

    Add button

    On click

    IF all fields are validated THEN

    Save the record

    Disable Save button

    Enable Navigation buttons

    Enable Add button

    ELSE

    Renter data

    End IF

  • 8/11/2019 system requirements specifications

    87/125

    End sub

    Delete button

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

    Enable save button

    End sub

    Navigation buttons :

    Last Button

    On click

  • 8/11/2019 system requirements specifications

    88/125

    IF on last record

    Error message

    Else

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

    Error message

    Else

    Go to First record

    END IF

    End sub

    .Previous Button

    On click

    IF on First record

    Error message

    Else

  • 8/11/2019 system requirements specifications

    89/125

    Go to Previous record

    END IF

    End sub

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

    On click

    Close work undertaken Form

    Open Main Menu

    End sub

    Main Menu Button

  • 8/11/2019 system requirements specifications

    90/125

    On click

    Close work undertaken Form

    Open Forms Section

    End sub

    Date to deliver field

    After Update

    IF Date to deliver < Date Undertaken THEN

    Clear data for both dates and indicate error before proceeding

    Renter both dates

    END IF

    End sub

    6.2.8 Products form

    Save button

    On click

    Unlock all textboxes

    Clear all textboxes

    Enable Save button

    Disable add button

    Disable navigation buttons

    End sub

  • 8/11/2019 system requirements specifications

    91/125

    Add button

    On click

    IF all fields are validated THEN

    Save the record

    Disable Save button

    Enable Navigation buttons

    Enable Add button

    ELSE

    Renter data

    End IF

    End sub

    Delete button

    On click

    Confirm delete

    IF yes then

    Delete current record

    End IF

    End sub

  • 8/11/2019 system requirements specifications

    92/125

    Edit button

    On click

    Enable certain textboxes

    Disable Edit button

    Disable navigation buttons

    Enable save button

    End sub

    Navigation buttons :

    Last Button

    On click

    IF on last record

    Error message

    Else

    Go to last record

    END IF

    End sub

    First Button

    On click

    IF on First record

  • 8/11/2019 system requirements specifications

    93/125

    Error message

    Else

    Go to First record

    END IF

    End sub

    .Previous Button

    On click

    IF on First record

    Error message

    Else

    Go to Previous record

    END IF

    End sub

    Next Button

    On click

    IF on Last record

    Error message

    Else

    Go to Next record

  • 8/11/2019 system requirements specifications

    94/125

    END IF

    End sub

    Navigation buttons : enabling to go back to Forms Section AND Main Menu.

    Forms Section Button

    On click

    Close Products Form

    Open Main Menu

    End sub

    Main Menu Button

    On click

    Close products Form

    Open Forms Section

    End sub

    Calculate button

    On Click

    Sum the values in the Sub price section

    Add the values of labor and fittings to the sum

    Add 15% vat to the value obtained

  • 8/11/2019 system requirements specifications

    95/125

    Send it in the total cost (textbox)

    End sub

    6.2.1 M ateri als by category

    This form shall be used to generate the Materials by category report. The user shall select the

    category from the combo box (Select Type of Material) and the report shall be generated. The

    Combo box shall get values from a Category Query and not directly from a table.

    The Combo box in the form shall get value from the query below.

    List of type of materials Query

    SELECT: DISTINCT [Type]

    FROM: Materials table

    6.2.9 General Overdue Report

    General Overdue Query (For General overdue Report)

    SELECT: [Client ID], [Surname], [Other name], [Address], [Tel], [Mob], [Overdue]

    FROM: Client table

    WHERE: [Overdue] > 0

    The General Overdue report will be a list of all the clients who owe money displaying their

    details and the amount of money they owe.

  • 8/11/2019 system requirements specifications

    96/125

    6.2.10 Work completed but overdue Query

    SELECT: Client table. [Client ID], Client table. [Surname], Client table. [Other name], Client

    table. [Address], Client table. [Tel], Client table. [Mob], Client table. [Overdue]

    FROM: Client table INNER JOIN Work undertaken table ON Client table. [Client ID] = Work

    undertaken table. [Client ID]

    WHERE: (Client table. [Overdue])>0) AND (Work undertaken table. [Work completed])

    =True) AND (Work undertaken table. [Installation completed])=False)

    The report shall generate the list of the clients whose work have been completed, not yet

    delivered and the client owes money.

    6.2.11 Work deli vered but overdue Query

    SELECT: Client table. [Client ID], Client table. [Surname], Client table. [Other name], Client

    table. [Address], Client table. [Tel], Client table. [Mob], Client table. [Overdue]

    FROM: Client table INNER JOIN Work undertaken table ON Client table. [Client ID] = Work

    undertaken table. [Client ID]

    WHERE: (Client table. [Overdue])>0) AND (Work undertaken table. [Installation completed])

    =True)

    The report shall generate the list of the clients whose work has been delivered and the client

    owes money.

  • 8/11/2019 system requirements specifications

    97/125

    6.2.12 Reorder L ist Query

    SELECT: [Material ID], [Type], [Cross-section (mm)], [Thickness (mm)], [Price], [Quantity in

    stock], [Reorder level]

    FROM: Materials table

    WHERE: [Quantity in stock] < [Reorder level]

    The report shall generate the list of the materials which need to be purchased as the quantity in

    stock has reached the reorder level or below.

    6.2.13 Ur gent work to deli ver Query

    SELECT: [Work ID], [Description of product], [Client ID], [Address of delivering the work],

    [Date undertaken], [Date to deliver]

    FROM: Work undertaken table

    WHERE: ( [Date to deliver] < Current Date) AND ([Work completed] =True) AND

    ([Installation completed] =False)

    The report shall generate the list of work which has already been completed, ought to be

    delivered and not yet delivered.

  • 8/11/2019 system requirements specifications

    98/125

    6.2.14 Work to deli ver Qu ery

    SELECT: [Work ID], [Client ID], [Description of product], [Address of delivering the work],

    [Date undertaken], [Date to deliver]

    FROM: Work undertaken table

    WHERE: ( [Date to deliver]>Current Date) AND ([Work completed] =True) AND ([Installation

    completed] =False)

    The report shall generate the list of work which has already been completed, has to be delivered

    and not yet delivered.

    6.2.15 Work not completed before deadli ne Query

    SELECT: [Work ID], [Description of product], [Client ID], [Address of delivering the work],

    [Date undertaken], [Date to deliver]

    FROM: Work undertaken table

    WHERE: ( [Date to deliver])

  • 8/11/2019 system requirements specifications

    99/125

    6.2.16 Pur chase Query

    SELECT: Purchase table. [Purchase ID], Purchase table. [Date], Purchase table. [Supplier ID],

    [Purchase Line table]. [Material ID], [Purchase Line table]. [Quantity], [Purchase Line table].

    [Sub price], Purchase table. [Total cost], [Start Date] AS Expression1, [End Date] ASExpression2

    FROM: Purchase table INNER JOIN [Purchase line table] ON (Purchase table. [Purchase ID]) =

    ([Purchase line table]. [Purchase ID])

    WHERE: ([Start Date] < [Date]) AND ([End Date] > [Date])

    The report generates the list of purchases between two dates which shall be entered by the user.

    6.2.17 M ateri als by Category Query

    SELECT: [Material ID], [Price], [Type], [Cross-section (mm)], [Thickness (mm)], [Quantity in

    stock], [Reorder level]

    FROM: Materials table

    WHERE: [Type] = [Form Materials by Category]. [Combo box Type]

    This report shall generate the list of materials of specific type (category). The user shall select a

    category from the combo box in the materials by category form and the report will be generated.

    The title of the report shall change each time depending on the Category selected.

  • 8/11/2019 system requirements specifications

    100/125

  • 8/11/2019 system requirements specifications

    101/125

    7.1 Black Box Testing with Test case designTest

    No:

    Test (Item to be tested) Input type Expected result Actual

    result

    1 Welcome form Normal After being opened the Welcome shall

    close after 3 seconds and login formshall open

    2 Select a user and enter the

    correct password. Then

    click on the login button.

    Normal Display a message indicating that

    correct password has been entered,

    close login form and open Main Menu

    form.

    3 Select a user and enter an

    incorrect password. Then

    click on the login button.

    Abnormal Display error message indicating that

    incorrect password has been entered

    and give the user 2 more chances toenter password.

    4 Enter the password

    correctly but in the

    different case.

    Abnormal Display error message indicating that

    incorrect password has been entered

    and give the user 2 more chances to

    enter password.

    5 Login as manager in the

    system.

    Normal When on Forms section form the

    command button Users leading to the

    users form shall be visible.6 Login other than as

    manager in the system.

    Normal When on Forms section form the

    command button Users leading to the

    users form shall be hidden.

    7 Click on the reports

    section command button

    on the Main Menu form.

    Normal Close Main Menu form and open

    Reports section form.

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    8 On Reports Section form

    click on Work delivered

    command button under the

    Normal Generate report of the Clients for

    whom the work has been delivered

    but owe money.

  • 8/11/2019 system requirements specifications

    102/125

    overdue heading.

    9 On Reports Section form

    click on the Urgent

    command button under the

    deliveries heading.

    Normal Generate the report of the Work that

    have already been completed and

    which ought to be delivered earlier.

    10 On Reports Section form

    click on command button

    Purchase, enter two dates

    between which purchases

    are required.

    Normal Generate the report of the list of

    purchases that had been made

    between the dates input

    11 On Reports Section Click

    on Materials by Category

    command button. Select a

    type of material from the

    list box on the form that

    will be opened.

    Normal Generate the report of a list of the

    type of materials selected.

    12 On load of a form that

    displays data.

    Normal Lock all the text boxes and disable the

    Save button

    13 Click on the Add button in

    a form.

    Normal Clear all text boxes to allow input of

    data, enable the Save button, disable

    the Add, Edit and Delete button.

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    14 Click on the Edit button in a form. Normal Unlock the text boxes and

    (OR) combo boxes to allow

    modification of data, enable

    the Save button, disable the

    Add, Edit and Delete button.

    15 Click on the Save command button

    on a form.

    Normal Save the current record,

    Disable the save button,

    enable the Add, Edit and

    Delete buttons

    16 Adding a record in a file whose Normal Save the new record in the

  • 8/11/2019 system requirements specifications

    103/125

    data is displayed on a single form.

    Click the add button on the form.

    Fill all normal data in the fields.

    Click on save.

    file

    17 Editing a record in a file whose

    data is displayed on a single form.

    Go to the respective form. Click

    on the Edit button. Modify the

    required field(s). Click on Save.

    Normal Save the record in the file

    with the modification

    18 Deleting a record in a file whose

    data is displayed on a single form.

    Go to the respective form. Click

    on the Delete button. Then

    confirm delete.

    Normal Delete the current record

    from the file

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    19 Adding a record in a file whose

    data is displayed on a form which

    has a sub form. Click the add

    button on the form. Fill all

    normal data in the fields. Click

    on save.

    Normal Save the new record in the

    file of the main form and

    save other records of the sub

    form in the file for the sub

    form

    20 Editing a record in a file whose

    data is displayed on a form which

    has a sub form. Go to the

    respective form. Click on the

    Edit button. Modify the required

    field(s). Click on Save.

    Normal Save the new record in the

    file of the main form and

    save other records of the sub

    form in the file for the sub

    form with the modification

    21 Deleting a record in a file whose

    data is displayed on a form which

    has a sub form. Go to the

    respective form. Click on the

    Delete button. Then confirm

    Normal Delete the current record of

    the main form from its file

    and also delete the records in

    the sub form from the file of

    the sub form.

  • 8/11/2019 system requirements specifications

    104/125

    delete.

    22 Click on the Next Command

    button on a form that displays

    data from a file (table).

    Normal Go to the next record.

    23 Click on the Previous Command

    button on a form that displays

    data from a file (table).

    Normal Go to the previous record.

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    24 Click on the First Command

    button on a form that displays

    data from a file (table).

    Normal Go to the first record.

    25 Click on the Last Command

    button on a form that displays

    data from a file (table).

    Normal Go to the last record.

    26 Click on the Next Command

    when on the last record.

    Abnormal Display error message that

    cannot go to that record.

    Remain on the current

    record.

    27 Click on the Previous Command

    button when on the first

    Abnormal Display error message that

    cannot go to that record.

    Remain on the current

    record.

    28 Search a record on a form. Click

    on the search combo box and

    select the required record.

    Normal Go to the selected record.

    29 Enter a non-duplicate (correct)

    value in a primary key field.

    Normal Accept the value entered in

    the field.

    30 Enter a duplicate value in a

    primary key field.

    Abnormal Display error message

    indicating that the key field

    cannot contain a duplicate

    value.

  • 8/11/2019 system requirements specifications

    105/125

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    Result

    31 While entering data in a form

    leave a field having presence

    check unfilled.

    Abnormal Indicate the user that it is

    compulsory to enter data in

    that field.

    32 Input the ID (key field) in the

    correct format e.g. an ID thatshould begin with W followed

    by 3 digits

    Normal Accept the data entered in the

    field.

    33 Input the ID (key field) in the

    incorrect format e.g. an ID that

    should begin with W followed

    by 3 digits is entered starting with

    digits or another letter.

    Abnormal Display error message

    indicating the user that the ID

    is not in the correct format.

    34 Click on an unfilled field whichhas a default value while adding a

    record.

    Normal Display the default value inthe field.

    35 Enter the price on the Materials

    form with the appropriate data

    type.

    Normal Accept the data.

    36 Enter the price on the Materials

    form with the inappropriate data

    type.

    Abnormal Do not accept the data and

    indicate an error message.

    37 Enter an appropriate reorder level

    (Correct range and data type) in

    the field reorder level on the

    Materials form.

    Normal Accept the data.

    Test Test (Item to be tested) Type Expected result Actual

  • 8/11/2019 system requirements specifications

    106/125

    No: Result

    38 Enter an inappropriate reorder

    level (incorrect range) in the field

    reorder level on the Materials

    form.

    Abnormal Do not accept the data and

    display error message indicating

    that the data is not within the

    required range.

    39 Enter the minimum value for the

    Quantity in stock field on the

    materials form.

    Extreme Accept the data.

    40 Enter an inappropriate reorder

    level (incorrect data types i.e.

    contain a character apart from

    digits) in the field reorder level on

    the Materials form.

    Abnormal Do not accept the data and error

    message shall be displayed

    indicating that the data in the

    field is of the inappropriate data

    type.

    41 Enter correctly in the appropriate

    data type the Surname of a

    Supplier on the supplier form.

    Normal Accept the data.

    42 Enter the Surname of the supplier

    with the inappropriate data type

    (digits perhaps).

    Abnormal Do not accept the data and

    display error message indicating

    that the field has data of

    inappropriate type.

    43 Enter the Company Name of a

    supplier on the Supplier form with

    the maximum letters allowed.

    Extreme Accept

    44 Enter the Company name of the

    Supplier with more letters than

    allowed.

    Abnormal Do not accept the data.

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    45 Enter the Telephone number of a

    supplier in the correct way (i.e.

    with seven digits)

    Normal Accept the data.

    46 Enter the Telephone number of a

    supplier in the incorrect way (i.e.

    Abnormal Do not accept the data and

    display error message.

  • 8/11/2019 system requirements specifications

    107/125

    with letters)

    47 Enter the Correct Date to deliver on

    the Work undertaken section in the

    work form which shall be greater

    than the date undertaken.

    Normal Accept the data.

    48 Enter the inappropriate Date to

    deliver on the Work undertaken

    section in the work form which

    shall be less than the date

    undertaken.

    Abnormal Do not accept the date, clear

    the text box and display an

    error message which indicates

    that the date to deliver shall be

    greater than the Date

    undertaken.

    49 Click on the Client ID combo box

    on the payment form.

    Normal Display the Client ID of

    clients who owe money.

  • 8/11/2019 system requirements specifications

    108/125

    Test

    No:

    Test (Item to be tested) Type Expected result Actual

    result

    50 While doing the payment feed, all

    the normal data to calculate the new

    overdue and past overdue of the

    Client.

    Normal The Overdue before the

    payment shall become the Past

    Due and the new Overdue will

    become the Difference

    between the Previous overdue

    and the amount paid

    51 Select a user ID, enter the correct

    Old password, and enter the New

    password and the Confirmation

    password correctly on the change

    password form.

    Normal Accept the old password,

    display appropriate message to

    enter new password, accept the

    confirmation password and

    save it in the users table.

    52 Select a User ID, enter wrong old

    password.

    Abnormal Do not accept the old password

    and display error message.

    53 Select a User ID, correct wrong old

    password but enter the wrong

    confirmation password

    Abnormal Do not accept the new

    password, display error

    message.

    54 Click on Backup button on Main

    Menu

    Normal Open Nero 8 program.

    55 Click on Help button on Main

    Menu

    Normal Open a word document for

    help

  • 8/11/2019 system requirements specifications

    109/125

    7.2 White Box Testing

    LOGIN

    CYCLOMATIC COMPLEXITY = E N+2

    =4-4+2

    =2

    INDEPENDENT PATH: 1)1 2 3

    2) 1 2 4 3

    24

    3

    1

  • 8/11/2019 system requirements specifications

    110/125

    Recording a Purchase

    5

    4

    3

    2

    1

  • 8/11/2019 system requirements specifications

    111/125

    CYCLOMATIC COMPLEXITY = E N+2

    =5-5+2

    =2

    INDEPENDENT PATH: 1) 1 2 3 4 5

    2) 1 3 4 5

    Recording a new Work

    1

    2

    3

    4

    5

    6

  • 8/11/2019 system requirements specifications

    112/125

    CYCLOMATIC COMPLEXITY = E N+2

    =6-6+2

    =2

    INDEPENDENT PATH: 1) 1 2 3 4 5 6

    2) 1 3 4 5 6

    Adding a new record in a file

    1

    4

    3

    2

  • 8/11/2019 system requirements specifications

    113/125

    CYCLOMATIC COMPLEXITY = E N+2

    =4-4+2