Вы находитесь на странице: 1из 7

Discovery

The International Daily journal


ANALYSIS

ISSN 2278 – 5469 EISSN 2278 – 5450


© 2015 Discovery Publication. All Rights Reserved

State of Quality Engineering Practices: Pakistan’s


Perspective
Publication History
Received: 25 August 2015
Accepted: 27 September 2015
Published: 19 October 2015

Citation
Muhammad Naeem Ahemd Khan, Mirza Aamir Mehmood, Qamar Nazir. State of Quality Engineering Practices: Pakistan’s Perspective.
Discovery, 2015, 44(204), 147-153

147
Page
State of Quality Engineering Practices: Pakistan’s Perspective

Muhammad Naeem Ahemd Khan Mirza Aamir Mehmood1,2 Qamar Nazir


1 2
Department of Computer Science Department of Computer Science PITB
SZABIST BUITEMS Government of Punjab
Islamabad, Pakistan Quetta, Pakistan Lahore, Pakistan

Abstract— This study analyzes state of the quality modernization of business processes, revolutions in network
engineering practices being exercised in the software industry of infrastructure and hardware, sophistication in development
Pakistan. Statistics have been collected and analyzed to access and execution environment etc.; therefore, most of the efforts
four important aspects of quality engineering including quality to enhance software quality focus on the technical aspects of
policy and review mechanism, quality assurance activities and the software development process.
practice, quality standards and models, and quality management
systems. For this purpose we prepared an elaborated During the last four decades, several quality methods and
questionnaire pertaining to various aspects of quality standards have been developed to steer software developing
management and surveyed more than 30 software houses and organizations by defining and institutionalizing their processes
software development organization in the twin cities of in an effective manner. These quality models are continually
Islamabad and Rawalpindi. The results of survey are reported evolving which has eventually become a complicated exercise
herein. for software industries. In addition to this, many companies
develop indigenous standards and subsequently improve
Keywords— Quality Assurance, Software Testing, Software quality of their systems when their own software development
Quality Models, Software Quality Engineering, Quality processes get mature. The current state of the affairs of
Management System. software system and software development is categorized by
the increasing complexity of the end product and growing
I. INTRODUCTION demands on the cost and time effectiveness as well as overall
Software usage is growing constantly throughout the world quality of the development process [5].
and nowadays it is being used in almost every sphere of Pakistan's software industry has witnessed steady growth
human activity. In this prospective, software quality becomes during the last few years. According to Pakistan Software
an important issue not only for software designers and Export Board (PSEB) statistics, 144 out of 1500 companies in
developers but also for customers, users and communities as a Pakistan achieved international process or product quality
whole. The quality of software systems is a complex and certifications [6]. Out of these 144 companies, 110 are ISO
multi-faceted concept which is difficult to define and measure. 9001 certified, 23 are CMMI certified and 11 are ISO 27001
It cannot be reflected by a one single metric [1], because it certified. These statistics are quite alarming and show that
comprises various aspects like functionality, reliability, there is strong need to improve the quality of services and
usability, efficiency, maintainability and portability. It pertains products as well as establishing sound IT-infrastructure in
to the intrinsic features and characteristics as well as customer software industry of Pakistan.
satisfaction which make it hard to precisely define the quality.
Intrinsic quality refers to the quality of the software itself and This study focuses on evaluating software quality models
customer satisfaction refers to user perception of quality [2]. being practiced and explores different methodologies and
Designing and following quality models is a common practices currently followed by IT organizations in Pakistan.
approach to cope with this problem in a structured manner. A The study also analyzes the following three main aspects of
quality model is defined as an artifact with the objectives to quality modeling:
describe, assess and predict quality [3]. Quality can be  The employment of specific quality models by the
provided implicitly through certain tools or can be provided practitioners,
explicitly in the forms of international standards, general
guidelines or specific checklists. Since quality models have  The importance of quality attributes and techniques with
been subject to extensive research for many years, therefore, a respect to their industrial usage,
number of heterogeneous quality models have emerged e.g.,  The potentials for further improvements of quality models.
domain specific models or test models. Some quality models This study highlights that the key processes that contribute
express software quality as a whole; others describe certain towards manufacturing high quality software products under
quality aspects. certain quality models need to be analyzed and defined
The advancement made with these models and standards appropriately. Further, the study puts emphasis on need for
148

