Professional Documents
Culture Documents
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
Lun
Nn
Din
Avg
419
200
500
200
300
419
240
720
240
480
439
200
600
250
350
459
250
650
250
450
518
250
750
300
500
538
300
800
350
750
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
10
475
250
650
250
450
11
534
250
750
300
500
12
554
300
800
350
750
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.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