Week 1 Flashcards
What is a File-Based system?
Collection of application programs that perform services for the end-users.
Each program defines and manages its own data
What is a Database System?
A collection of programs that interact with the database
Shared collection of logically related data + description, designed to meet needs of an organisation
What is the Database Management System (DBMS)?
DBMS are software systems that allow users to store, retrieve, and run queries on data
Users communicate with the DBMS which pulls require fields from the Shared Database
What are the 4 Roles in the Database Environment?
- Database Administrator (DBA) - Responsible for implementation and monitoring of the database
- Database Designer - Identify data, relationships with data, constraints on the data
- Application Developer - Use programming language to provide required functionality for the end-users
- End-User - Run applications to perform specific database operations
What are 3 Advantages of a DBMS?
- Data consistency
- Improved security
- Sharing of Data
What are 3 Disavantages of a DBMS?
- Complexity - complex pieces of software, require those operating to fully understand them
- Size Large piece of software which requires large amount of memory
- Cost of DBMS - DBMS cost varies it i for a single user or a big organisation
What is a Database Application?
A program that interacts with a Database at some point within its execution
What are the Advantages of File-Based Approach?
User Control:
End user has total control of the stored data
Can modify application or data at will
Applications and data file can be optimisied for particular tasks
What are the Disadvantages of File-Based Approach?
Data Duplication
Data Dependance
Incompatible File Formats
Proliferation of Application Programs (APPS)
What is Data Duplication?
Each student record is duplicated in each of the 3 files
A change in student details requires updates to all 3 files
Integrity of student records may be compromised if the files are not all updated
What is Data Dependance?
Suppose the University Registrar wishes to record additional student info, such as student term-time address
Then he would need to modify the student data records in her data file as well as to modify her application program so that it can handle the modified data records
In other words: any changes that leads automatically to application program modification
What is Proliferation of Apps?
In time, each of the 3 university officials might want to get more info from their data files than what they originally anticipated when they initially wrote the programs
To do so they would need to add more application programs to handle the new queries
This leads to a proliferation of files and application programs which each official has to handle
(proliferation = rapid increase in the number or amount of something)
How does the Database Approach address these limitations in the File Based Approach?
A shared database satisfying the requirements of the 3 officials is created
Access to this database is through a DBMS
When the officials need info from the database, they write queries in a special language (SQL) to communicate with the DBMS
They pass these queries to the DBMS which queries the database on their behalf and returns the results they require
How does the DBMS increase productivity?
DBMS provides all the low-level file-handling routines that are typically written in application programs
Also DBMS’s typically provide simple query languages enabling users to develop their own queries themselves
This reduces programming effort (typically translates to less programming needed and hence fewer programmers needed)