Unformatted text preview:

27 FebruarySlide 2Midterm Presentations: PurposeMidterm Presentations: LogisticsPresentations: The BasicsPresentations HintsPresentations GradingPresentation ContentMotivationDesignExamples of Architecture PicturesTwo links sent to me …The Goal of Software EngineeringSoftware CraftmanshipWhy Industry Practices?Software Engineering HistoryBoNY (1985)Cost of BugCause of bugThe Drama continues…Therac-25 (1985-1987)Therac-25Therac-25 TurntableWhat Happened?What would cause that to happen?Source of the BugBack to History1960’sStructuring Software DevelopmentISO 9000Which brings us back toThe 4 P’s of Software EngineeringProductProcessSoftware Engineering Elaborated StepsSoftware Engineering ProcessesIntegrated Product Development: The IBM ApproachRational Unified ProcessUnified Process MatrixExtreme ProgrammingWhy XP?1995 Standish Group StudyAgile MethodologiesExtreme Programming: HistoryXP Bills of Rights27 FebruaryA Broader PerspectiveTriangle Technology Executive PanelFriday, 2 March3:30 p.m.Sitterson 014For more info, seehttp://www.cs.unc.edu/~pozefsky/TTECPanel.htmlCapital AnalyticsFind out about local businessesAsk questions about the industryLearn what companies are looking for in employeesNetworkMidterm Presentations:PurposeYou don’t understand something until you’ve taught itClarification of your thought process and understandingSharpen your understanding of the projectFacilitate sharingLearn from each otherPractice presentingMidterm Presentations:LogisticsMarch 6 and 8Requests acceptedAssignments will be made at team meetings15 minute presentations (excluding set up)Copies of charts to be posted on websiteFull attendance is expectedPresentations: The BasicsSpeak loudly and clearlyStand upNo chewing gum when speakingSpeak, don’t read: you ARE the expertsPractice, practice, practiceSet up and test demos and laptops earlyPresentations HintsCover all topics, but they don’t need equal time!Focus on what’s special about your projectDon’t try to cover too muchKeep it lightGive the audience something to look atPresentations GradingContent and style countSingle grade for groupEveryone does NOT need to presentPresentation ContentMotivationIntroduction to the area and project Key domain problems to be addressed“Use Cases”Who are the usersWhat do they need to doDesignSystem design and further detail as neededKey technical problems to be addressedTechnologies being used (and why)Demo: what you present to your customer this weekAny interesting “why”sMotivationTell the class about the problemInformation about the groupSimilar websitesHow things are done todayWhat are the problems being facedWhy is the project being doneDesignThe first picture that you would draw for a new team memberSharing with other teamsTechnologiesMajor problems (solved or open)Examples of Architecture PicturesGame EngineSoundFile I/OController I/OVisualInterfaceOmegaCONTROLLoginMonster CombatBreedVerifyUserLoginMODEL VIEWMonsterTwo links sent to me …Humor: If Programmers Had to Build Planeshttp://www.flixxy.com/if-programmers-had-to-build-planes.htm Which would be funny except…F-22 Raptorshttp://it.slashdot.org/it/07/02/25/2038217.shtmlThe Goal of Software EngineeringThe right software, delivered defect free, on time and on cost, every time.Software CraftmanshipSoftware craftsmanship (McBreen 2001)Craft of writing softwareCraft of using softwareDistinguish from software engineeringScopeRigorRelevant distinction?Why Industry Practices?Software engineering is the application of theory and practice ofcomputer scienceproject managementengineeringdomains Where better to look at application?Software Engineering HistoryFirst key conference in 1968Became important because of perceived software crisis in productivityCost and budget overruns (OS/360)Morphed to issues of qualityFinancial implications (BoNY)Safety (Therac)BoNY (1985)BoNY (Bank of New York): Nation’s largest clearer of government securitiesSoftware to track Federal securities transactions wrote new information on top of old.Feds debited the bank for each transaction but bank did not know who owed it how much.90 minutes => $32 Billion overdraft!Cost of BugBank had to borrow $24 bill from federal reserves. Interest paid ~$5 mill for 1 day. (Annual earnings of bank ~120 mill)BoNY share prices dropped by 25cFederal funds rate dropped from 8.4% to 5.5%System down for 28 hours.Fear of financial crisis caused increase in price of platinum!Cause of bugMessage buffer counter at BoNY system was 16-bit long. Counters at Fed (and other banks) 32 bit. More than 32,000 transactions that morning! =>Counter overflowSecurities database corrupted.The Drama continues…Trying to correct it – they copied corrupted data over the backup. Lost a few hours because of this. Does code for error recovery get tested at all?Therac-25 (1985-1987)Medical linear acceleratorUsed to zap tumors with high energy beams.Electron beams for shallow tissue or x-ray photons for deeper tissue.Eleven Therac-25s were installed:Six in CanadaFive in the United StatesTherac-25Changes from Therac-20Uses new “double pass” technique to accelerate electrons…more deadlyMachine itself takes up less spaceSoftware now coupled to the rest of the system and responsible for safety checks.Hardware safety interlocks removed.“Easier to use”Therac-25 TurntableCounterweightField Light MirrorBeam Flattener (X-ray Mode)Scan Magnet (Electron Mode)TurntableWhat Happened?Six patients were delivered severe overdoses of radiation between 1985 and 1987.Four of these patients died.Why?The turntable was in the wrong position.Patients were receiving x-rays without beam-scattering.What would cause that to happen?Race conditions.Several different race condition bugs.Overflow error.The turntable position was not checked every 256th time the “Class3” variable is incremented.No hardware safety interlocks.Wrong information on the console.Non-descriptive error messages.“Malfunction 54”“H-tilt”User-override-able error modes.Source of the BugIncompetent engineering.DesignTroubleshootingVirtually no testing of the software.The


View Full Document

UNC-Chapel Hill COMP 523 - A Broader Perspective

Download A Broader Perspective
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view A Broader Perspective and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view A Broader Perspective 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?