0% found this document useful (0 votes)
45 views

Caala Assegment (Autosaved) 12431

The document discusses different types of software including application software, system software, driver software, middleware, and programming software. It describes how software works and provides details about application software, system software, databases management systems, their components and benefits.

Uploaded by

chalaabrahim5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views

Caala Assegment (Autosaved) 12431

The document discusses different types of software including application software, system software, driver software, middleware, and programming software. It describes how software works and provides details about application software, system software, databases management systems, their components and benefits.

Uploaded by

chalaabrahim5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

DIRE DAWA UNIVERSITY

COLLEGE OF BUSINESS AND ECONOMICS

DEPARTMANT OF MANAGEMENT

MANAGEMENT INFORMATION SYSTEM

INDIVIDUAL ASSIGMENT

NAME ID NUMBER

CHALA ABRAHIM 1403508

Submitted to Ins. Matheb.W

Submission date 25/03/2024


Acknowledge
I would like to express my gratitude to Mr. Yassin Hamid who has contributed for the
complication of this assignment his support and guidance is invaluable in shaping the content
and verifying quality.

Table of Contents
ACKNOWLEDGE............................................................................................................................1
OBJECTIVE OF ASSIGNMENT.........................................................................................................4

BACKGROUND OF SOFTWARE..............................................................................................4

1.1 WHAT IS SOFTWARE?.............................................................................................................4


1.1.2 Application software.......................................................................................................5
1.1.3 System software...............................................................................................................5
1.1.4 Driver software...............................................................................................................5
1.1.5 Middleware.....................................................................................................................6
1.1.6 Programming software...................................................................................................6
1.2 HOW DOES SOFTWARE WORK:................................................................................................6
1.2.1 Application software.......................................................................................................6
1.2.2 System software...............................................................................................................7
2.1 Application software:.........................................................................................................7
2.1.1 General Purpose Application Programs.........................................................................8
2.1.2 Application-Specific Programs.......................................................................................8
3.1 SYSTEM SOFTWARE................................................................................................................8
3.1.1 System Management Programs.......................................................................................9
3.1.2 System Development Programs......................................................................................9
3.2 IMPORTANT FEATURES OF SYSTEM SOFTWARE.......................................................................9
3.2.1 High speed.....................................................................................................................10
3.2.2 Hard to manipulate.......................................................................................................10
3.2.3 Written in a low-level computer language....................................................................10
3.2.4 Close to the system........................................................................................................10
3.2.5 Versatile........................................................................................................................10
4.1 DATABASE MANAGEMENT (DBM):.....................................................................................10
4.1.1 What is a database management system?.....................................................................10
4.2 WHAT DOES A DBMS DO?...................................................................................................11
4.3 WHAT ARE THE COMPONENTS OF A DBMS?.......................................................................12
 4.3.1 Storage engine.......................................................................................................12
 4.3.2 Metadata catalog...................................................................................................12
 4.3.3 Database access language.....................................................................................12
 4.3.4 Optimization engine...............................................................................................12
 4.3.5 Query processor.....................................................................................................12
 4.3.6 Lock manager........................................................................................................13
 4.3.7 Log manager..........................................................................................................13
 4.3.8 Data utilities..........................................................................................................13
4.4 POPULAR TYPES AND EXAMPLES OF DBMS TECHNOLOGIES...............................................14
4.4.1 RDBMS..........................................................................................................................14
4.4.2 NoSQL DBMS...............................................................................................................14
4.4.3 New SQL DBMS............................................................................................................15
4.4.4 IMDBMS.......................................................................................................................15
4.4.5 CDBMS.........................................................................................................................16
4.4.6 Multimodel DBMS.........................................................................................................16
4.4.7 Cloud DBMS.................................................................................................................16
4.5 BENEFITS OF USING A DBMS...............................................................................................16
4.6 DRAWBACKS OF DBMSES...................................................................................................17
4.7 DBMS USE CASES................................................................................................................18
4.8 CHANGES IN HOW DBMSES ARE BUILT, SOLD AND SERVICED............................................19
SUMMARY...................................................................................................................................20
ASSIGNMENT QUESTION.............................................................................................................21
METHODOLOGY (SOURCES OF ASSIGNMENT).............................................................................22
REFERENCE.................................................................................................................................22
Objective of assignment
Objective of this assignment focus on clarifying about the software application software system
software and database management

