Lecture17 & 18 - Database Analysis - Fact Finding
Lecture17 & 18 - Database Analysis - Fact Finding
Database Systems
2
What is “Fact-finding”?
The formal process of using techniques to collect facts about systems, requirements,
and preferences.
It is critical that the database developer captures the necessary facts to build the
required database system.
The necessary facts include, for example,
3
When Are Fact-Finding Techniques Used?
Fact-finding techniques are used in database design and analysis at various stages of the project
lifecycle, including:
Requirement Gathering: Fact-finding techniques are employed to elicit requirements from stakeholders regarding
data needs, system functionality, and business rules.
Data Collection: They aid in collecting existing data sources, formats, and structures to understand the current
state of data management within an organization.
Interviews and Surveys: Interviews and surveys are conducted with users, managers, and other stakeholders to
identify data requirements, usage patterns, and potential issues.
Observation: Observing users and processes helps in understanding how data is currently utilized and what
improvements are needed.
Document Analysis: Existing documentation such as reports, forms, and procedures are analyzed to identify data
elements, relationships, and constraints.
4
Contd….
Prototyping: Fact-finding techniques may involve creating prototypes or mockups to gather feedback on data
presentation and system functionality.
Data Profiling: Techniques like data profiling are employed to analyze data quality, identify anomalies, and
understand data distribution.
Entity-Relationship Analysis: Through interviews and analysis, relationships between different entities within
the organization are identified to design an effective database schema.
Normalization: Fact-finding helps in understanding data dependencies and redundancies, which is crucial for
normalization and improving database efficiency.
Feedback Gathering: Continuous feedback loops are established with stakeholders to refine requirements and
ensure the database design meets their needs effectively.
5
What Facts Are Collected?
In the context of database design and analysis, various facts are collected through fact-finding
techniques. These include:
Data Requirements: Information about the types of data needed, including data entities, attributes, and
relationships.
Business Rules: Rules and constraints that govern how data is created, stored, updated, and deleted within the
database.
Data Usage Patterns: Insights into how users interact with the data, including frequency of access, typical queries,
and reporting needs.
Existing Data Sources: Identification of current data sources, formats, and structures, both electronic and manual.
Data Quality Issues: Identification of data anomalies, inconsistencies, and errors that may impact the effectiveness
of the database.
6
Contd…
User Requirements: Understanding the needs and preferences of end users, including their roles, responsibilities,
and access requirements.
Security and Privacy Requirements: Information about security measures, access controls, and privacy
regulations that must be enforced within the database.
Performance Requirements: Factors affecting database performance, such as expected data volumes, response
times, and concurrency levels.
Integration Requirements: Requirements for integrating the database with other systems, applications, or data
sources.
Scalability and Growth: Anticipated future needs and growth projections that may impact the design and
scalability of the database.
Feedback and Iteration: Continuous feedback from stakeholders to refine requirements and ensure alignment with
evolving business needs.
7
Fact-Finding Techniques
1. Examining Documentation;
2. Interviewing;
4. Research;
5. Questionnaires.
8
1. Examining Documentation
Examining documentation can be useful when we are trying to gain some insight
as to how the need for a database arose.
We may also find that documentation can help to provide information on the part of
the enterprise associated with the problem.
By examining documents, forms, reports, and files associated with the current
system, we can quickly gain some understanding of the system.
9
10
2. Interviewing
Interviewing is the most commonly used and normally the most useful factfinding technique.
Objectives are to find out facts, verify facts, clarify facts, generate enthusiasm, get the end-user
involved, identify requirements, and gather ideas and opinions.
• Unstructured interviews are conducted with only a general objective in mind and with few, if any,
specific questions.
• In structured interviews, the interviewer has a specific set of questions to ask the interviewee. It might
contain Open ended questions as well as close ended questions.
11
12
3. Observing the Enterprise in Operation
This technique is particularly useful when the validity of data collected through
other methods is in question or when the complexity of certain aspects of the system
prevents a clear explanation by the end-users.
13
14
4. Research
Computer trade journals, reference books, and the Internet (including user
groups and bulletin boards) are good sources of information.
They can provide information on how others have solved similar problems,
plus on whether software packages exist to solve or even partially solve the problem.
15
16
5. Questionnaires
When dealing with a large audience, no other fact-finding technique can tabulate the
same facts as efficiently.
There are two types of questions that can be asked in a questionnaire: free-format and
fixed-format.
17
18
Self Learning Casestudy - DreamHome
In this section we first present an overview of the DreamHome case study and then
use this case study to illustrate how to establish a database project.
19
Thankyou
Any Queries?
20