You are on page 1of 43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Project:FastFoodAutomatedOrderingSystem
Students:VimalMayankandDeepSaraf
FacultyAdvisors:MarkAustinandJohnBaras
TABLEOFCONTENTS
1.Introduction
Purpose:Definefastfoodautomatedorderingsystem.
Topics:Problemstatementbenefitsofthesystempurpose.
2.Goals,Scenarios,andUseCases
Purpose:Developusecases,scenariosandsystemrequirements.
Topics:GoalsandScenariosinitialusecaseswithactivitydiagrams.
3.GenerationofRequirementsfromUseCases
Purpose:Generatehighlevelrequirementsfromusecases.
Topics:Highlevelrequirementssynthesisandbreakdownofrequirementsrequirementstraceability.
4.GenerationofSpecifications
Purpose:Generatelowlevelrequirements
Topics:SynthesisandBreakdownofRequirements
5.HighLevelSystemModelingandAnalysis
Purpose:Createsimplifiedmodelsofbehaviorandstructure.
Topics:Systemstructurediagramfunctionalflowblockdiagramrequirementtraceabilitymatrix.
6.SystemLevelDesign
Purpose:Createthesystemleveldesign.
Topics:Mapchunksofbehaviorontothesystemstructuresequencediagrams.
7.DesignStructureMatrix(DSM)
Purpose:ApplyingDSMtosystemdecompositionandIntegrationProblems.....
Topics:ActivityBasedDesignStructureMatrix
8.TradeoffAnalysis
Purpose:Createframeworkfortradeoffanalysisforselectionofcomponentsinasmallsubsystem.
Topics:PerformancecharacteristicsdecisionvariablesCPLEXFormulationoftheproblemResultoftheCPLEXrunsplotofnon
inferiorsolutionintheobjectivespaceanalysisofparetopointsofthesystemfinalsystemdesign.
9.ComponentSystemTesting
Purpose:Developproceduresofsystemtest,verificationandvalidation.
Topics:PrimaryverificationplanverificationtraceabilitymatrixVSN'scoverageandcompleteness.
10.ReferencesandWebResources
11.Appendices
Purpose:DetailsoftheCPLEXanalysis.
Topics:LPfileforCPLEXrunLogfileoftheCPLEXruns.

Introduction
ProblemStatement
Thiscasestudylooksattheproblemofsettingupafastfoodrestaurant.Thebasicprobleminthefoodserviceindustryisthatrestaurantsarenot
realizingefficienciesthatwouldresultfrombetterapplicationsoftechnologyintheirdailyoperations.Everyfastfoodhascounterwhereyoucan
placeyourorderandthenmakethepayment.Soeveryfastfoodneedsanemployeefortakingtheorderandprocessingthepayment.Laborrates
areincreasingeverynowandthenanditisdifficulttofindemployeesinthemiddleofthehighway,hencetosolvethisproblemweplanto
designa"SelfServedFastFoodSystem."
Thisselfservicefastfoodrestaurantwillbeequippedwithauserfriendlytouchscreen,acredit/debitcardreader,andsoftwareforcompleting
theprocessatthebackend.Forthissystemtherewillbeasystemadministratorwhowillhavetherightstoenterthemenuwiththeircurrent
prevailingprices.He/shecanenteranytimeinthesystembyasecuredsystempasswordtochangethemenucontentsbyaddingordeletingan
itemorchangingitsprice.
Nowwhenthecustomerenterstherestaurant,hewillplacehisorderwiththehelpofthetouchscreenusingtheintuitivegraphicaluserinterface,
rightfromtheselectionoflanguagetillthepaymentconfirmation.Hewillselectfromthefoodoptionsaccordingtohischoiceandthesystem
willdisplaythepaymentamounthehastomakeoncehehasfinishedwithhisorder.Hewillhavetheoptionofpayingthebillbycash,debitcard
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

1/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

oracreditcard.Theuserwillslidehiscardandthesystemwillcheckforthevalidityofthecardandthepaymentwillbemade.Areceiptwillbe
printedcontainingtheordernumberandtheorderwillbesentinthekitchenforprocessing.

AnticipatedBenefits
1.Thiswillminimizethenumberofemployeesatthebackofthecounter.
2.Thesystemwillhelptoreducethecostoflabor.
3.Thesystemwillbelessprobabletomakemistake,sinceit?samachine.
4.Thiswillavoidlongqueuesatthecounterduetothespeedofexecutionandnumberofoptimumscreenstoaccommodatethemaximum
throughput.
5.Thesystemwillbeavailable24hoursfor365days,becausethemachineisnotgoingtotakeanysickorvacationleave.

ScopeandObjectives
ThepurposeofthisanalysisistodemonstratetheextenttowhichhighlevelsystemsconceptandUMLnotation/semanticscanbeusedto
describethefunctionalityofthissystem.Thisstudylaysoutaframeworkforanewsystemtobedevelopedandbroughttothemarketfor
maximumuse.Thefollowingissues,whichareusefulinperformingadetailedanalysisofthesystem,willbeaddressedinthisstudy:
1.Whatshouldthesystemdo?
2.Whatarethesystemsrequirements?
3.Howdoesthesystemwork?
4.Canthesystemwork?
5.Whatobjectsshouldbechosenandeachofthesubsystemsfunctionality?
6.Howshouldtheobject/subsysteminteract?
7.Howtoverifyandvalidatethesystem?

SystemFrameworkandBoundary
Goals,ScenariosandUseCases
GoalsandScenarios
Goal1.Thesystemhasauserfriendlyuserinterface.
1.Scenario1.1.Aparticularuserofthesystemhasnodifficultyinreadingthetextonthedisplay.
2.Scenario1.2.Thesystemisnavigablethroughintuition.
3.Scenario1.3.Menuchoicesarepresentedinformofbuttons,whichcontaintextaswellaslittlepicturesillustratingthechoiceforbetter
understanding.
Goal2.Thesystemsupportsmultilingualcapabilities.
1.Scenario2.1.Userisnotanativespeakerofthecommonspokenlanguageinthecountry.
2.Scenario2.2.SystemcaterstoEnglish(universallyacceptedlanguageforcommunication)andothernativelanguages,whichare
commonlyspokeninthecountrywherethesystemisoperative.
Goal3.Systemtakesorderfromthecustomerasperhis/herchoice.
1.Scenario3.1.Userselectsacombodeal(i.e.acombinationofmainfood,drinkandsidedish).
2.Scenario3.2.Usermaywanttomakeuphisownorderbyselectingdishes.
Goal4.Thesystemcalculatesanddisplaysthefinalbillbasedontheplacedorder.
1.Scenario4.1.Systemcalculatesfinalbillbasedonthequantityoftheitemsmultipliedbytheirunitpricetoppedupbytheapplicabletaxes
ifany.
2.Scenario4.2.Userisgiventheoptiontoeitherpayfortheorderorrevisetheorder.
Goal5.Systemhandlesthepaymentfortheuserdefinedorder.
1.Scenario5.1:Userdecidestopaycashandsystemasksusertoentercashintheslot.
2.Scenario5.2:Systemverifiesthecashamountandgivesrefundifanyafterdeductingtheamount.
3.Scenario5.3:Userdecidestopaythroughcredit/debitcard.Systeminformsusertoswipecardthroughcardreader.
4.Scenario5.4:Thesystemverifiesthecardandchargestheamountofthebilltothecard.Asksusertosignthebillonthesigningpad.
5.Scenario5.5.Thesystemprintsoutreceiptcontainingatokennumber,detailsoftheorder,billandthepaymentmethodwithaterminal
message(ThankyouvisitagainorStoreaddress).
6.Scenario5.6:Systemcommunicatestheordertothekitchenthroughtheinternalorderingsystem.
Goal6.Systemoffersthechoicetochangethemenuitemstothestoremanager.
1.Scenario6.1.Storemanagerdecidestoadd/deleteanitemfromthemenu.
2.Scenario6.2.Storemanagerwantstoputfestiveoffersonsomeitemsbecauseofwhichthereisachangeinthepriceofsomeoftheitems.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

2/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

3.Scenario6.3.Storemanagernoticesthatsomedishesareoutofstock.Consequentlyheupdatesthemenusothatthoseitemsaredeleted
temporarilydeletedfromthedisplaypresentedtotheuser.
Goal7.Thesystemisresistanttoactive/rigoroushandling.
1.Scenario7.1.Thecustomermustbeaminororhackerwhomightwanttogetintothesystemtochangeit.Itshouldprovidesecurityfor
theseareas.
2.Scenario7.2.Thesystemwillbeusedbydifferentusersandmightexperiencesomeroughhandeverynowandthen.

IdentifyActors
Anactorisanythingthatinterfaceswiththesystemexternallyandparticipatesinusecasemodeling.InourSelfServedFastFoodSystemthe
actorswouldbe:
1.Customer.Thisactoristheprinciplecustomerwhowillorderfoodandmakethepayment.
2.StoreManager.Thisactorwillholdtherightstochangethemenuandenterthesystemtomakeanychanges.
3.InternalOrderSystem.Thisactorwillreadtheordergivenbythecustomerandpassittothefoodpreparationperson.
4.BankSystem.Thisactorserveasabackbonefordoingthecredit/debitcardtransaction.
5.CashCollector.Thisactorwillacceptthecashfromthecustomerandgivesbackthechange.
6.FoodPreparationPerson.Thispersonreceivestheorderplacedbythecustomerthroughinternalordersystem.
SystemBoundary
Thesystemboundaryisdefinedbytheelevatoritself.

InitialUseCaseDiagram
Ausecasedescribesasinglegoalandallthethingsthatcanhappenastheuserattemptstoreachthatgoal.Althoughusecasesareneither
requirementsnorfunctionalspecification,theyimplyrequirements,objectsandobjectinteractionsinthestoriestheytell.Usecasesaretextual
descriptionoftheinteractionbetweenexternalactorsandasystem.
Ourinitialusecasediagramhassixactorsandfiveusecases.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

3/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure1.InitialUseCaseDiagramforServeFastFood.
AsyoucanseethattheCustomerplacestheorder,whichisreadbytheinternalordersystem,andtheorderisthensenttothefoodpreparation
personforexecution.Inthemeantimethecustomermakesthepayment.Ifthepaymentismadeincashthereisacashcollectoractororthereis
abanksystemforcredit/debitcardprocessingandkeepingthebalancecashamount.

Baseline(Textual)UseCaseswithActivityDiagrams
Whentheflowofeventsislinear,atextualdescriptionofbehaviorisoftensufficienttocapturethesystembehavior.Activitiesdiagramprovidea
visualdocumentingsequenceoftaskmakingupasingleactivity.Theyespeciallyareusefulforactivitiesgovernedbyconditionallogic,andflow
ofeventrunningconcurrently.Wedescribethebasicsystemfunctionalitywithtextualusecases,andemployactivitydiagramsforavisual
representationofthecorrespondingsequenceoftaskorflowofinformation.
UseCase1.PlaceOrder
PrimaryActor:Customer
Description:Customerplacesanorderfromtheavailablechoicesafterindicatinghislanguagepreferenceforthesession.
Preconditions:Systemisconnectedtoapowersource,displayisturnedonandsystemisconfiguredtoaccepttheinputs.
FlowofEvents:
1.Userselectshislanguagepreferenceforthesession.
2.Userselectsfromthemenu.
3.Userselectsfromthedrinksmenu
4.Userselectsfromthecombodeals
5.Userconfirmstheorder
AlternativeFlowofEvents:
1.Useraccidentallypressesawrongbuttonandafterrealizingithehitsthebackspacebutton.
2.Userentersawrongorderandwantstogobacktothemainmenu.
Postcondition:Orderhasbeenmadethatgoestothekitchenforprocessing.
Assumption:Userisfamiliarwithhowtoentervaluesthroughmouseandhasageneralideawhytheinputsarebeingprovidedandwhat
isexpectedoutofsystem.
Activitydiagramforthisusecaseisgivenasbelow:

