Scroll-Button

Webentwicklung für Enterprise Lösungen

Wir bieten Ihnen ein umfassendes Leistungsspektrum für die Planung, Entwicklung und den Betrieb von Webanwendungen.

Individuell und auf Ihre Bedürfnisse abgestimmt – unsere Arbeit für Sie!

Unter Webentwicklung oder Webprogrammierung versteht man die Entwicklung von Webanwendungen. Hierzu gehören vor allem Webportale, E-Commerce Lösungen (Onlineshops), ERP, CRM, PIM, CMS oder sonstige, individuelle Websysteme. Auch komplexe Websites, die beispielsweise bestimmte Workflows abbilden oder an Fremdsysteme angebunden werden müssen, fallen in den Bereich der Webentwicklung.

Bei der Realisierung von Webanwendungen kommen unterschiedliche Programmiersprachen und Datenbanksysteme zum Einsatz. Die Quellwerke GmbH hat sich auf die Webentwicklung auf Basis von PHP spezialisiert und setzt hierfür konsequent auf etablierte Enterprise Frameworks wie ZEND oder Symfony. Da eine Webanwendung nicht nur aus der serverseitigen Entwicklung besteht, setzen wir für die Frontendentwicklung ebenfalls bewährte Frameworks und Technologien ein. Hierzu zählen zum Beispiel Twitter Bootstrap für Responsive Designs, AngularJS, ExtJS oder, je nach Anforderung, weitere Frameworks. Unser Portfolio umfasst ebenfalls die Datenbank-Entwicklung, wobei wir hierbei nicht auf ein spezifisches Datenbanksystem angewiesen sind. Unsere Lösungen werden so konzipiert, dass das zugrundeliegende Datenbanksystem einfach ausgetauscht werden kann. Die von uns erstellten Webanwendungen erhalten damit eine entsprechende Skalierbarkeit und wachsen mit den Anforderungen.

Unser Handwerkszeug in der Webentwicklung



Folgende Systeme haben wir für unsere Kunden bereits entwickelt

E-Commerce Lösungen

Onlineshops / Webshops

Enterprise-Resource-Planning Systeme (ERP)

Customer-Relationship-Management (CRM)

Content Management Systeme (CMS)

Product Information Management Systeme (PIM)

Multichannel Lösungen

Digital-Asset-Management (DAM)

Online-Portale / Web-Plattformen

Webservices

Middleware Lösungen

Portalserver

M2M Plattformen (Machine 2 Machine Kommunikation)

Online Konfiguratoren

Online Buchungsportale / Jobportale

Schnittstellen

Fullstack-Webentwicklung

Von der View bis zur Datenbank – Wir bieten inhouse Full Stack Development

Die Quellwerke GmbH vereint als ZEND und Symfony Spezialist die konzeptionellen, kreativen und technischen Fähigkeiten für erfolgreiche Webprojekte. Unsere Leistungen decken dabei den "Full Stack" ab. Dies bedeutet, dass sich Experten aus den Bereichen der Softwarearchitektur, Frontend-Entwicklung, Backendentwicklung sowie dem Datenbankdesign, um Ihr Projekt kümmern und Hand in Hand an dessen Erfolg arbeiten. Wir sind dabei nicht auf externe Partner angewiesen, sondern können aufgrund Aus- und Weiterbildung sowie sorgfältiger Auswahl qualifizierter Mitarbeiter, alle Bereiche inhouse abdecken.

Bei der Entwicklung webbasierter Software setzen wir auf etablierte Enterprise Frameworks wie z.B. Symfony. Unsere Software-Architekten schaffen dabei stets belastbare, skalierbare und sichere Fundamente. Unsere Kompetenz in der Webentwicklung liegt in der Realisierung von kundenspezifischen Webanwendungen wie beispielsweise B2B & B2C Webshops, Webportale oder maßgeschneiderte Lösungen zur Erfüllung individueller Digitalisierungsstrategien. Unsere webbasierte Software wird dabei stets mit einem Höchstmaß an Flexibilität, Skalierbarkeit, Sicherheit und Verfügbarkeit versehen, sodass diese langfristige Investitionen darstellen.

Unseren Kunden stehen wir vor einem Projekt beratend, während einem Projekt ausführend und nach einem Projekt betreuend zur Seite. Über ein aktives Projektmanagement können interne und externe Ressourcen geplant und dem Kunden der jeweilige Projektverlauf dargestellt werden. Je nach Anforderungen und Konstellation übernehmen wir auch die Koordination von weiteren Agenturen, Dienstleistern oder Herstellern.

