Você está na página 1de 58

CONCEPTUAL DESIGN: AN OVERVIEW OF METHODOLOGIES, MODELS AND NOTATIONS

SYSTEMS DEVELOPMENT LIFE CYCLE (SDLC)


Planning & Feasibility Study (optional) Analysis - Requirements Determination

IDS306/695

s s

s Design

- Conceptual &

IDS406/697

Physical
s s

Construction (Purchase) & Testing Implementation including Training & Conversion


2

METHODOLOGY OVERVIEW
y

Methodology defined: The way something gets done. (i.e., The strategy, steps, directions, or actions.) Methodologies can be:
x x x

purchased created combination of both

Thousands available for developing software-intensive information systems


3

SDLC versus Methodology

SDLC = Generic Way

Methodology = Specific Ways

M #1

M #2
4

METHODOLOGY OVERVIEW
y

Classifications of Methodologies
x x x x

Traditional Structured Analysis and Design Information Modeling/Engineering Object-Oriented

Prototyping is a technique - (some say that it is a methodology)

The Traditional Methodology - now) (1950s


y y y

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)

Traditional Methodology Tools


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

Structured Analysis and Design Methodology


(mid-1970s - now)
y y y y y y y y

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
8

Structured Analysis and Design Methodology Tools


-----------TECHNIQUES & TOOLS REPRESENTING----------System Data Process Flows Logic _ Data Flow Diagram Data Dictionary, Data Structure Diagrams, EntityRelationship Diagrams Decision Tree/Table, Structured English, Structure Charts, Warnier/Orr Diagram
9

(adapted from Systems Analysis and Design Methods, 4th Edition, Whitten and Bentley, McGraw-Hill, 1998)

Bank

New or Modified Prior Monthly Statement Monthly Statement Monthly StatementReconcile Account
Balances

Monthly Account Statements

Transaction
Creditor

Bill Current Balance

Account Balance
Pay a Bill

Account Transactions

Payment

Bank Accounts

Modified Balance Payment Deposit


Withdraw Funds from an Account

Account Transactions

Modified Balance

Withdraw or transfer
Employer Bank

Pay

Deposit Funds into an Account

Other Income Source

Reimbursement

(adapted from Systems Analysis and Design Methods, 4th Edition, Whitten and Bentley, McGraw-Hill, 1998)

CUSTOMER Customer Number (PK) Customer Name Shipping Address Billing Address Balance Due has placed

ORDER Order Number (PK) Order Date Order Total Cost Customer Number (FK)

sold

INVENTORY PRODUCT Product Number (PK) Product Name Product Unit of Measure Product Unit Price sold as

ORDERED PRODUCT Ordered Product ID (PK) . Order Number (FK) . Product Number (FK) Quantity Ordered Unit Price at Time of Order

Information Modeling Methodology


(early-1980s - now)
y y

Data modeling & information engineering (synonyms) Describes the real world by its data, the datas attributes, and the data relationships Can be repeatable, measurable, and automated Data perspective of the problem domain

y y

12

Information Modeling Methodology Tools


-----------TECHNIQUES & TOOLS REPRESENTING----------System Data Process Flows Logic _ Business Area Analysis, Process Model Business Area Analysis, EntityRelationship Diagrams
13

Business Systems Design

Object-Oriented Methodology
(mid/late-1980s - now)
y y y y y

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

14

Object-Oriented Methodology Tools


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

Object-Oriented Methodology
y y

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.

16

Rational Corporations Rational Unified Process (RUP)

17

Object Technology Principles


Common Methods of Organization Abstraction Encapsulation (Information Hiding) Inheritance Polymorphism Message Communication Associations Reuse
18

O-O Systems Analysis & Design Methodology

Classification Theory
(Common Methods of Organization)
y

Objects and their characteristics Wholes and Parts Groups (Classes) and Members

19

Common Methods of Organization


People are accustomed to thinking in terms of...
Objects & Attributes
color price weight engine options...

Groups & Members

Wholes and Parts

VANS: light utility utility passenger etc...

number of doors number of wheels number of windows number of lights number of bolt type 1 number of bolt type 2 etc.... 20

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 21

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.......

cake

Directions
Pre-heat oven to 350; Put milk, eggs, and sugar in 2 quart mixing bowl...

22