Figure2.ActivityDiagramforPlaceOrder.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

4/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

UseCase2.MakePayment
PrimaryActors:customer,Credit/Debitsystem,cashcollector.
Description:Theuserisaskedforthemodeofpayment.Thepaymentisacceptedintermsofcredit/debitcardoriscollectedbycash
collector.Andthecustomerisgivenatokenwiththeirordernumber.
Precondition:Theorderhasbeenconfirmedandthetotalbillhasbeendisplayedonthescreentothecustomer.Costumerdecidestogo
aheadwiththeorder.FlowofEvents:
1.Userentersthemodeofpayment.(Credit/Debit/Cash)
2.Usermakesthepaymentincash
3.Cashcollectorcollectsthemoneyandgivesbackthechangeifrequired.
4.Usermakesthepaymentbycredit/debitcard.
5.Userreceivesatokennumberandfinalbill.
AlternativeFlowofEvents:
1.Userselectsthemodeofpayment.
Postcondition:Customerwaitsfortheordertobeprocessed.
Assumption:Userisfamiliarwithhowthesystemworksandwhatisexpectedoutofsystem.
Activitydiagramforthisusecaseisgivenasbelow:

Figure3.ActivityDiagramforPaymentProcessUseCase
UseCase3.UpdateMenu.
PrimaryActor:StoreManager.
Description:Themenumightchangeaccordingtotheinventoriesoradd/deleteitemsfrommenuanddeals.Thepricesofeachitemmight
changefortheperiodoftime.
Precondition:Anordermenuwiththeirrespectivepricealreadyexistsinthesysteminsomeparticularformat.
FlowofEvents:
1.TheStoremanagerentersthesystemwithsomepassword.
2.TheStoremanagermakestherequiredchanges.
3.TheStoremanagersavesthechangesandlogsout.
AlternativeFlowofEvents:
1.Someofthemenumightnotneedanychange.
2.Usermightenterinvalidpasswordandneedtogoback.
Postcondition:Amenulistwillbedisplayedwhentheuserentersthesystem.
Assumption:TheStoremanagerisgiventherightsandprivilegestoenterthesystemandmaketherequiredchanges.
Activitydiagramforthisusecaseisgivenbelow:

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

5/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure4.ActivitydiagramforUpdateMenuUseCase
UseCase4.MonitorInventory.
PrimaryActor:Foodpreparationperson,StoreManagerDescription:Thisusecasetriggerswhenanitemgoesoutofstock.
Precondition:None
FlowofEvents:
1.Foodpreparationperson/Storemanagernoticesanitemoutofstock
2.Updatesthemenuaccordingly.
Postcondition:Anewandupdatedmenulistwillbedisplayed.
Assumption:TheStoremanagerisgiventherightsandprivilegestoenterthesystemandmaketherequiredchanges.
Activitydiagramforthisusecaseisgivenbelow:

Figure5.ActivityDiagramforMonitorInventory
UseCase5.ReadOrder.
PrimaryActor:Foodpreparationperson,InternalOrdersystem.
Description:Internalordersystemreadstheorderoncethecustomerconfirmshisorderandthenhecommunicatestheordertothefood
preparationperson.Precondition:Userconfirmstheorder.
FlowofEvents:
1.Internalordersystemreadstheorder
2.Communicatestheordertothefoodpreparationperson
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

6/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Postcondition:Thefinalorderisbeingprocessedinthekitchen.
Assumption:Foodpreparationpersonisavailabletotaketheorderandknowthesequenceofprocessingtheorders.
Activitydiagramforthisusecaseisgivenbelow:

Figure6.ActivitydiagramforReadOrder

UseCaseTaskComponentInteraction

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

7/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure7.UseCaseTaskComponentInteraction

GenerationofRequirementsfromUseCases
HavinggeneratedthebaselinetextualusecasesandthescenariosforthecurrentproblemwecannowgeneratetherequirementsfortheSelf
ServedFastFoodsystem.Requirementsarederivedfromvariousgoalsandscenarios,usecasessoitisimportanttotracebackthesourceof
requirement.

HighLevelRequirements(ENSE621version)
Thesearethefirstdraftofrequirementswrittenduringthebeginningofthesemesterwhenthesystemengineeringprincipleswerenotveryclear.
Theserequirementsarenotquantifiedandareveryambiguous.Theyarenotspecifictoanyobjectorprocessandhenceneedstoberefined.
UserRequirements
1.Usershouldbeabletonavigatethesystemwithoutanydifficulty.
2.Systemsupportsnativelanguageofthecountryandothercommonlyspokenlanguages.
3.Usershouldbeabletoplaceorderaccordingtohischoices
4.Usershouldbeabletomakepaymentusingcash/credit/debitcard.
5.Usershouldgetareceiptandatokennumberaftermakingthepayment.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

8/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Sources:Goals1,2&5,Scenario1.1,3.1,&5.4,UseCase1&2.
PerformanceRequirements
1.Thesystemshouldbeabletotakeanytypeofinputs,oncethemouseisclickedontherespectivebutton.
2.Thesystemshouldbeabletotakeanyamountoforderanddisplayitwhenfinished.
3.Thesystemshouldbeabletocalculatethebillandprompttheuserforthemodeofpaymentandgenerateareceipt.
4.Thesystemshouldbeabletopassontheorderinthekitchenforprocessing.
5.Thesystemshouldbesecuredtorestrictthenumberofpeopletoenterthesystemtomakechangesinthemenuanditsitems.
6.Thesystemshouldbesturdyforroughusage.
7.Systemhasacashcollectorwhichgivesrefundupto5$incoins.
8.Systemshouldbeabletocommunicatetothecentraldatabasetoverifytheauthenticityofthecredit/debitcard.
9.SystemshouldallowStoremanagertoadd/delete/altersystemitems.
Sources:Goals5,6&7,Scenario4.1&4.2,UseCase2,3,4&5
UserInterfaceRequirements
1.Thesystemmustbeagraphicaluserinterfaceforeasyuseandunderstanding.
2.Thesystemmustbeabletoprompttheuserforthenextsteptobeperformedduringtheprocessofusingthesystem.
3.Thesystemmustdisplaythebillandfinalorderforconfirmation.
Sources:Goal1,Scenario4.3&5.4,UseCase1&4
ErgonomicsRequirements
1.Thesysteminterfacelayoutmustbeselfexplanatory
2.Horizontalandverticaldistancesbetweentwoadjacentbuttonsshouldbeatleast5pixelsforbettervisibilityandaccessibility.
3.Themouseshouldbeplacednotbelow3feetabovetheground.
Sources:Goal1,Scenario1.2&1.3,UseCase1&4.

RequirementsTraceability
FlowdownofRequirementsfromUseCases/Scenarios
Thedetailedflowdownofrequirementsfromusecasesandscenariosisasfollows(ENSE621,version):
SOURCE
UseCase

DESTINATION
Scenario

Description

1.2

User1

Easynavigability

2.1,2.2

User2

Supportofnativelanguageandothers

1.3,3.1,3.2

User3

Userplacesorderasperhischoice

Performance1,2

Takeanyinputandamountoforder

4.1

Performance3

Abletocalculatebill,promptformodeofpaymentandgivereceipt.

1.3,1.1

UserInterface1

SupportsGUIforeasyuse.

1.2

UserInterface2

Promptsuserfornextstep

4.1

UserInterface3

Displaybillandconfirmorder

1.1,1.3

Ergonomics1

Selfexplanatorysysteminterface

1.3

Ergonomics2

5pixeldistanceb/wbuttons

1.2

User1

Easynavigability

5.1,5.3

User4

Makepaymentusingcash/credit/debitcards.

3.1,3.2

PlaceOrder

RequirementNo

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

9/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

5.5

User5

Generationofreceipt/tokenno.

4.1

Performance3

Abletocalculatebill,promptformodeofpaymentandgivereceipt.

5.2

Performance7

Equippedwithcashrefunddevice.

5.4

Performance8

Abilitytoconnectwithbankcentraldatabase.

1.2

UserInterface2

Promptsuserfornextstep.

4.1

UserInterface3

Displaybillandconfirmorder.

1.1&1.3

Ergonomics1

Selfexplanatorysysteminterface.

1.3

Ergonomics2

5pixeldistanceb/wbuttonsUpdateMenu.

7.1

Performance5

Restrictedaccesstochangesystem.

6.1,6.2&6.3

Performance9

Abilitytoadd/delete/altermenuitems.

1.1&1.3

Ergonomics1

Selfexplanatorysysteminterface.

1.3

Ergonomics2

5pixeldistanceb/wbuttonsMonitorinventory.

6.1,6.2and6.3

Performance9

Abilitytoadd/delete/altermenuitemsReadOrder.

5.6

Performance4

Communicateordertokitchen.

MakePayment

TraceabilityofRequirementstoUseCases/Scenarios
Traceabilityfromrequirementsbacktooriginatingusecases/scenariosisasfollows(ENSE621version):
SOURCE
RequirementNo

DESTINATION
Description

Scenario

UseCase

1.2

1,2

2.1,2.2

1.3,3.1&3.2

5.1&5.3

5.5

User1

Easynavigability

User2

Supportofnativelanguage&others.

User3

Userplacesorderasperhischoice.

User4

Makepaymentusingcash/credit/debitcards

User5

Generationofreceipt/tokenno.

Performance1

Takeanyinput.

3.1&3.2

Performance2

Takeanyamountoforder.

3.1&3.2

Performance3

Abletocalculatebill,promptformodeofpaymentandgivereceipt.

4.1

1,2

Performance4

Communicateordertokitchen.

5.6

Performance5

Restrictedaccesstochangesystem.

7.1

Performance6

Sturdysystemforroughusage.

7.2

None

Performance7

Equippedwithcashrefunddevice.

5.2

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

10/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Performance8

Abilitytoconnectwithbankcentraldatabase.

5.4

Performance9

Abilitytoadd/delete/altermenuitems.

6.1,6.2&6.3

3,4

UserInterface1

SupportsGUIforeasyuse.

1.1&1.3

UserInterface2

Promptsuserfornextstep.

1.2

1,2

UserInterface3

Displaybillandconfirmorder.

4.1

1,2

Ergonomics1

Selfexplanatorysysteminterface

1.1&1.3

1,2,3

Ergonomics2

5pixeldistanceb/wbuttons.

1.3

1,2,3

Ergonomics3

Verticalplacingofmouse.

1.2

None

HighLevelRequirements(ENSE622version)
ConceptRequirementList(CRL)arethesetofrequirementswhichdemonstratetheoverallsystem,itsneedsandoutputs.Thesearethesetof
requirementsgenerallyprovidedbythemanagementtothedesigners.FollowingarethesetofCRLforthefastfoodorderingsystemthatwe
plantodesignanddevelop.
1.Systemsupportsnativelanguageofthecountryandothercommonlyspokenlanguages.
2.Usershouldbeabletoplaceorderaccordingtohischoices
3.Usershouldbeabletomakepaymentusingcash/credit/debitcard.
4.Usershouldgetareceiptandatokennumberaftermakingthepayment.
5.Thesystemshouldbeabletotakeanytypeofinputs,oncehetouchestherespectivebutton.
6.Thesystemshouldbeabletocalculatethebillandprompttheuserforthemodeofpaymentandgenerateareceipt.
7.Thesystemshouldbeabletopassontheorderinthekitchenforprocessing.
8.Thesystemshouldbesecuredtorestrictthenumberofpeopletoenterthesystemtomakechangesinthemenuanditsitems.
9.Thesystemshouldbesturdyforroughusage.
10.Systemhasacashreturnmechanismwhichgivesrefundupto5$incoins.
11.Systemshouldbeabletocommunicatetothecentraldatabasetoverifytheauthenticityofthecredit/debitcard.
12.SystemshouldallowStoremanagertoadd/delete/altersystemitems.
13.Thesystemmustbeagraphicaluserinterfaceforeasyuseandunderstanding.
14.Thesystemmustbeabletoprompttheuserforthenextsteptobeperformedduringtheprocessofusingthesystem.