User Interface Design

Rich Internet Applications (RIAs) stehen einer Desktop-Anwendung in nichts nach.

Ermöglicht wird dies durch Funktionalitäten wie z.B. Drag & Drop, etablierten Tastenkombinationen oder der lokalen Speicherung von Informationen direkt im Browser (Local Storage). Wir setzen hierzu auf innovative, nachhaltige UI-Frameworks wie z.B. ExtJS, Twitter Bootstrap und / oder SCSS.

Enterprise Architekturen

Symfony und ZEND sind die führenden Application Frameworks für unsere Webentwicklung, mit denen wir z.B. serviceorientierte Architekturen unter Verwendung des Model-View-Controller Pattern realisieren. Wir programmieren ausschließlich objektorientiert, trennen strikt die Logik von der Präsentation und versionieren unsere Webanwendungen via GIT. Das Resultat sind hochperformante, clusterfähige und skalierbare Webanwendungen.

Datenbanken

Datenbanken sind die Basis einer Webanwendung und sollten äußerst sorgfältig geplant werden. Unsere Datenbank-Spezialisten kümmern sich um die Datenbank-Modellierung und erstellen relationale Modelle. Um unabhängig von dem zugrundeliegenden Datenbanksystem (MySQL, MariaDB, SQLite, Microsoft SQL Server, Oracle, DB2, etc.) zu bleiben, abstrahieren wir den Datenbankzugriff. Weiterhin kommen, je nach Anforderung, etablierte ORM Frameworks (Object Relational Mapper) wie z.B. Doctrine zum Einsatz. 

Schnittstellen

In der Webentwicklung kommt es häufig vor, dass externe System wie z.B. SAP, CRM, ERP, Datev über Schnittstellen angebunden und angesprochen werden müssen. Dies kann einerseits über Webservices (z.B. SOAP oder REST) oder durch einen Import-Export Prozess erfolgen.

Darüber hinaus realisieren wir Machine-to-Machine Interfaces via Bluetooth, WiFi oder RS232. 

Unsere Leistungen im Bereich der Webentwicklung im Überblick

Unterstützung bei der fachlichen Spezifikation Ihrer Webanwendung

Aus unserer Erfahrung heraus bieten wir sehr gerne Pflichten- bzw. Lastenheftworkshops an, in denen wir gemeinsam mit Ihnen die Fachschale der zu erstellenden Webanwendung definieren.

Unterstützung bei der technischen Konzeption Ihrer Webanwendung

Die Auswahl der richtigen Technologie ist ein wichtiger Aspekt für den Erfolg Ihrer Webanwendung. Hierbei beraten wir Sie ausgehend von unserer langjährigen Erfahrung.

Erstellung eines Lastenhefts / Pflichtenhefts

Auf Wunsch übernehmen wir die Erstellung eines Lasten- oder Pflichtenhefts für Sie. Eine Pflichtenhefterstellung übernehmen wir auch dann, wenn wir die Anwendung nicht selbst realisieren sollen.

Frontend Entwicklung Ihrer Webanwendung

Hohe Usability, Responsive Design und User Experience spielen eine tragende Rolle bei der Entwicklung eines Frontends. Unsere UI Experten helfen Ihnen das Optimum Ihrer Webanwendung herauszuholen.

Backend - Entwicklung Ihrer Webanwendung

Auch im Backend ist eine hohe Benutzerfreundlichkeit von zentraler Bedeutung. Hinzukommen Themen wie Sicherheit, Verfügbarkeit und Skalierbarkeit. 

Schnittstellen / Definition & Systemintegration

Für die Interaktionen mit Drittsystemen müssen Schnittstellen definiert und implementiert werden. Hierfür kommen unter andrem Webservices wie zum Beispiel SOAP oder REST zum Einsatz.

Datenbanken / Datenbankdesign

Der Aufbau einer Datenbankstruktur muss zu 100 % durchdacht und konzipiert sein. Losgelöst vom Datenbanksystem designen wir Datenbankstrukturen, die einen hohen Normalisierungsgrad erreichen.

Outsourcing, Schulung & Consulting

Unsere Expertise in der Webentwicklung bieten wir Ihnen auch als externe Agentur an. Wir beraten Ihre Entwicklungsabteilung, schulen diese in neuen Technologien oder unterstützen bei der Programmierung.

