0% found this document useful (0 votes)
24 views

Scheme and Solution SE CIE 3

Uploaded by

sjdeshmukh0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views

Scheme and Solution SE CIE 3

Uploaded by

sjdeshmukh0
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

JAIN COLLEGE OF ENGINEERING

(Approved by AICTE, New Delhi & Affiliated to VTU, Belagavi)


DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(Accredited by NBA)

Scheme & Solutions for CIE III


Subject Title: Software engineering and Project management
Subject Code: BCS501
Question Marks
Solution
Number Allocated
Part A
Q.1
a. Define software quality and explain place of software quality in project management. 7M

Software quality is the degree to which a software product meets the needs of its
users and conforms to its requirements. It's a field of study and practice that 1M
describes the desirable attributes of software products
place of software quality in project management:

3M

▪ Identify Project Scope and objective: Some objective could relate to the qualities of
the application to be delivered. 3M
▪ Identify project infrastructure: Identify the installation standard and procedures.
Some of these almost certainly be about quality
▪ Analyze project characteristics: To identify the other qualities based requirement.
▪ Identify the products and activities of the project: It is at this point the entry, exist
and process requirement are identified for each activity
▪ Review and publicize Plan: At his stage the overall quality aspects of the project
plan are reviewed
b. Explain Quality Management Systems with Principles of BSENISO 9001:2000 6M
ISO 9001:2000 Overview ISO 9001:2000 is part of the ISO 9000 series, which sets
forth guidelines and requirements for implementing a Quality Management System
(QMS).
The focus of ISO 9001:2000 is on ensuring that organizations have effective
processes in place to consistently deliver products and services that meet customer
and regulatory requirements.
Quality Management Principles: 2M
Customer focus: Meeting customer requirements and enhancing customer
satisfaction.
Leadership: Establishing unity of purpose and direction.
Involvement of people: Engaging the entire organization in achieving
quality objectives.
Process approach: Managing activities and resources as processes to
achieve desired outcomes.
Continuous improvement: Continually improving QMS effectiveness +
In order for quality management system (QMS) to meet the standard it has to
conform to certain requirement which are summarized below
▪ The Management must define and document the policy concerning quality
and must ensure that this policy is communicated to all levels of the
organization
▪ All Quality control procedures must be documented
▪ All contract to supply goods or services must contain mutually agreed
requirements that the developers is capable for delivering. 4M

▪ There must be procedures to control and verify the design of the system to be
supplied so that it meets the requirements agreed with customers.
▪ There must be procedures to approve design and other documentation.
▪ Where components of the system to be supplied to the clients are obtained
from third parties there must be procedures to ensure check and maintain the
quality of these components.
▪ Individuals products must be identifiable as should their components
▪ The process by which the final product is created must be planned and
monitored
▪ Inspection and testing must take place during the development phase at its
completion and before delivery. Tests and inspection must also be carried out
on the component obtained from third parties
▪ The equipment used in the production process itself must be properly
controlled with respect to quality
▪ The testing status of all components and system must be clearly recorded at
all times
▪ Care must be take to ensure that items that are known to be defective or not
in carelessly used.
Q.2

a. List and Explain the Techniques to enhance Software Quality and Software
Reliability. 7M
Techniques to help Enhance software Quality
Increase Visibility: A landmark in this movement towards making the software
development process more visible was the advocacy by the American software guru,
Gerald Weinberg of egoless programming. Weinberg encouraged the simple practice
of programmer looking at each other code.
Procedural Structure: At first programmer were more or less left to get on with
writing the programs, although there might be some general guidelines, Over the 3M
years there has been the growth of methodologies where every process in the
software development cycle has carefully laid down steps
Checking intermediate stages: It seem inherent in human nature to push forward
quickly with the development of any engineered object until a working model,
however imperfect has been produced that can then be debugged. One of the element
of the move towards quality practices has been put emphasis on checking the
correctness of work at its earlier conceptual stages.
Inspection:When a piece of work is completed the copies of the work are distributed
to co-worker to identifies the defects. The involved colleagues must the experience
in the similar area such a programmer always inspect the work of programmes. Our +
own experience of using this techniques has been that.
▪ It is very effective way of removing superficial error from a piece of work
▪ It motivate the programmer to produce a better structure and self explanatory
program because they know that other peoples will criticizing it
▪ It helps spread good programming practices because the participants discuss
the advantages and dis- advanteges of specific pieces of code.
▪ It can enhance team spirit.

For software Reliability


1. Definition and Importance:
Software reliability denotes the trustworthiness or dependability of a software
product. It is defined as the probability of the software working correctly over a
given period of time. Reliability is a crucial quality attribute for software products. 4M
2. Defects and Reliability:
A large number of defects typically indicate unreliability. Reducing defects
generally improves reliability. It is challenging to create a mathematical formula to
relate reliability directly to the number of latent defects.
3. Execution Frequency and Defect Impact:
Errors in infrequently executed parts of the software have less impact on overall
reliability. Studies show that 90% of a typical program's execution time is spent on
10% of its instructions. The specific location of a defect (core or non-core part)
affects reliability.
4. Observer Dependency:
Reliability is dependent on user behavior and usage patterns. A bug may affect
different users differently based on how they use the software.
5. Reliability Improvement Over Time:
Reliability usually improves during testing and operational phases as defects are
identified and fixed. This improvement can be modeled mathematically using
Reliability Growth Models (RGM).
6. Reliability Growth Models (RGM):
RGMs describe how reliability improves as failures are reported and bugs are
corrected. Various RGMs exist, including the Jelinski–Moranda model, Littlewood–
Verall’s model, and Goel–Okutomo’s model. RGMs help predict when a certain
reliability level will be achieved, guiding decisions on when testing can be stopped.

b. Explain importance of software quality management. 6M


▪ Increasing criticality of software: the end user of a software generally
anxious about the quality of software especially about the reliability. They
are concern about the safety because of their dependency on the software
system such as aircraft control system are more safety critical systems.

▪ The intangibility of software: This make it difficulty to know that a 2M+2M+2


particular tasks in project has been completed satisfactory. The results of M
these tasks can be made tangible by demanding that the developer produce
deliverables that can be examined for quality

▪ Accumulating errors during software development:


As computer system developed in made up of a number of steps where the
output from one step is the input to the next, the error in the earlier
deliverables will be added to those in the later steps leading to an
accumulating determined effects. In general the later in a project that an error
is found the more expensive it will be to fix. In addition because the number
of errors in the system is unknown, the debugging phases of a project are
particularly difficult to control

PART B
Q.3 6M
a. Explain capability process model and CMM key areas.
Capability process models 3M
1.SEI Capability Maturity Model (CMM) and CMMI:
Developed by the Software Engineering Institute (SEI), CMM and CMMI provide a
+
framework for assessing and improving the maturity of processes.
They define five maturity levels, from initial (ad hoc processes) to optimized
(continuous improvement). O
CMMI (Capability Maturity Model Integration) integrates various disciplines beyond
software engineering.
3M
2. ISO 15504 (SPICE):
ISO/IEC 15504, also known as SPICE (Software Process Improvement and
Capability dEtermination), is an international standard for assessing and improving
process capability.
It provides a framework for evaluating process maturity based on process attributes
and capabilities.
3. Six Sigma:
Six Sigma focuses on reducing defects in processes to a level of 3.4 defects per
million opportunities (DPMO).
It emphasizes data-driven decision-making and process improvement methodologies
like DMAIC (Define, Measure, Analyze, Improve, Control).

Key areas:
Level 1: Initial: The procedures followed tend to be haphazard. Some project will be
successful, but this tends to be because of the skills of particular individuals
including project managers. This is no level 0 and so any organization would be at
this level by default.
Level 2: Repeatable: Organization at this level will have basic project management
procedures in place, however, the way an individual task is carried out will largely
on the person doing it
Level 3 Defined: the organization have the way in which each task in the software
development life cycle is to be done.
Level 4 Managed: The product and the processes involved in software development
are subject to measurement and control
Level 5 Optimizing: Improvement in procedure are designed and implemented using
the data gather from the measurement process

6M
b. Explain ISO-9126 standard I detail.
ISO 9126 standard was published in 1991 to tackle the question of the definition of
software quality this 13 pages document was designed as foundation upon which
further, more detailed standard could be built.
ISO 9126 identifies six software quality characteristics
▪ Functionality: which covers the functions that a software product provides to
satisfy user needs
Functionality sub characteristics: suitability, Accuracy, Interoperability,
Compliance and Security.
Compliance refers to the degree to which the software adheres to application-
related standards or legal requirements.
Typically these could be auditing requirement. Interoperability refers to the
ability of software to interact with others.

▪ Reliability: Which relates to the capability of the software to maintain its


level of performance
Reliability sub characteristics: Maturity, Fault Tolerance and recoverability.
Maturity refers to frequency of failures due to fault in software more
identification of fault more chances to remove them.
Recoverability describe the control of access to a system

▪ Usability: Efforts need to use a software


Usability sub characteristics: Understand ability, Learnability, operability.
Understand-ability is a clear quality to grasp, although the definition
attributes that bear on the user efforts for recognizing the logical concept and
its applicability in our view actually makes it less clear.
Learnability has been distinguished from operability. A software tool might
be easy to learn but time-consuming to use say it uses a large number of
nested menus. This is for a package that is used only intermittently but not
where the system is used or several hours each day by the end user. In this
case learnability has been incorporated at the expense of operability.

▪ Efficiency: physical resource used when a software is executed


Efficiency sub characteristics: Time behaviour, Resource behaviour

▪ Maintainability: Effort needed to the make changes to the software


Maintainability sub characteristics: Analysability, Changeability, Stability
and Testability.
Analysability is the quality that McCall called diagnose ability, the ease with
which the cause of failure can be determined.
Changeability is the quality that other have called flexibility: the latter name
is perhaps a better one as changeability has a slightly different connotation in
plain English It implies that the suppliers of the software are always changing
it.
Stability, on the other hand, does not means that the software never changes,
It means that there is a low risk of a modification to the software having
unexpected effects.

▪ Portability: Availability of the software to be transferred to a different


environment.
Portability sub characteristics: Adaptability, Install ability , Conformance and
Replace ability.
Conformance is distinguished from compliance relates to those standard that
have bearing on portability. The use of a standard programming language
common to many software/hardware environment is an example of
conformance. Replace ability refers to the factors that give upwards
compatibility between old software components and the new ones.
Downwards compatibility is specifically excluded from definition.

Q.4 8M
a. Explain product versus process quality management.
In software development, managing quality can be approached from two main
perspectives: product quality management and process quality management. Here’s a
breakdown of each approach and their key aspects:

Product Quality Management


Product quality management focuses on evaluating and ensuring the quality of the
software product itself.
This approach is typically more straightforward to implement and measure after the
software has been developed.
Aspects:
1. Measurement Focus: Emphasizes metrics that assess the characteristics and
attributes of the final software product, such as size (LOC, function points),
reliability (defects found per LOC), performance (response time), and usability (user 4M
satisfaction ratings).
2. Evaluation Timing: Product quality metrics are often measured and evaluated
after the software product has been completed or at significant milestones during
development.
3. Benefits: Provides clear benchmarks for evaluating the success of the software
development project.
Facilitates comparisons with user requirements and industry standards.
Helps in identifying areas for improvement in subsequent software versions or
projects.
4. Challenges: Predicting final product quality based on intermediate stages (like
+
early code modules or prototypes) can be challenging.
Metrics may not always capture the full complexity or performance of the final
integrated product.

Process Quality Management

Process quality management focuses on assessing and improving the quality of the
development processes used to create the software. This approach aims to reduce
errors and improve efficiency throughout the development lifecycle.

Aspects:
1. Measurement Focus: Emphasizes metrics related to the development processes
themselves, such as defect detection rates during inspections, rework effort,
productivity (e.g., lines of code produced per hour), and adherence to defined
standards and procedures. 4M
2. Evaluation Timing: Process quality metrics are monitored continuously
throughout the development lifecycle, from initial planning through to deployment
and maintenance.
3. Benefits: Helps in identifying and correcting errors early in the development
process, reducing the cost and effort of rework.
Facilitates continuous improvement of development practices, leading to higher
overall quality in software products.
Provides insights into the effectiveness of development methodologies and practices
used by the team.
4. Challenges: Requires consistent monitoring and analysis of metrics throughout
the development lifecycle.
Effectiveness of process improvements may not always translate directly into
improved product quality without careful management and integration.

b. Explain general principal behind the Fagan method. 4M

▪ Inspections are carried our on all major deliverables


▪ All type of defects are noted
▪ Inspection can be carried out by colleagues
▪ Inspection are carried out using a predefined set of steps
▪ Inspection meeting do not last for more than two hours
▪ The inspection is led by a moderator who has had specific training in the 4M
techniques
▪ The participants have define rules
▪ Checklist are used to assist the fault-finding process
▪ Material is inspected at an optimal rate of about 100 lines an hour
▪ Statistics are maintained so that the effectiveness of the inspection process
can be monitored
Subject Title : Subject Code :
Question Marks
Solution
Number Allocated

You might also like