You are on page 1of 57

Warehouse Application

Software Requirement Specifications (SRS)

Warehouse Application Corresponding to


the Needs of Piquage MC

by

Emil Vassev

July 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Table of content

1. Introduction...............................................................................................4
1.1. Purpose ................................................................................................................. 4
1.2. Scope ..................................................................................................................... 4
1.3. References....................................................................................................... 5
1.4. Overview .............................................................................................................. 6
2. Overall description....................................................................................6
2.1. Product perspective............................................................................................ 6
2.1.1. System interfaces ................................................................................... 7
2.1.2. Memory constraints ............................................................................... 7
2.1.3. Operations ................................................................................................ 7
2.1.4. Site adaptation requirements ............................................................... 7
2.2. Product functions ............................................................................................... 7
2.3. User characteristics ............................................................................................ 9
2.4. Constraints ........................................................................................................... 9
2.5. Assumptions and dependencies ...................................................................... 9
3. Specific requirements ...............................................................................9
3.1. External Interface Requirements .................................................................... 9
3.1.4. PMCWA Input ........................................................................................ 9
3.1.2. PMCWA Output ................................................................................... 13
3.1.2. User Interfaces ...................................................................................... 17
3.1.4. Hardware Interfaces............................................................................. 21
3.1.5. Sofwtare Intefraces .............................................................................. 21
3.1.6. Communication Interface ................................................................... 22
3.2. Software Product Features ......................................................................... 22
3.2.1. Use case 1 - Login................................................................................ 23
3.2.2. Use case 2 – Send an e-mail .............................................................. 24
3.2.3. Use case 3 – Send a fax ...................................................................... 26
3.2.4. Use case 4 – Start new instance........................................................ 27
3.2.5. Use case 5 – Application file “Global Variables” ....................... 29
3.2.6. Use case 6 – Application file “Piquage MC” ................................ 30
3.2.7. Use case 7 – Application file “Client” ............................................ 32
3.2.8. Use case 8 – Application file “Supplier” – “Fournisseur” ........ 34
3.2.9. Use case 9 – Application file “Price list” – “List de prix” ........ 36
3.2.10. Use case 10 – Application file “Inventory” – “Inventaire” ... 38
3.2.11. Use case 11 – Application file “Transport” ............................... 40
3.2.12. Use case 12 – Production order – “Bon de production”......... 42
3.2.13. Use case 13 – Stock order – “Bon d’achat” .............................. 45

2
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.14. Use case 14 – Reports – “Rapports” ........................................... 48


3.2.15. Global Collaboration Diagram...................................................... 51
3.2.16. Class Diagram ................................................................................... 51
3.3. Performance Requirements............................................................................ 51
3.3.1. Static Requirements ............................................................................. 51
3.3.2. Dynamic Requirements ...................................................................... 51
3.4. Design Constraints ........................................................................................... 51
3.5. Software System Attributes ........................................................................... 52
3.5.1. Reliability ............................................................................................... 52
3.5.2. Availability ............................................................................................ 52
3.5.3. Security ................................................................................................... 52
3.5.4. Maintainability ...................................................................................... 52
3.5.5. Portability ............................................................................................... 53
3.6. Logical Database Requirements ................................................................... 53
3.7. Other Requirements ......................................................................................... 53
4. Definitions, Acronyms, Abbreviations...................................................54
Appendix 1. Bon de Production ...................................................................56
Appendix 2. Bon d’Achat.............................................................................57

3
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

1. Introduction

This document expresses all the requirements and specifications about the Warehouse
Application Corresponding to the Needs of Piquage MC (PMCWA). This document
represents an understanding, between Piquage MC as a client and me Emil Iordanov
Vassev as a provider, of what should be the proposed warehouse application.

1.1. Purpose

Software Requirement Document (SRD) is a product of vast requirements gathering


and deep analysis of what should be the functionalities and features of PMCWA. It has
been created to meet and express all the requirements of Piquage MC concerning the
Warehouse Application. This document is a result of an agreement between the Piquage
MC management team, the end users of the system and the developer. Its goal is to
describe how the system is going to operate and meet all the requirements.
Finally, SRD is required to be a complete answer to all the queries from the end users
of the system and Piquage MC management team.

1.2. Scope

Piquage MC wishes to purchase a Warehouse System to manage all the aspects of


maintaining its production process. By having a Warehouse System of their own,
Piquage MC will increase the quality and benefits of their business.
The software will expose to the users features to:
• Proceed with a production order -“Bon de production”;
• Proceed with a stock purchase order - “Bon d’achat”;
• Enter and change client information;
• Enter and change supplier information;
• Enter and change transport information;
• Maintain stock inventory;
• Maintain the price list – specific for each client or supplier;
• Produce all kind of desired reports – based on production, clients, suppliers,
stock items, etc.

The system will allow only authorized access, but there will be no different privilege
level of access. The Warehouse System will have quick help, which will be permanently
active and will respond to any incorrect input or action from the user site. The system
will protect the information from unauthorized access.

4
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

1.3. References

[1] “Software Engineering – theory and practice” second edition, Editorial Director:
Marcia J. Horton, 2001

[2] “SRD Documentation Standard” – IEEE Std 830-1998

[3] “Course materials – COMP 6481 Software Requirements Specifications” - Peter


Forbrig, May 2003

[4] “Web based Graduate Registration System - Software Requirements Specifications”


- Vassev Emil, Liu Zhi Ning December 2002

[5] “Electronic CD Shop Web Application - Software Requirements Specifications” -


Vassev Emil, Kabbany Nizar, May 2003

5
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

1.4. Overview

The following sections of SRD are detailed descriptions of all the requirements to be
implemented in the Piquage MC Warehouse Application (PMCWA). Requirements
specification is organized in two major sections – Overall descriptions and Specific
requirements. The first section describes the general factors that affect the product and its
requirements. This section does not state specific requirements. Instead, it provides a
background for those requirements, which are defined in detail in Section 3 of the SRD.
This section of the SRS contains all of the software requirements to a level of detail
sufficient to enable designers to design a system to satisfy those requirements, and testers
to test that the system satisfies those requirements.

2. Overall description

PMCWA will work on different clients work stations and server machine. It will be
accessible trough user identification. No differing privilege levels are going to be
implemented. It provides a number of interdependent tasks. Some of them relate to the
production order proceeding, purchase order proceeding, getting detailed information
about a specific client or supplier. The inventory maintenance will be performed by the
system as well.

2.1. Product perspective

The Piquage MC Warehouse Application will be an independent piece of software


that runs on its own resources. The access point to PMCWA will be represented as a
shortcut in Start>>Programs>>PiqMC menu group. The application will be installed on
the client workstation machines and the database on the server machine. The PMCWA
database will contain all the information necessary for all the PMCWA modules and can
be accessed by the appropriate modules as well as new and yet-to-be-developed sub-
systems.

Fax application

PMCWA Internet / E-mail

MS SQL Server 7.0

Fig. 2.1.1. A block diagram showing the major participants in the product perspective.

6
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

2.1.1. System interfaces

The software system is a stand-alone system that functions independently of other


software systems except in case of sending a fax or e-mail. In the latter cases, the
software system has to interact with a third party software interface, which is responsible
for fax or e-mail sending.

2.1.2. Memory constraints

The only constraint is to have enough memory to run the client application on the
client machines and the MS SQL Server on the server machine.

2.1.3. Operations