Konzeption & Design webbasierter Software

Intuitive Usability sowie eine herausragende User Experience sind der Schlüssel für erfolgreiche Webapplikationen

Vor einer jeden Webentwicklung steht eine ausführliche Konzeptionsphase an. Technik, Usability, User-Experience und Design müssen in einem ganzheitlichen Konzept in Einklang gebracht werden. Erst danach beginnt die eigentliche Implementierung.

Individuelle Webanwendungen sind Maßanfertigungen und müssen als solche gut geplant, strukturiert und designed werden. Gemeinsam mit Ihnen erarbeiten wir hierfür ein schlüssiges, ganzheitliches Konzept sowie ein optimales Design (User Interface).

Seit 2004 erstellen wir für unsere Kunden webbasierte Software und haben damit umfangreiche Erfahrung in deren Realisierung. Diese langjährige Erfahrung ermöglicht es uns unsere Kunden bestmöglich zu beraten. Darüber hinaus übernehmen wir auf Wunsch die fachliche und technische Spezifikation, erstellen Machbarkeitsanalysen, Prototypen, Mockups, Wireframes oder schreiben Lasten- und / oder Pflichtenhefte.

In der ersten Projektphase geht es primär um die Aufnahme Ihrer Anforderungen und Prozesse. In enger Zusammenarbeit ermitteln wir den gewünschten Funktionsumfang und halten diesen in einem Pflichtenheft fest. Anhand dieser Informationen erstellen wir Ihnen ein passgenaues Datenbank- und Anwendungskonzept. In dieser Phase beraten wir Sie aktiv und analysieren Optimierungspotenziale.

Für die Analyse, Planung und Gestaltung Ihres Webprojekts
können wir folgende Unterstützung bieten

Machbarkeitsanalysen

In den Bereich einer Machbarkeitsanalyse fallen z.B. Fragestellungen wie:

  • Ist Ihr Webprojekt technisch machbar?
  • Ist Ihr Webprojekt wirtschaftlich tragbar (z.B. Kostenrahmen, Finanzierung, Förderung)?
  • Welche Ressourcen werden benötigt (z.B. Mensch & Technik)?
  • In welchem Zeitrahmen lässt sich das Projekt realisieren?
  • Welche rechtlichen Rahmenbedingungen müssen beachtet werden?
  • ...

Proof of Concept (PoC)

Bei einem Proof of Concept geht es um den Nachweis (proof), ob Ihr Projekt (concept) in der Praxis umsetzbar ist. 

  • Ist die ausgewählte Technologie geeignet?
  • Lassen sich beteiligte Systeme zusammenführen?
  • Interagieren bzw. harmonieren beteiligte Subsysteme?
  • Wird eine ausreichende Performance erreicht?
  • Wird der gewünschte Output generiert?
  • ...

Prototyping

Prototyping hat zum Ziel, schnell zu ersten Ergebnissen zu gelangen, um frühzeitig zu erkennen, ob sich eine Anwendung für das Erreichen seiner Ziele eignet oder nicht. Vorteile von Prototyping sind z.B.:

  • Geringer initialer Kostenaufwand
  • Kurzer Entwicklungszyklus, schnelles Ergebnis
  • Frühzeitige Erkennung von Seiteneffekten oder Fehlfunktionen
  • Anforderungen können besser spezifiziert werden
  • Ggf. Wiederverwendbarkeit des produzierten Quellcodes
  • ...

Fachliche & funktionale Beratung

Gemeinsam besprechen wir Ihre Anforderungen, Ziele und Wünsche. Wir beraten Sie dabei stets proaktiv, um das volle Potenzial Ihrer Webanwendung herauszuholen.   

  • Wurden alle Faktoren einbezogen?
  • Gibt es mögliche Synergien?
  • Lassen sich Kosten / Aufwände einsparen?
  • Gibt es Schwachstellen im Konzept?
  • ...

Erstellung von Lastenheft und / oder Pflichtenheft

Gerne übernehmen wir auch die Ausformulierung von Lasten- und / oder Pflichtenheften für unsere Kunden. Wir lassen dabei sowohl die fachlichen als auch die technischen Anforderungen einfließen.

  • Erstellung eines Pflichtenheft - Entwurfs
  • Erstellung eines Lastenheft - Entwurfs
  • Qualitätssicherung von Pflichten- und Lastenheften
  • Technische Spezifikation
  • Fachliche Spezifikation
  • ...