tend to fit for certain approaches that may be optimum for understanding how quality processes and models are applied
some projects, but is often ill-suited for others [4]. Since and what methods are required to achieve the project goals.
software industry is experiencing rapid changes due to This research also explores the problems and challenges
Page

advancements in technology, ever-growing user requirements, arising from the current situation in executing these quality
models and standards.
A. Pakistan Software Industry – An Overview well as tools were being used in Australia’s software industry.
Pakistan's software industry from its nascent beginnings in The major barriers found for testing were time and cost. The
the late 1980s has been rising steadily since, and is now ready results showed that only 55.3% of the organizations in the
for a take-off based on its initial success. Pakistan offers survey agreed that metrics helped them to improve software
various competitive advantages over other outsourcing quality. Furthermore, the study discovered that manual static
destinations, such as high quality software development, easy analysis i.e., formal and informal reviews were more
establishment of business and state-of-the-art commonly being used than the automated and tool-based
telecommunication and IT infrastructure. analyses [11].
The Government of Pakistan has been proactively To ascertain their quality requirements practices product
developing IT sector since the last few years. Establishment of managers from Swedish companies were interviewed. The
IT Parks with low rent, foreign ownership of equity invested study found that usability and performance requirements were
in IT. Government has offered a tax exemption on the income being considered as the most important. The study also
from export of computer software and related services till identified that a major challenge with quality requirements
2016 as well as has allowed 100% ownership of equity and was to make it well specified and quantified so that to make it
100% repatriation of profits for foreign investors. Pakistan's testable [12]. Survey in Canada showed that inadequate
IT industry's global share is estimated at US$2.8 billion and is testing; training and lack of formal criteria for testing increase
offering numerous business opportunities both in public and the risk of releasing defects into production and release
private sectors [7]. Table I highlights key facts of software versions of software products. The ability to detect tendencies
industry in Pakistan. that lead to reduced quality and to identify the root causes of
reductions in product quality suffer from the lack of
TABLE I. KEY FACTS AND FIGURES OF PAKISTAN SOFTWARE exhaustive testing of the product. There is a need for
INDUSTRY improvements for quality assurance. Organizations that offer
Skilled workforce 110000 training on quality assurance and testing procedure to their
Software companies 1500 developers improve their ability to validate quality and
Software Technology Parks (STPs) 9 correspondingly improve the likelihood of pinpointing and
STP Area 700,000 Sq feet resolving process and product defects. Cost and lack of
Standards and Certification expertise are two major barriers for adaptation of testing
ISO 9001 110
methodology and tools [13].
CMMI 23
ISO 27001 11 Research in Brazil conducted with objective to identify
respondents’ perception about the relationship between IT
II. RELATED WORK Governance models and quality instruments adoption. The
Nowadays, many organizations are investing huge amount results obtained through the survey provided an overview of
of money to improve the quality of their software and software the impact of IT-related problems in the organizations, the
development process; and are using different quality assurance degree of knowledge and importance as well as adoption of
processes, methodologies and practices to improve the quality different quality instruments[14]. A survey on quality models
of their software. Code reviews, walkthroughs, standards and being practiced in Germany focused on several domains of
procedures are consistently checked through performance software development such as standard software being used,
monitoring, product evaluation, inspection, validation, custom development methodologies, embedded systems and
verification, audits and allied testing activities. company size [3]. Exploratory survey on software practices of
software firms in five ASEAN countries show that software
Davis et al. published the results of a survey on the
industry was falling short in the four areas: use of automated
practices of software quality. Most of the survey questions
estimation tools (Software Project Planning Practice), use of
were related to methodical topics rather than the use of models
requirements traceability matrices (Software Project Tracking
for product quality. Results of the study showed that 41% of
and Oversight practice), use of quantitative quality metrics
the respondents claimed not to have any formal quality
(Software Quality Assurance practice), and the use of change
assurance method at all, while the majority used their own
control boards (Software Configuration Management
technique/method for quality assurance rather than an external
practice). Organizations that were strong in software quality
one [8]. T. Hall analyzed the quality-related activities,
assurance practice had in common the best practices of quality
particularly developers’ and managers’ attitudes towards
orientation, independent testing teams and Software
quality. Results of the study showed that 99% of developers
Engineering Process Group (SEPGs), peer reviews, and
used programming standards, 74% employed code reviews or
quality management systems [15].
inspections and 62% of the respondents collected software
metrics data[9]. Ho-Won et al. published a survey on ISO Agility supports quality objectives and improves quality of
9126 with an aim to investigate whether the categorization of the software development process, hence the overall product
quality attributes was correct and reliable. This resulted in an quality. Agile method can be used to handle unpredictable
improved categorization to provide guidance for revising the requirements. Agile is a method of simple planning, end-to-
149