Introduction

The usefulness of computer hardware depends on available. Software is the detailed


instructions that control the operation of a computer system. It can be defined as a set of
instructions that tell the hardware how to work. Software is a collection of programs that
control the working of the computer hardware. A program is a set of instruction arranged in a
logical way that a computer can run Hardware is tangible whereas software is intangible, i.e. it
cannot be touched

Background of software

1.1 What is software?


Software is a set of instructions, data or programs used to operate computers and execute specific
tasks. It is the opposite of hardware, which describes the physical aspects of a computer.
Software is a generic term used to refer to applications scripts and programs that run on a device.
It can be thought of as the variable part of a computer, while hardware is the invariable part.

The two main categories of software are application software and system software. An
application is software that fulfills a specific need or performs tasks. System software is designed
to run a computer's hardware and provides a platform for applications to run on top of.

Other types of software include programming software, which provides the programming tools
software developers need; middleware which sits between system software and applications; and
driver software, which operates computer devices and peripherals.

Early software was written for specific computers and sold with the hardware it ran on. In the
1980s, software began to be sold on floppy disks, and later on CDs and DVDs. Today, most
software is purchased and directly downloaded over the internet. Software can be found on
vendor websites or application service provider websites.

Software is a set of instructions or programs that tell a computer how to perform specific tasks. It
is a collection of data or computer instructions that tell the computer how to work.

Examples and types of software

Among the various categories of software, the most common types include the following:

1.1.2 Application software. The most common type of software, application software is a
computer software package that performs a specific function for a user, or in some cases, for
another application. An application can be self-contained, or it can be a group of programs that
run the application for the user. Examples of modern applications include office suites, graphics
software, databases and database management programs, web browsers, word processors,
software development tools, image editors and communication platforms.

1.1.3 System software. These software programs are designed to run a computer's application
programs and hardware. System software coordinates the activities and functions of the hardware
and software. In addition, it controls the operations of the computer hardware and provides an
environment or platform for all the other types of software to work in. The OS is the best
example of system software; it manages all the other computer programs. Other examples of
system software include the firmware, computer language translators and system utilities.

1.1.4 Driver software. Also known as device drivers, this software is often considered a type of
system software. Device drivers control the devices and peripherals connected to a computer,
enabling them to perform their specific tasks. Every device that is connected to a computer needs
at least one device driver to function. Examples include software that comes with any
nonstandard hardware, including special game controllers, as well as the software that enables
standard hardware, such as USB storage devices, keyboards, headphones and printers.

1.1.5 Middleware. The term middleware describes software that mediates between application
and system software or between two different kinds of application software. For example,
middleware enables Microsoft Windows to talk to Excel and Word. It is also used to send a
remote work request from an application in a computer that has one kind of OS, to an application
in a computer with a different OS. It also enables newer applications to work with legacy ones.

1.1.6 Programming software. Computer programmers use programming software to write code.
Programming software and programming tools enable developers to develop, write, test
and debug other software programs. Examples of programming software include assemblers,
compilers, debuggers and interpreters.

1.2 How does software work?


All software provides the directions and data computers need to work and meet users' needs.
However, the two different types -- application software and system software -- work in
distinctly different ways.

1.2.1 Application software


Application Software: Application software is designed to perform specific tasks or applications
for users. Examples include word processors, web browsers, email clients, and games.

Application software consists of many programs that perform specific functions for end users,
such as writing reports and navigating websites. Applications can also perform tasks for other
applications. Applications on a computer cannot run on their own; they require a computer's OS,
along with other supporting system software programs, to work.

These desktop applications are installed on a user's computer and use the computer memory to
carry out tasks. They take up space on the computer's hard drive and do not need an internet
connection to work. However, desktop applications must adhere to the requirements of the
hardware devices they run on.

Web applications, on the other hand, only require internet access to work; they do not rely on the
hardware and system software to run. Consequently, users can launch web applications from
devices that have a web browser. Since the components responsible for the application
functionality are on the server, users can launch the app from Windows, Mac, Linux or any other
OS.
1.2.2 System software
System software sits between the computer hardware and the application software. Users do not
interact directly with system software as it runs in the background, handling the basic functions
of the computer. This software coordinates a system's hardware and software so users can run
high-level application software to perform specific actions. System software executes when a
computer system boots up and continues running as long as the system is on.

