Know-How

7. Juni 2018

Mein Know-How.

know-how

Konzepte

Backend Development

Application-Server

Ein Anwendungsserver ist im Allgemeinen ein Server in einem Computernetzwerk, der Anwendungsprogramme ausführt. Im engeren Sinne bezeichnet der Begriff eine Software, die spezielle Dienste zur Verfügung stellt, wie beispielsweise Transaktionen, Authentifizierung oder den Zugriff auf Verzeichnisdienste, Webservices und Datenbanken über definierte Schnittstellen.

Know-How-Level: mittel

Backend Framework

Ein Backend Framework ist eine Software, die für die Entwicklung von dynamischen Webseiten, Webanwendungen oder Webservices ausgelegt ist. Sich wiederholende Tätigkeiten werden vereinfacht und die Wiederverwendung von Code und die Selbstdokumentation der Software-Entwicklung gefördert.

Know-How-Level: hoch

Caching

Cache bezeichnet einen schnellen Puffer-Speicher, der (wiederholte) Zugriffe auf ein langsames Hintergrundmedium oder aufwendige Neuberechnungen zu vermeiden hilft. Daten, die bereits einmal geladen oder generiert wurden, verbleiben im Cache, so dass sie bei späterem Bedarf schneller aus diesem abgerufen werden können.

Know-How-Level: hoch

Configuration Server

Configuration Server bieten einen zentralen Dienst, um Konfigurationsinformationen zentralisiert zu speichern und an verschiedene Dienste zu verteilen.

Know-How-Level: hoch

Database Access

Eine Datenbankschnittstelle ist eine Programmierschnittstelle, die den Zugriff auf und den Datenaustausch mit einer Datenbank regelt, d. h. die Kommunikation zwischen einer Softwareapplikation und der Datenbank ermöglicht. Durch eine definierte Datenbankschnittstelle können Datensätze ausgelesen oder verändert werden, ohne die Verwaltungs- und Speicherungsstruktur der Datenbank zu kennen.

Know-How-Level: hoch

Dependency Injection

Als Dependency Injection wird in der objektorientierten Programmierung ein Entwurfsmuster bezeichnet, welches die Abhängigkeiten eines Objekts zur Laufzeit reglementiert: Benötigt ein Objekt beispielsweise bei seiner Initialisierung ein anderes Objekt, ist diese Abhängigkeit an einem zentralen Ort hinterlegt – es wird also nicht vom initialisierten Objekt selbst erzeugt.

Know-How-Level: hoch

HATEOAS

Hypermedia as the Engine of Application State (HATEOAS) ist ein Entwurfsprinzip von REST-Architekturen. Bei HATEOAS navigiert der Client einer REST-Schnittstelle ausschließlich über URLs, welche vom Server bereitgestellt werden.

Know-How-Level: hoch

Messaging

Message Server bieten eine asynchrone Kommunikation über Nachrichten zwischen mehreren Systemen. Die Systeme müssen sich dazu nicht gegenseitig kennen, woraus eine sehr lose Kopplung resultiert.

Know-How-Level: mittel

Microservices

Microservices sind ein Architekturmuster, bei dem komplexe Anwendungssoftware aus unabhängigen Prozessen komponiert wird, die untereinander mit sprachunabhängigen Programmierschnittstellen kommunizieren. Die Dienste sind weitgehend entkoppelt und erledigen eine kleine Aufgabe. So ermöglichen sie einen modularen Aufbau von Anwendungssoftware.

Know-How-Level: mittel

Object Relational Mappiung

Object-Relational Mapping (ORM) ist eine Technik der Softwareentwicklung, mit der ein in einer objektorientierten Programmiersprache geschriebenes Anwendungsprogramm seine Objekte in einer relationalen Datenbank ablegen kann. Dem Programm erscheint die Datenbank dann als objektorientierte Datenbank, was die Programmierung erleichtert. Für Java gibt es eine standardisierte Schnittstelle, die Java Persistence API.

Know-How-Level: hoch

REST

Representational State Transfer bezeichnet ein Programmierparadigma für verteilte Systeme, insbesondere für Webservices. REST ist eine Abstraktion der Struktur und des Verhaltens des World Wide Web.

Know-How-Level: hoch

Service Discovery

Service-Discovery bezeichnet die automatische Erkennung von Diensten in einem Rechnernetz. Hierbei kommen Kommunikationsprotokolle zum Einsatz, welche beschreiben, wie sich die Dienste finden, um miteinander kommunizieren können.

Know-How-Level: hoch

Web-Server

Ein Webserver ist ein Server, der Dokumente an Clients wie z. B. Webbrowser überträgt.

Know-How-Level: hoch

Database

NoSQL Database

NoSQL (englisch für Not only SQL deutsch: „Nicht nur SQL“) bezeichnet Datenbanken, die einen nicht-relationalen Ansatz verfolgen und damit mit der langen Geschichte relationaler Datenbanken brechen. Diese Datenspeicher benötigen keine festgelegten Tabellenschemata und versuchen Joins zu vermeiden. Sie skalieren dabei horizontal.

Know-How-Level: mittel

SQL Database

Eine relationale Datenbank dient zur elektronischen Datenverwaltung in Computersystemen und beruht auf einem tabellenbasierten relationalen Datenbankmodell.

Know-How-Level: hoch

Documentation

Diagrams

Ein Diagramm ist eine grafische Darstellung von Daten, Sachverhalten oder Informationen. Je nach der Zielsetzung des Diagramms werden höchst unterschiedliche Typen eingesetzt. Die Bandbreite von bildhaften Elementen bis rein abstrakten Gebilden ist dabei sehr groß.

Know-How-Level: hoch

Docs

Unter Dokumentation versteht man die Nutzbarmachung von Informationen zur weiteren Verwendung. Ziel der Dokumentation ist es, schriftlich oder auf andere Weise dauerhaft niedergelegte Informationen (Dokumente) gezielt auffindbar zu machen.

Know-How-Level: hoch

Reports

Test-Reports dienen zur Aufzeichnung der Ereignisse und der Ergebnisse während einer Testausführung.

Know-How-Level: mittel

Requirements

Die Anforderungsanalyse (englisch requirements analysis) ist in der Informatik ein Teil des Systementwicklungsprozesses (u. a. neben dem Anforderungsmanagement) sowie ein Teil der Business-Analyse. Ziel ist es, die Anforderungen des Auftraggebers an das zu entwickelnde System zu ermitteln, zu strukturieren und zu prüfen. Das Ergebnis einer Anforderungsanalyse wird meistens in einem Lastenheft dokumentiert oder bei einer agilen Softwareentwicklung resultiert daraus ein Product Backlog.

Know-How-Level: mittel

Frontend Development

Accessibility

Barrierefreiheit bezeichnet eine Gestaltung der baulichen Umwelt sowie von Informationsangeboten, Kommunikation usw. dergestalt, dass sie auch von Menschen mit Beeinträchtigungen ohne zusätzliche Hilfen genutzt und wahrgenommen werden können.

Know-How-Level: mittel

AJAX

Ajax (Asynchronous JavaScript and XML) bezeichnet ein Konzept der asynchronen Datenübertragung zwischen einem Browser und dem Server. Dieses ermöglicht es, HTTP-Anfragen durchzuführen, während eine HTML-Seite angezeigt wird, und die Seite zu verändern, ohne sie komplett neu zu laden.

Know-How-Level: hoch

Asset Processing

Asset processing tools are module bundlers. Module bundlers takes modules with dependencies and generate static assets representing those modules. They take the dependencies and generate a dependency graph allowing web developers to use a modular approach for their web application development purposes.

Know-How-Level: mittel

Browser

Webbrowser oder allgemein auch Browser sind spezielle Computerprogramme zur Darstellung von Webseiten im World Wide Web oder allgemein von Dokumenten und Daten.

Know-How-Level: hoch

CSS 3

Cascading Style Sheets, kurz CSS genannt, ist eine Stylesheet-Sprache für elektronische Dokumente und zusammen mit HTML und DOM eine der Kernsprachen des World Wide Webs.

Know-How-Level: hoch

Frontend Framework

Ein Frontend Framework ist ein clientseitiges JavaScript-Webframework zur Erstellung von Single-Page-Webanwendungen.

Know-How-Level: hoch

HTML 5

Die Hypertext Markup Language, abgekürzt HTML, ist eine textbasierte Auszeichnungssprache zur Strukturierung digitaler Dokumente wie Texte mit Hyperlinks, Bildern und anderen Inhalten. HTML-Dokumente sind die Grundlage des World Wide Web und werden von Webbrowsern dargestellt.

Know-How-Level: hoch

HTTP

Das Hypertext Transfer Protocol (HTTP) ist ein zustandsloses Protokoll zur Übertragung von Daten auf der Anwendungsschicht über ein Rechnernetz. Es wird hauptsächlich eingesetzt, um Webseiten (Hypertext-Dokumente) aus dem World Wide Web (WWW) in einen Webbrowser zu laden. Es ist jedoch nicht prinzipiell darauf beschränkt und auch als allgemeines Dateiübertragungsprotokoll sehr verbreitet.

Know-How-Level: hoch

JSON

Die JavaScript Object Notation, kurz JSON, ist ein kompaktes Datenformat in einer einfach lesbaren Textform zum Zweck des Datenaustauschs zwischen Anwendungen.

Know-How-Level: hoch

Responsive Design

Beim Responsive Webdesign handelt es sich um ein gestalterisches und technisches Paradigma zur Erstellung von Websites, so dass diese auf Eigenschaften des jeweils benutzten Endgeräts, vor allem Smartphones und Tabletcomputer, reagieren können.

Know-How-Level: hoch

Languages

Design Patterns

Design Patterns sind bewährte Lösungsschablonen für wiederkehrende Entwurfsprobleme in der Softwarearchitektur und -entwicklung. Sie stellen damit eine wiederverwendbare Vorlage zur Problemlösung dar, die in einem bestimmten Zusammenhang einsetzbar ist.

Know-How-Level: hoch

Domain Specific Languages (DSLs)

Eine domänenspezifische Sprache ist eine formale Sprache, die zur Interaktion zwischen Menschen und Computern für ein bestimmtes Problemfeld entworfen und implementiert wird. Beim Entwurf einer DSL wird man bemüht sein, einen hohen Grad an Problemspezifität zu erreichen: die Sprache soll alle Probleme der Domäne darstellen können und nichts darstellen können, was außerhalb der Domäne liegt. Dadurch ist sie durch Domänenspezialisten ohne besonderes Zusatzwissen bedienbar.

Know-How-Level: hoch

Functional Programming

Funktionale Programmierung ist ein Programmierparadigma, innerhalb dessen Funktionen nicht nur definiert und angewendet werden können, sondern auch wie Daten miteinander verknüpft, als Parameter verwendet und als Funktionsergebnisse auftreten können. Dadurch kann ein funktionales Programm sehr weitreichend neue Berechnungsvorschriften zur Laufzeit zusammensetzen und anwenden.

Know-How-Level: hoch

Immutability

In object-oriented and functional programming, an immutable object is an object whose state cannot be modified after it is created.

Know-How-Level: hoch

JavaScript

JavaScript ist eine Skriptsprache, die ursprünglich 1995 von Netscape für dynamisches HTML in Webbrowsern entwickelt wurde, um Benutzerinteraktionen auszuwerten, Inhalte zu verändern, nachzuladen oder zu generieren und so die Möglichkeiten von HTML und CSS zu erweitern. Heute findet JavaScript auch außerhalb von Browsern Anwendung, so etwa auf Servern und in Microcontrollern.

Know-How-Level: hoch

Object Oriented Programming

Die objektorientierte Programmierung (kurz OOP) ist ein auf dem Konzept der Objektorientierung basierendes Programmierparadigma. Die Grundidee besteht darin, die Architektur einer Software an den Grundstrukturen desjenigen Bereichs der Wirklichkeit auszurichten, der die gegebene Anwendung betrifft.

Know-How-Level: hoch

Solid Principles

SOLID Principles sind Prinzipien objektorientierten Designs, die zu gutem objektorientierten Design führen sollen.

Know-How-Level: hoch

SQL

SQL ist eine Datenbanksprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen.

Know-How-Level: hoch

TypeScript

TypeScript ist eine durch Microsoft entwickelte Programmiersprache, die auf den Vorschlägen zum zukünftigen ECMAScript-6-Standard basiert. Der von Microsoft entwickelte TypeScript-Compiler kompiliert TypeScript-Code nach ECMA Script. Jeder JavaScript-Code ist auch gültiger TypeScript-Code, sodass gängige JavaScript-Bibliotheken auch in TypeScript verwendet werden können.

Know-How-Level: hoch

XML

Die Erweiterbare Auszeichnungssprache, abgekürzt XML, ist eine Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten im Format einer Textdatei, die sowohl von Menschen als auch von Maschinen lesbar ist.

Know-How-Level: hoch

Production

12-Factor-App

Das 12 Factor App Manifest gibt einige Empfehlungen dafür, wie Web-Apps für die Cloud am Besten entwickelt werden können. Eine gute SaaS-Anwendung muss nämlich leicht skalierbar, schnell deploybar und gut portierbar sein.

Know-How-Level: hoch

Chaos Engineering

Chaos Engineering is the discipline of experimentation on a distributed system to build confidence in the system's ability to withstand turbulent production conditions. This is a community built around the principles defined on the site http://principlesofchaos.org/, initiated by Netflix.

Know-How-Level: niedrig

Container Technologies

Containerization refers to an operating system feature in which the kernel allows the existence of multiple isolated user-space instances. Such instances, called containers, may look like real computers from the point of view of programs running in them.

Know-How-Level: mittel

Deployment

Deployment nennt man Prozesse zur Installation von Software auf Rechnern.

Know-How-Level: mittel

Deployment Strategy

There are a variety of techniques to deploy new applications to production, so choosing the right strategy is an important decision, weighing the options in terms of the impact of change on the system, and on the end-users.

Know-How-Level: mittel

Infrastructure as Code

Infrastructure as code is the process of managing and provisioning computer data centers through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools.

Know-How-Level: niedrig

Load Balancer

Mittels Load Balancing werden umfangreiche Berechnungen oder große Mengen von Anfragen auf mehrere parallel arbeitende Systeme verteilt.

Know-How-Level: hoch

Logging

Als Logging bezeichnet man die automatische Erstellung eines Protokolls von Softwareprozessen.

Know-How-Level: hoch

Monitoring

Monitoring ist die Überwachung von Vorgängen. Es ist ein Überbegriff für alle Arten von systematischen Erfassungen (Protokollierungen), Messungen oder Beobachtungen eines Vorgangs oder Prozesses mittels technischer Hilfsmittel oder anderer Beobachtungssysteme.

Know-How-Level: mittel

Quality-Assurance

Backend-Unit-Tests

Ein Modultest (auch von englisch unit test als Unittest oder als Komponententest bezeichnet) wird in der Softwareentwicklung angewendet, um die funktionalen Einzelteile (Units) von Computerprogrammen zu testen, d. h., sie auf korrekte Funktionalität zu prüfen.

Know-How-Level: hoch

End-2-End-Tests

End-To-End-Tests testen alle Komponenten eines Systems gemeinsam, also die eigentliche Anwendung inklusive Browser, Webserver, Datenbank und jeglicher sonstiger Infrastruktur. Bei Webapplikationen werden Werkzeuge wie zum Beispiel Selenium verwendet, um Benutzerinteraktionen automatisiert auszuführen und die Antwort automatisch zu überprüfen.

Know-How-Level: niedrig

Frontend-Unit-Tests

Ein Modultest (auch von englisch unit test als Unittest oder als Komponententest bezeichnet) wird in der Softwareentwicklung angewendet, um die funktionalen Einzelteile (Units) von Computerprogrammen zu testen, d. h., sie auf korrekte Funktionalität zu prüfen.

Know-How-Level: hoch

Load-Tests

Unter einem Lasttest (Lehnübersetzung von Load Testing) versteht man einen Softwaretest, der eine zu in der Regel sehr hohe Last auf dem zu testenden System erzeugt und dessen Verhalten untersucht.

Know-How-Level: hoch

Security-Tests

Security testing is a process intended to reveal flaws in the security mechanisms of an information system that protect data and maintain functionality as intended. Due to the logical limitations of security testing, passing security testing is not an indication that no flaws exist or that the system adequately satisfies the security requirements.

Know-How-Level: niedrig

Static Code Analysis

Static program analysis is the analysis of computer software that is performed without actually executing programs.

Know-How-Level: hoch

Test Coverage

Test coverage is a measure used to describe the degree to which the source code of a program is executed when a particular test suite runs. A program with high test coverage, measured as a percentage, has had more of its source code executed during testing, which suggests it has a lower chance of containing undetected software bugs compared to a program with low test coverage

Know-How-Level: hoch

Resilience

Bulk Heads

Isolate elements of an application into pools so that if one fails, the others will continue to function.

Know-How-Level: mittel

Circuit Breaker

Circuit breaker is a design pattern used in modern software development. It is used to detect failures and encapsulates the logic of preventing a failure from constantly recurring, during maintenance, temporary external system failure or unexpected system difficulties.

Know-How-Level: hoch

Fail Fast

In systems design, a fail-fast system is one which immediately reports at its interface any condition that is likely to indicate a failure. Fail-fast systems are usually designed to stop normal operation rather than attempt to continue a possibly flawed process.

Know-How-Level: hoch

Governor

A governor, or speed limiter or controller, is a part of a system used to measure and regulate the speed of some other part of a system, e.g. a governor could limit the speed at which new instances of a service may bew created.

Know-How-Level: niedrig

Redundancy/Clustering

A computer cluster is a set of loosely or tightly connected computers that work together so that, in many respects, they can be viewed as a single system. Unlike grid computers, computer clusters have each node set to perform the same task, controlled and scheduled by software.

Know-How-Level: hoch

Shed Load

Load Shedding is a technique used in information systems, especially web services, to avoid overloading the system and making it unavailable for all users. The idea is to ignore some requests rather than crashing a system and making it fail to serve any request.

Know-How-Level: mittel

Security

Certificates

Ein digitales Zertifikat ist ein digitaler Datensatz, der bestimmte Eigenschaften von Personen oder Objekten bestätigt und dessen Authentizität und Integrität durch kryptografische Verfahren geprüft werden kann. Das digitale Zertifikat enthält insbesondere die zu seiner Prüfung erforderlichen Daten. Die Ausstellung des Zertifikats erfolgt durch eine offizielle Zertifizierungsstelle, die Certification Authority (CA).

Know-How-Level: mittel

Cryptographic Algorithms

Das Herzstück der Kryptographie ist die Mathematik. Reine, einfache, unverwässerte Mathematik. Mathematik hat die Algorithmen geschaffen, die die Grundlage der gesamten Verschlüsselung bilden.

Know-How-Level: hoch

Identity Provider/Management

An identity provider (abbreviated IdP) is a system entity that creates, maintains, and manages identity information for principals while providing authentication services to relying party applications within a federation or distributed network. An identity provider offers user authentication as a service. Relying party applications, such as web applications, outsource the user authentication step to a trusted identity provider.

Know-How-Level: hoch

OWASP Top 10

The OWASP Top 10 is a powerful awareness document for web application security. It represents a broad consensus about the most critical security risks to web applications. Project members include a variety of security experts from around the world who have shared their expertise to produce this list.

Know-How-Level: mittel

Secrecy-Tools

The modern IT landscape is filled full of secrets: There are certificates, SQL connection strings, storage account keys, passwords, SSH keys, encryption keys and more. And no matter what role one plays in the group—developer, admin, PKI manager—managing these secrets should be done with secret management tools.

Know-How-Level: mittel

Tools

Build Tool

Erstellungsprozess oder Build-Prozess bezeichnet in der Softwareentwicklung einen Vorgang, durch den ein fertiges Anwendungsprogramm automatisiert erzeugt wird.

Know-How-Level: hoch

Collaboration Tool

Collaboration-Tools stehen für eine Fülle von Maßnahmen zur dezentralen computergestützten Zusammenarbeit von zeitlich oder räumlich getrennten Teams und Gruppen. In mehreren Stufen haben sich Werkzeuge wie E-Mail, Kalender und in der neuesten Stufe Wikis und Blogs und Issue Tracker etabliert. Eingesetzt werden diese Werkzeuge häufig von Teams, welche nicht zur gleichen Zeit oder am gleichen Ort, jedoch an einer gemeinsamen Aufgabe oder an einem Projekt arbeiten.

Know-How-Level: hoch

Continuous Integration/Deployment

Kontinuierliche Integration (auch fortlaufende oder permanente Integration; englisch continuous integration) ist ein Begriff aus der Software-Entwicklung, der den Prozess des fortlaufenden Zusammenfügens von Komponenten zu einer Anwendung beschreibt. Das Ziel der kontinuierlichen Integration ist die Steigerung der Softwarequalität.

Know-How-Level: mittel

Database Client Application

SQL client and database administration tools.

Know-How-Level: hoch

Database Migration

Schema migration (also database migration) refers to the management of incremental, reversible changes to relational database schemas. A schema migration is performed on a database whenever it is necessary to update or revert that database's schema to some newer or older version.

Know-How-Level: hoch

Integrated Development Environment

Eine integrierte Entwicklungsumgebung ist eine Sammlung von Computerprogrammen, mit denen die Aufgaben der Softwareentwicklung möglichst ohne Medienbrüche bearbeitet werden können.

Know-How-Level: hoch

Refactoring Tool

Refactoring bezeichnet in der Software-Entwicklung die manuelle oder automatisierte Strukturverbesserung von Quelltexten unter Beibehaltung des beobachtbaren Programmverhaltens. Dabei sollen die Lesbarkeit, Verständlichkeit, Wartbarkeit und Erweiterbarkeit verbessert werden, mit dem Ziel, den jeweiligen Aufwand für Fehleranalyse und funktionale Erweiterungen deutlich zu senken.

Know-How-Level: hoch

Software Repository

Ein Software-Repository enthält Programmpakete und zugehörige Metadaten, z. B. Beschreibungen der Pakete, Abhängigkeitsinformationen und Änderungsprotokolle. Das Installieren bzw. Aktualisieren der Software aus dem Repository übernimmt ein Paketmanager.

Know-How-Level: mittel

Version Management

Eine Versionsverwaltung ist ein System, das zur Erfassung von Änderungen an Dokumenten oder Dateien verwendet wird. Alle Versionen werden in einem Archiv mit Zeitstempel und Benutzerkennung gesichert und können später wiederhergestellt werden. Versionsverwaltungssysteme werden typischerweise in der Softwareentwicklung eingesetzt, um Quelltexte zu verwalten.

Know-How-Level: hoch

Technologien und Bibliotheken

Adapter Pattern

Der Adapter ist ein Entwurfsmuster. Das Muster dient zur Übersetzung einer Schnittstelle in eine andere. Dadurch wird die Kommunikation von Klassen mit zueinander inkompatiblen Schnittstellen ermöglicht.

Know-How-Level: hoch

Angular

Angular is a TypeScript-based open-source front-end web application platform led by the Angular Team at Google and by a community of individuals and corporations. Angular is a complete rewrite from the same team that built AngularJS.

Know-How-Level: hoch

Ansible

App deployment, configuration management and orchestration - all from one system. Ansible is powerful automation that you can learn quickly.

Know-How-Level: niedrig

Apache Kafka

Kafka® is used for building real-time data pipelines and streaming apps. It is horizontally scalable, fault-tolerant, wicked fast, and runs in production in thousands of companies.

Know-How-Level: niedrig

Apache Web Server

The Apache HTTP Server is a free and open-source cross-platform web server, released under the terms of Apache License 2.0.

Know-How-Level: mittel

Apple Safari

Safari is a web browser developed by Apple based on the WebKit engine. A mobile version has been included in iOS devices since the introduction of the iPhone in 2007. It is the default browser on Apple devices.

Know-How-Level: mittel

Arachni

Arachni is a feature-full, modular, high-performance Ruby framework aimed towards helping penetration testers and administrators evaluate the security of modern web applications.

Know-How-Level: niedrig

Architecture Decision Records

An architecture decision record is a short text file in a format similar to an Alexandrian pattern. Each record describes a set of forces and a single decision in response to those forces. Note that the decision is the central piece here, so specific forces may appear in multiple ADRs.

Know-How-Level: hoch

ArchUnit

ArchUnit is a free, simple and extensible library for checking the architecture of your Java code using any plain Java unit test framework. That is, ArchUnit can check dependencies between packages and classes, layers and slices, check for cyclic dependencies and more. It does so by analyzing given Java bytecode, importing all classes into a Java code structure.

Know-How-Level: hoch

Blue/Green Deployment

Der Blue-Green-Ansatz ist ein im Bereich der Anwendungsentwicklung verbreitetes Modell zur Software-Bereitstellung und -Evaluierung. Dabei wird wechselseitig ein System als Produktivumgebung genutzt, während das andere System als Kopie der Weiterentwicklung und dem Testing dient.

Know-How-Level: mittel

Bootstrap

Bootstrap is a free and open-source front-end framework (library) for designing websites and web applications. It contains HTML- and CSS-based design templates for typography, forms, buttons, navigation and other interface components, as well as optional JavaScript extensions.

Know-How-Level: hoch

Builder Pattern

Das Builder pattern ist ein Entwurfsmuster. Es trennt die Konstruktion komplexer Objekte von deren Repräsentationen, wodurch dieselben Konstruktionsprozesse wiederverwendet werden können.

Know-How-Level: hoch

C#

C# (englisch c sharp) ist eine typsichere, objektorientierte Allzweck-Programmiersprache von Microsoft. Die Sprache ist an sich plattformunabhängig, wurde aber im Rahmen der .NET-Strategie entwickelt, ist auf diese optimiert und meist in deren Kontext zu finden.

Know-How-Level: niedrig

Canary Deployment

Canary release is a technique to reduce the risk of introducing a new software version in production by slowly rolling out the change to a small subset of users before rolling it out to the entire infrastructure and making it available to everybody.

Know-How-Level: mittel

CheckStyle

Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task. This makes it ideal for projects that want to enforce a coding standard.

Know-How-Level: mittel

Chef

The continuous Automation platform for delivering infrastructure, compliance, applications, and whatever comes next.

Know-How-Level: niedrig

Client Certificates

Ein digitales Zertifikat ist ein digitaler Datensatz, der bestimmte Eigenschaften von Personen oder Objekten bestätigt und dessen Authentizität und Integrität durch kryptografische Verfahren geprüft werden kann. Das digitale Zertifikat enthält insbesondere die zu seiner Prüfung erforderlichen Daten. Die Ausstellung des Zertifikats erfolgt durch eine offizielle Zertifizierungsstelle, die Certification Authority (CA).

Know-How-Level: mittel

Code Beamer

codeBeamer ALM is a holistically integrated, collaborative Application Lifecycle Management platform that offers all-round Requirements, Development, and Testing & Quality Assurance functionality.

Know-How-Level: niedrig

Command Pattern

Das Command Pattern ist ein Entwurfsmuster, welches einen Befehl kapselt, um es so u.a. zu ermöglichen, Operationen in eine Warteschlange zu stellen, Logbucheinträge zu führen und Operationen rückgängig zu machen.

Know-How-Level: hoch

Composite Pattern

Das Composite Pattern ist ein Entwurfsmuster. Es wird angewendet, um Teil-Ganzes-Hierarchien zu repräsentieren, indem Objekte zu Baumstrukturen zusammengefügt werden.

Know-How-Level: hoch

Confluence

Confluence ist eine kommerzielle Wiki-Software, die vom australischen Unternehmen Atlassian entwickelt und als Enterprise Wiki hauptsächlich für die Kommunikation und den Wissensaustausch in Unternehmen und Organisationen verwendet wird, aber zunehmend auch als Basis für öffentliche Wikis im Internet zum Einsatz kommt. Derzeit wird Confluence in über 40.000 Teams eingesetzt.

Know-How-Level: hoch

DB2

Oracle Database is a multi-model database[4] management system produced and marketed by Oracle Corporation.

Know-How-Level: niedrig

DBeaver

DBeaver is an SQL client and a database administration tool. For relational databases it uses JDBC API to interact with databases via a JDBC driver. For other databases (NoSQL) it uses proprietary database drivers

Know-How-Level: mittel

Deployment Documentation

Don't deploy a new firewall, VPN, server, SAN, wireless network, or other systems without properly documenting the installation.

Know-How-Level: hoch

Digital Signatures

Eine digitale Signatur, auch digitales Signaturverfahren, ist ein asymmetrisches Kryptosystem, bei dem ein Sender mit Hilfe eines geheimen Signaturschlüssels zu einer digitalen Nachricht einen Wert berechnet, der es jedem ermöglicht, mit Hilfe des öffentlichen Verifikationsschlüssels die nichtabstreitbare Urheberschaft und Integrität der Nachricht zu prüfen.

Know-How-Level: hoch

Docker

Docker ist eine Open-Source-Software zur Isolierung von Anwendungen mit Containervirtualisierung. Docker vereinfacht die Bereitstellung von Anwendungen, weil sich Container, die alle nötigen Pakete enthalten, leicht als Dateien transportieren und installieren lassen. Container gewährleisten die Trennung und Verwaltung der auf einem Rechner genutzten Ressourcen.

Know-How-Level: hoch

Docker Swarm

Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts into a single, virtual host.

Know-How-Level: hoch

Eclipse

Eclipse ist ein quelloffenes Programmierwerkzeug zur Entwicklung von Software verschiedenster Art.

Know-How-Level: mittel

EhCache

Ehcache is an open source, standards-based cache that boosts performance, offloads your database, and simplifies scalability. It's the most widely-used Java-based cache because it's robust, proven, full-featured, and integrates with other popular libraries and frameworks. Ehcache scales from in-process caching, all the way to mixed in-process/out-of-process deployments with terabyte-sized caches.

Know-How-Level: niedrig

Elasticsearch

Elasticsearch ist eine verteilte, REST-basierte Such- und Analytik-Engine, die eine wachsende Zahl von Anwendungsfällen abdecken kann. Als Herzstück vom Elastic Stack speichert es deine Daten zentral, sodass du darin das Erwartete leicht finden und das Unerwartete entdecken kannst.

Know-How-Level: mittel

ELK-Stack

'ELK' is the acronym for three open source projects: Elasticsearch, Logstash, and Kibana. Elasticsearch is a search and analytics engine. Logstash is a server‑side data processing pipeline that ingests data from multiple sources simultaneously, transforms it, and then sends it to a 'stash' like Elasticsearch. Kibana lets users visualize data with charts and graphs in Elasticsearch.

Know-How-Level: mittel

Emmma

EMMA is an open-source toolkit for measuring and reporting Java code coverage.

Know-How-Level: mittel

Encryption/Decryption

Verschlüsselung (auch: Chiffrierung) ist die von einem Schlüssel abhängige Umwandlung von „Klartext“ genannten Daten in einen „Geheimtext“ (auch: „Chiffrat“), so dass der Klartext aus dem Geheimtext nur unter Verwendung eines geheimen Schlüssels wiedergewonnen werden kann.

Know-How-Level: hoch

Entity Framework

Entity Framework, kurz auch EF, ist ein Framework für objektrelationale Abbildung (ORM). Es wurde von Microsoft entwickelt und dient dem ORM auf .NET-Objektstrukturen.

Know-How-Level: niedrig

F5 Big IP

Eine Mischung aus Software und Hardware, die als Lastenausgleich und vollständiger Proxy fungiert. Damit erhalten Sie die Möglichkeit, den Datenverkehr in Ihrem Netzwerk zu kontrollieren.

Know-How-Level: niedrig

Fabio

Fabio is an HTTP and TCP reverse proxy that configures itself with data from Consul.

Know-How-Level: niedrig

Factory Method Pattern

Das Factory Method Pattern ist ein Entwurfsmuster. Das Muster beschreibt, wie ein Objekt durch Aufruf einer Methode anstatt durch direkten Aufruf eines Konstruktors erzeugt wird.

Know-How-Level: hoch

FindBugs

FindBugs is a program which uses static analysis to look for bugs in Java code. It is free software, distributed under the terms of the Lesser GNU Public License.

Know-How-Level: mittel

Flyway

Flyway is an open source database migration tool. It strongly favors simplicity and convention over configuration.

Know-How-Level: niedrig

Gatling

Performance test as code. Gatling is designed to treat your performance tests as production code. Maintenance and automation are made easier.

Know-How-Level: hoch

Geb

Geb is a browser automation solution. It brings together the power of WebDriver, the elegance of jQuery content selection, the robustness of Page Object modelling and the expressiveness of the Groovy language.

Know-How-Level: mittel

Git

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git is easy to learn and has a tiny footprint with lightning fast performance.

Know-How-Level: hoch

Google Chrome

Google Chrome is a freeware web browser developed by Google. It was first released in September 2008, for Microsoft Windows, and was later ported to Linux, macOS, iOS and Android.

Know-How-Level: hoch

Gradle

Gradle is an open-source build automation tool focused on flexibility and performance. Gradle build scripts are written using a Groovy or Kotlin DSL.

Know-How-Level: hoch

Grafana

Grafana allows you to query, visualize, alert on and understand your metrics no matter where they are stored. Create, explore, and share dashboards with your team and foster a data driven culture.

Know-How-Level: niedrig

Grails

A powerful Groovy-based web application framework for the JVM built on top of Spring Boot.

Know-How-Level: hoch

Groovy

Apache Groovy is a Java-syntax-compatible object-oriented programming language for the Java platform. It is both a static and dynamic language with features similar to those of Python, Ruby, Perl, and Smalltalk.

Know-How-Level: hoch

HAProxy

HAProxy is a free, very fast and reliable solution offering high availability, load balancing, and proxying for TCP and HTTP-based applications. It is particularly suited for very high traffic web sites and powers quite a number of the world's most visited ones.

Know-How-Level: mittel

Hash Functions

Eine kryptographische Hashfunktion ist eine spezielle Form einer Streuwertfunktion, welche kollisionsresistent ist. Es ist also praktisch nicht möglich, zwei unterschiedliche Eingabewerte zu finden, die einen identischen Hashwert ergeben.

Know-How-Level: hoch

Hashicorp Consul

Consul has multiple components, but as a whole, it is a tool for discovering and configuring services in your infrastructure. It provides several key features: Service Discovery, Health Checking, KV Store, Multi Datacenter.

Know-How-Level: mittel

Hashicorp Terraform

HashiCorp Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

Know-How-Level: niedrig

Hashicorp Vault

HashiCorp Vault secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets in modern computing. Vault handles leasing, key revocation, key rolling, and auditing. Through a unified API, users can access an encrypted Key/Value store and network encryption-as-a-service, or generate AWS IAM/STS credentials, SQL/NoSQL databases, X.509 certificates, SSH credentials, and more.

Know-How-Level: mittel

Hazelcast

In computing, Hazelcast is an open source in-memory data grid based on Java.

Know-How-Level: mittel

Hibernate

Hibernate ORM enables developers to more easily write applications whose data outlives the application process. As an Object/Relational Mapping (ORM) framework, Hibernate is concerned with data persistence as it applies to relational databases (via JDBC).

Know-How-Level: hoch

HTTPS

Hypertext Transfer Protocol Secure (HTTPS) ist ein Kommunikationsprotokoll im World Wide Web, um Daten abhörsicher zu übertragen. Es stellt eine Transportverschlüsselung dar.

Know-How-Level: mittel

IntelliJ IDEA

IntelliJ IDEA ist eine integrierte Entwicklungsumgebung (IDE) des Softwareunternehmens JetBrains für die Programmiersprachen Java, Kotlin, Groovy, Scala, JavaScript, TypeScript uvm.

Know-How-Level: hoch

Internal DSLs

Internal domain-specific languages, implemented as libraries which exploit the syntax of their host general purpose language or a subset thereof, while adding domain-specific language elements (data types, routines, methods, macros etc.)

Know-How-Level: hoch

Iterator Pattern

Der Iterator ist ein Entwurfsmuster. Es stellt Möglichkeiten zur Verfügung, auf Elemente einer aggregierten Struktur sequenziell zuzugreifen, ohne die Struktur zu enthüllen.

Know-How-Level: hoch

JaCoCo

JaCoCo is a free code coverage library for Java, which has been created by the EclEmma team based on the lessons learned from using and integration existing libraries for many years.

Know-How-Level: hoch

Jasmine

Jasmine is a behavior-driven development framework for testing JavaScript code. It does not depend on any other JavaScript frameworks. It does not require a DOM. And it has a clean, obvious syntax so that you can easily write tests.

Know-How-Level: hoch

Java

Java ist die Grundlage für praktisch jede Art von Netzwerkanwendung und dient als globaler Standard für die Entwicklung und Bereitstellung von eingebetteten und mobilen Anwendungen, Spielen, webbasiertem Content und Unternehmenssoftware. Mit mehr als neun Millionen Entwicklern weltweit ermöglicht Java die effiziente Entwicklung, Bereitstellung und Verwendung leistungsstarker Anwendungen und Services.

Know-How-Level: hoch

JBoss Application Server

WildFly,[1] formerly known as JBoss AS, or simply JBoss, is an application server authored by JBoss, now developed by Red Hat. WildFly is written in Java and implements the Java Platform, Enterprise Edition (Java EE) specification. It runs on multiple platforms.

Know-How-Level: mittel

JCache

JCache is the Java caching API. It was defined by JSR107. It defines a standard Java Caching API for use by developers and a standard SPI ('Service Provider Interface') for use by implementers.

Know-How-Level: mittel

Jenkins

The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.

Know-How-Level: mittel

Jetbrains MPS

JetBrains MPS is a metaprogramming system which is being developed by JetBrains. MPS is a tool to design Domain Specific Languages (DSL). It uses projectional editing which allows users to overcome the limits of language parsers, and build DSL editors, such as ones with tables and diagrams. It implements language-oriented programming.

Know-How-Level: niedrig

JIRA

Jira ist eine Webanwendung zur Fehlerverwaltung, Problembehandlung und operativem Projektmanagement.

Know-How-Level: hoch

JPA

The Java Persistence API provides a POJO persistence model for object-relational mapping. The Java Persistence API was developed by the EJB 3.0 software expert group as part of JSR 220, but its use is not limited to EJB software components. It can also be used directly by web applications and application clients, and even outside the Java EE platform, for example, in Java SE applications.

Know-How-Level: hoch

JUnit

JUnit 5 is the next generation of JUnit. The goal is to create an up-to-date foundation for developer-side testing on the JVM. This includes focusing on Java 8 and above, as well as enabling many different styles of testing.

Know-How-Level: hoch

Karma

On the AngularJS team, we rely on testing and we always seek better tools to make our life easier. That's why we created Karma - a test runner that fits all our needs.

Know-How-Level: hoch

KeyCloak

Add authentication to applications and secure services with minimum fuss. No need to deal with storing users or authenticating users. It's all available out of the box. You'll even get advanced features such as User Federation, Identity Brokering and Social Login.

Know-How-Level: mittel

Kotlin

Kotlin is a statically typed programming language that runs on the Java virtual machine and also can be compiled to JavaScript source code or use the LLVM compiler infrastructure.

Know-How-Level: hoch

Kubernetes

Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.

Know-How-Level: niedrig

Less/Sass

Less is a dynamic preprocessor style sheet language that can be compiled into Cascading Style Sheets (CSS) and run on the client side or server side

Know-How-Level: mittel

Liquibase

Liquibase is an open source database-independent library for tracking, managing and applying database schema changes.

Know-How-Level: hoch

Log4J

The Apache Logging Services Project creates and maintains open-source software related to the logging of application behavior and released at no charge to the public.

Know-How-Level: hoch

Logback

Logback is intended as a successor to the popular log4j project, picking up where log4j leaves off.

Know-How-Level: hoch

Maven

Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.

Know-How-Level: niedrig

Memento Pattern

Das Memento Pattern ist ein Entwurfsmuster. Das Muster dient der Erfassung und Externalisierung des internen Zustands eines Objektes, wobei sichergestellt wird, dass dadurch seine Kapselung nicht verletzt wird. So kann das Objekt zu einem späteren Zeitpunkt wieder in diesen Zustand zurückversetzt werden.

Know-How-Level: hoch

Microsoft Edge

Microsoft Edge is a web browser developed by Microsoft and included in Windows 10, Windows 10 Mobile and Xbox One, replacing Internet Explorer as the default web browser on all device classes.

Know-How-Level: mittel

Microsoft Internet Explorer

Internet Explorer (abbreviated IE) is a series of graphical web browsers developed by Microsoft and included in the Microsoft Windows line of operating systems, starting in 1995

Know-How-Level: hoch

Microsoft Internet Information Services

Internet Information Services (IIS) ist eine Diensteplattform des Unternehmens Microsoft für PCs und Server. Über sie können Dokumente und Dateien im Netzwerk zugänglich gemacht werden. Als Kommunikationsprotokolle kommen hierbei HTTP, HTTPS, FTP, SMTP, POP3, WebDAV und andere zum Einsatz. Über IIS können ASP- oder .NET-Applikationen (ASP.NET) ausgeführt werden.

Know-How-Level: niedrig

Mockito

Mockito is a mocking framework that tastes really good. It lets you write beautiful tests with a clean & simple API. Mockito doesn’t give you hangover because the tests are very readable and they produce clean verification errors.

Know-How-Level: mittel

MongoDB

MongoDB is a free and open-source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schemas.

Know-How-Level: mittel

Mozilla Firefox

Mozilla Firefox is a free and open-source web browser developed by Mozilla Foundation. Firefox is available for Windows, macOS, Linux, and BSD operating systems.

Know-How-Level: hoch

MS-SQL-Server

Microsoft SQL Server is a relational database management system developed by Microsoft.

Know-How-Level: hoch

MySQL

MySQL is an open-source relational database management system (RDBMS).

Know-How-Level: hoch

Neo4J

Neo4j is a graph database management system developed by Neo4j, Inc. Described by its developers as an ACID-compliant transactional database with native graph storage and processing, Neo4j is the most popular graph database according to DB-Engines ranking.

Know-How-Level: niedrig

Netflix Eureka

Eureka is a REST (Representational State Transfer) based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers.

Know-How-Level: mittel

Netflix Hystrix

Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.

Know-How-Level: hoch

Netflix Simian Army

Tools for keeping your cloud operating in top form. Chaos Monkey is a resiliency tool that helps applications tolerate random instance failures.

Know-How-Level: niedrig

Nexus

Das kostenlose Artefakt-Repository mit universellem Support für gängige Formate.

Know-How-Level: mittel

Nginx

Nginx is a web server which can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.

Know-How-Level: mittel

OAuth2

OAuth 2.0 is the industry-standard protocol for authorization. OAuth 2.0 supersedes the work done on the original OAuth protocol created in 2006. OAuth 2.0 focuses on client developer simplicity while providing specific authorization flows for web applications, desktop applications, mobile phones, and living room devices.

Know-How-Level: mittel

Observer Pattern

Das Observer Pattern (auch Listener Pattern) ist ein Entwurfsmuster und dient der Weitergabe von Änderungen an einem Objekt an von diesem Objekt abhängige Strukturen.

Know-How-Level: hoch

OpenID Connect

OpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0 protocol. It allows Clients to verify the identity of the End-User based on the authentication performed by an Authorization Server, as well as to obtain basic profile information about the End-User in an interoperable and REST-like manner.

Know-How-Level: hoch

Oracle

Oracle Database 18c, the latest generation of the world's most popular database is now available on Oracle Exadata, Oracle Database Appliance and Oracle Database Cloud. It's the first annual release in Oracle's new database software release model, and a core component of Oracle's Autonomous Database Cloud.

Know-How-Level: hoch

Payara Application Server

Payara Server is an open-source application server derived from GlassFish Server Open Source Edition.

Know-How-Level: niedrig

Per-Request Log-Level

One problem with observability is the choice between logging everything — and taking up huge amounts of storage space — or randomly sampling logs and potentially missing important events. A technique that offers a compromise between these two solutions is to set the log level per request via a parameter passed in through a custom HTTP header.

Know-How-Level: hoch

Planned Downtime

Bei dieser Form des Deployments wird das produktive System zu geplanten Zeitpunkten komplett heruntergefahren und mit einer neuen Version neu gestartet.

Know-How-Level: hoch

PMD

PMD is a source code analyzer. It finds common programming flaws like unused variables, empty catch blocks, unnecessary object creation, and so forth. It supports Java, JavaScript, Salesforce.com Apex and Visualforce, PLSQL, Apache Velocity, XML, XSL.

Know-How-Level: mittel

PostgreSQL

PostgreSQL is a powerful, open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.

Know-How-Level: hoch

Production Handbook

Betriebshandbücher beschreiben “Wer, Was, Wann, Wie, Wie oft” tun muss, um den operativen IT-Betrieb einschließlich der erforderlichen Kontroll- und Wartungsarbeiten sicherzustellen, d.h. die operativen Tätigkeiten.

Know-How-Level: hoch

Prometheus

Power your metrics and alerting with a leading open-source monitoring solution.

Know-How-Level: mittel

Proxy Pattern

Der Proxy ist ein Entwurfsmuster. Das Muster überträgt die Steuerung eines Objektes auf ein vorgelagertes Stellvertreterobjekt.

Know-How-Level: hoch

Public Key Infrastructure

Mit Public-Key-Infrastruktur (PKI) bezeichnet man in der Kryptologie ein System, das digitale Zertifikate ausstellen, verteilen und prüfen kann. Die innerhalb einer PKI ausgestellten Zertifikate werden zur Absicherung rechnergestützter Kommunikation verwendet.

Know-How-Level: mittel

Puppet

Puppet Enterprise is a complete configuration management platform that gives you both task-based and model-driven automation in a single solution. It ensures consistency across your containers, VMs, and bare-metal servers by defining your infrastructure as code, whether you have a 100 or 100,000 nodes in the cloud, on-premise data centers, or both.

Know-How-Level: niedrig

RabbitMQ

With more than 35,000 production deployments of RabbitMQ world-wide at small startups and large enterprises, RabbitMQ is the most popular open source message broker.

Know-How-Level: niedrig

Rancher

Rancher is enterprise management for Kubernetes. Every distro. Every cluster. Every cloud.

Know-How-Level: niedrig

React

React is a JavaScript library for building user interfaces. It is maintained by Facebook, Instagram and a community of individual developers and corporations

Know-How-Level: niedrig

Redis

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.

Know-How-Level: hoch

Salt

The most intelligent, powerful and flexible open source software for remote execution, configuration automation, cloud control and event-driven orchestration.

Know-How-Level: niedrig

Scala

Scala is a general-purpose programming language providing support for functional programming and a strong static type system. Designed to be concise, many of Scala's design decisions aimed to address criticisms of Java.

Know-How-Level: mittel

Selenium

Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) be automated as well.

Know-How-Level: mittel

SLF4J

The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time.

Know-How-Level: hoch

Sonarqube

SonarQube provides the capability to not only show health of an application but also to highlight issues newly introduced. With a Quality Gate in place, you can fix the leak and therefore improve code quality systematically.

Know-How-Level: mittel

Source Code Dcumentation

Javadoc is a tool for generating API documentation in HTML format from doc comments in source code.

Know-How-Level: hoch

Spock

Spock is a testing and specification framework for Java and Groovy applications. What makes it stand out from the crowd is its beautiful and highly expressive specification language. Thanks to its JUnit runner, Spock is compatible with most IDEs, build tools, and continuous integration servers. Spock is inspired from JUnit, jMock, RSpec, Groovy, Scala, Vulcans, and other fascinating life forms.

Know-How-Level: hoch

Spring Boot

Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can 'just run'. We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum fuss. Most Spring Boot applications need very little Spring configuration.

Know-How-Level: hoch

Spring Boot Admin

This community project provides an admin interface for Spring Boot ® applications.

Know-How-Level: hoch

Spring Boot Messaging

The Spring Framework provides extensive support for integrating with messaging systems, from simplified use of the JMS API using JmsTemplate to a complete infrastructure to receive messages asynchronously. Spring AMQP provides a similar feature set for the Advanced Message Queuing Protocol. Spring Boot also provides auto-configuration options for RabbitTemplate and RabbitMQ. Spring WebSocket natively includes support for STOMP messaging, and Spring Boot has support for that through starters and a small amount of auto-configuration. Spring Boot also has support for Apache Kafka.

Know-How-Level: niedrig

Spring Cloud Config

Spring Cloud Config provides server and client-side support for externalized configuration in a distributed system. With the Config Server you have a central place to manage external properties for applications across all environments.

Know-How-Level: mittel

Spring Cloud Netflix

Spring Cloud Netflix provides Netflix OSS integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms.

Know-How-Level: hoch

Spring Cloud Netflix

Spring Cloud Netflix provides Netflix OSS integrations for Spring Boot apps through autoconfiguration and binding to the Spring Environment and other Spring programming model idioms. With a few simple annotations you can quickly enable and configure the common patterns inside your application and build large distributed systems with battle-tested Netflix components. The patterns provided include Service Discovery (Eureka), Circuit Breaker (Hystrix), Intelligent Routing (Zuul) and Client Side Load Balancing (Ribbon).

Know-How-Level: hoch

Spring Data

Spring Data’s mission is to provide a familiar and consistent, Spring-based programming model for data access while still retaining the special traits of the underlying data store. It makes it easy to use data access technologies, relational and non-relational databases, map-reduce frameworks, and cloud-based data services.

Know-How-Level: hoch

Spring Security

Spring Security is a powerful and highly customizable authentication and access-control framework. It is the de-facto standard for securing Spring-based applications.

Know-How-Level: hoch

SQL Developer

Oracle SQL Developer is an Integrated development environment (IDE) for working with SQL in Oracle databases. Oracle Corporation provides this product free; it uses the Java Development Kit.

Know-How-Level: hoch

State Pattern

Das State-Pattern ist ein Entwurfsmuster. Das Zustandsmuster wird zur Kapselung unterschiedlicher, zustandsabhängiger Verhaltensweisen eines Objektes eingesetzt.

Know-How-Level: hoch

Strategy Pattern

Das Strategy Pattern ist ein Entwurfsmuster. Es definiert eine Familie austauschbarer Algorithmen.

Know-How-Level: hoch

Subversion

Subversion is an open source version control system.

Know-How-Level: mittel

TeamCity

TeamCity ist ein Java-basierter Server zur kontinuierlichen Integration von JetBrains.

Know-How-Level: mittel

TLS

ransport Layer Security (TLS), weitläufiger bekannt unter der Vorgängerbezeichnung Secure Sockets Layer (SSL), ist ein hybrides Verschlüsselungsprotokoll zur sicheren Datenübertragung im Internet.

Know-How-Level: mittel

Tomcat

Apache Tomcat is an open-source Java Servlet Container developed by the Apache Software Foundation (ASF). Tomcat implements several Java EE specifications including Java Servlet, JavaServer Pages (JSP), Java EL, and WebSocket, and provides a 'pure Java' HTTP web server environment in which Java code can run.

Know-How-Level: hoch

Traefik

Træfik is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease. It supports several backends (Docker, Swarm mode, Kubernetes, Marathon, Consul, Etcd, Rancher, Amazon ECS, and a lot more) to manage its configuration automatically and dynamically.

Know-How-Level: mittel

UML

Die Unified Modeling Language, kurz UML, ist eine grafische Modellierungssprache zur Spezifikation, Konstruktion und Dokumentation von Software-Teilen und anderen Systemen.

Know-How-Level: hoch

Vue.js

Vue.js is an open-source JavaScript framework for building user interfaces.

Know-How-Level: niedrig

Web Sockets

Das WebSocket-Protokoll ist ein auf TCP basierendes Netzwerkprotokoll, das entworfen wurde, um eine bidirektionale Verbindung zwischen einer Webanwendung und einem WebSocket-Server bzw. einem Webserver, der auch WebSockets unterstützt, herzustellen.

Know-How-Level: mittel

Webpack

Webpack is an open-source JavaScript module bundler. Webpack takes modules with dependencies and generates static assets representing those modules.

Know-How-Level: mittel

Websphere Application Server

WebSphere Application Server (WAS) is a software product that performs the role of a web application server. More specifically, it is a software framework and middleware that hosts Java based web applications.

Know-How-Level: mittel

Word

Microsoft Word (abgekürzt MS Word) bezeichnet ein Textverarbeitungsprogramm von Microsoft.

Know-How-Level: hoch

Yed

yEd is a powerful desktop application that can be used to quickly and effectively generate high-quality diagrams.

Know-How-Level: hoch

ZAP

The OWASP Zed Attack Proxy (ZAP) is one of the world’s most popular free security tools and is actively maintained by hundreds of international volunteers*. It can help you automatically find security vulnerabilities in your web applications while you are developing and testing your applications. Its also a great tool for experienced pentesters to use for manual security testing.

Know-How-Level: niedrig

ZeroMQ

Connect your code in any language, on any platform. Carries messages across inproc, IPC, TCP, TIPC, multicast. Smart patterns like pub-sub, push-pull, and router-dealer. High-speed asynchronous I/O engines, in a tiny library. Backed by a large and active open source community. Supports every modern language and platform. Build any architecture: centralized, distributed, small, or large. Free software with full commercial support.

Know-How-Level: niedrig

Zipkin

Zipkin is a distributed tracing system. It helps gather timing data needed to troubleshoot latency problems in microservice architectures. It manages both the collection and lookup of this data. Zipkin’s design is based on the Google Dapper paper.

Know-How-Level: mittel