Software System EngineeringSlide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Sample Problem II - The KitchenThe Kitchen - A Traditional ModelSlide 17The Kitchen - Correcting The ModelSlide 19The Kitchen - A Stable ModelSlide 21Identification CriteriaSlide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Discussion QuestionsQuestions for the Next LectureTasks for Next LectureSJSU – CmpE © M.E. Fayad 2000-2006Software System EngineeringDr. M.E. Fayad, ProfessorComputer Engineering Department, Room #283I College of EngineeringSan José State UniversityOne Washington SquareSan José, CA 95192-0180 http://www.engr.sjsu.edu/~fayad© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S2 Software Stability2Lesson 20:Software Stability© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S3 Software Stability Lesson ObjectivesObjectives3 Overview of Previous Lecture Understand the following:– Enduring Business Theme – Business Objects– Industrial Objects– Framework Layering© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S4 Software StabilityRoadmap4Scare - General State of Panic Identify the Killers (Problems)Catch the killers (Solutions)Objectives© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S5 Software StabilityThe Current State of Software - I5Current software projects are engineered for the “here and now.”Changes in the support structure or the software market require massive reengineering projects.This reengineering costs ridiculous amounts of money.© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S6 Software StabilityThe Current State of Software - II6Software has short life span.Often wrong software application is implementedSometimes cancelled before completionmaintenance cost over 80% of the development lifecycle© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S7 Software StabilitySample Problem - The Loan7January 1998–I gave a loan of $1000 to one of my students.–He promised to return the money by May 1998.April 1998–Received an e-mail asking for an extension until August 1998March 2002–I have not received the money© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S8 Software StabilityWhere Is The Problem?8After giving this problem to the students in a software engineering class, I received the following responses.–There is no problem.–Take him to court.–Kick his $@%#&!–Ignore it.What do you think?© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S9 Software StabilityA Traditional Model9Lender LoanBorrowerOwes BorrowedLentDo you think this model is an accurate representation of the problem?© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S10 Software StabilityRoadmap10Scare - General State of Panic Identify the Killers (Problems)Catch the killers (Solutions)Objectives© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S11 Software StabilityProblems11Wrong AnalysisIndustrial ObjectsNot stable architectureMissing the most enduring concepts© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S12 Software StabilityRoadmap12Scare - General State of PanicIdentify the Killers (Problems)Catch the killers (Solutions)Objectives© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S13 Software StabilityOpen Discussion13Problem DomainFriendshipHealthEmploymentFamilyOther RelationshipsBorrowerScheduleLenderLoanEducationExpensesFinanceNeeds© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S14 Software StabilityEBT-Based Model - The Loan Problem14…Friendship{Enduring}Friend{Business}Borrower LenderFinance{Enduring}Loan{Business}Solvency{Enduring}Need{Enduring}Expenses{Business}Employment{Business}Health{Business}Education{Business}Family{Business}© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S15 Software StabilityKitchens are systems that we are all familiar with.What makes a kitchen a kitchen?Traditionally, people think of a certain set of objects when they think of a kitchen:–Stove–Sink–Refrigerator–Dishwasher–etc...15Sample Problem II - The Kitchen© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S16 Software StabilityThe result is a model like this:16The Kitchen - A Traditional ModelKitchenCabinet Counter Appliance SinkRefrigerator Dishwasher RangePantryCooktop OvenFreezer© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S17 Software StabilityThis model has inherent flaws, however.The model can be thought of as a “tree” of aggregations and generalizations.Many of the roots of the subtrees can change drastically, causing this model to break.For example, imagine replacing the appliance node with a Star Trek food replicator...17The Kitchen - A Traditional ModelKitchenCabinet Counter Appliance SinkRefrigerator Dishwasher RangePantryCooktop OvenFreezer© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S18 Software StabilityTo correct this model, one must concentrate on those aspects that do not change over time.Enduring Business Themes are those concepts that remain constant for a given problem.Business Objects are those support objects that remain externally stable.Objects that may be replaced as times change are Industrial Objects.18The Kitchen - Correcting The Model© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S19 Software StabilityWhat does a kitchen need?What do people do in a kitchen?What is a kitchen for?19The Kitchen - Correcting The ModelCookingCuisineLivabilityStorageCleanlinessConvenienceSpaciousnessAnyRecipeAnySocializationReachability© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S20 Software Stability20The Kitchen - A Stable ModelCabinet PantryRefrigerator FreezerFood Storage & Preservation{Enduring}MicrowaveRangeCooking{Enduring}Cooktop OvenCuisine{Enduring}Recipe{Business}FoodLivability{Enduring}Cleanliness{Enduring}Convenience{Enduring}Light{Business}Counter ShelfSink DishwasherWindow Electric LightKitchen© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S21 Software StabilityIdentifying Enduring Business Themes & Business Objects - Identification Criteria21StabilityAdaptabilityEssentialityExplicitnessIntuitionTangibilityCommonality to the Domain© M.E. Fayad 2000-2006SJSU – CmpE M.E. Fayad L4-1-S22 Software Stability22EnduringBusinessThemesBusinessObjectsIndustrialObjectsIntuitionIntuition Intuition andReadingReading
View Full Document