Uploaded by masif.uosgrw

433840670-SQA-past-papers

advertisement
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Examination: B.S.I.T (2017) (8th Semester)
Q2. Write short answers to the following questions: (5x4=20 Marks)
1- Differentiate “Measure” and “Metric” with example?
ANSWER:
Measures
Measure can be defined as quantitative indication of amount, dimension, capacity, or size of product
and process attributes. A measure is established when a number of errors is (single data point) detected
in a software component.
Product Measures
 Information about properties of a product (complexity, size,).
 Identification of critical product parts.
 Classification and comparison of products
Process Measures
 Information about properties of the software development process (productivity, failure costs,)
 Control of the proper execution of process steps.
Project Measures
 Planning and tracking of a project
The framework for software measurement is based on three principles −
 Classifying the entities to be examined.
 Determining relevant measurement goals.
 Identifying the level of maturity that the organization has reached.
Reasons to Measure
• To characterize in order to
– Gain an understanding of processes, products, resources, and environments
– Establish baselines for comparisons with future assessments
• To evaluate in order to
– Determine status with respect to plans
• To predict in order to
– Gain understanding of relationships among processes and products
– Build models of these relationships
• To improve in order to
– Identify roadblocks, root causes, inefficiencies, and other opportunities for improving
product quality and process performance
Metrics
Metrics can be defined as quantitative measures that allow software engineers to identify the
efficiency and improve the quality of software process, project, and product. Software metric relates
individual software measures to provide a normalized view. Metrics are associated with individual
measure in some manner. That is, metrics are related to detection of errors found per review or the
average number of errors found per unit test.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
1
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Software metrics can be classified into three categories:
Product Metrics
 Product metrics describe the characteristics of the product such as size, complexity, design
features, performance, and quality level.
Process Metrics
 Process metrics can be used to improve software development and maintenance.
Project Metrics.
 Project metric is a measure that allows getting a quantitative value of software features or
specifications.
Some key points related to Metrics:
 Software process and project metrics are quantitative measures
 They are a management tool
 They offer insight into the effectiveness of the software process and the projects that are
conducted using the process as a framework
 Basic quality and productivity data are collected
 These data are analyzed, compared against past averages, and assessed
 The goal is to determine whether quality and productivity improvements have occurred
 The data can also be used to pinpoint problem areas
 Remedies can then be developed and the software process can be improved
2- Name the main heads of a “test plan”?
ANSWER:
A test plan is a document that defines the strategy that will be used to verify that the product or
system is developed according to its specifications and requirements. It describes the scope of
testing, testing techniques to be used, resources required for testing and the schedule of intended
test activities. The scope helps in identifying test items and the features to be tested. A test plan
also contains details of who will perform a given task.
Heads of Test Plan
1. Preparation of test plan
2. Test Scope management
3. Test Strategy selection
4. Testing criteria management
5. Staffing and Responsibilities identification
6. Resource requirements identification
7. Test deliverables identification
8. Setting up testing tasks
9. Activity breakdown and Scheduling
10. Communication management
11. Risk management
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
2
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
3- Write short notes on defects, errors, faults and failures. (2015,2016)
ANSWER:
Defect:
A defect is an error or a bug, in the application which is created. A programmer while designing
and building the software can make mistakes or error. These mistakes or errors mean that there
are flaws in the software. These are called defects. A Software DEFECT / BUG is a condition in a
software product which does not meet a software requirement (as stated in the requirement
specifications) or end-user expectation (which may not be specified but is reasonable). In other
words, a defect is an error in coding or logic that causes a program to malfunction or to produce
incorrect/unexpected results.
Examples:  Missing requirement"  Specification wrong"  Requirement that was infeasible"
 Faulty system design"  Wrong algorithms"  Faulty implementation"
Error:
A human action that produces an incorrect result. The mistakes made by programmer are
known as an ‘Error’. This could happen because of the following reasons:
• Some confusion in understanding the requirement of the software.
• Some miscalculation of the values.
• Misinterpretation of any value.
Fault:
It is a condition that causes a system to fail in performing its required function. It is a state of
software caused by an error. Faults are also known colloquially as defaults or bugs.
Failure:
When a software/product is found unable to perform a required function according to its
specification, this kind of scenarios are referred to as failure. It generally occurs when expected
behavior does not meet the required behavior.
4- Shortly explain the “Alpha Testing” and “Beta Testing”?
ANSWER:
Alpha Testing:
Alpha testing is also called as off-site testing. During this testing process testing team will
verify the application in the presence of the end users within the organizational environment.
Alpha testing performed by Testers who are usually internal employees of the organization.
Alpha Testing performed at developer's site. Reliability and Security Testing are not performed
in-depth Alpha Testing. Alpha testing involves both the white box and black box techniques. Alpha
testing requires lab environment or testing environment. Long execution cycle may be required
for Alpha testing. Critical issues or fixes can be addressed by developers immediately in Alpha
testing. Alpha testing is to ensure the quality of the product before moving to Beta testing.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
3
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Beta Testing:
Beta testing should be done by the end users in their own environment in the presence of
releasing team. Beta testing is performed by Clients or End Users who are not employees of the
organization. Beta testing is performed at client location or end user of the product.
Reliability, Security, Robustness are checked during Beta Testing. Beta Testing typically uses
Black Box Testing. Only few weeks of execution are required for Beta testing. Most of the issues
or feedback is collected from Beta testing will be implemented in future versions of the product.
Beta testing also concentrates on quality of the product, but gathers users input on the product
and ensures that the product is ready for real time users.
Subjective Questions (Marks 30)
Q1: Briefly explain Dromey's Quality Model?
ANSWER:
Dromey’s Quality model (1995):
Dromey’s has built a quality evaluation framework that analyzes the quality of software
components through the measurement of tangible quality properties. Each artifact produced in the
software life-cycle can be associated with a quality evaluation model.
Dromey’s gives the following examples of what he means by software components for each of
the different models:
• Variables, functions, statements, etc. can be considered components of the
Implementation model;
• A requirement can be considered a component of the requirements model;
• A module can be considered a component of the design model;
According to Dromey’s, all these components possess intrinsic properties that can be classified
into four categories:
• Correctness:
Evaluates if some basic principles are violated.
• Internal:
Measure how well a component has been deployed according to its intended use.
• Contextual:
Deals with the external influences by and on the use of a component.
• Descriptive:
Measure the descriptiveness of a component (for example, does it have a meaningful name.)
Dromey’s proposes a product based quality model that recognizes that quality evaluation differs for each
product and that a more dynamic idea for modeling the process is needed to be wide enough to apply for
different systems.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
4
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Dromey’s is focusing on the relationship between the quality attributes and the sub-attributes, as well as
attempting to connect software product properties with software quality attributes. This quality model
presented by R. Geoff Dromey’s is most recent model which is also similar to McCall’s and Boehm’s model.
Dromey’s proposes a product based quality model that recognizes that quality evaluation differs for each
product and that a more dynamic idea for modeling the process is needed to be wide enough to apply for
different systems. Dromey’s focuses on the relationship between the quality attributes and the sub
attributes, as well as attempts to connect software product properties with software quality attributes.
1) Product properties that influence quality.
2) High level quality attributes.
3) Means of linking the product properties with the quality attributes.
Dromey's Quality Model:
• Similar to the McCall’s, Boehm’s and the FURPS (+) quality model,
• The basic idea is: “quality evaluation differs for each product”
Dromey’s quality model:
• Software Quality Assurance (SQA)
Dromey’s quality model:
Dromey's Quality Model is further structured around a 5 step process: 
1) Chose a set of high-level quality attributes necessary for the evaluation.
2) List components/modules in your system.
3) Identify quality-carrying properties for the components / modules (qualities of the component
that have the most impact on the product properties from the list above).
4) Determine how each property effects the quality attributes.
5) Evaluate the model and identify weaknesses.
Figure 1 DQM
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
5
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Q2: Explain “testing principles” in short?
ANSWER:
 Testing shows presence of defects
 Exhaustive testing is impossible
 Early testing
 Defect clustering
 Pesticide paradox
 Testing is context dependent
 Absence of error – fallacy
