You are on page 1of 95

ASIA PACIFIC INSTITUTE OF INFORMATION TECHNOLOGY

INCOURSE ASSIGNMENT SYSTEM DEVELOPMENT METHODS


Prepared By A.N.Ahamed Nishadh (CB004081) S.D.Ilangakoon (CB004041) M.J.Dilshan Zuhdi (CB004050)

Module Code & Title CE00321-2-SDM Cohort HF11B1SE Date of Submission 8th February 2012 Instructor Ms.Nadeera Ahangama

Submitted in partial fulfillment for the degree of Bachelor of Science (Hons) in Computing

ACKNOWLEDGEMENTS
Firstly we would like to thank our lecturer Ms.Nadeera Ahangama for all the help and guidance given while doing this assignment. Also there are many individuals who have helped us in numerous ways directly and indirectly so that we were able to complete this assignment. APIIT Lanka for providing us with resources and the Tech Team at APIIT Lanka for their assistance at required times. And last but not least our friends, parents and the well-wishers without whose moral support and encouragement, we would not have been able to do a good job. Finally, if there are any shortcomings in this project, then we request to excuse us for all those and accept this documentation. Ahamed Nishadh Deshan Ilangakoon Dilshan Zuhdi

WORKLOAD MATRIX
Task Ahamed Deshan Dilshan

Introduction Schedule Planning Gantt Chart Selection of Methodology Problem Analysis Current System Overview Proposed System Process Modeling Context Diagram Level 0 DFD Level 1 DFD Data Modeling ER Diagram Event Modelling Entity Life History Data Dictionary Data Flows Data Stores Processes External Entities Database Development Interactive Screen Designs Report Designs Programming Environment Implementation of Prototype Documentation

100

0 0 0

100 0 100

0 100 0

25

50

25

33 33 33

33 33 33

33 33 33

60

20

20

100

33 33 33 33 100 50 25 50 0 33

33 33 33 33 0 25 25 50 0 33

33 33 33 33 0 25 50 0 100 33

ii

GANTT CHART

A3 PAGE COMES HERE!!!

iii

TABLE OF CONTENTS
1.0 - INTRODUCTION ............................................................................................... 1 2.0 ASSUMPTIONS ................................................................................................. 2 3.0 SELECTION OF METHODOLOGY ................................................................. 3 3.1 - STRUCTURED SYSTEM ANALYSIS AND DESIGN METHODOLOGY (SSADM) ............................................................................. 3 3.1.1 MAIN OBJECTIVES OF SSADM...................................................... 3 3.1.2 MAIN STAGES OF SSADM METHODOLOGY .............................. 4 3.1.3 ADVANTAGES OF SSADM.............................................................. 4 3.1.4 DISADVANTAGES OF SSADM ....................................................... 5 3.2 IMPLEMENTATION STRATEGIES ........................................................ 5 4.0 PROBLEM ANALYSIS OF CURRENT SYSTEM ........................................... 6 5.0 OVERVIEW OF THE PROPOSED SYSTEM ................................................... 7 5.1 FUNCTIONAL SPECIFICATIONS .......................................................... 7 5.1.1 MANAGING FRONT OFFICE ........................................................... 7 5.1.2 MANAGING OF EVENTS ................................................................. 8 5.1.3 PROCUREMENT AND INVENTOR MANAGEMENT ................... 8 5.1.4 PAYMENT MANAGEMENT ............................................................ 8 5.1.5 MANAGING EMPLOYEES ............................................................... 8 5.1.6 MONITORING REPORTS ................................................................. 9 5.2 NON FUNCTIONAL SPECIFICATIONS ........................................... 10

iv

6.0 DATA FLOW DIAGRAMS ............................................................................. 11 6.1 CONTEXT DIAGRAM............................................................................ 11 6.2 LEVEL 0 ................................................................................................... 12 6.3 LEVEL 1 OF PROCESS 2 ....................................................................... 13 6.4 LEVEL 1 OF PROCESS 3 ....................................................................... 14 6.5 LEVEL 1 OF PROCESS 4 ....................................................................... 15 6.6 LEVEL 1 OF PROCESS 5 ....................................................................... 16 6.7 LEVEL 1 OF PROCESS 6 ....................................................................... 17 6.8 LEVEL 1 OF PROCESS 7 ....................................................................... 18 7.0 - ENTITY RELATIONSHIP DIAGRAM ........................................................... 19 8.0 DATA DICTIONARY ...................................................................................... 20 8.1 DATA STORES ....................................................................................... 20 8.2 DATA FLOWS ......................................................................................... 24 8.3 EXTERNAL ENTITIES ........................................................................... 42 8.4 PROCESSES ............................................................................................ 44 9.0 ENTITY LIFE HISTORY ................................................................................. 51 9.1 CUSTOMER ENTITY ............................................................................. 51 9.2 ORDERS ENTITY ................................................................................... 52 9.3 EMPLOYEES ENTITY ........................................................................... 53 9.4 INVOICE ENTITY .................................................................................. 54 9.5 INVENTORY ENTITY............................................................................ 55

9.6 SUPPLIER ENTITY ................................................................................ 56 9.7 SUBTASKS ENTITY .............................................................................. 57 10.0 SCREEN DESIGNS ........................................................................................ 58 10.1 ADD NEW CUSTOMER ....................................................................... 58 10.2 ADD NEW EMPLOYEE ....................................................................... 59 10.3 ADD INVENTORY ITEM ..................................................................... 60 10.4 ADD NEW ORDER ............................................................................... 61 10. 5 SEARCH / MODIFY ORDER .............................................................. 62 10.6 ADD NEW SUBTASK .......................................................................... 63 10.7 ADD EMPLOYEES TO SUBTASK...................................................... 64 10.8 ADD INVENTORY ITEMS TO SUBTASK ......................................... 66 10.9 ADD 3RD PARTY SUPPLIER TO SUBTASK ...................................... 68 10.10 ADD NEW 3RD PARTY SUPPLIER ................................................... 70 10.11 ADD 3RD PARTY SUPPLIER PRODUCTS / SERVICES.................. 71 10.12 MODIFY CUSTOMER DETAILS ...................................................... 72 10.13 MODIFY EMPLOYEE DETAILS ....................................................... 73 10.14 MODIFY SUPPLIER DETAILS ......................................................... 74 10.15 MODIFY 3RD PARTY SUPPLIER PRODUCT / SERVICE DETAILS ........................................................................................................................... 75 10.16 RETURN INVENTORY ITEM ........................................................... 76 10.17 LOAD INVOICE .................................................................................. 77 10.18 INVOICE .............................................................................................. 78
vi

