Technical Excellence

Fokusthemen | avega IT

Software Architecture

What do we mean by a software architecture? To me the term architecture conveys a notion of the core elements of the system, the pieces that are difficult to change. A foundation on which the rest must be built.

Martin Fowler, "Is Design Dead?"
Architectural work and a certain amount of planning are worthwhile for all those areas in which many risks and unknown factors are to be expected. unknown factors are to be expected and which - as the quote from Martin Fowler illustrates - are difficult to change later. are difficult to change later.

Corresponding decisions endanger central framework conditions: Budget, schedule or product quality. Rigid designs or decisions made too early on topics that can be easily changed later or that have only low risks are unnecessary. have only low risks. It is therefore advisable to prioritise architecture work on a risk-driven basis.

High risks typically arise, for example, in the case of

  • Difficult integrations
  • The use of new, unknown technologies
  • Very high qualitative requirements, for example in terms of performance or availability
  • Unclear responsibilities or a high degree of organizational dependencies

If architecture work is not approached in a structured manner, there is a risk that fundamental non-functional requirements cannot be met.

Our strengths in software architecture are:

  • Modern, modular architectures: design, implementation and communication
  • Organizationally and technically scalable architecture foundations and blueprints
  • Assessment and review of software systems and development organizations
  • Architecture in agile organisations

Front-end development and front-end architecture

Web technology has developed rapidly over the last 10 years and there are a large number of tools and frameworks that make of tools and frameworks that facilitate the development of web applications in particular. The web standards are continuously extended by a consortium (W3C) in a multi-stage process and implemented by the browser manufacturers. implemented. Gerade Javascript (oder ECMA-Script, kurz ES) hat sich im letzten Jahrzehnt enorm verbessert. Deshalb ist es sinnvoll, seinen lieb gewordenen Tech-Stack auf mögliche Anpassungen zu überprüfen, um zu sehen ob sich oben genannte Trade-Offs eliminieren lassen. Read our blog article on the topic Platform-empowered Web Stack

Not only on a purely technical level has a lot changed in recent years, but also in the way we build web applications, how we build web applications. Keyword: Microfrontends..

We would be happy to support you in modernizing your web stack!

Cloud Migration

Not every software system is built from scratch to be cloud-ready. Also many existing systems that fulfill important functions should be made fit to benefit from the advantages of modern cloud platforms.

  • Making existing applications fit for the cloud
  • Cloud Native Architecture
  • Migration of applications to the cloud
  • Cloud Readiness Assessment

Continuous Integration & Continuous Deployment

Would your team also like to successfully practice Continuous Integration & Continuous Deployment? Then benefit from our experience with:

  • Automating Build, Test and Deployment
  • Continuously shipping software to production
  • Built-In Quality in the development process: integration and automation of security, non-functional requirements and testing

Interested?

Don't hesitate to contact us today: Our contact details.

Or get an initial free external opinion right away by taking advantage of our speed coaching offer?