Software Architektur & Schnittstellendefinition

Sowohl Häuser als auch (webbasierte) Software benötigen einen guten Architekten, der die Basis für die erwartete Traglast schafft. In unserem Team kümmern sich Software- & Datenbankarchitekten um das Fundament Ihrer Webanwendung.

  • Klassenmodellierung (z.B. mit UML)
  • Normalisierte Datenbankmodelle und Datenbankabstraktion
  • Skalierbarkeit
  • Verteilung auf mehrere Server (Clustering)
  • Verwendung etablierter Entwurfsmuster (z.B. Model-View-Controller)
  • Service orientierte Architekturen (SOA)

Mockups & Wireframes

Unter einem Wireframe (Drahtgerüst) versteht man einen sehr frühen konzeptionellen Entwurf einer Website oder eines Software-Frontends. Dabei spielen die Gestaltung und Funktion noch keine Rolle. Das Augenmerk liegt auf der Anordnung von Elementen und der Benutzerführung (UX, Benutzererfahrung).

  • Erstellung von Mockups
  • Erstellung von interaktiven Wireframes
  • Erstellung von Klick-Dummies

User-Experience (UX) und User-Interface (UI) Design als Erfolgsfaktoren Ihrer Webanwendung

Selbst eine perfekte technische Umsetzung eines Projekts steht und fällt mit dem Layout, Design und der Benutzerführung. Im Generellen wird hierbei von der Usability einer Webanwendung gesprochen. Der Begriff User Experience erweitert diesen Begriff um emotionale und ästhetische Aspekte wie ein ansprechendes, „faszinierendes” Design.

User Experience beschreibt somit das komplette Nutzungserlebnis, welches ein User bei der Nutzung eines digitalen Produktes (Website, Webanwendung, Mobile App, Webshop...) erfährt. Das Nutzungserlebnis wiederum ist ein wesentlicher Faktor der Vertrauensbildung. Eine gute Usability und eine gute User Experience sind Grundlage für ein gutes User Interface und sorgen dafür, dass der User schnell und hindernisfrei an sein Ziel gelangt und dabei gleichzeitig Spaß an der Anwendung hat. Man spricht dabei vom so genannten "Joy of use".

Wie erreicht man eine gute Usability und User Experience?

Diese Frage lässt sich leicht beantworten: "Indem man den Benutzer analysiert, versteht und in den Fokus setzt." Der Benutzer ist in allen Phasen der Entwicklung konsequent einbezogen und dessen Bedürfnisse / Anforderungen werden in den Mittelpunkt gestellt (User-Centered Design).

UI-Design: Die Schnittstelle zw. Mensch & Maschine

Das User-Interface-Design befasst sich mit der Gestaltung von Benutzeroberflächen und ist damit die Schnittstelle zwischen den Anwendern und der Technik. Ein UI-Designer beschäftigt sich mit Layouts, Farben, Typographie, interaktiven Schaltflächen (Buttons), Bildsprache, Illustration oder Videoelementen.

Die Disziplinen UX Design und UI Design im Vergleich

Obwohl man UX und UI Design fachlich unterscheiden kann, gehören beide Disziplinen doch zusammen. Ohne ein gutes UI wird es keine gute UX geben und umgekehrt. UX- und UI-Designer arbeiten bei uns daher Hand in Hand um das Optimum Ihres Projekts herauszuarbeiten.

Agiles Projektmanagement in der Webentwicklung

Wir arbeiten wahlweise nach SCRUM oder Kanban. Agilität leben wir in allen Projektphasen

Wir arbeiten agil und setzen hierfür ein webbasiertes Projektmanagement Tool ein, in welches unsere Kunden aktiv eingebunden sind. Unser agiles Projektmanagement arbeitet projektspezifisch nach SCRUM oder der Kanban Methode.

Projektplanend, -begleitend und -nachbereitend setzen wir auf ein webbasiertes Projektmanagement Tool, in welches unsere Kunden aktiv mit eingebunden werden können. Aufgrund dieser Kollaboration kann sich der Kunde jederzeit über den Projektfortschritt informieren, neue Tickets erstellen oder zur Freigabe gekennzeichnete Tickets prüfen und als erledigt markieren. Weiterhin hat der Kunde Zugriff auf Dokumentation, Diskussion und Zeitplanung. Da alle Informationen über Active Collab (= Projektmanagement-Software) zusammenlaufen, ergibt sich ein flexibler, schlanker und transparenter Entwicklungsprozess. Das Projektteam organisiert sich dabei stets selbst und sorgt somit für einen geringen Bürokratischen Aufwand.