10.19 LOGIN .................................................................................................. 79 10.20 MAIN MENU ....................................................................................... 80 11.0 REPORT DESIGNS ........................................................................................ 81 11.1 PROFIT / LOSS REPORT ..................................................................... 81 11.2 REPORT ON SUPPLIERS AND PRODUCTS / SERVICES THEY PROVIDE .......................................................................................................... 82 11.3 REPORT ON STAFF ALLOCATED PER EVENT .............................. 83 11.4 EVENTS ON A PARTICULAR MONTH............................................. 84 11.5 INVOICE ................................................................................................ 85 12.0 DEVELOPMENT ENVIRONMENT ............................................................. 86 12.1 LANGUAGE OF PROGRAMMING ..................................................... 86 12.2 PROGRAMMING TOOLS .................................................................... 86 12. 3 DATABASE .......................................................................................... 86 13.0 BIBLIOGRAPHY ........................................................................................... 87

vii

1.0 - INTRODUCTION
In this project of ours, we have been given the task of making a system for an event management company named Planit Event Management (Pvt) Ltd. The management of the company has decided to invest in a new information management system so that they can automate their office processes for work to be done faster and efficiently. There are different areas of the company that are going to be combined and automated using thing system. The front office, the human resource office, the stores where the inventory is kept, the accounts department and the management are all going to be connected using this system. The prototype system we are designing would be done using C#.net and we would be using the SSADM methodology to develop the system and implement it. The system would be mainly used by the staff and management of the company only. No external personal would be using the system as it is an internal information management system and allowing access to external people would compromise the security of the system. The system would handle all the inquiries by the customers, direct them to the relevant officials, help in managing the events that the company is doing, help in inventory management, payment process and create necessary reports for management.

2.0 ASSUMPTIONS
In this project, we have taken certain assumptions on how the processes work manually and have implemented the same in the automated system. They are as follows. 1. Each event managed by the company will be headed by one person called the Event Manager who will have full control over everything that happens in that particular event. 2. When a client makes an inquiry, depending on the type of inquiry (consultation, event organizing, itinerary management etc.) the quotation would take at least 24-72 hours to be prepared and sent to the customer. 3. If the company does not have adequate staff or do not have staff of a particular type or do not provide a particular service in house (catering, magicians for kids parties, security personal for events, etc.), they will be obtaining the services of 3rd party suppliers but all these will be going through the company and not as external partners for the event. 4. At least 50% of the payment of the quoted amount has to be made prior to the event and the balance depending on the final amount will have to be settled after the event by the client. 5. The quotation would provide an estimated amount for the requirements of the client while the final cost would change according to the changes in plans and costs of the customers requirements while the event is being planned. 6.

3.0 SELECTION OF METHODOLOGY


A good software project is the result of a proper structured development methodology followed by all those involved in the project. Hence, we too decided to use a recognized development methodology to handle our project. The methodology we decided to use was the Structured System Analysis and Design Methodology (SSADM).

3.1 - STRUCTURED SYSTEM ANALYSIS AND DESIGN METHODOLOGY (SSADM)


SSADM was developed in the year 1980. Its the standard design of information systems in the United Kingdom. It breaks up a development project into stages, modules, steps and tasks. The first model developed in SSADM is the data model. The techniques used in SSADM are as follows. 1. Data Flow Modeling - It involves in data flow tracking in an information system. This analyzes the data stores, process, external entities and data movement clearly. 2. Logical Data Modeling - This engages with process identifying, modeling and documenting data as a part of system requirement gathering. And then data are classified further into relationships and entities. 3. Entity Behavior Modeling - This engages in identifying and documenting the events influencing each entity and the sequence in which these events happen.

3.1.1 MAIN OBJECTIVES OF SSADM


1. Develop better and high quality systems. 2. Good communication between participants in a project by establishing a framework. 3. Make projects resilient to the loss of staff. 4. Improve the project management and control.

5. Make use of experienced and inexperienced development staff more effectively. 6. Allows projects to be supported by computer based tools as computer aided software engineering systems.

3.1.2 MAIN STAGES OF SSADM METHODOLOGY


1. Feasibility Study: It covers a large level analysis of business area to conform whether the particular system is feasible to develop. 2. Requirement Analysis: In this stage, requirements are identified and current business environment is modeled, business system options are produced and presented. From these, one is chosen and refined. The possible techniques that are used in this stage are Logical Data Modeling and Data Flow Modeling. 3. Requirement Specification: In this stage functional and non-functional requirements are specified as a result of the requirement analysis stage. Data Flow Modeling, Entity Event Modeling and Logical Data Modeling can be used as techniques. 4. Logical System Specification: In this stage implementation and development environment are specified. The logical design of update and enquiry processing and system dialogs are carried out. 5. Physical Design: In this technical specification and the logical design are used to create physical design and set program specification. It should be noted that in the SSADM methodology, Implementation and Maintenance of the developed system are not part of the stages. Hence we will be using the Traditional Software Implementation Methodology about which we have specified in this documentation below.

3.1.3 ADVANTAGES OF SSADM


1. It offers better understanding. 2. Its highly practical. 3. Coherent design. 4. High Quality system is delivered at the end of project.
4

3.1.4 DISADVANTAGES OF SSADM