standard. This new categorization includes separating security end deliverables with short iterations and earlier releases.
from functionality, which is the current proposal of the new Different activities performed in every iteration, improve the
standard called ISO 25010 [10]. A survey in Australia aimed overall quality of the software and reduce the cost of quality.
Page

to determine which testing methodologies and techniques as One of the main advantages of agile method is that the team
can have the frequent customer feedback. In Agile, on-site A. Research Questions
customer, pair programming and continuous integration
activities particularly improve the development process, thus, The center of focus of the research is to find answers to the
improving the overall quality of the software. Extreme following questions:
Programming (XP) is one of the software methodologies 1.Quality objectives and policy
within the agile paradigm and it works on many areas of
software development[16]. Through extreme programming, 2.Quality assurance activities and practices Quality
software quality can be improved to a greater extent. Extreme attributes and their prioritization
programming not only improves the development processes 3. Quality and process improvement models
but also enhances the overall quality of software as it is based 4. Quality management systems
on practices which need to be followed in entire software
The objective of this research is to identify flaws and
development lifecycle [17].
suggest potentials improvements for quality management
There is a prevalent erroneous assumption that quality system currently being used in Pakistan's software industries.
means goodness or shininess. The word “quality” is often used
to signify the relative worth of something which means
IV. RESULTS
different things to different persons. Hence, quality must be
defined as ‘conformance to requirements’. Consequently, the In this section detail analysis of results derived from
non-conformance found in the software pertains to the absence survey are presented.
of quality, and in such situation quality problems become non-
conformance problems, and hence quality becomes undefined A. Organizations Quality Policy
[18]. Software quality is about conforms of functional and non-
IEEE 729-1983 defines software quality as “the totality of functional requirements. Achieving structural quality which
features and characteristics of a product or service that bears refers incorporating non-functional requirements is far more
on its ability to satisfy given needs” [19]. According to difficult than meeting functional quality. To develop high
ISO/IEC 9126, software quality has six attributes: quality software, organizations need to define quality
functionality, reliability, usability, efficiency, portability, and objectives. For this purpose, organizations are required to
maintainability. Software quality appears to be particularly develop software quality metrics, define defect target levels,
problematic when compared to other arenas. The key reasons and identify quality attributes and factors that affect software
for this are that software has no physical existence. Clients do quality. It is quite alarming that only 66% organizations
not know exactly what they need, clients periodically need surveyed in this study have the defined quality objectives (Fig.
changes, advancements in hardware and software are rapid 2).
and customers have high level of expectations [20].
III. RESEARCH METHODOLOGY
This study aims to explore the state of affairs of the quality
models, standards and best practices being used in the
software industry of Pakistan. Literature review was used to
obtain background knowledge about this research area. It
formed the basis for formulating questionnaire to conduct Fig. 2. Statistics (in %age) showing the state of organizations quality policy
survey from software companies. Sample size consisted of 50
software houses of various size situated in the cities of The field of computing is much dynamic as with every
Islamabad and Rawalpindi. passing day new tools and techniques are developed. On the
This survey gave us a hands-on knowledge about the other hand, the new tools and techniques bring about new
challenges being faced by the software companies. A challenges due to the constantly emerging computing
comprehensive analysis was performed to identify the problem paradigms. Quality policy and objectives cannot remain
areas and challenges faced while implementing the best stagnant. They must be reviewed and updated frequently. It
practices of quality engineering. Research questions were has been observed with concern in this study that only 53%
addressed using quantitative research method. The solutions respondent organizations have framework for reviewing and
are discussed along with the challenges in the discussion updating the quality objective and policy while 30%
section as they are connected to them. Figure 1 below gives an Organizations do not have any framework. Rest of the
overview of the research process. organizations (16%) did not answer this question. 150
Page

