Chapter 5
Database Management
The Strategic
Management of
Information
Systems
Transaction Processing
System
Input Output Process
Information
Communication
Today’s Organization
? Enterprise-Wide Development
– Entity Relationship Diagram
– General Information Systems Model
? Object-Oriented Definition
? Implementation of Suite Approach
? Business Transaction Processing
Steps Toward Integration
? Windowing Operating System
– OS/2 Presentation Manager
– Windows
– X-Windows (Sun)
? Transaction Processing Systems
– Payroll Services
– Sales Order Processing Systems
– Process Control Systems
– Corporate Accounting Systems
Steps Toward Integration
? Multi-Tasking
– Allow Users to run different programs at
the same time
– Windows
– OS/2 (Presentation Manager)
– XWindows
? Networks
– Enable Dynamic Integration from Several
Sources
Integration
? Vertical
– Different Levels of Production
– ex,Oil Company
? Horizontal
– Retail Stores
– ex:Wal-Mart
Steps Toward Business Process
Redesign
Develop Business Vision and Process Objectives
Understand and Measure Existing Processes
Identify Process to Be Redesigned
Design and Build a Prototype of the Process
Identify Information Technology Levers
Prioritize Objectives and Set Targets
Identify Critical or Bottleneck Processes
Identify Current Problems and Set Baseline
Brainstorm new Process Approaches
Implement Organizational and Technical Aspects
Database Management
Structure
? Develop structure of each record
according to selected data model
? Load data into database
? Update records in database
? Generate reports from data in database
? Maintain integrity of data in database
? Maintain security by means of multilevel
passwords
Database Management
System Functions
? Data Definition Language (DDL)
? Data Manipulation Language (DML)
? Query Language
? Report Writer
? Graphics Generator
? Host Language Interface (HLI)
? Procedural Language
? Data Dictionary
Logical Model
? Entity-Relationship Diagram
– Entities
– Relationships Between Entities
? Data Normalization
– Process of eliminating data redundancies
and functional dependencies within the
logical model
Database Types
? Hierarchical
? Network
? Relational
Systems Advantage
? More Flexible Systems
? More Reuse of Logic
? Less Bugs
? Shorter Development Time
? Lower Maintenance Costs
Business Advantage
? Reduce Development Cost
? Increase Ability to Compete
? Increase Focus of Business on
Business Opportunities
– Outsourcing
Integration/Links
? Static
– Hard-Coded
– Import
? Dynamic
– Linked
– Dynamic Data Exchange (DDE)
– Hot-Linked
– Object-Linking and Embedding (OLE)
? Original Software Package Automatically
started when chosen
Planned Systems
Project Load
Resources Line
Planning Cycle
Resources Requirements
Matrix
Strategic Factors
? Productivity
– Increase Effectiveness and Efficiency of
Operations
? Differentiation
– Make Products and Services Different from
those of the Competitor
? Management
– Help Managers Perform Planning,
Controlling,and Decision-Making Tasks
Better
Systems Project Proposals
? Telecommunications
? Transmission of Voice/Data/Graphics
? Innovative Applications
– Electronic Data Interchange
Project Schedule Report
? Identifies Systems Project and
Estimated Completion Date
Systems Planning
Approach/Feasibility
? Technical
– Availability of existing technology
? Economic
– Commit Sufficient Funds to Develop and Implement
the System
? Legal
– Compliance with the Law
? Operational
– Efficacy and Functionality of Systems Project Proposal
? Schedule
– Proposed Timetable
Object-Orientation
? Different than Transmitting Raw Bits of Data
– Hardware Connections
– Access Controls
– Simple Data Formats
? Software Agents
– object-oriented programs written to perform specific tasks in
response to user requests
– agents know how to exchange object attributes
– agents have the ability to activate object functions in other
agents
? Multimedia
– Integration of Text,Video,Sound,Pictures,Animation
Object-Oriented Development
? Object-Oriented Analysis
– Building Real-world models,using object-oriented view
– Determine classes of objects in problem
– Identify similarities in objects through classification
? Object-Oriented Design
– Decompose knowledge and actions into detailed object-
oriented model
– Logical View,classes and objects
– Physical View,modules and physical implementation
? Object-Oriented Programming
– Programs are organized as cooperative collections of
objects,each of which represents an instance of a class
Cyclical Nature
Identify Classes
and Objects
Identify Class and
Object Semantics
Specify Class and
Object Interfaces
and Implementation
Identify Class and
Object
Relationships
Elements of Object Model
? Abstraction
– Objects or Classes
? emphasize the particulars of object that distinguish it
? de-emphasize the details that are not important
– Hides various behaviors of an object from the user
? Encapsulation
– Hide the information about how a class is implemented
from other classes or objects that may reference a class
– Hides implementation details from a user
? Modularity
– Class or program is broken down into smaller,more
understandable parts
– Well-defined boundaries with less complexity
Elements of Object Model
? Hierarchy
– Inheritance
– Ordering of Abstractions
– Place responsibilities for behaviors at different
levels
– Subclass shares structures or behaviors of other
classes
– Eliminates repetitious code and redundancies
? Polymorphism
– Allows objects of related classes to respond
differently to the same message
Object-Oriented Development,
The Micro Process,Phases
? Identify Classes and Objects
? Identify Semantics of Classes and Objects
? Identify Relationships among Classes and
Objects
? Implement these Classes and Objects
Agendas of the Micro Process
To select the right abstractions that model the
problem at hand
To determine the proper distribution of
responsibilities among these abstractions
To devise a simple set of mechanisms that
regulate these abstractions
To concretely represent these abstractions and
mechanisms in the most efficient and
economical way,
Identify Classes and Objects
Purpose,
? Selected right abstractions to model problem at hand
Products
? Dictionary of Abstractions
Activity,
? Discovery and Invention of Abstractions
– Examine Vocabulary
– Pool wisdom and experience
Agents
– Project Architect and Abstractionists
Milestones and Measures
? Reasonable/Achievable Goals
Identify Semantics of Classes
and Objects
Purpose,
? Determine proper distribution of responsibilities
Products,
? A specification of roles and responsibilities of key abstraction
? Software the codifies these specifications
? Diagrams or similar artifacts that establish meaning
Activity,
? Scenario Planning
? Isolated Class Design
? Pattern Scavenging
Agents
– Project Abstractionists and Application Engineers
Milestones and Measures
? Sufficiency
? Primitiveness
? Completeness
Identify Relationships Among
Classes and Objects
Purpose,
? Devise set of mechanisms to regulated classes and objects
Products,
? A specification of relationships among key abstractions
? Software that codifies these specifications
? Diagrams or similar artifacts that establish meaning of each relationship as well as larger
collaborations
Activity,
? Association specific
? Collaboration identification
? Association Refinement
Agents
– Project Abstractionists and Application Engineers
Milestones and Measures
? Specify semantics and relationships among certain abstractions
? Cohesion,Coupling and Completeness
Implement Classes and
Objects Purpose,
? Represent each abstraction and mechanism concretely in most efficient
and elegant way
Products,
? Software the codifies decisions about the representation of classes and
mechanisms
Activity,
? Selection of structures and algorithms that complete the rules and
responsibilities of the various abstractions
Agents
– Application Engineers
Milestones and Measures
? Identify all interesting abstractions to satisfy the responsibilities of
higher-level abstractions identified during micro process
? Simplicity
The Risks of Object-Oriented
Development Risk Analysis
? Activity of Evaluating the Technology,Resources,and
Object to Capture and Understand Current Risk
– Identify Risks
– Estimate the Risks
– Evaluate the Risks
Risk Management
? Activity of Defining a Plan for Mitigating Discovered
Risks and Implementing the Plan
– Risk Plan
– Risk Control
– Risk Monitoring
Risk Management by Phase
Inception,
? Bracket Project Risk by Building Proof of Concept
Elaboration
? Common Understanding of System Scope
? Establish System Architecture
? Design Common Mechanisms
Construction,
? Refine the Architecture
? Risk- Driven Iterations
? Continuous Integration
Transition,
? Facilitate User Acceptance
? Measure User Satisfaction
Project Risks
Resource Risks,
? People
? Organization
? Funding
? Time
Technical Risks,
? Requirements
? Size and Scope
? Technology
? External Dependencies
? Reuse
? Success Criteria
Reuse
Architecture
Design
Code
Requirements
Data
Human Interface
Estimates
Project Plans
Test Plans
Documentation
Reuse Objectives
Architecture
Patterns and
Frameworks Payoff
Time
Team Roles and Responsibilities
Core,Responsible for Actual
Software Production
? Architect,System's Overall
Structure
? Abstractionist,Manage
system’s Microarchitecture
? Application Engineer,
Implement and Assemble
Classes and Mechanisms
found in System
Supplemental,Supports Activities of
Core Developers
? Project Manager Management of
Project Deliverables
? Analyst,Interpret End User
Requirements
? Integration,Assembles Compatible
Versions for Release
? Quality Assurance/Assessment,
System-Level testing
? Test Software Components,Metrics
? Documentation,Produce End-User
Documentation
? Toolsmith,Integrate Software Tools
? System Administrator,Manage
Physical Computer Resources
? Librarian,Manage Repository
Team Roles and Responsibilities
Peripheral Roles,Represent Consumers of
System
? Patron,Champions Project
? Product Manager,Manages Product Line
? End User,Ultimate Client
? Tech Support,Manages Post-Delivery
Activities
Scenarios
Logical
View
Development
View
Process
View
Physical View
? The logical view to provide a static picture of the primary
abstractions and their relationships
? the development view to show how the code is organized into
subsystems and libraries and the use of commercial off-the-shelf
(COTS) software
? the process view to show the processes and tasks
? the physical view to show the processors,devices,and links in the
operational environment
? Finally,a scenario view explains how the other four views work
together
Summary of the Five Views
View Chunk Organization Relations
Logical Class Category Usage,containment,,,
Process Task Process Invocation,messages,,,
Development Module Subsystem,Layer Visibility,inclusion
Physical Processor Assignment Connection
Scenarios Scripts Use Case Extends,uses
A Comparison of Phases of the Object-Oriented
Systems Development Life
R u m b a u g h e t, a l (1 9 9 1 ) C o a d & Yo u rd a n (1 9 9 0 ):
OO A o n l y
He n d e rso n -S e l l e rs &
E d wa rd s (1 9 9 0 )
1, An a l y si s
2, Sy st e m De si g n
3, Ob j e c t De si g n
4, Im p l e m e n t a t i o n
M o de l s De v e l o pe d
O bj e c t M o de l
Dy n a m i c m o d e l
Fu n c t i o n a l M o d e l
1, Fi n d i n g c l a ss a n d
o b j e c t s
2, Id e n t i fy i n g st ru c t u re s
3, Id e n t i fy i n g su b j e c t s
4, De fi n i n g a t t ri b u t e s
5, De fi n i n g se rv i c e s
L a y e r s
Su bj e c t L a y e r
C l a ss a n d o b j e c t l a y e r
St ru c t u re l a y e r
At t ri b u t e l a y e r
Se rv i c e l a y e r
1, Un d e rt a k i n g
re q u i re m e n t s sp e c i fi c a t i o n
2, Id e n t i fy i n g o b j e c t s
3, E st a b l i sh i n g
i n t e ra c t i o n s b e t we e n
o b j e c t
4, M e rg i n g a n a l y si s i n t o
d e si g n
5, R e a l i z i n g b o t t o m -u p
c o n c e rn s
6, In t ro d u c t i o n o f
h i e ra rc h i c a l i n h e ri t a n c e
re l a t i o n sh i p s a s re q u i re d
7, Ag g re g a t i o n a n d / o r
g e n e ra l i z a t i o n o f c l a sse s
A Comparison of Phases of the Object-Oriented
Systems Development Life
Ru m ba ug h e t, a l (1 99 1) Co a d & You rd a n (1 99 0),
OOA on l y
He nd e rson -Se l l e rs &
E dwa rd s (1 99 0)
1,Ana l ysi s
2,Syst e m De sig n
3,Obj e c t De sig n
4,Im pl e m e nt a t i on
M ode l s De ve l ope d
1,Fi nd i ng c l a ss a nd
ob j e c t s
2,Id e nt i fy i ng str uc t ur e s
3,Id e nt i fy i ng subj e c t s
4,De fi ni ng a t t ri bu t e s
5,De fi ni ng se rv i c e s
La ye r s
1,Und e rt a ki ng
re qu i re m e nt s spe c i fi c a t i on
2,Id e nt i fy i ng ob j e c t s
3,E sta bl i shi ng
i nt e ra c t i on s be t we e n
ob j e c t
4,Me rg i ng a na l ysi s i nt o
de sig n
5,Re a l i z i ng bo t t om -u p
c on c e rn s
6,In t ro du c t i on of
hi e ra rc hi c a l i nh e ri t a nc e
re l a t i on shi ps a s re qu i re d
7,Agg re ga t i on a nd / or
ge ne ra l i z a t i on of c l a sses