Enterprise Data Modeling: The first step in database development,
in which the scope and general content of organizational databases are specified.
Information systems architectures (ISA): A conceptual blueprint
or plan that expresses the desired future structure for the information systems
in an organization.
An ISA consists of six key components:
- Data
- Processes--that manipulate data
- Network--which transports data around the organization and between organization
and its key business partners
- People--who perform processes and are the source and receiver of data and
information
- Events and points in time--when processes are performed
- Reasons--for events and rules that govern the processing of data
Information Engineering: A formal top-down, data-oriented methodology
that uses a data orientation to create and maintain information systems. Includes
for steps: planning, analysis, design, and implementation.
Top-down planning: A generic IS planning methodology that attempts
to gain a broad understanding of the information system needs of the entire
organization.
Information Systems Planning
Identifying Strategic Planning Factors
- Organizational goals (e.g. "maintain 10% per year growth rate")
- Critical success factors (e.g. "high quality products")
- Problem areas (e.g. "inaccurate sales forecasts")
Identifying Corporate Planning Objects
CPO define the business scope.
- Organizational units--various departments
- Organization locations
- Business functions (A related group of business processes that support some
aspect of the mission of an enterprise.)
- Entity types--CUSTOMER, PRODUCT, ORDER, etc
- Information systems--transaction processing systems (order tracking, order
processing, payroll, etc.), management information systems (sales management,
inventory control, etc.)
Developing an enterprise model consists of a functional breakdown (or decomposition)
model of each business function, an enterprise model, and various planning matrices.
Functional decomposition: An iterative process of breaking down
the description of a system into finer and finer detail in which one function
is described in greater detail by a set of other, supporting functions.
An enterprise data model shows not only the entity types, but
also the relationships between data entities.
A common format for showing the interrelationships between planning objects
is matrices; several common matrices are:
- location-to-function: indicates what business functions are being performed
at which location
- unit-to-function: identifies which business functions are performed by or
are the responsibility of which business units
- IS-to-data entity: explains how each IS interacts with each data entity
- supporting function-to-data entity: identifies which data are captured,
used, ... within each function
- IS-to-objective: shows which IS support which business objective
Further, matrices prove to be useful for:
- identifying orphans
- spot missing entries
- prioritize development
DB Development Process and SDLC
SDLC: The traditional methodology used to develop, maintain, and
replace information systems
Enterprise Modeling
- set the range and general content of organizational databases
- review current databases and information systems; analyze the nature of
the business area that is the subject of the development project; describe,
in general terms, the data needed for each IS under consideration for development
Conceptual Data Modeling
- analyze the overall data requirements of the proposed IS
- ...
- produce detailed data model, which identifies all the organizational data
that must be managed by this IS
- define every data attribute, list all categories of data, represent every
business relationship between data entities, specify every rules that dictates
the integrity of data
Logical Database Design
- transform the conceptual data model into a standard notation called relations
(based on relational DB theory)
- perform a detailed review of the transactions, reports, displays, and inquiries
supported by the database
- verify exactly what data are to be maintained in the DB and the nature of
those data as needed for each transaction, report, etc.
- transform the combined and reconciled data specifications into basic or
atomic elements following well-established rules for well-structured data
specifications
- begin to specify the logic of the particular computer programs and queries
needed to maintain and report the database contents.
Physical Database Design and Definition
- decide ont he organization of the DB in storage (usually disk) and define
the physical structure of the DBMS
- outline the program to process transactions and to generate anticipated
management information and securely handle all data processing against it
Database Implementation
- write, test, and install programs that process the DB (in standard programming
languages like COBOL, C or VB; or in special DB processing language like SQL;
or special-purpose nonprocedural languages to produce stylized reports and
displays)
- finalize all DB documentation, train users, and establish procedures for
ongoing support of IS and DB users
- load data from existing information sources
- put DB and associated applications into production for data maintenance
and retrieval by actual users
Alternative IS Development Approaches
Prototyping: An iterative rapid application development (RAD)
method of systems development in which requirements are converted to a working
system that is continually revised through close work between analysts and users.
The Role of CASE and a Repository
Computer-aided software engineering (CASE) tools: Software tools
that provide automated support for some portions of the systems development
processes.
3 relevant features of CASE tools:
- the ability to help us draw data models using entity-relationship (ER) and
other notations; a CASE tool's drawing capabilities are "database intelligent"
in that each symbol represents specific data modeling constructs, and these
symbols can be used only in ways consistent with the properties of the associated
constructs.
- the ability to generate code; often, this code contains the database definition
commands to be given to a DBMS: case tools can refer to all data specifications
and compose SQL commands to create relational tables, define each attribute
of each table, and define the key indices
- the ability to serve as an information repository
Information repository: a knowledge base of information about
the facts that an enterprise must be able to access and the processes it must
perform to be successful
Managing the People involved in DB Development
A systems or DB development team can include one or more of each of the following:
- Systems analysts
- Database analysts
- Users
- Programmers
- Database and data administrators
- Other technical experts (in networking, operating systems, testing, and
documentation)
3-Schema Architecture for DB Development
Conceptual Schema
Conceptual Schema: A detailed, technology independent specification
of the overall structure of a database or organizational data that is independent
of amy DBMS technology.
- It defines the whole database without reference to how data are stored in
a computer's secondary memory.
- It is usually depicted in a graphical format using entity relationship (E-R)
or object modeling notations (we call this the data model)
- specifications for the CS are stored in as metadata in a repository or data
dictionary
External Schema, or User View
- user view: logical description of some portion of the DB that is required
by a user to perform some task
- also independent of DB technology
- contains a subset of the conceptual schema , relevant to a particular user
or group of users
- the version of the conceptual schema used in a particular program
Physical or Internal Schema
Physical Schema: Specifications for how data from a conceptual
schema are stored in a computer's secondary memory.
Three-Tiered DB Location Architecture
- Client tier. A desktop or laptop computer, which concentrates
on managing the user-system interface and localized data; also called the
presentation tier. Web scripting tasks may be executed
in this tier
- Application/Web server tier. Processes HTTP protocol, scripting
tasks, performs calculations, and provides access to data; also called the
process services tier.
- Enterprise server (minicomputer and mainframe) tier.
Performs sophisticated calculations and manages the merging of data from
multiple the merging of data from multiple sources across the organization;
also called the data services tier.
Client/Server Architecture: A local area network-based environment
in which database software on a server (called a database server or database
engine) performs database commands sent to it from client workstations [in order
for] application programs on each client [to] concentrate on user interface
functions.
Using the Access (DBMS)
MS Access provides capabilities to develop several types of pre-written routines
that can make it easier for Helen to answer standard (known) questions, so that
the user does not have to program there questions from scratch:
- Form. A set of attributes, in a predetermined
format, all based on a single database record.
- Report. A set of attributes, in a predetermined
format, based on many unrelated records. A report usually contains the same
attributes about each record.
- Query. A question to be answered from the database
as posed in a particular querying language, Query-by-Example.
The result of a query is a table in which the columns are the attributes the
user wants to see and the rows are different instances of those attributes
that satisfy the qualification entered by the user.