Академический Документы
Профессиональный Документы
Культура Документы
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
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
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).