2.1 Application software:


Application software is a type of computer program designed to perform specific tasks or
functions for the user. It is different from system software, which manages and controls the
computer hardware and provides a platform for running application software. Application
software can include programs like word processors, spreadsheets, web browsers, email clients,
and multimedia players, among others. These programs are created to serve a specific purpose or
solve a particular problem for the user.
2.1.1 General Purpose Application Programs: These are software applications that are
designed to perform a wide range of tasks and functions. They are versatile and can be used for
various purposes. Examples of general purpose application programs include word processors,
spreadsheets, presentation software, and database management systems.

2.1.2 Application-Specific Programs: These are software applications that are designed to
perform specific tasks or functions tailored to a particular industry or field. They are specialized
programs that cater to the unique needs of a specific user group. Examples of application-
specific programs include accounting software, CAD (Computer-Aided Design) software,
medical billing software, and video editing software.

Both general purpose application programs and application-specific programs play important
roles in meeting the diverse needs of users across different sectors and industries. They provide
tools and functionalities that help users accomplish their tasks efficiently and effectively.

3.1 System software:


System software is a type of computer program that is designed to run a computer's hardware
and application programs. If we think of the computer system as a layered model, the system
software is the interface between the hardware and user applications. The operating system is the
best-known example of system software. The OS manages all the other programs in a computer.

System software is used to manage the computer itself. It runs in the background, maintaining
the computer's basic functions so users can run higher-level application software to perform
certain tasks. Essentially, system software provides a platform for application software to be run
on top of.

System software refers to the software that manages and controls the hardware components of a
computer system. It provides a platform for running application software and interacts with the
computer hardware to facilitate the execution of programs. System software includes operating
systems, device drivers, utilities, and other essential programs that help in the proper functioning
of the computer system.
3.1.1 System Management Programs: These are software programs designed to monitor,
control, and manage various aspects of a computer system. They help in optimizing system
performance, ensuring security, and maintaining system stability. Examples of system
management programs include antivirus software, backup utilities, disk defragmentation tools,
and system monitoring tools.

3.1.2 System Development Programs: These are software tools used by developers to create,
test, and maintain software applications. They provide an integrated development environment
(IDE) that includes tools for writing, compiling, debugging, and deploying software programs.
Examples of system development programs include programming languages, code editors,
compilers, debuggers, and version control systems.

System management programs and system development programs are essential components of
the software ecosystem that support the efficient operation and development of computer
systems. They help in ensuring the reliability, security, and performance of the system while
enabling developers to create and maintain software applications effectively.

3.2 Important features of system software:


Computer manufacturers usually develop the system software as an integral part of the computer.
The primary responsibility of this software is to create an interface between the computer
hardware they manufacture and the end user.

System software generally includes the following features:

3.2.1 High speed. System software must be as efficient as possible to provide an effective
platform for higher-level software in the computer system.
3.2.2 Hard to manipulate. It often requires the use of a programming language, which is more
difficult to use than a more intuitive user interface (UI).

3.2.3 Written in a low-level computer language. System software must be written in a


computer language the central processing unit (CPU) and other computer hardware can read.

3.2.4 Close to the system. It connects directly to the hardware that enables the computer to run.

3.2.5 Versatile. System software must communicate with both the specialized hardware it runs
on and the higher-level application software that is usually hardware-agnostic and often has no
direct connection to the hardware it runs on. System software also must support other programs
that depend on it as they evolve and change.

4.1 Database Management (DBM):


4.1.1 What is a database management system?
A database management system (DBMS) is system software for creating and managing
databases. A DBMS makes it possible for end users to create, protect, read, update and delete
data in a database. The most prevalent type of data management platform, the DBMS essentially
serves as an interface between databases and users or application programs, ensuring that data is
consistently organized and remains easily accessible. Database Management, refers to the use of
software applications to organize and manipulate databases, ensuring the consistency, integrity,
and security of the data they contain. These software applications, known as Database
Management Systems (DBMS), offer a structured way to store, manage and retrieve information.

Database management software plays a crucial role in modern information systems by enabling
organizations to store, retrieve, and analyze large volumes of data efficiently. It helps ensure data
integrity, security, and availability while providing tools for data manipulation, querying, and
reporting.