1. It has a long development times because every stage must be completed before moving on to the next stage. 2. It costs time and money, Organizations must have large resources. 3. Lack of user involvement. 4. Its not flexible.

3.2 IMPLEMENTATION STRATEGIES


We are developing a prototype of our system. Prototype is building process of a system. Its a repeating process which is a part of analysis phase of system development life cycle. In the initial stage of analysis some uses papers to get user feedbacks and later on develop a prototype using fourth generation languages like visual basic during the design stage. There are many forms of prototyping -From low tech sketches or paper screens, which users and developers can paste controls and objects. To high tech operational systems CASE(computer aided software engineering). There are many Advantages of Prototyping It requires user involvement It results in high user satisfactions. It reduces development costs. It reduces development time.

And there are some disadvantages also Developers may become too attached to their prototypes. It sometimes guide to incomplete documentation. It can guide to insufficient analysis.

4.0 PROBLEM ANALYSIS OF CURRENT SYSTEM


PLANIT Event Management (Pvt) Ltd is a large and successful event planning company that has decided to invest in a new information management system. This system is to allow for better information management. The following problems have been noted in the current existing system. 1. The system currently maintains all its records manually I hardcopy form and none of the process is automated at all. This leads to slower and a lot of wasted resources in attempting to maintain the system and in trying to keep all the records up to date. 2. There is a great risk of information being misused by people who should not be allowed to view it. This problem is slightly improved by keeping all the records in storage closets with locks. This feature can be easily breached and also careless oversight on the part of the employee where records re forgotten to be locked up after use. 3. Threat of records being destroyed easily. Since all records are maintained in hardcopy format there is a really great possibility of the information being ruined by factors beyond human control like water damage and the possibility of harmful products accidently falling on to the records. The possibility also exists that an external party may remove pages from the legers containing the information. 4. Another threat faced by the current system is the threat of incorrect information being entered into the system by accident. This is a great threat as its only human to make mistakes and taking into consideration the large amount of information passing through the company, it is possible that a mistake might go unnoticed until its too late to correct it or the damage is permanent. This will add to additional costs to the company when it tries to rectify its errors.

5.0 OVERVIEW OF THE PROPOSED SYSTEM


5.1 FUNCTIONAL SPECIFICATIONS
Our team has been asked to develop a system for PLANIT Event Management (Pvt) Ltd, Colombo. The system that has been requested is an information management system. This system has several primal requirements that have been requested for by the Management of PLANIT. The Basic Requirements are as follow: 1. Manage Front Office 2. Managing of Events 3. Procurement and inventor Management 4. Payment Management 5. Managing of Employees 6. Monitoring Reports In developing the new system our team took extreme care to ensure that the above mentioned five basic requirements are met exactly as the client had requested.

5.1.1 MANAGING FRONT OFFICE


This is where the customer of the company will make his initial request for assistance in organizing the event. The front desk will be the point of contact for the customer with the company. Here there are several processes that can be carried out. Registration of the customer This will be the initial step. The customer will provide all the required information to the front office and this information will be saved in the company records. Reservation Here the customer will provide all the details of the event and this information will be cross checked against the availability and the customer will be told if the company is able to cater to the request.

Cancelation In the event that the customer wishes to cancel his or her event the customer will again inform the front office and the front office will cancel the event and the appropriate charges will be applied.

5.1.2 MANAGING OF EVENTS


The management of the events is a vital part in this organization. It mainly will deal with customer in the event that the customer wishes to change retails regarding the event. The allocation of the event planner or the event manager will also be done here. The system will check its records and allocate the most suited and available planner to an event wen the customer makes the request.

5.1.3 PROCUREMENT AND INVENTOR MANAGEMENT


This segment of the system will deal with the handling of the companies supplies and the resources that will be outsourced. The system will check within itself for records of the utilization of the companys products and inform the system user if the company has enough equipment on its own to provide for the event. Procurement of supplies from outside dealer will also be done in the event that the company does not have the required resources or when the company has depleted its own resources.

5.1.4 PAYMENT MANAGEMENT


The payments due for handling the event will also be provided to the customer at this point. The customer will receive an invoice to which they are then expected to provide the relevant payments. Further the customer will provide information such as the method of payment and the payment scheme. At the payment point the customer will also be given information such as if he will be receiving a discount.

5.1.5 MANAGING EMPLOYEES


For a successful event to be organized the key requirement is proper management of resources. Staff is one such vital resource and the management and the
8

allocation of the staff for the events will be carried out from this point of the system. New employees can be added and existing employee information can be changed or permanently removed.

5.1.6 MONITORING REPORTS


The reports will be generated by the system as a method of overseeing the work that has been happening throughout the company. This information will only be available to the administrative staff of the company and the management. There will be five different reports generated by the system for the use of the management. 1. Monthly and Annual Reservation Reports 2. Low Supplies Report and Free Supplies Report 3. Staff event Report 4. Income and Expenditure Report and Profit and Loss Report 5. Cancelation Report Each of these will be generated by the system and presented to the administrative user. This way the administration of the company can keep a close watch on all the activities in the company and make changes as and when the situation demands it.

5.2 NON FUNCTIONAL SPECIFICATIONS


The user of the new system has requested for several non-functional specifications to be present in the system that is being developed. Performance The system will have to be able to perform all of its tasks fast and efficiently. One of the main reasons for incorporating the new system was in order that the time spent on manual processing of the information received can be cut down. The system will also have to be user friendly so that the user of the system will not find the using of this system more tedious that the manual maintenance of the same system. Security This was a major concern for the senior management of the company as the previous systems lack of security. The system was unable to effectively safeguard the information of its clients and the details of the events and other sensitive information. Therefore this system will incorporate several levers of access granting people access to only what information they have the right to view. Other people without access will therefore be safely prevented from viewing the system. Reliability It is vital for the system to be reliable. It should not fail at critical points and that checking mechanisms be implemented to prevent the entry of wrong data as much as possible. This is done with validation checks and other such features. Though this will not completely prevent wrong details from accidently being entered it will prevent information of the wrong format to be entered. Usability - For an effective system to be developed the system will also be usable and flexible for change. During the development of the system our team has tried as much as possible to make the system flexible for future change.