Principle 1: Testing shows that there are defects
Present in the software self-explanatory point; it states that when a project is tested, it is
checked for possible defects or bugs by creating different software testing strategies.
Principle 2: Testing software exhaustively is impossible
This means that testing software is not possible exhaustively and instead, testers need optimum
time to test an application, which is based on the risk assessment of the same.
Principle 3: Testing software early
It is imperative to start testing software as early as possible. This ensures that the defects can be
captured and fixed within the stipulated time-frame, thereby allowing developers to deliver the
software to the clients on time.
Principle 4: Clustering the defects Defect
Clustering simply state that a small number of modules in an application contains maximum
defects detected.
Principle 5: The Pesticide Paradox
When the same tests are repeated over time and again, then the test cases do not find any new
bugs. This situation gives rise to a new principle known as the Pesticide Paradox. However, this
can be overcome by reviewing and revising the test cases and adding new and different test
cases.
Principle 6: Testing is dependent on context
This means that when you test a mobile application, it will be on different grounds than while
testing a web application. Similarly, testing a Mac application will be different than testing an
Android application and the likes.
Principle 7: Absence of errors – fallacy
This principle merely points out to the fact that finding and fixing defects in a software system is
of no use if the system builds in itself is unusable and is unable to meet the users’ needs and
requirements.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
6
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Figure 2:7 Principles of Testing
Q3: Write a short note on:
A: Review Techniques
ANSWER:
A review is a systematic examination of a document by one or more people with the main
aim of finding and removing errors early in the software development life cycle. Reviews are used to
verify documents such as requirements, system designs, code, test plans and test cases. Reviews are
usually performed manually while static analysis of the tools is performed using tools.
1. Walkthrough:
A walkthrough is conducted by the author of the ‘document under review’ who takes the participants
through the document and his or her thought processes, to achieve a common understanding and to
gather feedback.
 This is especially useful if people from outside the software discipline are present, who
are not used to, or cannot easily understand software development documents.
 The content of the document is explained step by step by the author, to reach
consensus on changes or to gather information.
 A walkthrough is especially useful for higher-level documents, such as requirement
specifications and architectural documents.
The specific goals of a walkthrough are:  To present the document to stakeholders both within and outside the software
discipline, in order to gather information regarding the topic under documentation.
 To explain and evaluate the contents of the document.
 To establish a common understanding of the document.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
7
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814

To examine and discuss the validity of proposed solutions and the possible alternatives.
2. Technical review
A technical review is a discussion meeting that focuses on technical content of a document.
 It is led by a trained moderator, but also can be led by a technical expert.
 Compared to inspections, technical reviews are less formal and there is little or no focus
on defect identification on the basis of referenced documents.
 The experts that are needed to be present for a technical review can be architects, chief
designers and key users.
The specific goals of a technical review are:
 Evaluate the value of technical concepts and alternatives in the product and project
environment.
 Establish consistency in the use and representation of technical concepts.
 Ensuring at an early stage, that technical concepts are used correctly;
 Inform participants of the technical content of the document.
3. Inspection
Inspection is the most formal review type. It is usually led by a trained moderator (certainly not
by the author). The document under inspection is prepared and checked thoroughly by the
reviewers before the meeting, comparing the work product with its sources and other
referenced documents, and using rules and checklists. Depending on the organization and the
objectives of a project, inspections can be balanced to serve a number of goals.
The specific goals of an Inspection are:
 Help the author to improve the quality of the document under inspection.
 Remove defects efficiently, as early as possible.
 Improve product quality, by producing documents with a higher level of quality.
 Create a common understanding by exchanging information among the inspection
