SlideShare a Scribd company logo
1 of 27
RECOMMENDATIONS
                                       REGARDING TO
                         E-MENU DEVELOPMENT

                                        F O R D EVEL O PM EN T O F

                            RESTAURANT E - MENU PROTOTYPE


                                                                 Created by      Traitet Th.
Project:   E-menu on iPad for Thai restaurant
                                                                 Created Date    16 Aug 2012

Topic:     Description of research & discussion of outcomes      Revised Date    7 Sep 2012

                                                                 Revision No.    1.0
Content:   Artifact of description of research & discussion of
                                                                 Document Name   D04-001
           outcomes
1 ) SO F T WA R E DEV EL O P MEN T P R O C ESS




     Based on
         - RAD (Rapid Application Development)
         - Prototyping
         - Direct Observation
                                2
SOFTWARE DEVELOPMENT PROCESSES FOR E-MENU APPLICATION
                    BASED ON RAD, PROTOTYING AND DIRECT OBSERVATION

                           Design the
  Make list of                              Design UML                             Design
                           database                          Design Class
 requirements                                Use Case                             Workflow




                                                                                                                                   Observation throughout the development process
                           using ER-                           Diagram
                                             Diagram                              Diagram
                            diagram




                                                                                                 Refine documents
                                             Design & develop e-menu web
                                                                                Test System
Develop the first          Create the            and Web services for
                                                                                 e.g. Web
  prototype                database           the first prototype on .NET
                                                                                 Services
                                                 (ASP.NET Language)
                                                                                                                    Observation

                                                               Modify list of requirements &
Present the first              Get feedbacks from
                                                                   design documents,                                   at a
   Prototype                 the restaurant manager
                                                                    and Web services

                                                                                                                    Thai Dining
                                                                                   Create
                          Develop the final prototype by         Develop
Develop the final                                                                document to
                                 Xcode on iPad                web for back
   Prototype                                                                         test
                            (Objective-C Language)           office on .NET
                                                                                requirements                        Restaurant


                                                                 Interview restaurant staff;                           in UK
Present the final          Present the final prototype by
                                                             restaurant manager, waiting staff
   Prototype             Videos, and Demo on iPad & Web
                                                                         and chefs



    Make                     The users’ perceptions          Recommendations of e-menu
Recommendation              on the e-menu prototype            application development
      s                                                                                                                        3
2 ) SYST EM A N A LY SIS & DESIG N DO C U MEN T S




                           4
5   2 .1 ) USE C A SE DIA G RA M




              Diagram

              •   Use Case Diagram

              Description
              - The use case diagram is an
                UML modeling tools for
                capturing business requirements

              - It can describe what e-menu
                system does and the views of
                what users needs (Kendall
                2011)

              Benefit
              • It enabled the learner to
                understand the scope and
                features of systems operated by
                external users.
6   2 .2 ) C L A SS DIA G RA M




          Diagram

          •   Class Diagram

          Description
          - Class diagram is data model of
            objected-oriented concept,
            which aims to enhance software
            quality (Revelle, Gethers and
            Poshvanyk 2011)

          Benefit
          • It enabled the learner to take
            advantages from an object-
            oriented design e.g. reusability,
            abstraction, module integration.
7   2 .3 ) ER DIA G RA M




      Diagram

      •   ER Diagram

      Description

      - ER diagram is data modeling tool
        for linking between data object in
        the real-world and data modeling
        details (Rob, Coronel, and Crockett
        2008).

      Benefit
      • ER modelling can reduce ambiguity
        of communication e.g. defining
        primary keys, foreign keys,
        relationships and cardinalities.
        (Connolly and Begg 2011)
8                                   2 . 3 . 1 R E L AT I O N A L D ATA B A S E




    Relational database was designed based on the ER-diagram
9                                                                    2 .3 .2 TA B L ES & C O L UMN S IN DATA BASE



                                                                                                                                                                                                   TT_SERVICE_REQ
No       TM_MENU             Data Type   TM_MENU_CATEGORY          Data Type       TM_TABLE            Data Type         TT_ORDER              Data Type     TT_ORDER_DETAIL           Data Type                        Data Type
                                                                                                                                                                                                        UEST

1 MenuNo                 nvarchar(10)    MenuCategoryNo         nvarchar(10)     TableNo         nvarchar(10)      OrderNo               nvarchar(10)      OrderDetailNo           nvarchar(10)    ServiceNo          nvarchar(10)


2 MenuCategoryNo         nvarchar(10)    MenuCategoryName       nvarchar(255)    TableDescription nvarchar(255)    OrderTableNo          nvarchar(10)      OrderNo                 nvarchar(10)    ServiceOrderNo     nvarchar(10)


3 MenuName               nvarchar(255)   MenuCategoryType       nvarchar(50)     TableSeatQty    int               OrderStatus           nvarchar(50)      OrderDetailMenuNo       nvarchar(10)    ServiceTableNo     nvarchar(10)

                                         MenuCategoryDescriptio
4 MenuDescription        nvarchar(MAX)                          nvarchar(999)    TableStatus     nvarchar(10)      OrderCustomerQty      int               OrderDetailMenuDesc     nvarchar(MAX)   ServiceRequestTime datetime
                                         n

                                         MenuCategoryComment
5 MenuPrice              float                               nvarchar(255)       TableComment1 nvarchar(255)       OrderOpenedTime       datetime          OrderDetailQty          float           ServiceType        nvarchar(50)
                                         1

                                         MenuCategoryComment
6 MenuTasteStatus        nvarchar(50)                        nvarchar(255)       TableComment2 nvarchar(255)       OrderCalledMainCourse datetime          OrderDetailPrice        float           ServiceStatus      nvarchar(255)
                                         2

                                         MenuCategoryComment
7 MenuRecommendStatus nvarchar(50)                           nvarchar(255)       TableComment3 nvarchar(255)       OrderBilledTime       datetime          OrderDetailStatus       nvarchar(255)   ServiceComment1    nvarchar(255)
                                         3

8 MenuStatus             nvarchar(50)                                                                              OrderClosedTime       datetime          OrderDetailedTime       datetime        ServiceComment2    nvarchar(255)


9 MenuComment1           nvarchar(255)                                                                             OrderBookingNo        nvarchar(255)     OrderDetailCookedTime datetime          ServiceComment3    nvarchar(255)

                                                                                                                                                           OrderDetailDeliveriedTim
10 MenuComment2          nvarchar(255)                                                                             OrderMemberNo         nvarchar(255)                              datetime       ServiceComment4    nvarchar(255)
                                                                                                                                                           e

11 MenuComment3          nvarchar(255)                                                                             OrderComment1         nvarchar(255)     OrderDetailBy           nvarchar(255)


