Presentation is loading. Please wait.

Presentation is loading. Please wait.

May-June 2001 ISISTAN Research Institute – Tandil, Argentina Software Design Methodologies: UML in Action Dr. Mohamed Fayad, J.D. Edwards Professor Department.

Similar presentations


Presentation on theme: "May-June 2001 ISISTAN Research Institute – Tandil, Argentina Software Design Methodologies: UML in Action Dr. Mohamed Fayad, J.D. Edwards Professor Department."— Presentation transcript:

1

2 May-June 2001 ISISTAN Research Institute – Tandil, Argentina Software Design Methodologies: UML in Action Dr. Mohamed Fayad, J.D. Edwards Professor Department of Computer Science & Engineering University of Nebraska, Lincoln Ferguson Hall, P.O. Box 880115 Lincoln, NE 68588-0115 http://www.cse.unl.edu/~fayad

3 L13-S2Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 2 Lesson 13: Software Stability

4 L13-S3Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Lesson Objectives 3 Overview of Previous Lecture Understand the following: – Enduring Business Theme – Business Objects – Industrial Objects – Framework Layering

5 L13-S4Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Roadmap 4 oScare - General State of Panic o Identify the Killers (Problems) oCatch the killers (Solutions)

6 L13-S5Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad The Current State of Software - I 5 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.

7 L13-S6Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad The Current State of Software - II 6 Software has short life span. Often wrong software application is implemented Sometimes cancelled before completion maintenance cost over 80% of the development lifecycle

8 L13-S7Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Sample Problem - The Loan 7 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 May 4, 2000 –I have not received the money

9 L13-S8Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Where 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?

10 L13-S9Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad A Traditional Model 9 LenderLoan Borrower OwesBorrowed Lent Do you think this model is an accurate representation of the problem?

11 L13-S10Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Roadmap 10 oScare - General State of Panic o Identify the Killers (Problems) oCatch the killers (Solutions)

12 L13-S11Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Problems 11 Wrong Analysis Industrial Objects Not stable architecture Missing the most enduring concepts

13 L13-S12Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Roadmap 12 oScare - General State of Panic oIdentify the Killers (Problems) oCatch the killers (Solutions)

14 L13-S13Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Open Discussion 13 Problem Domain Friendship Health Employment Family Other Relationships Borrower Schedule Lender Loan Education Expenses Finance Needs

15 L13-S14Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad EBT-Based Model - The Loan Problem 14 … Friendship {Enduring} Friend {Business} BorrowerLender Finance {Enduring} Loan {Business} Solvency {Enduring} Need {Enduring} Expenses {Business} Employment {Business} Health {Business} Education {Business} Family {Business}

16 L13-S15Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 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... 15 Sample Problem II - The Kitchen

17 L13-S16Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad The result is a model like this: 16 The Kitchen - A Traditional Model Kitchen CabinetCounterApplianceSink RefrigeratorDishwasherRangePantry CooktopOvenFreezer

18 L13-S17Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 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... 17 The Kitchen - A Traditional Model Kitchen CabinetCounterApplianceSink RefrigeratorDishwasherRangePantry CooktopOvenFreezer

19 L13-S18Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 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. 18 The Kitchen - Correcting The Model

20 L13-S19Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad What does a kitchen need? What do people do in a kitchen? What is a kitchen for? 19 The Kitchen - Correcting The Model Cooking Cuisine Livability Storage Cleanliness Convenience Spaciousness

21 L13-S20Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 20 The Kitchen - A Stable Model CabinetPantry RefrigeratorFreezer Food Storage & Preservation {Enduring} Microwave Range Cooking {Enduring} CooktopOven Cuisine {Enduring} Recipe {Business} Food Livability {Enduring} Cleanliness {Enduring} Convenience {Enduring} Light {Business} CounterShelf SinkDishwasherWindowElectric Light Kitchen

22 L13-S21Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identifying Enduring Business Themes & Business Objects - Identification Criteria 41 Stability Adaptability Essentiality Explicitness Intuition Tangibility Commonality to the Domain

23 L13-S22Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

24 L13-S23Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

25 L13-S24Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

26 L13-S25Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

27 L13-S26Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

28 L13-S27Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

29 L13-S28Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 Identification Criteria

30 L13-S29Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identification Heuristics - Enduring 49 Enduring Business Themes and Business Objects must be enduring. Watch out - Long field histories will not necessarily translate to true endurance.

31 L13-S30Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identification Heuristics - Industrial Object Identification 50 Is the object present in a “classical” model? Can the object be replaced? Is the object a representation of a concrete item?

32 L13-S31Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identification Heuristics - Top-Down Identification 51 Break off conceptual pieces of the problem. Recursively break these concepts down. Stop when a layer of industrial objects is reached.

33 L13-S32Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identification Heuristics - Bottom-Up Identification 52 Start with a “classical” model. Group the industrial objects under a conceptual “heading.” Continue this grouping until further grouping is impractical or nonsensical.

34 L13-S33Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Identification Heuristics - There Is No Silver Bullet 53 EBT’s are conceptual themes… Usually Business objects are more concrete objects… Usually There are always exceptions to any rule.

35 L13-S34Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad 41 HealthCare Example: PID

36 L13-S35Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Explain the following statements: 1. Objects should be intelligent agents 2. Mechanism rich and policy free 3. A valuable object works and plays well with others 4. Analysis model should not be too elaborate or too formal Explain how to build an analysis model Explain how do you make the analysis model more adaptable 20 Discussion Questions

37 L13-S36Software Stability May-June 2001 ISISTAN Research Institute – Tandil, Argentina -- M.E. Fayad Define: –Guidelines –Heuristics What do you think of these heuristics –A designer should distribute system intelligence uniformly among the top level classes in the system. –A designer should have 4.6 top level classes per 1,000 lines of code. –Eliminate classes that are outside the system 21 Questions for the Next Lecture


Download ppt "May-June 2001 ISISTAN Research Institute – Tandil, Argentina Software Design Methodologies: UML in Action Dr. Mohamed Fayad, J.D. Edwards Professor Department."

Similar presentations


Ads by Google