Content deleted Content added
m Open access bot: url-access updated in citation with #oabot. |
Citation bot (talk | contribs) Removed URL that duplicated identifier. Removed access-date with no URL. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 453/1032 |
||
(One intermediate revision by one other user not shown) | |||
Line 1:
{{Short description|Measurement used in the software delivery lifecycle}}
'''Code integrity''' is a measurement used in the software delivery lifecycle. It measures how high the [[source code]]'s quality is when it is passed on to [[Quality assurance|QA]], and is affected by how thoroughly the code was processed by correctness-checking processes (whether manual or automatic). Examples for such correctness-checking processes can be [[unit tests|unit testing]] and [[integration test]]ing, code review, test automation, AI-based code analysis etc.<ref>{{cite arXiv |title=A Survey on Machine Learning Techniques for Source Code Analysis |eprint=2110.09610 |last1=Sharma |first1=Tushar |last2=Kechagia |first2=Maria |last3=Georgiou |first3=Stefanos |last4=Tiwari |first4=Rohit |last5=Vats |first5=Indira |last6=Moazen |first6=Hadi |last7=Sarro |first7=Federica |year=2021 |class=cs.SE }}</ref> Code integrity is the combination of applying code correctness processes (software quality) along with metrics that measure the completeness of these correctness-checking processes, such as, for example, code coverage. While code integrity is usually achieved by unit testing the source code to reach high code coverage, it is definitely not the only way, or the best way, to achieve code integrity. In fact, code coverage, a popular metric to measure the thoroughness of unit tests, is known to have a limited correlation with the measure of real code integrity.<ref>{{cite book |chapter=How Effective Are Code Coverage Criteria? |doi=10.1109/QRS.2015.30
==Developer's confidence==
Code integrity is not just about the correctness of the code, but also about developers’ confidence regarding correctness of their code. With code integrity, the developer can be sure that
==Shift-left testing and shift-left code integrity==
Line 31:
==Shift-left code integrity enablement==
This concept is based on the fact that developers would be able to make full use of the technological advantage if they have the relevant testing tools available to them from the start. As newer software become more and more complex and includes more dependencies, including the right side of the [[V-model]] in developers' roles will help them to assume control of the unit testing & integration processes.<ref name="wim">{{cite web |author1=Gadi Zimerman |title=Tests are not enough – Why code integrity matters? |url=https://www.qodo.ai/blog/tests-are-not-enough-why-code-integrity-matters |access-date=16 March 2023 |date=11 November 2022}}</ref><ref>{{cite journal |author1=Rook, Paul, E. Rook |title=Controlling software projects |journal=Software Engineering Journal |date=1986 |volume=1 |issue=1 |pages=7–16 |doi=10.1049/sej.1986.0003 |url=https://digital-library.theiet.org/content/journals/10.1049/sej.1986.0003 |access-date=15 March 2023|url-access=subscription }}</ref> The result will allow developers to bring up complete environments in many software companies. This trend is expected to continue because in many cases it is impossible to perform unit/integration testing without the full system's context.<ref>{{cite book |chapter=Effect of Using Continuous Integration (CI) and Continuous Delivery (CD) Deployment in DevOps to reduce the Gap between Developer and Operation |doi=10.1109/ACIT57182.2022.9994139
==References==
|