International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 INTERNATIONAL JOURNAL OF INDUSTRIAL ENGINEERING

Size: px
Start display at page:

Download "International Journal of Industrial Engineering Research and Development (IJIERD), ISSN 0976 INTERNATIONAL JOURNAL OF INDUSTRIAL ENGINEERING"

Transcription

1 INTERNATIONAL JOURNAL OF INDUSTRIAL ENGINEERING RESEARCH AND DEVELOPMENT (IJIERD) ISSN (Print) ISSN (Online) Volume 4, Issue 3, September - December (2013), pp IAEME: Journal Impact Factor (2013): (Calculated by GISI) IJIERD I A E M E APPLICATION OF SQFD MODEL IN SOFTWARE TESTING ENVIRONMENT Dr. R. Dillibabu 1, Sangeetha. A 2, L. Sudha 3 2 Department of Industrial Engineering, Anna University, Chennai , India 1 Department of Industrial Engineering, Anna University, Chennai , India 3 Department of Management studies, Anna University, Chennai , India ABSTRACT In software industry, the concept of quality has become a significant aspect and is expressed and defined in many different ways. Quality assurance, and in particular software testing and verification, are areas that yet have much to offer to the industry. It s aimed towards prevention and if followed will result in the production of quality software. This paper emphasizes the importance of a quality process and also discusses about the ways in which it could be achieved through offline software quality techniques in particular SQFD Model. SQFD is an extremely useful tool for gathering and defining software requirements. It is a way to translate the customer s requirements into the definition and implementation of a project. "It provides a means to plan how though the application of a very organized methodology one that saves time money, and resources. A detailed literature was collected for the SQFD model. The application of these SQFD model for the software development is very much limited. Only few papers were highlighted the application of these model in software industry. The objectives can be achieved by developing the SQFD model for the software development. Three banking projects were taken for the application of the SQFD model. The construction of the SQFD model was compiled for the software development. The requirements were analyzed and validated using the SQFD model. 50

2 1.0 INTRODUCTION In software industry, the concept of quality has become a significant aspect with respect to customer satisfaction. This project mainly focuses on the offline quality assurance of software products and capturing the customer satisfaction. 1.1 Offline Quality Assurances Offline Quality Assurance deals with the measures to select and choose controllable product and process parameters in such a way that the deviation between the product or process output and the standard will be minimized. These techniques include QFD, FMEA, Design of Experiments, Taguchi Methods, etc Software Quality Assurance When we examine an item based on its measurable characteristics, two kinds of quality may be encountered: Quality of design and Quality of conformance. In software development, quality of design encompasses requirements, specifications and the design of the system. Quality of conformance is an issue focused primarily on implementation. Software quality is defined as Conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software. Software quality definition serves to emphasize three important points: Software requirements are the foundation from which quality is measured. Lack of conformance to requirements is lack of quality. Specified standards define a set of development criteria that guide the manner in which software is engineered. If the criteria are not followed, lack of quality will almost surely result. There is a set of implicit requirements that often goes unmentioned. If software conforms to its explicit requirements but fails to meet implicit requirements, software quality is suspect. Software quality assurance is an umbrella activity that is applied throughout the software process. It is considered to be one of the important planning and management concepts in developing and improving the products at any stage of manufacture. It is important to control the defects at any stages of development phases, hence it is necessary to adopt the preventive technique to reduce the errors and improve the quality in all the phases. The important techniques used to reduce the defects is Software Quality Function Deployment (SQFD) Quality Function Deployment (QFD) Quality function deployment (QFD) is a process used to determine product development characteristics that combine technical requirements with customer preferences. Using an integrated matrix known as the house of quality, QFD considers the different influences bearing on the design to promote concurrent engineering, resulting in increased product acceptance. The basic QFD methodology can also be utilized with common software quality considerations to create a hybrid software requirements elicitation model. This is 51

3 consistent with Design for Six Sigma practices and can be applied in a high-reliability context compliant with ISO 9001, capability maturity model and other software industry standards. QFD is the process used in product design to identify the priorities for customer needs and expectations and to transfer these priorities into the technical design of the product. The benefits of such an approach include such deliverables as increased coverage of explicit and implicit requirements; improved acceptance of product; establishment of priority product characteristics to support design, development, and testing; and increased efficiency of product development. QFD uses the house of quality as a visual model. The house of quality is a matrix that aligns the customer needs (business priorities), the design features (technical priorities) and the customer references. The factor of these inputs is represented in the benchmarked target values. From these target values, the product designers can establish objective metrics to indicate acceptance and fulfillment.' Strengths, Benefits, Usage, Limitations, Disadvantages And Assumptions Of Quality Function Deployment A. Strengths of Quality Function Deployment The following are the strengths of quality function deployment QFD seeks out both "spoken" and "unspoken" customer requirements and maximizes "positive" quality (such as ease of use, fun, luxury) that creates value. Instead of conventional design processes that focus more on engineering capabilities and less on customer needs, QFD focuses all product development activities on customer needs. QFD makes invisible requirements and strategic advantages visible. This allows a company to prioritize and deliver on them. Reduced time to market. Reduction in design changes. Decreased design and manufacturing costs. Improved quality. Increased customer satisfaction. B. Usage of Quality Function Deployment The usage of quality function deployment are listed below To prioritize customer demands and customer needs, spoken and unspoken Translating these needs into actions and designs such as technical characteristics and specifications To build and deliver a quality product or service, by focusing various business functions toward achieving a common goal of customer satisfaction QFD has been applied in many industries: aerospace, manufacturing, software, communication, IT, chemical and pharmaceutical, transportation, defense, government, R&D, food and service industry. C. Limitations and Disadvantages of quality function deployment The limitations and disadvantages of quality function deployment are mentioned below. As with other Japanese management techniques, some problems can occur when we apply QFD within the western business environment and culture. 52

4 Customer perceptions are found by market surveys. If the survey is performed in a poor way, then the whole analysis may result in doing harm to the firm. The needs and wants of customers can change quickly. A comprehensive system and methodical thinking can make adapting to changed market needs more complex. D. Assumptions of quality function deployment The following are the quality function deployment assumptions. The market survey results are accurate. Customer needs can be documented and captured, and they remain stable during the whole process Four Important Points to Understand Before Implementation of Quality Function Deployment No matter how well the design team thinks it understands the problem, it should employ the QFD method for all design areas. In the process the team will learn what it doesn t know about the problem. The customer s requirements must be translated into measurable design targets. You can t design a car door that is easy to open when you don t know the meaning of the word easy. The QFD method can be applied to the entire problem and/or any sub-problem. It is important to worry about what needs to be designed and, only after this is fully understood, to worry about how the design will look and work Software Quality Function Deployment (SQFD) SQFD transfers QFD technology from its manufacturing environment to the software development environment. SQFD is aimed at improving the quality of software development process by using QFD requirement refinement techniques. SQFD improves user involvement, project development, and management support and shortens System Development Life Cycle (SDLC), supports team involvement; structures communication processes, provides a preventive tool for improving quality and avoids loss of information. SQFD process is divided into six main areas are: Determine stakeholder types and characteristics. Evaluate stakeholder inputs. Define business needs. Assigning business needs to stakeholder types. Align requirements to needs. Managing value. SQFD yields better results than traditional approach in: Communicating with technical personnel, users and managers Meeting user requirements Developing relatively error free systems Creating consistent and complete documentation The House of Quality The first phase in the implementation of the Quality Function Deployment process involves putting together a "House of Quality" (Hauser and Clausing, 1988) such as the one 53

5 shown below, which is for the development of a climbing harness (fig. from Lowe & Ridgway, 2001). To Build House of Quality Identify customer wants Identify how the good/service will satisfy customer wants. Relate the customer s wants to the product s hows. Develop importance ratings Evaluate competing ideas and concepts Fig. 1: House of Quality Steps To Build The House Of Quality (Becker And Associates, 2000) Step 1: Customer Requirements - "Voice of the Customer" The first step in a QFD project is to determine what market segments will be analyzed during the process and to identify who the customers are. The team then gathers information from customers on the requirements they have for the product or service. In order to organize and evaluate this data, the team uses simple quality tools like Affinity Diagrams or Tree Diagrams. Step 2: Regulatory Requirements Not all product or service requirements are known to the customer, so the team must document requirements that are dictated by management or regulatory standards that the product must adhere to. Step 3: Customer Importance Ratings On a scale from 1-5, customers then rate the importance of each requirement. This number will be used later in the relationship matrix. Step 4: Customer Rating of the Competition Understanding how customers rate the competition can be a tremendous competitive advantage. In this step of the QFD process, it is also a good idea to ask customers how your product or service rates in relation to the competition. There is remodeling that can take place in this part of the House of Quality. Additional rooms that identify sales opportunities, goals for continuous improvement, customer complaints, etc., can be added. 54

