system requirements specifications
-
Upload
rukh-lallmahomed -
Category
Documents
-
view
222 -
download
0
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