Q1. What is Integrity in Software Development? Descript the different types of threats with the help of different scenarios.
Integrity:
In the age of cyber-terrorism and hacking, software integrity has become an important factor in the software development. Software integrity can be defined as the degree to which unauthorized access to the components of software (program, data, and documents) can be controlled.
For measuring integrity of software, attributes such as threat and security are used. Threat can be defined as the probability of a particular attack at a given point of time. Security is the probability of repelling an attack, if it occurs. Using these two attributes, integrity can be calculated by using the following equation.
Integrity = ∑(1-threat)*(1-security)
Threat:
In Information Security threats can be many like Software attacks, theft of intellectual property, identity theft, theft of equipment or information, sabotage, and information extortion. ... Software attacks means attack by Viruses, Worms and Trojan Horses etc.
In computer security, a threat is a possible danger that might exploit a vulnerability to breach security and therefore cause possible harm. A threat can be either "intentional" or "accidental" or otherwise a circumstance, capability, action, or event.
Types of Threats:
Classification of Threats
Misuse cases are instances of threats to a system:
Interception threats: attacker gains access to an asset.
Interruption threats: attacker makes part of a system unavailable.
Modification threats: a system asset if tampered with.
Fabrication threats: false information is added to a system.
Security:
Security is the efforts to reduce or eliminate the risks due to different kind of threats. To make system more reliable and safe our data from unauthorized access or avoid the system from getting down due to different attacks.
Examples of different Threats are as following:
Q2. What is Integrity in Software Development? Descript the different types of threats with the help of different scenarios.
Software Defect:
A defect is an error in coding or logic that causes a program to malfunction or to produce incorrect/unexpected results. A program that contains a large number of bugs is said to be buggy.
Types of Defects in Software:
Arithmetic Defects:
It include the defects made by the developer in some arithmetic expression or mistake in finding solution of such arithmetic expression. This type of defects are basically made by the programmer due to access work or less knowledge. Code congestion may also lead to the arithmetic defects as programmer is unable to properly watch the written code.
Logical Defects:
Logical defects are mistakes done regarding the implementation of the code. When the programmer doesn’t understand the problem clearly or thinks in a wrong way then such types of defects happen. Also while implementing the code if the programmer doesn’t take care of the corner cases then logical defects happen. It is basically related to the core of the software.
Syntax Defects:
Syntax defects means mistake in the writing style of the code. It also focuses on the small mistake made by developer while writing the code. Often the developers do the syntax defects as there might be some small symbols escaped. For example, while writing a code in C++ there is possibility that a semicolon (;) is escaped.
Multithreading Defects:
Multithreading means running or executing the multiple tasks at the same time. Hence in multithreading process there is possibility of the complex debugging. In multithreading processes sometimes there is condition of the deadlock and the starvation is created that may lead to system’s failure.
Interface Defects:
Interface defects means the defects in the interaction of the software and the users. The system may suffer different kinds of the interface testing in the forms of the complicated interface, unclear interface or the platform based interface.
Performance Defects:
Performance defects are the defects when the system or the software application is unable to meet the desired and the expected results. When the system or the software application doesn’t fulfill the users’ requirements then that is the performance defects. It also includes the response of the system with the varying load on the system.
Some real life Examples of Software Defects are as following:
Defect Removal Efficiency (DRE)
Defect removal efficiency (DRE) can be defined as the quality metrics, which is beneficial at both the project level and process level. Quality assurance and control activities that are applied throughout software development are responsible for detecting errors introduced at various phases of SDLC. The ability to detect errors (filtering abilities) is measured with the help of DRE, which can be calculated by using the following equation.
DRE = E / (E + D)
Where
E = number of errors found before software is delivered to the user
D = number of defects found after software is delivered to the user.
The value of DRE approaches 1, if there are no defects in the software. As the value of E increases for a given value of D, the overall value of DRE starts to approach 1. With an increase in the value of E, the value of D decreases as more errors are discovered before the software is delivered to the user. DRE improves the quality of software by establishing methods which detect maximum number of errors before the software is delivered to the user.
Example:
Let 10 different types of bugs found during development. 8 of those fixed before release, 2 put on the backlog.
3 bugs found in production. 2 of those were found by customers, 1 was found by the team before any customers caught it.
E = 10
D = 3
DRE = (E / (E + D))
= 10 / (10 + 3)
DRE = 0.769
= 0.769× 100
= 76.9%
Software Integrity and Defects _ 0.pdfChat-ly is a chat application through which people can communicate with each other. It wil...
Individuals with autism are dealing with spectrum of challenges on daily basis, which do n...
Our product will be a service that will resolve a few major issues faced by developers whi...
According to UNITED NATIONS SUSTAINABLE DEVELOPMENT GOALS report, In this project we work...
This project creates a new architecture through the extension of an earlier developed gene...