None.

2.1.4. Site adaptation requirements

None.

2.2. Product functions

The Piquage MC Warehouse Application will implement the following functions:


• Maintain the private company’s information;
• Maintain the client files – search, add, delete and update;
• Maintain the supplier files – search, add, delete and update;
• Maintain the inventory – search, add, delete and update;
• Maintain the price list for each client/supplier;
• Maintain the transport files – search, add, delete and update;-
• Maintain the production process – “Bond de production“, tickets, “Mémo
d’expédition”;
• Maintain the receiving process – “Bon d’achat”;
• Perform different reports based on:
o Clients;
o Suppliers;
o Inventory;
o “Bond de production“;
o “Bon d’achat”;
o Transport;
o Complex, including statistics elements – for a year, month or defined period.

7
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Bon de Fiche de Bon de production Inventaire Bon d’achat Fiche de


commande client fournisseur
du client

Etiquette
Etiquette
Fiche de
List de prix; Etiquette Correction de inventaire List de prix
Calcul de prix l’inventaire du fournisseur

Mémo
d’expédition
Mémo
d’expédition
Mémo
d’expédition

Fig. 2.2.1. PMCWA functions - transition diagram and relationships.

8
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

2.3. User characteristics

The PMCWA’ users shall be allowed to operate with the system by using the mouse
and the keyboard. Since the users are expected to have already used computers and the
MS Windows, basic computer and windows graphical user interface knowledge is
expected. The users are expected to have basic knowledge of how to run the OS and
PMCWA.

2.4. Constraints

To allow further growth of PMCWA, it shall be developed in Delphi6 Enterprise and


SQL Server 2000, which are well known development technologies released by Borland
and Microsoft. The system will be developed for the purpose of client-server
implementation. Due to this environment, there are security requirements that must be
satisfied.

2.5. Assumptions and dependencies

It is assumed users of PMCWA to have a functional computer with 128M memory


resources, running on an operating system Windows 98-OSR2/Me or Windows 2000/XP,
which allows server connection via TCP/IP protocol. It also assumes that the user has
software for sending Faxes and e-mails.

3. Specific requirements

3.1. External Interface Requirements


The external interface requirements provide a description of all inputs and outputs
associated with the ECDSH system.

3.1.4. PMCWA Input

3.1.1.1. Piquage MC File

The user fills up the Piquage MC file to enter all the necessary information
concerning the company - address, phone, fax, e-mail and web site. This file should be
filled up only ones, unless there are no further changes, concerning the Piquage MC
company info.

9
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.1.2. Client File


The Client files keep the information concerning the clients – address, phone, fax,
phone, credit limit, terms of payment (see Table 3.1.1.2.1). These files are used by “Bon
de production”, price list files, “Memo d’expédition” and inventory.

Issues:
• Numéro du client – unique number, generated by the system.
• Note de production – simple comment.
• The clients could be suppliers as well.

Numéro du client Transport


Nom de la compagnie Notes sur le client – for internal use only
Adresse Téléphone
Ville Tel. Ext.
Province Fax
Pays Termes de paiement
Code postal Limite de crédit
Zip code Langue
Personne Contact #1 Prix en CAD/USD
Personne Contact #2 Note de production
Nom du Vendeur

Table 3.1.1.2.1 Client/Supplier characteristics

3.1.1.3. Supplier File


The Client files keep the information concerning the supplier – address, phone, fax,
phone, credit limit, terms of payment (see Table 3.1.1.2.1). These files are used by “Bon
d’achat”, price list files and inventory.

Issues:
• The suppliers could be clients as well.

3.1.1.4. Inventory File


The Inventory file assures direct access to the inventory data (see Table 3.1.1.4.1.).
The users use this file to enter new inventory items. Also the inventory file allows the
quantities to be changed manually – in case we have differences between the real quantity
and the one registered in the system. All the quantity changes, done manually, should be
kept by the system for further reports.

10
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Issues:
• Qts min – required minimum quantity in stock. This feature is not mandatory for
all the inventory items. The ones, which have it, are checked by the system for the
available quantity to be greater or equal to the required minimum quantity in
stock. If not, the system notifies the user with a message.
• Comm. Client – is the quantity required to finish all the orders.
• En commande – the quantity that has been ordered;
• Reçu – the quantity that has been received;
• B/O – back order quantity. The difference between En commande and Reçu. B/O
= En commande - Reçu
• Invent. Début – the initial quantity before ordering new one.
• Disponible – the available quantity after all finishing all the orders:
Disponible = Reçu + Invent. Début – Comm. client

Description Comm. client


Mesure En commande
Qts min – min quantity Reçu
Produit B/O
Disponible Invent. Début

Table 3.1.1.4.1 Inventory characteristics

3.1.1.5. Price list File


A Price list file defines the prices used by Piquage MC in the trade process with the
different clients and suppliers. It is a specific for each client or supplier and includes all
the items have been or going to be used so far by a client (see Table 3.1.1.5.1). The user
should be able to add and remove items from the client’s price list.

Issues:
• The price list file mainly consists of two parts:
o One for the customer.
o One for internal use only.
• The price list has two print versions:
o Client version – includes Date, Client, Critérium (Moins de 200 mts)
Patron, Points/Po, PLI#1, PLI#2, PLI#3, PLI#4, PLI#5, PLI#6,
Bobines SP, Largeur, Petit Qts and Prix. The different price columns,
Contant, Profit and Vendu, are not included in this print version.
o Piquage MC version – includes all the information within a Price list
file.
• Petite Qts – a special value used for distinguishing the big-quantity orders from
the small ones. This value depends on the order amount (the client’s order):
o If it is less than 200 m it will be added as an extra cost;

11
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

o If it is more than 200 m it will be omitted.


• Petit Qts should be a global value – unique one for all the price lists. The user
should be able to change it globally.
• The criterion for a big –quantity order (200 m) should be defined globally too.
This criterion specifies the system to use or not the Petit Qts in calculating the
price list.
• Machine – this value is specific for each client

Date Largeur
Client Petit Qts
Critérium (Moins de 200 mts) % Profit
Patron Extra
Points/Po Machine
PLI#1 Prix
PLI#2 Different price columns for Patron,
PLI#3 Points/Po, PLI#1, PLI#2, PLI#3, PLI#4,
PLI#4 PLI#5, PLI#6, Bobines SP:
PLI#5 Contant
PLI#6 Profit
Bobines SP Vendu

Table 3.1.1.5.1 Price List File characteristics

3.1.1.6. Transport File


The Transport File defines all the transport companies used by Piquage MC (see
Table 3.1.1.6.1). These companies are sort of company’s clients but differentiate from
the regular client in their business – they offer transport services to Piquage MC. These
files are used by “Memo d’expédition” and “Bon d’achat”.

Numéro du transport Code postal


Nom de la compagnie Personne Contact #1
Adresse Personne Contact #2
Ville Téléphone
Province Tel. Ext.
Pays Fax

Table 3.1.1.6.1 Transport file characteristics

3.1.1.7. Global Variables File


The Global Variables File defines all the common values used by PMCWA.

12
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Issues:
• Petit Qts - a special value used for distinguishing the big-quantity orders from the
small ones (see Price List File).
• The criterion for a big –quantity order (200 m). This criterion specifies the system
to use or not the Petit Qts in calculating the price lists (see Price List File).

3.1.2. PMCWA Output