4.2 What does a DBMS do?


The DBMS manages the data; the database engine allows data to be accessed, locked and
modified; and the database schema defines the database's logical structure. These three
foundational elements help provide concurrency, security, data integrity and uniform data
administration procedures. The DBMS supports many typical database administration tasks,
including change management, performance monitoring and tuning, security, and backup and
recovery. Most database management systems are also responsible for automated rollbacks and
restarts as well as logging and auditing of activity in databases and the applications that access
them.

The DBMS provides a centralized view of data that can be accessed by multiple users from
multiple locations in a controlled manner. A DBMS can limit what data end users see and how
they view the data, providing many views of a single database schema. End users and software
programs are free from having to understand where the data is physically located or on what type
of storage medium it resides because the DBMS handles all requests.

The DBMS can offer both logical and physical data independence to protect users and
applications from having to know where data is stored or from being concerned about changes to
the physical structure of data. So long as programs use the application programming interface
(API) for the database that the DBMS provides, developers won't have to modify programs just
because changes have been made to the database. In a relational database management system
(RDBMS) -- the most widely used type of DBMS -- the API is SQL, a standard programming
language for defining, protecting and accessing data.

4.3 What are the components of a DBMS?


A DBMS is a sophisticated piece of system software consisting of multiple integrated
components that deliver a consistent, managed environment for creating, accessing and
modifying data in databases. These components include the following:

 4.3.1 Storage engine. This basic element of a DBMS is used to store data. The DBMS must
interface with a file system at the operating system (OS) level to store data. It can use
additional components to store data or interface with the actual data at the file system level.
 4.3.2 Metadata catalog. Sometimes called a system catalog or database dictionary, a
metadata catalog functions as a repository for all the database objects that have been created.
When databases and other objects are created, the DBMS automatically registers information
about them in the metadata catalog. The DBMS uses this catalog to verify user requests for
data, and users can query the catalog for information about the database structures that exist
in the DBMS. The metadata catalog can include information about database objects,
schemas, programs, security, performance, communication and other environmental details
about the databases it manages.

 4.3.3 Database access language. The DBMS also must provide an API to access the data,
typically in the form of a database access language to access and modify data but may also
be used to create database objects and secure and authorize access to the data. SQL is an
example of a database access language and encompasses several sets of commands,
including Data Control Language for authorizing data access, Data Definition Language for
defining database structures and Data Manipulation Language for reading and modifying
data.

 4.3.4 Optimization engine. A DBMS may also provide an optimization engine, which is
used to parse database access language requests and turn them into actionable commands for
accessing and modifying data.

 4.3.5 Query processor. After a query is optimized, the DBMS must provide a means for
running the query and returning the results.

 4.3.6 Lock manager. This crucial component of the DBMS manages concurrent access to
the same data. Locks are required to ensure multiple users aren't trying to modify the same
data simultaneously.

 4.3.7 Log manager. The DBMS records all changes made to data managed by the DBMS.
The record of changes is known as the log, and the log manager component of the DBMS is
used to ensure that log records are made efficiently and accurately. The DBMS uses the log
manager during shutdown and startup to ensure data integrity, and it interfaces with database
utilities to create backups and run recoveries.
 4.3.8 Data utilities. A DBMS also provides a set of utilities for managing and controlling
database activities. Examples of database utilities include reorganization, runstats, backup
and copy, recover, integrity check, load data, unload data and repair database.

4.4 Popular types and examples of DBMS technologies


Popular database models and management systems include RDBMS, NoSQL DBMS, NewSQL
DBMS, in-memory DBMS, columnar DBMS, multimodel DBMS and cloud DBMS.

4.4.1 RDBMS. Sometimes referred to as a SQL DBMS and adaptable to most use cases,
RDBMS presents data as rows in tables with a fixed schema and relationships defined by values
in key columns. RDBMS Tier-1 products can be quite expensive, but there are high quality, open
source options such as PostgreSQL that can be cost-effective. Other examples of popular
RDBMS products include Oracle, MySQL, Microsoft SQL Server and IBM Db2.
4.4.2 NoSQL DBMS. Well-suited for loosely defined data structures that may evolve over
time, NoSQL DBMS may require more application involvement for schema management. There
are four types of NoSQL database systems: document databases, graph databases, key-value
stores and wide-column stores. Each uses a different type of data model, resulting in significant
differences between each NoSQL type.

 Document databases store semi-structured data and descriptions of that data in document
