You are on page 1of 12

Software Characteristics

Characteristics of good Software


• Software is defined as a collection of computer programs,
procedures, rules, and data.
• Software is treated as a good software by the means of different
factors.
• A software product is concluded as a good software by what it offers
and how well it can be used.
• Many factors contribute to the quality of the software
Characteristics of good Software
• The factors that decide the software properties are divided into three
main categories:
Operational Transitional Maintenance
• Budget • Portability • Modularity
• Functionality • Interoperability • Maintainability
• Efficiency • Reusability • Flexibility
• Usability • Adaptability • Scalability
• Correctness
• Dependability
• Security
• Safety
Operational Characteristics
• In operational categories, the
factors that decide the software
performance in operations.
• Functionality
• Reliability
• Efficiency/Usability
• Maintainability
• Portability
• Budget
• Security/Safety
Operational Characteristics
• Functionality:
It refers to the degree of
performance of the software
against its intended purpose.
• Reliability:
A set of attributes that bears
on the capability of software
to maintain its level of
performance under the given
condition for a stated period
of time.
Operational Characteristics
• Efficiency:
It refers to the ability of the
software to use system resources in
the most effective and efficient
manner. The software should make
effective use of storage space and
executive command as per desired
timing requirements.
• Usability:
It refers to the extent to which the
software can be used with ease. the
amount of effort or time required to
learn how to use the software.
Operational Characteristics
• Maintainability:
It refers to the ease with which
the modifications can be made in
a software system to extend its
functionality, improve its
performance, or correct errors.
• Portability:
A set of attributes that bears on
the ability of software to be
transferred from one
environment to another, without
or minimum changes.
Transitional
• When the software is moved from one platform to another, the
factors deciding the software quality:

• Portability
• Interoperability
• Reusability
• Adaptability
Transitional Characteristics
• Portability:
is a measure of how easily an application can be transferred from one
computer environment to another.
• A computer software application is considered portable to a new
environment if the effort required to adapt it to the new environment is
within reasonable limits. The meaning of the abstract term 'reasonable'
depends upon the nature of the application and is often difficult to
express in quantifiable units.
• Interoperability:
Interoperability (pronounced IHN- tuhr -AHP- uhr -uh-BIHL- ih -tee) is
the ability of different systems, devices, applications or products to
connect and communicate in a coordinated way, without effort from
the end user. Functions of interoperable components include data
access, data transmission and cross-organizational collaboration
regardless of its developer or origin
Transitional Characteristics
• Reusability:
Reusability is the use of existing assets in some form within the
software product development process; these assets are products
and by-products of the software development life cycle and
include code, software components, test suites, designs and
documentation.
• Adaptability:
Software adaptability may be defined as the ability of a software
system to independently monitor its behaviour and eventually
modify the same according to changes in the operational
environment or in the system itself
Maintenance
• Deals with all factors that describes about how well a software has
the capabilities to maintain itself in the ever changing environment:

• Modularity
• Maintainability
• Flexibility
• Scalability
Maintenance Characteristics
• Modularity:
Modularity refers to the extent to which a software/Web application may
be divided into smaller modules.
• Maintainability:
The ease with which a software system or component can be modified to
correct faults, improve performance or other attributes, or adapt to a
changed environment.
• Flexibility:
The ease with which the system can respond to uncertainty in a manner
to sustain.
• Scalability:
Scalability is the measure of a system's ability to increase in performance
in response to changes in application and system processing demands.

You might also like