Software Products are nothing but software systems delivered to the customer with the documentation that that describe how to install and use the system. In certain cases, software products may be part of system products where hardware, as well as software, is delivered to a customer. Software products are produced with the help of the software process. The software process is a way in which we produce software.
Types of software products:
Software products fall into two broad categories:
- Generic products:
Generic products are the stand-alone systems that are developed by a production unit and sold on the open market to any customer who is able to buy them.
- Customised Products:
Customised products are the systems that are commissioned by a particular customer. Some contractor develops the software for that customer.
Essential characteristics of Well-Engineered Software Product:
A well-engineered software product should possess the following essential characteristics:
The software should not make wasteful use of system resources such as memory and processor cycles.
It should be possible to evolve the software to meet the changing requirements of customers.
It is the flexibility of the software that ought to not cause any physical or economic injury within the event of system failure. It includes a range of characteristics such as reliability, security and safety.
- In time:
Software should be developed well in time.
- Within Budget:
The software development costs should not overrun and it should be within the budgetary limit.
The software syatem should exhibit the proper functionality, i.e, it should perform all the functions it is supposed to perform.
The software system should have the ability to get adapted to a reasonable extent with the changing requirements.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Software Engineering | Introduction to Software Engineering
- Software Engineering | Requirements Engineering Process
- Software Engineering | Re-engineering
- Software Engineering | Reverse Engineering
- Difference between Software Engineering process and Conventional Engineering Processs
- Difference between Forward Engineering and Reverse Engineering
- Product Metrics in Software Engineering
- Software Engineering | Halstead’s Software Metrics
- Software Engineering | Classification of Software Requirements
- Software Engineering | Classification of Software
- Software Engineering | Software Project Management Complexities
- Software Engineering | Role and Responsibilities of a software Project Manager
- Software Engineering | Seven Principles of software testing
- Software Engineering | Agile Software Development
- Software Engineering | Software Maintenance
- Software Engineering | Jelinski Moranda software reliability model
- Software Engineering | Schick-Wolverton software reliability model
- Software Engineering | Software Business and Development
- Software Engineering | Characteristics of good Software
- Software Engineering | Identifying Software Development Metrics
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.