participants.
 Recent new/key developments in SQA methods
 Software validation, verification, and testing
 Software quality estimation, measurements, and metrics
 SQA modeling, certification, evaluation, and improvement
 SQA standards and models
 SQA case studies
 Data analysis and risk management
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
8
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
B: ISO 9126 Model
ISO standard 9126 quality model The ISO 9126 standard was created by the ISO (the
International Organization for Standardization) and IEC (the International Electro Technical
Commission). Nowadays software products are used in an increasingly wide variety of application areas,
and their correct operation in often critical for business success and/or human safety. Developing or
selecting high quality software is therefore of prime importance’s 9126 is an international standard for
the evolution of software. ISO 9126 specifies and evaluates the quality of a software product in terms of
internal and external software qualities and their connection to attributes.
The standard is divided into four parts which address respectively the following subjects:
1. Quality model
2. External metrics
3. Internal metrics
4. Quality in use metrics.
ISO 9126 Part-1 is an extension of previous work done by McCall (1977), Boehm (1978), FURPS etc.
1) Quality Model:
The quality model presented in the first part of the standard, ISO/IEC 9126-1, classifies software
quality in a structured set of characteristics and sub-characteristics as follows:
 Functionality - "A set of attributes that bear on the existence of a set of functions and
their specified properties. The functions are those that satisfy stated or implied needs."
 Reliability - "A set of attributes that bear on the capability of software to maintain its
level of performance under stated conditions for a stated period of time."
 Usability - "A set of attributes that bear on the effort needed for use, and on the
individual assessment of such use, by a stated or implied set of users."
 Efficiency - "A set of attributes that bear on the relationship between the level of
performance of the software and the amount of resources used, under stated
conditions."
 Maintainability - "A set of attributes that bear on the effort needed to make specified
modifications."
 Portability - "A set of attributes that bear on the ability of software to be transferred
from one environment to another."
2) Internal Metrics:
Internal metrics are those which do not rely on software execution (static measure).
3) External Metrics:
External metrics are applicable to running software.
4) Quality-in-use metrics.
Quality-in-use metrics are only available when the final product is used in real conditions.
Ideally, the internal quality determines the external quality and external quality determines
quality in use.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
9
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Figure 3 ISO9126
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
10
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Examination: B.S.I.T (2016) (8th Semester)
Q2. Write short answers to the following questions: (5x4=20 Marks)
1- Differentiate “Measure” and “Metric” with example?
ANSWER: Repeated in Solved Past Paper SQA 2017 Page # 1-2
2- On what basis is the acceptance plan prepared?
ANSWER:
In any project the acceptance document is normally prepared using the following inputs. This can vary
from company to company and from project to project.
1) Requirement document:
This document specifies what exactly is needed in the project from the customer’s perspective.
2) Input from customer:
This can be discussions, informal talks, emails, etc.
3) Project plan:
The project plan prepared by the project manager also serves as good input to finalize your
acceptance test. The following diagram shows the most common inputs used to prepare
acceptance test plans.
Figure 4 Acceptance Test Plan
3- What is the difference between a defect and a failure?
ANSWER: Repeated in Solved Past Paper SQA 2017 Page # 3
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
11
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
4- Differentiate System Testing and Acceptance Testing?
ANSWER:
Figure 5 Testing Level
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
12
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
5- What is CMMI and what’s the advantages of implementing it in an
organization?
ANSWER:
Capability Maturity Model Integration (CMMI)
CMMI is a process improvement approach that provides organizations with the essential
elements of effective processes. It can be used to guide process improvement across a project, a
division, or an entire organization. CMMI helps integrate traditionally separate organizational functions,
set process improvement goals and priorities, provide guidance for quality processes, and provide a
point of reference for appraising current processes.
Advantage of implementing CMMI in an organization:
CMMI best practices enable organizations to do the following:
 More explicitly link management and engineering activities to their business objectives
 Expand the scope of and visibility into the product lifecycle and engineering activities to ensure
that the product or service meets customer expectations
 Incorporate lessons learned from additional areas of best practices (e.g., measurement, risk
management, and supplier management)
 Implement more robust high-maturity practices
 Address additional organizational functions critical to their products and services