12 MenuComment4          nvarchar(255)                                                                             OrderComment2         nvarchar(255)     OrderDetailComment1     nvarchar(255)


13 MenuComment5          nvarchar(255)                                                                             OrderComment3         nvarchar(255)     OrderDetailComment2     nvarchar(255)


14 MenuComment6          nvarchar(255)                                                                             OrderComment4         nvarchar(255)     OrderDetailComment3     nvarchar(255)


15 MenuLastUpdatedTime   datetime                                                                                                                          OrderDetailComment4     nvarchar(255)


16 MenuCreatedBy         nvarchar(50)




                                    Tables and columns were designed based on the ER diagram
10   2 .4 ) WO RKF L OW DIA G RA M




                 Diagram

                 •   Workflow diagram

                 Description

                 - Work flow diagram describes
                   processes when customers come
                   until they leave from restaurant.

                 Benefit
                 • The work flow enabled the learner
                   be able to confirm the business
                   process with the restaurant
                   manager.

                 • It also was used to design statuses
                   of ordering and requesting services
                   as shown in the next slide.
11                                                                               2 .4 .1 ) STAT U SES O F O R DER IN G
                                                                                                   A N D R EQ U EST IN G SERV IC ES

                                                                                                                                TM_MENU_CATEGOR
Table TT_ORDER_DETAIL                                       Table        TT_ORDER                                       Table
                                                                                                                                       Y
                                     Description                                                       Description                                           Description
Field     OrderDetailStatus                                 Field        OrderStatus                                    Field     MenuCategoryType

 1       10_ORDERING          Customer is ordering           1      10_OPENNED             Order or table is opened      1      10_STARTER              Starter

                                                                                                                                                        Main course / Main
 2       11_CONFIRMED         Order is confirmed             2      90_COMPLETED           Order or table is closed      2      20_MAIN_DISHES
                                                                                                                                                        dishes

 4       30_COOKING           An menu item is cooking                                                                    4      30_DRINK                Drinks

 5       40_SERVING           An menu item is serving                                                                    5      40_SWEET                Sweet

                              An Menu item is already
 6       41_SERVED
                              served.


 Table               TM_MENU                                                       Table                 TM_MENU
                                                        Description                                                                           Description
  Field           MenuTasteStatus                                                  Field             MenuRecommend
     1                   1                Mild                                         1   01_TOP_SELLING                 This item is a top selling menu.
     2                   2                Medium hot and spicy                         2   02_CHEF_RECOMMENDED            This item is a chef's recommended menu.
                         3                Extreme hot and spicy


 Table             TT_SERVICE                           Description                Table                TT_SERVICE
                                                                                                                                              Description
  Field             ServiceType                                                    Field                ServiceStatus
     1     10_REQUEST_WAITER              Request Waiter                               1   OPENNED                        Service is being requested.
           20_REQUEST_MAIN_COURS
     2                           Request main course                                   2   COMPLETED                      Service is completed.
           E
     3     30_REQUEST_BILLING             Request billing


                              Status of ordering and requesting services generated from workflow diagram
                                        were used to design the database and e-menu application.
3 ) T EC HN IC A L DESIG N F O R E - MEN U



     Content
         • Initial e-menu Design
         • MVC (Model-View-Controller) Design
         • Communication between .NET & iOS Platforms

                             12
T HIS SEC T IO N F O C U S
13
     O N T EC HN IC A L SY ST EM DESIG N



                         Technical system design

                    1.    E-menu application on iPad for
                          restaurant customers
                    2.    E-menu Web services
                    3.    E-menu Website for restaurant
                          staff (Back office)
1 ) IN IT IA L DESIG N
   14
                                                  O F E - MEN U P R O TO T YP E


                                                        Main Features on iPad for

                     E-MENU WEB       E-MENU APP        customers
    E-MENU             SERVICES         ON IPAD         1. Select menu categories
   DATABASE
                     USING ASP.NET    USING XCODE       2. Show details of food and drinks
                                                        3. Confirm order
                                                        4. Check order status
                                                        5. Request services
                                                              •     Request a waiter
                                                              •     Request main course
                    E-MENU WEBSITE
                                                              •     Request a payment
                    FOR RESTAURANT
                         STAFF
                     USING ASP.NET                      Main features on website for staff
SQL Server 2005        ASP.NET        iOS Platform
                                                        1. Manage tables
                       Platform
                                                        2. Operate orders
                                                        3. Operate service requests
          Develop using ASP.NET and Xcode
2) MODEL-VIEW-CONTROLLER (MVC) DESIGN



Database                            Model                                                  Model

 Physical      Model Classes                Web services                           Model Classes
   DB                                                             Web Service Manager
              Accessing data               Provide                -     Generate SOAP message (Create XML
              in the database           Web Services to
                                        other platforms                 data)
               Provide data logic
  Microsoft                                                       -     Translate SOAP message (Parse XML
                 e.g. selecting,        Including data and
 SQL Server
              deleting, updating,                                       data)
                                        business logic e.g.
              inserting data from          GetMenuList            -     Encapsulate communication with Web
                 the database
                                                                        Services



                        Controller & View                                       Controller & View
                  Controller                   View                      Controller                  View
  DBMS:
 Database      Provide business                Provide UI for         Provide business               Provide UI for
Management     logic for UI (User               restaurant            logic for UI (User              restaurant
  System          Interfaces)                      Staff                 Interfaces)                  customers


 DBMS                           Platform                                               Platform
SQL Server                 ASP.NET Platform                                       Apple’s iOS Platform
  2005            (Developing tool: Visual Studio 2010)                         (Developing Tool: Xcode)

                        (Microsoft ASP.NET Team 2009; Mac Developer Library 2012)
3 ) C O M M U N I C AT I O N B E T W E E N
  16                                                   AS P. N E T & I O S P L AT F O R M S
                                                                U S I N G W E B S E RV I C E S



  Platform
                                                      Platform iOS (Xcode)
  ASP.NET

                                                                                                    VIEW &
                                              MODEL                                               CONTROLLE
Web Services                                                                                           R
                           Class: WebServiceManager          Class: ServiceUtils                  Classes for UI
 (ASP.NET)
                                       Purposes             Purposes:                          Purposes
                            SOAP                            • To convert            Request
               Request
                          Generator    - To generate          communication with               • To provide
                          (Based on      SOAP message         Web Service from                   application
                                         to request           asynchronous to        Function    User Interface
                XML         XML)                                                    Parameters
                                         consuming Web        synchronous                        (UI) for
                                         services           • To combine all                     restaurant
                                                              functions provided by              customers
                                       - To receive           Web Services
                                         SOAP message
               Respons   SOAP Parser     or response from   Benefits:               Respons
                  e       (Based on      Web services       • Make it easy to          e
                            XML)         and translate to     communicate with
                XML                                                                 Function
                                         Xcode variables      Web Services         Return Value
                                                              (encapsulation)
4 ) X C O DE DEV EL O P MEN T




                            17
18                                  4 . 1 ) C L AS S E S D E V E L O P E D I N X O C D E




                              No      Folder Name      Class                            Description


                                                                   The classes in this folder are used for
                                                                   communication with Web Services e.g. generating &
                               1   10_WebServices    All classes
                                                                   parsing XML, and converting data types between
                                                                   Web services and Xcode


                                                                   This Class contains all web services functions, which
                                                                   are easy to use. The main objectives of this class is
                                                    ServiceUtils   to encapsulation using web services and to convert
                                                                   communication with web services from
                                                                   asynchronous to synchronous.



                               3   20_Utils                     This class contains static variables, such as Order,
                                                    SharedClass TableNo and ArrayMenuByCategory, to use as
                                                                public variables.


                                                                   This class collects general reusable functions e.g.
                                                                   GettingStringDataFromSettingFile,
                                                    ServiceUtils
                                                                   ConvertTableNoToNo and ConvertNoToTableNo
                                                                   functions.



     Classes in Folder 10_WebServices are used for communication with Web Services (ASP.Net)
19                              4 .2 ) VIEW C ON TR OLLER IN XC OD E



                           No    Folder Name             Class                          Description


                                                                        Controls user interfaces of the "Menu
                                               Class01_MenuDetail
                                                                        Detail" screen

                                                                        Controls user interfaces of the table in
                                               Class02_EmenuCell
                                                                        "Main Menu" screen

                                30_ViewContro                           Controls user interfaces of the "Confirm
                            1                 Class10_ConfirmOrder
                                     ller                               Order" screen

                                                                        Controls user interfaces of the "View
                                               Class11_ViewOrder
                                                                        Order" screen (Confirm Order)

                                                                        Controls user interfaces of the "Service
                                               Class13_ServiceRequest
                                                                        Request" screen

                                                                        Control user interfaces of the "List of
                                               MasterViewController
                                                                        categories" screen
                            2     NMENU29
                                                                        Control user interface of the "Main
                                               DetailViewController
                                                                        Menu" screen


     View Controller Classes are used for display and controlling user interfaces on iPad.
4 .3 ) VIEW C O N T R O L LER IN XC O D E
20
                                                       ( C O N T.)

               Main Menu             Menu Detail    Service Request




            Menu Categories         Confirm Order     View Order




     Example of user interfaces on iPad
21                                                                                 4 .4 ) STORY B OA R D




                                                                        Main menu screen                     Menu Detail Screen




                                           Service Request
                                               Screen




                                                                               Service Request           View Order Screen
                                                                                   Screen                 (Confirm Order)




     Storyboard contains a hierarchy of objects for each unique screen that an application is going to display (Ray 2012).
4.5) APPLICATION SETTING
  22
                                                                  PREFERENCES




Setting Bundle




                 The list file                                   Setting preferences on iPad


                         Design of Setting preferences on iPad
LIST OF WEB SERVICES & PURPOSES




                 23
24                                                                LIST OF WEB SERVICES



No               Web Services                                          Description
1    AddOrderDetail                     Add an order item
2    AddServiceRequest                  Add an service request e.g. Call a waiter
3    CloseOrderByTable                  Close order by table no
4    DeleteOrderDetail                  Detail an order item
5    FindAvailableOrderByOrderTableNo Find available order by a table no
6    FindOrder                          Find order info. by an order no
7    FindOrderByCondition               Find order info. by a condition e.g. Order Status = ’90_COMPLETED’
8    FindOrderDetail                    Find order item info. by an order item no
                                         Find order item info. by a condition e.g. Order item status =
9    FindOrderDetailByCondition
                                        ’11_CONFIRMED’
10   FindServiceRequest                 Find service request info. by a service request no
                                         Find service request info. by a condition e.g. service status =
11   FindServiceRequestByCondition
                                        ‘COMPLETED’
12   GetCategoryTypeList                Get types of menu categories e.g. 01_STARTER, 02_MAIN_DISHES
13   GetHelloWorld                      Get Hello world string. (For the first test)
14   GetMenuCategoryList                Get list of menu categories
15   GetMenuCategoryNameList            Get names of menu categories
16   GetMenuList                        Get list of menu
25                                                                LIST OF WEB SERVICES



No                           Web Services                                               Description
17        GetOrderDetailListForStarter                    Get list of order item info. of starter
18        GetOrderDetailListToCheckStatus                 Get list of order items to check order status
19        GetOrderDetailListToConfirmOrder                Get list of order items to confirm order
20        GetOrderList                                    Get list of all order items
21        GetTotalOrderItem                               Get number of order items (All order items)
22        GetTotalOrderItemToConfirmOrder                 Get number of order items (Only new order items)
23        GetTotalOrderPrice                              Get total order price (All order items)
24        GetTotalOrderPriceToConfirmOrder                Get total order price (Only new order items)
25        IsRequestBilling                                Check that a particular table whether bill is requested.
26        IsRequestMainCourse                             Check that a particular table whether main course is requested.
27        IsRequestWaiter                                 Check that a particular table whether a waiter is requested.
28        OpenOrderByTable                                Open new order by table no

          UpdateOrderDetailStatusFromOrderingToConfirm Update order details status from ordering to confirmed by order
29
          edByOrderNo                                 no

30        UpdateOrderStatusFromClosedToOpenned            Update order status from closed to opened
31        UpdateOrderToRecordCallingMainCourseTime        Update order status to record calling main course time
REFERENCES




             26
27                                                                           REFERENCES



     • CONNOLLY, Thomas M. and BEGG, Carolyn E. (2010). Database systems: A practical approach to design,
       implementation, and management. 5th ed., United States of America, Addison Wesley.
     • LEE, Wei-Meng (2012). Beginning iOS 5 Application Development, USA, John Wiley & Sons, Inc.
     • MAC DEVELOPER LIBRARY (2012). Model-View-Controller. [online]. Last accessed on 8 September 2012
       at:                  https://developer.apple.com/library/mac/#documentation/General/Conceptual/DevPedia-
       CocoaCore/MVC.html.
     • KENDALL, Kenneth E. and KENDALL, Julie E. (2011). System analysis and design. 8th ed., United Kingdom,
       Pearson Education.
     • RAY, John (2012). iOS 5 Application Development in 24 Hours, USA, Pearson Education, Inc.
     • REVELLE, Meghan, GETHERS, Malcom and POSHYVANYK, Denys (2011). Using structural and textual
       information to capture feature coupling in object-oriented software. Empirical software engineering, 16(6),
       773-811.
     • ROB, Peter, CORONEL and Carlos, CROCKETT (2008). Database systems: design, implementation &
       management. United Kingdom, Tom Rennie.

More Related Content

What's hot

Arsin bi testing
Arsin bi testingArsin bi testing
Arsin bi testingsreehs
 
The challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseThe challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseIvica Crnkovic
 
LatJUG. Spring Roo
LatJUG. Spring RooLatJUG. Spring Roo
LatJUG. Spring Roodenis Udod
 
Introduction to design specifications to Summer of Code NZ students
Introduction to design specifications to Summer of Code NZ studentsIntroduction to design specifications to Summer of Code NZ students
Introduction to design specifications to Summer of Code NZ studentsLulu Pachuau
 
Aras PLM CAD Integration
Aras PLM CAD IntegrationAras PLM CAD Integration
Aras PLM CAD IntegrationAras
 
Develop Ruby Applications Fast | TubroRuby
Develop Ruby Applications Fast | TubroRubyDevelop Ruby Applications Fast | TubroRuby
Develop Ruby Applications Fast | TubroRubyMichael Findling
 
Cooking an ontology-based spoken dialogue system
Cooking an ontology-based spoken dialogue systemCooking an ontology-based spoken dialogue system
Cooking an ontology-based spoken dialogue systemJoana Paulo Pardal
 
Eclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaEclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaBENOIT_LANGLOIS
 
ESSAY QUESTION 4
ESSAY QUESTION 4ESSAY QUESTION 4
ESSAY QUESTION 4Nerissa
 
Process & Conceptual Modeling | Business Architect
Process & Conceptual Modeling | Business ArchitectProcess & Conceptual Modeling | Business Architect
Process & Conceptual Modeling | Business ArchitectEmbarcadero Technologies
 
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering Costs
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering CostsUtilizing Kubotek ECO Manager Product Suite to Reduce Engineering Costs
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering CostsKubotek USA
 
ESSAY QUESTION 4
ESSAY QUESTION 4ESSAY QUESTION 4
ESSAY QUESTION 4Nerissa
 
Analysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product LineAnalysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product LineDharmalingam Ganesan
 
Lessons in Project Management - 6 - Requirements Engineering
Lessons in Project Management - 6 - Requirements Engineering Lessons in Project Management - 6 - Requirements Engineering
Lessons in Project Management - 6 - Requirements Engineering Habermann Frank
 

What's hot (19)

Arsin bi testing
Arsin bi testingArsin bi testing
Arsin bi testing
 
The challenges and opportunities in open source reuse
The challenges and opportunities in open source reuseThe challenges and opportunities in open source reuse
The challenges and opportunities in open source reuse
 
LatJUG. Spring Roo
LatJUG. Spring RooLatJUG. Spring Roo
LatJUG. Spring Roo
 
Introduction to design specifications to Summer of Code NZ students
Introduction to design specifications to Summer of Code NZ studentsIntroduction to design specifications to Summer of Code NZ students
Introduction to design specifications to Summer of Code NZ students
 
RTCi Demo Scenario
RTCi Demo ScenarioRTCi Demo Scenario
RTCi Demo Scenario
 
Aras PLM CAD Integration
Aras PLM CAD IntegrationAras PLM CAD Integration
Aras PLM CAD Integration
 
Develop Ruby Applications Fast | TubroRuby
Develop Ruby Applications Fast | TubroRubyDevelop Ruby Applications Fast | TubroRuby
Develop Ruby Applications Fast | TubroRuby
 
Cooking an ontology-based spoken dialogue system
Cooking an ontology-based spoken dialogue systemCooking an ontology-based spoken dialogue system
Cooking an ontology-based spoken dialogue system
 
Eswaranand Attuluri CV
Eswaranand Attuluri CVEswaranand Attuluri CV
Eswaranand Attuluri CV
 
Eclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFaEclipse Summit 2008 - Thales - SolFa
Eclipse Summit 2008 - Thales - SolFa
 
L01web 2x2
L01web 2x2L01web 2x2
L01web 2x2
 
ESSAY QUESTION 4
ESSAY QUESTION 4ESSAY QUESTION 4
ESSAY QUESTION 4
 
QUESTION 4
QUESTION 4QUESTION 4
QUESTION 4
 
Process & Conceptual Modeling | Business Architect
Process & Conceptual Modeling | Business ArchitectProcess & Conceptual Modeling | Business Architect
Process & Conceptual Modeling | Business Architect
 
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering Costs
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering CostsUtilizing Kubotek ECO Manager Product Suite to Reduce Engineering Costs
Utilizing Kubotek ECO Manager Product Suite to Reduce Engineering Costs
 
ESSAY QUESTION 4
ESSAY QUESTION 4ESSAY QUESTION 4
ESSAY QUESTION 4
 
Analysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product LineAnalysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product Line
 
The SAMR Ladder v2
The SAMR Ladder v2The SAMR Ladder v2
The SAMR Ladder v2
 
Lessons in Project Management - 6 - Requirements Engineering
Lessons in Project Management - 6 - Requirements Engineering Lessons in Project Management - 6 - Requirements Engineering
Lessons in Project Management - 6 - Requirements Engineering
 

Viewers also liked

Louise Barker recent fiber art work.
Louise Barker recent fiber art work.Louise Barker recent fiber art work.
Louise Barker recent fiber art work.Louise Barker
 
Shawls women-islamic-clothes
Shawls women-islamic-clothesShawls women-islamic-clothes
Shawls women-islamic-clotheshilalplaza
 
Tudung Botol FYP
Tudung Botol FYPTudung Botol FYP
Tudung Botol FYPaleyjendro
 
Tudung Alya Sarah
Tudung Alya SarahTudung Alya Sarah
Tudung Alya Sarahbutik
 
ZUCCA - Business and Marketing Plan
ZUCCA - Business and Marketing PlanZUCCA - Business and Marketing Plan
ZUCCA - Business and Marketing PlanGary Ng
 
Zara Fashion Marketing
Zara Fashion MarketingZara Fashion Marketing
Zara Fashion MarketingArsalan Akhtar
 
Business idea of shawl industry
Business idea of shawl industryBusiness idea of shawl industry
Business idea of shawl industrySahil Marwaha
 
Retail Marketing Plan
Retail Marketing Plan Retail Marketing Plan
Retail Marketing Plan fabiolaeinhorn
 

Viewers also liked (14)

Louise Barker recent fiber art work.
Louise Barker recent fiber art work.Louise Barker recent fiber art work.
Louise Barker recent fiber art work.
 