6 Step 5: Technical Descriptors - "Voice of the Engineer" The technical descriptors are attributes about the product or service that can be measured and benchmarked against the competition. Technical descriptors may exist that your organization is already using to determine product specification, however new measurements can be created to ensure that your product is meeting customer needs. Step 6: Direction of Improvement As the team defines the technical descriptors, a determination must be made as to the direction of movement for each descriptor. Step 7: Relationship Matrix The relationship matrix is where the team determines the relationship between customer needs and the company's ability to meet those needs. The team asks the question, "what is the strength of the relationship between the technical descriptors and the customer s needs?" Relationships can either be weak, moderate, or strong or carry a numeric value of 1, 3 or 9. Step 8: Organizational Difficulty Rate the design attributes in terms of organizational difficulty. It is very possible that some attributes are in direct conflict. Increasing the number of sizes may be in conflict with the companies stock holding policies, for example. Step 9: Target Values for Technical Descriptors At this stage in the process, the QFD team begins to establish target values for each technical descriptor. Target values represent "how much" for the technical descriptors, and can then act as a base-line to compare against. Step 10: Correlation Matrix This room in the matrix is where the term House of Quality comes from because it makes the matrix look like a house with a roof. The correlation matrix is probably the least used room in the House of Quality; however, this room is a big help to the design engineers in the next phase of a comprehensive QFD project. Team members must examine how each of the technical descriptors impacts each other. The team should document strong negative relationships between technical descriptors and work to eliminate physical contradictions. Step 11: Absolute Importance Finally, the team calculates the absolute importance for each technical descriptor. This numerical calculation is the product of the cell value and the customer importance rating. Numbers are then added up in their respective columns to determine the importance for each technical descriptor. Now you know which technical aspects of your product matters the most to your customer! 2.0 LITERATURE REVIEW The detailed literatures were collected for the SQFD Model. Based on the literatures studied or reviewed, the problem statement has been identified. Rahman, A. (1992) points out that QFD is a quality-oriented process that can play an important role in the market-driven, total quality control environment in increasing the 55

7 reliability of software. He also examines how Quality Function Deployment (QFD) could be used to achieve this objective. It prioritizes product and manufacturing-process characteristics and highlights areas which would require further analysis. Ma Jianhong ; Yang Jing ; Luo Tao ( 2009) proposed that we bring a new method-- QTQ (Quality Tree of QFD) to solve the problem, that software quality cannot effectively ensure. QTQ is based on UML profile; it integrates ideal solution and QFD. Its main point is: According to the concept of ideal solution, establish DTRQ (Distribution Tree of Requirement Quality), when analyze requirements of customer. Use DTRQ to guide design. On the basis of design, build DTDQ (Distribution Tree of Design Quality) and assess if CRDP (Change Rates of Design Plan) is acceptable, and then coding according to qualified DTDQ. In testing procedure, software quality is evaluated by the qualified DTDQ. Tuyet-Lan Tran; Sherif, J.S. (1995) has stated that this paper proposes Quality Function Deployment (QFD) as an effective tool for the capture and refinement of requirements. When applied to a project, QFD will enable its success. More specifically, QFD will improve product quality by focusing on customer requirements up-front and throughout the development cycle and also reduce costs of projects, by enabling concurrent engineering and by reducing costs associated with late-in-the life-cycle rework. There is a gap in the application of QFD model to software development process. These applications will ensure that the software development process will give 100% deliverables PROBLEM STATEMENT In order to meet the software quality assurance in all phases in software development process and customer satisfaction, it is better to use SQA model like SQFD model in software testing environment. The objective of the project is To apply SQFD model in software testing environment. To validate the implementation of SQFD model. 4.0 IMPLEMENTATION OF SOFTWARE QFD MODEL 4.1 The Voice of the Customer Analysis The entire Soft QFD process has been carried out by a development team for each project. There are several needs for customers and they can be categorized like primary, secondary and tertiary. Through this SQFD model, the requirement importance can be known. Based on the importance, the usage of the functionality can be understood and development of the functionality alone will bring the effort and cost savings. 4.2 Building Software House of Quality a. WHATs In software HOQ, WHATs represent the customer requirements. The requirements can be prioritized by rating it in a scale of 1 to denotes the low importance of priority whereas 10 denote the high importance of priority. 56