format, usually JavaScript Object Notation (JSON). They're useful for flexible schema
requirements such as those common with content management and mobile applications.
Popular document databases include MongoDB and Couchbase.

 Graph databases organize data as nodes and relationships instead of tables or documents.
Because it stores the relationship between nodes, the graph system can support richer
representations of data relationships. The graph data model doesn't rely on a strict schema,
and it can evolve over time. Graph databases are useful for applications that map
relationships, such as social media platforms, reservation systems or customer relationship
management. Examples of popular graph databases include Neo4j and GraphDB.

 Key-value stores are based on a simple data model that pairs a unique key with an associated
value. Due to this simplicity, key-value stores can be used to develop highly scalable and
performant applications such as those for session management and caching in web
applications or for managing shopping cart details for online buyers. Examples of popular
key-value databases include Redis and Memcached.

 Wide-column stores use the familiar tables, columns and rows of relational database systems,
but column names and formatting can differ from row to row in a single table. Each column
is also stored separately on disk. As opposed to traditional row-orientated storage, a wide-
column store is optimal when querying data by columns, such as in recommendation engines,
catalogs, fraud detection and event logging. Cassandra and HBase are examples of wide-
column stores.

4.4.3 New SQL DBMS. Modern relational systems that use SQL, New SQL database systems
offer the same scalable performance as NoSQL systems. But New SQL systems also provide
ACID (atomicity, consistency, isolation and durability) support for data consistency. A New
SQL DBMS is engineered as a relational, SQL database system with a distributed, fault-tolerant
architecture. Other typical features of NewSQL system offerings include in-memory capability
and clustered database services with the ability to be deployed in the cloud. Many NewSQL
DBMS packages have fewer features and components and a smaller footprint than legacy
relational offerings, making them easier to support and understand. Some vendors now eschew
the NewSQL label and describe their technologies as distributed SQL databases. Cockroach DB,
Google Cloud Spanner, NuoDB, Volt Active Data and YugabyteDB are examples of database
systems in this category.

4.4.4 IMDBMS. An in-memory database management system predominantly relies on main


memory for data storage, management and manipulation. By reducing the latency associated
with reading from disk, an IMDBMS can provide faster response times and better performance
but can consume more resources. Therefore, an in-memory database is ideal for applications that
require high performance and rapid access to data, such as data stores that support real-time
HTAP (hybrid transactional and analytical process). Any type of DBMS (relational, NoSQL,
etc.) can also support in-memory processing. SAP HANA and Redis are examples of in-memory
database systems.

4.4.5 CDBMS. A columnar database management system stores data in tables focused on
columns instead of rows, resulting in more efficient data access when only a subset of columns is
required. It's well-suited for data warehouses that have a large number of similar data items.
Popular columnar database products include Snowflake and Amazon Redshift.

4.4.6 Multimodel DBMS. This system supports more than one database model. Users can
choose the model most appropriate for their application requirements without having to switch to
a different DBMS. For example, IBM Db2 is a relational DBMS, but it also offers a columnar
option. Many of the most popular database systems similarly qualify as multimodel through add-
ons, including Oracle, PostgreSQL and MongoDB. Other products, such as Azure Cosmos DB
and Mark Logic, were developed specifically as multimodel databases.
4.4.7 Cloud DBMS. Built in and accessed through the cloud, the DBMS may be any type
(relational, NoSQL, etc.) and a conventional system that's deployed and managed by a user
organization or a managed service provided by the database vendor. Popular cloud services that
enable cloud database implementation include Microsoft Azure, Google Cloud and AWS.

4.5 Benefits of using a DBMS


One of the biggest advantages of using a DBMS is that it lets users and application programmers
access and use the same data concurrently while managing data integrity. Data is better protected
and maintained when it can be shared using a DBMS instead of creating new iterations of the
same data stored in new files for every new application. The DBMS provides a central store of
data that multiple users can access in a controlled manner.

Central storage and management of data within the DBMS provide the following:

 data abstraction and independence;

 data security;

 a locking mechanism for concurrent access;

 an efficient handler to balance the needs of multiple applications using the same data;

 the ability to swiftly recover from crashes and errors;

 strong data integrity capabilities;

 logging and auditing of activity;

 simple access using a standard API; and

 Uniform administration procedures for data.