Shawls women-islamic-clothes
Shawls women-islamic-clothesShawls women-islamic-clothes
Shawls women-islamic-clothes
 
Tudung Botol FYP
Tudung Botol FYPTudung Botol FYP
Tudung Botol FYP
 
Pashmina Shawls
Pashmina ShawlsPashmina Shawls
Pashmina Shawls
 
Tudung Alya Sarah
Tudung Alya SarahTudung Alya Sarah
Tudung Alya Sarah
 
Shawl tuxedo
Shawl tuxedoShawl tuxedo
Shawl tuxedo
 
ZUCCA - Business and Marketing Plan
ZUCCA - Business and Marketing PlanZUCCA - Business and Marketing Plan
ZUCCA - Business and Marketing Plan
 
Usahawan muda
Usahawan mudaUsahawan muda
Usahawan muda
 
Marketing plan
Marketing planMarketing plan
Marketing plan
 
Zara Fashion Marketing
Zara Fashion MarketingZara Fashion Marketing
Zara Fashion Marketing
 
Business idea of shawl industry
Business idea of shawl industryBusiness idea of shawl industry
Business idea of shawl industry
 
24 carving
24 carving24 carving
24 carving
 
Retail Marketing Plan
Retail Marketing Plan Retail Marketing Plan
Retail Marketing Plan
 
Nike
NikeNike
Nike
 

Similar to D4 recommendation emenu_development

Aras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an IntroductionSanjeev Sharma
 
2012 student track - vs2010
2012   student track - vs20102012   student track - vs2010
2012 student track - vs2010Tim Mahy
 
Visual Studio Application Lifecycle Managment end-to-end
Visual Studio Application Lifecycle Managment end-to-endVisual Studio Application Lifecycle Managment end-to-end
Visual Studio Application Lifecycle Managment end-to-endHosam Kamel
 
End-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementEnd-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementHosam Kamel
 
Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview Ayman El-Hattab
 
[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process ModelsCarles Farré
 
Visual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellVisual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellSpiffy
 
Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.Joon ho Park
 
[DSBW Spring 2009] Unit 01: Introducing Web Engineering
[DSBW Spring 2009] Unit 01: Introducing Web Engineering[DSBW Spring 2009] Unit 01: Introducing Web Engineering
[DSBW Spring 2009] Unit 01: Introducing Web EngineeringCarles Farré
 
BA conf presentation 2010
BA conf presentation 2010BA conf presentation 2010
BA conf presentation 2010Julen Mohanty
 

Similar to D4 recommendation emenu_development (20)

O1 research overview
O1 research overviewO1 research overview
O1 research overview
 
01 overview research
01 overview research01 overview research
01 overview research
 
Aras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment MethodologyAras Innovator PLM Deployment Methodology
Aras Innovator PLM Deployment Methodology
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
2012 student track - vs2010
2012   student track - vs20102012   student track - vs2010
2012 student track - vs2010
 
Visual Studio Application Lifecycle Managment end-to-end
Visual Studio Application Lifecycle Managment end-to-endVisual Studio Application Lifecycle Managment end-to-end
Visual Studio Application Lifecycle Managment end-to-end
 
End-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle ManagementEnd-To-End Visual Studio Application Lifecycle Management
End-To-End Visual Studio Application Lifecycle Management
 
03 outcome navigator
03 outcome navigator03 outcome navigator
03 outcome navigator
 
Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview Visual Studio 2010 ALM Tools Overview
Visual Studio 2010 ALM Tools Overview
 
[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models[DSBW Spring 2009] Unit 03: WebEng Process Models
[DSBW Spring 2009] Unit 03: WebEng Process Models
 
Final_03 outcome navigator
Final_03 outcome navigatorFinal_03 outcome navigator
Final_03 outcome navigator
 
Final_Od1 outcome navigator
Final_Od1 outcome navigatorFinal_Od1 outcome navigator
Final_Od1 outcome navigator
 
Od2 overview outcome
Od2 overview outcomeOd2 overview outcome
Od2 overview outcome
 
Od2 research framework (2)
Od2 research framework (2)Od2 research framework (2)
Od2 research framework (2)
 
Visual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David ChappellVisual Studio 2010: A Perspective - David Chappell
Visual Studio 2010: A Perspective - David Chappell
 
Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.Study of solution development methodology for small size projects.
Study of solution development methodology for small size projects.
 
Mosp spring 2011
Mosp spring 2011Mosp spring 2011
Mosp spring 2011
 
KumarJava
KumarJavaKumarJava
KumarJava
 
[DSBW Spring 2009] Unit 01: Introducing Web Engineering
[DSBW Spring 2009] Unit 01: Introducing Web Engineering[DSBW Spring 2009] Unit 01: Introducing Web Engineering
[DSBW Spring 2009] Unit 01: Introducing Web Engineering
 
BA conf presentation 2010
BA conf presentation 2010BA conf presentation 2010
BA conf presentation 2010
 

More from Traitet Thepbandansuk

06 1 st_honour_award_certification.pdf
06 1 st_honour_award_certification.pdf06 1 st_honour_award_certification.pdf
06 1 st_honour_award_certification.pdfTraitet Thepbandansuk
 
01 dissertation_Restaurant e-menu on iPad
01 dissertation_Restaurant e-menu on iPad01 dissertation_Restaurant e-menu on iPad
01 dissertation_Restaurant e-menu on iPadTraitet Thepbandansuk
 
MSc Dissertation: Restaurant e-menu software on iPad
MSc Dissertation: Restaurant e-menu software on iPadMSc Dissertation: Restaurant e-menu software on iPad
MSc Dissertation: Restaurant e-menu software on iPadTraitet Thepbandansuk
 

More from Traitet Thepbandansuk (20)

IT_FOR_BUSINESS_30NOV15
IT_FOR_BUSINESS_30NOV15IT_FOR_BUSINESS_30NOV15
IT_FOR_BUSINESS_30NOV15
 
06 1 st_honour_award_certification.pdf
06 1 st_honour_award_certification.pdf06 1 st_honour_award_certification.pdf
06 1 st_honour_award_certification.pdf
 
Change attitude change life scg
Change attitude change life scgChange attitude change life scg
Change attitude change life scg
 
01 dissertation_Restaurant e-menu on iPad
01 dissertation_Restaurant e-menu on iPad01 dissertation_Restaurant e-menu on iPad
01 dissertation_Restaurant e-menu on iPad
 
MSc Dissertation: Restaurant e-menu software on iPad
MSc Dissertation: Restaurant e-menu software on iPadMSc Dissertation: Restaurant e-menu software on iPad
MSc Dissertation: Restaurant e-menu software on iPad
 
D3 users perceptions_emenu
D3 users perceptions_emenuD3 users perceptions_emenu
D3 users perceptions_emenu
 
D2 users perceptions_features
D2 users perceptions_featuresD2 users perceptions_features
D2 users perceptions_features
 
A30 test functional_requirements
A30 test functional_requirementsA30 test functional_requirements
A30 test functional_requirements
 
A22 functions on_web
A22 functions on_webA22 functions on_web
A22 functions on_web
 
A21 functions on_ipad
A21 functions on_ipadA21 functions on_ipad
A21 functions on_ipad
 
A2 annotation approach
A2 annotation approachA2 annotation approach
A2 annotation approach
 
A1 annotation knowledge
A1 annotation knowledgeA1 annotation knowledge
A1 annotation knowledge
 
A1 analysis design
A1 analysis designA1 analysis design
A1 analysis design
 
02 project plan11_aug12
02 project plan11_aug1202 project plan11_aug12
02 project plan11_aug12
 
00 how to_test_app
00 how to_test_app00 how to_test_app
00 how to_test_app
 
R01 all references
R01 all referencesR01 all references
R01 all references
 
D2 users perceptions_features
D2 users perceptions_featuresD2 users perceptions_features
D2 users perceptions_features
 
A22 functions on_web
A22 functions on_webA22 functions on_web
A22 functions on_web
 
A21 functions on_ipad
A21 functions on_ipadA21 functions on_ipad
A21 functions on_ipad
 
A2 annotation approach
A2 annotation approachA2 annotation approach
A2 annotation approach
 

Recently uploaded

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

D4 recommendation emenu_development

  • 1. RECOMMENDATIONS REGARDING TO E-MENU DEVELOPMENT F O R D EVEL O PM EN T O F RESTAURANT E - MENU PROTOTYPE Created by Traitet Th. Project: E-menu on iPad for Thai restaurant Created Date 16 Aug 2012 Topic: Description of research & discussion of outcomes Revised Date 7 Sep 2012 Revision No. 1.0 Content: Artifact of description of research & discussion of Document Name D04-001 outcomes
  • 2. 1 ) SO F T WA R E DEV EL O P MEN T P R O C ESS Based on - RAD (Rapid Application Development) - Prototyping - Direct Observation 2
  • 3. SOFTWARE DEVELOPMENT PROCESSES FOR E-MENU APPLICATION BASED ON RAD, PROTOTYING AND DIRECT OBSERVATION Design the Make list of Design UML Design database Design Class requirements Use Case Workflow Observation throughout the development process using ER- Diagram Diagram Diagram diagram Refine documents Design & develop e-menu web Test System Develop the first Create the and Web services for e.g. Web prototype database the first prototype on .NET Services (ASP.NET Language) Observation Modify list of requirements & Present the first Get feedbacks from design documents, at a Prototype the restaurant manager and Web services Thai Dining Create Develop the final prototype by Develop Develop the final document to Xcode on iPad web for back Prototype test (Objective-C Language) office on .NET requirements Restaurant Interview restaurant staff; in UK Present the final Present the final prototype by restaurant manager, waiting staff Prototype Videos, and Demo on iPad & Web and chefs Make The users’ perceptions Recommendations of e-menu Recommendation on the e-menu prototype application development s 3
  • 4. 2 ) SYST EM A N A LY SIS & DESIG N DO C U MEN T S 4
  • 5. 5 2 .1 ) USE C A SE DIA G RA M Diagram • Use Case Diagram Description - The use case diagram is an UML modeling tools for capturing business requirements - It can describe what e-menu system does and the views of what users needs (Kendall 2011) Benefit • It enabled the learner to understand the scope and features of systems operated by external users.
  • 6. 6 2 .2 ) C L A SS DIA G RA M Diagram • Class Diagram Description - Class diagram is data model of objected-oriented concept, which aims to enhance software quality (Revelle, Gethers and Poshvanyk 2011) Benefit • It enabled the learner to take advantages from an object- oriented design e.g. reusability, abstraction, module integration.
  • 7. 7 2 .3 ) ER DIA G RA M Diagram • ER Diagram Description - ER diagram is data modeling tool for linking between data object in the real-world and data modeling details (Rob, Coronel, and Crockett 2008). Benefit • ER modelling can reduce ambiguity of communication e.g. defining primary keys, foreign keys, relationships and cardinalities. (Connolly and Begg 2011)
  • 8. 8 2 . 3 . 1 R E L AT I O N A L D ATA B A S E Relational database was designed based on the ER-diagram
  • 9. 9 2 .3 .2 TA B L ES & C O L UMN S IN DATA BASE TT_SERVICE_REQ No TM_MENU Data Type TM_MENU_CATEGORY Data Type TM_TABLE Data Type TT_ORDER Data Type TT_ORDER_DETAIL Data Type Data Type UEST 1 MenuNo nvarchar(10) MenuCategoryNo nvarchar(10) TableNo nvarchar(10) OrderNo nvarchar(10) OrderDetailNo nvarchar(10) ServiceNo nvarchar(10) 2 MenuCategoryNo nvarchar(10) MenuCategoryName nvarchar(255) TableDescription nvarchar(255) OrderTableNo nvarchar(10) OrderNo nvarchar(10) ServiceOrderNo nvarchar(10) 3 MenuName nvarchar(255) MenuCategoryType nvarchar(50) TableSeatQty int OrderStatus nvarchar(50) OrderDetailMenuNo nvarchar(10) ServiceTableNo nvarchar(10) MenuCategoryDescriptio 4 MenuDescription nvarchar(MAX) nvarchar(999) TableStatus nvarchar(10) OrderCustomerQty int OrderDetailMenuDesc nvarchar(MAX) ServiceRequestTime datetime n MenuCategoryComment 5 MenuPrice float nvarchar(255) TableComment1 nvarchar(255) OrderOpenedTime datetime OrderDetailQty float ServiceType nvarchar(50) 1 MenuCategoryComment 6 MenuTasteStatus nvarchar(50) nvarchar(255) TableComment2 nvarchar(255) OrderCalledMainCourse datetime OrderDetailPrice float ServiceStatus nvarchar(255) 2 MenuCategoryComment 7 MenuRecommendStatus nvarchar(50) nvarchar(255) TableComment3 nvarchar(255) OrderBilledTime datetime OrderDetailStatus nvarchar(255) ServiceComment1 nvarchar(255) 3 8 MenuStatus nvarchar(50) OrderClosedTime datetime OrderDetailedTime datetime ServiceComment2 nvarchar(255) 9 MenuComment1 nvarchar(255) OrderBookingNo nvarchar(255) OrderDetailCookedTime datetime ServiceComment3 nvarchar(255) OrderDetailDeliveriedTim 10 MenuComment2 nvarchar(255) OrderMemberNo nvarchar(255) datetime ServiceComment4 nvarchar(255) e 11 MenuComment3 nvarchar(255) OrderComment1 nvarchar(255) OrderDetailBy nvarchar(255) 12 MenuComment4 nvarchar(255) OrderComment2 nvarchar(255) OrderDetailComment1 nvarchar(255) 13 MenuComment5 nvarchar(255) OrderComment3 nvarchar(255) OrderDetailComment2 nvarchar(255) 14 MenuComment6 nvarchar(255) OrderComment4 nvarchar(255) OrderDetailComment3 nvarchar(255) 15 MenuLastUpdatedTime datetime OrderDetailComment4 nvarchar(255) 16 MenuCreatedBy nvarchar(50) Tables and columns were designed based on the ER diagram
  • 10. 10 2 .4 ) WO RKF L OW DIA G RA M Diagram • Workflow diagram Description - Work flow diagram describes processes when customers come until they leave from restaurant. Benefit • The work flow enabled the learner be able to confirm the business process with the restaurant manager. • It also was used to design statuses of ordering and requesting services as shown in the next slide.
  • 11. 11 2 .4 .1 ) STAT U SES O F O R DER IN G A N D R EQ U EST IN G SERV IC ES TM_MENU_CATEGOR Table TT_ORDER_DETAIL Table TT_ORDER Table Y Description Description Description Field OrderDetailStatus Field OrderStatus Field MenuCategoryType 1 10_ORDERING Customer is ordering 1 10_OPENNED Order or table is opened 1 10_STARTER Starter Main course / Main 2 11_CONFIRMED Order is confirmed 2 90_COMPLETED Order or table is closed 2 20_MAIN_DISHES dishes 4 30_COOKING An menu item is cooking 4 30_DRINK Drinks 5 40_SERVING An menu item is serving 5 40_SWEET Sweet An Menu item is already 6 41_SERVED served. Table TM_MENU Table TM_MENU Description Description Field MenuTasteStatus Field MenuRecommend 1 1 Mild 1 01_TOP_SELLING This item is a top selling menu. 2 2 Medium hot and spicy 2 02_CHEF_RECOMMENDED This item is a chef's recommended menu. 3 Extreme hot and spicy Table TT_SERVICE Description Table TT_SERVICE Description Field ServiceType Field ServiceStatus 1 10_REQUEST_WAITER Request Waiter 1 OPENNED Service is being requested. 20_REQUEST_MAIN_COURS 2 Request main course 2 COMPLETED Service is completed. E 3 30_REQUEST_BILLING Request billing Status of ordering and requesting services generated from workflow diagram were used to design the database and e-menu application.
  • 12. 3 ) T EC HN IC A L DESIG N F O R E - MEN U Content • Initial e-menu Design • MVC (Model-View-Controller) Design • Communication between .NET & iOS Platforms 12
  • 13. T HIS SEC T IO N F O C U S 13 O N T EC HN IC A L SY ST EM DESIG N Technical system design 1. E-menu application on iPad for restaurant customers 2. E-menu Web services 3. E-menu Website for restaurant staff (Back office)
  • 14. 1 ) IN IT IA L DESIG N 14 O F E - MEN U P R O TO T YP E Main Features on iPad for E-MENU WEB E-MENU APP customers E-MENU SERVICES ON IPAD 1. Select menu categories DATABASE USING ASP.NET USING XCODE 2. Show details of food and drinks 3. Confirm order 4. Check order status 5. Request services • Request a waiter • Request main course E-MENU WEBSITE • Request a payment FOR RESTAURANT STAFF USING ASP.NET Main features on website for staff SQL Server 2005 ASP.NET iOS Platform 1. Manage tables Platform 2. Operate orders 3. Operate service requests Develop using ASP.NET and Xcode
  • 15. 2) MODEL-VIEW-CONTROLLER (MVC) DESIGN Database Model Model Physical Model Classes Web services Model Classes DB Web Service Manager Accessing data Provide - Generate SOAP message (Create XML in the database Web Services to other platforms data) Provide data logic Microsoft - Translate SOAP message (Parse XML e.g. selecting, Including data and SQL Server deleting, updating, data) business logic e.g. inserting data from GetMenuList - Encapsulate communication with Web the database Services Controller & View Controller & View Controller View Controller View DBMS: Database Provide business Provide UI for Provide business Provide UI for Management logic for UI (User restaurant logic for UI (User restaurant System Interfaces) Staff Interfaces) customers DBMS Platform Platform SQL Server ASP.NET Platform Apple’s iOS Platform 2005 (Developing tool: Visual Studio 2010) (Developing Tool: Xcode) (Microsoft ASP.NET Team 2009; Mac Developer Library 2012)
  • 16. 3 ) C O M M U N I C AT I O N B E T W E E N 16 AS P. N E T & I O S P L AT F O R M S U S I N G W E B S E RV I C E S Platform Platform iOS (Xcode) ASP.NET VIEW & MODEL CONTROLLE Web Services R Class: WebServiceManager Class: ServiceUtils Classes for UI (ASP.NET) Purposes Purposes: Purposes SOAP • To convert Request Request Generator - To generate communication with • To provide (Based on SOAP message Web Service from application to request asynchronous to Function User Interface XML XML) Parameters consuming Web synchronous (UI) for services • To combine all restaurant functions provided by customers - To receive Web Services SOAP message Respons SOAP Parser or response from Benefits: Respons e (Based on Web services • Make it easy to e XML) and translate to communicate with XML Function Xcode variables Web Services Return Value (encapsulation)
  • 17. 4 ) X C O DE DEV EL O P MEN T 17
  • 18. 18 4 . 1 ) C L AS S E S D E V E L O P E D I N X O C D E No Folder Name Class Description The classes in this folder are used for communication with Web Services e.g. generating & 1 10_WebServices All classes parsing XML, and converting data types between Web services and Xcode This Class contains all web services functions, which are easy to use. The main objectives of this class is ServiceUtils to encapsulation using web services and to convert communication with web services from asynchronous to synchronous. 3 20_Utils This class contains static variables, such as Order, SharedClass TableNo and ArrayMenuByCategory, to use as public variables. This class collects general reusable functions e.g. GettingStringDataFromSettingFile, ServiceUtils ConvertTableNoToNo and ConvertNoToTableNo functions. Classes in Folder 10_WebServices are used for communication with Web Services (ASP.Net)
  • 19. 19 4 .2 ) VIEW C ON TR OLLER IN XC OD E No Folder Name Class Description Controls user interfaces of the "Menu Class01_MenuDetail Detail" screen Controls user interfaces of the table in Class02_EmenuCell "Main Menu" screen 30_ViewContro Controls user interfaces of the "Confirm 1 Class10_ConfirmOrder ller Order" screen Controls user interfaces of the "View Class11_ViewOrder Order" screen (Confirm Order) Controls user interfaces of the "Service Class13_ServiceRequest Request" screen Control user interfaces of the "List of MasterViewController categories" screen 2 NMENU29 Control user interface of the "Main DetailViewController Menu" screen View Controller Classes are used for display and controlling user interfaces on iPad.
  • 20. 4 .3 ) VIEW C O N T R O L LER IN XC O D E 20 ( C O N T.) Main Menu Menu Detail Service Request Menu Categories Confirm Order View Order Example of user interfaces on iPad
  • 21. 21 4 .4 ) STORY B OA R D Main menu screen Menu Detail Screen Service Request Screen Service Request View Order Screen Screen (Confirm Order) Storyboard contains a hierarchy of objects for each unique screen that an application is going to display (Ray 2012).
  • 22. 4.5) APPLICATION SETTING 22 PREFERENCES Setting Bundle The list file Setting preferences on iPad Design of Setting preferences on iPad
  • 23. LIST OF WEB SERVICES & PURPOSES 23
  • 24. 24 LIST OF WEB SERVICES No Web Services Description 1 AddOrderDetail Add an order item 2 AddServiceRequest Add an service request e.g. Call a waiter 3 CloseOrderByTable Close order by table no 4 DeleteOrderDetail Detail an order item 5 FindAvailableOrderByOrderTableNo Find available order by a table no 6 FindOrder Find order info. by an order no 7 FindOrderByCondition Find order info. by a condition e.g. Order Status = ’90_COMPLETED’ 8 FindOrderDetail Find order item info. by an order item no Find order item info. by a condition e.g. Order item status = 9 FindOrderDetailByCondition ’11_CONFIRMED’ 10 FindServiceRequest Find service request info. by a service request no Find service request info. by a condition e.g. service status = 11 FindServiceRequestByCondition ‘COMPLETED’ 12 GetCategoryTypeList Get types of menu categories e.g. 01_STARTER, 02_MAIN_DISHES 13 GetHelloWorld Get Hello world string. (For the first test) 14 GetMenuCategoryList Get list of menu categories 15 GetMenuCategoryNameList Get names of menu categories 16 GetMenuList Get list of menu
  • 25. 25 LIST OF WEB SERVICES No Web Services Description 17 GetOrderDetailListForStarter Get list of order item info. of starter 18 GetOrderDetailListToCheckStatus Get list of order items to check order status 19 GetOrderDetailListToConfirmOrder Get list of order items to confirm order 20 GetOrderList Get list of all order items 21 GetTotalOrderItem Get number of order items (All order items) 22 GetTotalOrderItemToConfirmOrder Get number of order items (Only new order items) 23 GetTotalOrderPrice Get total order price (All order items) 24 GetTotalOrderPriceToConfirmOrder Get total order price (Only new order items) 25 IsRequestBilling Check that a particular table whether bill is requested. 26 IsRequestMainCourse Check that a particular table whether main course is requested. 27 IsRequestWaiter Check that a particular table whether a waiter is requested. 28 OpenOrderByTable Open new order by table no UpdateOrderDetailStatusFromOrderingToConfirm Update order details status from ordering to confirmed by order 29 edByOrderNo no 30 UpdateOrderStatusFromClosedToOpenned Update order status from closed to opened 31 UpdateOrderToRecordCallingMainCourseTime Update order status to record calling main course time
  • 27. 27 REFERENCES • CONNOLLY, Thomas M. and BEGG, Carolyn E. (2010). Database systems: A practical approach to design, implementation, and management. 5th ed., United States of America, Addison Wesley. • LEE, Wei-Meng (2012). Beginning iOS 5 Application Development, USA, John Wiley & Sons, Inc. • MAC DEVELOPER LIBRARY (2012). Model-View-Controller. [online]. Last accessed on 8 September 2012 at: https://developer.apple.com/library/mac/#documentation/General/Conceptual/DevPedia- CocoaCore/MVC.html. • KENDALL, Kenneth E. and KENDALL, Julie E. (2011). System analysis and design. 8th ed., United Kingdom, Pearson Education. • RAY, John (2012). iOS 5 Application Development in 24 Hours, USA, Pearson Education, Inc. • REVELLE, Meghan, GETHERS, Malcom and POSHYVANYK, Denys (2011). Using structural and textual information to capture feature coupling in object-oriented software. Empirical software engineering, 16(6), 773-811. • ROB, Peter, CORONEL and Carlos, CROCKETT (2008). Database systems: design, implementation & management. United Kingdom, Tom Rennie.

