Determining Suitablity of DB
Determining Suitablity of DB
Determining Suitablity of DB
LO Learning
Outcome Self-Check
Answer Key
Resources
Reading Assessment
Activity
Remember/Tips
Use Computer
LO
At the end of the module the learner will be able to:
1. Determine database functionality
2. Identify scalability and functionality requirements
3. Prepare report
Database requirement
Functional Requirements
Interface requirements
Business Requirements
Regulatory/Compliance Requirements
Security Requirements
Members of the Data Entry group can enter requests but not approve or delete requests
Members of the Managers group can enter or approve a request, but not delete requests
Members of the Administrators group cannot enter or approve requests, but can delete
requests
Depending on the system being described, different categories of requirements are appropriate.
System Owners, Key End Users, Developers, Engineers and Quality Assurance should all
participate in the requirement gathering process, as appropriate to the system.
Requirements outlined in the functional requirements are usually tested in the Operational
Qualification.
Non-functional requirements are often called qualities of a system. Other terms for non-
functional requirements are "constraints", "quality attributes", "quality goals", "quality of service
requirements" and "non-behavioral requirements".[1] Informally these are sometimes called the
"ilities", from attributes like stability and portability. Qualities, that are non-functional
requirements, can be divided into two main categories:
1. Execution qualities, such as security and usability, which are observable at run time.
2. Evolution qualities, such as testability, maintainability, extensibility and scalability,
which are embodied in the static structure of the software system.
Typically during a requirements elicitation process, a Business Analyst elicits the functional
requirements, nonfunctional requirements and business rules. It is only common to confuse some
business rules with functional or nonfunctional requirements and vice versa. For example, the
mathematical formula to calculate sales percentage in year is a business rule whereas, compare
sales percentage of different regions and identify the best performing region is a functional
requirement. In order to remove redundancy, sometimes the business rule is incorrectly merged
with functional requirements.
Below are some points on the approach to document Business Rules (by Ronald Ross):
Entity
An entity is something that exists by itself, although it need not be of material existence. In
particular, abstractions and legal fictions are usually regarded as entities. In general, there is also
no presumption that an entity is animate.
Sometimes, the word entity is used in a general sense of a being, whether or not the referent has
material existence, e.g., is often referred to as an entity with no corporeal form (non-physical
entity), such as a language. It is also often used to refer to ghosts and other spirits.
The word entitative is the adjective form of the noun entity. Something that is entitative is
"considered as pure entity; abstracted from all circumstances", that is, regarded as entity alone,
apart from attendant circumstances.
Entity–relationship model
In software engineering, an Entity–relationship model (ER model) is a data model for describing
a database in an abstract way. This article refers to the techniques proposed in Peter Chen's 1976
paper. However, variants of the idea existed previously, and have been devised subsequently
such as super type and subtype data entities and commonality relationships.
Process models
Process models are processes of the same nature that are classified together into a model. Thus, a
process model is a description of a process at the type level. Since the process model is at the
type level, a process is an instantiation of it. The same process model is used repeatedly for the
development of many applications and thus, has many instantiations. One possible use of a
Descriptive
Prescriptive
Explanatory
Database Scalability
A popular notion about databases is that they don't "scale" well, i.e. that it's too difficult to keep
growing the size a database, or too hard to handle the load of an increasing number of concurrent
users. To put it differently, some believe that database-centric design is fundamentally incapable
of efficiently meeting the demands of high-performance distributed computing. We disagree.
Disk Estimation for IBM Sterling Distributed Order Management provides a methodology to
estimate your initial disk requirements. By using this worksheet and then tracking your actual
database usage over time, disk growth will be easier to anticipate.
In recent years, the cost of disks has dramatically decreased and the capacity and speed of disks
has increased. Information system managers who order disk capacity have shifted from
purchasing disk arrays that are dedicated to a particular database server and project to the use of
Storage Area Networks (SANs).
Consider the confidence that you have in your data estimates when making the final purchase
decision and adjust accordingly. After your initial purchase and production deployment, you can
track disk growth for future purchase forecasts.
Database Architecture
An early proposal for a standard terminology and general architecture for database systems was
produced in 1971 by the DBTG (Data Base Task Group) appointed by the Conference on Data
Systems and Languages (CODASYL, 1971). The DBTG recognized the need for a two level
approach with a system view called the schema and user views called subschema. The American
National Standards Institute (ANSI) Standards Planning and Requirements Committee (SPARC)
produced a similar terminology mid architecture in 1975 (ANSI 1975). ANSI-SPARC
recognized the need for a three level approach with a system catalog.
The objective of the three level architecture is to separate each user's view of the database from
the Way the database is physically represented. There are several reasons why this separation is
desirable:
• Each user should be able to access the same data, but have a different customized view of
the data. Each user should be able to change the way he or she views the data, and this
change should not affect other users.
• Users should not have to deal directly with physical database storage details, such as
indexing or hashing. In other words a user's interaction with the database should be
independent of storage considerations.
• The Database Administrator (DBA) should be able to change the database storage
structures without affecting the user's views.
• The internal structure of the database should be unaffected by changes to the physical
aspects of storage, such as the changeover to a new storage device.
• The DBA should be able to change the conceptual structure of the database without
affecting all users.
It is the users' view of the database. This level describes that part of the database that is relevant
to each user. External level is the one which is closest to the end users. This level deals with the
way in which individual users vie\v data. Individual users are given different views according to
the user's requirement.
A view involves only those portions of a database which are of concern to a user. Therefore same
database can have different views for different users. The external view insulates users from the
details of the internal and conceptual levels. External level is also known as the view level. In
addition different views may have different representations of the same data. For example, one
It is the community view of the database. This level describes what data is stored in the database
and the relationships among the data. The middle level in the three level architecture is the
conceptual level. This level contains the logical structure of the entire database as seen by the
DBA. It is a complete view of the data requirements of the organization that is independent of
any storage considerations. The conceptual level represents:
An Entity is an object whose information is stored in the database. For example, in student
database the entity is student. An attribute is a characteristic of interest about an entity.
For example, in case of student database Roll No, Name, Class, Address etc. are attributes of
entity student.
The conceptual level supports each external view, in that any data available to a user must be
contained in, or derivable from, the conceptual level. However, this level must not contain any
storage dependent details. For instance, the description of an entity should contain only data
types of attributes (for example, integer, real, character) and their length (such as the maximum
It is the physical representation of the database on the computer. This level describes how the
data is stored in the database. The internal level is the one that concerns the way the data are
physically stored on the hardware. The internal level covers the physical\ implementation of the
database to achieve optimal runtime performance and storage space utilization. It covers the data
structures and file organizations used to store data on storage devices. It interfaces with the
operating system access methods to place the data on the storage devices, build the indexes,
retrieve the data, and so· on.
There will be only one conceptual view, consisting of the abstract representation of the database
in it’s entirely. Similarly there will be only one internal or physical view, representing the total
database, as it is physically stored.
Schema
It is important to note that the data in the database changes frequently, while the plans or
schemes remain the same over long periods of time. The database plans consist of types of
entities that a database deals with, the relationship among these entities and the ways in which
the entities and relationships are expressed from one level of abstraction to the next level for the
users' view. The users' view of the data (also called logical organization of data) should be in a
form that is most convenient for the users and they should not be concerned about the way data is
physically organized. Therefore, a DBMS should do the translation between the logical (users'
view) organization and the physical organization of the data in the database.
Types of Schema
There are three different types of schema in the database corresponding to each data view of
database. In other words, the data views at each of three levels are described by schema.
A schema is defined as an outline or a plan that describes the records and relationships existing
at the particular level. The External view is described by means of a schema called external
schema that correspond to different views of the data. Similarly the Conceptual view is defined
by conceptual schema, which describes all the entities, attributes, and relationship together with
integrity constraints. Internal View is defined by internal schema, which is a complete
description of the internal model, containing definition of stored records, the methods of
representation, the data fields, and the indexes used.
There is only one conceptual schema and one internal schema per database. The schema also
describes the way in which data elements at one level can be mapped to the corresponding data
elements in the next level.
Thus, we can say that schema establishes correspondence between the records and relationships
in the two levels. In a relational database, the schema defines the tables, the fields in each table,
and the relationships between fields and tables. Schemas are generally stored in a data dictionary.
The data in the database at any particular point in time is called a database instance. Therefore,
many database instances can correspond to the same database schema. The schema is sometimes
called the intension of the database, while an instance is called an extension (or state) of the
database.
Example: To understand the difference between the three levels, consider again the database
schema that describes College Database system. If User1 is a Library clerk, the external view
would contain only the student and book information. If User2 is an account office clerk then
he/she may be interested in students detail and fee detail. Shows specific information actually
available at each level regarding a particular user.
The external view would depend upon the user who is accessing the database. The conceptual
level contain the logical view of the whole database, it represents the data type of each required
field. The internal view represents the physical location of each element on the disk of the
servers well as how many bytes of storage each element needs.
The DBMS is responsible for mapping between these three types of schema. Two mappings are
required in a database system with three different views.
Names of the field’s and. records, for instance, may be different. A number of conceptual fields
can be combined into a single external field, for example, Last_Name and First_Name at the
conceptual level but Name at the external level. A given external record could be derived from a
number of conceptual .records.
There are several notations for data modeling, most organizations do conceptual data
modeling using Entity r/ship diagram (E-R diagram)
Data structure
In computer science, a data structure is a particular way of storing and organizing data in a
computer so that it can be used efficiently.
Different kinds of data structures are suited to different kinds of applications, and some are
highly specialized to specific tasks. For example, B-trees are particularly well-suited for
implementation of databases, while compiler implementations usually use hash tables to look up
identifiers.
Data structures provide a means to manage large amounts of data efficiently, such as large
databases and internet indexing services. Usually, efficient data structures are a key to designing
efficient algorithms. Some formal design methods and programming languages emphasize data
structures, rather than algorithms, as the key organizing factor in software design. Storing and
retrieving can be carried out on data stored in both main memory and in secondary memory.
Generating report
The market research is normally outsourced to third party agencies by organizations and in turn
they create a professional report to the organization. These reports are preferably provided to
senior officials who are the critical decision makers of the organization. Hence these reports need
to be exclusively efficient and well formatted and the matter should be limpid, analytical and
directive.
The actual facts must be depicted clearly and it is desirable that the data and results are furnished
in graphical or tabular format which could create a substantially good impression and is
1. Information collected in the report must be relevant and focused to derive desired results.
Pictorial and graphical presentation of data and related information help to understand the
details easily. There is a possibility that the collected data in the report needs to be
represented at many places in different formats to fulfill the report goals. The ultimate
goal is to determine all the issue and make suitable strategies to cope up with these issue
or problems.
2. Report should follow the exact predefined goals and objectives. If there is any sort of
divergence of related information which does not match the goals then the results are of
no use. In fact there is a probability of landing up in making negative or out of focus
strategies, which will be very dangerous.
3. The report should always contain the executive summary of the work. This is generally
kept before the actual report starts as it shows the summary of the desired business plan.
4. Apart from the actual analysis the report should also depict the reasons of making this
report and what advantages and profit it can provide after successful implementation of
business plans described inside the report.
5. It should also contain the methodology of the research which shows the overall process
adopted to create the report.
6. It is important that the report contains the possibility of errors in any of the module or
process so that immediate measures could be taken to cope up with these errors.
7. The report should contain the description of the questionnaires used in analysis and the
way it has been prepared.
8. The methodology used in the interviews should also be elaborated and what was achieved
in this should also be described.
9. If the information show that some aspects needs to predict the future trends then the
reports should depict that prediction. This prediction should have scale of success so that
the accuracy could be judged efficaciously. The report should also define each and every
variable and element used in creating these predictive analyses.
The analytical report creation is very important phase of market research which acts as a
blueprint of the business plan which is to be executed. By following the above guidelines while
report generation process can be efficiently taken care of.
This section will provide a basic understanding of SQL*ReportWriter. This document will
briefly cover each main menu choice available to users of SQL*ReportWriter. Most of the
information contained in this section is DIRECTLY extracted from ``Introduction to
SQL*ReportWriter'', ``Building Reports with SQL*ReportWriter'', and ``SQL*ReportWriter
Reference Manual'' and all credit should be given to ORACLE. If you require more detailed
information than provided in this section, consult the above stated manuals.
SQL*ReportWriter is a general purpose tool for developing and executing reports, specially
designed for application developers who know the SQL language. Information is entered into
SQL*ReportWriter through its fill-in-the-form interface. This interface allows you to navigate
quickly and easily throughout the report definiton screens.
Elements of a Report
Every report contains at least one query, one group, and one field. Each object in a report has a
set of attributes, or ``settings'', which provides information about the object. For example, fields
have settings for Width and Display Format, among others.
Most objects are initially created by default, and, in many cases, the default settings are
sufficient. Simple forms are provided to edit the defaults and to create new objects, such as
subtotals and grandtotals.
Every SQL*ReportWriter object (except Report) is owned by another object. For example, a
group owns all of the fields within it. An object is not shared with another object; it has one, and
only one, owner.
SQL*ReportWriter separates the process of data access from report formatting, providing you
with an additional degree of freedom.
In order to build reports successfully with SQL*ReportWriter, you must follow a few simple
steps. First, select the Action choice from the main menu and then select New from the pull-
down menu, and then enter a name for your report.
After you have created a blank report, it is helpful to enter a comment describing the purpose of
the report, and at the same time define your page size and margins. Select the Report choice on
the main menu to access these settings.
The next step is to define one or more queries. Queries enable you to specify the data you plan
to use. You can access data from one or more tables residing in one or more databases. You can
use multiple queries in a report, and you can create relationships between them.
Once queries are defined, you can use groups settings to specify where groups of data from your
queries should be placed in your report and/or specify control breaks (or master/detail
relationships). You can think of groups as a tool to perform ``coarse'' or overall placement of
data in your report. ``Fine tuning'' can be done using the field and text objects described below.
The next step in building reports is to modify the fields. For each column in the database that
you selected, a field is created. By default, each field is made up of two parts: a label and the
data of the field. You can change the default field label to any name, using any capitalization you
wish; you can change the default data format to any format you desire.
The final step that is used to build a report is to modify the text. Using the text object you can
change the positioning or appearance of the fields. You can even highlight parts of field labels.
You can also move or highlight one, or any number of fields. In the text object, you can add your
Self-Check 1
Answer the questions on the following questionnaire; provide the answer sheet to your
trainer.
Check your answers by looking at the feedback sheets; ask for the assistance of the
trainer whenever necessary.
Feedback to Trainee:
1.
i. Functional Requirements - a description of the facility or feature required.
Functional requirements deal with what the system should do or provide
for users. They include description of the required functions, outlines of
associated reports or online queries, and details of data to be held in the
system.
2.
Descriptions of data to be entered into the system
Descriptions of operations performed by each screen
Descriptions of work-flows performed by the system
Descriptions of system reports or other outputs
Who can enter the data into the system.
How the system meets applicable regulatory requirements
3.
External Level
Conceptual Level
Performance Criteria
Satisfactory
Assessment Criteria
Response
The trainee will be assessed through the following criteria: YES NO
Answered all the interview questions clearly
Performed all activities accordingly
Followed all instructions in the activities
Feedback to Trainee: