<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Supporting Information on Documentation - V2</title><link>https://doc.castsoftware.com/export-v2/fbp/supporting-information/</link><description>Recent content in Supporting Information on Documentation - V2</description><generator>Hugo</generator><language>en</language><atom:link href="https://doc.castsoftware.com/export-v2/fbp/supporting-information/index.xml" rel="self" type="application/rss+xml"/><item><title>Housekeeping for AIP</title><link>https://doc.castsoftware.com/export-v2/fbp/supporting-information/housekeeping-for-aip/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://doc.castsoftware.com/export-v2/fbp/supporting-information/housekeeping-for-aip/</guid><description>&lt;p&gt;In order to keep AIP running smoothly and avoid ever-increasing storage consumption, there are a number of steps that you can take.&lt;/p&gt;
&lt;p&gt;The steps below are advisory and have been put together based on the experience of working with different AIP customer&lt;/p&gt;
&lt;h3 id="maintenance-of-source-code-folders"&gt;Maintenance of Source Code Folders&lt;/h3&gt;
&lt;p&gt;As soon as a scan is completed, the analysed source code can be zipped and stored in an archive folder. If the customer is using AIP Portal, then the source code should already be zipped. &lt;/p&gt;</description></item><item><title>Developing an Extension in AIP</title><link>https://doc.castsoftware.com/export-v2/fbp/supporting-information/developing-an-extension-in-aip/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://doc.castsoftware.com/export-v2/fbp/supporting-information/developing-an-extension-in-aip/</guid><description>&lt;p&gt;This page is dedicated to understanding the principles of field extension development of extensions beyond product and product road map&lt;/p&gt;
&lt;p&gt;There are 5 types of extension development&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Adding custom rules on top of existing supported AIP technologies&lt;/strong&gt; not in the product road map.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Creating supported extensions for unsupported AIP technologies&lt;/strong&gt; not in the product road map&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enhancing existing user community extensions&lt;/strong&gt;  with new version support for technologies which are not in the product road map&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Developing an extension using existing OpenSource code checkers&lt;/strong&gt; to insert new metrics in AIP&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Converting old UA-based technology&lt;/strong&gt; to full-SDK-Python&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The objective of creating an extension&lt;/p&gt;</description></item><item><title>Understanding False Positives</title><link>https://doc.castsoftware.com/export-v2/fbp/supporting-information/understanding-false-positives/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://doc.castsoftware.com/export-v2/fbp/supporting-information/understanding-false-positives/</guid><description>&lt;p&gt;Version 0.2&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Static analysis&lt;/strong&gt; aims to detect quality issues and risks across the entire code base of an application, often to find issues more efficiently than time-consuming activities like testing and code reviews&lt;/li&gt;
&lt;li&gt;In static analysis, &lt;strong&gt;False Positives&lt;/strong&gt; broadly refers to issues identified by the analysis which on inspection turn out not to be real issues&lt;/li&gt;
&lt;li&gt;The opposite of false positives is &lt;strong&gt;False Negatives&lt;/strong&gt;: real issues that are &lt;em&gt;not&lt;/em&gt; detected
&lt;ul&gt;
&lt;li&gt;False Negatives typically get less publicity but can represent a significant &lt;strong&gt;risk&lt;/strong&gt;, especially in the area of Security&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;There can be many different &lt;strong&gt;reasons&lt;/strong&gt; for False Positives (see next slide)
&lt;ul&gt;
&lt;li&gt;False positives may of course be due to &lt;strong&gt;errors or limitations&lt;/strong&gt; in the rule implementation, but often they are also due &lt;strong&gt;other factors&lt;/strong&gt; such as knowledge about the application input or environment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Implementing a rule with a good &lt;strong&gt;balance&lt;/strong&gt; between false positives and false negatives is not an exact science:
&lt;ul&gt;
&lt;li&gt;For issues with &lt;strong&gt;high impact&lt;/strong&gt; like security risks, or issues that are difficult to find via testing/debugging, a few hours reviewing false positives may well be worth avoiding tricky bugs in operation that may require many days of debugging
&lt;ul&gt;
&lt;li&gt;Example: rare memory leaks, comparing floating numbers using equal&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Seeing the forest for the trees: one false positive between 20 issues may attract most of the attention, but the most effective approach is to focus on the 19 real issues&lt;/li&gt;
&lt;li&gt;Impact on quality &lt;strong&gt;grades&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Experience shows that false positives rarely have a significant impact on the quality scores&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;False Positives may arise from different situations:
&lt;ul&gt;
&lt;li&gt;The specific &lt;strong&gt;environment&lt;/strong&gt; or &lt;strong&gt;input&lt;/strong&gt; for an application may mean that&lt;br&gt;
certain situations will never occur in real life
&lt;ul&gt;
&lt;li&gt;Example: security risks may be acceptable for applications that are used by&lt;br&gt;
a small group of trusted users on a closed network&lt;/li&gt;
&lt;li&gt;Example: division by 0 may never happen if input data ensures the divider can never be 0&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Specific system &lt;strong&gt;requirements&lt;/strong&gt; to an application may reduce or eliminate a risk.
&lt;ul&gt;
&lt;li&gt;Example: for an application which is restarted for each new set of input data and only runs for a short time, memory leaks may never build up to become an issue&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;non-functional requirements&lt;/strong&gt; to an application may influence which issues are considered ‘false positives’
&lt;ul&gt;
&lt;li&gt;Example: performance issues may not be relevant for code executed once a year with a full weekend available to finish processing&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Specific libraries or frameworks may eliminate issues that the application code is not handling itself
&lt;ul&gt;
&lt;li&gt;Example: sanitization of SQL queries&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;implementation&lt;/strong&gt; of a specific rule may be not cover every code pattern or may contain errors
&lt;ul&gt;
&lt;li&gt;Example: similar syntax may have very different affects&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;NB. The experience-level of the developers may also influence the amount of false positives:
&lt;ul&gt;
&lt;li&gt;Very experienced developers are better at writing high quality code, leading to a less issues and therefore a higher percentage of false positives than for junior developers&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A download of this content is available &lt;a href="https://doc-data.castsoftware.com/FBP/attachments/492535879/492535880.pptx"&gt;here&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Security of CAST Managed Services</title><link>https://doc.castsoftware.com/export-v2/fbp/supporting-information/security-of-cast-managed-services/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://doc.castsoftware.com/export-v2/fbp/supporting-information/security-of-cast-managed-services/</guid><description>&lt;h3 id="overall-security-measures"&gt;Overall security measures&lt;/h3&gt;
&lt;p&gt;CAST cares a great deal about security.&lt;/p&gt;
&lt;p&gt;Since 2015, CAST has maintained &lt;strong&gt;ISO 27001&lt;/strong&gt; certification for the following activities:-&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Development&lt;/li&gt;
&lt;li&gt;Quality Assurance&lt;/li&gt;
&lt;li&gt;Release management&lt;/li&gt;
&lt;li&gt;Operating and Facilities management&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All developers are trained in secure development practices&lt;/p&gt;
&lt;p&gt;All software and services are regularly assessed (penetration test and audit code) by third party specialists&lt;/p&gt;
&lt;h3 id="keeping-customer-source-code-secure"&gt;Keeping customer source code secure&lt;/h3&gt;
&lt;p&gt;CAST does provide a managed service that can optionally be run on CAST internal infrastructure. If a customer uses this service, they can be reassured from a security perspective that:-&lt;/p&gt;</description></item></channel></rss>