8 b. HOWs The technical requirements are dealt with that HOW the customer requirements are done. It can be analyzed through the brain storming session between developers. These are qualitative and it should be converted to quantitative. c. Target Values In these five banking projects, the target values regarding software are same. These are converted from technical requirements to meet customer needs. d. Relationship Matrix The relationship matrix should be done between the customer and technical requirements. It can be categorized under strong (9), medium (3) and weak (1). e. Correlation Roof Matrix The correlation roof matrix has been drawn based on the correlations between the technical requirements. This can be categorized like strong positive, positive, negative and strong negative. f. Organizational Difficulty The level of satisfying the technical requirements in the organization denotes the organizational difficulty in a scale of 1 to implies the low level and 10 implies the high level in satisfying the technical requirement. G. Absolute and Relative Importance The absolute importance gives the column weights to identify the technical requirements for quality improvement with respect to customer importance. It can be calculated as Sum of the requirement s customer importance and the technical requirement importance of particular column. The relative importance is represented as histogram in the house of quality for the absolute importance. 4.3 Data Collection for Requirement Phase The data have been collected for requirement phase to capture the house of quality which is the conversion of the customer voice. The requirements for two projects have been listed below and the software house of quality for application 1 and application Software House of Quality for Application 1 A leading software company deals with credit card database management and its development team will provide the import process for the PID level disclosures and SOC level disclosures. It will also provide features to export the existing disclosures and promote them to UAT and production with the upcoming weekend release. The requirements from banking customers are listed below Import PID level bullet ID for English records in database. Import PID level bullet ID for Spanish records in database. View PID level bullet ID in database. Save PID level bullet ID in database. 57

9 Promote PID level bullet ID in database. Import SOC level bullet ID for English records in database. Import SOC level bullet ID for Spanish records in database. View SOC level bullet ID in database. Save SOC level bullet ID in database. Promote SOC level bullet ID in database. The house of quality has been constructed for the above requirements and the customer importance for the corresponding requirements is also captured in the software house of quality. Fig. 2: Software House of Quality for Application Software House of Quality for Application 2 A leading software company deals with credit card database management and its development team will provide the features to import the bullets in the form of an excel template( with the bullets text, sequence and the base package details) and export them if needed. The requirements from banking customers are listed below Import the bullet texts for English Import the bullet texts for Spanish Copy the data from base package and create new bullet texts. Delete the existing bullet texts Export the records to excel spreadsheet The house of quality has been constructed for the above requirements and the customer importance for the corresponding requirements is also captured in the software house of quality. 58

10 Fig. 3: Software House of Quality for Application Software House of Quality for Application 3 A leading software company deals with credit card database management and its development team will provide the features to allow Business to search, view, create and update SPA Data for SCP Partners. This self service shall allow the business to quickly and easily add/update new SPA Data for SCP Partners, complete validation and load changes to production. The requirements from banking customers are listed below Create Task and Work Items Modify Task and Work Items Delete Task and Work Items Submit Task Reassign Task View Task and Work Items Export the Inventory Reports in excel/ PDF Export the Audit Reports in excel/ PDF Search and View Tasks The house of quality has been constructed for the above requirements and the customer importance for the corresponding requirements is also captured in the software house of quality. 59

11 Fig. 4: Software House of Quality for Application3 4.4 RESULTS The study is aimed at illustrating the application of QFD to software development process. In this study, we have proposed the software quality model and implement it at the requirement phase of the software development process. It can be concluded that this method is feasible for defining, measuring and improving software development process by reducing the efforts and increasing the reusability. 5.0 CONCLUSIONS It can be concluded that SQFD model is feasible for defining, measuring and improving software development process. Based on the customer importance, it can be validated and the requirements can be finalized. ACKNOWLEDGEMENT I am extremely thankful to my project guide Dr. R.Dillibabu, Department of Industrial Engineering for imitating keen interest and giving valuable guidance at every stage of this project. I would also like to thank my parents, friends and well-wishers who encourage me to complete this project successfully. REFERENCES [1] Ma Jianhong, Yang Jing, Luo Tao, Software Engineering, WCSE '09. WRI World Congress on (Volume:4), [2] Rahman, A., Automated Testing and Software Solutions, IEE Colloquium, [3] Tuyet-Lan Tran, Sherif, J.S., Software Engineering Standards Symposium, (ISESS'95) 'Experience and Practice', Proceedings., Second IEEE International, [4] Dillibabu.R, Krishnaiah.K and Baskaran.R, Development and Application of SQFD Model for an Innovative Embedded Software Product A Case Study, International Journal of Industrial Engineering Research and Development (IJIERD), Volume 2, Issue 1, 2011, pp , ISSN Online: , ISSN Print: