1 / 58

CONCEPTUAL DESIGN: AN OVERVIEW OF METHODOLOGIES, MODELS AND NOTATIONS

CONCEPTUAL DESIGN: AN OVERVIEW OF METHODOLOGIES, MODELS AND NOTATIONS. SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC). Planning & Feasibility Study (optional) Analysis - Requirements Determination Design - Conceptual & Physical Construction (Purchase) & Testing

dgilliam
Download Presentation

CONCEPTUAL DESIGN: AN OVERVIEW OF METHODOLOGIES, MODELS AND NOTATIONS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CONCEPTUAL DESIGN:AN OVERVIEW OFMETHODOLOGIES,MODELS AND NOTATIONS

  2. SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC) • Planning & Feasibility Study (optional) • Analysis - Requirements Determination • Design - Conceptual & Physical • Construction (Purchase) & Testing • Implementation including Training & Conversion • Evolution - Maintenance & Enhancements IDS-306/695 IDS-406/697

  3. METHODOLOGY OVERVIEW • Methodology defined: The way something gets done. (i.e., The strategy, steps, directions, or actions.) • Methodologies can be: • purchased • created • combination of both • Thousands available for developing software-intensive information systems

  4. SDLC versus Methodology SDLC = “Generic Way” Methodology = “Specific Ways” M #1 M #2…

  5. METHODOLOGY OVERVIEW • Classifications of Methodologies • Traditional • Structured Analysis and Design • Information Modeling/Engineering • Object-Oriented • Prototyping is a technique - (some say that it is a methodology)

  6. The Traditional Methodology (1950s - now) • Applicable for small teams on small projects • Functional perspective of a problem domain • It is an informal, unstructured, unrepeatable, un-measurable, ad-hoc way • Tools used to support it are adequate (okay)

  7. Traditional Methodology Tools -----------TECHNIQUES & TOOLS REPRESENTING----------- System Data Process Flows Logic _ Forms, Layouts, Grid Charts English Narrative, Playscript, Program Flowcharts, HIPO Charts System Flowcharts

  8. Structured Analysis and Design Methodology (mid-1970s - now) • Data Flow methodology (synonym) • Compliments Structured Programming • Very popular - perhaps the leading one for business • Can be repeatable, measurable, & automated • IDE & CASE s/w tools brought significant assistance • 1) Yourdon, and 2) Gane & Sarson • Functional perspective of a problem domain • Describes the real world as data flowing through the information system, being transformed from inputs to outputs

  9. Structured Analysis and Design Methodology Tools -----------TECHNIQUES & TOOLS REPRESENTING----------- System Data Process Flows Logic _ Decision Tree/Table, Structured English, Structure Charts, Warnier/Orr Diagram Data Dictionary, Data Structure Diagrams, Entity- Relationship Diagrams Data Flow Diagram

  10. Monthly Account Statements New or Modified Prior Monthly Monthly Statement Statement (adapted from Systems Analysis and Design Methods, 4th Edition, Whitten and Bentley, McGraw-Hill, 1998) Monthly Reconcile Statement Account Bank Balances Transaction Bill Account Creditor Account Balance Transactions Current Balance Pay Payment a Bank Accounts Bill Modified Balance Payment Modified Withdraw Deposit Balance Account Funds from Transactions an Account Withdraw or transfer Deposit Funds Pay Employer into an Account Bank Other Reimbursement Income Source

  11. (adapted from Systems Analysis and Design Methods, 4th Edition, Whitten and Bentley, McGraw-Hill, 1998) CUSTOMER ORDER Customer Number (PK) Order Number (PK) has placed Customer Name Order Date Shipping Address Order Total Cost Billing Address Customer Number (FK) Balance Due sold ORDERED PRODUCT INVENTORY PRODUCT Ordered Product ID (PK) sold as Product Number (PK) . Order Number (FK) Product Name . Product Number (FK) Product Unit of Measure Quantity Ordered Product Unit Price Unit Price at Time of Order

  12. Information Modeling Methodology (early-1980s - now) • Data modeling & information engineering (synonyms) • Describes the real world by its data, the data’s attributes, and the data relationships • Can be repeatable, measurable, and automated • Data perspective of the problem domain

  13. Information Modeling Methodology Tools -----------TECHNIQUES & TOOLS REPRESENTING----------- System Data Process Flows Logic _ Business Area Analysis, Process Model Business Area Analysis, Entity- Relationship Diagrams Business Systems Design

  14. Object-Oriented Methodology (mid/late-1980s - now) • Object modeling • Compliments object-oriented programming • Can be repeatable, measurable, & automated • Object perspective of the problem domain • Describes the real world by its objects, the attributes, operations, and relationships • Data & functions are encapsulated together

  15. Object-OrientedMethodology Tools -----------TECHNIQUES & TOOLS REPRESENTING----------- System Data Process Flows Logic _ Object Model Object Model Attributes Static & Dynamic UML Model Diagrams, Operations, Class relationships, Object associations

  16. Object-Oriented Methodology • Revolutionary or Evolutionary? • Most difficult aspect is the transition some people have to make from a functional or data problem solving strategy to an object problem solving strategy. Some people must change from a “function think” or “data think” to an “object think” strategy.

  17. Rational Corporation’s Rational Unified Process (RUP)

  18. Object Technology Principles • Common Methods of Organization • Abstraction • Encapsulation (Information Hiding) • Inheritance • Polymorphism • Message Communication • Associations • Reuse

  19. O-O Systems Analysis & Design Methodology Classification Theory (Common Methods of Organization) • Objects and their characteristics • Wholes and Parts • Groups (Classes) and Members

  20. Common Methods of Organization People are accustomed to thinking in terms of... Objects & Attributes • color • price • weight • engine • options... Wholes and Parts Groups & Members • number of doors • number of wheels • number of windows • number of lights • number of bolt type 1 • number of bolt type 2 • etc.... • VANS: • light utility • utility • passenger • etc...

  21. Abstraction A mental ability that permits people to view real-world problem domains with varying degrees of detail depending on the current context of the problem. • Helps people to think about what they are doing • Functional and Data abstraction

  22. cake • Encapsulation (Information Hiding) A technique in which data are packaged together with their corresponding procedures. • In Object-Oriented Technology the “package” is called an OBJECT • The interface to each object is defined in such a way as to reveal as little as possible about its inner workings • Encapsulation allows [software] changes to be reliably made with limited effort [Gannon, Hamlet, & Mills, 1987] One cake please! Ingredients 2 eggs 4 cups flour 1 cup milk 1 cup sugar etc....... Directions Pre-heat oven to 350; Put milk, eggs, and sugar in 2 quart mixing bowl...

  23. Inheritance Person Student Faculty Staff • Inheritance A mechanism for expressing similarity between things thus simplifying their definition. • looks • behavior • attitudes • etc...

  24. Polymorphism (“many forms”) • The ability to hide different implementations behind a common interface. • The ability for two or more objects to respond to the same request, each in its own way. • H O = water, ice, steam (liquid, solid, vapor) • Eating • Carbon compound crystallizes as graphite & diamond 2 Door #1 #2 #3 versus Door #1 Door #2 Door #3

  25. Polymorphism • Two examples PRINT TEXT object PRINT GRAPH object PRINT IMAGE object PO object = add a line item to the PO Add Object #1 = increase $ Amount Balance Account object Object #2 Add Department object = hire a new employee Object #3 Add

  26. Message Communication Objects communicate via messages OBJECT OBJECT OBJECT OBJECT

  27. crime scene #2 Advertisement #2 crime scene #1 Advertisement #1 Billing Statement crime scene #n Person Student Faculty Staff • Associations The union or connection of ideas or things. (Objects need to interact with each other) • same point in time • under similar circumstances

  28. Reuse The ability to reuse objects • Varying Degrees of Reuse: • complete or sharing • copy, purchase or cloning • partial or adjusting • none • Software: • “Chips” • Components • Controls • Models

  29. Reuse Software Reuse Costs and Payoffs Orenstein, D. “Code reuse: Reality doesn’t match promise”, Computerworld, August 24, 1998, page 8. • Components must be reused three to five times before the costs of creating and supporting them are recovered • It costs one and a half to three times as much to create and support a single reusable component as to create a component for just one use • It costs 25% as much to use a reusable component as it does to create a new one • It takes two to three product cycles (about three years) before the benefits of reuse become significant

  30. O-O Systems Analysis & Design Methodology • Data Model versus Function Model • Analysis to Design Transition • Maintaining Source Code Three Classic Systems Analysis and Design Challenges:

  31. User Interaction (Behavior) Data Models Function Models North Rim of the Grand Canyon South Rim of the Grand Canyon Colorado River VVVVVVVVVVVV Classic Software Development Challenge #1: Multiple Models

  32. Design Models Analysis Models North Rim of the Grand Canyon South Rim of the Grand Canyon Colorado River VVVVVVVVVVVV Classic Software Development Challenge #2: Model Transformation

  33. Begin “Caller” Program Init x,y,z... Open (files/database) Read... Compute... DO “Callee” with x,y,z Update (files/database) Close (files/database) End Main Program Procedure Callee Parameters x,y,z Compute... End Procedure End Program Who wrote this code? Spaghetti? Classic Software Development Challenge #3: Maintaining Source Code

  34. SOLUTION INTEGRATED MODEL(S) (function, data, behavior) (analysis, design and implementation) ROUND-TRIP ENGINEERING Object Technology Colorado River

  35. O-O Systems Analysis Methodology A Simplified Object-Oriented Systems Analysis Methodology

  36. A Simplified Object-Oriented Systems Analysis Methodology Activities • Identify the information system’s purpose • Identify the information system’s actors and features • Identify Use Cases and create a Use Case Diagram • Identify Objects and their Classes and create a Class Diagram • Create Interaction/Scenario Diagrams • Create Detail Logic for Operations • Repeat activities 1-6 as required to refine the “blueprints”

  37. Software Development’s “Separation of Concerns” Information System Human Interaction Problem Domain Data Management System Interaction

  38. O-O Systems Analysis Methodology The Unified Modeling Language (UML) Models and Notation

  39. Subject Matter Expert & Notation • Can you draw a stick figure of a person? • Can you draw a picture of an automobile? • Can you draw a picture of the space shuttle? • Can you draw a picture of an Oopsla? • Why not? • Subject Matter Expert (SME) • Notation - symbols used to communicate

  40. Booch Jacobson Rumbaugh “The 3 Amigos”

  41. Information Systems Development People Process Technology (UML - notation & tools to use it)

  42. www.omg.org Version 1.1 of the UML was adopted as an OMG Standard on November 14, 1997 The Object Management Group (OMG), formed in 1989, is a consortium of about 800 software vendors, consultants and end user organizations whose mission is to develop STANDARD interfaces for INTEROPERABLE software components in HETEROGENEOUScomputing environments. The OMG Revision Task Force released UML Version 1.3 in the Fall of 1998

  43. The 9 Diagrams of the UML • Class • Object • Use-Case • Interaction/Scenario Diagrams: • Sequence • Collaboration • State [-Transition] • Activity • Component • Deployment Static Behavior Implementation (Static) APackage is used for Model Management

  44. U M L D i a g r a m s

More Related