+ All Categories
Home > Documents > EngWeiSengAIA 201112F

EngWeiSengAIA 201112F

Date post: 03-Jun-2018
Category:
Upload: ghodghod123
View: 217 times
Download: 0 times
Share this document with a friend

of 141

Transcript
  • 8/12/2019 EngWeiSengAIA 201112F

    1/141

    Canteen and Catering Management System Acknowledgement

    CCaanntteeeennaannddCCaatteerriinngg

    MMaannaaggeemmeenntt SSyysstteemm

    By

    ENG WEI SENG

    SCHOOL OF ARTS AND SCIENCETUNKU ABDUL RAHMAN COLLEGE

    KUALA LUMPUR

    ACADEMIC YEAR

    2011/2012

  • 8/12/2019 EngWeiSengAIA 201112F

    2/141

    Canteen and Catering Management System

    Project ii

    CCaanntteeeennaannddCCaatteerriinnggMMaannaaggeemmeennttSSyysstteemm

    By

    ENG WEI SENG

    Supervisor: Ms. WONG YIN CHENG

    A project report submitted to the School of Arts and Scienceinpartial fulfillment of the requirement for the

    Bachelor of Science, CampbellUniversity, U.S.A,And

    Advanced Diploma in Science.

    Division of Computer Science

    School of Arts and ScienceTunkuAbdulRahmanCollege

    Kuala Lumpur

    2011/2012

    Copyright 2008 by TunkuAbdulRahmanCollege.

    All rights served. No part of this project documentation may be reproduced,

    stored in retrieval system, or transmitted in any form or by any means without

    prior permission of TunkuAbdulRahmanCollege.

  • 8/12/2019 EngWeiSengAIA 201112F

    3/141

    Canteen and Catering Management System Declaration

    Project iii

    DDeeccllaarraattiioonn

    The project submitted herewith is a result of my own efforts in totality and in every

    aspects of the project works. All information that has been obtained from other

    sources had been fully acknowledged. I understand that any plagiarism, cheating or

    collusion or any sorts constitutes a breach of College rules and regulations and would

    be subjected to disciplinary actions.

    __________________________

    Students Name :Eng Wei Seng

    Course :Advanced Diploma Cum Bachelor in Science

    (Information Systems Engineering)

  • 8/12/2019 EngWeiSengAIA 201112F

    4/141

    Canteen and Catering Management System Abstract

    Project iv

    AAbbssttrraacctt

    This project is carried out as a partial fulfillment of the requirement

    forAdvanced Diploma in Science cum BS Degree (Information Systems Engineering) toassess students skills and knowledge in systems engineering.

    This project has 7 modules. There are ordering, staff maintenance, user

    maintenance, food maintenance, catering management, restaurant management and

    report generation. The project is developed using agile methodology and object

    oriented approach is applied for the systems design. During system development,

    Netbeans and Oracle 11g are used and the programming language is java. This project

    has undergone several phases. There are planning analysis, design, development and

    testing. First, in the planning of this project,project plan is written. Next, during analysis

    stage, system requirements specification and activity diagram modeling the current

    system are produced. In design stage, various UML diagrams such as use case diagram,

    sequence diagram, class diagram and etc are drawn. As for the development stage,

    several workable sub-modules are produced and when proceed to testing stage, the

    status report for the test cases are generated. The assessment criteria used for this

    project are project plan, requirement analysis, design, final software, system

    implementation, system maintenance, project management, innovativeness and final

    documentation. This systems major functions such as ordering and catering are

    successfully delivered, but there are some of the proposed features failed to deliver,

    such as using RFID for canteen order payment. Besides, some of the functions in this

    system are rather general, not specific and detail. Nonetheless, this system is able to

    allow canteen users make canteen order by choosing food image or using barcode

    scanner. Other than that, this system allows user to retrieve their password through

    security question of their choice.

    In performing this project, the author has the opportunity to research and learn

    new knowledge and skills in order to enhance this project or solve existing difficulties.

    However, this project can be improved by integrating RFID feature in canteen order

    payment and some of the functions can be enhanced by providing more and better

    features such as enforcing due date in payment.

  • 8/12/2019 EngWeiSengAIA 201112F

    5/141

    Canteen and Catering Management System Acknowledgement

    AAcckknnoowwlleeddggeemmeenntt

    The author wishes to express his sincere gratitude to project supervisor, Ms.

    Wong Yin Cheng, for her guidance, constant support and encouragement throughout

    the completion of this final year project.Ms. Wong Yin Cheng has shared her in-depth

    experience and knowledge as well as useful and practical suggestions and ideas in

    helping the author to complete and improve his system.

    A warm thank is extended to Mr. Lim Kar Hoe for sharing his resources,

    opinions, knowledge, experience and skills in programming and development

    methodology, so generously. The author would also like to personally thank his/her

    family, friends in TAR College and his/her fellow course-mates who have one way or

    another extended their assistance in completing this project.

    Last, but not least, the author wishes to acknowledge the unwavering support

    shown by Mr. Pay SikKok, and other Computer Division lecturers, such as Mr. Lee

    Weng Ken.

  • 8/12/2019 EngWeiSengAIA 201112F

    6/141

    Canteen and Catering Management System Table of Contents

    Project vii

    TTaabblleeooffCCoonntteennttss

  • 8/12/2019 EngWeiSengAIA 201112F

    7/141

  • 8/12/2019 EngWeiSengAIA 201112F

    8/141

    Canteen and Catering Management System Table of Contents

    Project ix

    6. Conclusion ...................................................................................................................... 109

    6.1 Introduction .......................................... ........................................... .................................. 110

    6.2 Link to Seminar ................................................................................................................ 1106.3 Project Management Issues .............................................................................................. 111

    6.4 Evaluate Project against Objective ................................................. .................................. 112

    6.5 Evaluate Project against Strength and Weakness ................................... .......................... 113

    6.6

    Suggestion Future Improvement of the Project ........................................................ ........ 1146.7 Personal Reflection ...................................... .............................................. ............ 115 & 116

    7. References ...................................................................................................................... 117

    8. User Guide ........................................................................................................... 118 - 133

  • 8/12/2019 EngWeiSengAIA 201112F

    9/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 1

    Chapter 1

    System Planning

  • 8/12/2019 EngWeiSengAIA 201112F

    10/141

  • 8/12/2019 EngWeiSengAIA 201112F

    11/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 3

    transaction. In addition, this system can be designed in such way that it is scalable to cater the

    company future growth.

    1.2.4 Better User Experience

    This system provides a convenience and unambiguous way of using and so makes the system

    more user-friendly. The system interface will be designed to meet users expectations by

    basing on necessary user interface design principles such as consistency, recoverability, user

    familiarity and so on. Therefore, users are able to fully grasp the use of this system with

    minimal effort and time spent.

  • 8/12/2019 EngWeiSengAIA 201112F

    12/141

    Canteen & Catering Management System Chapter 1:System Planning

    Figure1.3.0.1

    TheHiera

    rchicalChartoftheprojectscope

    1.3 Project Scope

  • 8/12/2019 EngWeiSengAIA 201112F

    13/141

    Canteen & Catering Management System Chapter 1:System Planning

    1.4 Project Schedule

  • 8/12/2019 EngWeiSengAIA 201112F

    14/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 6

    1.5 Project Team

    No. Tasks Team Member

    1. Report Module

    Restaurant Menu Report

    Restaurant Sales Report

    Contract Expiry Report

    Contract Due Payment Report

    Print Report

    Pay SikKok

    Eng Wei Seng

    Eng Wei Seng

    Pay SikKok

    Pay SikKok

    1. Order Management Module

    Order maintenance (cancel order)

    o Ordering by Barcode

    o Ordering by Pictures

    Total Calculation

    Order Sequencing

    Eng Wei Seng

    Pay SikKok

    Eng Wei SengEng Wei Seng

    Eng Wei Seng

    2. Staff Maintenance Module Pay SikKok3. Restaurant Maintenance Module

    Restaurant Registration

    o Ordering by Barcode

    Edit, Delete Restaurant

    Contract Maintenance (Add, Edit, Delete)

    o Expiry Check

    o Execute Contract

    Payment Maintenance (Add, Delete)

    o Post Payment

    o Partial Payment

    Eng Wei Seng

    Pay SikKok

    Eng Wei Seng

    Eng Wei Seng

    Eng Wei Seng

    Eng Wei Seng

    Pay SikKok&Eng Wei Seng

    Pay SikKok&Eng Wei Seng

    Pay SikKok&Eng Wei Seng

  • 8/12/2019 EngWeiSengAIA 201112F

    15/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 7

    No. Tasks Team Member

    5. Catering Maintenance Module

    Customer Maintenance (Add, Edit, Delete)

    Order Maintenance

    o Complete Order

    o Edit, Cancel Order

    Total Calculation

    Payment Maintenance (Add, Delete)

    o Partial Payment Tracking

    o Post Payment

    Eng Wei Seng

    Eng Wei Seng

    Eng Wei Seng

    Eng Wei Seng

    Eng Wei Seng

    Pay SikKok&Eng Wei Seng

    Pay SikKok&Eng Wei Seng

    Pay SikKok&Eng Wei Seng

    6. User Maintenance Module

    Edit Password

    Password Recovery

    o Send Email (Login Forget Password)

    Pay SikKok

    Pay SikKok

    Pay SikKok

    7. Food Maintenance Module Eng Wei Seng

    8. Barcode Generator Module Pay SikKok

  • 8/12/2019 EngWeiSengAIA 201112F

    16/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 8

    1.6 Development Environment

    This system will be developed by using specific hardware, software, programming languages

    and other resources are declared as follows:-

    Type of resources SpecificationSoftware NetBeans IDE 6.9.1 and above

    o (use for coding and its more familiar for own use)

    Java SE Development Kit 6 Update 24o (machine independent)

    Microsoft Word 2007/10o (use for documentation and for jotting notes purposes)

    Microsoft Project 2010o (use for drawing Gantt chart)

    Oracle 10g and aboveo (database uses for get and retrieve data)

    Windows 7 Rational Software Architect (IBM)

    o (Use for activity, use-case, and class diagrams and so on)

    Hardware Laptop Intel Core i5 CPU 2.40GHz 2.00 GB RAM 64-bit Operating

    Barcode Scanner (Symbol OPOS Driver v3.31.0001) Use for food ordering.

    Programming

    Language Java(open source in J2EE Frameworks UML & Modeling)

    Database Oracle(includes many versions to the ANSI/ISO standard SQLlanguage and Oracle tools and applications provide additionalcommands.)

  • 8/12/2019 EngWeiSengAIA 201112F

    17/141

    Canteen & Catering Management System Chapter 1:System Planning

    1.7 Operational Environment

    Qty. Hardware Descriptions Software Descriptions

    2 Switches connects network segments Oracle 10g database

    1 Router Setting up the control of

    both LANs to separate them

    and provide communication

    with internet.

    Windows XP and newer platforms,

    LINUX, these2 platforms

    are able to run the Omron

    RFID system V720 series

    with each PC.

    1 Telephone mainly for catering and

    suppliers purposes

    Firewall Restrict blocks

    unauthorized access

    1 Printer generates reports use

    1 Database

    Server

    Concerning on processing

    data [storing and providing

    access]

    1 Barcode

    Scanner

    It uses in canteen ordering

  • 8/12/2019 EngWeiSengAIA 201112F

    18/141

    Canteen & Catering Management System Chapter 1:System Planning

    Project 10

    1.8 Outline of approach/Methodology Used

    This project is developed using Agile methodology. Agile methodology emphasizes

    lightweight processes and is suitable for project team in small size. It has 4 values and 12

    principles to achieve and follow in order to improve software development process and to

    produce better software.(Beedle, Bennekum, Cockburn, Cunningham, Fowler, Highsmith,

    Hunt, Jeffries, Kern, Marick, Martin, Schwaber, Sutherland and Thomas 2001)

    To practically attain those agile values and principles, Extreme Programming has

    been chosen out of the various variations of agile methodology. Extreme Programming has

    12 technical practices which are consolidating each other such as refactoring, small release,

    continuous integration and etc. Throughout the development of this project, these practices

    are applied simultaneously or individually.(Beck 1999)

    Fernandez and Fernandez (2008) claim that Agile methodology can help the project

    team to response to changes encountered even in the later stage of the project development

    life cycle with its incremental and iterative characteristic. As a result, the projects scope can

    be properly managed. Besides, S. B. Patil, SrikanthaRao and P. S. Patil (2011) also note that

    Agile methodology can reduce a projects chances of failure by continuously deliver small

    but functional subsystems.

    1.9 Chapter Summary

    While planning for this system, the project team has come across several

    complications. The significant hindrance would be the definition of the project scope. Due to

    inexperience, the project team cannot determine the project structure whether it is suitable,

    complete and within ability. Therefore, to properly outline the project structure, the project

    team has consulted with the project supervisor and after a few discussions, the project scope

    has appropriately sketched.

  • 8/12/2019 EngWeiSengAIA 201112F

    19/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 11

    Chapter 2

    Requirements Analysis

  • 8/12/2019 EngWeiSengAIA 201112F

    20/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 12

    RReeqquuiirreemmeennttssAAnnaallyyssiiss

    2.1 Introduction

    This chapter describes the process of system requirements gathering and analysis as

    well as its produced deliverables. Throughout the whole chapter, the fact gathering

    techniques such as interview and observation and the fact recording techniques such as

    activity diagram and use case diagram used in this project are discussed. Finally, system

    requirements specification, the outcome of fact analysis is also attached.

    2.2 Fact Gathering

    To collect requirements of the systems, a few techniques and methods has been adopted

    in this project:

    2.1.1 Interview

    On March 8th

    2011 3.00 p.m., a few students fromTunku Abdul Rahman College has

    been selected for conducting a face-to-face interviewabout half an hourfortheir opinions

    and suggestions of their expectedcanteen systems ordering features. Firstly, the

    interviewees were briefed about the purpose and objectives of the interview. Next, based

    on the assumption that the college canteen will be upgraded to computerized system, a

    few questions were asked such as the functional expectations of the new system ordering

    feature.On the same day, a few canteen staff were also been interviewed on the same

    premises as the student but only from their own perspectives and it is regarding the

    canteen systems as a whole. Therefore, the questions were more comprehensive and

    detail such as the desired user interface, the expected output message, the functional

    requirements of the new system, and etc.

    2.1.2 Observation

    The subject of observation was canteen in Tunku Abdul Rahman College. Throughout

    the first two weeks in March 2011, Tunku Abdul Rahman College canteen daily business

    transactions were observed and documented. The processes involve canteen and catering

    ordering, payment in canteen and catering business, customer details recording in

    catering business, restaurant registration and withdrawal and etc.

  • 8/12/2019 EngWeiSengAIA 201112F

    21/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 13

    2.3 Fact Recording

    2.3.1 Act ivi ty Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    22/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 14

  • 8/12/2019 EngWeiSengAIA 201112F

    23/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 15

  • 8/12/2019 EngWeiSengAIA 201112F

    24/141

  • 8/12/2019 EngWeiSengAIA 201112F

    25/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 17

  • 8/12/2019 EngWeiSengAIA 201112F

    26/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 18

  • 8/12/2019 EngWeiSengAIA 201112F

    27/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 19

  • 8/12/2019 EngWeiSengAIA 201112F

    28/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 20

  • 8/12/2019 EngWeiSengAIA 201112F

    29/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 21

    2.3.2 Use Case Diagram

    Figure 2.3.2.1 Overview Use Case Diagram

    Figure 2.3.2.2 Maintain Food Case Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    30/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 22

    Use Case Description for Maintain Food

    Use case name Maintain Food

    Brief Description This use case enables the staff to add a new food, edit existing food

    details and delete an existing food.

    Actor Staff

    Main Flow:

    Actor Action System Responses1. Display Main Menu

    2. Staff selects Food Management 3. Display sub menu: Add Food, Edit

    Food, DeleteFood.

    If Add Foodis selected, the S-1: Add Foodsubflow is performed.

    If Edit Foodis selected, the S-2: Edit Foodsubflow is performed.

    If Delete Food is selected, the S-3: Delete Foodsubflow is performed.

    Subflows:

    S-1: Add Food

    System will display a food details form of which the staff will enter the food details into.

    System will verify the input information and if it is valid, system will then save this food

    information into database.

    S-2: Edit FoodSearch Food use case will be executed first. Second, staff will amend some of the food details

    with the latest information of the food and the system will validate it. In the end, the system

    will save the updated food details into the database.

    S-3: Cancel Food

    System will carry out Search Food use case first. Next, staff will click the delete button to

    delete the food. System will prompt a message ask for confirmation. Staff will choose

    confirm and the system will delete the food from database.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-2: If the data entered is invalid

    -System will prompt error message

    A-3 Step S-3: If staff chooses not confirm to delete food

    -System will not delete food

    Use case name Search Food

    Brief Description This use case enables the staff to find a foods information.

    Actor staff

    Main Flow:

    Actor Action System Responses

    1. Staff will enter the food id 2. System will verify the food id3. System will display the food

    details.

    Alternative Flows:

    A-1 Step 2: If the food id could not be found in database

    -System will print an error message

  • 8/12/2019 EngWeiSengAIA 201112F

    31/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 23

    Use Case Description for Manage Report

    Use case name Manage report

    Brief Description This use case allows the staff to generate and printreports.

    Actor StaffMain Flow:

    Actor Action System Responses

    1. Display Main Menu

    2. Staff selects Report Management 3. Display sub menu: Due Payment

    Report, Restaurant Menu Report

    Restaurant Sales Report,Contract

    Expiry Report

    If Restaurant Sales Report is selected, the S-1: Restaurant SalesReport subflow is performed.

    If Contract ExpiryReport is selected, the S-2: Contract ExpiryReport subflow is performed.

    For use case description of Due Payment Report and Restaurant Menu Report,please kindly

    Refer it from the use case description done by teammate.Subflows:

    S-1: Restaurant Sales Report

    System will show a few fields for the staff to enter certain parameters to generate Restaurant

    Sales Report. System will verify the input and if it is true, system will then create the report

    based on the parameters provided.

    S-2: Contract ExpiryReport

    Certain fields will be displayed by the system and the staff can key in some parameters to

    generate Contract Expiry report. A validation check will be carried out by the system to

    validate the inputs. After that, according to the parameters given, system will generate the

    corresponding report.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-1: If the staff clicks print report button

    -Print Order by Restaurant Report use case will be executed.

    A-4 Step S-2: If the parameter input is incorrect

    -System will prompt error message

  • 8/12/2019 EngWeiSengAIA 201112F

    32/141

  • 8/12/2019 EngWeiSengAIA 201112F

    33/141

  • 8/12/2019 EngWeiSengAIA 201112F

    34/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 26

    Use Case Description for Manage Contract

    Use case name Manage contract

    Brief Description This use case enables the staff to add a new contract, edit existing

    contract details and terminate an existing contract.

    Actor Business Partner, staff

    Main Flow:

    Actor Action System Responses1. Display Main Menu

    2. Staff selects Contract Management 3. Display sub menu: Add Contract, Edit

    Contract,Cancel Contract and Execute

    Contract.

    If Add Contract is selected, the S-1: Add Contract subflow is performed.

    If Edit Contract is selected, the S-2: Edit Contract subflow is performed.

    If Cancel Contract is selected, the S-3: CancelContract subflow is performed.

    If Execute Contract is selected, the S-4: Execute Contract subflow is performed.

    Subflows:

    S-1: Add Contract

    A data entry form will be showed by the system for the staff to input the contractdetails. The

    input information will be validated by the system and if it is legitimate, the system will storethis contractinformation into the database

    S-2: Edit Contract

    System will carry out Search Contract use case first. Second, staff will modify some of the

    contract details based on the agreement between canteen and its partner. The system will

    verify the amendment done. In the end, the system will save the updated contract details into

    the database.

    S-3: Cancel Contract

    System will carry out Search Contract use case first. Next, staff will click the delete button to

    delete the contract. System will prompt a message ask for confirmation. Staff will choose

    confirm and the system will delete the contract from database.

    S-4: Execute Contract

    System will carry out Search Contract use case first. Next, staff will click the put effective

    button to execute the contract. System will prompt a message ask for confirmation. Staff will

    choose confirm and the system will execute the contract and cannot be edited or cancelled

    thereafter.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-2: If the data entered is invalid

    -System will prompt error messageA-3 Step S-3: If staff chooses not confirm to delete contract

    -System will not delete contract

    A-4 Step S-4: If staff chooses not confirm to execute contract

    -System will not execute contract

    Use case name Search Contract

    Brief Description This use case enables the staff to find a contracts information.

    Actor staff

  • 8/12/2019 EngWeiSengAIA 201112F

    35/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 27

    Main Flow:

    Actor Action System Responses

    1. Staff will enter the contract id 2. System will verify the contract id

    3. System will display the contract

    details.

    Alternative Flows:

    A-1 Step 2: If the contract id could not be found in database-System will print an error message

    Use Case Description for Manage Catering

  • 8/12/2019 EngWeiSengAIA 201112F

    36/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 28

    Use case name Manage catering

    Brief Description This use case enables the canteen to perform catering business. It

    allows staff to maintain customer, manage order and its payment.

    Actor Customer, staff

    Main Flow:

    Actor Action System Responses

    1. Display Main Menu2. Staff selects Catering Maintenance 3. Display sub menu: Maintain

    Customer, Maintain Order,

    Manage Payment.

    3. Staff clicks an option 4. Display sub menus for the

    selected option. (Register

    Customer, Edit Customer,

    Delete Customer for Maintain

    Order. Make Order, Change

    Order, Cancel Order and Complete

    Order for Maintain Order.)

    If Register Customer of Maintain Customer is selected, the S-1: Register Customer subflow is

    performed.If Edit Customer of Maintain Customer is selected, the S-2: Edit Customer subflow is

    performed.

    If Delete Customer of Maintain Customer is selected, the S-3: Discontinue Customer subflow

    is performed.

    If Make Order of Maintain Order is selected, the S-4: Make Order subflow is performed.

    If Change Order of Maintain Order is selected, the S-5: Change Order subflow is performed.

    If Cancel Order of Maintain Order is selected, the S-6: Cancel Order subflow is performed.

    If Complete Order of Maintain Order is selected, the S-7: Complete Order subflow is

    performed.

    For use case description of Manage Payment, please kindly refer it from detail use case for

    Manage Payment.

    Subflows:

    S-1: Register Customer

    System will display a customerregistration form for the staff to enter the

    cateringcustomerinformation. System will verify the input information and if it is valid,

    system will then add this customer information into database.

    S-2: Edit Customer

    Search Customer use case will be executed first. Next, staff will change some of the customer

    details according to customers will and the system will validate it. Finally, the system will

    save the updated customerdetails.

    S-3: Delete Customer

    Search Customer use case will be executed first. Then, staff will press the delete button in

    order to delete the customer. Before delete, system will print a confirmation dialog. Staff willclick confirm button and the system will delete the customer from database.

    S-4: Make Order

    System will display a window which contains a form and the staff will ask the catering order

    details from customer. After that, staff will enter the order details into the form and the

    system will validate the entered order details. Next, system will perform the Calculate Total

    use case. Then, the system will store this order into database.

    S-5: Change Order

  • 8/12/2019 EngWeiSengAIA 201112F

    37/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 29

    Search Order use case will be executed first. Second, staff will ask customer the change of

    order details and then staff will edit the order accordingly. System will verify the

    modification and update the database. Besides, Calculate Total use case will be carried out to

    recalculate the total amount of the order.

    S-6: Cancel Order

    Search Order use case will be executed first. Second, staff will ask customer for confirmation

    of order cancellation. Then, staff will click the delete button to delete the order. System willprompt a message ask for confirmation. Staff will choose confirm and the system will delete

    the order from database.

    S-7 Complete Order

    System will execute the Search Order use case first. Then, the staff will select the completed

    status from the order status drop down list. Next the staff will click the save button to mark

    this order as completed and the system will update the corresponding record.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-2: If the data entered is invalid

    -System will prompt error message

    A-3 Step S-3: If staff chooses not confirm to delete customer-System will not delete customer

    A-1 Step S-4: If the input data is invalid

    -System will display error message

    A-2 Step S-5: If the data entered is invalid

    -System will prompt error message

    A-3 Step S-6: If staff chooses not confirm to cancelorder

    -System will not delete order

    Use case name Search Customer

    Brief Description This use case enables the staff to find a catering customers

    information.

    Actor staff

    Main Flow:

    Actor Action System Responses

    1. Staff will enter the customer id 2. System will verify the customer id

    3. System will display the customer

    details.

    Alternative Flows:

    A-1 Step 2: If the customer id could not be located in database-System will print an error message

  • 8/12/2019 EngWeiSengAIA 201112F

    38/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 30

    Use case name Calculate total

    Brief Description This use case is to calculate the total payment for a catering order.

    Main Flow System will first retrieve the price of the food and calculate every

    lines total of a catering order by multiply the foods price with

    respective order lines quantity. After that, system will calculate the

    total payment of a catering order by accumulating every order line

    total.

    Use Case Description for Maintain Restaurant

    Use case name Maintain restaurant

    Brief Description This use case enables the staff to register a new restaurant, edit existing

    restaurant information and Discontinue an existing restaurant.

    Actor Restaurant, staff

    Main Flow:

    Actor Action System Responses

    1. Display Main Menu2. Staff selects Restaurant Maintenance 3. Display sub menu: Register

    Restaurant, Edit Restaurant,

    Discontinue Restaurant.

    If Register Restaurant is selected, the S-1: Register Restaurant subflow is performed.

    If Edit Restaurant is selected, the S-2: Edit Restaurant subflow is performed.

    If Discontinue Restaurant is selected, the S-3: Discontinue Restaurant subflow is performed.

  • 8/12/2019 EngWeiSengAIA 201112F

    39/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 31

    Subflows:

    S-1: Register Restaurant

    System will display a restaurant registration form of which the staff will enter the restaurant

    details into. System will verify the input information and if it is valid, system will then save

    this restaurant information into database

    S-2: Edit Restaurant

    Search Restaurant use case will be executed first. Second, staff will amend some of therestaurant details based on the latest information that the restaurant given and the system will

    validate it. In the end, the system will save the updated restaurant details into the database.

    S-3: Discontinue Restaurant

    Search Restaurant use case will be executed first. Then, staff will click the delete button to

    delete the restaurant. System will prompt a message ask for confirmation. Staff will choose

    confirm and the system will delete the restaurant from database.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-2: If the data entered is invalid

    -System will prompt error messageA-3 Step S-3: If staff chooses not confirm to delete restaurant

    -System will not delete restaurant

    Use case name Search Restaurant

    Brief Description This use case enables the staff to find a restaurants information.

    Actor staff

    Main Flow:

    Actor Action System Responses

    1. Staff will enter the restaurant id 2. System will verify the restaurant id

    3. System will display the restaurant

    details.

    Alternative Flows:

    A-1 Step 2: If the restaurant id could not be found in database

    -System will print an error message

  • 8/12/2019 EngWeiSengAIA 201112F

    40/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 32

    Use Case Description for Maintain Order

    Use case name Maintain order

    Brief Description This use case enables the staff to record new order, change existing

    order and cancel order.Actor Student, order taking staff

    Main Flow:

    Actor Action System Responses

    1. Display Main Menu

    2.Staff selects Order Maintenance 3. Display sub menu: MakeOrder,

    Cancel Order.

    If Make Order is selected, the S-1: Make Ordersubflow is performed.

    If Cancel Order is selected, the S-2: Cancel Ordersubflow is performed.

    Subflows:

    S-1: Make Order

    System will display a data entry form and the staff will ask the order details from student.

    After that, staff will enter the order details into the form and the system will validate theentered order details. Next, system will perform the Calculate Total use case. Then only the

    system will store this order into database.

    S-2: Cancel Order

    Search Order use case will be executed first. Second, staff will ask student for confirmation

    of order cancellation. Then, staff will click the delete button to delete the order. System will

    prompt a message ask for confirmation. Staff will choose confirm and the system will delete

    the order from database.

    Alternative flows:

    A-1 Step S-1: If the input data is invalid

    -System will display error message

    A-2 Step S-2: If the data entered is invalid

    -System will prompt error message

    A-3 Step S-3: If staff chooses not confirm to delete order

    -System will not delete order

  • 8/12/2019 EngWeiSengAIA 201112F

    41/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 33

    Use case name Search order

    Brief Description This use case enables the staff to look for an order.

    Actor Order taking staff

    Main Flow:

    Actor Action System Responses

    1. Staff will enter the order id 2. System will verify the order id

    3. System will display the order detailsAlternative Flows:

    A-1 Step 2: If the order id could not be found in database

    -System will print an error message

    Use case name Calculate total

    Brief Description This use case is to calculate the total payment for an order.

    Main Flow System will first retrieve the price of the food and calculate every order

    line total by multiply the foods price with respective order lines

    quantity. After that, system will calculate the total payment of an order

    by total up every order line total.

  • 8/12/2019 EngWeiSengAIA 201112F

    42/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Figure2.3.3.1

    TheInitialClassDiagram

    2.3.3 Initial Class Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    43/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 35

    2.4 Fact Analysis

    2.4.1 General Descr ipt ion

    Product Function

    This Canteen and Catering Management System is developed to assist in the daily processes

    in canteen as well as the catering business. This system is trying to upgrade the manual nature

    of the current system into computerized manner as much as possible. It handles orders taken

    by students and any staff-relating matters including recruitment and resignation.

    In restaurant management, it allows registration of a restaurant and tracking of the payment

    and the contract(s) signed by a restaurant with the canteen management. The same goes with

    supplier maintenance. As for the catering business the canteen has, it keeps track the order

    and customer information and the payment(s) made between the customer and the canteen

    regardless it is one-time payment or partial payment. In addition, this system can generate

    and print useful reports such as order by restaurant report and supplier supply report to aid in

    decision making process which is intended to improve the business performance.

    Similar System Information

    This Canteen and Catering Management System is a stand-alone product. It does not integrate

    with other system(s) to provide services or functions for the canteen.

    User Problem Statement

    a.) Common Problems with Manual Workings

    This section concludes the common problems which are occurring with using manualmanner as seen in many of the cases in the current system.

    Since many of the processes are completely done through manual mean, therefore it

    exhibits the common problems of manual works. First, manual workings are less

    efficient. For example, processes such as staff retrieval or payment are slow and time-

    consuming. Second, manual workings tend to generate incorrect outputs due to

    mistakes done by human, especially mathematical calculation. Besides, manual

    system is having difficulty in generating useful reports such as monthly report or

    order by restaurant report which are helpful and essential in decision making. More

    importantly, most of the critical information such as order and sales are kept in

    physical document and the consequence will be severe to have lost these valuable

    information.

  • 8/12/2019 EngWeiSengAIA 201112F

    44/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 36

    b.)Canteen Ordering

    When taking an order for student, the order taking staff might miscalculate the total of

    the order. Besides, the staff also needs to remember whom those orders belong to

    otherwise there will be confusion. In addition, since the canteen order payment is

    done through coupon, so there is chance that the staff might forget to issue coupon or

    the students might lose their coupons on their way to make payment.

    c.) Canteen Order Payment

    Although there are three counters available in canteen, but during peak hour, the

    queue for payment can be long and cashiers will be occupied serving students. Hence,

    increase the opportunity for cashier to make errors. Besides, cashiers need to ensure

    that there is enough change for numerous transactions in one day.

    User Objectives

    Usability

    This system should be easy to use and less physical or intellectual skill required in order to

    learn the system. Besides, the time required to become moderately efficient in using the

    system should be short. To achieve this, the user interface design should follow principles

    such as consistency, familiarity, controllability and etc.

    Security

    The user data and information should be protected against any unauthorized access, unethical

    theft, misuse and etc. To prevent any unauthorized access, this system should incorporate role

    management which will enforce authentication and authorization on users actions so that the

    private and confidential data are kept safe. Besides, this system also installs the latest

    antivirus software to detect and remove vulnerability.

    Recoverability

    This system should be able to quickly recover from any fatal system failures. Therefore, data

    backup should be constantly performed in case there is system failure, the data can be

    restored instantly from backup so that its impact on users daily transactions is minimized.

    Other than that, the hardware contingencies should also be planned and whenever a system

    failure occurs due to hardware issue, the faulty hardware can replaced as soon as possible.

  • 8/12/2019 EngWeiSengAIA 201112F

    45/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 37

    Availability

    The system should able to deliver system services whenever the user requests. The system

    should be designed to include redundancy so that when the primary mean fails, the alternative

    mean can be up and run as soon as possible to continue deliver system services for users

    without their knowledge.

    General Constraints

    a.) Project Deadline

    This project is given one year development time from March 2011 until March 2012.

    b.)Language Requirement

    The whole software product shall be written using Java.

    c.) User constraint

    Users will not be placed with any restriction. Access level of user will adhere to the

    canteen management policy.

    d.)Software Platform

    Design standards, naming convention, software interface from operating

    system to database management system will use specific application package

    and constraints on program and data size so that this system can be built in

    multiple environments.

    This system will be developed using the fusion of agile and prototyping

    methodologies.

    System developers have to log any modification done to the system during its

    development cycle.

    This system must be appropriately and fully documented.

  • 8/12/2019 EngWeiSengAIA 201112F

    46/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 38

    2.4.2 External Interface Requirements

    User Interface

    Graphical user interface is a way of using and communicating with this Canteen and Catering

    Management System. Therefore, to make this system ease to learn and use, the following

    standards and guidelines will be adhered.

    Help Function:Help function is meant to provide assistance and information while using the

    system and is provided in almost every module in this system. It will be visualized as a small

    icon which acts as a button on the top left/right of a window. It also can be accessed through

    predefined shortcut key such as F1. Help content contains the information and guidelines

    which will aid a user to use the system to perform his/her operation in one particular

    subsystem. The content is varied and bound to each module in the system.

    Feedback:Feedback is provided to let the user knows the status of an operation. To some

    extent, this mechanism could place the user in control in the human-machine interaction. For

    example, the user will receive acknowledgement which could be in form of pop-out window

    from the system after an operation is completed. Besides, this feature does not only allowable

    in single way. Users could also provide their feedback of the service provided to the canteen

    management under this feature.

    Screen Layout:All of the screens or windows will be adopting a predefined theme in order to

    increase user familiarity and at the same time minimize user surprises. For example, the

    theme will be using colors that are comfort to the eyes in prolonged exposure. In addition to

    that, the color pairing in screen will ensure that it will not cause any eyestrain to the users.

    Messages in the system will be centrally displayed and it will not take too much place of the

    monitor but big for the users to read. Menu bar of every window will contain buttons which

    are elaborated its function in understandable context. Each screen in the system will try to

    utilize components such as check box, radio button, drop down list and etc other than textfield as possible to reduce the chance of users physical input. This design will lessen the

    possibility of error occurrence in user input since users manual input prompt to introduce

    mistake.

  • 8/12/2019 EngWeiSengAIA 201112F

    47/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 39

    Error Message:This system will provide informational and meaningful error message to

    enlighten the user of the mistake done. The error message shall be highlighted in red color

    which signifies warning with boldtype to grab users eyes. Besides showing error occurred

    and its the solution, the message will also include the contact detail if this error requires

    managements attention.

    Hardware Interface

    Mouse:The mouse provides a convenient way of inputting by moving the mouse to control

    the movement of the mouse pointer appears on a monitor screen. User can move the mouse

    pointer onto an object such as button, icon, menu and etc and then press the mouse button to

    perform the action that is associated with the selected object.

    Keyboard:Keyboard contains keys on the typing area such as letters of the alphabet, numbers,

    punctuations marks and others which allows the user to press to input data into the computer.

    Printer:Printer can produce text and graphics on physical medium like paper by executing

    the command issued from the system in users choice. Such printed information is referred as

    hard copy. It will be used to print the generated report or other useful information in hard

    copy.

    Server:A server controls access to the hardware, software, and other resources on a network.

    It provides a centralized storage area for programs, data, and information used in this system.

    To smoothly serve this systems request, the server adopted must have at least the following

    specifications.

    Multi-core Processor: Server will have minimum a multi-core processor to perform

    all the processes in canteens daily operations.

    High Capacity Hard Disk:This system will be using a server with high capacity

    storage to store the data required in canteens daily business.

  • 8/12/2019 EngWeiSengAIA 201112F

    48/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 40

    Modem:This system will be using modem to transmit data from computer into telephone or

    cable lines. It can convert the digital form of data from computer into analog waves which to

    be carried by telephone or cable lines.

    Hub:A hub will be used to connect multiple devices in this system together.

    Software Interface

    Operating System:This system can be deployed in Windows or Linux platforms

    Oracle Database:This system will be using the oracle database as the Database Management

    System.

    iReport:The reporting function in this system will be implemented in iReport which is also

    written in java.

  • 8/12/2019 EngWeiSengAIA 201112F

    49/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 41

    2.4.3 Functional Requirement

    Canteen Order Management Module

    User Requirement

    In this module, students are able to order their food and cancel their orders if necessary.

    System Requirement

    Add Order

    Input Student provides his/her order information to the order taking staff who

    will then enterit into the system. Validation check will be performed on

    inputted data to ensure the accuracy of the data. An error message will be

    promptedif there is any incorrect input data.

    Process System will calculatethe total amount for the order and then putthe

    order in a queue.

    Output A new order is finished added.

    Order Sequencing

    Process For a newly added order, system will enqueueit based on first come first

    serve basis into a queue which then will becooked by the chef after all of

    the orders in front of it have been served.

    Output The new order is addedto the queue.

    Search Order

    Input - Order taking staff will enterthe search criteria information such as order id

    tosearch for a particular order. To make sure there is no mistake on the

    inputted data, validation check will be performed and if there is any error

    exists, an error message will be printedon screen as notification.

    Process The system will searchfor the record based on the key provided.

    Output The related order information will be displayedon screen if there is any

    match found. If there is no match found, an informational window withappropriate and friendly message will be promptedto the user.

  • 8/12/2019 EngWeiSengAIA 201112F

    50/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 42

    Delete Order

    Input Search order process will be initiatedfirst.

    Process Staff can now deletethe selected record by clicking the provided delete

    button. A confirmation window will be promptedto ask for users final

    decision.

    Output The selected record is deletedfrom the system with a successful message

    indicates its removal.

    Total Calculation

    Process System will retrievethe price of a food for a particular order item in an

    order and multiplyit with the quantity ordered for this order item in this

    order. The total is then addedwith the next order item in this order. This

    process continues until all the order items in an order are covered.

    Output The total amount for this order is displayedon the right field by the system.

  • 8/12/2019 EngWeiSengAIA 201112F

    51/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 43

    Restaurant Maintenance Module

    User Requirement

    Canteen management can register a restaurant or change a restaurants information such as

    restaurant name in this module. Besides, this module can help managing the contract or

    payment the restaurant has with the canteen management.

    System Requirement

    Add Restaurant

    Input User entersrestaurant information into the system. Before it is been stored,

    these inputs will be validatedits accuracy and if any mistake found, a

    message will be printed.

    Process A new record is created in the system to storethis new restaurant.

    Output After this new restaurant is stored into the system, a window will pop out

    as a conclusion of the whole process.

    Search Restaurant

    Input User keys inthe restaurant information which he/she wishes to search. The

    inputs will be verifiedand if the inputs is incorrect, a dialog will be

    promptedto remind the user.

    Process Based on the information provided, the system will start searchfor that

    particular record.

    Output If the desired record is located, its relating information will be printedon

    screen. On the contrary, if the record is not found, a message will be

    displayto inform the user.

    Edit Restaurant

    Input System will start the searchprocess first.

    Process The whole record information is displayedon screen and user can now editonly certain fields as some of the fields are unchangeable. If any mistake

    occurs within, an error window will be pop outas a reminder.

    Output System will keptthe latest changes of the record and a message is printed

    at the end of the whole process.

  • 8/12/2019 EngWeiSengAIA 201112F

    52/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 44

    Delete Restaurant

    Input System will searchfor the desired record.

    Process Once the search is found, user can now clicking the delete button to delete

    the record. Before its actual deletion, user will be asked for confirmation by

    a dialog displayedby the system.

    Output The restaurant record is removedfrom the system and a window will be

    promptedto end this deletion process.

    Add Contract

    Input Canteen management will enterall the contract detail into the system and

    these inputs will be checkedto ensure its correctness. An error message will

    bedisplayedif these information contain defect.

    Process System will storethis new contract into database.

    Output A window will pop outsaying that this new contract already been stored

    into the system.

    Search Contract

    Input Canteen management will key inthe information which is specific per each

    contract. A validationcheck will be performed to make sure the information

    provided is logic and a dialog will be promptedif the information is not

    correct.

    Process System will use this information and start searchingfor this contract.

    Output System will displaythe contract detail if there is any result returned. Else,

    A message will be printedto tell the user that no record returned.

  • 8/12/2019 EngWeiSengAIA 201112F

    53/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 45

    Edit Contract

    Input System will start the searchingfirst.

    Process Canteen management can now modifythe contract detail as they like but

    not those information which cannot be refuted such as signed date which

    are left as read-only. Any mistake in modification will cause the system to

    displayan error message to correct the user.

    Output When the action has completed, the system will keepthe changes

    of this contract and printa window indicates that the modification is

    saved.

    Delete Contract

    Input The desired contract will be searchedby the system first.

    Process A confirmation message will be promptedto the user when he/she chooses

    to delete the contract by pressing the delete button.

    Output System will deletethe contract when user chooses yes in the previous

    confirmation dialog and another dialog will be displayedwhen the contract

    has been successfully removed.

    Execute Contract

    Input Search contract process will be initiatedfirst.

    Process User will clickthe button to execute the contract and a window will be

    promptedto ask for users confirmation.If users action is affirmative,

    thenthe selected contract will be executed and cannot be edited nor deleted

    hence.

    Output A message will be printedto indicate the success of executing a contract

    Add Payment

    Input Canteen management inputsthe payment information which will be

    validatedinto the system. If these information are proved to be false, an

    error message will be printedto ask user to re-input.

    Process These information inputted are storinginto the system.

    Output When the addition is done, system will display a dialog to the user

    which contains the summary of the action.

  • 8/12/2019 EngWeiSengAIA 201112F

    54/141

  • 8/12/2019 EngWeiSengAIA 201112F

    55/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 47

    Catering Maintenance Module

    Customer Maintenance Module

    User Requirement

    This module stores and maintains the customer details such as name, address, phone number

    and etc which can be used as reference for contacting the customer.

    System Requirement

    Add Customer

    Input Customer information is being enteredinto the system. A validationcheck

    will be performed on it before the actual storing of data. If there is any error

    found during data validation, an error message will be printed.

    Process New customer information will be storedinto the system.

    Output System will displaya dialog to inform the user that the new customer

    information is being successfully stored.

    Search Customer

    Input User will enterthe unique customer information such as customer id which

    identifies a customer in this subsystem. An error message will be printedif

    mistake is found on the inputted data during data validation.

    Process System will searchfor this particular customer using the key provided.

    Output The whole information of the customer is displayedon screen if it is

    located. Else if it cannot been located, system will printa dialog to

    enlighten the user.

    Edit Customer

    Input Customer information where user wishes to delete will be searchedfirst.

    Process User can now editthe fields which he/she would like to modify. Otherunchangeable fields are showed as read-only. A meaningful message

    will be printedto correct the user if he/she makes a mistake in changing

    the fields.

    Output System will storedthe modified record and a window will pop outafter

    the storing is complete.

  • 8/12/2019 EngWeiSengAIA 201112F

    56/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 48

    Delete Customer

    Input The desired record will be searchedfirst.

    Process By clicking the delete button, a dialog will pop out ask for users

    confirmation.

    Output System will deletethe record from it and displaya message after its

    removal.

  • 8/12/2019 EngWeiSengAIA 201112F

    57/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 49

    Order Maintenance Module

    User Requirement

    This module keeps track the catering order of the customer such as make order, changing

    order and cancel order.

    System Requirement

    Add Order

    Input User will enterthe order information into the system and before storing

    the data, a validationcheck will be carried out and if the inputted data is

    incorrect, a dialog will be promptedto warn the user.

    Process A new order record is storinginto the system.

    Output System will display a message after the record is correctlysavedinto the

    system.

    Search Order

    Input To search an order, user must key inthe information which uniquely

    identifies an order. Validationcheck will be conducted and an error message

    willpop outif mistake found.

    Process System will start the searchprocess for this particular order.

    Output If the record found, system will displaythe related order information and if

    the search returns no result, system will then displaya window to enlighten

    the user.

    Edit Order

    Input System will searchfor the record which a user wants to edit.

    Process User can now start to modifythe order but its unchanging fields are left

    intact. An error message will be printedto alert the user if he/she makes

    an inappropriate change.

    Output System will updatethis record and displaya dialog after the update isfinish.

  • 8/12/2019 EngWeiSengAIA 201112F

    58/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 50

    Complete Order

    Input The order which will be completed is searched first.

    Process User can now complete the order by selecting the completed status from

    the combo box and save the record.

    Output A window will be prompted to notify the user that the order is marked

    completed and cannot be modified and removed anymore.

    Cancel Order

    Input Record which the user wishes to remove will be searchedfirst.

    Process When the record is found, user can cancelthis record by selecting the

    cancel status.

    Output The order is cancelled and a message will be printed as the

    summary of this process execution.

    Total Calculation

    Process System will calculatethe total amount of an order based on the predefined

    algorithm. That includes order item and its quantity, service charge, and etc.

    Output Once the total amount of an order is calculated, it will be displayedin the

    corresponding field.

    Add Payment

    Input Payment details are enteredinto the system it will be validatedto ensure

    accuracy. If the inputs are faulty, system will printa dialog on monitor to

    grab user attention to the error.

    Process System will create a new record to holdthe new payment.

    Output New payment is storedwith a successful message printto the user.

  • 8/12/2019 EngWeiSengAIA 201112F

    59/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 51

    Search Payment

    Input User have to inputkey value which represent a payment and if the format of

    the value is inaccurate, user will be alertedby an error message.

    Process The searchprocess is executed by the system.

    Output The corresponding information of the payment is displayedon screen if it

    is located. If not, a dialog will be popped outto notify the user.

    Delete Payment

    Input System will advance the searchprocess first.

    Process User can now choose to deletethis record by clicking the delete button

    provided. Before the actual erasure, system will displaya dialog to get

    users affirmation.

    Output The record is erasedfrom the system. After that, a window will be shown

    to notify the user that the record is deleted.

    Post Payment

    Input System will searchthe payment a user wants to post.

    Process User will click the button to post this payment and a dialog will be

    displayedto get users affirmation.

    Output Payment is considered postedand henceforth cannot be amended and

    erased from system.

  • 8/12/2019 EngWeiSengAIA 201112F

    60/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 52

    Food Maintenance Module

    User Requirement

    This module allows the canteen or restaurants to store and maintain information of the food

    which are used in daily canteen order or catering order.

    System Requirement

    Add Food

    Input User will input the food information into the system. These information will

    be validated for its correctness. An error message will be printed if any of

    these information are wrong.

    Process System will create a record to keepthis new food information.

    Output System will printa message to the user once this food has been stored.

    Search Food

    Input Canteen management has to key inthe food information which will be

    used for searching. An error message will be printedif defect is found

    during data validation.

    Process System will initiate the searchingprocess.

    Output The food information are printedon screen once it is found.

    Edit Food

    Input The food which will be amended is searchedfirst.

    Process User can now proceed with modifyingthe record. Before it is saved into

    the database, system will make certain that the amendment is legitimate by

    showinga message if the alteration is illogical.

    Output The newest changes are savinginto the system and a window will be

    promptedto notify the user.

  • 8/12/2019 EngWeiSengAIA 201112F

    61/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 53

    Delete Food

    Input System will advance the searchprocess first.

    Process User can now choose to deletethis record by clicking the delete button

    provided. Before the actual erasure, system will displaya dialog to get

    users affirmation.

    Output The record is erasedfrom the system. After that, a window will be shown

    to notify the user that the record is deleted.

  • 8/12/2019 EngWeiSengAIA 201112F

    62/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 54

    Non-Functional Requirements

    Product Requirements

    Usability Requirements: Interface design is an important determinant of the usability

    of the system. To improve user experience, the design of the interface will be as

    simple and direct as possible. The content of the interface will be populated with only

    necessary component but not overloaded to test users memory. Icon/picture will be

    applied whenever suitable as a picture represents a thousand words. For example,

    printing button is better represented with a printer icon rather than text.

    Performance Requirements: To improve the performance of the system, the system

    shall posses the following qualities. Exception is allowed if dilemma occurs.

    high capacity short latency

    faster response time: The system must response to request in 30 seconds.

    high throughput

    Reliability Requirements: The mean time between failures shall exceed 3 months.

    Portability Requirements: This system shall be able to operate under Windows

    platform such as Windows 7 and Windows XP and Linux operating system.

    Process/Organizational Requirements

    Delivery Requirements

    This system shall be delivered in one year time.

    Implementation Requirements

    The server shall have at least 2 to 4GB RAM and a processor with clock speed of

    minimum 3.0 GHz to run this system.

    Storage media such as hard disk with 1TB capacity will be used in this system to store

    the information.

  • 8/12/2019 EngWeiSengAIA 201112F

    63/141

  • 8/12/2019 EngWeiSengAIA 201112F

    64/141

    Canteen & Catering Management System Chapter 2: Requirement Analysis

    Project 56

    2.5 Chapter Summary

    During system analysis phase, interview and observation has been used to

    gather facts. Interviewing is a direct and efficient way of gathering user requirements.

    During interview, developers have the chance to face-to-face interact with the system end

    users. The users can clarify their requirements in detail and any ambiguities can be

    cleared instantly through direct communication. However, in interview, the subjects

    opinion may be biased and it may affect the result. Therefore, a broader coverage of

    system users should be considered but it is time consuming.

    Observation also is an efficient way of collecting user requirements as the

    developers can physically witness or involve in the real life business processes. That way,

    they can fully understand and perceive how a business transaction is carried out in a

    specific company as different companies have different way of doing business. But in

    observation, the subjects might feel uncomfortable and unnatural of being observed and

    subsequently, they may not at their best performance and it will affect the observation

    outcome as well.

  • 8/12/2019 EngWeiSengAIA 201112F

    65/141

  • 8/12/2019 EngWeiSengAIA 201112F

    66/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 58

    SSyysstteemmDDeessiiggnn

    3.1 Introduction

    In this chapter, the various areas of design for the new proposed system are included.

    These include the user interfaces, database, system processes, report design and etc. Some of

    the techniques applied in this chapter are ERD which is used to plan and design the systems

    database, sequence diagram which is used to model the system processes, state chart diagram

    which is used to model an objects state transition throughout the system and etc.

    3.2 System Design

    3.2.1 Sequence Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    67/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 59

  • 8/12/2019 EngWeiSengAIA 201112F

    68/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 60

  • 8/12/2019 EngWeiSengAIA 201112F

    69/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 61

  • 8/12/2019 EngWeiSengAIA 201112F

    70/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 62

  • 8/12/2019 EngWeiSengAIA 201112F

    71/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 63

  • 8/12/2019 EngWeiSengAIA 201112F

    72/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 64

  • 8/12/2019 EngWeiSengAIA 201112F

    73/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 65

  • 8/12/2019 EngWeiSengAIA 201112F

    74/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 66

    Final Class Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    75/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 67

    State Chart Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    76/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 68

    Deployment Diagram

  • 8/12/2019 EngWeiSengAIA 201112F

    77/141

    Canteen & Catering Management System Chapter 3: System Design

    3.3 Screen or Interface Design

    The user interfaces in this system were designed according to the following principles:

    User Familiarity

    This system has used terms and concepts which are interpretable by non-technical user who

    may have not or little computer knowledge. Therefore, the system users can find that the

    system is easy to learn to use. For example, in the following screenshot taken from the

    systems user interface, the insert function are as described as Save rather than using

    Insert which could mean different to the system user.

    Consistency

    The user interface in this system was consistently designed to make the users feel that they

    are using the same system. Besides, some of the system functions can be performed in the

    same way from different modules. For example, in this system, the user interface layout in

    the food maintenance module is identical to the layout in staff maintenance module. Not that

    they share the same appearances, but also the same feature. By clicking the summary view

    button in either module, the system will display the summary view of the respective module

    in table format

  • 8/12/2019 EngWeiSengAIA 201112F

    78/141

    Canteen & Catering Management System Chapter 3: System Design

  • 8/12/2019 EngWeiSengAIA 201112F

    79/141

    Canteen & Catering Management System Chapter 3: System Design

    Recoverability

    This system allows the users to recover or undo from their unintentional mistakes or errors so

    that unwanted outcome will not occur to user due to their accidental move. For instance, the

    cancel button in the food maintenance module let the user to abort their current action and

    restore all default information.

    Before click edit, the food name is Fried Rice and the quantity on hand is 100.

  • 8/12/2019 EngWeiSengAIA 201112F

    80/141

    Canteen & Catering Management System Chapter 3: System Design

    While editing, the food name is changed to Pineapple Fried Rice and the quantity on hand is

    changed to 200.

  • 8/12/2019 EngWeiSengAIA 201112F

    81/141

    Canteen & Catering Management System Chapter 3: System Design

    Click yes to abort the editing

    The original information are restored

  • 8/12/2019 EngWeiSengAIA 201112F

    82/141

  • 8/12/2019 EngWeiSengAIA 201112F

    83/141

    Canteen & Catering Management System Chapter 3: System Design

  • 8/12/2019 EngWeiSengAIA 201112F

    84/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 76

    3.4 Database Design

    Entity Relationship Diagram (ERD)

  • 8/12/2019 EngWeiSengAIA 201112F

    85/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 77

    Data Definition

    Table Field Data Type Description

    Business Partner

    BusinessPartnerID Number(*,0) Primary key of

    Business Partner

    table

    BusinessPartnerName Varchar2( 50

    BYTE)

    Name of the

    business partner

    BusinessPartnerAddress Varchar2( 100

    BYTE)

    Address of

    business partner

    EmailAddress Varchar2( 30

    BYTE)

    Email address of

    business partner

    ContactNo Char(10 BYTE) Contact number of

    business partner

    BusinessPartnerDescription Varchar2( 100

    BYTE)

    Description of

    business partner

    BusinessPartnerType Varchar2( 10

    BYTE)

    Type of business

    partner (Customer

    or Restaurant)

    BusinessPartnerIsDeleted Char(1 BYTE) Flag to reflect

    whether a business

    partner is removed

    from this table

  • 8/12/2019 EngWeiSengAIA 201112F

    86/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 78

    Table Field Data Type Description

    Contract

    ContractID Number(*,0) Primary key of

    Contract table

    SignedDate Date Date when a contract

    is signed

    ExpiryDate Date Expiry date of a

    contract

    ContractAmount Number(8,2) Total amount of a

    contract

    ContractDescription Varchar2( 3000

    BYTE)

    Description of a

    contract

    BusinessPartnerID Number(*,0) Foreign key which

    references business

    partner table

    IsEffective Char(1 BYTE) Flag to reflect a

    contract is effective

    ExpiryStatus Varchar2 (7 BYTE) Reflect the expiry

    status of a contract

    ContractPeriod Number(*,0) A number which

    indicates a contract

    period in month

  • 8/12/2019 EngWeiSengAIA 201112F

    87/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 79

    Table Field Data Type Description

    Food

    FoodID Number(*,0) Primary key of Food

    table

    FoodDescription Varchar2( 100 BYTE) Description of a food

    FoodPrice Number(4,2) Unit price of a food

    FoodQuantity Number(*,0) Quantity on hand of a

    food

    BusinessPartnerID Number(*,0) Foreign key which

    refer to restaurant

    (business partner)

    table

    FoodName Varchar2( 50 BYTE) Name of a food

    FoodOwner Varchar2( 10 BYTE) Indicates the owner of

    a food

    FoodImage Blob Food image which

    stores in binary large

    object format

    FoodType Varchar2( 8 BYTE) Type of food (canteen

    or catering)

    SerialNo Varchar2( 50 BYTE) Number which is

    transformed into

    barcode and used to

    identify a food

  • 8/12/2019 EngWeiSengAIA 201112F

    88/141

  • 8/12/2019 EngWeiSengAIA 201112F

    89/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 81

    Table Field DataType Description

    Staff

    StaffID Number(*,0) Primary key of staff

    table

    StaffName Varchar2( 50 BYTE) Name of a staff

    StaffAddress Varchar2(150 BYTE) Address of a staff

    StaffIC Varchar2( 14 BYTE) IC of a staff

    StaffPosition Varchar2( 30 BYTE) Position of a staff

    StaffSalary Number(6,2) Salary of a staff

    JoinedDate Date Date when a staff is

    employed

    StaffIsDeleted Char(1 BYTE) Flag to reflect whether

    a staff is removed

    from this table

    StaffContact Varchar2( 12 BYTE) Contact number of a

    staff

  • 8/12/2019 EngWeiSengAIA 201112F

    90/141

  • 8/12/2019 EngWeiSengAIA 201112F

    91/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 83

    Table Field Data Type Description

    Payment

    PaymentID Number(*,0) Primary key for payment

    table

    Deposit Number(8,2) Deposit amount for a

    payment

    DepositPaidDate Date Date when deposit is paid

    Balance Number(8,2) Balance of payment which

    needs to be cleared

    ClearedDate Date Date when a payment is

    cleared

    IsCleared Varchar2( 7 BYTE) Status indicates whether a

    payment is clear or due

    IsPartialPayment Varchar2( 1 BYTE) Indicates whether a

    payment is full payment or

    partial payment

    StaffID Number(*,0) Foreign key which

    references staff table

    TotalAmount Number(8,2) Total amount of a payment

    BusinessPartnerID Number(*,0) Foreign key which refer to

    restaurant (business

    partner) table

    ContractID Number(*,0) Foreign key which refer to

    contract table

    OrderID Number(*,0) Foreign key which refer to

    order table

    CreatedDate Date Date when a payment

    record is created

  • 8/12/2019 EngWeiSengAIA 201112F

    92/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 84

    Normalization

    BusinessPartner(BusinessPartnerID,BusinessPartnerName, BusinessPartnerAddress,

    EmailAddress, ContactNo, BusinessPartnerDescription, BusinessPartnerType,

    BusinessPartnerIsDeleted)

    Contract(ContractID, SignedDate, ExpiryDate, ExpiryStatus, ContractAmount,

    ContractDescription,BusinessPartnerID, IsEffective, ContractPeriod)

    Food(FoodID, FoodDescription, FoodPrice, FoodQuantity, BusinessPartnerID, FoodName,

    FoodOwner, FoodImage, FoodType, SerialNo)

    OrderLine(OrderLineID, FoodID, Quantity, OrderID, LineAmount)

    Orders (OrderID, OrderDate, TotalAmount, StaffID, BusinessPartnerID, OrderStatus,OrderType)

    Staff (StaffID, StaffName, StaffAddress, StaffIC, StaffPosition, StaffSalary, JoinedDate,

    StaffIsDeleted, StaffContact)

    Users(Username, StaffID, BusinessPartnerID, UserRole, UserPassword, Email,

    SecurityAnswer, SecurityQuestion)

    Payment (PaymentID, Deposit, DepositDate, Balance, ClearedDate, IsCleared,

    IsPartialPayment, StaffID, TotalAmount, BusinessPartnerID, ContractID, OrderID,

    CreatedDate)

  • 8/12/2019 EngWeiSengAIA 201112F

    93/141

    Canteen & Catering Management System Chapter 3: System Design

    3.5 ReportFormat

    Sample Report

    Report Title

    Report Date

    Food Name Quantity Line Amount (RM)

    XXXX XXXX XX XX.XX

    Example: 30 characters withmaximum length

    Example: The Report Datewould be followed by whathas parameterized beforethe report is generated.

  • 8/12/2019 EngWeiSengAIA 201112F

    94/141

    Canteen & Catering Management System Chapter 3: System Design

    Sample Report

    Report Title

    Report Date

    Signed Date Expiry Date Contract Amount

    XX/XX/XX XX:XX AM XX/XX/XX XX:XX AM XXXX

    Restaurant Name

    XX/XX/XX XX:XX AM XX/XX/XX XX:XX AM XXXX

    Restaurant Name

    XX/XX/XX XX:XX AM XX/XX/XX XX:XX AM XXXX

    XX/XX/XX XX:XX AM XX/XX/XX XX:XX AM XXXX

    Example: The Report Datewould be followed by whathas parameterized beforethe report is generated.

    Example: 50 characters withmaximum lengthit has used Group By methodto query in SQL

  • 8/12/2019 EngWeiSengAIA 201112F

    95/141

    Canteen & Catering Management System Chapter 3: System Design

    Project 87

    3.6 Chapter Summary

    In system design, the development team was struggle in choosing and/or working on a design

    in system processes, user interface, database and etc. A lot of consultation with the project

    supervisor has been conducted to resolve these issues. Besides her, a few senior analysts

    experience and opinions were also taken into account in designing the areas mentioned in this

    system.

  • 8/12/2019 EngWeiSengAIA 201112F

    96/141

    Canteen & Catering Management System Chapter 4:Programming

    Project 88

    Chapter 4

    Programming

  • 8/12/2019 EngWeiSengAIA 201112F

    97/141

    Canteen & Catering Management System Chapter 4:Programming

    Project 89

    PPrrooggrraammmmiinngg

    4.1 Introduction

    This chapter discusses the programming language, architecture and various programming

    tools used during system development. It also justifies the reasons for using those selected

    tools, design, language and etc. In addition, it is attached with few listing of codes which

    adopt the selected design.

    4.2 Programming Tools

    4.2.1 Programming language used

    The system in this project was developed using Java languagesinceout of the handful

    standalone application development languages, Java is object-oriented nature. Programming

    language which is object-oriented has several advantages over procedural programming

    language. Object-oriented programming language encourages code reuse by just defining an

    object once but allows the creation of multiple instances from it. Besides, object-oriented

    programming language has several concepts such as inheritance, polymorphism and etc.

    which simplify the programming as well as the maintenance task. With inheritance, the

    existing features are easy to extend and customize in a way which best suit the context in the

    application. As for polymorphism, it introduces abstraction where a client does not need toknow the implementation details of a method but only the interface and its invocation details.

    4.2.2 Netbeans IDE

    Netbeans IDE is used in this project program development. Since this system is

    developed using Java language, therefore, Netbeans IDE is chosen as it is designed for Java

    application development. NetBeans IDE is free and open-source, so, there is a lot of

    information about it available on the Internet and it is convenient to find support for it.

    Netbeans IDE also provides tools and features necessary for program development.For example, Swing GUI Builder allows the programmer to quickly and easily design the UI

    for the system by simply dragging and positioning the GUI components onto the canvas

    without writing a single code.

  • 8/12/2019 EngWeiSengAIA 201112F

    98/141

  • 8/12/2019 EngWeiSengAIA 201112F

    99/141

    Canteen & Catering Management System Chapter 4:Programming

    Model

  • 8/12/2019 EngWeiSengAIA 201112F

    100/141

  • 8/12/2019 EngWeiSengAIA 201112F

    101/141

  • 8/12/2019 EngWeiSengAIA 201112F

    102/141

    Canteen & Catering Management System Chapter 5: Software Testing

    Project 94

    Chapter 5

    Software Testing

  • 8/12/2019 EngWeiSengAIA 201112F

    103/141

    Canteen & Catering Management System Chapter 5: Software Testing

    Project 95

    SSooffttwwaarreeTTeessttiinngg

    5.1 Introduction

    This chapter documents the testing processes and testing techniques applied during

    system testing. At the end, test specifications, the documentation of the whole testing process

    is added for reference. The specific testing techniques that this project has adopted are black

    box testing, white box testing and regression testing.

    5.2 Test Process

    5.2.1 Unit Testing

    Unit Testing is performed to test the workability, efficiency of a method or portion ofcode. When a method or an algorithm is written or developer wishes to test a portion

    of code, he/she will run and test on those particular codes, method or algorithm. The

    output may be meaningless to the system users, but it may prove that the method,

    algorithm or code is working fine and efficiently. Sometimes, echo is used to make

    certain the correctness of the output of the method, algorithm or code.

    5.2.2 Module Testing

    When a module has done developed, a module testing will be conducted on the

    finished module to ensure the module developed contains no bugs and functions as

    required. In module testing, the developer responsible will test the completed module

    and even if it pass the test, but its function may not meaningful to user as it covers

    only a small portion of the whole system.

  • 8/12/2019 EngWeiSengAIA 201112F

    104/141

    Canteen & Catering Management System Chapter 5: Software Testing

    Project 96

    5.2.3 Integration Testing

    Integration Testing is performed upon the system to ensure that the modules stay

    functional after combine and there are no new bugs introduce due to the modules

    integration.

    After a few modules has been integrated, the developer will perform testing on

    modules developed by him/her and make sure that those modules are behaving the

    same as before integration. When a developer done testing and no errors are

    discovered, the other programmers will do their modules. After all developers have

    tested their modules, a full testing will be performed on the integrated modules with

    the correct logic and sequence to ensure that the integrated modules are workable and

    meaningful.

    5.2.4 System Testing

    System testing is performed when a number of modules have integrated to form a

    functional, meaningful system. At system testing, the function of the system as a

    whole was ensured and the correct sequence of real life business process was

    employed. System testing is a huge task and time consuming which can be subdivided

    into smaller, different testing types.

  • 8/12/2019 EngWeiSengAIA 201112F

    105/141

  • 8/12/2019 EngWeiSengAIA 201112F

    106/141

    Canteen & Catering Management System Chapter 5: Software Testing

    Project 98

    5.4 Test Specifications

    Module name : Food Maintenance

    No Objective /

    Test Cases

    Test Data Expected Result Test

    Result

    (Y/N)

    Remark

    1 To test Detail View

    button able to display

    select