10

6.0 DATA FLOW DIAGRAMS


6.1 CONTEXT DIAGRAM

11

6.2 LEVEL 0

A3 PAGE COMES HERE

12

6.3 LEVEL 1 OF PROCESS 2

13

6.4 LEVEL 1 OF PROCESS 3

14

6.5 LEVEL 1 OF PROCESS 4

15

6.6 LEVEL 1 OF PROCESS 5

16

6.7 LEVEL 1 OF PROCESS 6

17

6.8 LEVEL 1 OF PROCESS 7

18

7.0 - ENTITY RELATIONSHIP DIAGRAM

A3 PAGE Comes here!!!

19

8.0 DATA DICTIONARY


8.1 DATA STORES
Name Description Customer File Contains all the information regarding the clients of the company who have made reservations with the company. Input Data Flows Output Data Flows Data Structure Customer File = CustID+ CustName+ CustAddress+ CustTele+ CustRecStatus N/A Customer details

Name Description

Reservation File Contains all the information reservations that the company has and is to undertake in the future. This file is vital to make sure that there are no events clashing with each other.

Input Data Flows

Booking Details Availability Deleted Reservation Record Reservation Records

Output Data Flows Data Structure

Reservation File = OrdID+ CustID+ EmpID+ OrdDateofPlacement+


20

OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus

Name Description

Inventory File Contains details of all the supplies that the company holds. The information in this file should always be up to date in order that no accidental over booking of resources occur.

Input Data Flows

Availability Deallocated inventory records Reserved inventory list Inventory Records

Output Data Flows Data Structure

Inventory File = ItemID+ ItemName+ ItemDescription+ ItemSerialNumber+ ItemPrice+ ItemStatus+ ItemRecStatus+ DeptID

Name Description

Staff File Contains all the information regarding the companys staff and their availability or the current event that they are
21

engaged in. This information is valuable when checking to assess if the company can cater to a clients requirements. Input Data Flows Output Data Flows Data Structure Staff File = EmpID+ EmpName+ EmpDoB+ EmpAddress+ EmpTele+ DeptID+ EmpDescription+ EmpStatus+ EmpRecStatus Availability Allocated Staff List Deallocated staff list Staff records

Name Description

Accounts File This is another vital data store in that it contains all the records of payments made and due. It also contains the information regarding the quotations given to the clients so that calculations can be made accordingly and accurately.

Input Data Flows

Payment Details Quotation Invoice Accounts Details

Output Data Flows Data Structure

Accounts File = InvID+ AccID+ InvPayMethod+

22

InvPayStatus+ InvPayable+ InvDiscount

Name Description

Supplier File This file will contain all the details of the products that a supplier provides and also the details of the products that the company has requested from the supplier.

Input Data Flows

Cancel Product List Supplier Details Product Details

Output Data Flows Data Structure

N/A

Supplier File= SupID+ SupName+ SupAddress+ SupTel+ ProdName+ ProdType

23

8.2 DATA FLOWS


Name Description Origin/Source Destination Data Structure Cancelation Information Details regarding which event the Client wishes to cancel Client External Entity Cancelation Process (6.1) Cancelation information = CustID+ CustName+ OrdID+ OrdEventDate

Name Description

Cancelation Reply Sends the Client information regarding the possibility of cancelling the event.

Origin/Source Destination Data Structure

Cancelation Process (6.1) Client External Entity Cancelation Reply= CustID+ CustName+ OrdID+ OrdEventDate+ OrdStatus

Name Description

Deleted Reservation Record Sends details of which record to be deleted from the Reservation file

Origin/Source Destination Data Structure

Cancelation Process (6.1) Reservation File Delete Reservation Record= OrdID+ OrdStatus

24

Name Description Origin/Source Destination Data Structure

Deallocated Staff Records Sends details of which record to be deleted from the Staff file Cancelation Process (6.1) Staff File Deallocate Staff Records= OrdID+ EmpID+ OrdStatus

Name Description

Deallocated Inventory Records Sends details of which record to be deleted from the Inventory file

Origin/Source Destination Data Structure

Cancelation Process (6.1) Inventory File Deallocate Inventory Records= OrdID+ STID+ ItemID+ OrdStatus

Name Description Origin/Source Destination Data Structure

Cancelation Report Sends the Administrator details of all the cancelled events Report Process (6.2) Administrator External Entity Cancelation Report= OrdID+
25

CutID+ EmpID+ OrdDateofPalacement+ OrdEventName+ OrdEventDate+ OrdEventTime+ OrdStatus

Name Description

Quotation Details Sends the customer details of the estimated quotations for the event requested.

Origin/Source Destination Data Structure

Quotation Process( 5.1) Client External Entity Quotation Details = InvID+ LineTotal+ LineQty+ LinePayable

Name Description

Quotation Details Sends a copy of the quotation to the accounts file to be saved in the records.

Origin/Source Destination Data Structure

Quotation Process (5.1) Accounts File Quotation Details = InvID+ LineTotal+ LineQty+ LinePayable

Name

Quotation Details

26

Description

Sends details of the quotation to the payment calculation process to aid in the calculation on the final payment bill.

Origin/Source Destination Data Structure

Quotation Process (5.1) Payment Calculation Process( 5.2) Quotation Details = InvID+ LineTotal+ LineQty+ LinePayable

Name Description

Invoice Sends the Client information regarding the fees due for the service provided by the company for organizing the event.

Origin/Source Destination Data Structure

Payment Process (5.2) Client Invoice = InvID+ LineTotal+ LineQty+ LinePayable

Name Description

Invoice Sends a copy of the invoice to the accounts record to store the details of the payment outstanding from the client

Origin/Source Destination Data Structure

Payment Process (5.2) Accounts File Invoice = InvID+ LineTotal+ LineQty+ LinePayable