Another advantage of a DBMS is that database administrators (DBAs) can use it to impose a
logical, structured organization on the data. A DBMS delivers economy of scale for processing
large amounts of data because it's optimized for such operations.
A DBMS can also provide many views of a single database schema. A view defines what data
the user sees and how that user sees the data. The DBMS provides a level of abstraction between
the conceptual schema that defines the logical structure of the database and the physical schema
that describes the files, indexes and other physical mechanisms the database uses. A DBMS
enables users to modify systems much more easily when business requirements change. A DBA
can add new categories of data to the database without disrupting the existing system, thereby
insulating applications from how data is structured and stored.

However, a DBMS must perform additional work to provide these advantages, thereby incurring
overhead. A DBMS will use more memory and CPU than a simple file storage system, and
different types of DBMSes will require different types and levels of system resources.

4.6 Drawbacks of DBMSes


Perhaps the single biggest drawback is the cost of the hardware, software and personnel required
to run an enterprise DBMS, such as SQL Server, Oracle or IBM Db2. The hardware is usually a
high-end server with a significant amount of memory configured, coupled with large disk arrays
to store the data. The software includes the DBMS itself, which is pricey, as well as tools for
programming and testing and for DBAs to enable management, tuning and administration.

From a personnel perspective, using a DBMS requires hiring a DBA staff, training developers in
the proper usage of the DBMS, and possibly hiring additional systems programmers for
managing installation and integrating the DBMS into the IT infrastructure. Dealing with
additional complexity is also a concern when implementing a DBMS.

The DBMS software is complex and requires in-depth knowledge to properly implement and
manage. But the DBMS interfaces with many other IT components, such as the OS, transaction
processing systems, programming languages and networking software. Ensuring the proper
configuration and efficiency of such a complicated setup can be difficult and cause performance
slowdowns or even system outages.
Some of the cost and administrative overhead of running enterprise database systems can
be alleviated by the cloud computing model. For example, the cloud service provider (CSP)
installs and manages the hardware, which can be shared across cloud users. Furthermore,
storage, memory and other resources can be scaled up and down as required based on usage
needs. And basic DBA tasks like patching and simple backups become the responsibility of the
CSP. Therefore, it can be easier and more cost-effective for some databases to be deployed in the
cloud instead of on-premises.

4.7 DBMS use cases


Enterprises that need to store data and access it later to conduct business have a viable use case
for deploying a DBMS. Any application requiring a large amount of data that needs to be
accessed by multiple users or customers is a candidate for using a DBMS. Most medium to large
organizations can benefit from using a DBMS because they have more data-sharing and
concurrency needs and are able to more readily overcome cost and complexity issues. Sample
customer use cases for DBMS technology include the following:

 Applications can include storing customer and account information, tracking account
transactions such as withdrawals and deposits, and tracking loan payments. ATMs are a good
example of a banking system that relies on a DBMS to track and manage that activity.

 DBMSes manage sales for any type of business, including storing product, customer and
salesperson information and recording the sale, tracking fulfillment and maintaining sales
history information.

 Most commercial airlines rely on a DBMS for data-intensive applications such as scheduling
flight plans and managing customer flight reservations.

 Manufacturing companies depend on a DBMS to track and manage inventory in warehouses.


A DBMS can also be used to manage data for supply chain management applications that
track the flow of goods and services, including the movement and storage of raw materials,
work-in-process inventory and finished goods from the point of origin to the point of
consumption.
 A DBMS also makes it easier for a company to track and manage employee information in a
human resources management application, including managing employee data such as
addresses, phone numbers, salary details, pay roll and paycheck generation.

4.8 Changes in how DBMSes are built, sold and serviced


By 2019, open source DBMS technologies were rapidly gaining traction. In fact, Gartner
projected that open source databases would account for 10% of total spending on database
software for that year due to increased enterprise adoption. By 2022, three of the top five
databases ranked by DB-Engines were open source. Most mainstream IT organizations use open
source software in some of their mission-critical operations. This trend complements two others:
acquisitions of open source database vendors by bigger rivals and the expansion of the cloud-
based database service market.