Fig. 3. Statistics (in %age) depicting quality objective and policy review
Fig. 1. Research Methodology framework
B. Software Quality Assurance activities and practices Studies have shown that defects identified at early stage can
To ensure high quality of software products, it is of be fixed at a lower cost. Therefore quality control activities
immense importance to have a well-defined organizational should be initiated at very early phase of software
structure and dedicated teams for validation and verification of development lifecycle and product quality should be
developed products. As depicted in Fig 4 it is observed with maintained throughout the SDLC. This requires a meticulous
serious concern that only 66% participating organizations have planning and mechanism to ensure execution of developed
a defined Quality Organizational Structure. Those who do not plan. Every phase of SDLC should have a detailed quality
have their own quality assurance teams are 20% whereas 13% control plan which includes all the required methods, process
have not answered this question. and procedures. Among participating organizations, 73% have
quality control plan for design and development phases, 16%
organization do not develop quality plans for these stages and
10% have not answered this question (Fig 7).

Fig. 4. Statistics (in %age) showing the state of dedicated V&V teams

Software quality could simply be defined as meeting the Fig. 7. Statistics (in %age) depicting quality control plan for design and
customer requirements; however, it may not have an agreed development phases
deification. Though quality is always required but it is never
stated explicitly and remains a non-functional requirement. Validation and verification activities finish with delivery
Thus, it is crucial to understand customer perspective about of products to customers. Validation and verification teams
quality followed by analyzing and recording quality acts as client's lawyer and ensures that end product meets all
requirement. This study revealed that 86% organizations functional and non-functional requirements. Validation and
perform quality related analysis, but only 76% organizations verification (V&V) teams should develop methods to control
formally record these requirement (Fig 5). and prevent the delivery of products that do not conform to the
requirements. This study observed that only 60% organization
ensures that no such product should be released, 20%
organizations do not have any mechanism for controlling
delivery of non-conforming products while 13% of
participation organizations have not answered to this question.
Same is depicted in fig 8.

Fig. 5. Statistics (in %age) showing the state of quality related analysis and
documentation

A non-functional requirement specifies criteria for user to


judge system operation. Non-functional requirements are not
explicitly stated but described informally and are often Fig. 8. Statistics (in %age) depicting state of plan to control non-conforming
conflicting. This makes them hard to model, measure and product's delivery
evaluate. To make them measurable, it is important to discuss
and if required negotiate with the customers. It is observed Software quality metrics are used to measure the fitness for
that 70% organizations have developed procedures to deal purpose of the development process, project and product.
with non-functional requirements, 23% organizations do not Organizations use these metrics to measure the health and if
have any formal procedures and 6% did not answer this required take corrective action to fix those areas of
question (Fig 6). development process, project or product causing defects or
violating targeted defect level/threshold (Fig 9). 151

Fig. 6. Statistics (in %age) illustrating state of process and procedures for
Page

NFR Fig. 9. Statistics (in %age) depicting state of software quality metrics
Quality cannot be improved if we cannot measure it. For The following figure depicts the distribution of adopted
this purpose, attributes should be identified and quantified. process improvement model in Pakistan software industry (Fig
Prioritizing these attributes is also important in order to ensure 12).
that neither the most desired attributes are compromised nor
the least priority attributes get more than desired
consideration. Table 2 depicts quality attributes and their
importance for different responding organizations. The study
results indicate that functionality, usability and reliability are
high priority attributes while portability is least important
attribute.
TABLE II. QUALITY ATTRIBUTES AND THEIR PRIORITY

