Logged-in user: none

teamplay Technology Radar - April 2022 (deprecated)

Deprecation Note

We are striving for a single central technology radar for D&A and, essentially, whole DI. Thus, work is ongoing to merge this teamplay Technology Radar into the SHS Software Technology Radar. The teamplay Technology Radar (this page) is valid and will be kept for reference until the content is appropriately represented in the central tech radar. But it may not be updated anymore.

General Note

If something is not mentioned in the radar or below at all it should rather be considered "Avoid" than any other category. Let's discuss the use of new things first in the teamplay AR Board and add it into the radar eventually before it is actually used anywhere. This supports the consolidation goal of the radar which we have in teamplay.

Note on Azure Services

Microsoft Azure is the strategic cloud provider for Siemens Healthineers. Hence, using Azure services is generally fine even if they are not be mentioned in the radar (except they would be in Avoid).

But, most Azure services will not be mentioned in Adopt anyway because the following considerations always have to be made by the product group. If a service needs to be compatible with the Healthineers Edge Framework, then services need to be developed in a "cloud native" way. This basically means it shall be deployed as container on Kubernetes (K8s) in a cloud vendor-agnostic way (12-factor app) and can be run also in clusters outside the cloud, in some cases even without access to the Internet. In such a case Azure services which are bound to the cloud cannot be used.

If an Azure service is explicitly mentioned in the radar, then only this service shall be used for the mentioned purpose instead of other alternatives which cannot necessarily all be mentioned under Avoid.

Only used in special contexts

CONTEXTNAMETYPEPHASEDESCRIPTION
Data AnalyticsSparkLanguages & FrameworksAdoptApache Spark is a multi-language engine for executing data engineering, data science, and machine learning on single-node machines or clusters.
Data AnalyticsScalaLanguages & FrameworksAdoptScala is a strong statically typed general-purpose programming language which supports both object-oriented programming and functional programming. Designed to be concise, many of Scala's design decisions are aimed to address criticisms of Java.
Data AnalyticsPythonLanguages & FrameworksAdoptPython is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. Its language constructs and object-oriented approach aim to help programmers write clear, logical code for small- and large-scale projects. Python is dynamically-typed and garbage-collected. It supports multiple programming paradigms, including structured (particularly procedural), object-oriented and functional programming. It is often described as a "batteries included" language due to its comprehensive standard library.
Data AnalyticsJavaLanguages & FrameworksAdoptJava is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need to recompile.
Data AnalyticsIntelliJToolsAdoptIntelliJ IDEA is an integrated development environment (IDE) written in Java for developing computer software. It is developed by JetBrains (formerly known as IntelliJ), and is available as an Apache 2 Licensed community edition, and in a proprietary commercial edition. Both can be used for commercial development.
Data AnalyticsF#Languages & FrameworksTrialF# (pronounced F sharp) is a functional-first, general purpose, strongly typed, multi-paradigm programming language that encompasses functional, imperative, and object-oriented programming methods.
Data AnalyticsFunctional Extension for C# (layumba)Languages & FrameworksAdoptThis library enables functional programming in C#.
Data AnalyticsC# Functional Programming Language Extensions (language-ext)Languages & FrameworksTrialThis library uses and abuses the features of C# to provide a functional-programming 'base class library' that, if you squint, can look like extensions to the language itself.
Data AnalyticsAnacondaToolsTrialOpen-source Python distribution platform. Used in the context of Jupyter notebooks for installation purposes.
Data AnalyticsKubeflowToolsAssessKubeflow is dedicated to making deployments of machine learning (ML) workflows on Kubernetes simple, portable and scalable. The goal is not to recreate other services, but to provide a straightforward way to deploy best-of-breed open-source systems for ML to diverse infrastructures.
Data AnalyticsDataOpsPracticesAssessDataOps is a set of practices, processes and technologies that combines an integrated and process-oriented perspective on data with automation and methods from agile software engineering to improve quality, speed, and collaboration and promote a culture of continuous improvement in the area of data analytics.
Data AnalyticsMLOpsPracticesAssessMLOps or ML Ops is a set of practices that aims to deploy and maintain machine learning models in production reliably and efficiently.
Data Framework (DAF) teamResharperToolsAdoptReSharper extends Visual Studio with many on-the-fly code inspections for C#, ASP.NET, JavaScript, TypeScript and other technologies. For most inspections, it also provides quick-fixes (light bulbs) to improve the code. And more. Unfortunately, it is pretty costly and cannot be bought for all developers (on a need basis). It can also not handle very large projects well.
teamplay EdgeDebian LinuxPlatforms & InfrastructureAdoptDebian (also known as Debian GNU/Linux) is a Linux distribution composed of only free and open-source software, developed by the community-supported Debian project. It is used as virtualized Linux OS in the context of single-machine teamplay Edge installations.
teamplay ReceiverwyBuildPlatforms & InfrastructureAdoptwyBuild generates patches for Windows apps which can be installed using the open source updater, wyUpdate. wyBuild & wyUpdate handle all of the details. In teamplay Receiver it is used for incremental non-interactive auto-updates behind the scenes.
teamplay ReceiverNSISPlatforms & InfrastructureAdoptNSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution. teamplay Receiver uses it for bulding the installer for initial setup on a blank Windows machine.
teamplay Dose/ReceiverNicomSoft OCRLanguages & FrameworksAdoptThe Nicomsoft SDK is an OCR library that allows developers to easily embed high-quality optical character recognition functionality in their products. The recognition quality delivered by Nicomsoft OCR is on a par with the premium OCR packages available on the market, and it's free.

What is the Tech Radar?

The teamplay Technology Radar is a list of technologies, complemented by an assessment result, called ring assignment. We use four rings with the following semantics:

  • ADOPT — Technologies we have high confidence in to serve our purpose, also in large scale. Technologies with a usage culture in our teamplay production environment, low risk and recommended to be widely used.
  • TRIAL — Technologies that we have seen work with success in project work to solve a real problem; first serious usage experience that confirm benefits and can uncover limitations. TRIAL technologies are slightly more risky; some engineers in our organization walked this path and will share knowledge and experiences.
  • ASSESS — Technologies that are promising and have clear potential value-add for us; technologies worth to invest some research and prototyping efforts in to see if it has impact. ASSESS technologies have higher risks; they are often brand new and highly unproven in our organisation. You will find some engineers that have knowledge in the technology and promote it, you may even find teams that have started a prototyping effort.
  • AVOID — Technologies not recommended to be used. Technologies that we think are not (yet) worth to (further) invest in. AVOID technologies should not be used for new projects, but usually can continued to be used for existing projects.

We consider the SHS Software Technology Radar as guiding input.

What is the purpose?

The Tech Radar is a tool to inspire and support engineering teams at teamplay to pick the best technologies for new projects; it provides a platform to share knowledge and experience in technologies, to reflect on technology decisions and continuously evolve our technology landscape. Based on the pioneering work of ThoughtWorks, our Tech Radar sets out the changes in technologies that are interesting in software development — changes that we think our development teams should pay attention to and consider using in their projects.

How do we maintain it?

The Tech Radar is maintained by the teamplay Architects community —. The Tech Radar depends on active participation and input from all development teams at teamplay.

If you would like to create your own Tech Radar — we are using an open source project to generate this visualization.