SCRUM zertifiziert

Selbstverständlich haben wir uns intensiv mit der Thematik agiles Projektmanagament befasst und weitergebildet. Dementsprechend verfügen wir über umfangreiches Wissen und Erfahrung.

Folgende Zertifizierungen haben wir absolviert:

Zertifizierung
SCRUM Foundation

Zertifizierter
SCRUM Product Owner

Zertifizierter
SCRUM Master


Extreme Programming (XP)

Sofern die Anforderungen an ein Projekt noch nicht hinreichend bekannt sind, mit der Umsetzung jedoch bereits begonnen werden soll, bietet sich die Methodik des Extreme Programming an. Durch kurze, fortlaufende Entwicklungszyklen ist es dem Kunden möglich, sich jederzeit in den Projektverlauf einzuklinken und kurzfristige Änderungen vorzunehmen. Hierdurch erhält der Kunde eine stets den aktuellen Anforderungen entsprechende Lösung.

Extrem Programming bietet sich somit insbesondere dann an, wenn sich die Anforderungen im Laufe der Entwicklung mit großer Wahrscheinlichkeit ändern und darauf kurzfristig reagiert werden muss. Das Vorrangige Ziel eines Extreme Programming ist es, schnell eine funktionsfähige, wenn auch nicht vollständige, Anwendung zu erhalten. Das Augenmerk liegt also auf den Kernfunktionen, Nice To Have oder Sekundär-Features werden zurückgestellt.

Tests & Qualitätssicherung in der Webentwicklung

Hohes Maß an Sicherheit und Datenkonsistenz

Wir sichern die Qualität unserer Lösungen bereits während der Entwicklung. Hier setzen wir moderne Softwaretestverfahren wie Test Driven Development und Automated Unit Tests ein.

Der Prozess der Qualitätssicherung wird leider oftmals nur rudimentär durchlaufen und führt dadurch häufig zu unnötig schlechteren Lösungen. Wir möchten uns von diesem halbherzigen Ansatz abheben und unsere Websites, Webanwendungen und Mobile Apps fortwährend in der Qualität sichern. Dem klassischen Ansatz, eine Anwendung erst nach deren Fertigstellung zu testen, steht die agile Qualitätssicherung gegenüber. Die agile Qualitätssicherung führt zu einer deutlich verbesserten und zielführenderen Zusammenarbeit zwischen dem Entwicklungsteam und dem QS-Team. Das QS Team schlüpft dabei in die Rolle des Kunden und vertritt damit dessen Ansprüche und Sichtweisen. Die gewonnenen Erfahrungen und Resultate werden sodann mit dem Entwickler-Team abgestimmt, um die für den Kunden optimale Lösung zu erarbeiten.

Was bedeutet Qualitätssicherung überhaupt?

Definitionen für Qualitätssicherung gibt es viele. Wir verstehen darunter die stetige Überprüfung, Identifizierung sowie Lösung von Softwarefehlern mit dem Ziel der Bereitstellung einer einwandfreien Website, Webanwendung oder Mobile App. Als Fehler sind dabei nicht nur Fehler technischer Natur, sondern auch Mangelhaftigkeit an Usability zu verstehen.

Test Driven Development (TDD)

Bei einem Test-Driven-Development (kurz TDD) oder ins Deutsche übersetzt: testgetriebene Entwicklung, werden Software-Tests vor der eigentlichen Programmierung der späteren Lösung entwickelt. Der Ablauf dieser Methode ist zyklisch und inkrementell. D.h. die Anwendung wird Schritt für Schritt entwickelt und immer wieder gegen zuvor erstelle Testfälle geprüft. Nach Bestehen eines Testfalls wird die Anwendung um weitere Funktionalitäten erweitert und durchläuft danach erneut einen Test. TDD wird häufig bei der agilen Entwicklung angewendet und verfolgt das Ziel der Qualitätsoptimierung von Software - in unserem Fall webbasierter Software.

Vorteile von TDD

  • Qualitativ hochwertige Anwendungen
  • Weniger wartungsintensiv & fehlerunanfälliger 
  • Vereinfachte, schnellere Fehleranalyse & Wartung
  • Vermeidung von Redundanzen & nicht benötigten Quellcodes

