How we develop Software

The software engineering services of IBV cover the complete development cycle of a software product – from the product idea up to the product market launch. As a customer you can outsource the complete development process to IBV. Alternatively, we work as an “extended workbench” to your development team and bring in our know-how in individual development phases.

1. TECHNOLOGY CONSULTING

… and advise you which hardware, software and communication technologies are best suited for the task at hand. In doing so, we identify possible technical risks that need to be eliminated at an early stage. Our experts will be happy to join your team and provide advice in the form of workshops.

2. ANALYSIS + PROOF OF CONCEPTS

… check in an early stage whether the selected technology (hardware, operating system, software architecture) allows implementing an innovative product idea. For this purpose, we create a suitable prototype which can be used for example to demonstrate that the desired cycle times, interrupt latencies and I/O performance can be reached with the available resources.

3. REQUIREMENTS ENGINEERING

… of the software must be defined. Also, in this phase we can support you e.g. by workshops or by the analysis of an existing software. If desired, we can create a software specification or a functional specification for the further software development.

4. SOFTWARE ARCHITECTURE DESIGN + SOFTWARE DETAILED DESIGN

In addition to optimized performance, robustness and maintainability, the implementation time and integration phase will be reduced. Here we pay special attention to modularization and portability, so that you are able to use the software in different product variants and on different platforms if required.

5. SOFTWARE IMPLEMENTATION

… Alternatively, we work with our own standards. Depending on the task, we master the following programming languages and description languages:

  • C
  • C++
  • C#
  • Assembler
  • VHDL
  • HTML, CSS
  • JavaScript
  • SQL
  • various scripting languages

6. SOFTWARE TESTS

… software integration tests with you. Depending on your requirements, we develop automated tests to easily perform regression tests. We can also perform upon request:

  • Static code analysis
  • Code coverage tests

7. SOFTWARE INTEGRATION

… with components from your software, with open source software or with other commercial products. We also integrate the software on hardware components and external systems. The resulting application is tested extensively in the final phase. If required, we will carry out the integration activities on your equipment.

8. SOFTWARE DOCUMENTATION

… a description of the architecture as well as hints for using the software. This allows you to directly adopt the software and maintain it if necessary.

9. MAINTENANCE

… and expanded. Also, in this phase we accompany our customers to maintain and extend the software to meet new requirements.

Development Tools

If desired, we can integrate our software development into your tool environment so that you are able to easily adapt our development results. We have experience with the following development tools, among others:

Requirements Engineering and Software Design
IDEs and Toolchains (Default)