27

Name Description

Payment Details The client sends the details regarding the methods of payment and the amount being paid to the company.

Origin/Source Destination Data Structure

Client External Entity Payment Process (5.2) Payment Details = InvID+ AccID+ InvPayMethod+ InvPayStatus+ InvPayable+ InvDiscount

Name Description

Payment Details Sends a copy of the payment made by the client to be stored in the accounts file

Origin/Source Destination Data Structure

Payment Process (5.2) Accounts File Payment Details = InvID+ AccID+ InvPayMethod+ InvPayStatus+ InvPayable+ InvDiscount

Name Description

Accounts Details Sends records of the accounts to the report process in order to generate the reports required by the administrator.

Origin/Source Destination Data Structure

Accounts File Report Process (5.3) Payment Details =


28

InvID+ AccID+ InvPayMethod+ InvPayStatus+ InvPayable+ InvDiscount

Name Description

Income and Expenditure Report / Profit and Loss Report Sends the report to the administrator to view the performance of the company financially.

Origin/Source Destination Data Structure

Report Process (5.3) Administrator External Entity Income and Expenditure Report / Profit and Loss Report= InvID+ AccID+ InvPayMethod+ InvPayStatus+ InvPayable+ InvDiscount

Name Description

Allocated Staff List This gives the staff files details of the staff that have been allocated for a particular event.

Origin/Source Destination Data Structure

Resource Allocation Process (4.1) Staff File Allocated Staff List= EmpID+ EmpName+ EmpDoB+ EmpAddress+ EmpTele+ DeptID+
29

EmpDescription+ EmpStatus+ EmprecStatus

Name Description

Staff Records Sends the report process information about all the records in order that the process can generate reports.

Origin/Source Destination Data Structure

Staff File Report Process (4.2) Staff Records= EmpID+ EmpName+ EmpDoB+ EmpAddress+ EmpTele+ DeptID+ EmpDescription+ EmpStatus+ EmprecStatus

Name Description

Staff Event Report Provided the Administrator with a report containing the details of the events covered by different staff.

Origin/Source Destination Data Structure

Report Process (4.2) Administrator External Entity Staff Event Report = EmpID+ EmpName+ EmpDoB+ EmpAddress+ EmpTele+ DeptID+
30

EmpDescription+ EmpStatus+ EmprecStatus

Name Description

Reserved Inventory List Provides the inventory file with details of the requirements for a particular event.

Origin/Source Destination Data Structure

Resource Allocation Process (3.1) Inventory File Reserved Inventory List= ItemID+ ItemName+ ItemDescription+ ItemSerialNumber+ ItemPrice+ ItemStatus+ ItemRecStatus+ DepID

Name Description

Inventory Records Gives the report process information to generate the reports required by the administrators.

Origin/Source Destination Data Structure

Inventory File Report Process (3.2) Inventory Records= ItemID+ ItemName+ ItemDescription+ ItemSerialNumber+ ItemPrice+ ItemStatus+ ItemRecStatus+
31

DepID

Name Description

Low supplies Report / Free Supplies Report Provides the administrator information regarding the supplies that are currently available in the stocks.

Origin/Source Destination Data Structure

Report Process (3.2) Administrator External Entity Low Supplies Report / Free Supplies Report= ItemID+ ItemName+ ItemDescription+ ItemSerialNumber+ ItemPrice+ ItemStatus+ ItemRecStatus+ DepID

Name Description

Reservation Details The information that is provided by the Client regarding the booking that the client wishes to make.

Origin/Source Destination Data Structure

Client External Entity Booking Process (2.1) Reservation Details = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+
32

OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Booking Details This information regarding the booking which the client made will be stored in the reservation files for future reference.

Origin/Source Destination Data Structure

Booking Process (2.1) Reservation File Reservation Details = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Reservation Details Passes the information on to the next process to check for availability.

Origin/Source Destination Data Structure

Booking Process (2.1) Check Availability Process (2.2) Reservation Details = OrdID+
33

CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Availability Check to ensure that the stocks are available to cater to the requested event.

Origin/Source Destination Data Structure

Check Availability Process (2.2) Booking Process (2.1) Availability= OrdID+ STID+ ItemID+ ItemStatus

Name Description

Availability Check to ensure that the stocks are available to cater to the requested event.

Origin/Source Destination Data Structure

Check Availability Process (2.2) Inventory File Availability= OrdID+ STID+


34

ItemID+ ItemStatus

Name Description

Availability Check to ensure that the company is not fully engaged with other prior events.

Origin/Source Destination Data Structure

Check Availability Process (2.2) Reservation File Availability= OrdID+ OrdEventDate+ OrdEventTime

Name Description

Availability Check to ensure that staffs are available to cater to the requested event.

Origin/Source Destination Data Structure

Check Availability Process (2.2) Staff File Availability = OrdID+ EmpID+ EmpStatus

Name Description

Availability Provides the Client with information as to whether the company is able to cater to the Clients requirements.

Origin/Source Destination Data Structure

Check Availability Process (2.2) Client Availability = OrdID+ EmpID+


35

ItemID+ EmpStatus+ ItemStatus

Name Description

Reservation Records Provides the process with information regarding the reservations in order that the process may submit the required report to the Administrator.

Origin/Source Destination Data Structure

Reservation Files Report process (2.3) Reservation Record = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Monthly report/ annual report reservation report Provides the user with detailed reports of the companys activities in relation to the reservations that it has made.

Origin/Source Destination Data Structure

Report Process (2.3) Administrator Monthly report/ annual report/ failed reservation report = OrdID+
36

CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Event Details Provides the resource allocation process with information regarding the event that has been required by the client.

Origin/Source Destination Data Structure

Reservation process (2.0) Resource Allocation Process (3.0) Event Details = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

37

Name Description

Event Details Provides the human resource allocation process with information regarding the event that has been required by the client.

Origin/Source Destination Data Structure

Reservation process (2.0) Human Resource Allocation Process (4.0) Event Details = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+ OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Event Details Provides the Payment process with information regarding the event that has been required by the client.

Origin/Source Destination Data Structure

Reservation process (2.0) Payment Process (5.0) Event Details = OrdID+ CustID+ EmpID+ OrdDateofPlacement+ OrdEventName+

38

OrdEventType+ OrdEventDate+ OrdEventTime+ OrdEventDuration+ OrdEventLocation+ OrdDescription+ OrdStatus+ OrdRecStatus+

Name Description

Supplier Details Provides the system with details of a new supplier and details of the product that they will be supplying.

Origin/Source Destination Data Structure

Supplier External Entity Supplier Registration Process (7.1) Supplier Details = SupID+ SupName+ SupAddress+ SupTel+ ProdName+ ProdType

Name Description Origin/Source Destination Data Structure

Supplier Details Sends the details supplied by the supplier to the Supplier File Supplier Registration Process (7.1) Supplier File Supplier Details = SupID+ SupName+ SupAddress+ SupTel+ ProdName+
39

ProdType

Name Description Origin/Source Destination Data Structure

Product Details Sends the supplier details of the products needed for an event. Supplier Process (7.2) Supplier External Entity Supplier Details = SupID+ ProdName+ ProdType

Name Description Origin/Source Destination Data Structure

Product Details Sends the required product details to the supplier file Supplier Process (7.2) Supplier File Data Store Supplier Details = SupID+ ProdName+ ProdType

Name Description Origin/Source Destination Data Structure

Product Details Sends the required product details to the supplier file Resource Allocation Process (3.0) Supplier Process (7.0) Supplier Details = SupID+ ProdName+ ProdType

40

41

8.3 EXTERNAL ENTITIES

Name Description

Client This entity is the client of the company who will request the company to organize and event for them. The client will provide all the necessary information regarding the event and also other information such as payment methods and cancelations.

Input Flows

Data

Availability Confirmation Quotation Invoice Cancelation reply Customer Details Reservation Details Cancelation Information Payment Details

Output Flows

Data

Name Description

Administrator This external entity will have be and overseer of the activities of the company. The administrator will receive all the information regarding the company in a report format.

Input Flows

Data

Monthly report/ Annual report Low supplies Report / Free supplies Report Staff Event Report Income and Expenditure report / Profit and Loss Report Cancelation Report

Output Flows

Data

N/A

42

Name Description

Supplier This entity is the suppliers who will provide the company with products that it on its own cannot procure. The supplier will provide his personal information to the system and in return will receive details of the products that the company wishes to obtain. Data

Input Flows Output Flows

Data

Cancelled Product List Product Details Supplier Details

43

8.4 PROCESSES
Name Description 6.1 Cancelation Process This process is tasked with the job of cancelling events on request of the Client. Input Data Flows Output Data flows Process Description Cancelation Information Cancelation Reply Deleted Reservation Records Deallocated Staff Records Deallocated Inventory Records Cancelled Product List

BEGIN READ Cancelation Information UPDATE OrdStatus END

Name Description

6.2 Report Process This process will obtain generate reports pertaining to the cancelation of events.

Input Data Flows N/A Output Data flows Process Description BEGIN GET Order Details IF OrdStatus EQUALS Cancelled WRITE Cancelled Orders into Report DISPLAY Report END IF END Cancelation Report

Name Description

5.1 Quotation Process This process will generate the quotation to be presented to
44

the Client in the initial stages when the Client first approaches the company. Input Data Flows N/A Output Data flows Process Description Quotation Details Quotation Details

BEGIN READ Invoice Details ADD Costs DISPLAY quotation WRITE Quotation to Accounts File END

Name Description

5.2 Payment Calculation Process This Process will generate the payment due at the end of the event taking to account the cost of all requirements that the Client wished for.

Input Data Flows Output Data flows

Payment Details Invoice Invoice Payment Details

Process Description

BEGIN READ Cost of Order DISPLAY Invoice WRITE Invoice to Accounts File READ Payment Details WRITE Payment Details to Accounts File END

Name Description

5.3 Report Process This process will generate the information regarding the companys monetary standings.

Input Data Flows

Account Details
45

Output Data flows Process Description

Income and expenditure report / Profit and Loss Report

BEGIN READ Accounts details from Accounts File CALCULATE Income and Expenditure CALCULATE Profit or Loss DISPLAY Income and Expenditure Report and Profit and Loss Report END

Name Description

4.1 Resource Allocation Process This process will allocate staff as needed for each particular task.

Input Data Flows Output Data flows Process Description

N/A

Allocate Staff List

BEGIN READ Employee Details IF Employee Status EQUAL Available UPDATE Employee Status to Unavailable END IF END

Name Description

4.2 Report Process This process will generate a report for the Administration regarding the utilization of the companys staff.

Input Data Flows Output Data flows Process Description

Staff records Staff Event Report

BEGIN READ Employee Details


46

DSIPLAY Employee Records END

Name Description

3.1 Resource Allocation Process This process will allocate resources as needed for each particular task.

Input Data Flows Output Data flows Process Description

N/A

Reserved Inventory List

BEGIN READ Inventory Details IF Inventory Status EQUAL Available UPDATE Inventory Status to Unavailable END IF END

Name Description

3.2 Report Process This report process will generate the information regarding the supplies that are in low quantities and also what supplies which are free and not being utilized by any event.

Input Data Flows Output Data flows Process Description

Inventory Records Reserved Inventory List

BEGIN READ Inventory Details DSIPLAY Inventory Records END

Name Description

2.1 Booking Process The booking process will record in reservation information

47

in the appropriate file after it is ensured that the company can carter to the request. Input Data Flows Output Data flows Process Description Reservation Details Availability Booking details Reservation Details

BEGIN READ Reservation Details from Client GET Availability IF Available WRITE Booking Details to Reservation File END IF END

Name Description

2.2 Check Availability This process will check all the relevant records to ensure that the company has all the required resources and the man power to cater to the clients request. Also to ensure that the company isnt already over booked with requests.

