This report mainly focuses on all the steps in developing a product from analysis to the last phase maintenance. It deals with the quality issues between two quality models MDRE and BESPOKE. It also deals how quality varies in different kinds of software systems web systems, real-time systems, operating systems, business solutions. It refers to the quality dimensions and their similarities and differences between goods to services to software. It focuses on seven types of tools used in improving quality of a product and each tool is given and explained with an example. And finally the paper has the description of quality in supply management and also about the flow of activities in developing a software project.
According to the literature quality of a product can be defined as "the quality of a product is its ability to satisfy and preferably exceed the needs and expectations of the customers". Quality is achieved in organizations totally depends on customers satisfaction. The customer must be satisfied by all the product features. When customer approaches developer for a project to be done he gives some basic requirements that the customer feels are must in order to have good product, it may be in terms of allocated budget, time. So a product is said to be of good quality when the resultant product satisfies the customer. The organization must be at least able to have minimum requirements if not all. The quality is irrespective of the model used to improve it, it may be the same for both BESPOKE and MDRE. Here in this paper we have mentioned several tools that improve the quality of a product.
Differences between MRDE and BESPOKE:
There are two models they are Bespoke and MDRE. Bespoke is a model in which there is a single customer and the whole decision making is done by the customer. The main person to decide the quality of a product is the customer. As the customer is the person who gives requirements to the developer or to the organization about "how the product is to be made?", the quality is decided by the customer. The main thing to be kept in mind when designing a product is about the requirements analysis, schedule. If the requirements are good then the end product is said to be perfect, otherwise the end product is proved to be poor. The quality of a product can be determined by the schedule and the documentation,if at all the documentation is not done properly, then there might me small errors which leads to failure of the product. And quality of a product in bespoke totally depends on the satisfaction of the customer, if the customer is well satisfied by the product then the quality of a product is said to be high. Therefore the quality of a product totally depends on customer's satisfaction.
MDRE (Market Driven Requirements Engineering) is a model in which many number of customers are involved. The decision about the quality of a product depends on all the persons involved in market. Once the requirements are acquired by the developer, they plan a proper schedule and budget so that nothing goes wrong in the later stages. In MDRE, it focuses mainly on multiple customers in the market, As the flow of requirements in MDRE is continuous as multiple customers are involved, the quality of the product depends on the feedback which the product gets in the market. The success depends on the time they decide to release the product and also the time to market, this model has a very good advantage of balancing the competition in the market that varies day to day and acts according to customers' needs. The model must be able to understand the changing needs of the customers according to the changing trends and technologies which have enhanced features that help in having a very good product. As there are many products prioritization is to be followed to get a high quality product
Quality in different Software Systems
Quality can be defined differently in different perspectives, according to many authors. Product can be an article or service or both article and service. Here the discussion is how the different software systems differ in their quality.
- Operating system
Present day's computer games are most emerging entertainment activity. The quality of the games not only depends on how the way they designed and the technology used, but also on the users who hang out their heads all the time for playing. It is something like both manufacture-based and user based as Juran said. There are lot of other factors affecting the quality such as the audio, video and graphic performances. Now a day's the gaming requirements are in high level. Does the system configuration (RAM, memory, Graphic card) is really supporting for playing the games? All these are taken into consideration. There are some on line multiplayer games, for this the internet should be speed with high data rate. So these are all the factors that depict the quality in the gaming.Operating system:
Coming to the operating systems the quality is associated with the key factors such as performance, usability, compatibility and last but not the least user feedback. We have lot of operating systems in use such as Microsoft Windows, Mac OS x, LINUX and so on. But all these rely on the above given factors. For example, Microsoft has its running version Windows vista. Now Microsoft launched its new product windows 7, in comparison with vista the new one is faster in booting time and the improve in shutdown speed. Windows 7 comes up with lot of features and it is good in both 32-bit and 64-bit. But out and out the windows XP has lot of users and still in demand because of its quality.Banking:
Banking is purely a service product. The use of technology in banking sector is rapid because the role of technology is vital in present banking. Online transactions, with drawing and depositing the money through machines, offering higher loan rates and lower depositing rates, availability of ATM s, number of branches all these consider under quality. Still many of the banks don't have e-banking. These all elements are the customer and product needs and expectations.
Quality dimensions of Software goods and services
From the literature which we have referred there are several dimensions for software goods and services, the quality of a good can be said as quality of product, the quality of a service can be said as the functionality that the good must provide. A good is said to have quality if its functionality is perfect. This has many dimensions for goods and services separately.
The quality dimensions of goods are:
A good that must be developed should have the above mentioned dimensions. The quality of a product or a good depends on how good these dimensions are met.
As similar to the above mentioned attributes to good, there are several dimensions for services. Some of them can be given as:
As mentioned above every good and services certainly have some similarities and differences, similarities of goods and software include reliability, maintainability, safety, similarities between services and software can be given as reliability, credibility and responsiveness. Differences between services and software are tangible, communication, access. Differences between goods and software are appearance, durability, performance.Similarities between goods and software:
Reliability: Reliability can be similar in both goods and software, but in terms of reliability in goods view, it is concerned about the performance of the product and it rates the occurrence of problem and its level of failure. When we see them in software view, it defines the functionality of software and its degree of reliability in a given amount of time.
Maintainability: This is same in both the cases, maintainability refers to the property of finding errors and correcting those errors and it also provides easy way of finding and correcting that errors. Maintainability can also be said as capability of repairing a defective product or good.
Safety: In both perspectives, it has the same meaning which can be said as the property of protecting the good from failures or a physical damage.Similarities between services and software:
Reliability: Reliability is same in both software and services. Reliability means having clear and secure transmission or exchange of data.
Credibility: both are similar as credibility is a property that defines trust and belief in software. This defines having trust between both vendors and customers.
Responsiveness: In terms of services it means it must readily available to the customers in need, and in software perspective it can be said as the response given and help provided in case of any doubts or queries.
Differences between goods and softwareAppearance:
Appearance can be said as the physical features or physical appearance that particular product have. Goods can be physical as they are also called as "products" and software do not have appearance.
Durability: Software can be said as durable when it is of zero errors, goods are said to be durable if they have no physical damage which damages the quality of the product or good.
Performance: Software is said to be well performed one when it runs with good speed, access and with good efficiency. A good is said have good performance when it satisfies customers needs but the thing to remember is the performance may vary from one good to other.Differences between services and software:
Communication: A service totally depends on the understandability and clarity provided in the communication. In software context communication means the response given to a client by the server asking for output provided input.
Access: If the software provides better usage then it is said to have good access. If a good or product has better communication with the customers.Quality Control Tools
As referred to klefsjo's work, there are seven tools for improving quality, this explains the need of practicing the improvement work by using these tools, and also the tools must be fair enough and these seven tools are totally called as tool box. The tools can be given as the below:
- Data collection
- Pareto charts
- Control charts
- Cause and effect diagram
- Scatter plots
- Data collection:
- Case study: the data collection is done indirectly about the quality of a product, and the tools may be polling among the persons involved in the case study-Mailing.
- Face to face survey: The data collection is done by using face to face meetings with the participants involved in it.
- Expert opinions: The data collection is done by asking the most experienced persons in the industry, and writing down their comments and also their suggestions that would help in improving the quality of a product.
- Cause and Effect diagrams:
- Scatter plots:
- Control charts:
Data collection can be said as the collection of data or information which helps in improving the quality of a product. Even though we use best tools in the improvement of quality, once the data collected is wrong the whole analysis may get disturbed. Hence the collection of data is said to be perfect, and the information must be collected with a proper purpose and cause, and be clear about "what is required?" and "what is the problem?" to be solved.
FOR EXAMPLE: When we am working on a project, then we need to have exact data regarding the number of employees involved in doing a project, and the budget allotted in completion of the project ,tools used to collect the data. There can be three types of tools involved
Histograms represent frequency distribution in the form of graph. As these histograms are used to represent excess amount of data it is divided the measurement axis into partitions called classes, and each class is represented by a rectangle. The graph is made up of two axes; they are X-axis and Y-axis, where X-axis shows the severity of the defects found, Y-axis shows the particular number of defects, sometimes called as frequency of defects as it is named as frequency histogram.
For Example: A company opts histograms in representing its data, it represents the defect rate (high, low, medium) and the Y-axis is represented by the number of defects in the data given, that is the ranging given in terms of frequency.
Pareto charts or Pareto diagrams are another way of representing the defects in a product, and it is a very powerful tool that can help in improving quality. Pareto charts have bars, each bar representing a type of defect or a problem. Pareto charts help in finding out the problems according to their severity and written in an ascending order ranging from high to low. Pareto charts are mainly used as they evaluate the problems in a prioritized way; primarily it examines and solves the problem which is having high risk factor. For Example: I work in an organization and we need to represent data by using a Pareto chart, so we need to first represent the serious defects first then decreasing to defect which has low risk factor. This way helps in improving quality.
Cause effect diagrams are also used to represent larger amounts of data. A cause effect diagram is a diagram which tells how the data is to be collected and how the collected data is presented in a well planned manner. Cause Effect diagrams represents the cause for the problem occurred and also the effect of that cause, as it is drawn in a form of fishbone cause effect diagrams are called as fishbone diagram or "ishiwaka" diagram. For Example: The company has released a car but it failed to make a good market and is down at sales, cause for this down fall in sales is lack of quality, more cost, less mileage capacity and the effect of this cause is less sales of car.
Stratification can be said as a tool that combines the data collected from different sources. When the project consists of many takes then it is done in a step wise manner dividing it into many modules and then immediately after the work gets completed the data is collected by using a tool named stratification. Each and every group of collected information is to be kept separately.
For Example: When we are working in an organization, there are several modules in a project. Each module may use different type of data so the data must be kept separately in order to avoid the mixing up of data from different modules. After completion of the work in all modules then the data collected for each separate module is kept together.
Scatter plots are one type of tool which is used as a exceptional case of stratification. Scatter plots represents the product characteristics and the variation of product characteristics depends on the external variables, as this is a very good in improving quality. The scatter plots are in a serial way where the parameters and their product characteristics are depicted and the depicted variation de to external variables can help in improving and also supervises the process. Scatter plots can be represented in form of a two dimensional graph that shows relationship between two variables.
For Example: If we are working in a company, there are two types of algorithms given but we need to select one in order to complete the task, scatter plots can help us in locating a very good algorithm in terms of amount of time in which the task must be completed.
Control charts are a excellent tool representing the variation in terms of regular time intervals and it also finds a reason for variation which makes a process predictable. Usage of Control charts has two basic reasons, first one is to help in creation of a process and second one is to note the time intervals in which the change occurs and note down the changes according to their time intervals.
For example: A customer gives a organization a task of completing a project, and the project manager allots particular amount of time to complete all the phases, the project manager plans to complete the given task in given amount of time, if the task is not completed then he needs to find out the cause and clear it. Control chart is a tool used in organizations which makes time management possible.Quality in Supply Management when compared to Software Development
Supplying the product is main aspect after production of the product for production industries . This issue deals the purchasing department of the manufacturing company. In Supply processes the Supplying management play major role in supplying product. In supplying process have some quality aspects of the product that have internal customer satisfaction and external customer satisfaction .In internal customer satisfaction means the organization of the every employee satisfy their work view and work process of the organization. External customer stratification means we use the product of the end use, they satisfy their needs. In software we can supply the quality product to the supply management, the third party user can compare with other product it more benefit or not in different perspectives of software those are cost, usability, maintains and reliability of the product. Because the third party will explain the end user clearly and motivate so the third party is more clear understanding the product features of basic needs, expected needs and excitement needs.
In software development the developer is key person for developing the quality product.Quality Movements and Quality Activities
Quality movement as four phases
- Quality inspection
- Quality control
- Quality assurance
- Quality management
Quality inspection: The Quality inspection is one of the phases of quality movement, quality inspection is done after production of the product. In this movement the companies establish checked and defective units. These units are done the scrapped (trashed and disputed) and reworked of the product. The main goal of this phase is deliver the quality product for the end user. In software quality activate the inspection is doing at designing of the software we can inspect the design of the software before development phase we can rectify the defects, then we can release the quality product finally we can produce the customer needs.
Quality control: The Quality control is one of the phases of quality movement, quality control is controlling the production process of the product. In this phase we would check the produced product is error free or without defects, the products meet the customer requirements or target requirements (it meet the required features of the product). In software point of view quality control as done during the development of the product by using some tools like control charts, histograms, check sheets, and graphs we can improve the product software quality.
Quality assurance: The Quality assurance is one of the phases of quality movement, quality assurance is also called quality system, in quality system the production process can be managed, that means how to gathered materials of the product and implementations, divide the responsibilities and identify and avoid future problems. Quality assurance is the overall planning of the production process. In the point of software activities the quality assurance is the implementation of software development in systematic approach it gets a good result and satisfies the customer. In this approach include software process, tools and responsibilities.
Quality management: Quality management is also one of the phases of quality movement, quality management activities involves quality control, quality inspection and quality assurance . It is continuous improvement of the production.
In the development of software, the organizations have quality management standards and producers. By using this standards and procedures to achieve the quality of the software, these standards can be uses the software process, and products.Conclusion:
- Bergman, B and klefsjo, B, Quality from customer needs to customer satisfaction, publisher by student literature, 2003.