Automated Unit Tests

Testautomatisierung (Automated Unit Test) ist ebenfalls ein fester Bestandteil agiler Qualitätssicherung und kann Entwicklungsprozesse erheblich optimieren. Obwohl der initiale Aufwand zunächst höher ausfällt, hat sich dieser Kostenfaktor aufgrund der daraus resultierenden Zeitersparnis für Tests schnell amortisiert. Im Gegenzug zur TDD Methode werden bei Automated Unit Tests begleitend zur Softwareentwicklung (in unserem Fall Webentwicklung), stetig weitere Tests generiert und dem Testzyklus hinzugefügt.

Vorteile von Automated Unit Tests (Testautomation)

  • Wiederholbarkeit & Genauigkeit im Vgl. zu manuellen Tests
  • Testausführung ohne manuelles Eingreifen
  • Langfristige Kosten- & Zeitersparnis
  • Verkürzung von Entwicklungszeiten

Backup-Strategien

Zur Qualitätssicherung innerhalb der Webentwicklung gehört auch die Planung und Umsetzung von Backup- sowie Fallback Strategien. Unsere Webanwendungen sind von ihrer Architektur her so aufgebaut, dass sie auf mehrere Systeme (Server) verteilt werden können. Dies ermöglicht es einerseits mit steigenden Anforderungen zu skalieren (Performance Optimierung) und andererseits einen Ausfall eines Servers abzufangen. Ein Heart-Beat-System oder Cluster könnten hier als Beispiele angeführt werden. Darüber hinaus planen und realisieren wir automatische, cronjob-gesteuerte Backups von Datenbanken und Anwendungsdaten. Auch eine Versionierung Ihrer Webanwendung stellt eine Form des Backups dar. Wie Sie Ihre Daten und Anwendungen am besten absichern und für ein Höchstmaß an Verfügbarkeit sorgen, erörtern wir Ihnen gerne in einem persönlichen Gespräch.

Entwicklung von Backup- & Verfügbarkeitsstrategien

  • Automatische Backups von Datenbanken
  • Automatische Backups von Anwendungsdaten
  • Einrichtung von Fail-Over Systemen
  • Versionierung von Webanwendungen

Integrationstests

Nach erfolgreich verlaufenen Einzel- bzw. Modultests steht der Test des Gesamtsystems an. Bei diesen sogenannten Integrationstests wird das System erstmals mit allen Komponenten und deren Interaktion bzw. Abhängigkeiten geprüft. Integrationstests müssen jedoch nicht zwangsläufig erst am Ende eines Projekts erfolgen. Sobald ein weiteres Modul einer Webanwendung fertig implementiert wurde, kann ein anschließender Integrationstest bereits das Zusammenspiel mit anderen Modulen überprüfen.

Vorteile von Integrationstests

  • Fehler bei der Interaktion aller Module identifizieren
  • Vorhandene Unit Tests können weiterhin verwendet werden
  • Sicherstellung der Gesamtfunktionalität
  • Kompatibilität von Schnittstellen sind prüfbar

Analyse, Optimierung, Absicherung von Webapplikationen

Wir durchleuchten Ihre Webanwendung, zeigen Optimierungspotenziale auf und ergreifen Maßnahmen um die Sicherheit und Stabilität zu erhöhen

Wir analysieren Ihre bestehenden PHP-Anwendungen und zeigen Optimierungspotenziale bzw. Sicherheitsrisiken auf um die Stabilität und Performance Ihrer webbasierten Software verbessern zu können.

  • Schwachstellenanalyse von Webanwendungen
  • Optimierungspotenziale aufdecken & nutzen
  • Mehr Performance und Stabilität durch Quellcodeanalyse und Refactoring
  • Benutzerfreundlichkeit steigern
  • Wartbarkeit durch Entschlackung des Quellcodes erhöhen
  • PHP Migrationen

Da auch Webanwendungen dem stetigen technologischen Fortschritt unterliegen, sollten bestehende Webapplikationen von Zeit zu Zeit einem Sicherheits- bzw. Optimierungs-Check unterzogen werden. Insbesondere sollte dabei großer Wert auf das Thema Sicherheit in Webanwendungen gelegt werden. Neue Angriffsvektoren und technische Möglichkeiten erfordern entsprechende Gegenmaßnahmen.

Lassen Sie Ihr System durch uns überprüfen, wir decken Schwachstellen auf und zeigen Ihnen, wie Sie diese effizient beseitigen können. Eine Quellcodeanalyse kann darüber hinaus zu Verbesserungen hinsichtlich Performance und Stabilität führen. In diesem Zuge ergeben sich möglicherweise ebenfalls Chancen, die Benutzerfreundlichkeit zu erhöhen.

Quellcodeanalyse

Schwachstellenanalyse

Optimierungsanalyse

Webentwicklung - Systemintegration

An- und Einbindung unserer Weblösungen an / in Ihre IT Infrastruktur

Unsere Lösungen integrieren wir in Ihre bestehende IT-Infrastruktur. Egal ob eine Anbindung an ein Active Directory (LDAP) oder eine REST Schnittstelle realisiert werden soll, unsere erfahrenen Softwareentwickler unterstützen Sie bei der nahtlosen Integration.

Je nach Anforderung müssen die Anwendung sowie zugehörige Webservices in die lokale Systemlandschaft eingebettet werden. Unsere Webagentur hilft Ihnen bei all diesen Integrationsaufgaben. Wir setzen für Sie die Laufzeitumgebung für die Webanwendung entweder direkt auf vorhandener physikalischer Hardware oder als virtuelle Maschine auf. Sollte die Integration auf einem Online-Server nötig sein, können wir dies ebenfalls durch unsere angemieteten Managed Server abdecken. 

Staging: Development ⇔ Test ⇒ Production

Für Webprojekte ab einer bestimmten Größe und Komplexität, lohnt sich das Aufsetzen eines Staging Systems. Unter einem Staging System (Staging Environment) versteht man eine Serverumgebung innerhalb derer eine (Web-)Anwendung unter annähernd realen Bedingungen getestet werden kann. Im Idealfall besteht eine Staging Instanz aus der gleichen Hard- & Softwareumgebung wie das finale Serversystem unter der die Webanwendung live betrieben werden soll.

Ziel des Staging ist die Simulation und Überprüfung einer Webanwendung, unabhängig von der Entwicklungsumgebung. In der Regel werden drei Staging Instanzen betrieben: Development, Test und Production. Bei Bedarf können weitere Instanzen zwischengeschaltet werden. 

Dev-Environment

Das Dev- bzw. Development Environment (oder zu Deutsch: die Entwicklungsinstanz), ist die Arbeitsversion der Webanwendung. Diese kann auf einem lokalen Server oder Desktop-PC liegen und ist hauptsächlich für Entwickler gedacht. Die Datenbasis ist in der Regel gegenüber der Live-Instanz stark reduziert. Arbeiten mehrere Entwickler an dem Projekt, wird zusätzlich eine Versionierungssoftware eingesetzt. In unserem Fall setzen wir dabei auf GIT, um Änderungen und Updates zu synchronisieren.  

Arbeitsversionen werden häufig mit Compiler und Debugging-Tools betrieben und sind damit ausschließlich in dieser Umgebung lauffähig.

Test-Environment

Das Test-Environment stellt einen ausgewählten Kreis an Testusern, dies können Projektmitarbeiter, externe Tester oder der Kunde selbst sein, die Webanwendung in einer dem finalen System äquivalenten Umgebung zur Verfügung. Die Daten sind dabei häufig mit denen der Live Instanz identisch oder zumindest annähernd vergleichbar. Änderungen oder Erweiterungen aus der Dev-Instanz werden auf die Test-Instanz übertragen, so dass die Testgruppe diese prüfen und Einfluss darauf nehmen kann. 

Die Anwendung läuft bei einer Test-Instanz losgelöst von Debugging-Tools oder Compilern. Die Anwendung läuft somit autark und simuliert den Live-Betrieb.

Prod-Environment

Das Prod-Environment (Productive) ist die Live-Instanz einer Webanwendung. Auf diesem System arbeiten die "echten" Kunden und Mitarbeiter des Betreibers. Der Datenbestand ist hierbei selbstverständlich vollumfänglich. Die auf dem Test-Environment geprüfte und freigegebenen Funktionen können im Rahmen des Lifecycle-Managements auf die Live-Instanz transportiert (deployed) werden.

Im Gegenzug zum Deploy von Dev nach Test ist bei dem Transport von Test nach Prod keine bidirektionale Synchronisation vorgesehen. D.h. vom Prod System erfolgt kein Transport zurück zum Testsystem.

Individuelle Schulung Webentwicklung

Sie möchten in die Webentwicklung einsteigen oder benötigen ein spezifisches Symfony Framework Training?

Wir führen individuelle Schulungen und Workshops für unsere Kunden durch. Bei der Durchführung dieser Schulungen richten wir uns nach den Erfordernissen und Möglichkeiten unserer Kunden. Wir schulen entweder direkt bei Ihnen vor Ort, in unseren Schulungsräumen oder auch Online per Videokonferenz.

Unsere Expertise auf dem Gebiet der Webentwicklung, Content Management Systemen und der Mobile App Entwicklung geben wir gerne in Form von Schulungen bzw. Workshops weiter. Sie profitieren von unserer langjährigen Erfahrung und praxisorientierten Beispielanwendungen.

Wir verstehen uns nicht als Seminaranbieter, sondern bieten Schulungen bzw. mehrtägige Workshops auf individuelle Nachfragen hin an. Dadurch können wir die Trainingsinhalte exakt auf Ihre Bedürfnisse ausrichten. Wir unterstützen Einsteiger wie auch Fortgeschrittene Anwendergruppen gleichermaßen. Ebenso sind wir flexibel was den Veranstaltungsort angeht. Gerne führen wir das Training in Ihren eigenen 4 Wänden, in unserem Seminarraum oder an einem neutralen Veranstaltungsort durch.

Sollten Sie Interesse an einem bestimmten Training haben, zögern Sie nicht uns anzusprechen. Wir erstellen Ihnen gerne ein individuelles Trainingsangebot.

Bereits durchgeführte Schulungen / Workshops:

  • ZEND Framework 2 Schulung
  • Symfony Schulung
  • GIT Schulung
  • Pimcore Workshop
  • TYPO3 Schulung
  • Cordova Schulung
  • ....

weitere Schulungen bieten wir Ihnen gerne auf Anfrage, individuell auf Sie abgestimmt, an.

Schulung für unsere (Ihre) Lösungen

Selbstverständlich übergeben wir unsere individuellen Webentwicklungen nicht ohne eine entsprechende Einweisung oder Schulung an unsere Kunden. Je nach Projektgröße, Anforderung oder Komplexität unterscheiden wir dabei zwischen einem Training für Anwender und einer Schulung der Administratoren. 

Ausführliche Dokumentation von Webapplikationen

Eine Blackbox gehört in ein Flugzeug, nicht aber in eine Webanwendung. Wir dokumentieren unsere Lösungen so, dass sie stets wartbar bleiben.

Vollständige und verständliche Dokumentationen von Webanwendungen sind von enormer Wichtigkeit. Zum einen hilft Ihnen eine gute Dokumentation das Projekt ggf. in Eigenregie weiterzuführen oder an eine andere Webagentur weiterzugeben. Darüber hinaus vereinfacht sie das Hinzuziehen weiterer Entwickler, ohne diese aufwändig und zeitintensiv einarbeiten zu müssen.

Dokumentationen können auf unterschiedliche Art und Weise erstellt werden. Häufig werden diese als Word oder PDF Dateien erstellt und auf einem Netzwerkspeicher abgelegt. Dynamischer wird das Ganze, wenn die Dokumentation in Form eines Wiki-Systems fortlaufend gepflegt wird. Bei der Entwicklung und Dokumentation von APIs ( Application Programming Interface oder Deutsch: Programmierschnittstelle ) setzen wir häufig auch das Open Source Framework Swagger ein.

Egal in welcher Form Ihre Dokumentation auch immer vorliegt oder erstellt werden soll, wichtig ist, dass sie überhaupt vorhanden ist. Gerne übernehmen wir für Sie diese oftmals nervige Aufgabe. Idealerweise entsteht eine Dokumentation nicht erst nach Abschluss eines Projekts, sondern bereits vorher und projektbegleitend.

Wir unterstützen Sie unter anderem bei:

  • Quellcode - Dokumentation
  • API - Dokumentation
  • Benutzerhandbuch
  • Schnittstellendefinition
  • Dokumentation des Datenbankdesigns
  • Technische Spezifikation
  • Definition der Laufzeitumgebung
  • ...

Sie Haben Fragen zum Thema Webentwicklung?

Gerne stehen wir Ihnen als qualifizierte Internetagentur für Ihr Projekt zur Verfügung. 
Wir erstellen Ihnen ein individuelles, auf Ihre Bedürfnisse abgestimmtes Angebot.