Glossary
1. Application Portfolio Management
APM is all about gathering objective information about each of the applications in use in an organization, including the time spent to build and maintain each application, the quality of each application and the way they depend on each other. This enables informed decisions to reduce maintenance costs, minimize risks and unlock opportunites for new development.
2. Bad code
Code that could be written more efficiently, that uses inefficient idioms, or has poor architecture. It does not necessarily mean that there is an error.
3. Code monitoring
Visualization of the state of a software component or of an entire application by looking at its source code.
4. Cohesion
A measure of how strongly related software components are. High cohesion between components is generally preferable.
5. Cross-site scripting
A computer security vulnerability in web applications which allows code injection by malicious users into the web pages viewed by other users.
6. Cyclomatic complexity
A measure for how much complex code a function contains. Functions with a high cyclomatic complexity are hard to test and maintain, given their large number of possible execution paths. They should be refactored into several smaller functions that are simpler to understand and easier to reuse.
7. Design structure matrix
A compact representation of an application used to visualize dependencies between its components.8. Heat map
A representation of data as a two-dimensional map, with different values shown by different colours. Usually, large values are shown as red; values within acceptable limits are shown as green.
9. Injection attack
An attack that consists in injecting malicious commands to alter the behavior of a program. SQL injection attacks for instance take advantage of potential vulnerabilities in the way SQL queries are constructed to inject commands that can read or modify a database maliciously.
10. Integer overflow
An arithmetic error that occurs when an arithmetic operation tries to create a numeric value that is larger than can be represented within the available storage space.
11. ODASA
On-Demand Analytics of Software Assets.
12. Parser
Program that determines the structure of a text such as a piece of code, a log file, or an email.
13. Quality assessment
A report on the technical quality of an application, in terms of its complexity, reliability, efficiency and maintainability notably.
14. Scatter map
A representation of data that shows the distribution of values according to several dimensions.
15. SLOC
Source lines of code.
16. Software analytics
Extensive use of objective measures about the state of a software to drive decision making.
17. Software artifacts
Any data that is used during software development and maintenance: source code, configuration files, bug reports, etc.
18. Static code analysis
Automatic code analysis that is performed without actually executing the program to catch potential bugs, inefficiencies or architectural problems early in the development cycle.
