3.classification of Software - Software Engineering
3.classification of Software - Software Engineering
Thanks for trying out Immersive Reader. Share your feedback with us.
1. Cost: As the main cost of producing software is the manpower employed, the cost of
developing software is generally measured in terms of person-months of effort spent in
development. The productivity in the software industry for writing fresh code mostly ranges
from a few hundred to about 1000 + LOC per person per month.
2. Schedule: The schedule is another important factor in many projects. Business trends are
dictating that the time to market a product should be reduced; that is, the cycle time from
concept to delivery should be small. This means that software needs to be developed faster
and within the specified time.
3. Quality: Quality is one of the main mantras, and business strategies are designed around it.
Developing high-quality software is another fundamental goal of software engineering.
Attributes of Software
The international standard on software product quality suggests that software quality comprises six
main attributes:
Classification of Software
The software can be classified based on various criteria, including:
read://https_www.geeksforgeeks.org/?url=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.geeksforgeeks.org%2Fsoftware-engineering-classification-software%2F%3Fref%3… 1/5
5/25/24, 7:31 AM Classification of Software – Software Engineering
e so twa e ca be c ass ed based o va ous c te a, c ud g:
1. Purpose: Software can be classified as system software (e.g., operating systems, device
drivers) or application software (e.g., word processors, games).
2. Platform: Software can be classified as native software (designed for a specific operating
system) or cross-platform software (designed to run on multiple operating systems).
3. Deployment: Software can be classified as installed software (installed on the user’s
device) or cloud-based software (hosted on remote servers and accessed via the internet).
4. License: Software can be classified as proprietary software (owned by a single entity) or
open-source software (available for free with the source code accessible to the public).
5. Development Model: Software can be classified as traditional software (developed using a
waterfall model) or agile software (developed using an iterative and adaptive approach).
6. Size: Software can be classified as small-scale software (designed for a single user or small
group) or enterprise software (designed for large organizations).
7. User Interface: Software can be classified as Graphical User Interface (GUI) software or
Command-Line Interface (CLI) software.
These classifications are important for understanding the characteristics and limitations of different
types of software, and for selecting the best software for a particular need.
Types of Software
The software is used extensively in several domains including hospitals, banks, schools, defense,
finance, stock markets, and so on.
Classification of Software
1. Based on Application
2. Based on Copyright
read://https_www.geeksforgeeks.org/?url=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.geeksforgeeks.org%2Fsoftware-engineering-classification-software%2F%3Fref%3… 2/5
5/25/24, 7:31 AM Classification of Software – Software Engineering
1. Based on Application
The software can be classified on the basis of the application. These are to be done on this basis.
1. System Software:
System Software is necessary to manage computer resources and support the execution of application
programs. Software like operating systems, compilers, editors and drivers, etc., come under this
category. A computer cannot function without the presence of these. Operating systems are needed to
link the machine-dependent needs of a program with the capabilities of the machine on which it runs.
Compilers translate programs from high-level language to machine language.
2. Application Software:
Application software is designed to fulfill the user’s requirement by interacting with the user directly.
It could be classified into two major categories:- generic or customized. Generic Software is software
that is open to all and behaves the same for all of its users. Its function is limited and not customized as
per the user’s changing requirements. However, on the other hand, customized software is the software
products designed per the client’s requirement, and are not available for all.
Networking Software provides the required support necessary for computers to interact with each other
and with data storage facilities. Networking software is also used when software is running on a
network of computers (such as the World Wide Web). It includes all network management software,
server software, security and encryption software, and software to develop web-based applications like
HTML, PHP, XML, etc.
4. Embedded Software:
This type of software is embedded into the hardware normally in the Read-Only Memory (ROM) as a
part of a large system and is used to support certain functionality under the control conditions.
Examples are software used in instrumentation and control applications like washing machines,
satellites, microwaves, etc.
5. Reservation Software:
A Reservation system is primarily used to store and retrieve information and perform transactions
related to air travel, car rental, hotels, or other activities. They also provide access to bus and railway
reservations, although these are not always integrated with the main system. These are also used to
relay computerized information for users in the hotel industry, making a reservation and ensuring that
the hotel is not overbooked.
6. Business Software:
This category of software is used to support business applications and is the most widely used category
of software. Examples are software for inventory management, accounts, banking, hospitals, schools,
stock markets, etc.
read://https_www.geeksforgeeks.org/?url=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.geeksforgeeks.org%2Fsoftware-engineering-classification-software%2F%3Fref%3… 3/5
5/25/24, 7:31 AM Classification of Software – Software Engineering
7. Entertainment Software:
Education and Entertainment software provides a powerful tool for educational agencies, especially
those that deal with educating young children. There is a wide range of entertainment software such as
computer games, educational games, translation software, mapping software, etc.
Software like expert systems, decision support systems, pattern recognition software, artificial neural
networks, etc. come under this category. They involve complex problems which are not affected by
complex computations using non-numerical algorithms.
9. Scientific Software:
Scientific and engineering software satisfies the needs of a scientific or engineering user to perform
enterprise-specific tasks. Such software is written for specific applications using principles, techniques,
and formulae particular to that field. Examples are software like MATLAB, AUTOCAD, PSPICE,
ORCAD, etc.
The programs coming under this category perform specific tasks and are different from other software
in terms of size, cost, and complexity. Examples are antivirus software, voice recognition software,
compression programs, etc.
Document Management Software is used to track, manage, and store documents to reduce the
paperwork. Such systems are capable of keeping a record of the various versions created and modified
by different users (history tracking). They commonly provide storage, versioning, metadata, security,
as well as indexing and retrieval capabilities.
2. Based on Copyright
Classification of Software can be done based on copyright. These are stated as follows:
1. Commercial Software:
It represents the majority of software that we purchase from software companies, commercial
computer stores, etc. In this case, when a user buys software, they acquire a license key to use it. Users
are not allowed to make copies of the software. The company owns the copyright of the program.
2. Shareware Software:
Shareware software is also covered under copyright, but the purchasers are allowed to make and
distribute copies with the condition that after testing the software, if the purchaser adopts it for use,
then they must pay for it In both of the above types of software changes to the software are not
read://https_www.geeksforgeeks.org/?url=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.geeksforgeeks.org%2Fsoftware-engineering-classification-software%2F%3Fref%3… 4/5
5/25/24, 7:31 AM Classification of Software – Software Engineering
then they must pay for it. In both of the above types of software, changes to the software are not
allowed.
3. Freeware Software:
In general, according to freeware software licenses, copies of the software can be made both for
archival and distribution purposes, but here, distribution cannot be for making a profit. Derivative
works and modifications to the software are allowed and encouraged. Decompiling of the program
code is also allowed without the explicit permission of the copyright holder.
In the case of public domain software, the original copyright holder explicitly relinquishes all rights to
the software. Hence, software copies can be made both for archival and distribution purposes with no
restrictions on distribution. Modifications to the software and reverse engineering are also allowed.
FAQs
Get 30% additional discount on all GfG Courses. Get your training certificate this summer and skill
up. Avail 30% discount now!
Master Software Testing and Automation in an efficient and time-bound manner by mentors with real-
time industry experience. Join our Software Automation Course and embark on an exciting journey,
mastering the skill set with ease!
What We Offer:
Like Article
Suggest improvement
read://https_www.geeksforgeeks.org/?url=https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fwww.geeksforgeeks.org%2Fsoftware-engineering-classification-software%2F%3Fref%3… 5/5