Beruflich Dokumente
Kultur Dokumente
Chapters18
Exam#1Thursday,Oct.2
Reviewslideswillbepostedonthecourse
website:
http://www.cecs.missouri.edu/~skubic/332/
Officehours
Dr.Skubic:Tues.,23:30p.m.
JasonGoffeney:Tues.,12:301:50p.m.
Wed.,13p.m.
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide1
Chapter1OverviewandIntro
toSoftwareEngineering
FrequentlyAskedQuestionsfromFig.1.1
Whatisthedisciplineofsoftwareengineering?
Whyisitimportant?(developmentcostissues)
Whatisasoftwareproduct?(programs,
documentation,&configurationdata)
Whatisthesoftwareprocess?
WhatareCASEtools?
Responsibilitiesandethics
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide2
Chapter2SystemEngineering
Relationshipbetweenthesoftwareandthesystem
Systemmodelingdescribingthearchitecture
usingablockdiagram
Thesystemengineeringprocessanditschallenges
aresimilartothesoftwareengineeringprocess
anditschallenges
Emergentpropertiesofreliability,usability,
safety,security,andevenperformance
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide3
Chapter3TheSoftwareProcess
Genericdevelopmentphases:
Softwareprocessmodels:
specification,design,implementation,testing/validation,
maintenance/evolution
Waterfall
Evolutionary(revisitinCh.8)exploratoryvs.throwaway
Formalsystemsdevelopment
Reusedevelopment
IterativemodelsIncrementalandSpiral
Underwhatconditionswouldyouuseeachmodel?
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide4
Homework#1Solutions
1.Pickthemostappropriategenericsoftware
processmodelforasystemtocontrolantilock
brakinginacar
ANSWER:Formalsystemsdevelopmentbecauseof
thesafetycriticalsystem
[fromChapter3]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide5
Homework#1Solutions
1.Pickthemostappropriategenericsoftware
processmodelforavirtualrealitysystemto
supportsoftwaremaintenance
ANSWER:Exploratorydevelopmentbecausethe
requirementswouldbehardtodeterminein
advance.
[fromChapter3]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide6
Homework#1Solutions
1.Pickthemostappropriategenericsoftwareprocess
modelforauniversityaccountingsystemthat
replacesanexistingsystem
ANSWER:Thewaterfallmodelwouldworkhere.The
requirementsshouldbestablebecauseitis
replacinganexistingsystem.Ifthereareexisting
componentsthatareusable,thenreuse
developmentwouldalsobeappropriate.
[fromChapter3]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide7
Homework#1Solutions
1.Pickthemostappropriategenericsoftwareprocess
modelforaninteractivesystemforrailway
passengersthatfindstraintimesfromterminals
installedinstations
ANSWER:Thesystemwillhaveacomplexuser
interfacebutitmustbestableandreliable.Use
throwawayprototypingtofindtherequirements
andthentheincrementalorwaterfallmodel.
[fromChapter3]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide8
Homework#1Solutions
2.Explainhowboththewaterfallmodelandtheprototyping
modelcanbeaccomplishedinthespiralprocessmodel.
ANSWER:Thespiralmodelwilllookdifferentdependingonthe
natureoftheprojectandtheassociatedrisks.Withlowrisk
specificationandnoneedforprototyping,thespiralmodel
lookslikethewaterfallmodel.Withhighriskspecification
thatcallsforprototypingtodiscovertherequirements,the
spiralmodellooksliketheprototypingmodel.
[fromChapter3]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide9
Chapter4ProjectManagement
Whyissoftwareprojectmanagementsodifficult?
Managementtechniques
Distinctivechallenges,e.g.,anintangibleproduct
Milestones,reviews,deliverables
Barchartsandactivitynetworks
RiskManagement
Identifyingrisks
Differenttypesofrisks
Managingrisks
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide10
Homework#1Solutions
4.Explainwhytheintangibilityofsoftwaresystems
posesspecialproblemsforsoftwareproject
management.
ANSWER:Softwarecannotbeinspectedlikea
concreteitemsuchasahouse.Itishardtotell
exactlywhatthestatusofthedevelopmentis.
[fromChapter4]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide11
Chapter5SoftwareRequirements
Typesofrequirements
Howtorepresentrequirements
structuredlanguagevs.PDL(programdescriptionlanguage)
Thesoftwarerequirementsdocument
Userrequirementsvs.systemrequirements
Functionalrequirementsvs.nonfunctionalrequirements
Domainrequirements
Whatisincluded?
Potentialproblems
Listingrequirementsinmeasurableterms
Findingambiguitiesandomissions
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide12
Homework#1Solutions
3.Giveanexampletodistinguishbetweenuserrequirements
andsystemrequirements.
EXAMPLE:
Userrequirements:(innaturallanguage)ThehospitalPDA
mustinterfacetoadatabasewhichstoresthepatient
information
Systemrequirements:(withdiagrams)Specifythetypeof
databasesystemandanentityrelationshipdiagramto
showwhatpatientinformationwillbestoredandwith
whatrelationships.
[fromChapter5]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide13
Homework#2Solutions
1.Writeuserrequirementsforanunattendedgaspumpsystemusingnatural
languageinastandardway(likeFig.5.10and5.11)
ANSWER:
1.Fueldeliverysystem
1.1Thesystemshouldprovideanunattendedfueldeliveryservicewhereaspecified
amountoffuelisdeliveredtocustomers.Thecostisdeductedfromthecustomers
creditcard.
1.2Thesequenceofactionstodispensefuelshouldbe:
1.Thecustomerselectsthetypeoffueltobedelivered.
2.Thecustomerinputseitheracashlimitorthemaximumamountoffueltobe
delivered.
3.Thecustomervalidatesthetransactionbyprovidingcreditcarddetails.
Rationale:Theamountoffuelalloweddependsonthecreditlimitbutcustomersmay
wishtofillupratherthanspecifyacertainamountoffuel.Byspecifyingthe
maximum,thesystemcancheckifcreditisavailable.
4.Thepumpisactivated.Fuelisdelivered.
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide14
HW#2,question1,continued
5.Thetransactionisterminatedeitherwhenthepumpnozzleisreturned
toitsholsterfor15secondsorwhenthecustomersfuelorcash
limithasbeenreached.
Rationale:Terminationshouldnotbeimmediatewhenthenozzleis
returnedasthecustomermaywishtorestartthetransaction,e.g.,to
fillthefuelcanaswellasthecar
6.Areceiptisprinted.
7.Thefuelstockisupdated.
Specification:PUMP_SYS/FS.Section1.
[fromChapter5]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide15
Homework#2Solutions
2.Describeany2typesofnonfunctionalrequirements.Givean
exampleforthegaspumpsystem.
ANSWER:
examples:performance,efficiency,space,portability,safety,
ethical,standards(SeeFig.5.3)
Forgaspumpsystem:
1.
Mustfollowthestandardinterfacelookestablishedbythe
client(e.g.,layoutandcolor)
2.
Mustbeimplementedontheclientsexistinghardware
platform
[fromChapter5]
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide16
Chapter6Requirements
EngineeringProcesses
Phases(whatartifactisproducedaftereachphase?)
Potentialproblems
feasibilitystudy
requirementselicitationandanalysis
requirementsspecification
requirementsvalidation(reviewslides)
e.g.,stakeholdersdontknowwhattheywant;conflicts,etc.
VORDviewpointorientedrequirementsdef.
Usecases(reviewextraslidesposted)
Associationsincludes,extends,generalization
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide17
Therequirementsengineeringprocess
Feasibility
study
Requirements
elicitationand
analysis
Requir ements
specification
Feasibility
report
Requirements
validation
System
models
Userandsystem
requirements
Requirements
document
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide18
Problemsofrequirementsanalysis
Stakeholdersdontknowwhattheyreallywant
Stakeholdersexpressrequirementsintheirownterms
Differentstakeholdersmayhaveconflictingrequirements
Organisationalandpoliticalfactorsmayinfluencethe
systemrequirements
Therequirementschangeduringtheanalysisprocess.
Newstakeholdersmayemergeandthebusiness
environmentchange
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide19
HomeAutomationexample
factoroutcommonfunctionalitywith<include>
<<include>>
ToggleHotTub
TeaPot
<<include>>
ToggleAppliance
ToggleShades
<<include>>
Shades
ToggleTeaPot
HotTub
User
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide20
HomeAutomationexampleusing<extend>
<<extend>>
False Alarm
User
Sound Alarm
Entry Sensor
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide21
Simplifiedwithanabstractusecasegeneralization
BuyOneWayTicket
TransactionAborted
<<extend>>
Traveler
BuyWeeklyCard
<<extend>>
DistributorException
<<extend>>
DistributorOutOfChange
BuyMonthlyCard
CentralCompSys
ComputerScienceDept.
UpdateTariff
ReviewforExam#1Ch.18
Slide22
Homework#2Solutions
3.DrawaUseCasediagramforthegaspumpsystem
read&validatecreditcard
selectfueloptions
customer
dispensefuel
debitcreditcard
<include>
[fromChapter6]
ComputerScienceDept.
printreceipt
ReviewforExam#1Ch.18
credit
card
company
Slide23
Chapter7SystemModels
Contextmodel
Behavioralmodel
Dataflowdiagram(alsocalledprocessmodel)
Statediagram
Datamodel
Thecontextdiagram
Entityrelationshipdiagram
Datadictionary
Objectmodels
Hierarchyshowinginheritance
Aggregation
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide24
ContextDiagram
ThecontextofanATMsystem
Security
system
Branch
accounting
system
Account
database
Auto-teller
system
Branch
counter
system
Usage
database
Maintenance
system
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide25
Homework#2Solutions
4.Drawacontextdiagramforapatientinformationsysteminahospital.
Includeimagestorageforxraysandapatientadmissionssystem.
imagedatabase
hospital
admissions
system
[fromChapter7]
ComputerScienceDept.
patientinformation
system
medical
records
system
drugdispensing
system
ReviewforExam#1Ch.18
Slide26
DataFlowDiagram:
Equipmentprocurementprocess
Delivery
note
Specify
equipment
requir ed
Equipment
spec.
Validate
specification
Equipment
spec.
Supplier
database
Checked
spec.
Supplier list
Find
suppliers
Accept
delivery of
equipment
Get cost
estimates
Spec. +
supplier +
estima te
Choose
supplier
Order
notification
Order
details +
Blank order
form
Place
equipment
order
Checked and
signed order form
ReviewforExam#1Ch.18
Delivery
note
Check
delivered
items
Installation
instructions
Install
equipment
Installation
acceptance
Accept
delivered
equipment
Equipment
details
Equipment
database
Slide27
StateDiagram
Microwaveovenmodel
Full
power
Full power
do: set power
= 600
Timer
Waiting
do: display
time
Half
power
Number
Full
power
Half
power
Door
closed
Timer
Cancel
Door
open
Half power
do: set power
= 300
Operation
do: operate
oven
Set time
do: get number
exit: set time
Door
closed
Start
Enabled
do: display
'Ready'
Door
open
Waiting
do: display
time
Disabled
do: display
'Waiting'
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide28
EntityRelationshipDiagram
SemanticDatamodelofaSoftwaredesign
Design
1
name
description
C-date
M-date
is-a
has-nodes
has-links
1
Node
Lackdetails
andneedtobe
supplemented
byDD
has-links
name
type
2
Link
n
1
links
name
type
1
has-labels
has-labels
Label
n
ComputerScienceDept.
name
text
icon
ReviewforExam#1Ch.18
Slide29
Nameofobjectclass
Library item
ClassDiagram:
PartofaLibrary
classhierarchy
Catalogue number
Acquisition date
Cost
Type
Status
Number of copies
Classattributes
Acquire ()
Catalogue ()
Dispose ()
Issue ()
Return ()
Objectsoperations
Published item
Recorded item
Title
Medium
Title
Publisher
Book
Author
Edition
Publication date
ISBN
Magazine
Year
Issue
Film
Director
Date of release
Distributor
Computer
program
Version
Platform
ClassDiagram:
Objectaggregation
Study pack
Course title
Number
Year
Instructor
Assignment
Slides
Credits
Exercises
#Problems
Description
ComputerScienceDept.
Lectur e
notes
OHP slides
Text
Videotape
Tape ids.
Solutions
Text
Diagrams
ReviewforExam#1Ch.18
Slide31
Chapter8SoftwarePrototyping
Evolutionaryprototyping
Throwawayprototyping
Startwithrequirementsyouleastunderstand
Throwawaytheprototypeandstartover
Advantages&Disadvantages
Rapidprototypingtechniques
Startwithrequirementsyouunderstandthebest
Delivertheprototype
HLlanguage,DBprograms,componentassemblywithre
usablecomponents
Userinterfaceprototyping
ComputerScienceDept.
ReviewforExam#1Ch.18
Slide32