In 2019, Gartner also said that cloud databases were driving most of the growth in the DBMS
market, describing the cloud as "the default platform for managing data." In 2021, Gartner
concluded that "by 2022, cloud database management system revenue will account for 50% of
the total DBMS market revenue." In connection with the increasing shift toward the cloud,
numerous DBMS vendors have introduced managed cloud database services that offer to free IT
and data management teams from many of the tasks required to deploy, configure and administer
database systems.

Another growing trend is what Gartner refers to as HTAP -- using a single DBMS to deliver both
transaction processing and analytics without requiring a separate DBMS for each operation. To
support this trend, more DBMS vendors are creating hybrid database systems that deliver
multiple database engines within a single DBMS. Most hybrid DBMSes provide a combination
of relational and multiple NoSQL engines and APIs. Examples include Airbase, Microsoft's
Azure Cosmos DB and Data tax Enterprise.

SUMMARY
1. A piece of software is a computer program which has been written to carry out a particular
task.

2. Software programs are originally produced in a programming language.

3. Software is usually classified as being either systems software or application software.

4. Systems software controls the operation of a computer. The operating system and utility
programs are systems software.

5. Application software is software that is written to solve a particular problem or carry out a
particular job. Application software can be either generic or application specific :

A generic package is a package that can be put to a wide variety of


uses. The most common generic software packages are: word
Generic
processors, desktop publishers, graphics
packages, spreadsheets and databases.

An application specific package is produced to perform one specific


Application
task. For example a program written to produce invoices and
Specific
manage stock levels for a garage.

6. If you need a piece of software that will perform a specific task then you will have to choose
from one of three options :

 Off-the-shelf: If a package already exists that performs exactly the task that you need
then you can buy it "off-the-shelf" from a shop.
 Customize a Generic Software Package: Modify a generic package such as a database
to carry out the task.
 Custom Written Software: Pay a computer programmer to write a new piece of
software to perform the task.

7. To select a piece of software for a particular job it is useful to draw up a set of comparison
criteria, based upon what you need the software to do.

Database, Collection of data or information organized for rapid search and retrieval, especially
by a computer. Databases are structured to facilitate storage, retrieval, modification, and deletion
of data in conjunction with various data-processing operations. A database consists of a file or
set of files that can be broken down into records, each of which consists of one or more fields.
Fields are the basic units of data storage. Users retrieve database information primarily through
queries. Using keywords and sorting commands, users can rapidly search, rearrange, group, and
select the field in many records to retrieve or create reports on particular aggregates of data
according to the rules of the database management system being used.

Assignment question
What is software?

How does software work?

What is system software?

What is system software and application software?

Important feature of software?

What is database management system?

What does a DBMS do?

Benefit of using DBMS?

What are components of a DBMS?

Drawback of DBMS
Methodology (sources of assignment)
The information in this assignment is based on the thorough research of a reliable primary
sources of different school text book, article, and dependable online research like google.com

Reference.
1. Aaby, Anthony (2004). Introduction to Programming Languages
2. ^ Wexelblat, Richard L. History of Programming Languages
3. ^ Stallings (2005). Operating Systems, Internals and Design Principles. Pearson
4. ^ Kurose, James; Ross, Keith (2005). Computer Networking: A Top-Down Approach.
Pearson.
5. ^ Wayne Carlson (2003) A Critical History of Computer Graphics and Animation
6. ^ Ferguson, R. Stuart. (2013) Practical Algorithms for 3D Computer Graphics
7. ^ Narayan, K. Lalit (2008). Computer Aided Design and Manufacturing. Prentice Hall
8. Baron, Michael. (2006) Probability and Statistics for Computer Scientists
9. Jean E. Sammet (1969). Programming Languages: History and Fundamentals, Prentice
Hall, Englewood Cliffs, New Jersey.
10. ^ R.W. Bemer (1969). A politico-social history of Algol, Annual Review in Automatic
Programming, pp 151-237. Pergamon Press, Oxford.
Millner, W. W.; Montgomery-Smith, Ann (2022). Information and Communication
Technology for Intermediate GNVQ. p. 126.

Fundamentals of Database Systems, Elmasri Navathe Pearson Education.

An Introduction to Database systems, C.J. Date, A.Kannan, S.Swami Nadhan, Pearson, Eight
Edition for UNIT III.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy