Software-Reviews

Make IT decisions based on an analysis of your software system, not on intuition.

What is a software review and when does it make sense?

Even in successful software systems, problems can arise. Systematic reviews help identify these issues precisely, creating a solid foundation for future improvements. In this regard, we can learn from the medical field. Before any treatment, a thorough diagnosis is required. In IT, we refer to this as reviews. Reviews not only provide clarity about the current situation but also ensure decision-making confidence regarding the next steps.

There is no single best time or use case for a review. Reviews can add value at different phases of an IT project. Before the project begins, it is worthwhile to review the project plan. Additionally, as the project progresses, an assessment of the current systems can be beneficial. Are you passing the health check? Is there potential for optimization? On top, reviews also provide the necessary facts and information when teams face fundamental decision making regarding the further development or replacement of a software system.

Possible starting points of software reviews
Possible starting points of software reviews

The results of our software reviews

Our consultants provide extensive practical experience for the analysis of your system. Here is what you can expect from our software review:

  • Description of the current state
  • Identification of vulnerabilities and issues
  • Prioritized list of identified risks
  • Comparison of multiple actions and solutions
  • Experience-based recommendations
    • Use of specific technologies, replacing existing solutions if necessary
    • Roadmap/milestones
    • Organizational actions

Review process

Review work is team work. We always conduct our reviews in collaboration with relevant stakeholders (e.g., architects and developers, POs, or staff from the business domain). Through interviews, we first get an overview. As a team, we proceed to analyze and evaluate the results and identify potential pain points. We develop ideas to address them. Finally, we present you with a clear, unbiased view of the system, highlighting connections and outlining possible future options.

Assessment and Analysis

  • Code
  • Documentation
  • Requirements and goals
  • History
  • Organization

Summary and Concept

  • Pain points
  • Perspectives on the architecture
  • Experiences
  • Ideas

Presentation und results

  • Clear view of the system
  • Interrelationships obvious
  • Options for the future highlighted
  • Next steps

What our review does for you

There are many reasons to conduct a software review. INNOQ is your partner - whether you're looking to gain confidence in decision-making before major IT investments or analyzing persistent issues in smaller systems.

External perspective

Our consultants bring their extensive project experience to every review, ensuring your system is evaluated with a practical, real-world perspective.

Investment Input

Before embarking on major IT projects, a review is a cost-effective way to assess your current situation. This gives you the confidence to make decisions.

Systematic problem analysis

When analyzing problems, we use our „Architecture Improvement Method“ (aim42.org), the „Architecture Tradeoff Analysis Method“ (ATAM), Wardley Maps, and other methodologies.

INNOQ as a sparring partner

Reviews are not just for large projects. Persistent issues in existing smaller systems, such as delivery speed, stability, performance, support effort, and usability, are also prime candidates for reviews.

Team work

Each review is unique and depends on the specific requirements. Before we begin, we establish a shared understanding of the goal, scope, and extent of your review.

The review conducted by INNOQ provided us with a structured overview of improvement opportunities for our ticket shop. The analysis looked at every aspect of the project, from development and operational processes to architecture, technology and source code.

Reinhold Heider Senior IT Architect, ÖBB

Review focus

Depending on the context, we recommend different focuses and scopes for reviews:

  • Domain Strategy
  • Software Architecture
  • Development organization and process
  • Plattform & infrastructure
  • Security
  • UX Review
  • Web/Application Review

Addressing the right levels

Depending on the requirements and issues, we address different levels in our review.

Organization

Understand business goals and models, value streams, and organizational components to derive context boundaries and architectural goals.

Domain architecture

The functional structuring of the system landscape and the information flow between systems: business and operational processes.

Macro architecture

Overarching rules, independent from the internal structure of individual systems for quality and maintenance: communication protocols, data replication, UI integration, monitoring, logging, etc.

Micro architecture

Local rules for a system: programming language, frameworks, libraries, architectural patterns, etc.

Code

Structure and conventions for a system's source code.

Keeping an eye on areas of tension

A common tension in our reviews is the differing objectives of operational infrastructure, associated processes, and security aspects. Our consultants help you to balance these goals and to establish a shared understanding.

Vectors Anchor Square 1 Streamline Icon: https://streamlinehq.com

Processes

Requirements management, development processes, operational procedures

Infrastructure

Does the infrastructure setup align with the system's quality goals?

Shield Lock Streamline Icon: https://streamlinehq.com

Security & Data protection

Are security or data protection requirements being overlooked due to functional demands or delivery pressure?

Review process

Our reviews follow a standardized process and are conducted within a defined timeframe.

Align

Kickoff with stakeholders

  • Establish and align goals
  • Approach based on ATAM
1 day
Understand

Interviews & Analyses

  • In-depth interviews with stakeholders and subject-matter experts
  • Analysis of the artifacts
1-2 weeks
Present, Evaluate, Recommend

Final report, presentation

  • Presentation of initial findings
  • Evaluation of strengths, weaknesses, and risks
  • Recommendations for actions
3-4 days

The process is basically the same for longer reviews. However, interviews and analyses take considerably longer for larger reviews, whereas the coordination phase and the preparation of the results report only take slightly longer.

Why INNOQ?

For more than 20 years, our employees have been consulting SMEs and corporations and successfully realizing all kinds of IT systems.


Our expertise is backed by many years of practical experience – in software architecture and development, digital platforms and infrastructures, and digital product development.


For us, technology has no self-purpose, but is the basis of solving real problems.

Get in touch
INNOQ Mitarbeitende

Dive deeper

Article

Software Reviews

Die initiale Architektur und Infrastruktur eines Systems wird üblicherweise kompetent und sorgfältig geplant und umgesetzt, bei der iterativen Weiterentwicklung auf Clean Code und Code Reviews geachtet. Viele kleine über die Jahre getätigte Änderungen an der Software ergeben dann aber nicht immer ein in sich schlüssiges Gesamtbild. Spätestens wenn sich die Time-To-Market verschlechtert und eine Anwendung nicht mehr alle notwendigen Qualitätsanforderungen erfüllt sollte ein umfassendes Software Review in Erwägung gezogen werden.

Article

The art of software reviews

Auch in erfolgreichen Softwaresystemen lauern praktisch immer Probleme. Durch systematische Reviews können Sie diese Probleme zielgerichtet identifizieren – und damit eine robuste Grundlage für zukünftige Verbesserungen schaffen. Der Artikel stellt die Breitensuche als den zentralen Ansatz methodischer Software-Reviews vor und beleuchtet einige der wesentlichen Untersuchungsansätze.

Blog Post

Architektur-Reviews remote durchführen

Software Reviews lassen sich dank moderner Arbeitsmittel remote durchführen und schaffen dabei auch neue Möglichkeiten.

Blog Post

Mit Reviews in Legacy-Situationen orientieren

In diesem Post möchte ich ein paar meiner Erfahrungen mit Legacy-Software teilen. Wir von INNOQ kommen meistens dazu, wenn die Entwicklung irgendwie stecken geblieben ist oder es unklar ist, wie es weiter gehen soll. Reviews, die in Zusammenarbeit von Beratern und Kunde durchgeführt werden, können in einer solchen Situation effektiv und schnell für Klarheit sorgen.

Podcast

Software Reviews

Jedes System hat Potential. Wie man es am besten heben kann.

Podcast

Code Reviews

Ja oder Nein?

Podcast

Architektur-Reviews

Systematisch Risiken und Probleme aufdecken

Article

Modernisierung einer Legacy Software-Architektur

Software-Systeme reifen mit der Zeit. Sie werden oft über viele Jahre und von verschiedenen Architekten und Entwicklern angepasst, um neue Anforderungen zu erfüllen. Der Alterungsprozess lässt sich trotz sorgfältiger Pflege nie ganz aufhalten und so erhält irgendwann jedes System den Stempel „legacy“. Legacy Systeme unterstützen aber weiterhin wichtige geschäftliche Tätigkeiten. Wie führt man diese Systeme also zurück in die Gegenwart und bereitet sie auf die Zukunft vor?

Article

Software-Architektur: Worauf es ankommt

Die Architektur definiert die Struktur eines Software-Systems und ist zentral für den Erfolg eines Projekts. Deswegen ist Software-Architektur so wichtig. Aber in Wirklichkeit ist Software-Architektur noch viel mehr und eine erfolgreiche Software-Architektur erfordert viele, teilweise überraschende Maßnahmen.

Article

Quality Driven Software Architecture - Revised

Quality is the raison d’être for software architects: Our systems should be reliable, performant, scalable and user-friendly. Systems should be build and maintained cost-effective and future-proof. Every IT professional knows that this combination of characteristics means hard work. The article shows how you can methodically construct quality.

Blog Post

Was treibt dich an?

In der heutigen schnelllebigen Welt der Softwareentwicklung ist die Modernisierung von Software eine unerlässliche Aufgabe, um mit ständig ändernden Anforderungen und Technologien Schritt zu halten. Es gibt immens viele Ansätze zur Modernisierung von Software. Aber es ist eine Herausforderung, die richtigen Werkzeugkästen in den richtigen Situationen zu finden. Wie schön wäre es, die eine «Ultimative Softwaremodernisierungsmethode™️» in den Händen zu halten, die all die Probleme mit den in die Jahre gekommenen Softwaresysteme lösen kann?

Case Study

Breuninger improves time-to-market through verticalization and self-contained systems

Perfect overview with our primer

Software Reviews – Identifying Risks and Problems in Software

This practical guide shows you how software systems that have grown over many years can be effectively analyzed and evaluated.