Академический Документы
Профессиональный Документы
Культура Документы
IDS306/695
s s
s Design
- Conceptual &
IDS406/697
Physical
s s
METHODOLOGY OVERVIEW
y
Methodology defined: The way something gets done. (i.e., The strategy, steps, directions, or actions.) Methodologies can be:
x x x
M #1
M #2
4
METHODOLOGY OVERVIEW
y
Classifications of Methodologies
x x x x
Applicable for small teams on small projects Functional perspective of a problem domain It is an informal, unstructured, unrepeatable, un-measurable, ad-hoc way
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
(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
Transaction
Creditor
Account Balance
Pay a Bill
Account Transactions
Payment
Bank Accounts
Account Transactions
Modified Balance
Withdraw or transfer
Employer Bank
Pay
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
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
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
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
17
Classification Theory
(Common Methods of Organization)
y
Objects and their characteristics Wholes and Parts Groups (Classes) and Members
19
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
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
23
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
= 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
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
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
Data Model versus Function Model Analysis to Design Transition Maintaining Source Code
30
Function Models
Data Models
Colorado River
VVVVVVVVVVVV
Analysis Models
Design Models
Colorado River
VVVVVVVVVVVV
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
SOLUTION
INTEGRATED MODEL(S)
(function, data, behavior) (analysis, design and implementation)
ROUND-TRIP ENGINEERING
Object Technology
Colorado River
34
Data Management
System Interaction
38
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
The 3 Amigos
Booch Jacobson Rumbaugh
40
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
Behavior
y y
Implementation (Static)
y y
U M L D i a g r a m s
44
45
46
47
48
49
50
51
52
53
54
55
56
57
QUITTING
TIME
58