Input Data Flows Output Data flows

Reservation Details

Availability Availability Availability Availability Availability

Process Description

BEGIN GET Reservation Details from Booking Process GET Inventory Details GET Reservation Details GET Staff Details IF Reservation AND Inventory AND Staff Status

48

EQUALS Available WRITE Availability to Booking Process DISPLAY Availability to Client ELSE DISPLAY Unavailability to Client END IF END

Name Description

2.3 Report Process This process will generate a report with the annual and monthly reservations of the company.

Input Data Flows Output Data flows Process Description

Reservation Records Monthly/Annual Reservation Report

BEGIN GET Reservation Records SORT by year OR month DISPLAY Sorted Reservation Details END

Name Description Input Data Flows Output Data flows Process Description

1.0 Register Customer Process This process will register all new clients of the company Customer Details Customer Details

BEGIN READ Customer Details WRITE Customer Details to Customer File END

Name

7.1 Supplier Registration Process

49

Description Input Data Flows Output Data flows Process Description

This processed is used register new suppliers to the system. Supplier Details Supplier Details

BEGIN READ Customer Details WRITE Customer Details to Supplier File END

Name Description

7.2 Supplier Process This processed is used communicate to the supplier regarding products needed for the event.

Input Data Flows Output Data flows Process Description

N/A Product Details Product Details

BEGIN GET Product Details WRITE Product Details to Supplier File DISPLAY Product Details to Supplier END

50

9.0 ENTITY LIFE HISTORY


9.1 CUSTOMER ENTITY
Customer

Create Customer

Mid Life Event

Customer termination

Give Reservation * Details

Payment *

Update Reservation * Details

Delay Reservation

Cancel Reservation

51

9.2 ORDERS ENTITY


Order

Create Order

Mid Life Event

Order Termination

Order Details *

Check Availability *

Cancel Order

Complete Order

52

9.3 EMPLOYEES ENTITY


Employee

Add Employee

Mid Life Event

Employee Termination

Allocate Staff *

Allocate Event *

Event Staffs

Event Manager

53

9.4 INVOICE ENTITY

Invoice

Create Invoice

Mid Life Event

Invoice Termination

Customer Details *

Payment Details *

Paid Advance *

Total Amount Due *

54

9.5 INVENTORY ENTITY


Inventory

Add Inventory

Mid Life Event

Inventory Termination

Check Inventory * availability

Allocate Event *

Supply Inventory

Get Inventory

55

9.6 SUPPLIER ENTITY


Supplier

Add Supplier

Mid Life Event

Supplier Termination

Supply Product *

Product Price *

Supply Product * Update

Product Cancelation

Delay Product

56

9.7 SUBTASKS ENTITY


Sub Task

Add Events Sub Tasks

Mid Life Event

End Events Sub Tasks

Allocate Sub Tasks for * events

Assign Employees for Sub * Tasks

Update Sub Task *

cancel Sub Task

Complete Sub Task

57

10.0 SCREEN DESIGNS


10.1 ADD NEW CUSTOMER

This form is used to add a new customer when they visit the company for the first time. What the user has to do is simply enter the details into the given fields and simply press Save. If the user accidently enters incorrect data he simply has to press Clear and all the fields will be cleared of all data. Validation checks will be placed in all da forms to ensure that all the data entered is in the correct format.

58

10.2 ADD NEW EMPLOYEE

This form is used to enter the details of newly recruited employees. The user will simply enter the details into the forms fields and then press the Save button and the details will get saved into the system. The Clear button will clear all da fields to enable the user to enter new records if needed. Validation rules will be used to make sure that the data entered is in the correct format.

59

10.3 ADD INVENTORY ITEM

This form is used to enter the details of the newly purchased stocks and supplies. The user will enter the details into the form and will then press the Save button. This will then save the records into the system. Validation checks will be out in place to ensure that the data entered in is in the correct format.

60

10.4 ADD NEW ORDER

This form is used to enter the details of a newly placed order for an event management. The user is expected to fill in the details of the event in the relevant fields and press the Save button. When this is done the records will get saved into the database for further use. This form will also have validation checks to ensure that the data entered is correct and accurate.

61

10. 5 SEARCH / MODIFY ORDER

This form is used by the user to modify the details of the order that has been placed in the Add New Order form. Which the user can change the details of the order, the user can all add subtasks for the order and also add view the subtasks the that are associated with that particular order.

62

10.6 ADD NEW SUBTASK

This form is used to allocate resources for a particular event. The fields for order ID and Subtask ID will be automatically be generated. The user is expected to enter the Department ID into the relevant field. After that the user will save the data and move on to enter employees, suppliers and inventory items for the event. The user will do this by pressing one of the buttons, either the Add Employee or Add 3rd Party Supplier or the Add Inventory Items buttons.

63

10.7 ADD EMPLOYEES TO SUBTASK

This form is used to add an employee to a task. This form will inherit the Department ID from the previous form which is the Add New subtask form. After this when the user presses the Search button the data grid will display all the employees who fall under the searched department. The form also allows the user
64

to search for employees from other departments by simply entering the new departments ID into the search field and pressing the Search button again. After that the user will enter the selected employees ID in the relevant field and press the ADD button and this will save the information into the database. The user can also view all the employees that they have already added by pressing the VIEW ADDED button.

65

10.8 ADD INVENTORY ITEMS TO SUBTASK

This form is also preceded by the Add New Subtask form. This form is also used to add resources for the event. Here the products needed will be added into the database. The user will enter a product name or select one from the drop down list and press the SEARCH button. The form will then display the product ID of the product searched and the user can then enter that in the Product ID field and add it

66

to the database by pressing the ADD button. The users can after this view all the items they have added by pressing the VIEW ADDED button.

67

10.9 ADD 3RD PARTY SUPPLIER TO SUBTASK

This form similar to the Add Subtask Inventory form, where it will also be used to specify the items used for a particular event. The user will enter the product name and then will press the SEARCH button and the system will display all the products IDs and the suppliers. The user will then select the product ID and add it

68

by pressing the ADD button. After that the user can view all the products he has added by pressing the VIEW ADDED button.

69

10.10 ADD NEW 3RD PARTY SUPPLIER

This form is used to enter the details of a newly added supplier. The form will request the user to enter all the details of the supplier into the relevant fields. The user will then press the ADD PRODUCT / SERVICE button which will take the user to the Add Supplier Products form. After that the user will press the SAVE button and the details will be saved into the system. There will be validation checks to ensure that the data entered is in the correct format.

70

10.11 ADD 3RD PARTY SUPPLIER PRODUCTS / SERVICES

This form will appear after the user has pressed the ADD PRODUCT / SERVICE in the Add new supplier form. Here the user is expected to enter the details of the products that a supplier will provide. The user will enter the details of the items the supplier will provide and will save it into the system.

71

10.12 MODIFY CUSTOMER DETAILS

This form will be used by the systems user to modify or delete an existing customer record. The form will have the details of the customer about to be modified from the previous form which is the Search Customer form. Once the user has modified the user will press the SAVE CHANGES button and the changes will be saved. Else the user can press the DELETE button and the customer will be deleted.

72

10.13 MODIFY EMPLOYEE DETAILS

This form will be used by the systems user to modify or delete an existing employee record. The form will have the details of the employee about to be modified from the previous form which is the Search Employee form. Once the user has modified the user will press the SAVE CHANGES button and the changes will be saved. Else the user can press the DELETE button and the employee will be deleted.

73

10.14 MODIFY SUPPLIER DETAILS

This form will be used by the systems user to modify or delete an existing supplier record. To find which supplier to modify the user will press the SEARCH button and find the ID of the supplier to be deleted or modified. Once the user has modified the user will press the SAVE CHANGES button and the changes will be saved. Else the user can press the DELETE button and the supplier will be deleted.

74

10.15 MODIFY 3RD PARTY SUPPLIER PRODUCT / SERVICE DETAILS

This form will be used by the systems user to modify or delete an existing suppliers item record. To find which suppliers item to modify the user will press the SEARCH button and find the ID of the item to be deleted or modified. Once the user has modified the user will press the SAVE CHANGES button and the changes will be saved. Else the user can press the DELETE button and the supplier item will be deleted.

75

10.16 RETURN INVENTORY ITEM

In this form, when the items that were taken from the inventory by the particular subtasks are returns to the warehouse, the PRODUCT ID is entered and the status of the product is changed from Unavailable to Available since its been returned and is available to be used by another task.

76

10.17 LOAD INVOICE

The load invoice form is used to generate the invoice. To do this the form will request the user to enter the Order ID. From this the system will generate the invoice when the user presses the LOAD INVOICE button.

77

10.18 INVOICE

This form will be where the user will be shown the invoice. Here the user will not have to do much since the system would have gotten the details when the user entered the order ID in the Load Invoice form. The user however will have to enter the discount given, if any, and then calculate the bill. After this the user can print the invoice and provide it to the customer.

78

10.19 LOGIN

This form is the initial form that will be opened when the user starts the system. This form will ask the user to enter their username and the password. This will authenticate the user and decide the level of clearance that the user is authorized for. In the event that the user enters an incorrect username or a password the system will display an error message. When the user enters a correct username and password the system will take the user to the main menu.

79

10.20 MAIN MENU


The main menu form is where all the forms are linked to mainly. This form has not been designed yet as the system is still in the prototype stage and the main menu layout cannot be finalized as yet.

80

11.0 REPORT DESIGNS


11.1 PROFIT / LOSS REPORT

81

11.2 REPORT ON SUPPLIERS AND PRODUCTS / SERVICES THEY PROVIDE

82

11.3 REPORT ON STAFF ALLOCATED PER EVENT

83

11.4 EVENTS ON A PARTICULAR MONTH

84

11.5 INVOICE

85

12.0 DEVELOPMENT ENVIRONMENT


While designing the system, we as a team thought in terms of developing this system in the future too so that it can be successfully implemented once the development it done completely. Keeping in mind the knowledge of the team members of the project and the clients requirements we decided to develop the system in the following methods.

12.1 LANGUAGE OF PROGRAMMING


All 3 members of the group were well versed in Visual Basic.net, C Programming, C++ Programming, Java Programming and C# Programming. And after much discussion, we unanimously decided to develop the system in C# since we have not previously developed a fully-fledged system in that language as well as taking on the project as a challenge to test our knowledge in this language.

12.2 PROGRAMMING TOOLS


All three members of the group were well accustomed to use and program using Microsoft Visual Studio 2010 and since we decided to go ahead using this IDE software tool to develop the system too. We would be using the Microsoft .Net Framework 4.0 as it is one of the latest standards in the industry.

12. 3 DATABASE
Since it is an obvious fact that a system of this magnitude needs to be linked with a server to store and retrieve data from, we decided to use the Microsoft SQL Server 2008 for this purpose. The integration between Ms SQL Server and Ms Visual Studio 2010 is very close; it would be easy to work with this database technology. Also the security concerns were looked into when the decision was made.

86

13.0 BIBLIOGRAPHY
Gerri Akers, 1999. What is Prototyping? [Online] Available at: http://www.umsl.edu/~sauterv/analysis/prototyping/proto.html [Accessed 3 February 2012]. Smith, S., 1999. SSADM (Structured Systems Analysis & Design Method). [Online] Available at: http://searchsoftwarequality.techtarget.com/definition/SSADM [Accessed 30 January 2012]. www.benefitof.net, n.d. Benefits Of SSADM. [Online] Available at: http://benefitof.net/benefits-of-ssadm/ [Accessed 30 January 2012]. www.edrawsoft.co, n.d. SSADM Diagram Software. [Online] Available at: http://www.edrawsoft.com/SSADM.php [Accessed 30 January 2012].

87