Attribute Priority
1 2 3 4 5 6 07 Fig. 12. Statistics (in %age) Process improvement model
Functionality 16 04 0 01 00 02 00
Reliability 09 05 02 04 01 01 01 Reviews and audits activities ensure that the defined
Usability 03 09 02 03 02 02 01 processes are actively being practiced for all the projects being
Efficiency 02 07 07 03 01 00 02 undertaken within the organization. Any anomaly is identified
Maintainability 03 03 02 05 04 01 03 as minor or major non-conformance and project managers take
Portability 04 03 02 01 03 03 04
2
appropriate corrective actions. It is observed that 70%
No reply
organizations have developed review and audit mechanism,
16% organizations do not conduct audits while 13% have not
answered to this question.
C. Quality Standards and Model
Quality can only be accessed if a minimum threshold and D. Quality Management System
baseline is defined and proper quality standards have been
In complex and large software, defect identification is a
developed or followed. Quality standard could be procedures-
difficult task. Therefore, it is very important to identify defects
specific or resource-specific. It is observed that most of the
as early as possible. Failure to do so results in significant
organizations have defined quality standards either for all
increase in risk of schedule or cost overrun. To prevent this,
resources or all the procedures (Fig 10). .
software companies deploy quality management system.
Quality management system can prevent defects from
occurring, which reduces the risk to a significant level. It is
observed that 63% organization have implemented quality
management system of organization (Fig 13).

Fig. 10. Quality standards

Developing high quality software is a challenging task,


hence main focus of the entire software industry remains on Fig. 13. Quality management system
developing sophisticated processes to produce better quality
products. With changing faces of computing, development Review the effectiveness of Quality Management System
processes need incessant assessment and improvement. It is of Organization at planned intervals enables organizations to
observed that 66% companies have implemented models, take preventive and corrective actions, but only 46%
standards and best practices for quality products, 10% have organizations have review process, 20% does not have any
not implemented any model while 20% have not answered this review process at all while 33% did not answer this questions.
question. Among those who have developed quality standers
and models, only 63% are satisfied with performance of the
quality models 20% think it is under-performing and 16% V. DISCUSSION
have not answered to this question (Fig 11). The nature of software quality is dynamic; with changing
face of technology, it should be revisited and upgraded
according to new challenges. To produce high quality
software, it is importance that a realization about it exists at
152

institutional level and organizations develop a quality policy


in accordance with the organizational priorities and measures
of success. Additionally, a mechanism to timely review and
Page

update quality policy should also be established. Quality