Inheritance
A mechanism for expressing similarity between things thus simplifying their definition. Inheritance

Person

Student

Faculty

Staff

looks behavior attitudes etc...

23

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.
y y y

H O = water, ice, steam (liquid, solid, vapor) Eating Carbon compound crystallizes as graphite & diamond

Door #1

Door #2

Door #3

versus

Door #1 #2 #3

24

Polymorphism
PRINT PRINT PRINT
TEXT object

Two examples

2500 0 2000 0

GRAPH object IMAGE object

1500 0 1000 0 5000 0 North South East West

B LU E S K Y A IR L IN E S S ales Report January B LU E S K Y A IR L IN E S S ales Report F ebruary

Object #1 Object #2 Object #3

Add Add Add

PO object Account object

= add a line item to the PO = increase $ Amount Balance = hire a new employee

Department object

Message Communication
Objects communicate via messages

OBJECT

OBJECT

OBJECT

OBJECT
26

The union or connection of ideas or things. (Objects need to interact with each other) same point in time
Advertisement #2 Advertisement #1

Associations

under similar circumstances


crime scene #1 crime scene #n crime scene #2

Billing Statement

Person

Student

Faculty

Staff
27

Reuse
The ability to reuse objects

Varying Degrees of Reuse: complete or sharing copy, purchase or cloning partial or adjusting none
28

Software: Chips Components Controls Models

Software Reuse Costs and Payoffs


Orenstein, D. Code reuse: Reality doesnt match promise, Computerworld, August 24, 1998, page 8.

Reuse

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

29

O-O Systems Analysis & Design Methodology

Three Classic Systems Analysis and Design Challenges


y

Data Model versus Function Model Analysis to Design Transition Maintaining Source Code

30

Function Models

User Interaction (Behavior)

Data Models

North Rim of the Grand Canyon

South Rim of the Grand Canyon

Colorado River

VVVVVVVVVVVV

Classic Software Development Challenge #1: Multiple Models

Analysis Models

Design Models

North Rim of the Grand Canyon

South Rim of the Grand Canyon

Colorado River

VVVVVVVVVVVV

Classic Software Development Challenge #2: Model Transformation

Who wrote this code?

Begin Caller Program Init x,y,z... Open (files/database) Read... Compute... DO Callee with x,y,z Spaghetti? Update (files/database) Close (files/database) End Main Program Procedure Callee Parameters x,y,z Compute... End Procedure End Program

Classic Software Development Challenge #3: Maintaining Source Code

SOLUTION
INTEGRATED MODEL(S)
(function, data, behavior) (analysis, design and implementation)

ROUND-TRIP ENGINEERING

Object Technology
Colorado River

34

O-O Systems Analysis Methodology

A Simplified Object-Oriented Systems Analysis Methodology


35

mplified Object-Oriented Systems Analysis Methodolo Activities


1. Identify the information systems purpose 2. Identify the information systems actors and features 3. Identify Use Cases and create a Use Case Diagram 4. Identify Objects and their Classes and create a Class Diagram 5. Create Interaction/Scenario Diagrams 6. Create Detail Logic for Operations 7. Repeat activities 1-6 as required to refine the blueprints

Software Developments Separation of Concerns


Information System Human Interaction Problem Domain

Data Management

System Interaction

O-O Systems Analysis Methodology

The Unified Modeling Language (UML) Models and Notation

38

Subject Matter Expert & Notation


y y y y y

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?
x x

Subject Matter Expert (SME) Notation - symbols used to communicate


39

The 3 Amigos
Booch Jacobson Rumbaugh

40

Information Systems Development

People

Process

Technology
(UML - notation & tools to use it)
41

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 HETEROGENEOUS computing environments.
The OMG Revision Task Force released UML Version 1.3 in the Fall of 1998
42

The 9 Diagrams of the UML


Static
y y y y

Class Object Use-Case Interaction/Scenario Diagrams:


Sequence Collaboration

Behavior
y y

State [-Transition] Activity Component Deployment


A Package is used for Model Management

Implementation (Static)

y y

U M L D i a g r a m s

44

45

46

47

48

49

50

51

The Big Picture A Video Store UML Class Diagram

52

53

54

55

56

57

End of The Big Picture

QUITTING

TIME
58

Você também pode gostar