Editor's Notes

  1. MODEL-VIEW-CONTROLLER (MVC) DESIGN
  2. UAT: User acceptanceRAD: Rapid Application Development
  3. MODEL-VIEW-CONTROLLER (MVC) DESIGN
  4. See original file in Folder 10_ANALYSIS_DESIGN_DOC
  5. See original file in Folder 10_ANALYSIS_DESIGN_DOC
  6. ER: Entity Relationship
  7. MODEL-VIEW-CONTROLLER (MVC) DESIGN
  8. With regards to business requirements, the main features on iPad are selecting menu categories, showing details of food and drinks, confirming order, checking order status and requesting services. Moreover, the main features on web application are making table, operating order and operating service requests.
  9. Images are saved in iPad because of performance reasons e.g. improve speed.DBMS: SQL ServerWeb Services: ASP.NetXcode: iPad applicationE-menu website: http://aces-web.aces.shu.ac.uk/students/b0043132/03_emenu/default.aspxE-menu on iPad (Video Demo): http://www.youtube.com/watch?v=bCsFiMHuG80E-menu web services: http://aces-web.aces.shu.ac.uk/students/b0043132/03_emenu/service.asmx
  10. https://developer.apple.com/library/mac/#documentation/General/Conceptual/DevPedia-CocoaCore/MVC.htmlhttp://www.asp.net/mvc/tutorials/older-versions/overview/asp-net-mvc-overview(Microsoft ASP.NET Team 2009)
  11. Protocol for exchanging information in implementation of Web services: SOAP (Simple Object Access Protocol)
  12. MODEL-VIEW-CONTROLLER (MVC) DESIGN
  13. See example of screens in the next slide
  14. Storyboard contains a hierarchy of objects for each unique screen that an application is going to display. The objects could be interface elements such as buttons, toggle switches (Ray 2012)
  15. Application preferences for iPad application is a relatively straightforward process. It involves add a resource called Settings Bundle, configuring a property the list file, and then deploying in the application. After the application is deployed, the application preferences are automatically created in the Settings application (Lee 2012)