EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Quality Software

By Swati TawdeSwati Tawde

Home » Software Development » Software Development Tutorials » Software Engineering Tutorial » Quality Software

Quality Software

Introduction to Quality Software

The software is developed by an engineer or developer, is required by the customer, and is used by various end-users. Thus, each of them has a different perception of the quality that decides whether the software is good or not. Customers may judge by cost. The developer may judge by user satisfaction, maintainability, efficiency, portability, robustness. Users may judge by reliability, usability.

Quality Factors

According to the ISO 9126 standard, there are six quality attributes which are as follows

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

  • Functionality: It is measured by the degree to which the software satisfies stated needs.
  • Reliability: reliability of software is checked by comparing the amount of time the software is up and running.
  • Usability: The usability of any software is measured by the degree to which software is easy to use.
  • Efficiency: The efficiency of the software is measured by the degree to which software makes optimum utilization of the resources.
  • Maintainability: It is measured by the ease with which the software can be modified
  • Portability: It is measured by the ease with which software can be migrated from one environment to the other.

Attributes of Good Quality Software

In 1977, Jim McCall produced McCall’s quality model for the US air force to bridge the gap between users and developers. He tried to map the user view with the developer’s priority. He has categorized the software quality into 3 categories.

  • Product Operations: The quality criteria specified in this category talks about how easy it should be to handle and how efficiently it should use the resources and give bug-free processing and expected outputs.
  • Product Revision: The quality criteria specified in this category say that the software should be easy enough to the teat, maintain, and make any changes if required.
  • Product Transition: The quality criteria specified in this category says that it must be easy to transit the software on any platforms, should be able to share its code with the other languages on the platform, and try to write the code i.e. reusable in future in any other software development.

The attributes of quality software in the above categories are as below:

  • Correctness: It means the required functionality and correct results. Customer satisfaction depends on the degree to which customer requirements and expectations have been met. It should provide all the functionality desired by the customer.
  • Efficiency: It means the efficient use of resources. Software is said to be efficient if it uses all its resources ( memory, storage, processor) inefficient manner. The software design and architecture should be such that it gives you a response in the least processing time, using the resources in the best possible way.
  • Reliability: It means bug-free execution i.e. assured performance, fully verified and validated processes, secured and safe to work when breaking down or power crisis. It should be reliable in all conditions. Reliability is measured in terms of the mean should be in all conditions. Reliability is measured in terms of the means time between failures, mean time to repair the equipment, and mean time to recover.
  • Integrity: Integrity is related to extent of access to the software by unauthorized users that can be controlled.
  • flexibility: The software should be developed so that if the user demands any changes in the system at the coding or testing phase. i.e. in the middle of the software development life cycle, then it should be easy to insert these challenges in the existing modules.
  • Usability: It means that the software must be user-friendly. The software should have hood documentation and user manual which may include the installation and the process of using the software. This makes it easy for the new to learn and operate just says studying the manual.
  • Testability: It should need less effort to test the program so that it performs its intended function. As the complexity of the program increase, the efforts to test the software also increase.
  • Portability: It means the software should have the ability to transfer the software from one environment to another.
  • Reusability: It gives you the concepts of write once and uses many times. For example, writing functions or subprocedures to receive variable parameters. The calling code passes the value to the parameters and the called procedure processes them as needed.
  • Interoperability: The software development should be so that it can interact with other products. For example, the word processor can interpolate charts from Excel or data from databases. It deals with the interface between software products over a communication network.
  • Cost effective: The development of the software within cost and budget depends on efficient design and a high level of project management effort.
  • Maintainability: For all the changes desired by the customer or the user, the developer has to respond fast. And this is possible only if the software design and its architecture are so chosen that changes can be carried out tin the shortest time without affecting the overall integrity of the software. The change could be to correct the mistake, expand its scope.

Recommended Articles

This is a guide to Quality Software. Here we also discuss the introduction and attributes of good quality software along with an explanation. You may also have a look at the following articles to learn more –

  1. Software Development Models
  2. Database Management Software
  3. Software Review
  4. Software Reliability

All in One Software Development Bundle (600+ Courses, 50+ projects)

Popular Course in this category
Sale
Software Testing Training (9 Courses, 2 Projects)9 Online Courses | 2 Hands-on Projects | 60+ Hours | Verifiable Certificate of Completion | Lifetime Access
4.5 (7,919 ratings)
Course Price

View Course

Related Courses
Cyber Security Training (10 Courses, 3 Projects)All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

50+ projects

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
Software Engineering Tutorial
  • Advanced
    • Functional Point Analysis
    • Software Quality Control
    • Quality Assurance Tools
    • Prototype model advantages and disadvantages
    • UML Modelling Tools
    • Tomcat Server
    • Quality Software
    • UI Prototyping
    • Hybrid Model
    • Behavioral Model in Software Engineering
    • Flowchart symbols
    • Critical System
    • Legacy System
    • SOA Architecture
    • Software Quality Attributes
    • Software Maintenance
    • Software Cost Estimation
    • Software Inspection
    • Cohesion in Software Engineering
    • Coupling in Software Engineering
    • Component-based Software Engineering
    • Design Modeling in Software Engineering
    • Iterative Methodology
    • System Flow Diagram
    • Data Flow Architecture
    • SEICMM
    • Function Oriented Design
  • Basic
    • What is Software Engineering?
    • What is SDET
    • What Is SDLC
    • SDLC Methodologies
    • Software Classification
    • Software Design
    • Software Design Principles
    • Software Metrics
    • Utility Software Types
    • UI Design Tools
    • User Interface Design Principles
    • Architectural Design in Software Engineering
    • Software Configuration Management
    • Software Configuration Management Tools
    • What is Risk Management?
    • System Engineering
    • ES6 Features
    • Object oriented programming paradigm
    • CASE Tools
  • Models
    • Prototype Model
    • What is Spiral Model
    • Waterfall?Model
    • Prototyping Tools
    • Incremental Model
    • Iterative Model
    • RAD Model
    • Fish Model
    • What is Scrum Methodology?
    • RUP? Methodology
    • COCOMO Model
    • Big Bang Model
    • System Models
    • People Capability Maturity Model
    • Analysis Modeling
    • User Interface Design
    • Capability Maturity Model Integration
    • What is Agile Development?
    • Agile Process Model
    • Rational Unified Process
  • UML Daigram
    • StarUML
    • Architecture of UML
    • StarUML? Download
    • Types of UML Diagrams
    • UML Activity Diagram
    • UML Component?Diagram
    • UML Deployment Diagram
    • UML Diagram Softwares
    • UML Object?Diagram
    • UML Sequence Diagram
    • UML Use Case Diagram
    • State Diagram
    • Class Diagram
    • UML Dependency
    • UML Interaction Diagrams
    • Data Flow Diagrams
  • Interview Questions
    • Software Engineering Interview Questions
    • SDLC Interview Questions

Related Courses

Software Testing Course

Cyber Security Training

Software Development Course Training

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Live Classes
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2022 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

Let’s Get Started

By signing up, you agree to our Terms of Use and Privacy Policy.

Loading . . .
Quiz
Question:

Answer:

Quiz Result
Total QuestionsCorrect AnswersWrong AnswersPercentage

Explore 1000+ varieties of Mock tests View more

EDUCBA Login

Forgot Password?

By signing up, you agree to our Terms of Use and Privacy Policy.

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you

By signing up, you agree to our Terms of Use and Privacy Policy.

Special Offer - Software Testing Course Learn More