Abstraktionen in der Entwicklung von Standardsoftware am Beispiel einer Energieeffizienz- Lösung André von Falkenburg ITC Internet-Trade-Center AG Ostra-Allee 9 D-01067 Dresden E-Mail: a.v.falkenburg@itc-ag.com Web: www.itc-ag.com Tel.: +49 (0) 351 320 17 600
Agenda In der Softwareentwicklung steht man immer wieder vor der Entscheidung entweder eine Standardsoftware zu realisieren oder ein Dienstleistungsgeschäft mit Individualentwicklungen aufzubauen. Da für beide Varianten sowohl entscheidende Vorund Nachteile existieren, kann jedoch auch ein Mittelweg gewählt werden. Die Vorlesung soll gezielt Möglichkeiten aufzeigen, wie solch ein Mittelweg aussehen kann. Um die Lösungswege zu veranschaulichen wird auf eine existierende Lösung aus dem Bereich Energieeffizienz zurück gegriffen. Agenda Kurzportrait ITC Energiemanagement Entwicklungsansatz
Agenda Kurzportrait ITC Energiemanagement Entwicklungsansatz
ITC AG Kurzportrait Gründung: 1997 Unternehmenssitz: Dresden Mitarbeiter: Kernkompetenz: Branchenfokus: 50 MA Portal-Software EVU, Energiedienstl., GHD-Sektor ITC PowerCommerce Die Standardsoftware-Suite modulares Portalbaukasten-System Plattform für individuelle Portallösungen Standard-Adapter für führende IT-Systeme
Professionelle Portallösungen für + Customer Care Online-Service-Portale Prozess-Automatisierung Kundengewinnung Kundenbetreuung + + Smart Metering Visualisierung & Analyse Strom, Wärme, Gas usw. Erzeugung & Verbrauch Energiemanagement Gebäudeautomation Heimvernetzung & GA HLK, Licht, Sicherheit Energieeffiziente Funktionen hardware-/systemneutral Prozesse + Preis- & Tarifvergleich + Anmelden & Vertrag abschließen + Zählerstand melden + Abschlag ändern + uvm. Beratung Konzeption Entwicklung Implementierung Support
Professionelle Portallösungen für + + + Customer Care Online-Service-Portale Prozess-Automatisierung Kundengewinnung Kundenbetreuung Smart Metering Visualisierung & Analyse Strom, Wärme, Gas usw. Erzeugung & Verbrauch Energiemanagement Gebäudeautomation Heimvernetzung & GA HLK, Licht, Sicherheit Energieeffiziente Funktionen hardware-/systemneutral Highlights + Reporting + Kennzahlen + Aggregation + Benchmarking + Alarmierung + Echtzeitdaten + uvm. Beratung Konzeption Entwicklung Implementierung Support
Powerline Funk TCP/IP Funk TCP/IP Professionelle Portallösungen für + Customer Care Online-Service-Portale Prozess-Automatisierung Kundengewinnung Kundenbetreuung Hersteller, Systeme: + Smart Metering Visualisierung & Analyse Strom, Wärme, Gas usw. Erzeugung & Verbrauch Energiemanagement + Gebäudeautomation Heimvernetzung & GA HLK, Licht, Sicherheit Energieeffiziente Funktionen hardware-/systemneutral Beratung Konzeption Entwicklung Implementierung Support
Agenda Kurzportrait ITC Energiemanagement Entwicklungsansatz
Energiemanagement im Industrie- & Gebäudesektor? Gesamtenergieverbrauch? Effizienz? Anteile eingesetzter Energieträger? Einsparpotenziale? Hauptverbraucher
Energiemanagement im Industrie- & Gebäudesektor ITC PowerCommerce EnMS Portalsoftware für professionelles Energiemonitoring & -management Bereitstellung als SaaS-Lösung: niedrige Systemkosten und geringer Einrichtungsaufwand standortübergreifende Speicherung, Auswertung und Überwachung von Energiedaten Einsatz in Industrie, Gewerbe, Handel und in Kommunen diverse Importmöglichkeiten von energierelevanten Daten Alles aus einer Hand: Installation + Fernauslesung + Portal Hinweis Gemäß den Anforderungen der ISO 50001
ITC PowerCommerce EnMS: Funktionen Import CSV-Upload Webservice Schnittstellen zu führenden IT-Systemen Manuelle Eingabe von Zählerständen Dienstleister Transparenz in Verbrauch und Energieperformance Visualisierung Historische Verbrauchsdaten als Linien- o. Säulendiagramm Vergleichsfunktion Vergleich mit anderen Zählern, Vorperioden o. Ø-Werten Kennzahlen Konfiguration, Berechnung und Darstellung von Kennzahlen Alarmierung automat. Benachrichtigung bei Extremwerten Budgetierung Verwaltung von geplanten Verbrauchswerten ISO 50001-Assistent Anleitung ( Schritt für Schritt ) mit Dokumentationsvorlagen
Smart Metering: Inhouse-Portale E.ON Thüringer Energie AG Home EnergieCockpit Smart Meter LAN Momentanleistung ITC PowerCommerce Embedded Software Verbrauchshistorie
Smart Metering: Inhouse-Portale swb AG Historie USB-Stick Tarifzonen ITC PowerCommerce Portable Software
Einspeiser: Online-Portale Photovoltaik
Einspeiser: Online-Portale Kraft-Wärme-Kopplung
Smart Metering: Messdaten im Kundenportal Variante 1: Klassische ZFA Inhouse Cloud TCP/IP GSM/GPRS UMTS ISDN Powerline ZFA EDM Kundenportal Historisch
Smart Metering: Messdaten im Kundenportal Variante 2: Klassische ZFA + Livedaten Inhouse Cloud TCP/IP GSM/GPRS UMTS ISDN Powerline ZFA EDM Kundenportal Historisch Livedaten
Smart Metering: Messdaten im Kundenportal Variante 3: Lokale Datenhaltung + lokaler Zugriff Inhouse Cloud TCP/IP GSM/GPRS UMTS ISDN Powerline ZFA EDM Kundenportal Historische Werte + Livedaten
Smart Metering: Messdaten im Kundenportal Variante 4: Lokale Datenhaltung + lokaler Zugriff + embedded Software Inhouse Cloud TCP/IP GSM/GPRS UMTS ISDN Powerline ZFA EDM Kundenportal Historische Werte + Livedaten Embedded Software Für lokalen Zugriff auf Messdaten durch Kunden; Verbindung mit Online- Kundenportal möglich
Smart Metering: Messdaten im Kundenportal Variante 5: Fileupload durch Anwender & Onlineauswertung Inhouse Cloud Ferrariszähler (incl. microsd-datenlogger) Fileupload in das Kundenportal durch den Kunden/Anwender (SSL) ZFA EDM Kundenportal Historisch Werte
Einzelraumregelung Heizungssteuerung Definition Einzelraumregelung (ERR) Einzelraumregelung heißt die richtige Temperatur, am richtigen Ort, zur richtigen Zeit! Anwendung: Räume mit unterschiedlichen Nutzungszeiten (Wohneinheiten in MFH, EFH, Schulen, Bürogebäude, Hotels, Gaststätten)
Einzelraumregelung Heizungssteuerung Systemkomponenten Portal-Software LAN-Gateway Wand-Thermostat Tür-/Fensterkontakt Thermostat App Online-Shop Eco-Taster Zwischenstecker Starter-Set
Portal-Lösungen rund um den Verbrauch App s Post DMS Print PC/MAC TV (W)LAN E-Mail Smart-Displays Powerline Gateways / Logger Zähler ERP EDM Rechenzentrum Smart-Phones USB-Stick Internet Nutzer Inhouse Abnahmestelle
Agenda Kurzportrait ITC Energiemanagement Entwicklungsansatz
Bestandteile Kunde n Kunde 2 Kunde 1 Ansicht Prozesse Schnittstellen Ansicht 1 Prozess 1 Schnittstelle 1 Ansicht 2 Prozess 2 Schnittstelle 2 Ansicht n Prozess n Schnittstelle n Datenmodell
Analyse - Ansichten Ansicht Ansicht 1 Templates CSS Funktionen (JS, ) Clientvalidierung Ressourcen (Img, Schriftarten, Dokumente, ) Technologie (Browser, App,..)
Analyse - Prozesse Prozesse Prozess 1 Funktionen Module Ablauf Datenimport Datenexport
Analyse - Schnittstellen Schnittstellen Schnittstelle 1 Funktionen Module Caching Datenimport Datenexport Technische Integration (WS, RMI, native, )
Analyse - Datenmodell Datenmodell Tabellen Views Funktionen (Functions, Procedures) Zugriff (OR-Mapping, JDBC, ) Datenhaltung (relational, in Memory, )
Beispielprozess Verbrauchsüberwachung Grobbeschreibung Konfiguration einer absoluten Verbrauchsobergrenze oder Einer relativen Abweichung auf Grundlage des aktuellen Durchschnitts Bei Übertritt eines Kriteriums -> Alarmierung Voraussetzung Adhoc Zugriff auf Zähler von Verbrauchswerten Aufzeichnung historischer Verbrauchswerte Interface zur Alarmierung 2 Kunden Kunde Blau AG Kunde Rot GmbH
Analyse Ansichten Kunde Blau AG Ansicht Templates Datenerfassung, Zusammenfassung, Quittierung, Auswertung CSS Adaption Homepage Blau AG Verbrauchsüberwachung Funktionen Dynamische Anzeige aktueller Verbrauch + Durchschnitt sverbrauch Clientvalidierung Syntaktische adhoc - Validierung der Eingaben Ressourcen Integration FAQs, Layoutbilder Technologie Browser
Analyse - Prozesse Kunde Blau AG Prozesse Verbrauchsüberwachung Funktionen Module Ablauf Datenimport Datenexport Anlegen, Bearbeiten, Auswerten / Benachrichti gen Speichern, / Auslesen der Konfiguratio n Diagramm MDM SMS, E-Mail
Prozesse Erfassen / Bearbeiten Kunde Blau AG
Prozesse Auswerten / Benachrichtigen Kunde Blau AG
Analyse - Schnittstellen Kunde Blau AG Schnittstellen SMS - Gateway E-Mail MDM Funktionen Module Caching Datenimport Datenexport Auslesen Einzelwert, Auslesen Intervall keine nein Synchron, pull nein Technische Integration RESTful WS
Analyse - Schnittstellen Kunde Blau AG Schnittstellen SMS - Gateway MDM E-Mail Funktionen Module Caching Datenimport Datenexport Versand keine nein nein Synchron, push Technische Integration SMTP
Analyse - Schnittstellen Kunde Blau AG Schnittstellen E-Mail MDM SMS - Gateway Funktionen Module Caching Datenimport Datenexport Versand keine nein nein Asynchron, push Technische Integration RESTful WS
Analyse - Datenmodell Kunde Blau AG Datenmodell Tabellen Überwachun g Views nein Funktionen (Functions, Procedures) Ermittlung Durchschnitt sverbrauch Zugriff Hibernate -> JDBC Datenhaltung Oracle
Analyse Ansichten Kunde Rot GmbH Ansicht Templates Datenerfassung, Zusammenfassung, Quittierung, Auswertung CSS Full Responsive Verbrauchsüberwachung Funktionen keine Clientvalidierung Syntaktische adhoc - Validierung der Eingaben Ressourcen Integration, Layoutbilder Technologie Browser
Analyse - Prozesse Kunde Rot GmbH Prozesse Verbrauchsüberwachung Funktionen Module Ablauf Datenimport Datenexport Anlegen, Bearbeiten, Löschen, Auswerten / Benachrichti gen Speichern, / Auslesen der Konfiguratio n Diagramm SmartMeter SMS, WhatsApp
Prozesse Erfassen / Bearbeiten Kunde Rot GmbH
Prozesse Auswerten / Benachrichtigen Kunde Rot GmbH
Prozesse Löschen Kunde Rot GmbH
Analyse - Schnittstellen Kunde Rot GmbH Schnittstellen SMS - Gateway WhatsApp SmartMeter Funktionen Module Caching Datenimport Datenexport Auslesen Einzelwert keine nein Asynchron, push nein Technische Integration XMPP
Analyse - Schnittstellen Kunde Rot GmbH Schnittstellen SMS - Gateway SmartMeter WhatsApp Funktionen Module Caching Datenimport Datenexport Versand keine nein nein Synchron, push Technische Integration HTTPS POST
Analyse - Schnittstellen Kunde Rot GmbH Schnittstellen WhatsApp SmartMeter SMS - Gateway Funktionen Module Caching Datenimport Datenexport Versand keine nein nein Asynchron, push Technische Integration RESTful WS
Analyse - Datenmodell Kunde Rot GmbH Datenmodell Tabellen Überwachun g Views nein Funktionen (Functions, Procedures) Ermittlung Durchschnitt sverbrauch Zugriff Hibernate -> JDBC Datenhaltung MS SQL Server
Vergleich Ansichten Ansicht Templates Datenerfassung, Zusammenfassung, Quittierung, Auswertung CSS Adaption Homepage Blau AG Full Responsive Verbrauchsüberwachung Funktionen Dynamische Anzeige aktueller Verbrauch + Durchschnitt sverbrauch Clientvalidierung Syntaktische adhoc - Validierung der Eingaben Ressourcen Integration Layoutbilder, FAQs Technologie Browser Allg. Templates Indiv. CSS Indiv. Funktion Allg. Validierung Allg. Ressoucen konfigurativ
Vergleich - Prozesse Prozesse Verbrauchsüberwachung Funktionen Module Ablauf Datenimport Datenexport Anlegen, Bearbeiten, Auswerten / Benachrichti gen, Löschen Speichern, / Auslesen der Konfiguratio n Diagramm Diagramm MDM SmartMeter SMS, E-Mail WhatsApp Technologie Browser Allg. Funktionen mit indiv. Bestandteilen Allg. Module Indiv. Import Allg. und Indiv. Export
Prozesse Erfassen / Bearbeiten Optionales Plugin
Prozesse Auswerten / Benachrichtigen Indiv. Funktion Verbrauchsermittlung Allg. Funktion Prüfen und Benachrichtigen
Vergleich - Schnittstellen Schnittstellen Export Import SMS Gateway (RESTful, Pull) Allg. Technologie MDM (RESTful, pull) WhatsApp (HTTPS POST, push) E-Mail (SMTP, Pull) Allg. Funktion SmartMeter (XMPP, push)
Vergleich - Datenmodell Datenmodell Tabellen Überwachun g Views nein Funktionen (Functions, Procedures) Ermittlung Durchschnitt sverbrauch Allg. Datenmodel Zugriff Hibernate -> JDBC Datenhaltung Oracle 12, MS SQL Server
Umsetzung - Ansicht Templategerüst ist gleich Abweichungen im Style, Ressourcen und Funktionen -> Individualentwicklung: + schnelles Umsetzen des ersten Kunden und per C&P mit Erweiterung auch von Kunde 2 - Doppelte Pflege der Templates -> Allgemeine Entwicklung: + Hoher Wiederverwendungsgrad, schnelle Erweiterung um neue Anforderungen - etwas höherer Implementierungsaufwand durch Konfiguration -> Allgemeine Entwicklung ist mit relativ wenig Mehraufwand möglich.
Umsetzung - Prozesse Teilw. Individuelle Prozesse Gemeinsame Teilprozesse sind vorhanden Import / Export sind abweichend -> Individualentwicklung: + wenig Komplexität in der Implementierung - Doppelte Pflege der Prozesse, keine Wiederverwendbarkeit von Modulen, doppelter Testaufwand -> Allgemeine Entwicklung: + Hoher Wiederverwendungsgrad, schnelle Erweiterung um neue Anforderungen, allg. Tests und Delta-Tests - mehr Komplexität durch Konfiguration -> Teilw. Allgemeinimplementierung bei gemeinsamen Prozessen (Anlegen, Bearbeiten, Auswerten, Benachrichtigen), -> Individualentwicklung für eigene Prozesse (Löschen) -> Einführung Konfiguration
Umsetzung - Schnittstellen Individuelle Schnittstelle Teilw. Gemeinsame Technologien (RESTful WS) Teilw. Gemeinsame Funktion (Datenexport) -> Individualentwicklung: + wenig Komplexität in der Implementierung, schnelle Fertigstellung - mehrfaches Anbinden gleicher Technologien, mehrfaches Umsetzung des faktisch gleichen Interfaces -> Allgemeine Entwicklung: + Hoher Wiederverwendungsgrad bei technologischer Ausprägung und Interfaces, Unabhängigkeit von Schnittstellen - sehr hohe Komplexität bei vollst. Allg. Entwicklung, Erweiterungen sind schwer abzuschätzen -> Allg. Entwicklung eines Interfaces für gemeinsame Funktionen (Datenexport) -> Alg. Entwicklung von Technologieframework (RESTful) -> Individuelle Entwicklung von Schnittstellen als unterstes Layer
Umsetzung - Datenmodel Gemeinsame Tabellen, Funktionen Relationale DB Indiv. DB Produkt -> Individualentwicklung: + - mehrfaches Anbinden gleicher Technologien, mehrfaches Umsetzung des faktisch gleichen Interfaces -> Allgemeine Entwicklung: + Sehr hoher Wiederverwendungsgrad bei technologischer Anbindung -> Allg. Entwicklung über OR-Mapping
Zielarchitektur Ansicht Ansicht 1 Ansicht n Ansicht 2 Prozesse Prozess 1 Prozess n Prozess 2 Schnittstellen Schnittstelle 1 Schnittstelle n Schnittstelle 2 Datenmodell C S S, R e s s o u r c e n K o n f i g u r a t i o n T e c h n o l. F u n k t i o n A l l g. I n t e r f a c e
Vielen Dank für Ihre Aufmerksamkeit. ITC Internet-Trade-Center AG Ostra-Allee 9 D-01067 Dresden Tel. +49 (0) 351 / 320 17 600 Fax +49 (0) 351 / 320 17 699 email info@itc-ag.com Web http://www.itc-ag.com