Skip to content
Related Articles

Related Articles

Software Engineering | Software Characteristics

View Discussion
Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 14 Jun, 2022

Software is defined as a collection of computer programs, procedures, rules, and data. Software Characteristics are classified into six major components: 


These components are described below: 


  • Functionality: 
    It refers to the degree of performance of the software against its intended purpose. 

    Required functions are: 



  • 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. 

    Required functions are: 



  • 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. 

    Required functions are: 



  • 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. 

    Required functions are: 



  • 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. 

    Required functions are: 



  • Portability: 
    A set of attributes that bears on the ability of software to be transferred from one environment to another, without or minimum changes. 

    Required functions are: 



 Apart from above mention qualities of software, there are various characteristics of software in software engineering:

  • Software is developed or engineered; it is not manufactured in the classical sense:
    • Although some similarities exist between software development and hardware manufacturing, few activities are fundamentally different.
    • In both activities, high quality is achieved through good design, but the manufacturing phase for hardware can introduce quality problems than software.
  • The software doesn’t “wear out.”:
    • Hardware components suffer from the growing effects of many other environmental factors. Stated simply, the hardware begins to wear out.
    • Software is not susceptible to the environmental maladies that cause hardware to wear out.
    • When a hardware component wears out, it is replaced by a spare part.
    • There are no software spare parts.
    • Every software failure indicates an error in design or in the process through which design was translated into machine-executable code. Therefore, the software maintenance tasks that accommodate requests for change involve considerably more complexity than hardware maintenance. However, the implication is clear—the software doesn’t wear out. But it does deteriorate.
  • The software continues to be custom-built:
    • A software part should be planned and carried out with the goal that it tends to be reused in various projects.
    • Current reusable segments encapsulate the two information and the preparation that is applied to the information, empowering the programmer to make new applications from reusable parts.
    • In the hardware world, component reuse is a natural part of the engineering process.
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!