Software-Entwicklung
Die DECOIT® GmbH & Co. KG entwickelt neben konzeptionellen Lösungen aus bestehenden Produkten am Markt eigene Software-Produkte. In diesem Bereich bieten wir Ihnen individuelle Entwicklung, ganz nach Kundenwunsch an. Unser gemeinsames Ziel ist es, innovative Lösungen zu schaffen, die exakt auf Ihre Problemstellung passen und Ihnen so Wettbewerbsvorteile ermöglichen.
Open Source. Open Solutions. Open Strategies.
Als Basis für unsere Entwicklungen nutzen wir Open Source Software (OSS), um standardkonforme, offene und stabile Lösungen zu entwickeln und unseren Kunden keine Lizenzkosten aufzulasten. Dabei setzen wir entweder auf bestehende Open-Source-Projekte auf, entwickeln diese weiter und ermöglichen dem Kunden bisher nicht mögliche Funktionen, oder programmieren neue Software-Lösungen mit Open-Source-Bestandteilen ganz nach Kundenbedarf. Dadurch ist es uns möglich, jede Lösung individuell an die Bedürfnisse und Wünsche unserer Kunden anpassen. Auch proprietäre Lösungen anderer Hersteller lassen sich durch die Entwicklung von Schnittstellenprogrammen einbinden und für die Unternehmensprozesse nutzen. Die Software-Entwicklung bildet eine unserer Kernkompetenzen und legt einen wichtigen Grundstein für unser Leistungsangebot.
Freiheit und Transparenz für unsere Kunden
In unseren Entwicklungsteams arbeiten viele hochqualifizierte Mitarbeiter Tag für Tag an den von unseren Kunden benötigten Quellcodes. Die Entwicklung selbst wird genauestens dokumentiert und unseren Kunden nach Abschluss des Projekts zusammen mit allen vorhandenen Quellen zur Verfügung gestellt.
Durch den Einsatz von Open Source und fachgerechte Dokumentation haben Sie die Sicherheit, die Lösungen nach Abschluss des Projektes selber oder mit einem anderen Dienstleister weiter zu entwickeln. Es ist jederzeit sichergestellt, dass die Lösung unabhängig von unserer zukünftigen Firmenstrategie weiter bestehen kann. Diese Sicherheit haben Sie bei proprietärer Software nicht. Das Copyright-Recht behalten wir uns nur für Eigenentwicklungen vor; alle anderen Verwertungsmöglichkeiten können Sie frei für sich nutzen.
Entwicklung individueller Lösungen in Java
Bei der Entwicklung von Individualsoftware setzen wir auf die Programmiersprache Java. Sie bildet die Grundlage für vernetzte Anwendungen und ist ein quasi-Standard für die Entwicklung von Unternehmenssoftware sowie für die Darstellung webbasierter Inhalte. Java-Programme lassen sich flexibel und plattformunabhängig in verschiedensten IT-Umgebungen nutzen.
Java liefert von Haus aus verschiedene flexible Schnittstellen und Open-Source-Bestandteile, die es unseren Entwicklern einfacher machen, sich auf die gewünschten Funktionen zu konzentrieren. Als Basis für eine solche Architektur wird ein Java Anwendungsserver (Application Server) verwendet. Dafür nutzen wir Tomcat oder Glassfish.
Die Umsetzung kann, abhängig von den Anforderungen des Kunden, ganz verschieden ausfallen. Im Folgenden finden Sie unterschiedliche Einsatzgebiete, in denen wir Java einsetzen. So bekommen Sie einen Überblick, was wir mit Java realisieren. Natürlich ist noch viel mehr möglich.
Nutzung der Geschäftslogik mit unterschiedlicher Clients im Unternehmensnetzwerk
Mit dem Spring Framework ist es möglich, die gleichen Serverprozesse über verschiedenste Clients anzusprechen. Dieses kann sowohl eine Webseite, als auch ein Client auf einem Smartphone oder PC sein. So lassen sich komplizierte Client-/Server-Architekturen umsetzen, die bedingt durch die Architektur sehr gut skaliert und verteilt werden können.
Für die Einbindung von Datenbanken verwenden wir das Framework Hibernate. Dadurch sind wir von der darunter liegenden Datenbank weitestgehend unabhängig.
Plattform-unabhängige Programme für heterogene IT-Umgebungen
Sie nutzen im Betrieb eine heterogene Umgebung mit Windows und Linux-Clients und benötigen eine Software-Lösung, die unabhängig von der Plattform ist?
Durch den Einsatz von Java können Sie dasselbe Programm, unabhängig vom verwendeten Betriebssystem, nutzen. So lassen sich Ihre Wartungskosten reduzieren und Probleme mit unterschiedlichen Versionen oder Programmen umgehen.
Kommunikation zwischen unterschiedlichen IT-Systemen
Für die Kommunikation zwischen unterschiedlichen IT-Systemen haben sich Webservices als Standard etabliert. Diese ermöglichen es unterschiedlichen Anwendungen über beschriebene Schnittstellen zu kommunizieren. Durch den Einsatz von Webservice-Programmen kann eine einmal beschriebene Schnittstelle für den Austausch und das Speichern von Daten über das Netz hinweg umgesetzt werden. Die Schnittstellen werden einmal definiert und können für gleiche oder ähnliche Anwendungsfälle wiederverwendet werden.
Einen Spezialfall unter den Webservices bilden die RESTful Webservices. Hierbei werden Informationen unter einem definierten Pfad von einem Webserver verfügbar gemacht. Durch einen Zugriff auf eine URL können die Informationen von jedem angeschlossenen System ausgelesen und verwendet werden. Der Zugriff auf die Daten erfolgt per http, welches besonders für moderne dynamische Webseiten unabdingbar ist.
Schnelle Suche und individuelle Suchfunktionen mit Elasticsearch
Durch den Einsatz von Elasticsearch als Suchsystem sorgen wir für das schnelle und problemlose Auffinden Ihrer Daten unter Berücksichtigung Ihrer individuellen Bedürfnisse. Elasticsearch kann in einen Onlineshop, in eine Website sowie in sonstige Datenbanken eingebunden werden. Gemeinsam mit Ihnen definieren wir die relevanten Felder für die Suchen, die Sie durchführen möchten.
Eine Suchlösung, die mit Elasticsearch umgesetzt wurde, lässt sich über bestehende Java Schnitstellen (application programming interface (API)) in vorhandene Programme einbinden. Die Suchanfragen können somit schneller, performanter und genauer auf die Bedürfnisse angepasst durchgeführt werden.
Datenbank-Entwicklung
Zu jeder Software gehört ein Datenspeicher in Form einer Datenbank. Unsere Datenbank-Architekten stellen Ihnen Ihre individuelle Datenbank angepasst an Ihre Datenmenge und Bedürfnisse zusammen oder bieten Ihnen Hilfestellung bei der Strukturierung Ihrer Daten. Dabei achten wir besonders auf langfristige und skalierbare Architekturen.
Agile Software-Entwicklung – so arbeiten wir
Für unsere Software- Entwicklung setzen wir agile Modelle ein. Dadurch sind wir in der Lage, schnell auf sich ändernde Anforderungen der Kunden zu reagieren. Unsere Entwicklungsteams setzen dabei auf Scrum als Vorgehensmodell. Durch die Unterteilung der Arbeiten in verschiedene Sprints können wir feste Release-Zyklen einhalten und kurzerhand auf Bedürfnisse der Kunden reagieren.
Ihre Schnittstelle zum Entwicklungsteam bildet unser Scrum-Productowner, der dem Kunden individuell pro Projekt zugeteilt wird. Die Kunden haben somit einen zentralen Ansprechpartner für Fragen oder Probleme.
Interessiert?
Unser Spektrum der angebotenen Individualsoftware-Entwicklung reicht von kleinen Projekten, wie einer individualisierbaren Barcode-Lösung für den Einsatz einem DMS, bis hin zu großen Projekten, wie die individuelle Entwicklung eines Onlineshops oder ERP-Systems. Sprechen Sie uns mit Ihren Anforderungen und Wünschen gerne an, gemeinsam finden wir eine Lösung für Sie.