Software Testing Midterm
Software Testing Midterm
Midterm1
CSC300
ClarkSavageTurner
Winter2007
Name:
_______________________________________________
Course:
CSC30001
Instructions
1. Donotputyournameonindividualquestions,justonthetopsheet,Itrytogradeasblindas
possible:)
2. Youmayuseanyofyournotes/booksforthisexam.Internetsearchandlabworkstations
maybeusedinresearchandproducingyourexamanswers.Cellphonesmustbeturnedoff.
3. Ifhandwritten,youshouldhaveenoughspacegivenonthepagetoanswerthequestion
adequately.Ifabsolutelynecessary,usethebackofapage.
4. ForTrue/Falsequestions,giveaverybriefreasonifyouneedto.
5. Forshortanswerandessays:clarity,concisenessandlegibilityareanimportantpartofthe
gradeyoumustbeabletocommunicateyouranswerseffectively.
6. Asrepeatedlydiscussedinclass,essaysmustexhibitagoodunderstandingofthefacts,the
issue,therulesandprinciplesthatapply.Alternativeargumentsmustbemadeandcriticism,
synthesisorcreativitymustbeusedtocometoyourownrationalconclusion.Remember,
reasoningintheairwillnotsuffice.Useknownfactsandexamplestoapplytherulesand
principlestocometoasolidconclusion.(Youmayradicallydifferwithmyopinionandstill
receiveahighgradeonthebasisofrationalandprincipledanalysis.)
7. Opinionsareirrelevantonthisexam.Creditisgivenonlyforreasonedanswerssupportedby
facts,argumentsandanalysis.
8. Youhaveabout80minutestocompletetheexam.Planyourtimeaccordingly.
questiontype
true/false
shortanswer
essays
Page1
CSC300Midterm
#ofquestions
worth(%)
grade(%)
20
2pts/=40
5
4pts/=20
totalgrade
2
20pts/=40
TRUE/FALSEsection.20at2ptseach.Circleoneofthebooleanvaluesattheleftforthe
truthvalueofthenumberedstatementsbelow.Ifabsolutelynecessary,writeaverybriefreason
belowthestatementasajustification.
true
false
1.
TheIEEE/ACMSoftwareEngineeringCodeofEthics(SECode)
requiresSoftwareEngineerstoobeythelawatalltimes.
true
false
2.
TheCode,byitsowndeclaration,doesnotapplytostudentsor
professorsofsoftwareengineering.
true
false
3.
AccordingtotheCalPolyRUP,portscanningisnotaresponsibleuseof
computingresources.
true
false
4.
Weyukerbelievestheoracleproblemmayneverbecompletelysolved.
true
false
5.
Anormativestatementisonewhichmerelydescribesaphenomenon.
true
false
6.
Ifproperlyqualified,youcouldbelicensedtopracticeasaSoftware
EngineerbytheStateofCalifornia.
Page2
CSC300Midterm
true
false
7.
WeshouldnotuseJavaforanysecuritycriticalsystemsisa
normativestatement.
true
false
8.
ThesafetycriticalflaggivenintheTheracexamplewasonly8bits
wideisadescriptivestatement.
true
false
9.
TheSECoderequiresthatsoftwareengineersreportviolationsof
IntellectualPropertylawthattheyobserveduringwork.
true
false
10.
true
false
11.
true
false
12.
UniversityofCaliforniastudentsarenotsubjecttoCaliforniaPenal
Codesection502.
true
false
13.
ProfessorTurnersecretlyadmiresProfessorFisher.(hint:itstrue!)
true
false
14.
TheSECodemainlytakesautilitarianperspective.
true
false
15.
true
false
16.
TheSECoderequiresthatsoftwareengineersmakesignificanttradeoffs
availableforconsiderationbythepublic.
Page3
CSC300Midterm
true
false
17.
Hamletclaimsthatreliabilitytheoriesmaybeappliedtosoftware
wheneverastatisticallysounduserprofileisavailable.
true
false
18.
Hamlet believes that good processes and methods can result in "defect
free software."
true
false
19.
TheSECodeprovidesforcertainpenaltiesincaseswhereitsprovisions
areviolated.
true
false
20.
[email protected],succinctanswers
tothequestionsinthespaceprovided.
21.
Givemeoneofthebest[orworst]provisionoftheSECode.(a)Writeuptoone
paragraphofexplanationastowhyitisgoodorbad.(b)Giveanexampletoillustrate
yourpoint.
Page4
CSC300Midterm
22.
GiveanexampleofaviolationofthelastclauseofSECOEsection3.01andillustrate
thepossiblesocialconsequencesofsuchaviolation.Makeitasrealisticand
appropriateaspossible.
23.
DoyouthinkthatSECOEsection7.02(alsolookat7.03)conflictswiththegeneral
classroompoliciesregardingcooperationonhomeworkandprogramming
assignments?Lookatbothsidesandexplainyouranswer.
Page5
CSC300Midterm
24.
Are there sections of the SE Code you could use to support Open Sourcing software?
Explain very briefly.
25.
Page6
CSC300Midterm
ESSAYsection.2essays@20pointseach.HereIgiveasimplecasetoponder.Iwantyouto
performsomebasicethicalanalysistocometoareasonedconclusion.Clarity,conciseness,
reasoningfromfacts,alternativeargumentsandrulesarerequired.Citationstootherarguments
willstrengthenyouranswer(formofcitationnotimportantaslongasIcanunderstanditand
ask
youforthecorrectformlaterifneeded.)
26.
SupposeyougraduatefromCalPolyandapplyforjobs.Onecompany,Undercover
Systems,isveryinterested,buttheydonttalkmuchaboutthedutiestheyllassign
you,justthatyoullbeprogramminginaninterestingenvironment.Youvejust
gottenmarriedandboughtahome,yourmortgagepaymentsareprettyhighandyour
partnerishometakingcareofyourverysickmothereveryday.Undercovermakes
youaveryattractiveofferandyouaccept,stillwonderingwhatthejobisabout.
Beforeyourehired,youareaskedtosignaNondisclosureagreement(whereyou
agreenottospeakaboutthejob,thepeoplewhoworkthere,orwhatgoesonthere)
andtoldthatyouwillworkasaninformationretrievaloperativewhereyouwrite
programsdesignedtocovertlyconnecttotargetPCsontheinternet,gatherdata,and
senditbacktothecentraldatabaseforanalysis.ThisisalldonewithoutthePC
ownersknowledgeorconsent.
Youspeaktoyourmanagerwhoassuresyouthattheworkisundercontractwiththe
USGovernment(but[s]heisnotallowedtoshowyouanydocumentation,itissecret)
andthatthetargetsarepotentialterrorists,sothattheprotectionofinnocentlivesisat
stake.Youarethentoldtogettoworkrightaway,therearedeadlinesandyoumust
Page7
CSC300Midterm
performorcouldreceiveapoorjobevaluationandloweryourchancesfor
advancement.
AnswerthisusinggeneralethicalprinciplesandtheSECode.Notethatpartsa,b,c,
dareoptional,butveryhelpfulinsettingupvariouspartsofyouranswer.Youmay
answerthesepartsandIwillconsiderthemforpartialcredit,butinallcases,you
mustwriteacompleteanswerwithanalysistoparte.
(a.) List5factsthatraiseimportantethicalissuesinthisproblem.Thesefactsshould
begiveninverybriefphrasessuchassickchildrendependonincomefromthe
jobormedicaldevicesuccessfulcureofhundredsoflives,only3killed.
(b.) Listthreeimportantissuesyouwouldconsiderinanalyzingthisproblem.
Numberthemtomatchwithlaterreasoning.Theseshouldbeinverybrief
phrasessuchasisitethicaltakeanonweaponsrelatedjobworkingforthe
militarywhenIamapacifist?
(c.) ListapplicableSECoderulesandotherethicalprinciplesthatapplytotheeach
numberedissuethatwillhelpyoudoyouranalysis.Atleastoneruleorprinciple
perissue,probablymore.Writeouttherulesinshortphrasesratherthansimply
theCodesectionnumberdesignations.
Page8
CSC300Midterm
(d.) Givemeaverybrieflistofalternativeargumentsoneachissue.(Matchissueto
argument.)
(e.) Analyzeeachissueinturntocometoonereasonedconclusiononthewhole
matter.
Page9
CSC300Midterm
27.
Suppose you write a paper extending Weyuker's analysis in her paper, "On Testing
NonTestable Programs" for your CSC 300 class and you publish it in an IEEE journal.
You show that testing of software still isn't anywhere near an exact science and that
we, as yet, have no objective measure for the "strength" or "thoroughness" of testing.
You admit that we can get a bug list that clearly helps avoid certain problems, but that
is the only certain result of testing. The IEEE asks you to write some guidelines
regarding the Software Engineering Code of Ethics section 3.11. You'll write
guidelines involving adequacy of test documentation and you'll give very brief
justification for each guideline.
Page10
CSC300Midterm
Page11