ST Unit3-1
ST Unit3-1
• Software Reliability.
• types of risk,
Software Quality Assurance, as the name says, is a process or a role of a from defining requirements to coding until release. Its prime
software engineer to make sure there is no concession or slippage goal is to ensure quality.
project team. • It is important to keep all the records and documents of the QA
2. Setting the Checkpoint and share them on time to time to stakeholders.
• SQA team sets the checkpoints after specific time intervals in order • Test cases executed, test cycles, defects logged, defects fixed,
to check the progress, quality, performance of software, and test cases created, change in requirements from a client for a
whether the software quality work is done on time as per the specific test case, all should be properly documented for future
schedule and documents. reference.
• An FTR is traditionally used to evaluate the quality and design of Process Evaluation: This ensures that the set standards for the
the prototype. project are followed correctly.
• In this process, a meeting is conducted with the technical staff to Periodically, the process is evaluated to make sure it is working as
discuss the quality requirements of the software and the design intended and if any adjustments need to be made.
quality of the prototype.
Process Monitoring: Process-related metrics are collected in this
• This activity helps in detecting errors in the early phase of SDLC and step at a designated time interval and interpreted to understand if
reduces rework effort later. the process is maturing as we expect it to.
6. Enforcing Process Adherence 7. Performing SQA Audits
This activity involves coming up with processes and getting cross- • The SQA audit inspects the actual SDLC process followed vs. the
functional teams to buy in on adhering to set-up systems. established guidelines that were proposed.
7. Vendor Management: Work with contractors and tool vendors to were followed or not.
ensure collective success. • Reviewing: A meeting in which the software product is examined
8. Safety/Security Management: SQA is often tasked with exposing by both internal and external stakeholders to seek their
9. Risk Management: Risk identification, analysis, and Risk • Code Inspection: It is the most formal kind of review that does
mitigation are spearheaded by the SQA teams to aid in informed static testing to find bugs and avoid defect seepage into the later
10. Education: Continuous education to stay current with tools, • It is done by a trained mediator/peer and is based on rules,
• General requirements and design In cases when the real system cannot be tested directly, simulators
are great sandbox system alternatives.
• Functional and Interface specifications
Functional Testing: It is a QA technique that validates what the
• Conventions
system does without considering how it does it. Black Box testing
• Requirement traceability mainly focuses on testing the system specifications or features.
QC Resource Staff hour percentage per • Proper quality check at different levels of software like review,
effective allocation activity Inspection, Auditing, etc and with the involvement of both
ness Completion Actual vs. budgeted
rate completion time internal and external stakeholder increases the confidence of
Review See review metrics clients in the submission of the Weekly reports of the defect and
effectiveness Number of errors found and requirement metrics also helps a lot in assuring the client that the
Testing criticality
work is being done on time.
effectiveness Effort required to correct an
error
2. SQA Saves Money
Origin of error
• It is crucial to identify and rectify defects at an early stage in the
software development life cycle to save time and resources.
Proper SQA measures taken at various stages of the development
process can help in reducing risks and detecting defects before
they become too costly to fix.
• This not only saves money for the company but also helps in
maintaining a good reputation and client satisfaction.
• Involving the client in the software development and When development and testing are done in parallel, defects found
testing process can have a significant impact on early just after the development of a single module is done and
fixed by developers timely allows everyone to work in peace and in
customer satisfaction.
a more productive manner rather than be burdened with multiple
• It helps to ensure that the software being developed is bugs at once after the completion of the whole software.
meeting the client's requirements and expectations.
5. Prevents from Unforeseen Emergencies
• Taking their suggestions and feedback into When developing corporate software, stakes are also very high. As
consideration throughout the development process the software deals with a lot of customer’s sensitive data, it needs
can also help in building trust and confidence in the to work as expected without any blackouts, corruption, or
• Informal reviews
The formal review follows the formal process which consists of six
main phases – Planning phase, Kick-off phase, the preparation phase,
review meeting phase, rework phase, and follow-up phase.
• The moderator is responsible for scheduling the review, which • The main goal of this phase is to get everybody on the same
includes setting dates, times, and work to be done. wavelength regarding the document under review and to commit
to the time that will be spent on checking.
• Additionally, the moderator performs entry checks to ensure that
the document is ready for review and defines the exit criteria that • In this meeting, reviewers receive a short introduction to the
must be met before the review is complete. objectives of the review and its document.
• Role assignment
• Once the entry check is complete and the document is deemed
• pages to be checked,
ready for review, both the moderator and author decide which part
• check rate, and
of the document needs to be reviewed.
• other things that need to be carried out for the review are discussed in this
meeting.
• The formal review team is made up of 4-5 members, and the
moderator assigns different roles and tasks to each member.
forced to skip reviews and exit with a defect lying document. • Changes that are made in the document are easy to find
during the follow-up phase, so the author has to indicate
5. Rework
where the changes are made.
• In the rework phase, based on the defects that are identified in the
preparation and review meeting phase are discussed.
• In the follow-up phase, the moderator of the project is responsible measurements at each phase of the process.
for ensuring that satisfactory action has been taken for all logged • For example, the number of defects found a number of defects
defects, process improvement, and change requests. found per page, time spent on the documents, time spent to
• although the moderator also checks to make sure that the author correct the defects per page, etc.
of the project has taken appropriate action on all defects. • It’s a moderator responsibility that all details are correct and kept
• It is not compulsory that the moderator need to check all the for future analysis.
• If it is decided that all team members will check the document and
update the same, then the moderator just takes care of the roles
distribution among the team and collecting feedback from them.
These metrics help ensure that the product meets the necessary
standards and requirements.
• A relationship exists between the development process and the 3. Process Metrics
ability to complete projects on time and within the desired • These metrics play a dynamic role in ensuring that the software
quality objectives. development process is functioning optimally.
• Cost increase when developers use inadequate methods. • By quantifying important attributes such as cycle time and
• Higher reliability can be achieved by using a better development rework time, process metrics provide valuable understandings
process, risk management process, configuration management into the effectiveness and quality of the processes that produce
• Time to produce the product • By collecting and analyzing this failure data, metrics such as
failure density, Mean Time between Failures (MTBF), and other
• Effectiveness of defect removal during development
parameters can be calculated to measure and predict software
• Number of defects found during testing reliability.
• Reliability metrics are used to quantitatively expressed the • MTTF is described as the time interval between the two
reliability of the software product. The option of which metric is to continuous failures.
be used depends upon the type of system to which it applies & the
• An MTTF of 200 mean that one failure can be expected each 200-
requirements of the application domain.
time units.
• Some reliability metrics which can be used to quantify the
• The time units are entirely dependent on the system & it can
reliability of the software product are as follows:
even be stated in the number of transactions.
Thus, an MTBF of 300 denoted that once the failure appears, the next
failure is expected to appear only after 300 hours. In this method, the
time measurements are real-time & not the execution time as
in MTTF.
Risk management is the process of identifying, assessing, and • Risk identification is the simple identification process that lists
managing risks. It is performed in both planning and execution phases. out the probable factors that may interrupt the smooth
An effective risk management strategy and application drastically functioning of the software.
reduces the chances of execution failures in software development.
• This listing process includes all possible instances, including
The main phases of risk-based testing are:
external errors that might interrupt the functioning of the
• Risk Mitigation
software.
• Risk Identification
• The identification process is often a essential to ensure that the
• Risk Impact Analysis
software has validity in the testing reports.
• The developers are also informed about the risk factors to avoid
such loopholes in the future.
Shortage of Resources Once the risk is identified, we move on to the risk impact analysis.
Tight Test Schedule This step involves the classification of the identified risks based on
Incomplete definition of Scope their probability and force of impact on the entire project.
Delayed Testing The three classifications for impact analysis are high, medium, and
Natural Disasters low.
Unclear Specifications resulting in Defects at a later stage A systematic structure is followed to analyze the risk before it gets
Non-availability of independent Test Environment occurred.
In the process of identifying risks, usually one or the other methods are followed. Impact analysis is done financially as well because the impact in that
Conducting Independent Reviews sector can have direct results on the development of the software.
Retrospective Meetings Major issues such as tight testing schedule and delay caused due to
Acquiring Opinion from Experts design issues could be a considerable interruption; hence, getting
assigned to the high-risk category after the risk impact analysis.
Brainstorming, along with Conducting Risk Workshops
• The next is the most important step, the risk mitigation process. Building and maintaining software applications involves risk at each
• The idea is to find feasible solutions for the analyzed risk, keeping step. Therefore, risk identification is a critical step during the software
high category risk mitigation as a priority. development life cycle as it defines the success and failure of a software
project.
• Finding the proper risk mitigation technique is also crucial.
Following the different types of risks in software development.
• The techniques used should be harmless for the other stages of
development.
failure and impact on company economy. These risks occur due to failed system, external risks due to events
and lack of process implementation.
Schedule risks happen due to the following reasons
Causes of Operational risks:
The time for delivery is estimated wrongly.
Priority conflicts are not resolved properly.
Tracking for the resources is not done properly. The
resources include systems, staff and capabilities of the Responsibilities have not been resolved properly.
Technical risks occur due to lack of performance and implementation of Creating an effective risk management strategy will help protect your
functionalities. company's resources, reputation, and workforce. Each organization
Causes of technical risks are: communicates risk uniquely, with its own internal culture and risk
management policy.
The project requirements are changing continuously.
There are seven key risk management principles to consider when
Technology advancement is not available.
incorporating a risk management plan into your project.
Project implementation is complex.
Identify risks early: Determine the source of potential risk and develop
Integration of modules has become difficult.
mitigation and response measures if it occurs. Once risk is identified and
5.Programmatic Risks: sourced, you can measure it.
These risks are beyond the operational aspect. The events that lead to such
Organization’s goals and objectives:
defects are:
Ensure that your risk management strategy aligns with the overall aims
Lack of funds.
and objectives of your organization.
No market development
Each organization will have various desired targets and priorities, which
Product strategy is changed
should be factored into the risk management strategy. The risk strategy
Change of government rule should be in line with the organization's overall objectives and culture.