Fig. 11. Quality models and standards implemented policy and objectives cannot remain stagnant; these should be
reviewed and updated frequently. This study identifies that environment and how these contribute to achieve quality in
only 66% of the surveyed organizations meet the defined software products.
quality objectives and only 53% respondent organizations
have framework for reviewing and updating the quality VII. REFERENCES
objective and policy.
[1] N. E. Fenton and S. L. Pfleeger, Software Metrics: A Rigorous and
Quality policy cannot be implemented without a well- Practical Approach, vol. 2. 1997, pp. 38–42.
defined organizational quality structure. It includes dedicated [2] H. Stephen, Kan, Metrics and Models in Software Quality Engineering,
and independent verification and validation teams which 2nd ed. Boston: Addison-Wesley, 2002.
ensure that the developed product meets goals and objectives [3] F. Deissenboeck, E. Juergens, K. Lochmann, and S. Wagner, “Software
quality models: Purposes, usage scenarios and requirements,” in
defined in the quality policy. The study data shows that only Proceedings - International Conference on Software Engineering, 2009,
66% of the participating organizations have a defined quality
[4] “Software Quality Professional: Are Standards the Answer?,” ASQ
organizational structure. Their V&V teams develop methods Publ., vol. 8, no. 2, p. 28, 2006.
to control and prevent the delivery of those products that do [5] K. Barbara and P. Shari Lawrence, “Software Quality: The Elusive
not conform to the requirements. Apparently, only 60% of the Target,” IEEE Softw., vol. 13, no. 1, pp. 12–21, 1996.
organizations ensure that no such product be released that does [6] “PSEB,” Pakistan Software Export Board, 2013. [Online]. Available:
not adhere to the required quality standards. http://www.pseb.org.pk/newindex.html. [Accessed: 13-Jul-2013].
[7] “P@SHA,” Pakistan Software Houses Association for IT & ITeS, 2013.
Quality cannot be achieved unless some ways and means [Online]. Available: http://pasha.org.pk/. [Accessed: 13-Jul-2013].
for measuring the quality are defined. There are many quality [8] C. J. Davis, A. C. Gillies, P. Smith, and J. B. Thompson, “Current
models like ISO 9126 or ISO/IEC 25010:2011 which can be practice in software quality and the impact of certification schemes,”
adopted in this regard. As major source of revenue of Softw. Qual. J., vol. 2, no. 3, pp. 145–161, 1993.
Pakistan’s software industry comes from outsourced projects, [9] T. Hall, “What do developers really think about software quality?,” in
therefore, adopting an internationally recognized quality Software Quality Management III, 1995, vol. 1, pp. 359–368.
model can improve confidence level of the customers on IT [10] J. Ho-Won, K. Seung-Gweon, and C. Chang-shin, “Measuring software
companies and it is observed that only 7% companies have not product quality: a survey of ISO/IEC 9126,” Software, IEEE, vol. 21, no.
adopted international standards. Nevertheless, organizations 5, pp. 88–92, 2004.
may also develop their own quality models to achieve certain [11] S. P. Ng, T. Murnane, K. Reed, D. Grant, and T. Y. Chen, “A
preliminary survey on software testing practices in Australia,” in
level of confidence about quality of the developed products. Software Engineering Conference, 2004. Proceedings. 2004 Australian,
2004, pp. 116–125.
Defect identification and resolution is a costly task.
Quality management system can prevent defects from [12] M. Glinz, P. Heymans, R. Berntsson Svensson, T. Gorschek, and B.
Regnell, “Quality Requirements in Practice: An Interview Study in
occurring, which help overcome the risk of schedule and cost Requirements Engineering for Embedded Systems,” in Requirements
overruns. It has been observed that 63% of the participant Engineering: Foundation for Software Quality, vol. 5512, Springer
organizations have adopted and implemented quality Berlin Heidelberg, 2009, pp. 218–232.
management system. Reviewing the effectiveness of quality [13] V. Garousi and T. Varma, “A replicated survey of software testing
management system at planned intervals enables organizations practices in the Canadian province of Alberta: What has changed from
to take timely preventive and corrective measures. Data should 2004 to 2009?,” J. Syst. Softw., vol. 83, no. 11, pp. 2251–2262, 2010.
be collected to access and improve effectiveness of quality [14] R. S. De Espindola, E. M. Luciano, and J. L. N. Audy, “An overview of
the adoption of IT governance models and software process quality
management system, but the survey results show that only instruments at Brazil - Preliminary results of a survey,” in Proceedings
46% of the organizations have a review process. of the 42nd Annual Hawaii International Conference on System
Sciences, HICSS, 2009.
VI. CONCLUSION [15] A. Imam, S. A. S. Khoja, and I. Shariff, Improving Software Quality: a
Benchmarking Approach, no. 10. CSREA Press, 2007.
The objective of this study is to analyze the state of [16] M. Huo, J. Verner, L. Zhu, and M. A. Babar, “Software quality and agile
software quality engineering practices in Pakistan with focus methods,” in Computer Software and Applications Conference, 2004.
on four aspects including organization’s quality policy; COMPSAC 2004. Proceedings of the 28th Annual International, 2004,
software quality assurance activities and practices; quality pp. 520–525 vol.1.
standards and model; and quality management system. This [17] Y. Dubinsky and O. Hazzan, “Improvement of software quality:
Introducing extreme programming into a project-based course,” in 14th
research contributes towards understanding of software quality International Conference of the Israel Society for Quality, 2002, pp. 8–
assurance best practices in Pakistan and analyzes product 12.
quality models and differentiates them with respect to their [18] P. B. Crosby, Quality is free: The art of making quality certain, vol. ix.
usage as well as possible improvement potentials from the 1979, p. 309.
viewpoint of quality managers and quality model users. This [19] D. Ince, ISO 9001 and software quality assurance. McGraw-Hill, 1994.
study can help software development companies to identify [20] A. C. Gillies, Software Quality: Theory and Management. London:
whether these quality models and standards assert Chapman & Hall, Ltd., 1992.
considerable impact to achieve, enhance and sustain quality of
153

the software systems. Findings of this study can also assist


software houses to increase the level of quality of their
products. It can also help enable organizations to realize the
importance of standards and models in their working
Page

Вам также может понравиться