3.1.2.1. Production Order – “Bon de Production”

A Production order is the application variant of a client order. Each order submitted
by a client has its Production order correspondent (see Appendix 1). When a client order
is received, the user enters the information from the sent order into the system, and
creates a Production order -“Bond de production” in an electronic format. The Production
order is a standardized description of what should be done to carry out the Client order.
It’s standardized because the client and all the inventory items, enlisted within this order,
are registered in the system. The Production order affects the inventory.

Issues:
• The system enlists inventory items in a grid.
• The user is able to change all the possible values within the grid. There are values,
which appears by default. When an ordered item is too big to be shipped as a
single piece it is divided on smaller pieces (shorter, lighter or with less
dimensions). All the divided pieces are presented as a single item into the
production order -“Bond de production”. All the item’s pieces have a unique
number (#piece), despite of the fact some of them are part of one whole (tissue or
cloth roll etc.).
• Some raw materials (in particular inventory items), necessary to complete the
Production order, could be supplied by the customer.
• Within the “Bond de production” PLI#1, PLI#2 … are different layers from the
same article to be produced (dessus, ouate, support). Each layer has its own code.
If it is supplied by the client, the code should have a prefix c-. This signs the layer
is supplied by the client, and does not have to be ordered.
Example: c-DEVILLE - supplied by the client;
DEVILLE – supplied by Piquage MC.
• Each “Bond de production” has a unique registration code, which consists of a
number, letter, and number again. The letter changes every year.
Example: 1H020951. – This number is generated by the system (no preferences
about the generation algorithm).
• A “Bon de production“ has a status flag – active or inactive. An active “Bon de
production“ is pending one, waits to be finished. Such a document can be edit. In
the opposite, an inactive “Bon de production“ is finalized one – no additional
changes can be done. Each “Bon de production“ by default is active – the flag is

13
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

set at the time of the document creation. The user can change the status flag
manually when he/she decides to finalize a document, which cannot be finalized
in a regular way (by the system). The system will change the status flag by itself
when a “Bon de production“ is done – all the items are shipped.
• The user should be able to go back and change details within the “Bon de
production“ until all the items are shipped (see “Mémo d’expédition”) or make
the “Bon de production” inactive. These changes will be possible only on the
items, which are not shipped yet.
• The application’s database will be updated twice:
o First after printing “Bon de production“;
o Second after issue of a “Mémo d’expédition”.
• The system prints out a paper format of the production order:
o Original – the first printed copy of the document;
o Smart copy (points to the original in the title) – a next printed copy of the
document.
• The user is should be able to add a new line to the “Bon de production” and print
a copy of the paper (smart copy), and also print a ticket for this added item.

3.1.2.2. Shipping Ticket


After printing “Bon de production”, the system prints automatically a bunch of tickets
– one for each item enlisted in “Bon de production”.

Issues:
• Each ticket has a unique number generated by the system.
• A print of a thicket could be enforced manually by the user from “Bon de
Production” operation.

Nom du client Fil


Numéro de la commande Varia
Patron Numéro de la production
PLI #1 Numéro du ticket
PLI #2 Mètres
PLI #3 Inspection
PLI #4 Opérateur No : Mètres
PLI #5 Opérateur No : Mètres
Largeur

Table 3.1.2.2.1 Shipping ticket characteristics

14
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.2.3. Shipping Order - “Mémo d’Expédition”


For each shipment, concerning a certain “Bon de production” the system issues a
“Mémo d’expédition”. A “Mémo d’expédition” could be issued for each item enlisted in
a “Bon de production”. The document format is the same as the “Bon de production”
(see Appendix 1).

Issues:
• The production from an order -“Bon de production” - could be shipped at a
whole, item by item or as a part (a group of items enlisted together).
• Each “Mémo d’expédition” has a unique number.
• The user cannot change anymore the items’ values within a “Bon de production”
after shipping these items – they have been enlisted in a “Mémo d’expédition”.
• The user should be able to cancel a “Memo d’expédition”. The program will
rollback all the data changed by this “Memo d’expédition”. The cancellation
should be authorized by additional password verification.

3.1.2.4. Stock Order – “Bon d’achat”


The Stock order is an issued by the system document for ordering inventory items.
The Stock order is similar to Production order (see Appendix 2). It affects the inventory.
The Stock order is a standardized description of when and what should be delivered by a
pointed supplier. It’s standardized because the client and all the inventory items, enlisted
within this order, are registered in the system.

Issues:
• The Order sheet has a unique number created by the system.
• The Order sheet (“Bon d’achat“) should have a status flag – active or inactive. An
active “Bon d’achat“ is pending one, waits to be finished. Such a document can be
edit. In the opposite, an inactive “Bon d’achat“ is finalized one – no additional
changes can be done. Each “Bon d’achat“ by default is active – the flag is set at
the time of the document creation. The system will change the status flag by itself
when a “Bon d’achat“ is done – all the items are received. An item is considered
to be received, when its back order (B/O) value is zero or negative.
• The user should be able to change the status flag manually when he/she decides to
finalize a document that cannot be finalized in a regular way (by the system). In
this case, all the positive back order (B/O) values (they correspond to the items
which are pending to be received) will be rollback by the system from the
inventory database.
• The user must go back and change details in the Stock order every time when
stock is received.
• The customer should be able to change some item values – Qts reçu, Date reçu.
These changes will be possible only on the items, which are not received yet
(positive B/O value).

15
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• Every time when stock is received, the user updates the corresponding “Bon
d’achat“. The update is an additional row for a received part from a material
(enlisted as an item within the “Bon d’achat “). The user should update the date
and received quantity for the material. The B/O (back order) will be calculated
automatically by the system.
• In the document the fields Description, Prix appear automatically after entering
Produit. Produit can be enter by typing or by picking up from a list of products.
• The system enters all the necessary info, concerning the supplier automatically.

3.1.2.5. Reports
The Piquage MC Warehouse Application will produce variety of reports. The reports
will be able to be produced from different application points:
File section including Client File, Supplier File, Inventory File, Price List File and
Transport file.
Production Order section.
Stock Order section.
Reports section.
The reports section is a specified section for the following kind of reports:
Client Reports – reports based on client information. These reports will be
specific, for a particular client, and group reports for a group of clients, specified
by common indication. In addition, there will be cross reports “Client – Bon de
Production”, “Client – List de Prix”, “Client-Inventaire” and “Client-Transport”.
Supplier Reports - reports based on supplier information. These reports will be
specific, for a particular client, and group reports for a group of clients, specified
by common indication. In addition, there will be cross reports “Fournisseur – Bon
d’Achat”, “Fournisseur – List de Prix”, “Fournisseur – Inventaire” and
“Fournisseur – Transport”.
Inventory Reports – reports based on inventory information. These reports will be
specific, for a particular item, and group reports for a group of inventory items,
specified by common indication. In addition, there will be cross reports
“Inventaire-Fournisseur“, “Inventaire-Client“, “Inventaire - Bon d’Achat” and
“Inventaire – Bon de Production”.
Production Order – “Bon de Production” – reports based on “Bon de Production”
information. These reports will be specific, for a particular “Bon de Production”,
and group reports for a group of “Bon de Production”, specified by common
indication. In addition, there will be cross reports “Bon de Production - Client”,
“Bon de Production - Memo d’Expédition”, “Bon de Production - Inventaire“ and
“Bon de Production - Transport”.
Stock Order – “Bon d’Achat” – reports based on “Bon d’Achat” information.
These reports will be specific, for a particular “Bon d’Achat”, and group reports
for a group of “Bon d’Achat”, specified by common indication. In addition, there
will be cross reports “Bon d’Achat - Fournisseur”, “Bon d’Achat - Inventaire“
and “Bon d’Achat - Transport”.

16
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Transport – reports based on Transport information. These reports will be


specific, for a particular Transport, and group reports for a group of Transport,
specified by common indication. In addition, there will be cross reports
“Transport - Fournisseur”, “Transport - Client”, “Transport - Bon d’Achat” and
“Transport - Bon de Production”.
General – report based on all the info stored in the PMCWA database.

3.1.2. User Interfaces

The user interface is the mean of communication between the user and the software
system. It has to be simple and easy to use and learn. The Piquage MC Warehouse
Application will use the MMC (Microsoft Management Console) interface. This kind of
interface is characterized by a common Task tree and Single task window. The common
task tree assures direct access to the specific system tasks, which are visualized by the
Single task window (see Figure 3.1.2.1.). A short cut to system help will be accessible at
all the time.

Fig 3.1.2.1 MMC user interface - PMCWA main view

17
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.2.1. Single Task window


The tasks provided by the system will be accessible from the single task window –
just on task’s tree right side. This Single Task window has two major styles.

3.1.2.1.1. “Pick an element” style

The “Pick an element” style provides the user with the possibility to search, find and
pick a specific item - client, supplier, price list, inventory item, transport, production
order and shipping order (see Fig. 3.1.2.1.1.1). The items appear in the window’s grid. In
help the item to be found, there will be different filters and search criterions. For each
selected item, the user will be able to see and/or modify the properties of this item. In
addition, the user will be able to create a new item as well as to print the list of items.
This window style may differentiate in some functionality for the different tasks. The
functionalities described above are common ones – they will be presented in all the tasks,
using such a kind of user interface.

Fig. 3.1.2.1.1.1. “Pick an element” style

18
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.2.1.2. “Enter values” style

The “Enter values” style provides the user with possibility to enter, modify and save
the information (see Fig. 3.1.2.1.2.1). This kind of task window is useful for tasks, which
will be performed on common (global) items – items that are global for the application
and are used by all the tasks. Examples for such a kind of tasks are Piquage MC File and
Global Variables File.

Fig. 3.1.2.1.2.1. “Enter values” style

3.1.2.2. New/ Properties window


The window New/Properties is a user dialog window, where the user is able to enter
information, save the changes, search for information and print it (see Fig. 3.1.2.2.1).
This kind of interface will be used for the item’s properties. An item could be a client,
supplier, price list, inventory item, transport, production order and shipping order. The
New/Properties window has an explanation banner, which helps in understanding the
purpose of the window. This window style may differentiate in some functionality for the
different tasks. The functionalities described above are common ones – they will be
presented in all the tasks, using such a kind of user interface.

19
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Fig. 3.1.2.2.1. New/Properties window

3.1.2.3. User Dialog window

The User Dialog window is a standard dialog for short-time user interaction with the
application (see Fig. 3.1.2.3.1). It has an explanation banner, which helps in
understanding the purpose of the window. Its purpose is to prompt the user about the
necessary interaction and provide the system with the user respond.

Fig. 3.1.2.3.1. User Dialog window

20
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.2.4. Notification window


The Notification window is used by the application to show all the messages
corresponding to a specific situation (see Fig. 3.1.2.4.1). This kind of window is used
every time when the system notifies the user for a special circumstance. This window is a
modal and stops the program execution until the user closes the window.

Fig. 3.1.2.4.1. Notification window

3.1.4. Hardware Interfaces

The transportation protocol used and supported by the system should be TCP/IP.

3.1.5. Sofwtare Intefraces

• Windows 95/98/Me – the PMCWA - client should be able to work on all the
Win32 OS platform;
• Windows 2000 – the PMCWA – server will work on Windows 2000/2003 OS
platform;
• SQL Server 7.0 or 2000 – the PMCWA will implement its database on SQL
Server 7.0 or higher.
• Internet Explorer 5.5 or higher – used for online PMCWA help system and e-mail
service. The PMCWA help system is based on HTML.
• WinFax – the PMCWA will use WinFax for its fax sending service;

21
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.1.6. Communication Interface

The communication interface supported by PMCWA is the Client-Server interface.

3.2. Software Product Features

The PMCWA system will provide the users with the following functionalities:
• Login to the system;
• Maintain the application files – Global Variables, Piquage MC, Client, Supplier,
Inventory, Price List and Transport;
• Maintain the Production Order - “Bon de Production”;
• Maintain the Stock Order – “Bon d’achat”;
• Create reports based on client, supplier, inventory, production order, stock order,
transport and cross-reference reports;
• Send an e-mail;
• Send a fax;
• Start new instance of the application;

Global vars
Piquage MC

Client

Production order
Application files Supplier

Send e-mail Price list

Inventory
Transport

Login Stock order

Client
User
Supplier

Inventory
Send fax

Reports Production order


Start new Instance

Stock order

Transport
General

Fig. 3.2.1. PMCWA Use Case Diagram

22
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.1. Use case 1 - Login

3.2.1.1. Purpose
This feature allows the user to login to the system (application) by entering its user ID
and password.

3.2.1.2. Role
Performs login to the system operation.

3.2.1.3. Base Scenario

• The user chooses to login and pick “Connecter” from the “Système” menu.
• The modal login window appears.
• The user fills in the fields “Nom de utilisateur” and “Mot de passé”. The fields
“Nom de serveur” and “Nom de base de données” will appear filled in.
• The user clicks chooses one of the following options:
o Click on the button “Connecter” to proceed with the login;
o Click on the button “Annuler” to cancel the login;

3.2.1.4. Failure Scenario


In case of failure of the base scenario, the user will be notified by the system for the
error. A modal window will be shown on the screen with a help system and possible
resolves of the problem. The failure scenario might happen because of at least one failure
condition.

3.2.1.5. Failure conditions

• Wrongly typed user ID - “Nom de utilisateur”;


• Wrongly typed password - “Mot de passé”;
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;
• No enough hardware resources – disk space, memory - on the user’s machine to
perform the login;
• Logical or syntax error in case of incorrect application logic;

23
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.1.6. Interaction Diagram for the base scenario


The following interaction diagram consists of a sequence diagram that shows the
interactions between objects arranged in a time sequence. Each object has its timeline
(lifeline) represented by a vertical line below the object (See Fig. 3.2.1.6.1.).

PMCWA main
Login window Database
window

:User
Time
access

login
Call "Login window"

display
Enter user ID

Enter password

Press "Connecter"
sumbit

verify
return
Grant access

Fig. 3.2.1.6.1. Sequence Diagram - Login

3.2.2. Use case 2 – Send an e-mail

3.2.2.1. Purpose
This feature allows the user to send an e-mail by using the application’s facilities.

3.2.2.2. Role
Send an e-mail over the Internet.

24
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.2.3. Base Scenario

• The user enters into the PMCWA’s main window.


• The user chooses the menu’s option to send an e-mail - “Envoyer un message”.
• The application opens the e-mail tool, which is by default for the operating
system. Such a tool could be “Microsoft Outlook”.

3.2.2.4. Failure Scenario


The same as 3.2.1.4.

3.2.2.5. Failure conditions

• The e-mail option from the menu line remains not picked;
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the e-mail tool;
• There is no e-mail tool installed on the user’s machine;
• Logical or syntax error in case of incorrect application logic;

3.2.2.6. Interaction Diagram for the base scenario

PMCWA main
E-mail tool
window

:User
Time
access

Pick "Send e-mail"


Call e-mail tool

display
Send e-mail

Close the E-mail tool

Fig. 3.2.2.6.1. Sequence Diagram – Send an e-mail

25
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.3. Use case 3 – Send a fax

3.2.3.1. Purpose
This feature allows the user to send a fax by using the application’s facilities.

3.2.3.2. Role
Send a fax by using the dual-up modem, installed on the user’s machine.

3.2.3.3. Base Scenario

• The user enters into the PMCWA’s main window.


• The user chooses the menu’s option to send a fax - “Envoyer une télécopie”.
• The application opens the fax tool, which is by default for the operating system.
Such a tool could be “WinFax” or “Fax talk communicator”.

3.2.3.4. Failure Scenario


The same as 3.2.1.4.

3.2.3.5 Failure conditions

• The fax option from the menu line remains not picked;
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the fax tool;
• There is no fax tool installed on the user’s machine;
• Logical or syntax error in case of incorrect application logic;

3.2.3.6. Interaction Diagram for the base scenario

26
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

PMCWA main
Fax tool
window

:User
Time
access

Pick "Send fax"


Call fax tool

display
Send fax

Close the fax tool

Fig. 3.2.3.6.1. Sequence Diagram – Send a fax

3.2.4. Use case 4 – Start new instance

3.2.4.1. Purpose
This feature offers a possibility to the user to start new application instance. In case
when it is a necessity, the user will start new instance to be able to use simultaneously
application’s options, which otherwise will be accessible in a sequence order.

3.2.4.2. Role
Starts new application instance.

3.2.4.3. Base Scenario

• The user logins into the system.


• The user chooses the menu’s option to start new application instance.
• The application runs new instance.

27
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.4.4. Failure Scenario


The same as 3.2.1.4.

3.2.4.5. Failure conditions

• The new instance option from the menu line remains not picked;
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the application again;
• Logical or syntax error in case of incorrect application logic or source code;

3.2.4.6. Interaction Diagram for the base scenario

PMCWA main
PMCWA
window

:User
Time
access

Login

Pick "New instance" Load PMCWA

display

Fig. 3.2.4.6.1. Sequence Diagram – Start new instance

28
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.5. Use case 5 – Application file “Global Variables”

3.2.5.1. Purpose
This feature offers a possibility to the user to maintain the file “Global Variables”. In
order to use this feature of the PMCWA application, the user should be logged in.

3.2.5.2. Role
Performs create, edit, and delete operations on the application file “Global Variables”.

3.2.5.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Global
Variables” – PicMC>>Fichiers>>Valeurs Globales.
• The user picks the task “Global Variables”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Global Variables” application file.
• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.5.4. Failure Scenario

The same as 3.2.1.4.

3.2.5.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Valeurs Globales“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Global Variables”;
• Logical or syntax error in case of incorrect application logic or source code;
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

29
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.5.6. Interaction Diagram for the base scenario

PMCWA main PMCWA


Database
window Single Task window

:User
Time
access

Login

Browse the task tree

Pick file "Global vars" Load graph. user interface


Load "Global Vars" data

return data verify


display
Edit "Global vars" info

Delete "Global vars" info

Insert "Global vars" info

Press "Save" button Save "Global Vars" data

return Save result verify


display

Fig. 3.2.5.6.1. Sequence Diagram – Application File “Global Variables”

3.2.6. Use case 6 – Application file “Piquage MC”

3.2.6.1. Purpose
This feature offers a possibility to the user to maintain the file “Piquage MC”. In
order to use this feature of the PMCWA application, the user should be logged in.

3.2.6.2. Role
Performs create, edit, and delete operations on the application file “Piquage MC”.

3.2.6.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Piquage MC”:
PicMC>>Fichiers>>Piquage MC
• The user picks the task “Piquage MC”.

30
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Piquage MC” application file.
• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.6.4. Failure Scenario


The same as 3.2.1.4.

3.2.6.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Piquage MC“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Piquage MC”;
• Logical or syntax error in case of incorrect application logic or source code;
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.6.6. Interaction Diagram for the base scenario

PMCWA main PMCWA


Database
window Single Task window

:User
Time
access

Login

Browse the task tree

Pick file "Piquage MC" Load graph. user interface


Load "Piquage MC" data

return data verify


display
Edit "Piquage MC" info

Delete "Piquage MC" info

Insert "Piquage MC" info

Press "Save" button Save "Global Vars" data

return Save result verify


display

Fig. 3.2.6.6.1. Sequence Diagram – Application File “Piquage MC”

31
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.7. Use case 7 – Application file “Client”

3.2.7.1. Purpose
This feature offers a possibility to the user to maintain the file “Client”. In order to
use this feature of the PMCWA application, the user should be logged in.

3.2.7.2. Role
Performs create, edit, and delete operations on the application file “Client”.

3.2.7.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Client”:
PicMC>>Fichiers>>Client
• The user picks the task “Client”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Client” application file.
• The Single Task window shows all the clients in a sorted by name list.
• Scenario A or B.

Scenario A:
o The user enters the search criterion to sift out the list of clients.
o The user picks the client, who he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked client.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
client.

• PMCWA shows the client file’s “New”/”Properties” window.


• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.7.4. Failure Scenario


The same as 3.2.1.4.

32
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.7.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Client“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Client”;
• Logical or syntax error in case of incorrect application logic or source code;
• Impossible client file modification in case of locked for update DB table;
• Impossible client file creation in case of insufficient DB Server resources:
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.7.6. Interaction Diagram for the base scenario

PMCWA Client
PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick file "Client"


Load user interface
Load "List of all clients"

verify
return data
display
Pick a client

Press "Properties" button


Show "Properties" window
Load client file

verify
display return Client data

Edit client file

Press "Save" button Save file

verify
return "Save" result
display

Fig. 3.2.7.6.1. Sequence Diagram – Application File “Client”

33
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.8. Use case 8 – Application file “Supplier” – “Fournisseur”

3.2.8.1. Purpose
This feature offers a possibility to the user to maintain the file “Supplier” –
“Fournisseur”. In order to use this feature of the PMCWA application, the user should be
logged in.

3.2.8.2. Role
Performs create, edit, and delete operations on the application file “Supplier” –
“Fournisseur”.

3.2.8.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Supplier” -
“Fournisseur”- PicMC>>Fichiers>> Fournisseur
• The user picks the task “Supplier” - “Fournisseur”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Supplier” - “Fournisseur” application file.
• The Single Task window shows all the suppliers in a sorted by name list.
• Scenario A or B.

Scenario A:
o The user enters the search criterion to sift out the list of suppliers.
o The user picks the supplier, who he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked supplier.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
supplier.

• PMCWA shows the supplier file’s “New”/”Properties” window.


• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.8.4. Failure Scenario


The same as 3.2.1.4.

34
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.8.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Fournisseur“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Supplier” – “Fournisseur”;
• Logical or syntax error in case of incorrect application logic or source code;
• Impossible supplier file modification in case of locked for update DB table;
• Impossible supplier file creation in case of insufficient DB Server resources:
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.8.6. Interaction Diagram for the base scenario

