Académique Documents
Professionnel Documents
Culture Documents
Conceptual
Design
Physical Design
Construction and/or Purchase (prototype)
Design
Training
Conversion - old to new Implementation
METHODOLOGY OVERVIEW
Methodology defined: The way something gets done. The strategy, steps, directions, or actions. Methodologies can be:
purchased created combination of both
97
METHODOLOGY OVERVIEW
Classifications of Methodologies Traditional Structured Analysis and Design Information Modeling/Engineering Object-Oriented
System
Flowcharts
Forms,
Layouts,
Interviews
Grid Charts
Program
Flowcharts, HIPO Charts 100
Data Flow
Diagram
EntityRelationship Diagrams
Monthly Statement
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
ORDERED PRODUCT sold as Ordered Product ID (PK) . Order Number (FK) . Product Number (FK) Quantity Ordered Unit Price at Time of Order
Product Number (PK) Product Name Product Unit of Measure Product Unit Price
Business
Area Analysis,
Business
Area Analysis,
Process
Model
EntityRelationship Diagrams
106
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, services, and relationships Data & functions are encapsulated together
107
Object
Model
Object Model
Attributes
Object-Oriented Methodology
Revolutionary or Evolutionary?
Most difficult aspect is the transition some people
Inheritance
Message Communication
Associations
Polymorphism
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 are111 doing Functional and Data abstraction
cake
Directions
Pre-heat oven to 350; Put milk, eggs, and sugar in 2 quart mixing bowl...
112
Inheritance
A mechanism for expressing similarity between things thus simplifying their definition.
Inheritance
Person
Student
Faculty
Staff
113
Message Communication
Objects communicate via messages
OBJECT
OBJECT
OBJECT
OBJECT
114
Associations
The union or connection of ideas or things.
Billing Statement
crime scene #n
115
versus
Door #1 #2 #3
116
Polymorphism
Two examples
TEXT object
25000 20000 BLUE SKY AIRLINES Sales Report January BLUE SKY AIRLINES Sales Report February
PRINT
PRINT
GRAPH object
IMAGE object
Object #1 Object #2
Add
PO object
Add Add
Object #3
Classification Theory
(Common Methods of Organization)
number of doors number of wheels number of windows number of lights number of bolt type 1 number of bolt type 2 etc....
119
Reuse
The ability to reuse objects
Varying Degrees of Reuse: complete or sharing copy, purchase or cloning partial or adjusting none
120
Reuse
Software Reuse Costs and Payoffs
Orenstein, D. Code reuse: Reality doesnt 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
121
Function Models
System Behavior
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
126
127
3
Establish object responsibilities
(behavior, data, functions)
4
Define service scenarios (behavior, data, functions)
Model Component
Problem Domain (PD) Human Interaction (HI)
indicates that the activity has been performed for the model component
131
Problem Domain
Data Management
System Interaction
Note: PD, HI, and SI are similar to Smalltalk programming language concept called Model-View-Controller (MVC)
Model Components
Problem domain -- directly correspond to the problem being modeled Human interaction -- provide interface between the PD objects and people Data management -- provide interface between PD objects and a database or file management system System interaction -- provide interface between PD objects and other systems or devices 133
134
class
136
Attributes
{
{
Services
Expanded view of a class or class with objects into its three sections: top: Class Name middle: attributes bottom: services
137
generalization-specialization connection
object connection n n
message
n
138
139
Inventory
1-n
SaleItem
RentalItem
Video
Game
ConcessionItem
VCR
Transaction
Employee
1 1-n
StoreLocation
RentalTransaction 1 n 1-n
Member
SaleRentalLineItem
1 POLineItem 1
Note: For simplification purposes, the attribute and service sections of classes and class-with-objects have been omitted fro
Inventory
1-n
barCodeNumber description qtyOnHand price cost taxCode orderInventory inquireAboutAvailableInvento ry addNewInventoryItem changeInventoryItemInformati on delete/RemoveInventoryItem updateQuantity-On-Order
1-n
quantitySold qtyOnHand
SaleItem
RentalItem
timesRented dueDate memberNumber
updateRentalInformation
updateQuantitySold updateInventoryQty-On-Hand
Video
Game
ConcessionItem
VCR
Transaction
transactionNumber employeeNumber transactionDate transactionTime
1
n
Employee
payForTransaction
SalesTransaction
quantitySold purchaseForSaleItems
RentalTransaction
memberNumber rentAnItem checking-inRentalItem
0-1 n
1-n 1 1-n
Member
memberNumber creditCardNumber memberName creditCardExpireDate memeberAddress depositAmount memberCity overdueAmount memberState memberZipcode memberPhone acquireMembership verifyMembership updateCreditCardInformation updateMembershipInformation cancelMembership updateOverdueAmount determineIfDelinquent
1
transactionNumber barCodeNumber price salesTax
SaleRentalLineItem
1
2 of 3
1-n
StoreLocation
vendorNumber vendorName vendorAddress vendorCity vendorState vendorZipcode vendorPhone vendorFaxNumber addNewVendorInformation changeVendorInformation deleteVendor provideVendorInformation
Vendor
n 1
PurchaseOrder
1-n
purchaseOrderNumber purchaseOrderDate purchaseOrderDueDate purchaseOrderCancelDate vendorNumber createNewPurchaseOrder deleteExistingPurchaseOrder
POLineItem
purchaseOrderNumber barCodeNumber quantityOrdered itemCost
3 of 3