DOC PREVIEW
SJSU CMPE 196G - Software Stability
Pages 37

This preview shows page 1-2-17-18-19-36-37 out of 37 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 37 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Software PatternsSlide 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 Fall 2003L01-S1 Software StabilitySoftware PatternsDr. 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/~fayadFall 2003SJSU – CmpE M.E. Fayad L01-S2 Software Stability2Lesson 1:Software StabilityFall 2003SJSU – CmpE M.E. Fayad L01-S3 Software Stability Lesson ObjectivesObjectives3 Overview of Previous Lecture  Understand the following:– Enduring Business Theme – Business Objects– Industrial Objects– Framework LayeringFall 2003SJSU – CmpE M.E. Fayad L01-S4 Software StabilityRoadmap4Scare - General State of Panic Identify the Killers (Problems)Catch the killers (Solutions)ObjectivesFall 2003SJSU – CmpE M.E. Fayad L01-S5 Software StabilityThe Current State of Software - I5Current 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.Fall 2003SJSU – CmpE M.E. Fayad L01-S6 Software StabilityThe Current State of Software - II6Software has short life span.Often wrong software application is implementedSometimes cancelled before completionmaintenance cost over 80% of the development lifecycleFall 2003SJSU – CmpE M.E. Fayad L01-S7 Software StabilitySample Problem - The Loan7January 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 1998March 2002–I have not received the moneyFall 2003SJSU – CmpE M.E. Fayad L01-S8 Software StabilityWhere Is The Problem?8After 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?Fall 2003SJSU – CmpE M.E. Fayad L01-S9 Software StabilityA Traditional Model9Lender LoanBorrowerOwes BorrowedLentDo you think this model is an accurate representation of the problem?Fall 2003SJSU – CmpE M.E. Fayad L01-S10 Software StabilityRoadmap10Scare - General State of Panic Identify the Killers (Problems)Catch the killers (Solutions)ObjectivesFall 2003SJSU – CmpE M.E. Fayad L01-S11 Software StabilityProblems11Wrong AnalysisIndustrial ObjectsNot stable architectureMissing the most enduring conceptsFall 2003SJSU – CmpE M.E. Fayad L01-S12 Software StabilityRoadmap12Scare - General State of PanicIdentify the Killers (Problems)Catch the killers (Solutions)ObjectivesFall 2003SJSU – CmpE M.E. Fayad L01-S13 Software StabilityOpen Discussion13Problem DomainFriendshipHealthEmploymentFamilyOther RelationshipsBorrowerScheduleLenderLoanEducationExpensesFinanceNeedsFall 2003SJSU – CmpE M.E. Fayad L01-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}Fall 2003SJSU – CmpE M.E. Fayad L01-S15 Software StabilityKitchens 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 KitchenFall 2003SJSU – CmpE M.E. Fayad L01-S16 Software StabilityThe result is a model like this:16The Kitchen - A Traditional ModelKitchenCabinet Counter Appliance SinkRefrigerator Dishwasher RangePantryCooktop OvenFreezerFall 2003SJSU – CmpE M.E. Fayad L01-S17 Software StabilityThis 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 OvenFreezerFall 2003SJSU – CmpE M.E. Fayad L01-S18 Software StabilityTo 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 ModelFall 2003SJSU – CmpE M.E. Fayad L01-S19 Software StabilityWhat does a kitchen need?What do people do in a kitchen?What is a kitchen for?19The Kitchen - Correcting The ModelCookingCuisineLivabilityStorageCleanlinessConvenienceSpaciousnessFall 2003SJSU – CmpE M.E. Fayad L01-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 LightKitchenFall 2003SJSU – CmpE M.E. Fayad L01-S21 Software StabilityIdentifying Enduring Business Themes & Business Objects - Identification Criteria21StabilityAdaptabilityEssentialityExplicitnessIntuitionTangibilityCommonality to the DomainFall 2003SJSU – CmpE M.E. Fayad L01-S22 Software Stability22EnduringBusinessThemesBusinessObjectsIndustrialObjectsIntuitionIntuition Intuition andReadingReading OnlyIdentification CriteriaFall 2003SJSU – CmpE M.E. Fayad L01-S23 Software Stability23EnduringBusinessThemesBusinessObjectsIndustrialObjectsIntuitionIntuition Intuition andReadingReading OnlyStability OverTimeStable Over Time Externally Stable UnstableIdentification CriteriaFall 2003SJSU – CmpE M.E. Fayad L01-S24 Software


View Full Document

SJSU CMPE 196G - Software Stability

Download Software Stability
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 Software Stability 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 Software Stability 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?