GenerationofSpecifications
SynthesisandBreakdownofRequirements
DetailedmodelofRequirementsFlowdown:Systemlevelrequirementsareassignedtoelementsinthesystemarchitecture,whichinturn,
flowdowntosubsystemelements.Appropriatetestrequirementsaregeneratedateachlevelofthesystemdevelopment.Startingatethesub
systemlevel,otherstakeholderrequirementsaretakenintoaccount,perhapsbecausethesubsystemelementswillbeusedacrossaproductline.
Designersworkingonthesubsystemelementsprovidefeedbacktothesystemleveldesigners.
Wedivideoursystematdifferentlevelsofrequirements,tomakesurethatalltherequirementspecificationsarecoveredandstudytheflowdown
ofrequirements.Youwillnoticethattherearetherequirementsatthesystemlevel,whichareverysimilartothehigherlevelrequirementsand
thenwestudytherequirementsattheSubSystemlevelandcomponentlevel.Later,intheprojectwewillseehowtheserequirementsaretested
andverifiedattherelevelsandthenweintegratethemtotestthewholesystem.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

11/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure8.DetailedmodelofRequirementFlowdown

1.0SystemLevelRequirements
Systemlevelrequirementsareassignedtoelementsinthesystemarchitecture,whichinturn,flowdowntosubsystemelements.Appropriatetest
requirementsaregeneratedateachlevelofthesystemdevelopment.
1.1.Restaurantwillbeopenfor16hoursandwilloperateinfourshiftsasMorning(730AM1130AM),Afternoon(1130AM330PM),
Evening(330PM730PM)andNight(730PM1130PM).
1.2.Systemshouldbeabletoserveathroughputof50,125,50,75customersperhourduringthesefourshiftsrespectively.
1.3.Cooks,cleanersandassemblerswillbethetypeofemployeesworkingtherestaurant.
1.4.Cookwillbepaidattherateof$5perhourforthedurationoftheirwork.
1.5.Assemblerswillbepaidattherateof$4.75perhourforthedurationoftheirwork.
1.6.Cleanerwillbepaidattherateof$4.5perhourforthedurationoftheirwork.
1.7.Customerwillleavewithoutorderingifhesees6ormorepeopleinthelinewaitingtobeservedtherebycausingalossinrevenue.

2.0SubsystemLevelRequirements
Startingatthesubsystemlevel,otherstakeholderrequirementsaretakenintoaccount,perhapsbecausethesubsystemelementswillbeused
acrossaproductline.Designersworkingonthesubsystemelementsprovidefeedbacktothesystemleveldesigners.
(a)2.1OrderingandProcessingSystem
2.1.1.Thesystemwillprovidequeuemanagementbypassingorderssequentiallytokitchen(FIFO)byassigningordernumberstothem.
2.1.2.Customershouldbeabletoorderitemeitherbynameorbynumber(forcombodeals).
2.1.3.Systemwillsupportnativeandothercommonlyspokenlanguageinthecountry.
2.1.4.Anaverageordertakesabout1minutetocompletewithavarianceof10seconds.
2.1.5.Customertakes2minutesonanaveragetocompleteandorderingprocess.
2.1.6.SystemwillbeequippedwithastandardQWERTYkeyboardfortakinginputs.
(b)2.2PaymentSystem
2.2.1.ThisOrdernumberwillbeprintedonthebillthatcustomerreceives.
2.2.2.Systemshallbeabletoacceptcashandcoins.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

12/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

2.2.3.Systemshouldbeabletoacceptdebit/creditcards.
2.2.4.Systemwillacceptonly$1,5,10,20billsandnickel,dime,quarterdenominationofcoins.
2.2.5.Systemwillrejectpennies&$50,$100bills.
2.2.6.Systemwon'tallowputtingin$1coin.
2.2.7Cashreturnwillreturnchangeonlyincoins(upto$5maximum)

3.0ComponentLevelRequirements
(a)3.1TouchScreen
3.1.1.Touchscreenshouldbeabletotakeinputsfromuserswhentheyapplyalightpressure(xlb)fromtheirfingerscorrespondingtoanitem.
3.1.2.Touchscreenshouldbeabletowithstandroughusei.e.itwillbescratchproof(i.e.,willberesistanttonailscratching)andwillnot
malfunctionifapressureof(x+5)lbisappliedtothescreen.
3.1.3.Touchscreenwillcoloredforvisualappealandwillsupportatleast256colors.
3.1.4.Resolutionofthescreenwillbeatleast640X480pixels.
3.1.5.Touchscreenwillbeatleast10insize.
3.1.6.Touchscreenshouldbeabletodisplayatleast15rowsand60columnsoftextwhenthefontsizeofthetextis10.
(b)3.2CardAcceptor/Reader
3.2.1.Systemwillbeequippedwithacardreaderwithbuiltitkeypad(containingalldigitsandspecialfunctionkeyscorrespondingtoCANCEL,
OK,#etc).
3.2.2.Thiscardreadershouldbeabletoreadthecardinformationifswipedataspeed>1m/s.
3.2.3.Cardreaderwillhaveaverticalslotontherighthandsideofthekeypad.
(c)3.3.Display
3.3.1.Systemwilldisplayallthemenuitemsinicons/graphicsformatforselecting.
3.3.2.Systemwillprompttheuserformodeofpayment.
3.3.3.Orderwillbetransferredtothekitchentouchscreeninstantaneouslyoncetheuserdoesthepayment.
3.3.4.Systemwilldisplaytheordersequentiallyonthekitchenscreenwithaforwardandbackbuttonatthebottom.
3.3.5.Touchinganorderonthekitchenscreenwillpromptthesystemthattheorderhasbeendeliveredandthescreenwillberolledforward.
3.3.6.Anyerrormessageduringsuchaprocesswillbereportedtotheuseronthetouchscreeninforminghimtotakeanyfurtheraction.
3.3.7.Therewillbeahighcontrastbetweentheforegroundandthebackgroundofthedisplayforeasyreadingcapabilities.
3.3.8.Throughouttheorderingprocessallthetextdisplayedonthescreenwillbeeithergreaterthan10orlessthan18fontsizesothatallusers
(young,adult,old)canreadit.
(d)3.4.Modem
3.4.1.Modemshouldbeabletocompleteatransaction(dialing,sendinginformation,receivinginformation)in15secondsorlessatalltimes.
3.4.2.Onceconnectedtothebanksystemwillsupplythecardinformationtothebankdatabase,willquerythecardvalidityandwillsupplythe
amounttobechargedtothecard.
(e)3.5Software
3.5.1.Systemwillbesecuredtograntaccessrightsonlytothesystemadministrator.ForthisaloginIDandapasswordwillbeassignedwhich
couldbechanged.Passwordwon'tbevisibletoonlookerswhiletypingforincreasedsecurity.
3.5.2.Systemwilldenyaccesstochangethecontentsifthelogin/passwordbothareincorrectbyprovidinganerrormessage

SystemModelingandAnalysis

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

13/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

SystemBehavior
Systembehaviorshowswhatasystemdoesorappearstodo,Itsrepresentedgraphicallybyamodelwhichintegratesthefunctionalmodeland
theinputsandoutputs.Thefiguresbelowshowstwoversionsoftwodifferentfunctionalmodels.OurfirstmodelistheOrderSystemandthe
secondmodelshowthepaymentactivity.The621versionisthebasicversionofthemodelwithmostoffunctionnotverywelldefinedwhich
youwillnoticewhenyouviewthe622versionoftheActivities.
FFBD'sforOrderandPayment(ENSE621version)

Figure9.FFBD'sforOrderandPayment(ENSE621Version)
FFBDforSystemUpdates(ENSE621version)

Figure10.FFBDforSystemUpdates.
FFBDforPayBill(ENSE622version)
ThisisamoredetailedfunctionalflowblockdiagramofthesequenceoffunctionsthattakeplaceintheOrderandPaymentprocesses.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

14/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure11.FFBDforPayBill(ENSE622version)
FFBDforSystemAdministrator(ENSE622version)

Figure12.FFBDforSystemAdministrator(ENSE622version)
StatechartDiagram
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

15/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Astatechartdiagram(STD)describesthepossiblestatesofasingleclassandtheeventsthatcausestatetransitions.Theyareusefulforshowing
thelifecycleoftheclass.Statechartandactivitydiagramsbothdescribestatetransitionsandsharemanyofthesameelements.Anactivity
diagramismosteffectivefordescribingprocessesthatinvolvemorethanoneobject.Thefollowingdiagramshowsthestatechartdiagramofour
system.

Figure13.Statechartdiagram....

SystemStructure
Themodelofsystemstructurehasevolvedthroughtwoversions.
PreliminarySystemStructure(ENSE621version)
Inthepreliminaryimplementation(ENSE621),the"automatedorderingsystem"waspartitionedintoelementsforinput,menu,payment,system
administrationandoutput.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

16/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure14.SystemStructure(ENSE621Version).
Noticethatthesystemstructuredoesnotincludetheenvironmentwithinwhichtheorderingsystemworksandalsosomeoftheobjectsthatare
consideredatlowerlevelarenotobjectsofthesystem,insteadtheyareattributes.
RevisedSystemStructure(ENSE622version)
Versiontwoofthesystemstructurehasalargerscope.Thehighestlevelofsystemstructure,"fastfoodsystem"isacompositionofthreesystems
staff,kitchenandautomatedfoodorderingsystem.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

17/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure15.RevisedSystemStructure(ENSE622version)
Attributesandfunctionsareassignedtoclassesinthesystemhierarchy,asshowninFigure15.

SystemLevelDesign
Wenowmapchunksofbehaviorontothesystemstructureandshowtheflowofmessages/dataamongsystemcomponentswithsequence
diagrams.Asyoucanseeinthediagrambelowthesystemstructurehavebeenrevisedagaintotraceallthefunctionsofthesystembehavior.We
havealsoaddedtheattributesrelatedtoeachobjectinthesystemstructure.

AssigningFragmentsofBehaviortotheObjectStructure
SystemLevelDesign(ENSE622version)

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

18/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure16.SystemStructure

FragmentsofBehaviorfortheSystemLevelDesign
Sequencediagramprovidesagraphicalrepresentationforhowataskisaccomplishedbypassingasequenceofmessagesamongobjects.These
interactionsdefinebehaviorasimplementedbythefragmentsofthesystemstructure.
Oursystemcanbedividedintotwodifferentsequencediagramasshownbelow:
SequenceDiagramsforPlacinganOrder(ENSE621version)

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

19/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure17.SequenceofMessagesforPlacinganOrder
Asseeninthediagramthecustomerentersthesystembyclickingbeginbuttonandselectshislanguagechoice.Hethenclicksonthemenu
buttontoseethemenuitemsandthenmakesaselection.Hethenconfirmshisorderbyclickingontheconfirmorderbutton.
SequenceDiagramsforMakingthePayment(ENSE621version)

Figure18.SequenceofMessageforMakingthePayment
Customerhasbeenpromptedforthemodeofpayment.Ifheselectscashthenhehastogivecashtothecashcollectorandreceivechange,ifany.
Healsoreceivesareceiptfromthecashcollector.Ifthecustomerselectsdebit/creditcardpaymentmode,heisaskedagaintoselectfromdebit
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

20/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

orcredit.Ifheselectsdebitcardthenheisaskedapinnumberorelseheisaskedtoslidethecard.Aftercheckingforthevalidityofthecardthe
paymentismadeandthecustomerreceivesareceipt.

TraceabilityofRequirementstoAttributesandFunctions
SystemLevelRequirements

Object

Attribute

Function

1.1.Restaurantwillbeopenfor16hoursandwilloperateinfourshiftsasMorning
(730AM1130AM),Afternoon(1130AM330PM),Evening(330PM730PM)
andNight(730PM1130PM).

FastFood
System

Time

1.2.Systemshouldbeabletoserveathroughputof50,125,50,75customersper
hourduringthesefourshiftsrespectively.

FastFood
System

Throughput

1.3.Cooks,cleanersandassemblerswillbethetypeofemployeesworkingthe
restaurant.

Employee

type

1.4.Cookwillbepaidattherateof$5perhourforthedurationoftheirwork.

Cook

Salary

1.5.Assemblerswillbepaidattherateof$4.75perhourforthedurationoftheir
work.

Assemblers

Salary

1.6.Cleanerwillbepaidattherateof$4.5perhourforthedurationoftheirwork.

Cleaner

Salary

1.7.Customerwillleavewithoutorderingifhesees6ormorepeopleintheline
waitingtobeservedtherebycausingalossinrevenue.

FastFood
System

Waitingtime

SubSystemLevelRequirements

Object

Attribute

Function

2.1.1.Thesystemwillprovidequeuemanagementbypassingorderssequentiallyto
kitchen(FIFO)byassigningordernumberstothem.

Internal
Ordering
System

OrderNo

TransmitOrder
ToKitchen

2.1.2.Customershouldbeabletoorderitemeitherbynameorbynumber(for
combodeals).

Item

Type/Name

Order

2.1.3.Systemwillsupportnativeandothercommonlyspokenlanguageinthe
country.

Display

Language

2.1.4.Anaverageordertakesabout1minutetocompletewithavarianceof10
seconds.

Kitchen

MakeOrder

2.1.5.Customertakes2minutesonanaveragetocompleteandorderingprocess.

placeorder

2.1.6.SystemwillbeequippedwithastandardQWERTYkeyboardfortaking
inputs.

Keypad

layout

2.2.1.ThisOrdernumberwillbeprintedonthebillthatcustomerreceives.

Receipt
Printer

OrderNo

PrintOrderNo

2.2.2.Systemshallbeabletoacceptcashandcoins.

CashAcceptor

Type

AcceptCash
AndCoin

2.2.3.Systemshouldbeabletoacceptdebit/creditcards.

CardReader

Type

ReadCard

2.2.4.Systemwillacceptonly$1,5,10,20billsandnickel,dime,quarter
denominationofcoins.

CashAcceptor

TypeTo
AceeptCash
AndCoin

AcceptCash
AndCoin

2.2.5.Systemwillrejectpennies&$50,$100bills.

CashAcceptor

RejectCash
AndCoin

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

21/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

2.2.6.Systemwon'tallowputtingin$1coin.

CashAcceptor

RejectCash
AndCoin

2.2.7.Cashreturnwillreturnchangeonlyincoins.

CashReturn

type

returnChange

ComponentLevelRequirements

Object

Attribute

Function

3.1.1.Touchscreenshouldbeabletotakeinputsfromuserswhentheyapplya
lightpressure(xlb)fromtheirfingerscorrespondingtoanitem.

TouchScreen

TakeInput

3.1.2.Touchscreenshouldbeabletowithstandroughusei.e.itwillbescratch
proof(i.e.,willberesistanttonailscratching)andwillnotmalfunctionifapressure
of(x+5)lbisappliedtothescreen.

TouchScreen

3.1.3.Touchscreenwillcoloredforvisualappealandwillsupportatleast256
colors.

TouchScreen

type

3.1.4.Resolutionofthescreenwillbeatleast640X480pixels.

TouchScreen

pixels

3.1.5.Touchscreenwillbeatleast10"insize.

TouchScreen

dimension

3.1.6.Touchscreenshouldbeabletodisplayatleast15rowsand60columnsof
textwhenthefontsizeofthetextis10.

TouchScreen

dimension

3.2.1.Systemwillbeequippedwithacardreaderwithbuiltitkeypad(containing
alldigitsandspecialfunctionkeyscorrespondingtoCANCEL,OK,#etc).

CardReader

type

3.2.2.Thiscardreadershouldbeabletoreadthecardinformationifswipedata
speed>1m/s.

CardReader

ReadCard

3.2.3.Cardreaderwillhaveaverticalslotontherighthandsideofthekeypad.

CardReader

LocationOf
Slot

3.2.4.Systemwillreadtheswipedcard,willretrievethetotalbillamountand
initiatethemodemtodialthebanktocompletethetransaction.

Modem/Card
Processor

DialBank

3.3.1.Systemwilldisplayallthemenuitemsinicons/graphicsformatforselecting.

Display

selectItem

3.3.2.Systemwillprompttheuserformodeofpayment.

Display

Payment
Mode

SelectPayment
Mode

3.3.3.Orderwillbetransferredtothekitchentouchscreeninstantaneouslyoncethe
userdoesthepayment.

Internal
Ordering
System

ProtocolTo
Communicate

TransmitOrder
ToKitchen

3.3.4.Systemwilldisplaytheordersequentiallyonthekitchenscreenwitha
forwardandbackbuttonatthebottom.

KitchenScreen

ForwardOrder
ReverseOrder

3.3.5.Touchinganorderonthekitchenscreenwillpromptthesystemthattheorder
hasbeendeliveredandthescreenwillberolledforward.

KitchenScreen

SignalComplete
Order

3.3.6.Anyerrormessageduringsuchaprocesswillbereportedtotheuseronthe
touchscreeninforminghimtotakeanyfurtheraction.

Display

ReportError
Message

3.3.7.Therewillbeahighcontrastbetweentheforegroundandthebackgroundof
thedisplayforeasyreadingcapabilities.

Display

3.3.8.Throughouttheorderingprocessallthetextdisplayedonthescreenwillbe
eithergreaterthan10orlessthan18fontsizesothatallusers(young,adult,old)
canreadit.

Display

Text/Size

3.4.1.Modemshouldbeabletocompleteatransaction(dialing,sending
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

DialBank/
22/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

information,receivinginformation)in15secondsorlessatalltimes.

Modem

Speed

Transmit
Information

3.4.2.Onceconnectedtothebanksystemwillsupplythecardinformationtothe
bankdatabase,willquerythecardvalidityandwillsupplytheamounttobe
chargedtothecard.

Modem

Transmit
Information

3.5.1.Systemwillbesecuredtograntaccessrightsonlytothesystem
administrator.ForthisaloginIDandapasswordwillbeassignedwhichcouldbe
changed.Passwordwon'tbevisibletoonlookerswhiletypingforincreased
security.

Software

Login/
Password

Authorize

3.5.2.Systemwilldenyaccesstochangethecontentsifthelogin/password/both
areincorrectbyprovidinganerrormessage.

System
Administrator/
Software

DenyAccess

DesignStructureMatrix
Systemsengineeringofproduct,process,andorganizationsrequiretoolsandtechniquesforsystemdecompositionandintegration.Adesign
structurematrixprovidesasimplecompactandvisualrepresentationofacomplexsystemthatsupportsinnovativesolutionstodecomposition
andintegrationproblems.ThetechniquesofDSMshaveledtothereincreasinguseinavarietyofcontexts,includingproductdevelopment,
projectplanning,projectmanagement,systemsengineering,andorganizationdesign.
TherearetwomaincategoriesofDSMs:StaticandTimebased.StaticDSMsrepresentsystemelementsexistingsimultaneously,suchas
componentsofaproductarchitectureorgroupsinanorganization.IntimebasedDSMs,theorderingoftherowsandcolumnsindicateaflow
throughtime:upstreamactivitiesinaprocessprecededownstreamactivities,andtermslike'Feedforward'and'Feedback'becomemeaningful
whenreferringtointerfaces.

Figure19.DSMTaxonomy
1.ComponentBasedorArchitectureDSM:Usedformodelingsystemsarchitecturesbasedcomponentsand/orsubsystemsandtheir
relationships.
2.TeamBasedorOrganizationDSM:Useformodelingorganizationstructuresbasedonpeopleand/orgroupsandtheirinteractions.
3.ActivityBasedorScheduleDSM:Usedformodelingprocessesandactivitybasednetworksbasedonactivitiesandtheirinformationflow
andotherdependencies.
4.ParameterBased(orLowLevelSchedule)DSM:Usedformodelinglowlevelrelationshipsbetweendesigndecisionsandparameters,
systemsofequations,subroutineparameterexchanges.
NowletusapplyoneoftheDSMtechniquestoourexistingsystem.LetusconsiderthePayBillactivityofoursystemandapplythe
'InformationFlowbasedProcessModeling'usingtheActivityBasedDSM.Processesespeciallyproductdevelopmentprocessesare
complexsystems.Aprerequisitetoprocessimprovementisprocessunderstanding.Processstructureorarchitectureaffectsprocessefficiency
andeffectiveness.Therefore,processarchitecturecanbeanimportantsourceofcompetitiveadvantage.Improvedunderstandingofprocess
architecturecanbegainedbyusingprocessmodels,particularlyonesthatsupportprocessdecompositionandintegrationanalysis.Process
decompositionrequiresandunderstandingofprocessactivitiesandtheirinterfaces,becausetheinterfacesarewhatgiveaprocessitsadded
value.thereforeprocessmodelsmustcaptureflows.
Modelingaprocessrequirestworepresentationsteps,followedbyintegrationanalysis
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

23/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

1.Decomposetheprocessintoactivities
2.Documenttheinformationflowamongtheactivities
3.Analyzethesequencingoftheactivitiesintoamaximallyfeedforwardprocessflow.
ActivityBasedDSMofthepaymentdesignprocess:
Activities
DisplayBill
SelectModeofpayment
ReadCard
Dialbank

1
2
3
4

2
X

10

11

12

13

14

15

16

17

Transmitinformation
Declinecard
Displayerrormessage
Approvecard
DisplayApprovedmessage
Getsignature
Printreceipt
Transmitordertokitchen
Acceptcash/coins
readamount

5
6
7
8
9
10
11
12
13
14

Counttotalamountanddisplay
RejectCash/Coin
Returnchange

15
16
17

X
X

Figure:ActivityBasedDSMforFastFoodPaymentSystem
Withareasonablyaccuratemodelofaprocess,onethenusesthemodeltolookforimprovements,expectingthattheycanbeimplementedinthe
realprocess.theprimarygoalinbasicDSManalysisistominimizefeedbacksandtheirscopebyrestructuringandrearchitectingtheprocess,
thatis,byresequencingtherowsandcolumnsofthematrix.Thiswidelypracticedinitialstepinanalysisiscalledpartitioning,block
diagonalizationorblocktriangularization.
Inourmodelsincethereareveryfewfeedbackpathsandamongsttheexistingoneseverypathisimportanthencewecannotminimizethe
numberoffeedbackpaths.ButafterfrequentingDSMwehavethefollowingblockdiagonalizedDSM
Activities
Dialbank
Transmitinformation
Declinecard
DisplayBill
Displayerrormessage
SelectModeofpayment
ReadCard
Approvecard
DisplayApprovedmessage

4
5
6
1
7
2
3
8
9

5
X

X
X

10

15

11

17

13

14

16

12

Getsignature
Counttotalamountanddisplay
Printreceipt
Returnchange
Acceptcash/coins
readamount
RejectCash/Coin
Transmitordertokitchen

10
15
11
17
13
14
16
12

Figure:RevisedActivityBasedDSMforFastFoodPaymentSystem
AnactivitybasedDSMprovidesasystematicmethodfordesigningadatadrivenprojectschedulesuchthatinformationtransferistimelyand
thedesignmorerapidlyconvergestothedesiredperformancespecificationsalongmultipledimensions.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

24/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

SystemTradeOffAnalysis
SystemPerformanceCharacteristics
1.MinimizingtheCostofOperatingtheSystem(perday/pershift).
Thisdirectlyrelatestothesalaryoftheemployeesandtheothervariablecostlikeoperatingcostofthetouchscreenandtherawmaterials
2.MaximizingtheNumberofcustomers(Throughput),
Whichcanbehandledbythesysteminagivenshift:Thisinturnagainrelatestothenumberofemployeesandthenumberofoperating
touchscreen.
3.MinimizingtheQueueLength
Thisisadirectmeasureofthecustomersatisfactionwiththesystemandmaycauselossofrevenueifacustomerdecidesitisnotworth
waitingforthesystemtobefreeandwillleave.
4.MaximizingtheOperatorUtilization
Thatiswewouldnotliketopayfortheemployees,whicharesittingidleandcausethecostofoperatingthesystemtogoupwithout
generatingrevenue.
5.MinimizingtheMaximumTimespentbytheCustomerintheSystem
Thismightbeabottleneckconsiderationwhiledesigningthesystem.Acustomerwillnotcomebackagainifheseesthathehastospenda
lotoftimegethisordercompleted.Alsothisisanimportantcharacteristicintimecriticalsetting(fore.g.atairportwhereacustomerhas
tocatchaconnectingflightandhedropsintogetaquicksnackortheoperationofthefastfoodrestaurantinthebusinessneighborhood
wherepeoplearealwaysrunninglateformeetingsandotherimportantwork).
6.MinimizingtheAverageWaitingTime
Thisismoreorlessdirectlyrelatestothequeuelengthminimizationproblem.Butitisimportanttoconsiderthetimeittakesforan
averagecustomertocompletetheorderonthetouchscreen.Soqueuemovesquickly.Sothisinturnrelatestodesigningauserinterface,
whichcausesausertonavigatesmoothlyacrossthescreenswithoutfumblingforthethings,heislookingfor.
7.MinimizetheQueueLengthatthePickupCounter
Itisnotsimplyenoughtostatethatminimizingthequeueonthetouchscreensoraveragewaitingtimeonthetouchscreenswilldothe
job.Wealsohavetoconsideremployingenoughassemblerssothattheydeliverthepreparedorderquicklyandefficiently.
8.MinimizingtheNumberofLostCustomers
Thisdirectlyrelatestotherequirementonthepercentageofcustomerwhowillbeservedbythesystem.Obviouslyalostcustomerislost
revenueandasthisnumberincreasessoistheincreasingdissatisfactionwiththerestaurantoperation.Afterallnoownerwouldliketo
listentoagrapevinethatitsrestaurantfailstomeetthedemandofthatparticulararea.

DecisionVariables
Thedecisionvariablesareasfollows:
1.NumberofCooks
Thisvariabledirectlyrelatestothespeedofmakingthefood.Alargenumberwillensurethatacustomerdoesnothavetowaitfortheir
ordertobeprepared.Butontheotherhandalargenumbermaysignifythatcooksaresittingidleifthedemandisnotsobigthereby
increasingthecostofoperation.
2.NumberofAssemblers
Thesepeopleareneededtoassemblefoodanddeliveringtheminanefficientfashion.Sometimesthesepeoplearealsorequiredtodeliver
instantentitiesintheorderlikesodaandfries.Forasystemdesignwithouttouchscreensthesearethepeople,whichtaketheorder.A
highernumberisgoodfromthecustomerpointofview,astheydon?thavetowaitbutisbadfromtheowner'sperspectivebecauseit
meansahigheridletimeforslumpperiodsandincreasingcostofoperation.
3.NumberofCleaners
Obviouslyasperthefederalguidelinesarestauranthastoensureadegreeofcleanliness.Sothisnumberincreasesasthenumberof
customerincreasetoutilizethesystem.
4.NumberofTouchScreens
Thereisanupfrontcostofinstallingandnetworkingthescreensviaacentralserver,whichcarriesallthedata.Soitisimportantofthe
ownertodecideuponthenumberofcustomerheexpectsinaparticularbusinesssettingandemployamostcosteffectivesolution.A
highernumbermeanscustomerhastowaitinsmallqueueandtheirorderwillbesenttothekitchenpromptly.Butthereisaoperatingcost
andafixedcostofinstallingeachofthetouchscreens.

CPLEXProblemFormulation
Identifyingtheaboveperformancecharacteristicandthedecisionvariablenowwehavetoconductatradeoffanalysistooptimizethesystem
designwithrespecttoalloftheperformancecharacteristics.Asseenabovethisisamultiobjectiveoptimizationproblemwithcompeting
objectiveswithrespecttothedecisionvariables.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

25/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

TradeoffanalysiswithCPLEX:Inthiswewillanalyzetheperformanceofthesystemwithrespecttothedecisionvariables.Specificallywe
choseCostofoperatingthesystem,numberofcustomersthatcanbehandledandthelengthofthequeue.
Asperthegivenrequirementdocumentthefollowingmodelequationswereobtained.Seeanexplanationofthedetailsoftheequationbelow.
ObjectiveFunction
Minimizethecostofoperatingthesystemperday.
20(X1+X2+X3+X4)+18(Y1+Y2+Y3+Y4)+19(Z1+Z2+Z3+Z4)+16W

Maximizethenumberofcustomerswhichcanhandledbythesystem(throughput)
240(X1+X2+X3+X4)

Minimizethelengthofqueuegeneratedatthecounter:ThisineffectbecomesmaximizingW.Wewillshowitinamoment.
where:
X1:Numberofcooksworkinginthebreakfastshift
X2:Numberofcooksworkinginthelunchshift
X3:Numberofcooksworkinginthesnacksshift
X4:Numberofcooksworkinginthedinnershift
Y1:Numberofcleanersworkinginthebreakfastshift
Y2:Numberofcleanersworkinginthelunchshift
Y3:Numberofcleanersworkinginthesnacksshift
Y4:Numberofcleanersworkinginthedinnershift
Z1:Numberofassemblersworkinginthebreakfastshift
Z2:Numberofassemblersworkinginthelunchshift
Z3:Numberofassemblersworkinginthesnacksshift
Z4:Numberofassemblersworkinginthedinnershift
W:Numberoftouchscreensinstalledinthesystem
Equationfortheoperatingcostwasobtainedasfollows:
Aspertherequirementdocumentcooks,cleanersandtheassemblersarepaidasalaryof$5,$4.5and$4.75perhour.Wehave4hourspershift
andtherearefourshifts.Sosalaryexpensesforatypicaldaybecomes:
Salary=4*5(X1+X2+X3+X4)+4*4.5(Y1+Y2+Y3+Y4)+4*4.75(Z1+Z2+Z3+Z4)
=20(X1+X2+X3+X4)+18(Y1+Y2+Y3+Y4)+19(Z1+Z2+Z3+Z4)

Operatingcostofatouchscreenwasdeterminedtobe$1perhourbasedonitsusefullifeandthecostofbuyingit.Sofor16hoursoperationof
wscreenswehaveanoperatingcostof16Wperdayaddedtotheaboveequationresultinginthecompleteequationofthecost.
Equationforthenumberofcustomersthatcanbehandledbythesystemperdaywasobtainedasfollows:
Bottleneckprocessforthesystemispreparingfood,whichiscarriedoutbytheemployedcooksinaparticularshift.Itwasestimatedthatforan
averageorderacooktakesabout1minutetopreparethemaindish.Soforashiftonecookcanhandleabout240customersbasedonthe4hour
durationoftheshift.Againtokeeptheproblemsimplesmallbreakstakenbytheemployeesduringtheworkwereneglected.Wearedesigning
thesystemtooperateatitspeakcapacityandthenseeitsperformance.Basedonthisdataaveragethroughputofthesystemperdayisgivenby
240*(X1+X2+X3+X4)

Anydemandoverthisvaluewillcauselonglinesatthepickupcounterandpossiblylossofthecustomers.
Asnotedaboveintheobjectiveformulationwenowexplainhowminimizingthelengthofqueuerelatestothemaximizingnumberoftouch
screeninstalled.Thoughitisveryintuitive.
Customerarrivalandcustomerservicefollowpoisonandexponentialdistributionrespectively.Thequeueunderconsiderationiscalledamulti
channelsinglestagequeueasshownbelow:

Thatis,customersarriveaccordingtoapoisonprocesswithameanrateofarrivalintothesystemandjoinasinglequeue.Thepersonatthefront
ofthequeueseizesthefirstavailableresource(touchscreen)toplacehisorder.Theprocessofplacingtheorderisexponentialwithameanrate
ofabout2minutes.ThisissymbolizedasaM/M/Wtypeofmultichannelsinglestagequeue.Lengthofthisqueueiscalculatedasfollows:
CustomersarriveaccordingtoaPoissonprocesswithratel

Therearesservers.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

26/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Thereisasinglelineofentitiesawaitingservice
Servicetimeisexponentialwithratem

Letr=l/sm
WehaveusedanExceltemplatetocalculateLq

ResultoftheCPLEXRuns
Wehaveusedtheconstraintmethodtosolvethismultiobjectiveoptimizationproblem.i.e.,wehaveminimizedthecosttakingthethroughput
andthenumberofthescreensastheconstraints.Followingmatrixshowstheresultofthecplexrun(Alogofthecplexfilecontainingtheruns
canbeseeninAppendix1.LPformulationfileusedtorunthecplexoptimizationcanbeseeninAppendix2).
No.

DesignVariables
W X1 X2 X3 X4 Y1 Y2 Y3 Y4 Z1 Z2 Z3 Z4

Cost

MealThroughput

QueueLength

Breakfast Lunch Snacks Dinner Total Bf

Lun

Nn

Din

Avg

419

200

500

200

300

1200 0.001 0.235 0.001 0.009 0.0615

419

240

720

240

480

1680 0.002 3.683 0.002 0.189 0.969

439

200

600

250

350

1400 0.001 0.81

0.003 0.024 0.2095

459

250

650

250

450

1600 0.003 1.48

0.003 0.119 0.40125

518

250

750

300

500

1800 0.003 5.847 0.009 0.235 1.5235

538

300

800

350

750

2200 0.009 17.223 0.024 5.847 5.77575

435

200

500

200

300

1200 0

0.078 0

0.002 0.02

435

240

720

240

480

1680 0

1.071 0

0.059 0.2825

455

200

600

250

350

1400 0

0.279 0.001 0.006 0.0715

10

475

250

650

250

450

1600 0.001 0.494 0.001 0.038 0.1335

11

534

250

750

300

500

1800 0.001 1.494 0.002 0.078 0.39375

12

554

300

800

350

750

2200 0.002 2.663 0.006 1.494 1.04125

13

451

200

500

200

300

1200 0

0.026 0

14

451

240

720

240

480

1680 0

0.39

0.019 0.10225

15

471

200

600

250

350

1400 0

0.101 0

0.002 0.02575

16

491

250

650

250

450

1600 0

0.182 0

0.012 0.0485

17

550

250

750

300

500

1800 0

0.536 0

0.026 0.1405

18

570

300

800

350

750

2200 0

0.895 0.002 0.536 0.35825

0.0065

Where
Throughput=Breakfast+Lunch+Snacks+Dinner
Lenbf:Averagelengthofqueueforbreakfast
Lenlun:Averagelengthofqueueforlunch
Lensn:Averagelengthofqueueforsnacks
Lendin:Averagelengthofqueuefordinner
Average:(Lenbf+Lenlun+Lensn+Lendin)/4.0

PlotofNonInferiorSolutionintheObjectiveSpace
TradeOffbetweenThroughputandCost

TradeOffbetweenCostandLengthofQueue

TradeOffbetweenThroughputandLengthofQueue
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

27/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

AnalysisofParetoPointsoftheSystem
Fromtheabovematrixandthegraphsplottedtakentwoobjectiveatatimefollowingparetopointswereobtained(shownintheabovegraphs
withacirclearoundit):
No.

Cost

Throughput

Lengthof
Queue

X1

X2

X3

X4

Y1

Y2

Y3

Y4

Z1

Z2

Z3

Z4

419

1200

0.0615

419

1680

0.969

435

1200

0.02

435

1680

0.2825

13

451

1200

0.0065

14

451

1680

0.1022

AParetopointcorrespondtoapointintheobjectivespacewhichbelongstoasetofnoninferiorsolutionsmeaningifyoumoveawayfromthis
pointtoanyotherpointintheobjectivespaceyouwillhavetosacrificeatleastoneobjective.

FinalSystemDesign
Fromtheownersperspectivepoint2seemstobeabestcompromiseamongalltheavailablesystemdesignbecauseithasalowcostofoperation
perdayandcanhandleahighthroughputatareasonablequeuelength,whichisacceptablebytherequirementdocument.
No.
2

Cost
419

Throughput
1680

Lengthof
Queue
0.969

W
7

X1
1

X2
3

X3
1

X4
2

Y1
1

Y2
1

Y3
1

Y4
1

Z1
1

Z2
2

Z3
1

Z4
1

SystemComponentTesting
PrimaryVerificationPlan
Testingandproductdeliveryproceduresbeginatthecomponentlevelandworktowardthesystemandstakeholdertests.Primaryverificationand
validationplanfortheabovesysteminproposedasfollows:

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

28/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Figure20.DetailedModelofProductTestingandDelivery.
Testingandproductdeliveryproceduresinclude:
Verificationoftheproductsagainst"specifiedrequirements"and
Validationoftheassembled(sub)systemagainstassignedrequirements.
Belowaresomeexamplestodemonstratehowwecantestourrequirmentsatdifferentlevels:
Requirement1.1.Restaurantwillbeopenfor16hoursandwilloperateinfourshiftsasMorning(730AM1130AM),Afternoon(1130AM
330PM),Evening(330PM730PM)andNight(730PM1130PM).
Examination.1.1.1Inspecttherestaurantoperationwherethisproposedsystemwillbeinstalled(Aspertherequirementsuppliedbythe
customer).
Systemwillfailiftheoperatingtimeischangedoncethesystemininstalled(mightreflectinhighoperatingcostorlowefficiencyand
utilizationofsystemresourcesmakingtheoperationnonprofitable).
Requirement1.2.Systemshouldbeabletoserveathroughputof50,125,50,75customersperhourduringthesefourshiftsrespectively.
Simulation.1.2.1.Runasystemwidesimulation(asdoneinarenaforexample)
Systemfailsifthemaximumnumberinline(bottleneck)exceeds10oriftherearelostcustomers.
Examination.1.2.1Aftertheprototypeisinstalledinoneoftherestaurantobservethetotalthroughputandthemaximumnumberinqueue.
Requirement1.3.Cooks,cleanersandassemblerswillbethetypeofemployeesworkingtherestaurant.
Examination.1.3.1.Seethetypeofworkersworkingintherestaurantwhereweplantoinstallsuchasystem.
Systemfailsifanewlevelofhierarchyisintroducedbythemanagementatalaterpointoftime,whichcausestheoperatingcostperdayto
bechanged.
Requirement1.4.Cookwillbepaidattherateof$5perhourforthedurationoftheirwork.
Examination.1.4.1.Findouttherateofthepayofthecookfortherestaurantwhereweplantoinstallthesystem.
Simulation.1.4.1.Seeifthedirectlaborcostcorrespondingtocookresourceanddivideitbynumberofhoursworked.Thisnumbershouldbe
$5/hr.
Systemfailsotherwise.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

29/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

......detailsofverificationplanremoved....
Requirement3.4.2Onceconnectedtothebanksystemwillsupplythecardinformationtothebankdatabase,willquerythecardvalidityand
willsupplytheamounttobechargedtothecard.
Demo.3.4.2.1Afterthemodemconnectstothebanktouchscreendisplaychangesto(transmitting,authorizing,approved)insuccessionwhen
userispayingwithacreditcardwithremainingcreditonit.
Systemfailsifabovesequencedoesnottakeplaceeventhoughuserhasswipedacardwitharemainingcreditonit
Simulation.3.4.2.1.Whenexecutingthescenarioofpayingbythecreditcard,softwaresubsystemsuppliesthecardinformation,totalbill
amounttobechargedtothecreditcard,queryitsvalidityanddebittheamount.
Systemfailsifsuchfunctionalitydoesnotexistwhilepayingwithacreditcard.
Requirement3.5.1Systemwillbesecuredtograntaccessrightsonlytothesystemadministrator.ForthisaloginIDandapasswordwillbe
assignedwhichcouldbechanged.Passwordwontbevisibletoonlookerswhiletypingforincreasedsecurity.
Demo.3.5.1.1:Enterintosystem,administratormenuandchangepassword
(Assumptionpasswordknowntotester)
Systemfailsifitdoesnoteprovidesystemadminawaytochangepassword
Examination.3.5.1.1:Abystandertriestoobservepasswordwhileitisbeingtyped.
Expectedoutput:HecantseeitbecauseinsteadofactuallettersXsareseenonthescreeneverytimeakeyispressed
SystemfailsifbystandercanseethepasswordwhileitisbeingtypedbecauseinsteadofechoingXsactuallettersareechoedonscreen.
Simulation.3.5.1.1:FFBDprovidesabranchofactivitywhereinpasswordcanbechanged.
Systemfailsifsuchaprovisiondoesnotexistinthebehaviordiagramofthesystem.
Test.3.5.1.1:Trytoreadthefilewherethislogin/passwordisstoredinatexteditorsuchasnotepadbyconnectingtoawindowsoperating
system.
Expectedoutput:Texteditorsplitssomegarbagevaluewhenthatfileisopened.
Systemfailsifthetextfilestoresinaneatmannertheloginandpassword.
Requirement3.5.2.Systemwilldenyaccesstochangethecontentsifthelogin/password/bothareincorrectbyprovidinganerrormessage.
Demo.3.5.2.1.:Inthesystemadministratormenutypethecorrectloginbutinvalidpassword
Expectedoutput:Errormessagedisplayedshowingeitherlogin/passwordisincorrect.
Systemfailsifiteithergrantsaccesswithinvalidentryordisplaysandexacterrormessagethatpasswordiswrong(sothattheintruder
getstoknowthatheistypingthecorrectloginnamebuttheinvalidpassword)
Demo.3.5.2.2.:Inthesystemadministratormenutypetheincorrectloginbutcorrectpassword.
Expectedoutput:Errormessagedisplayedshowingeitherlogin/passwordisincorrect.
Systemfailsifiteithergrantsaccesswithinvalidentryordisplaysandexacterrormessagethatloginiswrong(sothattheintrudergetsto
knowthatheistypingtheincorrectloginnamebutavalidpassword).
Demo.3.5.2.3:Inthesystemadministratormenutypetheincorrectloginandincorrectpassword
Expectedoutput:Errormessagedisplayedshowingeitherlogin/passwordisincorrect.
Systemfailsifiteithergrantsaccesswithinvalidentryordisplaysandexacterrormessagethatbothloginandpasswordarewrong(sothat
theintrudergetstoknowthatheistypingtheincorrectloginnameandpassword).
Simulation.3.5.2.1:Systemadministratormenusimulationpassesthroughacheckpointwherelogin/passwordarematchedagainsttheone
specifiedinthefile.
Systemfailsifthischeckpointisbypassedinthesimulation.

VerificationTraceabilityMatrix
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

30/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Theabbreviatedverificationtraceabilitymatrixis:
VerificationMethod

Design
Requirement

Test

Analysis

Demo

Exam

Verification
Requirement

Levelof
Application

1.1.

1.1.1.

Examination.1.1.1

1.0System
Level
Requirements

1.2.

1.2.1

1.2.1

Simulation.1.2.1,
Examination.1.2.1

1.0System
Level
Requirements

....

....

...

...

Demo.3.4.2.1
Simulation.3.4.2.1

3.4Modem
Component
Level
Requirements

3.5.1.1

Demo.3.5.1.1
Simulation.3.5.1.1
Examination.3.5.1.1
Test.3.5.1.1

3.5Software
Component
Level
Requirements

Demo.3.5.2.1
Demo.3.5.2.2
Demo.3.5.2.3
Simulation.3.5.2.1

3.4Software
Component
Level
Requirements

3.4.2

3.5.1

3.5.2

3.5.1.1

3.4.2.1

3.4.2.1

3.5.1.1

3.5.1.1

3.5.2.1

3.5.2.1
3.5.2.3

VSN's
AfterspecifyingtheprimaryverificationplanthenextstageistogroupsomeoftheseverificationtaskstoformaverificationstringcalledVSN.
TheseVSN?sareawaytosavetimeandmoneywithrespecttothevalidationandverificationprocess,whichareacriticalperformancemeasure
ofsystemdesign.
VSN1.(TouchScreen3.1ComponentLevelRequirements)(ThisVSNcorrespondstotestsdoneinalabonthetouchscreencomponentof
thehardwaresubsystem)ThisVSNwaschoseninsuchamannerbecauseitfacilitatesacceleratedtestinginalabandsavestimeandmoneyby
conductingtheexperimentssequentially.
1.Test.3.1.3.1(Checkthenumberofcolorscreencansupport)
2.Test.3.1.4.1(Checkthehighestresolutionofthescreen)
3.Test.3.1.5.1(Measurethesizeofthetouchscreenbyascale)
4.Test.3.1.6.1(Checkthemaximumamountoftextthatcanbedisplayed)
5.Test.3.5.1.1(Readthepasswordfileinatexteditor)
6.Test.3.1.2.1(Striketheglassofthescreenwithx+5lbofforcefor200times)
7.Test.3.1.2.2(Striketheglassofthescreenwithnaillikeobjectfor200times)
VSN2.(OrderingSystem2.1SubsystemLevelRequirement)ThisVSNcorrespondstosimulatingthescenariowhereinacustomerplaces
anorderanddecidestopaycashforhisorder).ThisVSNteststhehardwareandthesoftwaresubsystemoftheautomatedfoodorderingsystem
bytestinginteractionbetweenthembyexecutingthetestsinthefollowingsequences.
1.Simulation.2.1.3.1(Accountforlanguageselection)
2.Executethescenarioofplacinganorderbyaddingacomboandproceedtopaybill.
3.Simulation.3.3.2.1(Makeachoiceformodeofpayment)
4.Simulation.2.1.3.1(Accountforthelanguageselection)
5.Simulation.2.2.2.1(Executethepaymentbycashchoice)
6.Simulation.2.1.3.1(Accountforlanguageselection)
7.Simulation.2.2.5.1(Executetherejectbillscenario)
8.Executetheacceptanceofsubsequentcashenteredtothebillamount.
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

31/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

9.Simulation.2.2.4.1(Executechangeofdisplayonthetouchscreen)
10.Simulation.2.1.3.1(Accountforlanguageselection)
11.Simulation.2.2.1.1(Executeprintingofreceiptwithordernumberonit)
12.Simulation.3.3.3.1(ExecuteTransferordertokitchen)
13.Simulation.2.1.1.1(ExecuteDisplayonthekitchenscreen)
14.Simulation.3.3.4.1(Addtheneworderlastinthelistofexistingorder)
VSN3.(ThisVSNsimulatesthekitchenscreencomponentanditsinteractionwiththesoftwaresubsystem.Thisshowsacomponentlevel
verificationbyexecutingthescenariowhereanassemblersignalsacompletedorder).
1.Simulation.3.3.5.1(Executeremovingofitemfromkitchenscreenwhentouchedandfillitsdisplaywithnextorder)
VSN4.(ThisVSNsimulatesthesystemadministrationcomponentofthesoftwaresubsystembyexecutingthescenarioofenteringasystem
administratormenuandchangingthemenu)
1.Simulation.3.5.2.1(Executematchingofinputlogin/passwordwiththatsuppliedinthefile)
2.Simulation.3.5.1.1(Executechangeofpasswordofsystemadministrator)
VSN5.(1.0SystemLevelRequirement)(Thisisasystemwidesimulation,whichnotestheinteractionofthestaff,hardwareandsoftware
subsystem.Inthissimulationwecanshowthatcomponentlevelverificationdoesnotessentiallymeanthesystemlevelverification.Different
systemdesignsoptionsforthetradeoffanalysiswereobtainedbythisVSN.)
1.Simulation.1.2.1(Inasystemwidesimulationnotethenumberofcustomerserveddesignatedasthroughputandmaximumpeoplewaiting
intheline.)
2.Simulation.1.4.1(Dividethetotalcostofcookresourcebythetotalnumberofhoursworkedtoseeifitcomesouttobe$5/hr.)
3.Simulation.1.5.1(Dividethetotalcostofassemblerresourcebythetotalnumberofhoursworkedtoseeifitcomesouttobe$4.75/hr.)
4.Simulation.1.6.1(Dividethetotalcostofcookresourcebythetotalnumberofhoursworkedtoseeifitcomesouttobe$4.5/hr.)
VSN6.(CardAcceptor/ReaderandModem3.2and3.4ComponentLevelRequirements)ThisVSNsimulatestheinteractionbetween
softwareandhardwaresubsystembyseeingtheinteractionbetweencardprocessor,cardreaderandthemodemanditseffectiveinterpretationby
thesoftwarebychangingthedisplayonthetouchscreendisplay).
1.Executeplaceorderscenariobyaddingsomeitem.
2.Executepaybill.
3.Executethecreditcardpaymentscenario.
4.Simulation.3.5.3.1(Initializethemodemtodialthebankandsupplytheinformation)
5.Simulation.3.4.2.1(Transmit,authorizeandapprovaloftransaction)
6.Simulation.3.4.1.1(Seetheresultofmaximumtimetakentocompletesimulation.3.4.3.1andsimulation.3.4.1.1.)
VSN7.(PaymentSystem2.2.SubsystemLevelRequirements)(ThisVSNdemonstratesthecomprehensivetestingofthesoftwareand
hardwaresubsystemoftheautomatedorderingprocess.Inparticularitstressesonthegraphicaluserinterfacedisplayonthetouchscreenandthe
cashpayment/cashreturnsystemandtheirinterfacingwiththesoftwarewhichcausesthedisplaytobechanged.Wetestaparticularscenarioin
whichauserplacesanorderofabout$17(assumption)anddecidestopaycashbygivingsomeunusualinputsasspecifiedintheprimary
verificationplan.Thissequencewaschosenbecauseitinvolvesonlyoneprototypeandoneuserandcanbedonesequentially.)
1.Demo.2.1.2.1(Checkforlanguageselection)
2.Examination.3.3.7.1(Contrastrequirementbetweenforegroundandbackground)
3.Examination.2.1.2.1(Canyouplaceorderbyitemnameornumber)
4.Test.3.3.8.1(Measurethesmallestfontofthescreen)
5.Demo.3.1.1.1(Touchingthescreenlightlycausingnoactiontohappen)
6.Demo.3.1.1.2(Applynormalpressureonthetouchscreenforaninput)
7.Demo.2.1.2.1(Selectsanitemonthescreenbytouchingit)
8.Demo.2.1.3.1(Checkiflanguageselectionmadeinbeginningisaccounted)
9.Test.3.3.8.1(Measuresmallestfontsizeonthescreenbyascale)
10.Demo.2.2.2.5(Clickonthepaybillbuttontoseeifyouhaveanoptiontopaywithcash)
11.Demo.2.2.2.2(Insertafakebilltoseeifthecashacceptorrejectsit)
12.Demo.2.2.2.3(Insertacurrencyfromothercountrytoseeifthecashacceptorrejectsit)
13.Demo.2.2.2.4(Insertacoinfromothercountryinthecashslottoseeifthecashacceptorrejectsit)
14.Demo.2.1.3.1(Inspectifthelanguageselectionisbeingadheredto)
15.Test.3.3.8.1(Measurethesmallestfontsizeonthescreen)
16.Demo.2.2.2.1(Finallyenteracorrectbill.Seeiftouchscreendisplaychanges)
17.Demo.2.2.4.1(Entera$1billfaceup.Seeiftouchscreendisplaychanges)
18.Demo.2.2.4.2(Entera$1billfacedown.Seeiftouchscreendisplaychanges)
19.Demo.2.2.4.1(Entera$5billfaceup.Seeiftouchscreendisplaychanges)
20.Demo.2.2.4.2(Entera$5billfacedown.Seeiftouchscreendisplaychanges)
21.Demo.2.2.5.1(Enterapennywithfaceup.Seeifcashacceptorrejectsit)
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

32/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

22.Demo.2.2.5.2(Enterapennywithfacedown.Seeifcashacceptorrejectsit)
23.Demo.2.2.5.3(Entera$50billwithfaceuptoseeifcashacceptorrejectsit)
24.Demo.2.2.5.4(Entera$50billwithfacedowntoseeifcashacceptorrejectsit)
25.Demo.2.2.5.5(Entera$100billwithfaceuptoseeifthecashacceptorrejectsit)
26.Demo.2.2.5.6(Entera$100billwithfacedowntoseeifthecashacceptorrejectsit)
27.Demo.2.2.6.1(Trytoentera$1coin)
28.Examination.2.2.6.1(Inspecttofindthattheslotissmaller)Enteraquarter
29.Demo.2.2.7.2(Entera$10bill.Observethemessagethatthechangerequiredtobegivenexceeds$5.Pleasetryagainandallcashcomes
out)
30.Demo.2.2.7.1(Entera$20bill.Countchangerefunded)
31.Examination.2.2.1.1(Checkthereceiptprintedtoseeiftheordernumberisprintedonit)
VSN8.(OrderingSystem2.1SubsystemLevelRequirement)(ThisVSNdemonstratesthecomprehensivetestingofthesoftwareand
hardwaresubsystemoftheautomatedorderingprocess.ThisVSNisexecutedconcurrentlywithVSN7totesttheFCFSqueuingrequirementto
besatisfiedbytheorderingsubsystem.ThisVSNteststhescenariowhereauserhasplacedacomboorderandthenistryingtomakethe
paymentusinghiscreditcard.ThisVSNcomprehensivelyteststhepaymentsystembyswipingfake,expire,overthelimitcardorthecardswith
invalidpinetctoseeifsoftwaresubsystemworksinharmonywithbankdatabaseandcangenerateappropriateerrormessage.Apartfromthe
paymentsystemGUIanddisplayrequirementsarealsotested.)
1.Demo.2.1.3.1(MakeSpanishlanguageselectiontostart)
2.Demo.3.1.1.5(Takeacombofoodoptionbyalmosthittingthescreenwiththefinger)
3.Demo.2.1.2.2(Selectthecombooption.ThishastobeperformedsimultaneouslywithDemo.9.5asmentionedabove)
4.Demo.3.3.2.1(Takethepaybilloptionandseeifsystemprovidesascreentochoosethemodeofthepayment)
5.Examination.3.2.1.1(Inspectifsystemhasacardreaderwhereyoucanswipeyoucredit/debitcard)
6.Examination.3.2.3.1(Inspectthetypeoftheslotinthecardreader)
7.Demo.2.2.3.1(TrytoswipeastorecardoruniversityIDwithamagneticstripatthebacktoobserveifthesystemrejectsit)
8.Demo.2.2.3.2(Swipeavaliddebitcard.Seeresponse)
9.Demo.2.1.3.1(ThroughoutDemo.5.1andDemo.5.2tocheckifthelanguageselectionmadeinthebeginningisadheredtoornot)
10.Test.3.3.8.1(Measurethesmallestfontsizeonthescreen)
11.Demo.3.3.6.3(Typeinvalidpinwhenaskedforitafterswipingdebitcard)
12.Demo.3.3.6.1(Swipeacreditcardwithbalancepastitscreditlimitandseetheresponse)
13.Demo.3.3.6.2(Swipeanexpiredcreditcardandseetheresponse)
14.Demo.2.2.3.3(Finallyswipeacreditcardwithremainingcreditbalanceonitandseetheresponse)
15.Demo.3.2.2.1(TobedonesimultaneouslywithDemo.5.3.Swipethecreditcardveryslowly)
16.Demo.3.2.2.2(Swipethecardatnormalspeedthistime)
17.Test.3.4.1.1(Measurewithastopwatchthemaximumtimeittakestocompletethetransaction)
18.Demo.3.5.3.1(Seethechangingdisplayonthetouchscreeninaccordancewiththelanguageselectionmadeinthebeginningasthe
modemisinitializedandtalkswiththebanktoapprovethetransaction)
19.Demo.3.4.2.1(Continuenotingthedisplayonthetouchscreenafterthemodemisconnectedtobankandbanknowrespondswiththe
resultoftherequestedtransaction)
20.Examination.2.2.1.1(Checkiftheordernumberisprintedonthereceipt)
21.Examination.3.3.3.1(Signalthepersonstandingonthekitchentouchscreenonceplacingoforderandpaymentiscompleted)
22.Examination.3.3.4.1(Displayonthekitchenscreenchangesandthisneworderisaddedlastintheexistingqueue)
23.Demo.3.3.5.1(Personstandingatthekitchentouchscreentosignaltothesoftwaresubsystemthattheorderhasbeendelivered)
24.Demo.2.1.1.1(SinceVSN8takeslesstimetocompletethanVSN7whicharetakingplacesimultaneouslyontwodifferentprototypes)
VSN9.(ThisVSNtestthesystemadministratorcomponentofthesoftwaresubsystemandascertainsitcorrectworking)
1.Demo.3.5.2.1(InSysadminmenutypecorrectlogin/incorrectpassword)
2.Demo.3.5.2.2(InSysadminmenutypeincorrectlogin/correctpassword)
3.Demo.3.5.2.3(InSysadminmenutypeincorrectlogin/incorrectpassword)
4.Demo.3.5.1.1(InSysadminmenutypecorrectlogin/passwordthenchangeit)
5.Examination.3.5.1.1(ApersonstandingnearbyseesX'swhilepasswordisbeingtypedonthescreen)
6.Examination.2.1.6.1(Inspectthekeyboardlayout)
VSN10.(1.0SystemLevelRequirements)(Thisisasystemwidetestingwhentheprototypeinputintheoperationalcontext.Thistesting
revealstheinherentflawsinthesystemintermsofoutputperformancemeasureslikethroughputandlengthofqueuegeneratedatthetouch
screensonwhichthetradeoffofthesystemisperformedamongtheavailablechoicesintheprecedingsection.)
1.Examination.1.1.1(Inspectthetimeofoperation)
2.Examination.1.2.1(Inspectthemaximumthroughput)
3.Examination.1.3.1(Inspectthetypeofemployeesworking)
4.Examination.1.4.1(Inspectthesalarypaidtocook)
5.Examination.1.5.1(Inspectthesalarypaidtoassembler)
6.Examination.1.6.1(Inspectthesalarypaidtocleaner)
7.Examination.1.7.1(Inspectthelengthofqueuewhichcausesacustomertoleave)
https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

33/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

CoverageandCompleteness
NowsincetheVSN?sarecompletedwemovetoverifythehigherlevelsystemsrequirement,whichweresuppliedbytheendusertocheckthem
againsttheVSN?sandprimaryverificationplan.
1.Systemsupportsnativelanguageofthecountryandothercommonlyspokenlanguages.(Demo2.1.3.1,Simulation2.1.3.1)
2.Usershouldbeabletoplaceorderaccordingtohischoices.(Demo2.1.2.1,2.1.2.2,Examination2.1.2.1)
3.Usershouldbeabletomakepaymentusingcash/credit/debitcard.(Demo2.2.2.12.2.2.5,2.2.3.12.2.3.3,2.2.4.12.2.4.2,3.3.2.1,
Simulation2.1.2.5,2.2.4.1,3.3.2.1)
4.Usershouldgetareceiptandatokennumberaftermakingthepayment.(Simulation2.2.1.1,Examination2.2.1.1)
5.Thesystemshouldbeabletotakeanytypeofinputs,oncehetouchestherespectivebutton.(Demo2.1.2.1,2.1.2.2,Examination2.1.2.1)
6.Thesystemshouldbeabletocalculatethebillandprompttheuserforthemodeofpaymentandgenerateareceipt.(Demo3.3.2.1,
Simulation2.2.1.1,3.3.2.1,Examination2.2.1.1)
7.Thesystemshouldbeabletopassontheorderinthekitchenforprocessing.(Simulation2.1.1.1,2.2.1.1,3.3.4.1,Demo2.1.1.1,
Examination3.3.3.1,3.3.4.1)
8.Thesystemshouldbesecuredtorestrictthenumberofpeopletoenterthesystemtomakechangesinthemenuanditsitems.(Demo
3.5.1.1,3.5.2.1,3.5.2.2,3.5.2.5,Examination3.5.1.1,Simulation3.5.1.1,3.5.2.1,Test3.5.1.1)
9.Thesystemshouldbesturdyforroughusage.(Test3.1.2.1,3.1.2.2,Demo3.1.1.5)
10.Systemhasacashreturnmechanismwhichgivesrefundupto5$incoins.(Demo2.2.7.1,2.2.7.2)
11.Systemshouldbeabletocommunicatetothecentraldatabasetoverifytheauthenticityofthecredit/debitcard.(Demo3.4.2.1,Simulation
3.4.2.1)
12.SystemshouldallowStoremanagertoadd/delete/altersystemitems.(Demo3.5.1.1,Examination3.5.1.1,Simulation3.5.1.1)
13.Thesystemmustbeagraphicaluserinterfaceforeasyuseandunderstanding.(Examination3.3.1.1)
14.Thesystemmustbeabletoprompttheuserforthenextsteptobeperformedduringtheprocessofusingthesystem.(Demo3.3.6.1
3.3.6.4)
Henceweseethattracingthedesignbacktothehigherlevelrequirementssuppliedbytheusertheyaretestedbythegivenverificationplan.
Hence,weascertainthatthesystemiscompletelycoveredwithrespecttotheverificationandvalidation.
Wehavealsoshowntheverificationofsubsystemandthesystemlevelwhilespecifyingtheverificationstring.SowhileVSN1,3,6,4&9
correspondtocomponentlevelverificationoftouchscreen,kitchenscreen,CardAcceptor/ReaderandmodemotherVSN'scorrespondtoeither
subsystemlevelverificationandvalidation.VSN2,7and8eithersimulateordemonstratethesubsystemlevelverificationofsoftwareand
hardwaresubsystem.AgainVSN's5and10simulateandtestsystemlevelverificationcriteria.Sowecansaywithconfidencethatour
verificationplaniscompleteandaddressestheissuesofbottomupandtopdownverification.Soifthesystemcanbepassedbytheabove
verificationplanitwillsatisfytheuserrequirementandallcomponentswillactinharmonywitheachother.

ReferencesandWebResources
1.ExceltemplatetocalculatethelengthofqueueofMMSsystemhttp://www.courses.vcu.edu/MATH327/Shells/Mms.xls
2.MultiObjectiveOptimization
http://www.isr.umd.edu/Courses/BARASENSE623/secured/Class%20Handouts/TradeOff1.pdf
3.QueuingSystems:Math528StochasticOperationResearch
http://www.courses.vcu.edu/MATHjrm/MATH528/Slides/528QueuingAnalysis.ppt
4.CS6751GroupProject
http://www.cc.gatech.edu/computing/classes/cs6751_94_summer/davidz/project.html
5.CreatingandrunningasimplemodelsimulationusingArena
Seehttp://www.acsu.buffalo.edu/~thill/IE477/StartARENA.htm
6.CPLEXOnlineManualhttp://www.dmi.usherb.ca/laboratoires/documentationslogiciels/cplex75/cplex75/doc/homepage/manuals.html
7.FastFoodATMhttp://www.halfbakery.com/idea/Fast_20Food_20atm

Appendices
LPfileforCPLEXrun
Minimize
20X1+20X2+20X3+20X4+18Y1+18Y2+18Y3+
18Y4+19Z1+19Z2+19Z3+19Z4+16W
st
240(X1+X2+X3+X4)>=1680
240X1>=240
240X2>=720
240X3>=240
240X4>=420
2Z1X1>=0
2Z2X2>=0
2Z3X3>=0
2Z4X4>=0

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

34/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

bounds
X1>=1
X2>=1
X3>=1
X4>=1
Y1>=1
Y2>=1
Y3>=1
Y4>=1
Z1>=1
Z2>=1
Z3>=1
Z4>=1
W=7
generals

X1X2X3X4Y1Y2Y3Y4Z1Z2Z3Z4W
end

LogfileoftheCPLEXruns
Logstarted(V7.1.0)FriDec1315:03:202002
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1200
C2:240X1>=200
C3:240X2>=500
C4:240X3>=200
C5:240X4>=300
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified6coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.1900000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W7.000000
Logstarted(V7.1.0)FriDec1315:05:072002
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1680
C2:240X1>=240
C3:240X2>=720
C4:240X3>=240
C5:240X4>=480
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified2coefficients.
Allrowsandcolumnseliminated.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

35/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.1900000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W7.000000
Problem'work.lp'read.
Readtime=0.00sec.
C1:240X1+240X2+240X3+240X4>=1400
C2:240X1>=200
C3:240X2>=600
C4:240X3>=250
C5:240X4>=350
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.3900000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W7.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1600
C2:240X1>=250
C3:240X2>=650
C4:240X3>=250
C5:240X4>=450
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.5900000000e+02
Solutiontime=0.01sec.Iterations=0Nodes=0
VariableNameSolutionValue

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

36/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

X12.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W7.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1800
C2:240X1>=250
C3:240X2>=750
C4:240X3>=300
C5:240X4>=500
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.1800000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000
X32.000000
X43.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W7.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=2200
C2:240X1>=300
C3:240X2>=800
C4:240X3>=350
C5:240X4>=750
C6:W=7
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified5coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.3800000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

37/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

X32.000000
X44.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W7.000000
Problem'work.lp'read.
Readtime=0.02sec.
C1:240X1+240X2+240X3+240X4>=1200
C2:240X1>=200
C3:240X2>=500
C4:240X3>=200
C5:240X4>=300
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified6coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.3500000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W8.000000
Problem'work.lp'read.
Readtime=0.00sec.
C1:240X1+240X2+240X3+240X4>=1680
C2:240X1>=240
C3:240X2>=720
C4:240X3>=240
C5:240X4>=480
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified2coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.3500000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

38/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W8.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1400
C2:240X1>=200
C3:240X2>=600
C4:240X3>=250
C5:240X4>=350
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.5500000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W8.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1600
C2:240X1>=250
C3:240X2>=650
C4:240X3>=250
C5:240X4>=450
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.7500000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W8.000000

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

39/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1800
C2:240X1>=250
C3:240X2>=750
C4:240X3>=300
C5:240X4>=500
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.

Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.3400000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000
X32.000000
X43.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W8.000000
Problem'work.lp'read.
Readtime=0.02sec.
C1:240X1+240X2+240X3+240X4>=2200
C2:240X1>=300
C3:240X2>=800
C4:240X3>=350
C5:240X4>=750
C6:W=8
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified5coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.5400000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000
X32.000000
X44.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W8.000000
Problem'work.lp'read.
Readtime=0.01sec.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

40/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

C1:240X1+240X2+240X3+240X4>=1200
C2:240X1>=200
C3:240X2>=500
C4:240X3>=200
C5:240X4>=300
C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified6coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.5100000000e+02
Solutiontime=0.01sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W9.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1680
C2:240X1>=240
C3:240X2>=720
C4:240X3>=240
C5:240X4>=480
C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified2coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.5100000000e+02

Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X31.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W9.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1400
C2:240X1>=200

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

41/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

C3:240X2>=600
C4:240X3>=250
C5:240X4>=350
C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.7100000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X11.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W9.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=1600
C2:240X1>=250
C3:240X2>=650
C4:240X3>=250
C5:240X4>=450
C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=4.9100000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X23.000000
X32.000000
X42.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z41.000000
W9.000000
Problem'work.lp'read.
Readtime=0.00sec.
C1:240X1+240X2+240X3+240X4>=1800
C2:240X1>=250
C3:240X2>=750
C4:240X3>=300
C5:240X4>=500

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

42/43

9/22/2016

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified7coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.5000000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000
X32.000000
X43.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W9.000000
Problem'work.lp'read.
Readtime=0.01sec.
C1:240X1+240X2+240X3+240X4>=2200
C2:240X1>=300
C3:240X2>=800
C4:240X3>=350
C5:240X4>=750
C6:W=9
Triedaggregator1time.
MIPPresolveeliminated10rowsand13columns.
MIPPresolvemodified5coefficients.
Allrowsandcolumnseliminated.
Presolvetime=0.00sec.
Integeroptimalsolution:Objective=5.7000000000e+02
Solutiontime=0.00sec.Iterations=0Nodes=0
VariableNameSolutionValue
X12.000000
X24.000000
X32.000000
X44.000000
Y11.000000
Y21.000000
Y31.000000
Y41.000000
Z11.000000
Z22.000000
Z31.000000
Z42.000000
W9.000000

DevelopedbyVimalMayankandDeepSaraf
ReformattedandslightlymodifiedbyMarkAustin,May2003
LastModified:09/22/201618:25:23
Copyright2003,DeepSaraf,MarkAustinandJohnBaras.Allrightsreserved.

https://www.isr.umd.edu/~austin/ense621.d/projects04.d/projectfoodordering.html

43/43

You might also like