SRU FDBMS Unit-1
SRU FDBMS Unit-1
SRU FDBMS Unit-1
Term: 2024-25
Unit-1
2
Unit-1 Syllabus
Overview of Data Analytics: Introduction and Importance, Types
of Data Analytics, Applications. Data Management: Design Data
Architecture and manage the data for analysis, understand
various sources of Data like Sensors/Signals/GPS etc. Data
Management, Data Quality (noise, outliers, missing values,
duplicate data) and Data Processing & Processing.
3
Introduction
Data Analytics is defined as
It is the process of examining data sets to draw
conclusions about the information they
contain, increasingly with the aid of specialized
systems and software
7
The Evolving role of Data Analytics
From early statistical methods to advanced machine learning
algorithms, data analytics has evolved significantly.
Data analytics has become a critical component in modern
decision-making processes.
Its role has evolved from basic data reporting to advanced
predictive and prescriptive analytics.
Past:
Descriptive Analytics (Reporting, Historical Data)
Present:
Diagnostic Analytics (Root Cause Analysis, Understanding Why)
Future:
•Predictive Analytics (Forecasting, Predicting Future Outcomes)
•Prescriptive Analytics (Recommending Actions, Optimization)
8
9
Importance of Data Analytics
● Enhancing Decision-Making: Data-driven decisions reduce risks and
increase the likelihood of successful outcomes.
● Driving Business Value: Identifying new revenue opportunities,
optimizing operations, and enhancing customer experiences.
● Improving Efficiency: Streamlining processes, reducing waste, and
improving resource utilization.
10
.
11
12
Characteristics of Software
● Software is developed or engineered, it is not manufactured in
the classical sense.
● Software does not wear out. However it deteriorates due to
change.
● Software is custom built rather than assembling existing
components.
-Although the industry is moving towards component based
construction,
“Infant most software continues to be custom built
mortality “Wear
” out”
Time 13
THE CHANGING NATURE OF
SOFTWARE
Seven Broad Categories of software are challenges for
software engineers
System software
Application software
Engineering and scientific software
Embedded software
Product-line software
Web-applications
Artificial intelligence software 14
● System software. System software is a collection of
programs written to service other programs
● Embedded software
-- resides in read-only memory
--is used to control products and systems for the
consumer and industrial markets.
● Artificial intelligence software. Artificial
intelligence (AI) software makes use of nonnumeric
algorithms to solve complex problems that are not
amenable to computation or straightforward
analysis
● Engineering and scientific software.
Engineering and scientific software have been
characterized by "number crunching" algorithms.
15
SOFTWARE MYTHS
16
Management Myths
Myth(1)
-The available standards and procedures
for
software are enough.
Myth(2)
-Each organization feel that they have state-of-art
software development tools since they have latest
computer.
Myth(3)
-Adding more programmers when the work is behind
schedule can catch up.
Myth(4)
-Outsourcing the software project to third party, we 17
Customer Myths
Myth(1)
- General statement of objective is enough
to begin writing programs, the details can
be filled in later.
Myth(2)
-Software is easy to change because
software is flexible
18
PRACTITIONER’S MYTH
Myth(1)
-Once the program is written, the job has been
done.
Myth(2)
-Until the program is running, there is no way of
assessing the quality.
Myth(3)
-The only deliverable work product is the working
program
Myth(4)
-Software Engineering creates voluminous and
unnecessary documentation and invariably slows
down software development.
19
Similarity and Differences from Conventional Engineering
Processes
Software Engineering Process and Conventional Engineering Process,
both are processes related to computers and development
22
23
24
Software Quality Attributes
The various factors, which influence the software, are termed as
software factors. They can be broadly divided into two categories. The
first category of the factors is of those that can be measured directly
such as the number of logical errors, and the second category clubs
those factors which can be measured only indirectly. For example,
maintainability but each of the factors is to be measured to check for
the content and the quality control.
26
Software Development Life Cycle
(SDLC)Models
SDLC stands for Software Development Life Cycle. SDLC is a process
that consists of a series of planned activities to develop or alter the
Software Products.
● Software Development Life Cycle (SDLC) is a process used by the
software industry to design, develop and test high quality
software's. The SDLC aims to produce a high-quality software that
meets or exceeds customer expectations, reaches completion
within times and cost estimates.
● The Waterfall model is the earliest SDLC approach that was used for
software development.
32
Waterfall Model - Advantages
33
Waterfall Model - Disadvantages
34
Iterative Enhancement Models
● Software development uses a dynamic and adaptable method called
the iterative enhancement Model. The iterative enhancement model
encourages a software product’s ongoing evolution and
improvement. This methodology is noticeable due to its
concentration on adaptability, flexibility and change
responsiveness. It makes it easier for a product to evolve because
it gives developers the freedom to progressively enhance the
software, making sure that it complies with evolving specifications,
user demands, and market demands. This helps products evolve
more easily.
● The Iterative Enhancement Model creates an environment where
development teams can more effectively adjust to changing
requirements by segmenting the software development process into
35
smaller, more manageable parts. Every iteration improves on the
36
Applicability
● Mobile app developement: Updates and improvements are often
needed for mobile apps to stay current with new devices, operating
system versions and user preferences. By using an iterative process
developers can release the beta versions of their apps, get user
feedback and then improve functionality of those iterations in future
release.
● Web Application Development: The requirements for developing
web applications frequently change as a result of shifting user
demand and advancements in technology. The Iterative
Enhancement Model makes it possible to developed features
incrementally and guaranteeing that the application can be modified
to satisfy changing user and market demands. In later iterations it
also makes it easier to incorporate new features based on input from
37
users.
Advantages of Iterative Enhancement Model
● Adaptation to changing requirements is made possible by its
flexibility in accomodating modifications and improvement during
each iteration.
● Problems and risks can be identified and addressed early in the
developement process, reduces chances of issue for future stages.
● Every iteration is put through testing and improvement, leading to
higher quality product.
Disadvantages of Iterative Enhancement Model
● Especially in larger projects, managing several iterations at once
can add complexity.
● Higher cost
● Due to constant changes, there may be delays in documentation, 38
Prototyping Model
● Prototyping is defined as the process of developing a working
replication of a product or system that has to be engineered. It
offers a small-scale facsimile of the end product and is used for
obtaining customer feedback.
● This model is used when the customers do not know the exact
project requirements beforehand. In this model, a prototype of the
end product is first developed, tested, and refined as per customer
feedback repeatedly till a final acceptable prototype is achieved
which forms the basis for developing the final product.
● In this process model, the system is partially implemented before or
during the analysis phase thereby giving the customers an
opportunity to see the product early in the life cycle. The process
starts by interviewing the customers and developing the incomplete 39
40
Applications of Prototyping Model
41
Advantages of Prototyping Model
● The customers get to see the partial product early in the life cycle.
This ensures a greater level of customer satisfaction and comfort.
● New requirements can be easily accommodated as there is scope for
refinement.
● Missing functionalities can be easily figured out.
● Errors can be detected much earlier thereby saving a lot of effort and
cost, besides enhancing the quality of the software.
Disadvantages of the Prototyping Model
● Costly with respect to time as well as money.
● There may be too much variation in requirements each time the
prototype is evaluated by the customer.
● Poor Documentation due to continuously changing customer
42
requirements.
SDLC - Spiral Model
The spiral model combines the idea of iterative development with the
systematic, controlled aspects of the waterfall model. This Spiral model
is a combination of iterative development process model and
sequential linear development model i.e. the waterfall model with a
very high emphasis on risk analysis. It allows incremental releases of
the product or incremental refinement through each iteration around
the spiral.
The spiral model has four phases. A software project repeatedly passes
through these phases in iterations called Spirals.
45
Spiral Model - Pros and Cons
46
Incremental Process Model
First, a simple working system implementing only a few basic
features is built and then that is delivered to the customer. Then
thereafter many successive iterations/ versions are implemented
and delivered to the customer until the desired system is released.
A, B, and C are modules of Software Products that are incrementally
developed and delivered.
47
Life Cycle Activities
● Requirements of Software are first broken down into several
modules that can be incrementally constructed and delivered.
● At any time, the plan is made just for the next increment and not for
any kind of long-term plan. Therefore, it is easier to modify the
version as per the need of the customer.
● The Development Team first undertakes to develop core features
(these do not need services from other features) of the system.
● Once the core features are fully developed, then these are refined
to increase levels of capabilities by adding new functions in
Successive versions.
● Each incremental version is usually developed using an iterative
waterfall model of development. 48
49
When to use Incremental Process
Model
Funding Schedule, Risk, Program Complexity, or need for early
realization of benefits.
When Requirements are known up-front.
When Projects have lengthy development schedules.
Projects with new Technology.
Requires good planning and design.
The total cost is not lower.
Well-defined module interfaces are required.
50
Advantages
● Prepares the software fast.
● Clients have a clear idea of the project.
● Changes are easy to implement.
● Provides risk handling support, because of its iterations.
● Adjusting the criteria and scope is flexible and less costly.
● Comparing this model to others, it is less expensive.
● The identification of errors is simple.
51
Disadvantages
A good team and proper planned execution are required.
Issues may arise from the system design if all needs are not
gathered upfront throughout the duration of the program lifecycle.
Every iteration step is distinct and does not flow into the next.
It takes a lot of time and effort to fix an issue in one unit if it needs
to be corrected in all the units.
52
Evolutionary Development Model
The evolutionary model is a combination of the Iterative and
Incremental models of the software development life cycle. Delivering
your system in a big bang release, delivering it in incremental process
over time is the action done in this model. Some initial requirements
and architecture envisioning need to be done. It is better for software
products that have their feature sets redefined during development
because of user feedback and other factors. This article focuses on
discussing the Evolutionary Model in detail.
56
Thank You
57