Lecture IS3318

Download Report

Transcript Lecture IS3318

Lecture IS3318
Intro to Databases
• File organization concepts
• Computer system organizes data in a hierarchy
Field: Group of characters as word(s) or number
Record: Group of related fields
File: Group of records of same type
Database: Group of related files
• Record: Describes an entity
• Entity: Person, place, thing on which we store information
• Attribute: Each characteristic, or quality, describing entity
• E.g., Attributes Date or Grade belong to entity COURSE
The Data Hierarchy
A computer system
organizes data in a
hierarchy that starts with the
bit, which represents either
a 0 or a 1. Bits can be
grouped to form a byte to
represent one character,
number, or symbol. Bytes
can be grouped to form a
field, and related fields can
be grouped to form a record.
Related records can be
collected to form a file, and
related files can be
organized into a database.
Figure 6-1
Problems with the traditional file environment (files maintained separately by
different departments)
• Data redundancy and inconsistency
• Data redundancy: Presence of duplicate data in multiple files
• Data inconsistency: Same attribute has different values
• Program-data dependence:
• When changes in program requires changes to data accessed by program
• Lack of flexibility
• Poor security
• Lack of data sharing and availability
• Collection of data organized to serve many applications by centralizing
data and controlling redundant data
Database management system
• Interfaces between application programs and physical data files
• Separates logical and physical views of data
• Solves problems of traditional file environment
Controls redundancy
Eliminates inconsistency
Uncouples programs and data
Enables organization to central manage data and data security
Human Resources Database with Multiple Views
A single human resources database provides many different views of data, depending on the information
requirements of the user. Illustrated here are two possible views, one of interest to a benefits specialist and
one of interest to a member of the company’s payroll department.
Figure 6-3
Relational DBMS
• Represent data as two-dimensional tables called relations or files
• Each table contains data on entity and attributes
Table: grid of columns and rows
• Rows (tuples): Records for different entities
• Fields (columns): Represents attribute for entity
• Key field: Field used to uniquely identify each record
• Primary key: Field in table used for key fields
• Foreign key: Primary key used in second table as look-up field to identify
records from original table
Relational Database Tables
A relational database organizes data in the form of two-dimensional tables. Illustrated here are tables for
the entities SUPPLIER and PART showing how they represent each entity and its attributes.
Supplier_Number is a primary key for the SUPPLIER table and a foreign key for the PART table.
Figure 6-4A
Relational Database Tables (cont.)
Figure 6-4B
Capabilities of Database Management Systems
• Data definition capability: Specifies structure of database content, used
to create tables and define characteristics of fields
• Data dictionary: Automated or manual file storing definitions of data
elements and their characteristics
• Data manipulation language: Used to add, change, delete, retrieve data
from database
• Structured Query Language (SQL)
• Microsoft Access user tools for generation SQL
• Many DBMS have report generation capabilities for creating polished
reports (Crystal Reports)
The Database Approach to Data Management
Microsoft Access Data Dictionary Features
Figure 6-6
Microsoft Access has a
rudimentary data dictionary
capability that displays
information about the size,
format, and other
characteristics of each field
in a database. Displayed
here is the information
maintained in the SUPPLIER
table. The small key icon to
the left of Supplier_Number
indicates that it is a key field.
Some Drawbacks…
• Complexity
• A DBMS is a complex piece of software all users must fully
understand it to make use of its functionalities
• Cost of DBMS
• The cost varies significantly depending on the environment and
the functionality provided. Must take into consideration recurrent
annual maintenance costs
• Cost of Conversion
• Cost of converting existing applications to run on the
new DBMS and hardware. (additional training costs)
• Performance
• DBMS is written for applications in general which
means that some applications may run slower than
• Higher Impact of Failure
• Centralization of resources increases vulnerability of
the system
Database Administrator
Oversees a staff of database specialists
Final recommendations for DB design
Load and maintain DB
Establish security controls
Perform backup and recovery
Data Administration
Data planning
and modelling
Systems Analyst
• Or business analyst is a systems analyst that specializes
in business problem analysis and technologyindependent requirements analysis.
• A programmer/analyst (or analyst/programmer)
includes the responsibilities of both the computer
programmer and the systems analyst.
• Other synonyms for systems analyst include:
• Systems consultant
• Systems architect
• Systems engineer
• Information engineer
• Systems integrator
Variations on the Systems Analysts
• Other synonyms for systems analyst include:
Systems consultant
Systems architect
Systems engineer
Information engineer
Systems integrator
Role of the Systems Analyst
• Study problems and needs of an organization
• Determine best approach to improving
organization through use of:
• People
• Methods
• Information technology
• Help system users and managers define their
requirements for new or enhanced systems
Skills of a Successful Systems
• Analytical
• Understanding of organizations.
• Problem solving skills
• System thinking
• Ability to see organizations and information systems as systems
• Technical
• Understanding of potential and limitations of technology.
Skills of a Successful Systems
• Managerial
• Ability to manage projects, resources, risk and change
• Interpersonal
• Effective written and oral communication skills
System Owners
System owners are the information system’s sponsors and chief
advocates. They are usually responsible for funding the project to
develop, operate, and maintain the information system.
System Users
System users are the people who use or are affected by the
information system on a regular basis—capturing,
validating, entering, responding to, storing, and exchanging
data and information. A common synonym is client.
Types include:
• Internal users
• Clerical and service workers
• Technical and professional staff
• Supervisors, middle managers, and executive
• Remote and mobile users (internal but disconnected)
• External users
Stakeholders: Players in the
Systems Game
• A stakeholder is any person who has an interest in an existing
or new information system. Stakeholders can be technical or
nontechnical workers.
• For information systems, the stakeholders can be classified as:
• System owners
• System users
• Systems analysts
• System designers
• System builders
• IT vendors and consultants
Systems Development Lifecycle
• The systems development life cycle (SDLC) model
is an approach to developing an information
system or software product that is characterised
by a linear sequence of steps that progress from
start to finish without revisiting any previous
• The SDLC model is one of the oldest systems
development models and is still probably the
most commonly used.
• Traditional systems development lifecycle
(Waterfall Model)
• SDLC - very similar to a product life cycle in
the consumer market because both a new
product and information system develop
through a number of stages.
• The typical SDLC has the following steps:
• Initiation
• Feasibility study
• System Investigation
• System Analysis
• Systems Design
• Implementation
• Review and Maintenance
• These stages are frequently referred to as “conventional
systems analysis”, “traditional systems analysis”, “the
systems development life-cycle” or the Waterfall Model
SDLC or The Waterfall Model
• The waterfall model describes a development
method that is linear and sequential.
• Once a phase of development is completed, the
development proceeds to the next phase and
there is no turning back.
• The advantage of waterfall development is that it
allows for departmentalisation and managerial
The Waterfall Model
• A schedule can be set with deadlines for each
stage of development and a product can proceed
through the development process and
theoretically, be delivered on time.
• Development moves from concept, through
design, implementation, testing, installation,
troubleshooting, and ends up at operation and
Traditional SDLC
• This is now regarded as the “hard” systems approach
because of its rigid demarcation between phases.
• It has shortfalls which lead to a number of difficulties
• One major criticism of the model is that it doesn’t cater for
revisiting previous phases to correct defects.
• Feedback Loop – refinement of Waterfall Model
Potential Strengths of the Traditional SDLC
• It has been well tried and tested
• Use of documentation standards
• Following the methodology should aid (At least to some extent)
that roll out dates, budgets and expected benefits are met.
• At the end of each phase, all parties involved in the project can
review progress.
• Much greater control on the development of computer
applications and make possible the use of project management
tools and techniques
Potential Weaknesses of the Traditional
• Criticisms of the methodology or perhaps of the
way it was used include:
Failure to meet the needs of management
Unambitious systems design
User dissatisfaction
Problems with documentation
Lack of control
Potential Weaknesses of the Traditional
Incomplete systems
Application backlog
Maintenance workload
Problems with the “ideal” approach
It does not allow for much reflection or revision.
• Building an experimental system rapidly and inexpensively for
end users to evaluate
• It will be refined until it conforms to the users’ requirements
• This is achieved through iterative development
Advantages of Prototyping
• Useful when there is uncertainty about system requirements
or systems design
• Valuable for End-user interface design
• Encourages end-user involvement throughout the systems
development lifecycle
Disadvantages of Prototyping
• Better suited for smaller application development.
• Prototyping may mean glossing over essential steps in the
system development.
Application Software Packages
• A set of prewritten, precoded application software programs
that are commercially available for sale or lease
• Packages have increased as many applications are common to
many businesses: payroll, accounts and inventory control
Advantages of Software Packages
• Most of the design work has been completed in advance
• Little extensive testing required
• Vendor support and maintenance
Disadvantages of Software Packages
• Disadvantages may be increased with a complex system
• Required customisation and additional programming may be
• Hidden implementation costs
End User Development
• The development of information systems by end
users with little or no formal assistance from
technical specialist
• It has been made possible by fourth generation
software tools (4GL)
Encouraging End User Development
• The variety of application development tools
available make it easier for end user development
• Guidelines for managers to encourage intranet
website development by end users:
Look for what makes sense
Spur creativity
Set some limits
Give managers responsibility
Make users comfortable
Advantages to End User Development
• Improved requirements determination
• Increased user involvement and satisfaction
• Reduced application backlog
Risks of End User Development
• It occurs outside the traditional mechanisms for
information system management and control
• Problems in ensuring that end-user developed
applications meet organisations objectives and
• Rapid systems development without a formal
methodology may mean that testing and
documentation is inadequate
• Loose control of organisational data
Definition - Outsourcing
• The practice of contracting computer centre operations,
telecommunications networks, or application development to
external vendors
• Example: Bank of Ireland, Dell
• Outsourcing has become increasingly popular as
companies believe that it is more cost effective than
maintaining their own IS staff
• Many companies are outsourcing software
procurement and support to application service
providers (ASPs) who provide and support business
application and other software via the Internet and
intranets to all of a company’s employees
Benefits of Outsourcing
• To reduce work in the information systems
• When the IS function within an organisation is
• To improve the contribution of IT to enhance
business performance.
• To create new sources of revenue.
Benefits of Outsourcing
• To reduce work in the information systems
• When the IS function within an organisation is
• To improve the contribution of IT to enhance
business performance
• To create new sources of revenue
Risks associated with Outsourcing
• May loose control over IS function
• Heavy reliance on the vendor
• Proprietary information may be leaked to the competition if
sensitive data is available outside the organisation
Sample Questions
• Discuss Porter’s Competitive Forces Model, considering the
role of information systems in gaining competitive advantage.
Illustrate your answer with diagrams and examples.
• Outline and briefly explain the stages involved on the Systems
Development Lifecycle (SDLC).