PMCWA Supplier
PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick file "Supplier"


Load user interface
Load "List of all suppliers"

verify
return data
display
Pick a supplier

Press "Properties" button


Show "Properties" window
Load supplier file

verify
display return supplier data

Edit supplier file

Press "Save" button Save file

verify
return "Save" result
display

Fig. 3.2.8.6.1. Sequence Diagram – Application File “Supplier” – “Fournisseur”

35
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.9. Use case 9 – Application file “Price list” – “List de prix”

3.2.9.1. Purpose
This feature offers a possibility to the user to maintain the file “Price list” – “List de
prix”. To use this feature of the PMCWA application, the user should be logged in.

3.2.9.2. Role
Performs create, edit, and delete operations on the application file “Price list” – “List
de prix”.

3.2.9.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Price list” –
“List de prix”- PicMC>>Fichiers>> List de Prix.
• Scenario A or B:

Scenario A:
o The user picks the task “Price list” for clients – “List de prix>>Clients”.
Scenario B:
o The user picks the task “Price list” for suppliers – “List de prix>>Suppliers”.

• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Price list” – “List de prix” application file.
• The Single Task window shows all the suppliers/clients in a sorted by name list.
• The user enters the search criterion to sift out the list of suppliers/clients.
• The user picks the supplier/client, who he/she has been seeking for.
• The user presses the “Price list” – “List de prix” button to view and edit the
properties of the price list for the picked supplier/client.
• PMCWA shows the supplier/client’s ”Price list” – “List de prix” file window.
• Scenario A or B:

Scenario A:
o PMCWA loads the price list data for the specified supplier/client in case such
a price list exists.
Scenario B:
o PMCWA opens an empty price list in case the specified supplier/client does
not have one.

• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

36
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.9.4. Failure Scenario


The same as 3.2.1.4.

3.2.9.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>List de prix“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Price list” – “List de prix”;
• Logical or syntax error in case of incorrect application logic or source code;
• Impossible price list file modification in case of locked for update DB table;
• Impossible price list file creation in case of insufficient DB Server resources:
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.9.6. Interaction Diagram for the base scenario

PMCWA
PMCWA main Price list
Single Task Database
window window
window
:User
Time
access

Login

Browse task tree

Pick file "Price list"

Pick "Supplier" Load user interface Load "List of all suppliers"

return data verify


display
Pick a supplier

Press "Price list" button


Show "Price list" window
Load price list file

verify
display return data

Edit price list file

Press "Save" button Save file

verify
return "Save" result
display

Fig. 3.2.9.6.1. Sequence Diagram – Application File “Price list” – “List de prix”

37
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.10. Use case 10 – Application file “Inventory” – “Inventaire”

3.2.10.1. Purpose
This feature offers a possibility to the user to maintain the file “Inventory” –
“Inventaire”. In order to use this feature of the PMCWA application, the user should be
logged in.

3.2.10.2. Role
Performs create, edit, and delete operations on the application file “Inventory” –
“Inventaire”.

3.2.10.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Inventory” –
“Inventaire”- PicMC>>Fichiers>> Inventaire.
• The user picks the task “Inventory” – “Inventaire”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Inventory” – “Inventaire” application file.
• The Single Task window shows all the inventory items in a sorted by name list.
• Scenario A or B.

Scenario A:
o The user enters the search criterion to sift out the list of inventory items.
o The user picks the inventory item, which he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked item.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
inventory item.

• PMCWA shows the inventory item file’s “New”/”Properties” window.


• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.10.4. Failure Scenario


The same as 3.2.1.4.

38
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.10.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Inventaire“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Inventory” – “Inventaire”;
• Logical or syntax error in case of incorrect application logic or source code;
• Impossible inventory file modification in case of locked for update DB table;
• Impossible inventory file creation in case of insufficient DB Server resources:
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.10.6. Interaction Diagram for the base scenario

PMCWA Inventory
PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick file "Inventory"


Load user interface
Load "List of all inventory items"

verify
return data
display
Pick an inventory item

Press "Properties" button


Show "Properties" window
Load inventory item file

verify
display return inventory data

Edit inventoryitem file

Press "Save" button Save file

verify
return "Save" result
display

Fig. 3.2.10.6.1. Sequence Diagram – Application File “Inventory” – “Inventaire”

39
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.11. Use case 11 – Application file “Transport”

3.2.11.1. Purpose
This feature offers a possibility to the user to maintain the file “Transport”. In order
to use this feature of the PMCWA application, the user should be logged in.

3.2.11.2. Role
Performs create, edit, and delete operations on the application file “Transport”.

3.2.11.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the Task tree – “List de taches” to find the task “Transport”:
PicMC>>Fichiers>> Transport.
• The user picks the task “Transport”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Transport” application file.
• The Single Task window shows all the transport companies, used by Piquage MC,
in a sorted by name list.
• Scenario A or B.

Scenario A:
o The user enters the search criterion to sift out the list of transport companies.
o The user picks the transport company, which he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked transport company.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
transport company.

• PMCWA shows the transport company file’s “New”/”Properties” window.


• The user inserts, edits and deletes the info in this file.
• The user saves or cancels the modifications done.

3.2.11.4. Failure Scenario


The same as 3.2.1.4.

40
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.11.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Transport“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application file “Transport”;
• Logical or syntax error in case of incorrect application logic or source code;
• Impossible transport file modification in case of locked for update DB table;
• Impossible transport file creation in case of insufficient DB Server resources:
• Inaccessible database in case of maintenance;
• Inaccessible database in case of connection or hardware failure;

3.2.11.6. Interaction Diagram for the base scenario

PMCWA Transport
PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick file "Transport"


Load user interface
Load "List of all transport companies"

verify
return data
display
Pick a transport company

Press "Properties" button


Show "Properties" window
Load transport file

verify
display return transport data

Edit transport file

Press "Save" button Save file

verify
return "Save" result
display

Fig. 3.2.11.6.1. Sequence Diagram – Application File “Transport”

41
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.12. Use case 12 – Production order – “Bon de production”

3.2.12.1. Purpose
This feature offers a possibility to the user to maintain the production order
application task. In order to use this feature of the PMCWA application, the user should
be logged in.

3.2.12.2. Role
Performs create, edit, delete and finalize operations on the production orders.

3.2.12.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the task tree – “List de taches” to find the task “Production
order” – “Bon de production” - PicMC>>Bon de production.
• The user picks the task “Production order” – “Bon de production”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Production order” – “Bon de production” application task.
• The Single Task window shows in a sorted by date list all the production orders,
issued by Piquage MC for the current financial year.
• Scenario A or B:

Scenario A:
o The user enters the search criterion to sift out the list of production orders.
o The user picks the production order, which he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked production order.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
production order.

• PMCWA shows the production order “New”/”Properties” window.


• Scenario A or B:

Scenario A:
o PMCWA loads the production order data and shows it up.
o Scenario A.1 or B.1.

42
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Scenario A.1:
o The user finalizes the production order – makes it “inactive”.
o PMCWA rollback to DB all the unshipped stock records of the production
order.