More fully comply with relevant ISO standards
Subjective Questions (Marks 30)
Q1: Briefly Explain Boehm’s Quality factors and criteria?
ANSWER:
Boehm model defines the quality of software on the basis of a set of credentials and
measurements. It is also elucidating a model of software quality characteristics.
The high level of characteristics is made in such a way that answers following questions:
 As-is utility: How well (easily, reliably, efficiently) can I use it as-is?
 Maintainability: This aspect decides how convenient it is to understand, change or reevaluate a process.
 Portability: This aspect helps in deciding an effective way to change an environment.
The intermediate level of characteristics represented by the model displays seven quality
factors that altogether signify expected quality from a software system.
These are as follows:
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
13
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
1. Flexibility:
2.
3.
4.
5.
6.
7.
It is very easy to amend the software as per the requirement. Parameters of the
software should be so flexible that they can react on numerous situations.
Reliability:
Software performance should be reliable with zero defects. Result should be accurate.
Portability:
Software can run on different computer' program example DOS, windows.
Efficiency:
Practical & efficient use of resources or data collected. Optimum utilization of resources
should be made.
Testability:
Software should be tested easily and as a result user can easily check that the results are
correct so that they can rely on result blindly.
Understandability:
Software should be simple to understand for users so that they can use it properly and
efficiently.
Usability:
Users can apply it easily and comfortably.
Figure 6 FACTORS AND CRITERIA
Boehm’s Quality Model
 Similar to the McCall Quality Model
 Presents a hierarchical quality model structured around
 High-level characteristics,
 Intermediate level characteristics,
 Primitive characteristics
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
14
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Q2: Explain Process Quality and Product Quality?
ANSWER:
Product Quality:
Product quality means to incorporate features that have a capacity to meet
consumer needs (wants) and gives customer satisfaction by improving products (goods)
and making them free from any deficiencies or defects. There are various important
aspects which define a product quality like:
 Storage
 Quality of Design
 Quality of Conformance
 Reliability
 Safety
Is focusing on meeting tolerances in the end result of the manufacturing activities. The
end result is measured on a standard of "good enough". The quality of the end product
depends upon:
 The “attributes “and characteristics of the software product
 The degree that they fulfill specific project needs
 To ensure that the product meets a defined quality standard:
 Standards and practices for s/w product must be defined early in the development
process
 Standards must be specific to software product
Dimensions of Product Quality:








Performance–main characteristics of the product
Aesthetics–appearance, feel, smell, taste
Special features– extra characteristics
Conformance– how well the product conforms to design specifications
Reliability– consistency of performance
Durability– the useful life of the product
Perceived quality–indirect evaluation of quality
Service-ability–handling of complaints or repairs
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
15
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Figure 7 Product Quality
Process Quality:
Process Quality is defined as all the steps used in the manufacturing the final
product. Its focus is on all activities and steps used to achieve a maximum acceptance
regardless of its final product. So, there is a big difference between product quality and
process quality i.e. even when you follow the process with all quality features it may or
may not produce a useful product, on the other hand product quality comprises of all the
features required to make it acceptable to your customer and hence solve all the pain
points.
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
16
SQA BSIT 8 Semester Solved Past Papers PU Lahore
Faizan Mahmood:03418415814
Focuses on each activity and forces the activities to achieve maximum tolerances
irrespective of the end result.
 A Quality Process is the one that leads to the production of high Quality
Product, Quality Process = Quality Product
 To evaluate the process, it has to be made tangible.
 One way of doing this is to base the process one standard or model against
which conformance may be assessed
 The process evaluation only take account of and is ultimately only as good
as, the underlying model or standard used
Methodologies/Techniques of Process Quality:
There are various methodologies and techniques to control, manage and improve quality.
For example:
Six Sigma, a project management methodology
TQM (Total Quality Management)
BPR (Business Process Reengineering)
PDCA (Plan-Do-Check-Act) cycle
OQM (Object-oriented Quality Management)
Figure 8 Quality Process
Q3: Write a short note on: A: Review Techniques B: ISO 9126 Model
ANSWER: Repeated in Solved Past Paper SQA 2017 Page # 7-8-9
PAPER: Software Quality Assurance Course Code: IT-407
Faizan Mahmood:03418415814
17
Download