Bayoonet - Architecture Medical Software
From Medical Software
What quality characteristics must a software solution have? How can these be implemented effectively? And where might potential risks be hidden? The architecture of a software is not only structuring code, but is also the key to answering these questions. Experience is therefore a decisive factor in being able to design the software architecture at a higher level of abstraction. Only the most qualified employees at BAYOOMED are entrusted with the role of an software architect. In accordance with the IEC 62304 standard, they create effective solutions for customers in the medical and pharmaceutical environment.
At the beginning of a project, we create a system architecture (architecture design) based on customer-specific requirements. The next step consists of identifying potential risks and adding measures to minimize them: e.g. a tight schedule, conflicting requirements, ambiguity or lack of documentation of third-party systems.
Now follows the software design, i.e. the clarification of the “how”. Here, too, we use an analytical approach and first create a rough design, which we then elaborate into a detailed design. This approach allows us to go into detail without losing sight of the project. For the design itself, we rely on design principles and patterns that have been proven in practice.
In the implementation phase, we constantly monitor whether the implementation corresponds to the architecture or whether it needs to be adapted. This means that there is a constant evaluation of the architecture, for example using the “Architecture Tradeoff Analysis Method”.
Testing for changed requirements that necessitate a change in the architecture (requirements analysis) is flexibly integrated.
In development cycles, the project passes through several phases, which are subject to detailed planning. In order to be able to integrate the specific requirements in the software architecture, an analysis of possible effects on architecture, implementation, schedule and risks is required. This is done in parallel with the agile development of the software solution.