Frequently asked questions about software quality and source code analysis
What is source code analysis?
As the name says, source code analysis is simply an analysis of the source code. But why does it need to be analysed? Source code is the foundation of all software. By analysing the source code for Best Practices, software quality guidelines (ISO25010), and the rules set by the organisation itself, an assessment of the status of the source code can be made, and with that the software. In fact, it enables insight into how future-proof the application is, and in concrete terms: whether your application can be stored in the cloud, whether the application is safe, and whether the software is maintainable can all be determined.
Why is source code analysis important?
Quality, maintainability, stability and safety are all subjectively charged words. The quality of an application is as important as you think it is. Quality, stability, maintainability and safety are only important if elements within the organisation are at risk, or when we acknowledge that the presence of these characteristics means that other processes within an organisation will run more smoothly too. Examples of these include efficiency, cost reduction, job satisfaction, etc.
Source code analysis is particularly important for anyone who supplies, develops, assesses, or purchases custom software. After all, you always want to know what you’re working with or acquiring.
What does maintainability mean for me?
Maintainable means: readable, flexible (agile), adaptable, stable, robust and well-organised. Maintainable software means that the foundation of your software can be used for years yet, it’s easy to add functionality, and both IT and business know exactly what to expect. Maintainability also begins in the foundation. When teams are properly trained, readable programming can form part of their craft. Continuous monitoring makes it possible to determine whether the requirements are being met, along with the amount of time required for resolution.
Which factors play a role?
In a source code analysis for factors including software quality, various components play a role:
- Tooling: Many aspects of source code analysis can be automated. There are tools available on the market for this purpose that provide everyone with data; free tools obviously have limitations.
- Context: Knowledge of the application’s functionality. As every programmer knows: in order to assess an application and/or its source code, you will need to know what this application is meant to do.
- Knowledge of the technology: In addition to software quality requirements, for each technology there are many Best Practices to choose from that play a role in keeping source code maintainable.
- Knowledge of quality: What is quality? How can false positives be filtered out, and how can the quality of an application be improved? What are the quick wins, for example?
- An objective take: Performing the analysis yourself is always good. It’s even better when an independent party makes an assessment!
- Business rules: In addition to the software requirements set out in, for example, ISO 25010, and the various Best Practices for each technology, industry- or company-specific rules also play a role in software. Many business rules are no longer documented alongside the source code. Taking this into account in a source code analysis means that, in many cases, more information can be obtained from systems than was originally thought.
How do I use the Omnext® Portal?
The Omnext® Portal is a secure SaaS solution. Once you have received the login codes from us, you can log in anywhere. When you log in, you will see a folder tree on the side containing the overview of the system/application. This can even cover multiple technologies. The dashboard can be used as a management tool for making trend analyses, in addition to serving as a tool for developers that gives them a head start on the next sprint. How else can you use the portal? As an information source, or to document and make annotations! It also serves as an environment in which periodic analyses, data and context can be saved.
Omnext offers developers complete insight into the structure of the systems developed. The results of the analyses provide tools for achieving good results in the next sprint. Every small change people make to the source code can result in major changes at system level. Monitoring these changes provides teams with something to work with, as well as material for reports.
As a manager, you know the importance of maintaining control and an overview better than anyone. After all, it’s only then that you know which direction you’re headed and whether or not you’re making the right decisions. In a data-driven world, you’re well aware that data is important – as long as you can draw conclusions from it.
Public authorities often use source code analysis to determine whether their systems meet the required quality standards, and thus are maintainable. Using Omnext enables them not only to assess the quality, but also to place their applications in context. A one-sided assessment of quality says nothing at all about how future-proof the application is. That has everything to do with the situation in which the software is used and, for example, whether there are still a lot of changes being made to a system.
Functional or non-functional testing?
Many organisations mainly use functional testing to test software. This is very effective for finding out whether the functionalities work properly and processes are running well. However, when there is uncertainty about the foundations of the source code, developing a plan for the future is difficult. Functional testing and continuing to develop functionalities are chiefly involved with the short-term – short-term business strategy, focused on quick wins. We advocate a two-way approach. In addition to the short-term vision, it’s important to keep your company’s long-term vision trickling through to your IT strategy. Do you know what your software’s future is?
Would you like to know more about the way we work and what the Omnext Portal looks like? We’d be happy to walk you through it. Request an obligation-free demo!
Bryan de Vries
Business Development Manager
Bryan de Vries can give you answer to all of your questions! Do you have another question than the ones already mentioned above? Contact Bryan!