Scenario B.1:
o The user edits the stock records, which remain not shipped – changes the
shipped value for these records.
o The user press “Shipping” – “Expedition” button.
o PMCWA creates a “Shipping memo” – “Memo d’expédition” for the
stock records to be shipped.
o PMCWA update the database with the stock records to be shipped.
o If there is no more unshipped stock records, PMCWA finalizes the
production order – makes it “inactive”.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new
production order.
o PMCWA loads an empty production order and shows it up.
o PMCWA loads the Piquage MC file into the new empty production order.
o The user presses the button “Choose a client” – “Choisir de client”.
o A modal window appears with a list of all the clients.
o The user picks a client from the list and close the window.
o PMCWA loads the client data into production order.
o The user presses the button “Add inventory item” – “Ajouter d’article”.
o A modal window appears with a list of all the articles.
o The user picks one ore more inventory items from the list and closes the
window.
o PMCWA loads the inventory data into production order.
o The user saves or cancels the modifications done.
o If the user has saved the production order, PMCWA prints out the “Shipping
tickets” – one for each stock record, and the production order.

3.2.12.4. Failure Scenario


The same as 3.2.1.4.

3.2.12.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Bon de production“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application task “Production order” - “Bon de production”.
• Logical or syntax error in case of incorrect application logic or source code.

43
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• Impossible production order modification in case of locked for update DB table.


• Impossible production order creation in case of insufficient DB Server resources.
• Inaccessible database in case of maintenance.
• Inaccessible database in case of connection or hardware failure.

3.2.12.6. Interaction Diagram for the base scenario

PMCWA Production order


PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick "Production order"


Load user interface
Load "List of production orders"

verify
return data
display
Pick a production order

Press "Properties" button


Show "Properties" window
Load production order

verify
display return data

Edit unshipped stock records

Press "Shipping memo" button Update

verify
return "Update" result
display

show up and print out "Shipping memo"

verify for no more unsipped stock records


Finalize production order

verify
display return "Finalize" result

Fig. 3.2.12.6.1. Sequence Diagram – Production order – “Bon de production”

44
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.13. Use case 13 – Stock order – “Bon d’achat”

3.2.13.1. Purpose
This feature offers a possibility to the user to maintain the stock order application
task. In order to use this feature of the PMCWA application, the user should be logged
in.

3.2.13.2. Role
Performs create, edit, delete and finalize operations on the stock orders.

3.2.13.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the task tree – “List de taches” to find the task “Stock order” –
“Bon d’achat” - PicMC>>Bon d’achat.
• The user picks the task “Stock order” – “Bon d’achat”.
• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Stock order” – “Bon d’achat” application task.
• The Single Task window shows in a sorted by date list all the stock orders, issued
by Piquage MC for the current financial year.
• Scenario A or B:

Scenario A:
o The user enters the search criterion to sift out the list of stock orders.
o The user picks the stock order, which he/she has been seeking for.
o The user presses the “Properties” – “Propriétés” button to view and edit the
properties of the picked stock order.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new stock
order.

• PMCWA shows the stock order’s “New”/”Properties” window.


• Scenario A or B:

Scenario A:
o PMCWA loads the stock order data and shows it up.
o Scenario A.1 or B.1.

45
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Scenario A.1:
o The user finalizes the stock order – makes it “inactive”.
o PMCWA rollback to DB all not received stock records of the stock order.
o PMCWA closes the stock order “New”/”Properties” window.

Scenario B.1:
o The user edits the stock records, for the stock has been received – adds
new lines to these stock records and changes the values – “Qts reçu”,
“Date reçue”. The value back-order “B/O” changes automatically.
o PMCWA creates a “Shipping memo” – “Memo d’expédition” for the
stock records to be shipped.
o The user presses button “Save” to save the changes made within this stock
order.
o PMCWA update the database with the stock records have been received.
o If there are no more no received stock records, PMCWA finalizes the
stock order – makes it “inactive”.

Scenario B:
o The user presses the “New” – “Nouveau” button to create and edit a new stock
order.
o PMCWA loads an empty stock order and shows it up.
o PMCWA loads the Piquage MC file into the new empty stock order.
o The user presses the button “Choose a supplier” – “Choisir de fournisseur”.
o A modal window appears with a list of all the suppliers.
o The user picks a supplier from the list and close the window.
o PMCWA loads the client data into stock order.
o The user presses the button “Add inventory item” – “Ajouter d’article”.
o A modal window appears with a list of all the articles.
o The user picks one ore more inventory items from the list and closes the
window.
o PMCWA loads the inventory data into stock order.
o The user saves or cancels the modifications done.
o If the user has saved the stock order, PMCWA prints it out.

3.2.13.4. Failure Scenario


The same as 3.2.1.4.

3.2.13.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Fichiers>>Bon d’achat“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application task “Stock order” - “Bon d’achat”.

46
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• Logical or syntax error in case of incorrect application logic or source code.


• Impossible stock order modification in case of locked for update DB table.
• Impossible stock order creation in case of insufficient DB Server resources.
• Inaccessible database in case of maintenance.
• Inaccessible database in case of connection or hardware failure.

3.2.13.6. Interaction Diagram for the base scenario

PMCWA Stock order


PMCWA main
Single Task New/Properties Database
window
window window
:User
Time
access

Login

Browse task tree

Pick "Stock order"


Load user interface
Load "List of stock orders"

verify
return data
display
Pick a stock order

Press "New" button


Show "New" window
Load empty stock order

verify
display return data

Add supplier Load supplier data

verify
return data
display
Add inventory items Load inventory data

verify
return data
display

Press "Sav e"


Store stock order

verify
display return "Store" result

Fig. 3.2.13.6.1. Sequence Diagram – Stock order – “Bon d’achat”

47
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.14. Use case 14 – Reports – “Rapports”

3.2.14.1. Purpose
This feature offers a possibility to the user to maintain the reports application tasks.
In order to use this feature of the PMCWA application, the user should be logged in.

3.2.14.2. Role
Performs create, visualize and print out operations on the reports application tasks.

3.2.14.3. Base Scenario

• The user enters into PMCWA’s main window.


• The user browses the task tree – “List de taches” to find the task “Reports” –
“Rapports” - PicMC>>Rapport.
• Scenario A or B or C or D or E or F or G:

Scenario A:
o The user picks the task “Reports” on clients – “Reports>>Clients”.
Scenario B:
o The user picks the task “Reports” on suppliers – “Reports>>Fournisseur”.
Scenario C:
o The user picks the task “Reports” on inventory – “Reports>>Inventaire”.
Scenario D:
o The user picks the task “Reports” on production orders – “Reports>>Bon de
production”.
Scenario E:
o The user picks the task “Reports” on stock orders – “Reports>>Bon d’achat”.
Scenario F:
o The user picks the task “Reports” on transport – “Reports>>Transport”.
Scenario G:
o The user picks the task “Reports” on general info – “Reports>>General”.

We assume the user performs scenario A (see above). The rest of these scenarios are
identical.

• PMCWA loads into the Single Task window (see section 3.1.2.1.) the graphical
user interface of “Reports>>Client” – “Rapports>>Client” application task.
• The Single Task window shows in a sorted by name list all the clients of Piquage
MC for the current financial year.

48
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• The user enters the search criterion to sift out the list of clients.
• The user pick a cross-report type from the list box “Cross reports” – “Trans-
rapports”. The possible cross-report types are “None”, “Client – Bon de
Production”, “Client – List de Prix”, “Client-Inventaire” and “Client-Transport”.
• PMCWA shows a modal window “Cross Reports” with the cross report
characteristics.
• The user chooses what should be included in this report by selecting the elements
of the cross report.
• The user press button “Save” – “Sauvegarder” to save the cross report
characteristics.
• PMCWA closes the window.
• The user specifies the period, if any, for which should be created the report –
enters “Start date” and “End date”.
• The user enters the title of the report.
• Scenario A or B:

