Solutions → Development

At the junction of
effectiveness and efficiency

Competences

You have a goal: outstanding software solutions. We provide effective and efficient assistance in all relevant phases to help you achieve that goal.

Secure the decisive resources
Development projects are becoming more complex and more demanding. And they have to be implemented “just in time”. That requires special knowledge and a highly efficient team. We offer you both.

We support your software development team, when:

You wish to use new methods or tools with which your employees have no experience yet ,

You are getting orders faster than your development team is growing,

Your customers want more changes than you planned for,

You wish to outsource technical management to a competent partner .

The strengths of our development engineers

Our customers trust our development engineers also with complex development tasks, because they

work very carefully,

create not only the code, but also all necessary document,

find errors outside of their area of responsibility during the reviews of the specification documents or other interface documents,

have many years of experience so they can also manage other development teams.

Our development engineers work closely with our consultants and benefit from their know-how when new tools are to be used efficiently or new methods are to be developed and implemented. This allow our development engineers to successfully solve all tasks. As competence is crucial, our developers not only have a lot of experience, but are also certified as requirements engineer, architect or tester (IREB®, ISAQB®, ISTQB®).

Partners for all processes

At the end of the day, the result is what counts. We therefore assist you in all processes of development: from requirement analysis, system & software design, module development & integration to tests at all levels. We perform the technical management for all sub-tasks of the development.

Competences

Discover our expertise in development

Click on the competence and scroll automatically to the correct area.

Requirement
specification

System &
software design

Module
development

Tests at
multiple levels

Technical management
& integration

Tools

Competences

Requirements specification

Software projects need a solid basis

There is no substitute for a systematic requirement specification. Because you have to know your goal in order to achieve it.

High potential

Effective requirement engineering clearly defines the system requirements. This is crucial for the success of the project. It often happens that no complete requirement specification is created, which might have negative effects on the progress of the project.

Provide clarity

Secure the advantages of a systematic requirement specification:

By defining your requirements in your own words you will gain a clear understanding of the task.

A well thought-out, systematic structuring helps to uncover gaps and contradictions.

Single chapters and even larger sections of the document can be re-used in other projects.

Risk management that allows action and not only reaction: safety or security management,

You benefit from a complete, traceable and updatable system test specification.

Our services

We provide you with the following services within the framework of the requirement specification:

Creation of the system or software requirement specification by IREB® Certified Professional for Requirements Engineering,

Support with the introduction of modern requirement tools such as DOORS, PTC Integrity or Polarion with concepts, templates or scripts,

Ensuring the traceability of all documents,

Execution of consistency checks,

Reviews of the requirement specification together with your specialists,

Training your employees on the methods of requirement specification (see also Quality Assurance)

Integration of the technical security concepts into the system and software architecture for safety- or security-related systems according to ISO 26262 or ISO / SAE 21434.

Competences

System- & software design

Precise ideas

Successful development follows clear lines. We ensure this with a clearly structured system and software design.

A good design ensures a good overview

Updatability, testability and reusability of systems and software are determined by the design. As an architect implements customer preferences in blueprints, in order to make them readily understandable by the construction workers, designers have to transform the requirements into a system and software architecture and a detailed design.

However, the documentation is often neglected due to the misconception – “The goal is clear.” Later it is discovered – too late – that there is no overview with a clear definition of the details.

A well documented design can also be reused. This saves time and money and is decisive for the success of the next project.

Pragmatic and cost-effective

A good, well documented system design offers you many advantages:

You can reuse the architecture and the modules.

The complexity is reduced to a practicable level.

You can precisely calculate the required resources.

The development engineers have clear specifications.

Trouble-free integration is assured.

Testing requirements are reduced.

New employees are more easily familiarized with the system.

Our services

We offer you the following services to ensure that you get all of these advantages:

Creation of system architecture, software architecture and software design by iSAQB® Certified Professional for Software Architecture,

Traceability of the requirements from the design through to testing,

Design reviews of content in cooperation with your specialists,

Integration of the technical safety concepts in the system and software architecture for safety- or security related systems according to ISO 26262 or ISO/SAE 21434.

Contact us

Get to know us
personally.

Get to know the people behind F+S, contact us directly, arrange a direct appointment with us or follow us on LinkedIn.

Competences

Module development

Perfection down to the last detail

The whole is only as good as each of its parts. That is why we emphasize the value of reliable software modules. Maintainability and reusability are a matter of course.

The truth is in the code

The tasks are clearly defined according to the requirement specification and design. The corresponding modules now have to be developed and tested, with great care and with as few errors as possible. For this purpose we specify and implement all module documents, including module tests, executed automatically if possible.

Our services

We create and support your software modules with the following services, on our own responsibility:

Cooperation in defining the requirements at the level of the overall system,

