STAGES• Organizational Context (1960)• Relational Model (1970)• Object Oriented DBMS (1980)• Client Server Database Application (1990)• Database using internet Technology (200)
Organizational Context (1960) Used to solve file processing Difficulty in managing data Difficulty in developing new systems Limitations in Integration of data StartedOrganization Companies started developing large wide database Database Started centralizing operational dataApplication
Limitations• Limited Technology• New Technology• Slow Applications• Unreliable Applications• Difficulty in Handling large Volume of Data• Slow Transactions• Unreliability of Database
What made the situation to improve ?• More Education on Hardware and Software• More experts evolved• New methods of: controlling data : protecting data : backing of database
EvolutionsNavigational ParentDBMS Root Integrated Data Store(Charles Bachman) IMS By: IBM
Relational Model (1970)• Used application of mathematics: Relational Algebra• Used to reduce the problem of storing large amount of data• Developed by E.F.Codd
Benefits• Minimizes duplication• Eliminates processing & storing Errors• Data stored as tables: rows & columns• Concept of normalization used• Columns of 1 row relates the entities
Order Customer Customer ItemNumber First Name Last NameA1010 John Markose ChairA1011 Martin Baby TablesA1012 Thomas Stephen CupboardA1013 Peter Edwin Computer
Resistance to Relational Model• Requires more computer resources• Makes the system slow• Impractical with less speed processing capacity• Examples: INGRES, PRTV, Business System 12 Alphora Dataphor, Rel
Object oriented DBMSAn object-oriented database managementsystem (OODBMS), sometimes shortened toODBMS for object database managementsystem), is a database management system(DBMS) that supports the modelling andcreation of data as objects.
What is an object ?• objects are key to understanding object- oriented technology• Examples:• dogs have• state (name, color, breed, hungry)and• dogs have behavior (barking, fetching, and slobbering )
Examples:• Bicycles have• state (current gear, current pedal cadence, two wheels, number of gears)and• behavior (braking, accelerating, slowing down, changing gears).
Object• Definition: An object is a software bundle of variables and related methods.
Drawbacks• Difficult to use• Very expensive to develop• Already data in relational model needs conversion• More suitable for engineering application
Client Server Database Application (1990)• A client/server application is a piece of software that runs on a client computer and makes requests to a remote server.• “Client/server systems operate in a networked environment, splitting the processing of an application between a front-end client and a back-end processor.”
Basic Elements• A CSDB system consists of three primary software components:• the client application (also called the front end),• the data access layer (also called middleware), and• the database server (also called a database engine, DBMS, data source, or back end).
Client Application• The client application is responsible for accepting input from the user, submitting a query to the database server based on that input, receiving results from the server, formatting them, and presenting them to the user.
Data Access LayerThe data access layer is relativelytransparent to the user, but may bevery apparent to the developer ofthe client app. It provides for theapplication and API used to submitqueries to a data source .
Database ServerThe database server accepts queriesfrom clients, processes themconcurrently, and returns results.There are a number of differentquery languages around, by far themost prevalent of which is SQL
Problems Technical Support SecurityConnectivity
Database Models• Hierarchical DBMS Model• Network DBMS Model• Relational DBMS Model• Object Oriented DBMS Model• Multi dimensional DBMS Model
• The hierarchical data model organizes data in a tree structure.• There is a hierarchy of parent and child data segments.• This structure implies that a record can have repeating information, generally in the child data segments.• Data in a series of records, which have a set of field values attached to it.• It collects all the instances of a specific record together as a record type.• These record types are the equivalent of tables in the relational model, and with the individual records being the equivalent of rows.
A hierarchical database consists of the following:• It contains nodes connected by branches.• The top node is called the root.• If multiple nodes appear at the top level, the nodes are called root segments.• The parent of node is a node directly above a node• Each node (with the exception of the root) has exactly one parent.• The child of node is the node directly below the node and connected by a branch.• One parent may have many children.
Network Model• The network database organizes data in a network structure.• Any column in the network structure can be linked to any other like a tree structure.• A network structure can be described in terms of parents and children.• This model allows having more than one parent.
Network Model• Network DBMS have found not much more acceptance than the hierarchical DBMS.• They have the same flexibility limitations as hierarchical database:• the more powerful structure for representing data relationships allows a more realistic modeling of geographic phenomena.• However network database tend to become overlay complex too easily.
Relational Model• The relational database organizes data in tables.• Each table is identified by a unique table name, and is organized by rows and columns.• Each column within a table also has a unique name. Columns store the values for a specific attribute• Rows represent one record in the table.
Properties of Relational Tables:• Values Are Atomic• Each Row is Unique• Column Values Are of the Same Kind• The Sequence of Columns is Insignificant• The Sequence of Rows is Insignificant• Each Column Has a Unique Name
One-to-one Relationship-• One-to-one Relationship- Here one and only one record in the destination table is related to one and only one record in the source table.
Many-to-One Relationship• This type of relationship is just opposite to the One-to-Many Relationship. Here two or more records in the destination table may be related to one record in the source table.
Object Oriented Model• The object oriented data model manages data through object.• An object is a collection of data elements and operations that together are considered as single entity.
Multi Dimensional Database Model• A multidimensional database (MDB) is a type of database that is optimized for data warehouse and online analytical processing (OLAP) applications.• Multidimensional databases are frequently created using input from existing relational databases. Whereas a relational database is typically accessed using a Structured Query Language (SQL)
DATABSE COMPONENTS• Data Repository • System Software• DBMS • Network Application• Hardware • Front Tools• Procedure Interface • Users• Application Software• Practitioners• Data Dictionary
APPLICATION INTERFACEUSERS PRACTIONERS PROCEDURE INTERFACE QUERY APPLICATION REPORTING SOFTWARE FRONT END TOOLSDATABASE DATA DATACOMPON- REPOS DBMS DICTIO NARY ENTS ITORY HARDWARE
Data Repository• Data Repository is a logical (and sometimes physical) partitioning of data where multiple databases which apply to specific applications or sets of applications reside.
Procedure interface• The characteristics of a procedure that is executed on the database• ExampleSQL:>/ CREATE TABLE <Table name>
Data Dictionary• A data dictionary is a collection of descriptions of the data objects or items in a data model for the benefit of programmers and others who need to refer to them.
Enterprise data modelling• Is the first step in database development, in which the scope and general contents of organisational databases are specified• Graphical representation of data used by an enterprise or company• Gives a helicopter view of the data and data transactions of the organisation•
Enterprise data modelling• Data model encompass both current and historical data of the organisation• The model should reflect both the data and the processes of the organisation, plus the views of these components required by the various sections of the organisation.• Example:• sales data (invoices etc.) will be viewed from a monetary aspect by the accountant, from a quantitative aspect by the store staff and from both these aspects by the marketing people
Information System Architecture (ISA)6 Key Components:1. Data2. Process3. Network4. People5. Events and points in Time6. Reason
1. DataThe processed informationThe information that need to be exchanged, recorded, processed and verified, and classified and stored.
2. Process• The event that manipulates the dataExample:Pos (Point of Sales): Billing of itemsBank : withdrawal or deposit of money by a customer
3. Network• Network transports the data around the organization and between the organizations and the key business partners.
4. People• The entities who perform the process• They are the source of information and receiver of informationExample:Pos: Sender of information: Billing clerk Receiver of Information: Store manager
6. Reasons• Reasons for events• Rules that govern the process• Example: Customer cash withdrawal at ATM
ATM transactionSl. No Event Process Action1 Enter Pin Verify Pin Authorize2 Enter Choose Authenticate Transaction Transaction Type3 Enter Verify Allow Amount balance Withdrawal
enterprise data model (Pine Valley Furniture Company)
Information Engineering• “A data-oriented methodology to create and maintain information systems.”• Top-down planning approach.• Four steps: – Planning (Results in an Information Systems Architecture) – Analysis – meet the various members of the organisation (from top to bottom) to discuss and agree on the data requirements and the processes involved – Design – Implementation
Information Engineering Planning phase1. Identify Strategic Planning Factorsa. Goalsb. Critical Success factorsc. Problem Areas
Information Engineering Planning phase2. Identify Corporate Planning Objectsa. Organizational Unitsb. Locationc. Business Functionsd. Entity Types
Example of process decomposition of an order fulfillment function
Planning matrices• Provide an explicit approach for describing business requirements• Location to function (which business function is being performed at which location)• Unit to function (which business functions are the responsibility of which business units)• IS application to data entity (explains how each information system interacts with each data entity)
Planning matrices• Supporting function to data entity (which data are captured, used, updated, deleted within each function)• IS application to business objective (shows which information systems support each business objective)
Systems development life cycle (SDLC)• Is a complete set of steps that a team of IS professionals follow to specify, develop, maintain and replace information systems• Process is often viewed as a cascade of steps (see following figure)• Cascade or ‘waterfall’ approach as each step flows into the next – though steps can overlap in time and it is possible to backtrack when prior decisions need to be reconsidered
Database development activities during the SDLCProject Identification and Selection Project Initiation and Planning Analysis Logical Design Physical Design Implementation Maintenance
Phase 1: Project identification and Selection: Purpose Deliverables• Understanding • Formal request to Business situation conduct project design, and develop information system
Phase 2: Project Initiation & Planning Purpose Deliverables• Stating Business • Written request to situation study the possible• Stating how changes to existing information system system or the solves the problem development of a• Stating the new system opportunity by using information system
Phase 3: Analysis Purpose Deliverables• Analyze Business • Functional specification situation of system• Determining • Meeting user requirements requirements• Structuring • Meeting feasibility to requirements develop the system• Selecting competing • Feasibility to implement system features the system
Phase 4: Logical Design Purpose Deliverables• To elicit and Detailed functional structure all specification of : information a. Data requirements b. Forma c. Reports d. Displays e. Processing Rules
Phase 5: Physical design Purpose Deliverables• To develop • Computer Program technology and • Database structures Organizational • Technology purchase specifications • Physical site plans • Organizational redesigns
Phase 6: Implementation: Purpose Deliverables• To write programs • Programs that work• Build data files accurately to• Test & install new specification system • Documentation• Train users • Training materials• finalize documentation
Phase 7: Maintenance Purpose Deliverables• Monitor operations • Periodic audits to and usefulness of check the accuracy system of the system• Repair and enhance the system
Database development stages/ phases1. Enterprise Modeling2. Conceptual data modeling3. Logical database design4. Physical database design and definition5. Database Implementation6. Database maintenance
1. Enterprise Modeling• Analyze current data processing• Analyze general functions and their database needs• Justify need for new data and database in support for business
2. Conceptual data modeling• Identify scope of database requirement• Analyze overall data requirement• Develop preliminary conceptual data model• Compare preliminary conceptual data model wit enterprise data model• Develop conceptual data model including all entities , relationships, attributes and business rules
3: Logical database design• Analyze- transactions, forms, displays, and inquiries and database views.• Integrate database views into conceptual data model• Identify data integrity & security requirements• Create stable & well defined structure for database
4. Physical database design & definition• Define database to DBMS• Decide on physical organization of data• Design database processing programs
5. Database Implementation• Code & test database processing programs• Complete database documentation & training materials• Install database and convert data from prior systems
6. Database Maintenance• Analyze database and database applications to ensure that evolving information requirements are met• Tune database for improved performance• Fix errors in database and database applications and recover database when it is contaminated.
Lets wind up…………..• Data, Database, Database Management System• Relationship of application programs with DBMS• Definition of database• Short history of database processing• Types of database• Components of database system• Creating the database• Developing databases