Scenario A:
o The user presses the button “Create the report” – “Créer le rapport”.
o PMCWA creates the report and shows it up on the screen.
o The user presses the button “Print” – “Imprimer” to print out the report.

Scenario B:
o The user presses the button “Cancel” – “Annuler” to cancel the creation of the
report.

3.2.14.4. Failure Scenario


The same as 3.2.1.4.

3.2.14.5. Failure conditions

• The user remains not logged in.


• The task “PicMC>>Rapports>>Client“ remains not picked.
• Not enough hardware resources – disk space, memory - on the user’s machine to
load the data of the application task “Reports>>Client” - “Rapports>>Client”.
• Logical or syntax error in case of incorrect application logic or source code.
• Impossible report creation in case of locked for update DB table.
• Impossible report creation in case of insufficient DB Server resources.
• Inaccessible database in case of maintenance.
• Inaccessible database in case of connection or hardware failure.

49
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.14.6. Interaction Diagram for the base scenario

PMCWA
PMCWA main Cross report
Single Task Database
window window
window
:User
Time
access

Login

Browse task tree

Pick "Reports>>Client"
Load user interface
Load "List of clients"

verify
return data
display
Enter search criterion Load "List of clients"

verify
display return data
Pick a cross report from "Cross report" list box Show "Cross report" window Load cross report data

verify
display return data
Select the elements to be included in the report

Press button "Save"

Enter "Start date" and "End date"

Enter "Title"

Presses the button "Create the report"


Load report data

verify
display return data
Press button "Print"

Fig. 3.2.14.6.1. Sequence Diagram – Reports on client

50
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

3.2.15. Global Collaboration Diagram

None.

3.2.16. Class Diagram

None.

3.3. Performance Requirements

3.3.1. Static Requirements

• The size of the PMCWA database shall depend on the hardware limit of the
server;
• By using the client-server technology PMCWA shall be able to reduce the system
traffic and assure a good time response for up to 10 (ten) users connected
simultaneously to the system

3.3.2. Dynamic Requirements

• The amount of time needed to retrieve the data shall be lightly dependent on the
platform and configuration of the computers used by the users;
• The amount of time needed to submit data shall be lightly dependent on the
platform of the computers used by the users;
• The response time for a simple request - sending a user request, database
transaction processing and sending back a response – should be around 1 second.
PMCWA must assure such a response time for a local network connection
performing a speed transfer around 10 Mbps.

3.4. Design Constraints

• The Piquage MC Warehouse Application must be designed as an independent


piece of software that will run on its own resources.
• An object-oriented design and coding method shall be used to achieve a modular
design.

51
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

• The PMCWA database must be kept separately from the other databases used by
Piquage MC for doing its business.
• PMCWA – client has to be implemented on Windows 95/98/Me with Internet
Explorer ver. 5.5 or higher.
• There must be installed an e-mail tool (Microsoft Outlook) and fax sending
application (WinFax) on the PMCWA-client machines.
• PMCWA - server has to be implemented on Windows 2000.
• The Database Management System should be Microsoft SQL Server ver.7.0 or
higher.

3.5. Software System Attributes

3.5.1. Reliability

The Piquage MC Warehouse Application must be clear, informative, easy to use, and
secure. It must have a help system that is easy and convenient to the user.
The application and help system should use the French language.

3.5.2. Availability

PMCWA must be able to work in 7 by 10 mode (10 hours per 7 days per week) of
exploitation, except for short periods used for data archiving and system maintenance.

3.5.3. Security

Security is an important part of the application’s design and implementation.


PMCWA will not provide the users with different privilege levels. The access to the
system resources will be secured by using the database secure mechanism. Only
authorized access will be allowed.

3.5.4. Maintainability

The system will be built by the rules and techniques of OOP. The business logic will
be implemented partially in presentation services and partially in the database services,

52
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

following the rules of two-tier systems. This will reduce the network traffic and allow
easy maintenance and upgrade of the system.

3.5.5. Portability

The client part of the PMCWA system - presentation service - should be able to work
on the most wide spread operating systems – Windows 95/98/Me/XP.

3.6. Logical Database Requirements

• The database model should follow the main principles of database design –
simplicity, no redundancy, and flexibility. The PMCWA database model should
be from 3-rd level of normalization. All the data integrity constraints should be
applied on the database level;
• The database will be accessed constantly 365 days by 10 hours per year;
• A 24 hours backup should be provided;

3.7. Other Requirements

None.

53
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

4. Definitions, Acronyms, Abbreviations

A
Algorithm – a set of instructions to solve a problem.
Architecture – a set of sub-systems that communicate with each other within a
framework of a larger system.

B
Business Layer – a layer of a distributed system architecture that contains the
implementation of business rules. Business layer is situated between presentation and
data layers.
Business Rules – a set of restrictions and permissions that are imposed on the users of a
system. Business rules are implemented in the business layer.
Business Logic – the main logic of an application. The set of all the logical treads
implemented within an application.

C
Client - a computer system or process that requests a service of another computer system
or process.
Client-Server architecture – application architecture that consists of multiple client
parts and a centralized server part. The clients access the server simultaneously. The
business logic could be spread between the client and server.

D
Data Layer – a layer of a distributed system architecture that contains database and
supplies data for processing to the business layer.
Database Server – software that manages database and serves requests from other
systems to provide information stored in the database.
Delphi 6 – software development environment based on Object Pascal language.

H
HTML - Hypertext Markup Language: The coding language used to create Hypertext
documents for use on the World Wide Web. HTML files are meant to be viewed using a
World Wide Web Client Program, such as Netscape or Microsoft Internet Explore.

I
Internet Explorer – Internet browser developed by Microsoft.

54
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

R
Rollback transaction – a process performed by the database, where data changes are
undone.

S
Server – software that provides services to other software, called client.
SQL – Structured Query Language: The structured query language is an industry-
standard language used for manipulation of data in a relational database.
SQL Server – a database management system developed by Microsoft.
SRD – Software Requirements Document: the official statement of what is required of
the system developers.

U
UML – Unified Modeling Language: a tool to graphically describe the system design,
architecture, users, data, and other system components.
Use Cases – a scenario-based technique in the UML (see UML) which identify the actors
in an interaction and which describe the interaction itself.
User Interface – the graphical presentation of an application – all the buttons, menus,
windows etc.

W
Web Server – software that is used to manage websites and serve clients that request
information from those websites.

55
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Appendix 1. Bon de Production

Bon de Production
Piquage MC Info No:
Date

No Client No Commande Commander Par Vendeur Date Reçue Date Promise Date Livrée Via Quantité

Patron Pli#1 Pli#2 Pli#3 Pli#4 Pli#5 L Fil Varia Description Foulage Rool. #Pièce Mts Reçus Mts Livres

56
Software Requirements Specification, June 2003
Warehouse Application Corresponding to the Needs of Piquage MC by Emil Vassev

Appendix 2. Bon d’Achat

Bon d'Achat
Piquage MC Info No:
Date

Fournisseur

Description Prix Produit Qts. Commande Qts. Reçu B/O Date Reçue Commentaire

57
Software Requirements Specification, June 2003