Description of the requirements for the module,

Design and programming of the module,

Creation of test documents at module level and of scripts for automatic testing,

Static code analysis,

Execution of the tests,

Support with troubleshooting in the overall system.

Support with integration ,

Competences

Tests at multiple levels

Identification and elimination of errors

Does the software perform as desired in the critical scenarios? We answer this question with tests at several levels.

Troubleshooting down to the last detail

It is the nature of things – No matter how good the specification, design, programming and testing are, the integrated system generally will still contain errors. However, no one can afford errors in large-scale automotive production.

That is why we identify errors in integrated systems through systematic tests so that we can correct them early on. Our test specifications are well-known for their accuracy and the complete testing of the object under examination.

On the basis of our know-how in testing we support our customers in the role of test manager. The latter implements efficient test planning and monitors its implementation.

Our services

As experienced testers we support you with the following services:

Creation of test specifications for module tests, short tests, integration tests or acceptance tests using proven test methods by ISTQB® Certified Tester,

Execution of tests according to your specification,

Execution of comprehensive module tests with module test tools,

Support with the introduction of tools for test automation,

Introduction of test methods with training and support,

Implementation of reviews of your test specifications,

Performance of the role of test manager with test planning and monitoring.

Contact us

Get to know us
personally.

Get to know the people behind F+S, contact us directly, arrange a direct appointment with us or follow us on LinkedIn.

Competences

Technical management and integration

Management of incremental development

Systems nowadays are developed incrementally or agil throughout several stages. We assume the technical responsibility for selected sub-systems.

Seamlessly integrated sub-systems

Even sub-systems of modern controller systems are so complex that they are developed by many development engineers at different locations. Changes and expansions of functions have to be managed.

Our services

We provide you with the following services within the framework of technical management:

Definition of the scope of functions:

We use requirement engineering methods to uniquely describe the scope of the functionality or all aspects of the change.

Adaptation of the designs:

We carefully analyze the effects of new properties on the architecture, create alternatives for implementation and review the adapted design together with the system architects.

Preparation of the change decision:

Based on the analysis of functional or design changes, we create a change document that helps the project managers to decide on the implementation of the changes.

Monitoring of the implementation:

We instruct the development teams to implement the changes according to the specifications; we monitor the scheduling and technical aspects of the implementation.

Implementation of the integration:

We integrate the delivered code modules. We check whether all executed changes are documented in the change management. We clarify any problems directly with the responsible development engineer.

Execution out tests:

We conduct specified (smoke) tests, including special tests of newly implemented features of bug fixes. We generate a new software release with the agreed changes and hand it over to the test department with the corresponding release notes.

Competences

Tools

Success requires the right tool

Development projects are work-intensive. This work is easier with the right tools. We will put together a suitable “toolbox” for you.

Why re-invent the wheel?

Tools relieve your employees of routine tasks and manual administrative tasks – they make your engineering projects efficient. But the development of tools is time-consuming and expensive. Therefore, it makes sense to use standard tools that are readily available on the market.

In the development of systems and software the basic principle is always the same. However, development projects differ significantly in practice – depending on the challenge and the procedure. The tool environment therefore has to be adapted accordingly. Standard requirements can be characterized as follows:

You need the right tool environment

Development teams from 3 to 300 development engineers,

Project terms from 3 months to several years,

Time-critical, event-driven applications, dialog-driven applications, database applications, complex algorithms,

Various programming languages from Assembler to C, C++ and Java as well as code generators,

Program execution from micro-controllers to execution on mainframe computers,

Expansions of age-old applications to completely new and open developments.

The right tools for every step

You need different tools for working successfully in all development processes – i.e. for

Analysis (requirements),

Design,

Static code analysis,

Test implementation,

Test management,

Configuration management,

Error management,

Change management,

Project planning.

Based on our experience there are three especially important areas with corresponding tool types: Tools for data analysis, tools for interfaces and tools for test support.

Spoiled for choice…

The choice of available tools is large. But what are the best ones for you? And do they also fully meet your requirements? We will be glad to make sure you are using the right tools:

We select tools that are most appropriate for your tasks.

We adapt the tools to your needs and your project situation.

We also implement the technical integration of different tools.

And we create custom tools for you, if necessary.

Our services

We perform the following tasks to ensure to optimize your tools:

Analysis of your requirements,

A comprehensive market analysis, if necessary,

Support with the introduction of tools,

Administration of tools in the startup phase,

Configuration and supplementing of the purchased tools,

Development of new tools for closing gaps in your “toolbox”,

"Development projects are becoming more complex and more demanding. And they have to be implemented “just in time”. That requires special knowledge and a highly efficient team. We offer you both."

Daniel Luscher

Team Lead Software Engineering

Arrange a personal appointment