DOOR GmbH Technische Dokumentation DOOR® Version: Datum: 2.4 01.08.2008 1 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Inhaltsverzeichnis 1 Übersicht _____________________________________________________________ 4 1.1 Beschreibung ____________________________________________________________ 4 1.2 Gesamtübersicht _________________________________________________________ 5 1.3 Gesamtübersicht Kommunikation ___________________________________________ 6 1.4 Systemvoraussetzungen ____________________________________________________ 7 1.4.1 1.4.2 1.4.3 2 Webserver __________________________________________________________________ 7 Clients _____________________________________________________________________ 7 Server ______________________________________________________________________ 7 Module_______________________________________________________________ 9 2.1 DOOR®.MC _____________________________________________________________ 9 2.1.1 2.1.2 2.1.3 2.2 DOOR®.SB_____________________________________________________________ 27 2.2.1 2.2.2 2.3 Technologie ________________________________________________________________ 35 Beschreibung _______________________________________________________________ 35 DOOR_INA_SERVER.dat ____________________________________________________ 41 Strategy Map Editor _____________________________________________________ 42 2.4.1 2.4.2 2.5 Technologie ________________________________________________________________ 27 Beschreibung _______________________________________________________________ 27 DOOR®.Server _________________________________________________________ 35 2.3.1 2.3.2 2.3.3 2.4 Technologie _________________________________________________________________ 9 Beschreibung ________________________________________________________________ 9 web.config _________________________________________________________________ 22 Technologie ________________________________________________________________ 42 Beschreibung _______________________________________________________________ 42 DBCONNEX____________________________________________________________ 44 2.5.1 2.5.2 Technologie ________________________________________________________________ 44 Beschreibung _______________________________________________________________ 44 3 ComponentOne _______________________________________________________ 45 4 Zwischenschicht ______________________________________________________ 46 4.1 ncstruct.dll _____________________________________________________________ 46 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 Technologie ________________________________________________________________ 46 Beschreibung _______________________________________________________________ 46 Interface: INCNode _________________________________________________________ 51 Interface: INCSafeObject ____________________________________________________ 51 Klasse: CNCDataConnector __________________________________________________ 52 Klasse: INCSafeObject ______________________________________________________ 52 2 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 4.1.7 4.1.8 4.1.9 4.1.10 Klasse: Klasse: Klasse: Klasse: CNCPerspektive _____________________________________________________ 52 CNCZiel ___________________________________________________________ 52 CNCApp ___________________________________________________________ 53 CSecureContext _____________________________________________________ 53 5 IIS – Microsoft Webserver ______________________________________________ 54 6 Datenbank ___________________________________________________________ 54 6.1 Struktur _______________________________________________________________ 54 6.2 Tabellen________________________________________________________________ 54 6.2.1 6.2.2 Bezug zu Kennzahlen _________________________________________________________ 54 Bezug zu Zielen _____________________________________________________________ 58 3 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 1 Übersicht 1.1 Beschreibung Dieses Dokument soll Ihnen einen Überblick über den Aufbau und die Funktionsweise der DOOR® Software Lösung geben. Die DOOR® Software ermöglicht die Abbildung verschiedener Management Methoden in einer Datenbank und deren Darstellung in einer Weboberfläche. Es gibt verschiedene Module, die optional erworben und betrieben werden können. Die Module enthalten das Kernstück, den Administrationsclient („DOOR®.System Builder“), der den Aufbau der abzubildenden Strukturen ermöglicht. Zur Darstellung der Ergebnisse wird das „DOOR®.Management Cockpit“ (Webfrontend) eingesetzt. Die Komponente „DOOR®.Question Interface“ erweitert die Software um die Möglichkeit der Befragung beliebiger Personengruppen und der Integration der Ergebnisse in das vorhandene System. „DOOR®.Intelligente Neuronale Analyse“ ermöglicht die Analyse der Ursache- /Wirkungsbeziehungen der Ergebnisse untereinander durch neuronale Analyse. Alle Module benötigen eine Serverkomponente, die benötigte Daten verarbeitet. Die Verteilung der Module auf verschiedene Maschinen ist in Punkt Fehler! Verweisquelle konnte nicht gefunden werden. beschrieben. Zusätzlich ist in der DOOR® Software Dritt- Software enthalten. Zur grafischen Aufarbeitung der Daten wird Component One (siehe Punkt 3) verwendet. Die Berechnung der neuronalen Analyse ist NeuroDimensions „Neuro Solution“ beteiligt. 4 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 1.2 Gesamtübersicht 5 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 1.3 Gesamtübersicht Kommunikation Import aus bestehenden Systemen Microsoft SQL Datenbank DOOR Solution Builder - Aufbau , Pflege - spezielle Analysen n ze tra l DOOR Servermodule - BSC/Kennzahlenberechnung - neuronale Berechnung dezentral Manuelle Eingabe DOOR.MC Webclient - Personalisierte Auswertungen - Browseranwendung 6 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Windows Server A) Webserver Bereitstellung Webclient IIS DOOR.MC Internet Webclient B) Applikationsserver Berechnung DOOR.Server Windows Server SQL Datenbank DOOR.MC Intranet Webclient DOOR.SB Administration Fallbeispiel möglicher Aufbau / Systemkonfiguration in einem Firmennetzwerk mit DMZ 1.4 Systemvoraussetzungen 1.4.1 Webserver Zur Darstellung der Webinhalte, verwenden wir den Windows- eigenen Webserver, Bestandteil von Windows (ab Windows 2000, Ausnahme Windows XP home). Dieser muss als Windowskomponente installiert werden und nimmt Clientanfragen entgegen und liefert Webseiten aus. Siehe Punkt 5. 1.4.2 Clients Personal Computer der Pentium 3 Klasse, Microsoft Internet Explorer ab Version 5.5 Sp2, aktiviertes Javascript 1.4.3 Server Mindestanforderungen an die Hardware bei der Nutzung aller Serverkomponenten: • • • • Pentium IV-Modell mit 2 GHz-Prozessor Festplatte mit 20 Gigabyte freiem Speicherplatz Mindestens 1 GB RAM Arbeitsspeicher Backup System auf externes Medium • Empfohlen: redundanter Festplattensatz 7 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Mindestanforderungen an die Software: Applikationen mit entsprechenden Servicepacks und Patches: Microsoft Windows 2000 oder 2003 Server Microsoft IIS 5.0/6.0 (Webserver) evtl. SSL Verschlüsselt SQL Server 2000 .NET Framework 1.1 (Service Pack 2) Benötigte Hardware Anwendungsserver für DOOR Module Pentium 4, 1GB RAM, 20GB Festplatte Datenbankserver MS SQL Pentium 4, 1GB RAM, 20GB Festplatte Benötigte DOOR Software SB – Solution Builder - Administration MC – Management Client - Visualisierung NEM Neural Economical Model – neuronale Berechnung QI – Questioning Interface Befragungsmodul Je Client & Server Benötigte Client Software (Microsoft) Benötigte Server Software (Microsoft) Windows 2000/2003 Server - Internet Information Service Microsoft SQL Server 2000 MS Windows NT, 2000, XP (aktuelle Patches) Internet Explorer mind. 5.5 SP2 MS MDAC 2.8 (Windows 2000) 8 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2 Module 2.1 DOOR®.MC 2.1.1 Technologie Verwendete Programmiersprachen : ASP.NET, C#, Javascript Verwendete Technologie : Microsoft .NET Framework 1.1, ausschließlich C# Datenbeschreibung : SQL, XML Diese Komponente ermöglicht die Darstellung der gewählten Auswertungen über den Microsoft Browser Internet Explorer. Sämtliche Einstellungen werden in der Konfigurationsdatei web.config (Siehe 2.1.3) beschrieben. Das zusätzliche Fremdtool „ComponentOne“ wird zur Erstellung der Diagramme (Siehe 3) verwendet. Die Berechnung der Kennzahlerreichungsgrade / Diagramme erfolgt zur Laufzeit. 2.1.2 Beschreibung 2.1.2.1 Oberflächendateien Die Oberflächendateien bestehen aus jeweils einer *.aspx und einer *.aspx.cs Datei. „Seite.aspx“ (Oberflächen-Datei) für die Darstellung. Verwendet aspx-, html- für die serverseitige Steuerung. Javascript- Elemente für clientseitig optische Änderung (z.B Aufklappen der Bäume) und Informationstransport aufgrund hinterlegter Ereignisse. Der allgemeine Transport erfolgt in den meisten Fällen über cgi- Parameter. In Einzelfällen kommt Input „hidden“ zum Einsatz. Globalere Informationen werden in der Browser- Session gespeichert. Weiterhin finden sich hier Direktiven und Verweise zu ihren Hintergrunddateien. Clientseitige Operationen werden direkt in einigen meist kurzen Javascript-Funktionen abgearbeitet und ggf. in weitere Seiten aufgerufen. „Seite.aspx.cs“ Zur Oberfläche gehörige Quellcodedatei. 9 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Regelt die Verarbeitung bzw. Darstellung der Oberfläche und bereitet dynamisch Daten vor. Des Weiteren befüllt Sie Steuerelemente sowie Darstellungsformen und verarbeitet Benutzerereignisse weiter. Meist verwendete Frameworkklassen: using using using using using using using using using using using System; System.Collections; System.ComponentModel; System.Data; System.Drawing; System.Web; System.Web.SessionState; System.Web.UI; System.Web.UI.WebControls; System.Web.UI.HtmlControls; System.Configuration; In Einzelfällen: using using using using System.Text; System.IO; System.Data.SqlClient; System.Xml; Komplexe Javaskripte kommen für aufwendige Darstellungen zum Einsatz (..\ttvbehavior). Die Diagrammdarstellung erfolgt über ein Fremdtool (ComponentOne Punkt 3) oder Adobe SVG- Technologie (Strategy Map). „System.Configuration“ wird häufig für besondere kundenspezifische Einstellungen verwendet, gleiches gilt für „System.xml“. Die Einstellung erfolgt über die web.config (Siehe Punkt 3). Die xml- Dateien zur individuellen Konfiguration befinden sich im Ordner „logs“. Verfahrensweise: Die jeweilige .aspx.cs konsultiert die ncstruct.dll und erhält aus ihr, die dem Benutzer zugänglichen, Informationen. Diese werden meistens berechnet und in eine darstellbare Form gebracht. In einigen Fällen wird die Darstellungsform anhand von web.config Informationen modifiziert. Alle Ereignisse, soweit nicht über Javascripte geregelt, werden hier verarbeitet. Gleiches gilt für Dateneingaben. Auswertung bzw. das Einlesen der ncstruct- Daten erfolgt in der Regel über Schleifenanweisungen (foreach) da hier nur die grobe Systemstruktur bekannt ist. „Klasse.cs“: Datei ohne Oberfläche Spielen mehrere Seiten zusammen werden einige gemeinsam genutzte Operationen in eigene Klassen ausgelagert. Diese stellen ein weiter zu verarbeitendes Datenformat zur 10 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Verfügung oder übernehmen häufig genutzte Hilfsaufgaben. Üblicherweise werden sie speziellen Aufgabenbereichen zugeordnet. „ComponentOne“: Dieses Tool wird zur Erstellung beliebiger Diagramme verwendet. Im Verzeichnis DOORINA_webclient\bin\ C1.Common.dll und C1.Win.C1Chart.dll. Schnittstellen und Parameter nach Programmdokumentation. Für weitere Informationen siehe Punkt 3. Oberflächendateien- Paare: Beachten: Jede genannte .apsx- Seite besitzt eine .aspx.cs mit der Hintergrundlogik. Auf spezielle Nennung wird im Weiteren verzichtet. Komplexe Paare sind mit einem (*) markiert. Hierzu bitte die tiefer gehenden Beschreibungen beachten. wclogin.aspx / wclogout.aspx: Benutzeran- und abmeldung, (Session) wcapp.aspx (*): Wird nach Login erreicht. Jeglicher weiterer Bereich wird hier angesteuert. wcapp.aspx Menü „Extras“: • • • • ChangePwd.aspx: Änderung des persönlichen Passwortes, bei Portalanmeldungen ist dieses zu deaktivieren. wcOptionen.apsx: Benutzzerdefinierte Einstellungen möglich. Diese werden über Cookies auf dem Clientrechner gespeichert. Bevorzugte Startauswertung und begrenzte Modifikation der Darstellung auswertbar. wcPrint.aspx: Druckdialog zu gewünschter Auswertung; die zugehörige Datei wird als neues Fenster geöffnet. Beschreibung der Auswertungen im Folgenden. UserLogViewer.aspx: Ansicht der Log-Datei mit Benutzeranmeldungen. Hier sind Adminrechte notwendig. wcapp.aspx Menü „Eingabe“: • • wcKnzInput.aspx (*): Eingabe abgefragter Kennzahlwerte (bei dezentraler Eingabe) neuesprojekt1.aspx (*): Anlegen von BSC-Projekten über den Webclient. Die hier unbenannten Menüeinträge dienen der Benutzerspezifischen Darstellung. Einzelne Teile können nach Bedarf ausgeblendet werden. Der Bereich „Perspektiven“ bezieht sich in diesem Zusammenhang auf Darstellungen des DrillDowns (wcDrillDown.aspx(*)). Die am häufigsten genutzten Funktionen finden sich zusätzlich als Buttons wieder. Über die „Funktionsleiste“ wird der gewünschte Auswertungsbereich angezeigt. Eine Auswahl in dieser, erfordert gleichzeitig eine korrespondierende Markierung im BSC-Baum. Elemente der Funktionsleiste und Sichtbarkeit von Teilen des BSCBaums sind abhängig von den Benutzerrechten bzw. web.config Einstellungen. 11 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH wcapp.aspx „Funktionsleiste“(*): • • • • • • • • • Strategy Map: wcStrategyMap.aspx: Wird über den Strategy Map Editor (siehe Punkt 2.4) innerhalb DOOR®.SB angelegt und kann hier abgerufen werden. Ziele im Detail: wcZiele.aspx: Abruf angelegter Ziele und deren Beschreibung. Kennzahlen: wcKennzahlen.aspx: Abruf von Kennzahlinformationen. Aktueller Ist-Wert sowie zugehörige Parameter. o Ordnersymbol ermöglicht hier Dokumente zu den Kennzahlen zu speichern wcDocs.aspx Drill Down: wcDrillDown.aspx (*) Projekte: wcProjekte.aspx: Übersicht über administrative Projekte welche in DOOR®.SB angelegt wurden. Verschiedene Auswahlmöglichkeiten. WebProjekte (*): Ansicht aller im MC angelegten Projekte in der zugehörigen BSC Struktur. Benchmark (*): Benutzer kann hier Standardauswertungen mit Vergleichswerten speichern Auswertungen, Zielerreichungsgrad Balken / Radar. Im SB vordefinierte Auswertungen werden durch den Benchmark ersetzt und sind nur noch Übergangsweise aktiv. wcGlobaleFavoriten.aspx, wcDiaBalken.aspx, wcDiaRadar.aspx Befragungen: Sonderauswertung für Befragungen Befragungsauswertung.aspx (*) wcbsctree.aspx: Darstellung der BSC- Struktur, diese wird aus der ncstruct.dll abgerufen. Auswahl aus der Funktionsleiste wird mit Markierung in diesem Arm aktiviert. Jedes Element hat eine eigene Kennung welche mittels Javascript und cgi-Parametern an die entsprechende Auswertungsform gesendet wird. Bereiche auf die der Benutzter keine Rechte hat werden ausgeblendet. (Kennung bscid, id) Jedes dargestellte Element hat eine eindeutige Zahlenkombination als Kennung. Die Basis bildet immer die „bscid“ und die „id“ aus der wcbsctree.aspx. Je nach Auswertungsform kommen weitere Kennziffern hinzu. Im Drill Down sind dies zunächst Ziel.IDs und daraus abgeleitet die Kennzahl.IDs. An die Ziele sind weiterhin die Zuordnungen der verschiedenen Projektformen geknüpft, welche wiederum weitere Nummerierungen zur Identifikation besitzen. Elemente die weitere Schaltflächen aktivieren, haben ihre Kennung grundsätzlich in ihrer Knotenbezeichnung als Javascript gespeichert. Daraus werden folgende weitere Fenster aktiviert. Die Kontexte kommen in mehreren Auswertungsmöglichkeiten vor. Verweis hierzu Benutzerdokumentation. Hinterlegte Schaltflächen werden bei Mouseover mit einem Handsymbol deutlich gemacht. Teilweise sind diese Funktionen über ein Kontextmenü erreichbar. 12 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Über diese Kennung werden gezielt Informationen abgerufen: wcComment.aspx / wcCommentView.aspx / wcNewComment.aspx: Anlegen bzw. Anzeigen zugehöriger Kommentare. wcDetailKnz.aspx: Kennzahlparameter Soll / Risiko / Warngrenzen / Periode usw. wcDetailKnzFormel.aspx: Berechnungsgrundlage der Kennzahlerreichung, abhängig von deren Einstellung up / down / Abstand (kpi) wcDetailProjekte.aspx: Details zu administrativen Projekten. wcMS.aspx: Meilensteine in administrativen Projekten wcProjInfo.aspx: globale Projektinformationen administrativ wcDetailZiel.aspx: Zielparameter und Gewichtung zugehöriger Kennzahlen 2.1.2.2 Grafiken / Tabellen wcTacho.aspx: Erreichungsgrad von Ziel oder Kennzahl, SVG-Grafik wcEGConfig.aspx: Container für Auswertung in Grafik und Tabellenform nachfolgender Seiten, zugehörige Zeitraumbegrenzungen: • • • • wcEGevLinie: Liniendiagramm wcEGevBalken: Balkendiagramm wcEGevRadar: Polardiagramm wcEGevTab: Tabelle Die Berechnung der Werte erfolgt zur Laufzeit über den gewählten Zeitraum. Die Bezeichnung des Zeitraums erfolgt über die Datenperiode. Eine Darstellung ist als realer Wert oder Erreichungsgrad möglich. Begrenzung von „Ausreißern“ durch web.config Eintrag. Komplexe Bereiche: Drill Down: wcDrillDown.aspx Umfangreiche Schaltflächen und Informationsgestaltung. Der Drill Down – Baum ist ein sehr komplexes Javascript welches sich aus verschiedenen Knoten zusammen setzt welche wiederum in der Zeile mit angeknüpften / zugehörigen Informationen und einem Kontextmenü versehen wird. Die Ausgangsbasis sind immer die Kennungsziffern zu den einzelnen Elementen. Die Darstellung des Elements erfolgt durch einen Elemente- Typ. Im oberen Bereich befindet sich eine Zeitauswahl sowie (falls in Web.config aktiviert) einige Steuerbuttons um weitere, ähnlich dargestellte Auswertungsformen zu erreichen. Weitere Javascript-Funktionen sind die Behandlungen von Ereignissen. Sie stellen die notwendigen Informationen für weitere Seiten zusammen und rufen diese auf. Übermittlung in der Regel über cgi- Parameter, in Ausnahmefällen Type „hidden“. Diese Informationen bestehen immer aus den Kennziffern des Elementes zzl. notwendiger Ereignisinformationen. Die Form des Response ist: neueSeite.aspx?bscid=455_40&weitererParameter… (Bsp.) 13 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Das Kontextmenü und weitere aspx-Elemente werden komplett serverseitig (wcDrillDown.aspx.cs) abgearbeitet. Der Response hat hier gleichartige cgi. Die Zusammenhänge ergeben sich aus dem Funktionsaufruf der Steuerelemente und der entsprechenden Weiterleitung. wcDrillDown.aspx.cs Gleiche Systematik wie das Drill Down wird auch von kpiDD.aspx, den WebProjekten und dem Benchmark benutzt. Die kpi sind nur eine eingeschränkte Auswahl üblicher Kennzahlen. Sie haben eine andere Symbolik. Identifiziert werden kpi durch up/down/abstand (0,1,2) „BestInt“+10 (Verweis Datenbank BSC_Liste [BestInt]) using AtlasControls.TabTreeView; using AtlasControls.WebContextMenu; Ablauf DrillDown: Request „Parameter“ wcbsctree.aspx Hier läuft die Prüfung der Nutzerrechte ncstruct.dll, weitere Darstellung hiermit eingeschränkt bzw. verhindert. Header Tabelle mit Baum wird erstellt. Die tatsächliche Anzahl der Spalten wird auf diesem Wege definiert. Vorsicht, lange Texte führen zu unschöner Darstellung, ggf. Spaltenbreiten anpassen (Unit.Percentage(x)): ttv.InsertColumn("",Unit.Percentage(3),1); ttv.InsertColumn("",Unit.Percentage(3),2); ttv.TreeHeaderText = "BSC>Perspektive>Ziel>…“; ttv.AppendColumn("Stand",Unit.Percentage(25)); ttv.AppendColumn("Einheit",Unit.Percentage(8)); ttv.AppendColumn(" ",Unit.Percentage(3)); Wichtig ist hier: Die Spalte mit ttv.TreeHeaderText, ist die Spalte in dem die Baumstruktur dargestellt wird. Sie enthält das gewählte Element. Alle weiteren Spalten geben zusätzliche Informationen zu dem Element aus bzw. Schaltflächen mit den Elementinformationen hinterlegt. Vorangegangene Spalten enthalten Informationen zu Projekten und Kommentaren / Dokumenten. Hinterlegte Ereignisse rufen die in dem Kontext zugehörigen Informationen ab bzw. öffnen entsprechende Seiten (im Register oder neue Seite). Die Zielerreichungsgrade ergeben sich aus den in der Datenbank gespeicherten (schon berechneten) Werten. Kennzahlen werden je nach gewählter Option in realen Werten dargestellt, alternativ anhand ihrer Parameter zu einem Erreichungsgrad umgerechnet. Der Tendenzpfeil bezieht sich auf das Niveau der Vorperiode, die Pfeilfarbe nach den zugehörigen Warngrenzen. Pfeil und Farbe sind .jpg/.gif (Ordner ..\Images), gilt auch für die anderen Bilder. 14 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Ablauf hier: -Für alle BSC -Für alle Perspektiven -Für alle Ziel -Für alle Kennzahlen Nicht vorhandene Objekte werden übersprungen. Der komplette Baum wird geladen, ab der Ebene an der er aufgeklappt ist und wird über die web.config gesteuert. Jede Zeile wird separat für sich fertig gestellt. Die Berechnung der Kennzahlen erfolgt nach ihren Parametern wie in wcDetailKnzFormel.aspx ersichtlich. Das anschließende Registerfeld ist en Platzhalter in dem zusätzliche Informationen vorbereitet sind. Durch Aktivierung einzelner Schaltflächen im Drill Down werden hier zusätzliche Informationen angezeigt indem die entsprechenden Seiten in diesem Feld geladen werden. kpi: Diese Option funktioniert analog zur wcDrillDown.aspx.cs. in diesem Fall werden nur Kennzahlen mit kpi- Kennung angezeigt, die Symbole und die angezeigten Informationen unterscheiden sich geringfügig. Die technische Vorgehensweise ist die Gleiche. Benchmark: Die Betätigung auf der Funktionsleiste bewirkt das Laden des DrillDowns in veränderter Darstellung. Vorgehensweise und Funktion ist die wie vorher, bezüglich des DrillDowns beschriebene. Benchmark- Buttons werden sichtbar, Tendenzen werden durch Selectboxen im Quelltext ersetzt. Das Anknüpfen der zugehörigen Kennungen erfolgt wie beschrieben. Hier lassen sich einzelne Kennzahlen oder Kennzahlen aus mehreren BSCs miteinander vergleichen. Der Button „zum Benchmark hinzufügen“ ermöglicht komplexere Zusammenhänge. Die Aufnahme in die Liste wird mit BenchKomplex.aspx bestätigt und übergangsweise in der Session gespeichert. Sollten nur Kennzahlen aus der aktuellen Drill Down – Ansicht ausgewertet werden kann auf diesen Schritt verzichtet werden. „Benchmark starten“ führt den Benchmark für die angeforderte Kennzahlenliste aus. BenchAusw.aspx.cs: Filterung nach möglichen Doppelnennungen in der Liste. Gewünschte Daten werden in folgende Struktur gespeichert: public struct BenchData { public float[,] data; //Serien public string[] seriesname; //Legenden public string[] xlabels; public float maxvalY; public float maxvalX; 15 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH public float minvalY; public float minvalX; public string ylabel; //y-Achsenbeschriftung public BenchData(int series, int serieslen) { data = new float[series, serieslen]; seriesname = new String[series]; xlabels = null; ylabel = string.Empty; maxvalY = 0; maxvalX = 0; minvalY = 0; minvalX = 0; } } Diese Struktur ist auf die Diagrammerstellung angepasst (ComponentOne). Geladene Daten werden gleichzeitig für die im Quelltext zusammengestellte Tabelle verwendet. Ebenfalls wird sie beim angebotenen csv- Download verwendet. Die Daten werden wiederum aus der ncstruct.dll bezogen und mit den gewünschten Zeiträumen aufgearbeitet. Benchliste.cs: Erstellung bzw. Verwaltung bereits bestehender Benchmarks. Das Anlegen / Erweitern ermöglicht die Speicherdatei \logs\Benchliste.xml. Aktivierung der Speicherung durch „Speichern unter“. Geschrieben wird hier der erstellende Benutzer und die zugehörige Liste wieder auf Basis der Kennzahlenkennung. Dadurch bleibt die Vorlage der Auswertung erhalten, die Berechnung wird durch Einstellung des Zeitraums aktiviert. Die Struktur lässt sich im Zusammenhang mit Tabellen und Diagrammen gut verarbeiten. Sie enthält bereits die wichtigsten Übergabeinformationen für ComponentOne. Im Diagramm werden aus Gründen der Übersichtlichkeit bis zu 15 Verläufe dargestellt. Bei Überschreitung des Maximum wird nur die Tabelle angezeigt. Der csv-Download folgt folgendem Muster: string filename="DownloadName.csv"; string p= Server.MapPath("")+"\\"+filename; FileStream outStream = new FileStream(p,FileMode.OpenOrCreate); using(StreamWriter str = new StreamWriter(outStream,System.Text.Encoding.Default)) { 16 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH //Zusammenstellung dltab) Inhalte Zeilenweise Semikolongetrennt str.WriteLine(dltab); } // Datei an Browser senden Response.ContentType = "text/csv"; Response.ContentEncoding = System.Text.Encoding.Default; Response.AddHeader ("Content-Disposition", ment;filename="+filename+""); Response.WriteFile(filename); Response.Flush(); FileInfo file = new FileInfo(p); file.Delete(); Response.End(); (hier "attach- Notiz: StringBuilder() Befragungsauswertung: Befragungsliste.cs: Vorhandene Befragungstitel werden geladen und in Befragungsauswertungen.aspx dargestellt. Auswahlmöglichkeiten werden in BefragDia.aspx nach den vorhandenen Möglichkeiten (Fragen/Personen) angeboten. Eine Auswahl wird an Bef_Balken.aspx übergeben. Hier werden die Daten durch direkten Datenbankzugriff geladen und wiederum in die Form der „public struct BenchData“ gebracht. Anzeige des Balkendiagramms und der zugehörigen Tabelle erfolgt analog zum Benchmark. Durch den direkten Datenbankzugriff wird hier direkt eine Matrix, welche zu der struct passt, abgefragt und verarbeitet. Abfrageindex r[i] SqlDataReader r = com.ExecuteReader(); while(r.Read()) { //0:Fragetext //1:Antwortmoeglichkeiten //2:process_id //3:ma_id //Teilnehmer //4:Nachname //5:Vorname //6:sq_id //7:antwort //8:kommentar Notiz: Abfragefelder aus xml zulanden (?) 17 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH WebProjekte: ProjDaten.cs: using System; using System.Configuration; using System.Data.SqlClient; using System.IO; using System.Collections; using System.ComponentModel; using System.Data; Da möglichst hohe Flexibilität gefordert ist wird die übliche Vorgehensweise über die ncstruct.dll für die eigentlichen Web- Projekte umgangen. Die Daten werden direkt aus der Datenbank gelesen, die Verbindung liegt in der Registry verschlüsselt (Global.asax). Lesende und schreibende Zugriffe erfolgen über diese Datei. Die Ausgaben von Unterprojekten werden an ihr Oberprojekt weiter geleitet und zur Laufzeit berechnet. Vergabe von Projektnummern erfolgt über die UserID und eine laufende Nummer. Angaben bei der Erstellung der Projekte werden auf Gültigkeit überprüft. Unvollständige Projekte und Meilensteine werden verweigert. Änderungen kann nur der Projektleiter oder ein Admin vornehmen. Unternehmensübliche Kostenstellen können in ..\logs\ProjKostenstelle.xml eingestellt werden. Mögliche Auswahl der Zustände in \logs\ProjZustand.xml (Projekte) und ..\logs\MSTZustand.xml (Meilensteine). Beachten: „abgeschlossen“ ist immer Zustand 0! neuesProjekt1.aspx Wird diese Datei über wcapp.aspx - Menü „WebProjekt“ geladen, handelt es sich um ein Projekt in der BSC Struktur. Wenn diese Datei über das Kontextmenü des Drill Down aufgerufen wird so ist das Projekt einem Ziel zugeordnet. Kommt der User über ProjPflege.aspx „Parameter ändern“ wird der Änderungsmodus aktiviert. Hier können dann auch Unterprojekte und Meilensteine angelegt werden. Diese werden der bestehenden Projektnummer zugeordnet. ProjAnsicht.aspx: Übersicht über dem Bereich zugeordnete Projekte, Anzeige wie Drill Down. Es existiert je eine Projektampel für Zustand der Meilensteine, Zeit, Budget. Färbung und Tooltipp aus ProjDaten.cs. ProjDetailansicht.aspx: Aktuelle Projekt- und Meilensteininformationen in Tabellenform. Ressourcenverbrauch aus Unterprojekten ist „hochgereicht“. 18 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH ProjPflege.aspx: Ausgaben nach Kostenstellen eingeben, Meilensteine ändern. Der Button „Parameter ändern“ ist nur dem Projektleiter und dem Admin zugänglich… -> neuesProjekt1.aspx Der Button „Bericht“ bietet einen Download (csv) der aktuellen Projektinformationen und Ausgaben an. Zusätzlich erscheinen hier die Ausgaben im Einzelnen und deren Zugehörigkeiten zu Kostenstellen sowie weitere eingegebene Anmerkungen. Wird der Projektstatus auf „abgeschlossen“ verändert (Leitung/Admin), so wird in der Datenbank eine Erinnerung zur Prüfung der Nachhaltigkeit angelegt (sofern dieses aktiviert ist). Nach Ablauf des Zeitraums wird die Meilensteinstatus- Ampel als Erinnerungsampel für die Nachhaltigkeit verwendet. Das Bewertungsfeld dient während der Projektlaufzeit der Priorität, später der Bewertung der Nachhaltigkeit. Steuerelemente sind mit zugehörigem Tooltipp versehen. EingabePruefung.cs: Prüfung auf Zahlenformate und Umrechnung von Zeiten Für die WebProjekte wurden weitere Tabellen in der Datenbank angelegt. Die Tabelle ProjParameter [bscid][id][zielid] ist die Verbindung zur bestehenden BSC-Datenbank. WebProjekte und bisherige administrative Projekte können parallel bestehen, in einem solchen Fall haben administrative Projekte Vorrang (Meilensteinampel Drill Down und zugehörige Ereignissteuerung). Entsprechend wird bei Klick auf diese Ampel entweder wcProjekte.aspx oder ProjAnsicht.aspx in das Register geladen. 19 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Intern wird in dem Bereich WebProjekt mit der ProjNr gearbeitet. Die [bscid], [id], [ZielID] dienen nur der Anknüpfung an das bestehende System und zur Zuordnung an den BSC-Baum bzw. dem Drill Down. Die derzeitige Verrechtung entspricht der des Drill Downs. Die Tabelle ProjMitarbeiter und eine zugehörig Oberfläche ist bisher nur vorbereitet, diese wird nach Kundenspezifischer Definition befüllt falls eine andere Verrechtung gewünscht ist. Die geplanten Projektressourcen und deren Ausgaben werden in der Tabelle ProjRessourcen gespeichert und zur Laufzeit ausgewertet. Global.asax.cs using using using using System.Data.OleDb; System.Text; System.Runtime.InteropServices; Microsoft.Win32; Globale Angaben für die gesamte Applikation. Voreinstellung für diverse Zuladungen von .xml Dateien, Registry- Zugriffe (Datenbank), Application Start/End, Session Start/End. 20 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH wcCommon.cs: Verbindung zur ncstruct.dll, liefert deren Datenmodell, IO. Beschreibung ncstruct siehe Punkt 4.1. Zeitrelationen.cs: Korrektur bei Datum/Zeit/Perioden Fehlwerten wcSonderrechte.cs: Vorbereitung falls Anforderungen der Web.Config-Rahmen sprengen. 21 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.1.3 web.config Innerhalb dieser Datei können die kundenspezifischen Einstellungen vorgenommen werden. Diese sind durchgängig mit einer Kurzbeschreibung versehen, relevante Einträge werden aber hier noch mal erläutert. Grundsätzlich erfordern Änderungen einen Neustart des Webservers. Hinweis: Verändern Sie keine der nicht unten genannten Einstellungen. Dieses könnte zu Störungen führen welche von uns nicht zu reproduzieren sind. <authentication mode="Forms" > <forms loginUrl="wcLogin.aspx" name="kefWebclient" protection="All" timeout="15" path="/" /> </authentication> <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=" cookieless="false" timeout="15" /> Timeout: Zeitraum (Minuten) bis zur automatischen Schließung der Session um Rechnerkapazitäten freizugeben. Dieser Fall tritt ein wenn nach dieser Zeit keinerlei Benutzeraktivität verzeichnet wurde. Gleiches gilt für den Fall, dass der Benutzer sich nicht abgemeldet sondern nur das Browserfenster geschlossen hat. Nach Schließung der Session wird eine Neuanmeldung erforderlich. Wir empfehlen diesen Zeitraum auf 15 Minuten zu begrenzen. Cookieless: In den Optionen vorgenommene Benutzereingestellungen werden Clientseitig als Cookie gespeichert. Diese Einstellung sollten nicht verändert werden, sonst ist diese Funktionalität nicht mehr ausführbar. 22 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Weitere Einstellungen können in dem Bereich „<appSettings>“ vorgenommen werden: <!-- Sondereinstellungen des Kunden, value="" = Standard--> <add key="kunde" value="" /> Besondere, nicht allgemein gültige Kundenwünsche. Diese sind im Einzelfall zu beschreiben. <!-- Benchmark - falls Daten geeignet Aktivierung: on/off --> <add key="benchmark" value="off" /> Aktivierung der Benchmarkfunktion. Die Daten müssen sich für diese Funktionalität eignen. Es können nur gleichartige Daten verglichen werden. [on,off] <!-- Periodenanzeige Charts ab Jahr: 0=alle Perioden, 1=nur laufendes Jahr, 2=ab Vorjahr usw. --> <add key="ChartPerioden" value="0" /> Welcher Zeitraum soll in den Diagrammen angezeigt werden (Grundeinstellung). Dieser ist dort veränderbar. Wir empfehlen aus Gründen der Übersicht die Gesamtanzahl möglichst gering zu halten. Je höher die Zahl im „value“ desto mehr Perioden werden angezeigt. [Zahl] <!-- Verrechtung: WebClientUser duerfen ihr Passwort aendern: on/off --> <add key="PWDchange" value="off" /> Der Benutzer kann sein Passwort ändern (“on”) geeignet bei Einzelanmeldungen über das Login. Value=“off“ ist Voraussetzung für Anmeldungen über Portale. [on,off] <!-- Bezeichnung der Warngrenzen Legende der Diagramme --> <!-- bezw1 & bezw4: rot/gelb - Wechsel : bezw2 & bezw3 gelb/gruen Wechsel --> <add key="bezw1" value="Warngrenze" /> <add key="bezw2" value="Toleranzgrenze" /> <!-- zusaetzliche für Abstandskennzahlen: --> <add key="bezw3" value="Toleranzgrenze" /> <add key="bezw4" value="Warngrenze" /> 23 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH <!-- Anmerkung: aus Darstellungsgruenden ist die Zeichenanzahl unter 20 zu halten --> Benennung der Warngrenzen sind frei zu gestallten. Wir empfehlen die Zeichenzahl so gering wie möglich zu halten. Höhere Zahl an Zeichen ist möglich, geht aber zu Lasten der Bildqualität der Diagramme. [*] <!--Sichtbarkeit der Tendenzlinie im "kleinen" Liniendiagramm unter dem DrillDown: on/off--> <add key="trendline" value="off" /> Tendenzlinie in der DrillDown-Grafik wird/ wird nicht angezeigt. [on,off] <!--Erweiterung der Tachoscala +/- 10, z.B. wenn Warngrenzen bei 0%/100%: on/off--> <add key="erwTachoScala" value="on" /> Scala des Tachos wird erweitert. Geeignet falls Warngrenzen mit 0% bzw. 100% definiert sind. [on,off] <!-- Connection String: value="" benutzt String --> <!-- Datenbankverbindung der Befragung--> <add key="ConStringBef" value="" /> Registry/ sonst base64 <!--Aktivierung der Einzelauswertung der Befragungen, ConStringBef muss ein value gesetzt sein--> <add key="BefAuswertung" value="false" /> Diese Funktionalität befindet sich noch in der Entwicklungsphase, bitte vermeiden Sie hier Einträge. <!--Darstellung des Datumformates de/en--> <add key="datumForm" value="de" /> Darstellung des Datumsformates falls unterschiedliche Sprachen zwischen Datenbank und Betriebssystem verwendet werden. [de,en] <!--Tacho immer %-Skalieren value "on", standard ist "off"--> <add key="TachoProzentAnzeigen" value="off" /> 24 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH off: Tacho richtet sich nach der Gesamteinstellung für das DrillDown (Reale Werte oder Erreichungsgrade). on: Tacho zeigt unabhängig von der DrillDown-Einstellung immer Erreichungsgrade (%) an. [on,off] <!-- Kennzahl-Benchmark - falls Daten geeignet Aktivierung: on/off -> <add key="kennzbench" value="on" /> Freigabe des Benchmarks <!-- Sortiertes Laden gespeicherter Benchmarks on/off standard ist off --> <add key="benchsort" value="off" /> Sortiertes Laden gespeicherter Benchmarks <!-- Kennzahlperioden ausschließlich monatlich, standard ist on --> <!--<add key="nurMonatsKennz" value="off" />--> <!-- DrillDown-Anzeige standard nur abgelaufener Zeitraum "on", bei "off" auch laufender Zeitraum --> <add key="drilldownAbgelaufenePerioden" value="on" /> Eingabewerte im laufenden Monat schon sichtbar, keine Garantie bei Erreichungsgraden <!-- Zeitumrechnung falls nicht alle Ziele BSC.Beginn sind --> <!-- standard ist "false" --> <add key="PeriodenVerschiebung" value="true" /> konform mit dem Sonderfall, behebt Darstellungsproblem, sollte unter regulären Bedingungen nicht auftreten <!-- Begrenzung der Darstellung der Erreichungsgrade bei den Diagrammen --> <!-- Standard ist value="0" Einheit als Prozentwert --> <add key="Diagrammgrenze" value="550" /> 25 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Begrenzung der Skala des “kleinen” DrillDown- Diagrams, sinnvoll bei extremen Amplituden. <!-- KPI-Aktivierung, Definition einer 10,11,12 --> <add key="kpiaktiviert" value="true" /> KPI-Kennzahl knz.Direktion Aktivierung KPI, Datenbankeinstellung noch nicht automatisiert <!-- bei Erstaufruf der DrillDown Perspektivenordner geoeffnet darstellen, standard ist true --> <add key="PerspOffen" value="true" /> Ordnerebene im DrillDown, angeraten bei vielen Armen Weitere Änderungen sind in Abstimmung mit uns möglich. Diese erfordern aber eine besondere Behandlung. Bitte setzen Sie sich zu diesem Zweck mit uns in Verbindung. <!-- bei Erstaufruf der DrillDown Perspektivenordner geoeffnet darstellen, standard ist true --> <add key="PerspOffen" value="true" /> <!-- Projekte aus WebClient aktivieren on/off --> <add key="WebProj" value="on" /> <!-- dazu Spaltenbezeichner Priorität in der Gesamtansicht --> <add key="prioProj" value="Bewertung" /> <!-- Bezeichnung der Meilensteine --> <add key="bezMst" value="Meilenstein" /> <!-- Bezeichnung der Zeiteiheit--> <add key="bezZeit" value="h" /> <!-- Bezeichnung der Geldeinheit--> <add key="bezGeld" value="€" /> <!-- Angabe eines Grundes bei Meilensteinaenderung erforderlich --> <add key="grundMst" value="true" /> <!-- Nachhaltigkeit nach x Tagen pruefen, ohne value=deaktiviert leer/Zahlenwert --> <add key="nachhalt" value="14" /> 26 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.2 DOOR®.SB 2.2.1 Technologie Verwendete Programmiersprachen : Visual Basic 6.0 Fremdsprachenkatalog 2.2.2 : C++ Beschreibung DOOR®.SB ist das Administrationsprogramm des Systems. Die BSC Struktur wird hier erstellt, Änderungen vorgenommen und Projekte und Befragungen mit selbigem definiert. Kennzahlenpflege auch außerhalb der automatischen Aufforderungen in jeder Periode ist hier möglich. DOOR®.SB ist ausschließlich mit der Datenbank verbunden, seine Verwendung bewirkt ständige Schreib- und Lesezugriffe. Die dargestellten Informationen stammen aus einer Vielzahl von Formularen welche auf die entsprechenden Datenbankbereiche zugreifen. Verwendung: Definition der BSC, Grundeinstellungen / Verknüpfungen, Administrative Eingriffe. Die Definition wird in einer vorbereiteten Microsoft SQL Datenbank gespeichert. Weitere Merkmale: Verbindung zwecks Datenaustauschs wird nur zur Datenbank hergestellt. Aufruf des Strategy Map Editors. Erstellen und Starten von Befragungen Spezifische Einstellungen werden in der Konfigurationsdatei DOOR_INA_SERVER.dat (Siehe 2.1.3) beschrieben und verändert. 27 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH BSC Aufbau, Pflege, Zusammenhänge: Das Herz des Systems. Alle Zusammenhänge haben hier ihre Wurzeln, sämtliche Informationen laufen hier zusammen oder werden von hier aus abgeleitet / zugeordnet. frmBSCInput.frm: Kennzahl(vor)pflege, Eingabe zugehöriger Parameter (Soll, Risiko, Warngrenzen usw.) frmZiel.frm: Einflussgrößen des Ziels, (Unterziele, Kennzahlen, Gewichtungen, Laufzeiten, Warngrenzen) anlegen von zugehörigen Projekten. frmBSCListe.frm: Kennzahlmanager, Perspektiven und Zuordnungen über alle BSC über alle Perspektiven Verbindung „Available“ zur BSC über alle Ziele 28 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Verbindung „Perspektive“ Die Anknüpfung der Projekte, Befragungen, Dokumente usw. an die ZielID Zu Zielen gehörige Untertabellen sind an anderen Stellen beschrieben. über alle Kennzahlen Kennzahlen aus der Gesamtheit (BSC_Liste) Führt zur zentralen „Datensammelstelle“ Als Basis für alle weiteren Berechnungen, unabhängig ob seitens des Servers (Datenbanktabellen werden gefüllt) oder eines Clients (Auswertung zur Laufzeit). Auf die Darstellung der weiteren den Bereichen zugehörigen Tabellen wird an dieser Stelle verzichtet. Diese leiten sich entsprechend ab. Verweis ncstruct und DOOR®.Server. frmDataImport.frm: Importschnittstelle BSC, Kennzahl- definitionen aus Excel frmCockpit.frm: Programminterne Benchmarkauswertung FormDatabase.frm Verbindung zur Datenbank über Registry. MDIncontrol1.frm MDIMain / Navigation über die eigentlichen Arbeitsformen. 29 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH FormActions.frm: Administrative Projektdefinitionen Diese werden hier angelegt und dem gewünschten Ziel zugeordnet. Die BSC-Anbindung ergibt sich somit über die ZielID Die Meilensteine als Messgröße des Projektfortschritts können dem Projekt zugeordnet werden (ZMeilstones). Anmerkung: Die Projekte des DOOR®.SB stehen in keinem Zusammenhang zu den Projekten des DOOR®.MC. Sie treffen sich nur im Ziel (ZielID). 30 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH frmUsers.frm Hier werden die Benutzerverwaltung und die Einstellungen der DOOR®.MC Verrechtung beschrieben. Gruppierungen und Zuweisung der zugänglichen Teile der BSC, genereller Zugriff auf MC-Funktionalitäten innerhalb dieser BSCs. Users : einzelne Benutzer UserGroups : Benutzergruppen Resp : Verantwortlichkeiten (frmResp.frm) ObjectGroups : Gruppenrechte in bestimmten Bereichen, Projekte usw. PriviledgesListe : Zu vergebene Rechte Rights : Bestehende Rechte S_UO : Zusammenstellung der Rechte des Einzelnen (BSC) Hinzu kommen noch weitere Zuordnungstabellen („s_“), auf deren Beschreibung wird aber an dieser Stelle verzichtet. Die häufige Verwendung des Begriffs ID wirkt möglicherweise erstmal etwas verwirrend. Hierzu sei gesagt, dass die Tabellenbereiche ihre eigene ID verwenden. Wichtig hierbei: Die Kombination ObjectID, ObjectCoID (ID,CoID) sind wiederum die Verbindung zu den BSC.ID, untergeordnete Rechte werden somit über diese Informationskette geregelt. frmInport.frm: Benutzter importieren 31 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Befragungen: frmMAText.frm : Befragungsoptionen frmIfsq.frm : Reihenfolge der Fragen FormSkala.frm : Ausprägung der Antwortmöglichkeiten FromSQListe.frm : Zusammenstellung der Fragenkataloge FormProperties.frm : Definition der Befragungsart FormMAListe.frm : Mitarbeiter für den Befragungsprozess FormImport.frm : Importfunktion für Fragenkataloge aus Excel FormEmail.frm : Zusammengestellte Befragung wird mit Ein- und Ausgangstexten versehen, Befragungsform link über Emailversand, ErinnerungsEmail Bereich „Mitarbeiter“ (Oberbegriff für jeglichen Befragten) MA_Liste Zugehörig: Weitere Tabellen mit „MA_“- Kennung zur feineren Gliederung MA_Options : Detailinformationen Mitarbeiter MA_Zuordnung : Zugehörigkeit des Mitarbeiters in Befragungsgruppen Process_MA : Einzelner Mitarbeiter im Befragungsprozess 32 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Bereich Fragen / Fragenkataloge: SQ_Liste : Fragen im Bestand SQ_Zuordnung : Zusammenstellung von Fragenkatalogen SQ_Struktur : Unterfragen SQ_Data : Befragungsform ProcessSQ : Zugehörigkeiten zu Bereichen Gegebenen Antworten werden schließlich hier gespeichert / verwaltet 33 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH An dieser Stelle kann eine Auswertung generiert werden. Alternativ übernimmt der DOOR®.Server die Weiterverarbeitung mittels Berechnung des resultierenden Indikators und dessen entsprechender Zuweisung. Dieses ist schließlich die Verbindung zur BSC. 34 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.3 DOOR®.Server 2.3.1 Technologie Verwendete Programmiersprachen: Visual Basic 6.0 2.3.2 Beschreibung Verwendung: Das Programm berechnet in einer steuerbaren Endlosschleife Daten, überprüft die Datenbank in konfigurierbaren Abständen auf Änderungen und berechnet deren Auswirkungen für Ziele und Befragungsindikatoren. Bereitet Dateneingabemöglichkeit für neue Periode vor. Berechnungen werden erst nach Ablauf eines definierten Zweitraums bzw. Vollständigkeit zur Berechnung notwendiger Daten vorgenommen. Die Serverkomponente besitzt nur eine Verbindung zur Datenbank, diese wird aus dem zugehörigen Registry- Eintrag ausgelesen. Es besteht keine Oberfläche. Zwei Arbeitsmodi werden angeboten: Installation als Dienst (Standard): Empfohlen für den „Normalbetrieb“ mit dezentraler Dateneingabe. Arbeitsintervalle können über Konfigurationsdatei angepasst werden. Direkter Start der .exe: Empfohlen bei konzentrierten hohem Datenimport oder im Entwicklungsbereich, bedingt geeignet bei aktiven Befragungen. Die folgenden Einstellungen beziehen sich auf die Datei DOOR_INA_SERVER.dat (Punkt 0). Wartezeit (CE00) sollte im Life-Betrieb höher eingestellt sein, 30 Sekunden sind nur für den Debug-Modus geeignet. Je länger die Wartezeit, desto länger dauert eine Aktualisierung, dieses reduziert allerdings die Prozessorlast. Neuberechnung Zielerreichung (CE01,CE02): Für verspätete Änderungen welche Einfluss auf den Zielerreichungsgrad nehmen (Bsp. Änderungen in der Gewichtung, oder Kennzahlparametern) oder falls über einen vergangenen Zeitraum Werte geändert oder nachgepflegt wurden. Vorgehensweise: Server stoppen / Dienst anhalten CE01= true setzen CE02= auf Startdatum der Neuberechnung setzen 35 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Bei Durchführung wird dieses wieder auf false und das aktuelle Tagesdatum zurückgesetzt. Vorsicht, je nach Datenbankgröße und Zeitraum kann eine erhebliche Prozessorlast über einen längeren Zeitraum auftreten. Schätzwert (nach „perfmon“) netto: 8 * Servertrip in Minuten * Anzahl der Monate Überwachung der Kennzahlpflege (falls gewünscht) CE03 als Startdatum hierfür CE04 als Speicherpfad für die .xml-Datei (wird hier nur erstellt, nicht weiter ausgewertet) Inhalt: Benutzername, noch zu pflegende Kennzahlen von „seinen“ Kennzahlen gesamt KPI Aktiv: für Sonderberechnung KPI (falls vorhanden) Arbeitsweise: Der DOOR®.Server arbeitet einen Durchlauf ab und wartet dann die eingestellte Zeit (Konf.) ab um bis er den nächsten Trip zu startet. Sollte nicht die Dienstoption gewählt werden empfiehlt sich ein kurzer Interwall bei „über Nacht“ Arbeit. Fall: Neue Datenbank, Prozess gestartet Datenbank wird für die Aufnahme von Daten vorbereitet Fall: Neue Daten (Kennzahlen) • • • • Prüfung der Zugehörigkeit in der BSC-Struktur Bei Zugehörigkeit zu Zielen o Haben alle zugehörigen Kennzahlen schon Daten? -> Berechnung Zielerreichung o Ggf. diese Ergebnisse zu Zielen höherer Ebenen durchreichen o Hat höhere Ebene ausreichend Information (aus Unterzielen bzw. Kennzahlen) -> Ziele der höheren Ebene berechnen o Dieses setzt sich über alle folgenden höheren Ebenen fort Falls Notwendig werden Korrekturen bei bereits berechneten Erreichungsgraden vorgenommen „Berechnete Kennzahlen“, also Kennzahlen welche keine manuelle Dateneingabe besitzen sondern sich aus Verknüpfungen zusammensetzen werden berechnet falls ausreichend Information vorhanden sind. In dem Fall Serverseitig in die Datenbank als Kennzahlenwert geschrieben. Maßgeblich sind folgende Datenbanktabellen im laufenden Betrieb betroffen: 36 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Bereich Kennzahlen: BSC_Liste: Grundinformationen zur Kennzahl, hier zur Veranschaulichung als Eingangswerte mir angegeben. BSCKennzahlen: Grundeinstellung der Kennzahlen, DOOR®.Server nimmt Änderungen im Betrieb in den Spalten „Data“ (eingegangene Perioden) und „Status“ (wartet auf Eingabe, in Bearbeitung, abgearbeitet) vor. Berechnungsvorschriften „Berechnete Kennzahl“ finden sich in der Spalte „Source“ BSC_Data: Zentraler Datensammelpunkt über alle Perioden für jegliche auf Kennzahlen beruhende Auswertung. Kennzahlen: Sammlung von Kennzahlwerten für Schnellzugriff. Wird vom Server gefüllt und der ncstruct.dll gelesen. Interne Kommunikation über die Kette Process_ID / ID / BSC_ID (Verweis Beschreibung ncstruct.dll) 37 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Bereich Ziele: Ziele : Beschreibung des Ziels und Zugehörigkeit. Ziele_Struktur : Für Unterziele und deren Gewichtung bei Berechnung für Ziele höherer Ebene. ZKennzahlen : Kennzahlen welche Einfluss auf den Erreichungsgrad nehmen ZGrad : Ergebnistabelle, je Ziel ein Periodenanfangs- und endwert. Zuordnung über ZielID und BSC_ID (Nummer der Kennzahl) (Verweis Beschreibung ncstruct.dll) 38 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Berechnung von Zielerreichungsgraden unter der Annahme „Daten vollständig“: D. h.: Alle notwendigen Kennzahlen haben Daten, „Berechnete Kennzahlen“ sind aktuell, Unterziele haben Erreichungsgrade. Die Kennzahlen werden „normiert“, d.h. abhängig von up / down / abstand werden sie auf einen vergleichbaren Kennzahlerreichungsgrad berechnet. Dieses entspricht der Anzeige im DOOR®.MC. Anteilig der Einflüsse (Gewichtung) berechnet sich der neue Zielerreichungsgrad aus den Ergebnissen der Kennzahlen und Einflüssen von Unterzielen. Das Ergebnis wird in der Tabelle „ZGrad“ gespeichert. Dieser Wert ist bei laufender Periode als vorläufig zu betrachten. Er unterliegt so lange Schwankungen bis alle Unterinformationen eingegangen und nicht mehr verändert werden. Sollte es nachträgliche Änderungen in vergangenen Perioden geben ist eine Neuberechnung der Zielerreichungsgrade dringend empfohlen. Ab dem angegebenen Startdatum werden bestehende Werte in ZGrad gelöscht und neu berechnet. Eingabedaten (Kennzahlen, Befragungen) werden für den Server in der Tabelle signalisiert. Dieses dient ausschließlich seiner internen Verwaltung. Nach Bearbeitung werden die Daten hier wieder entfernt. Fall: Nächste Periode erreicht • • Betreffende Kennzahlen werden wieder auf „warte auf Eingabe“ gestellt. Es werden grundsätzlich nur Daten der vergangenen Periode abgefragt. Sollten Daten mittels DOOR®.SB vorgepflegt sein werden sie erst wieder auf „Abfrage“ gestellt wenn zur zugehörigen Periode keine Daten mehr bestehen. Fehlende Zielerreichungsgrade berechnen, Übertrag Periodenende zu folgendem Periodenanfang. Bei unterschiedlichen Perioden kann dieses durch die Korrektur nochmals verändert werden. 39 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Fall: Neue Befragungsergebnisse • • Zugehörige Tabellen werden aktualisiert, dieses ist Abhängig von der Art der Befragung o Befragung abgeschlossen -> Anonymisierung, Berechnung des Indikators und Zuweisung als Kennzahlwert, Befragungsdaten werden gelöscht o Sollten nicht alle Fragen beantwortet sein werden nur nicht beantwortete erneut gestellt o Bei personalisierter Befragung wird in einen entsprechenden Auswertungsbereich (Datenbank) verschoben und Originaldaten gelöscht Befragung besteht weiter aus nicht beantworteten Fragen der entsprechenden Mitarbeiter bis der Befragungszeitraum abgelaufen ist Aus den Tabellen ProcessPanel und ProcessSQ ergeben sich die Zusammenhänge des jeweiligen Befragungstyps und deren Vorschriften. Die Tabelle QueryMA_SQ ist die Tabelle zum Zwischenspeichern. Je nach Einstellung sind die Einträge hier verschlüsselt oder Klarschrift. Bei der Verwendung als Indikator wird diese Tabelle bei Ablauf des Befragungszeitraumes ausgewertet und anschließend die betreffenden Inhalte gelöscht. Hinweis: Die Spalten MA_ID (Befragte Mitarbeiter) und SQ_ID (Fragenummer) sind die Verbindung zu den Fragenkatalogen der Befragten. Dieses nimmt an dieser Stelle aber keinen weiteren Einfluss. Die Verbindungen zur BSC bestehen wiederum aus den Spalten Process_ID und BSC. 40 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.3.3 DOOR_INA_SERVER.dat Wartezeit zwischen Serverintervallen in Sekunden CE00=10 `Neuberechnung der Zielerreichungsgrade (aktueller Zeitraum) und sonstiger Berechnungen allle xx Min. Neuberechnung ALLER Zielerreichungsgrade CE01=false Startdatum der Neuberechnung dd.mm.yyyy CE02=10.11.2006 `ab diesem Datum werden die Zielerreichungsgrade neu berechnet. Nur in Kombination mit dem Parameter CE01=false und nach Neustart des Servers XML-File Kennzahlenpflege ist/von ab dd.mm.yyyy CE03=01.03.2006 Speicherpfad des XML-Files CE04=C:\MarbKennz1.xml KPI Aktiv CE05=false Soll, Risiko, Wlevel Transport CE06=false `Automatisches Weiterreichen der Standardwerte 41 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.4 Strategy Map Editor 2.4.1 Technologie Verwendete Programmiersprachen: Visual Basic 6.0 2.4.2 Beschreibung Verwendung: Der Editor wird ausschließlich durch den AdminClient aufgerufen. Die Strategy Map wird mit Hilfe von Adobe SVG Viewer dargestellt. Dies ist ein eigenständiges Programm zur Visualisierung der Perspektiven und Ziele als Strategy Map innerhalb des Management Cockpit. Datenbankverbindung nach Registry. Übergabewerte BSC.ID Ergebnis: SVG- Grafik welche in der Datenbank gespeichert wird. Verbindung zur BSC: BSC_NR entspricht einer (Unter-)BSC Beim Start wird die aktivierte BSC geladen und darunter liegende Ebenen dargestellt. Vorbereitet in den Feldern werden die üblichen Verbindungen BSC / Perspektive / Ziel. Die eingestellten Verbindungsfolgen (Pfeile) der Bereiche werden berechnet um Überdeckung der Symbole zu vermeiden. Die fertige Grafik wird in der Datenbank gespeichert aus der sie mittels der ncstruct.dll dem DOOR®.MC zugänglich gemacht wird. Innerhalb des MC wird sie mit aktuellen Erreichungsgraden / Tendenzen und anhängigen Projekten versorgt. Die SMap selber dient somit nur als Hintergrundgrafik, mit Inhalten wird sie erst im DOOR®.MC gefüllt. Als Ausgangsbasis für Zusammenhänge wird hier wiederum die bsc.ID verwendet und dort zur Laufzeit erstellt. 42 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Bilder des Strategy Map Editors und der erzeugten Strategy Map: 43 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 2.5 DBCONNEX 2.5.1 Technologie Verwendete Programmiersprachen: Visual Basic 6.0 2.5.2 Beschreibung Verwendung: Mit Hilfe der DBCONNEX wird der Datenbankpfad in die Windows Registry geschrieben. Vor dort wird es von allen Modulen abgegriffen. Des Weiteren können Sie mit dem Tool „dbconnex“ einen basx64 String erstellen, Datenbanken sicher und zurücksichern, das Servermodul starten, die aktuelle SQL Version auslesen, Zugriffe auf die Datenbank prüfen oder einen IISRESET durchführen. 44 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 3 ComponentOne Herstellerinformationen: ComponentOne Chart, der Nachfolger von Olectra Chart ist eines der schnellsten Charting Tools auf dem Markt und eignet sich besonders gut zur Visualisierung von Messergebnissen, auch in Echtzeit-Anwendungen, sowie zur Darstellung von eindrucksvollen Businessgrafiken zur direkten Übernahme in Textverarbeitungsprogramme wie Microsoft Word. Die Chart-Typen reichen von Polar- und Radarkoordinaten über Balkendiagramme bis zu komplexer 3D-Oberflächendarstellung. Es wurde entworfen, um Entwicklern die Realisierung einer Vielzahl phantastischer 2Dund 3D-Charts zu ermöglichen (Chart cached- oder Streaming Data) oder komplexe Datensätze in einem leistungsfähigen visuellen Format anzuzeigen. Indem es die neuesten in Visual Studio .NET integrierten Technologien nutzt, verbirgt ComponentOne Chart for .NET die einer Diagramm-Komponente zugrunde liegende Komplexität völlig. So können sich Entwickler auf die wichtigen anwendungsspezifischen Aufgaben konzentrieren. ComponentOne Chart for .NET ist ein mächtiges, vielseitiges und leicht zu bedienendes Werkzeug zur Diagrammerzeugung. Programmierer können ComponentOne Chart for .NET verwenden, um voll funktionsfähige, benutzerinteraktive Diagramme zu erstellen. Benutzen Sie den umfassenden Satz an Ausstattungsmerkmalen und die Vielzahl an Diagrammtypen, um komplexe Datenbestände genau anzuzeigen und benutzerfreundliche, professionelle Chart-Anwendungen zu schreiben. ComponentOne Chart for .NET enthält ein 2D- und 3D-Chart-Control zum Einsatz in Ihrer Windows-Anwendung. Anwender werden mit ihren mächtigen professionellen Fähigkeiten zur Anzeige und Manipulation von Information in hoher Qualität unterstützt. Jedes Control ist als ein einzigartiges .NET Custom Control für den Einsatz in Microsoft .NET Windows-Anwendungen verfügbar. Verwenden Sie das 2D-Chart-Control, um Daten als Linien-, X-Y-Plot-, Torten-, Netz-, Flächen- oder Säulendiagramm oder als Kombination verschiedener Diagrammtypen darzustellen. Das ComponentOne Chart for .NET-2DChart-Control ist für Real-TimeApplikationen optimiert und gibt Ihnen die Möglichkeit, sich rasch verändernde Daten anzuzeigen. 45 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 4 Zwischenschicht 4.1 ncstruct.dll 4.1.1 Technologie Verwendete Programmiersprachen: Visual Basic 6.0 4.1.2 Beschreibung Verwendung: Datenbankverbindung / Zwischenschicht zwischen dem Management Cockpit (WebClient) und der Datenbank. Die DLL Lädt bei Aktivierung alle BSC-Daten und bereitet sie als Model, für die spätere Verwendung, vor. Die kompilierte Version ist als dll im WebClient- Verzeichnis vorrätig. Sie besitzt keine eigene Oberfläche. Die ncstruct ist eine Ebene zwischen der Datenbank und dem DOOR®.MC. Sie wird mit dem MC installiert und versorgt diesen mit dem dort weiter zu verarbeitenden Datenmodell. Nach jeweils zwei Minuten werden diese aktualisiert. Zugriffe des MC liefern die Daten, welche zum gegebenen Zweitpunkt im Arbeitsspeicher vorliegen. Ein direkter Datenbankzugriff aufgrund einer Clientanforderung erfolgt nicht. Ausnahme: Kennzahlenpflege bei dezentraler Erfassung. Ein wichtiger Bestandteil ist hier das Modell für Ziel und Kennzahlwerte. Die jeweiligen Eigenschaften werden nach folgendem Muster geliefert. - für alle BSCs - für alle Perspektiven bsc.ID; persp.ID; - für alle Ziele - für alle Kennzahlen ziel.ID; knz.ID; In den jeweiligen Ebenen bestehen Eigenschaften denen Werte zugeordnet sind. Die Werte beruhen auf Datenbankabfragen, sie werden i.d.R. hier nicht weiter modifiziert. Die ncstruct besitzt nur eine marginale Oberfläche zwecks debug. Diese ist auch nur aus einer Entwicklungsumgebung heraus zu erreichen. 46 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH CNCDataConnector.cls: Verbindung zur Datenbank wird aus Registry-Eintrag entnommen. CNCFavoriteFolder.cls / CNCFavoriteStub.cls: Handling der im DOOR®.SB angelegten gespeicherten Auswertungsformen. CNCBenchmark.cls: Ursprüngliche Benchmarkauswertung, diese wird nicht mehr verwendet. CNCMA.cls, CNComment.cls: Kommentarwesen Mitarbeiter CNCMilestone.cls: Meilensteine administrativer Projekte CNCZMeasure.cls Administratives Projektwesen CNCSQ.cls Mitarbeiterbefragung CSQScala.cls Skalierung für Befragungen INCDocuments.cls INCNode.cls INComment.cls INCSsafeObject.cls Klasseninitialisierungen CSecureContext.cls Mitarbeiterrechte BSC, Perspektiven, Ziele, Kennzahlen usw. NCApp.cls Modelierung der Datenstruktur nach oben genannten Muster, dazu CNCProcess.cls Der BSC-Prozess (proc): Allgemein: proc.Abstand; proc.Beginn; proc.Ende; 47 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH proc.ID; proc.Children; Befragungen: proc.MA; proc.QuestionType; proc.LastQuery; proc.AnswerTime; proc.SaveAnswers; proc.Scala; proc.Text; proc.BSC; Hieraus folgt: ncstruct.CNCBSC bsc; bsc.Abstand; bsc.Beginn; bsc.Ende; bsc.Children; bsc.ID; bsc.PCount; bsc.Process; bsc.Status; bsc.Text; bsc.KCount; bsc.Kennzahl(obj); //Kennzahl der BSC bsc.get_Perspektive //damit nächste Ebene CNCPerspektive.cls persp.KCount; persp.get_Kennzahl; persp.ZCount; persp.get_Ziel; persp.Text; persp.ID; //zur nächsten Ebene CNCZiel.cls ncstruct.CNCZiel ziel ziel.KCount; ziel.ID; ziel.Kommentar; //Kommentare, Dokumente ziel.GetDocument; ziel.GetDocumentFile; 48 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH ziel.ZGrad; ziel.ZGradOld; //Erreichungsgrad und //Tendenz ziel.MCount; ziel.get_Massnahme; //Projekte ziel.DZCount; ziel.get_DZW; //Ziele tieferer Ebene CNCKennzahl.cls ncstruct.CNCKennzahl knz Kennzahlen können in allen Ebenen vorkommen knz.Abstand; knz.DataCount; knz.Digits; knz.Direction; knz.Documents; knz.ID; knz.Risk; knz.Soll; knz.Text; knz.WaitForInput; knz.get_Data; //Periode //Anzahl Datensätze //Darstellungsform //up,down,Abstand,kpi //Dokumente //Rechenwert Risiko //Rechenwert soll //Dateneingabe erwartet Die einzelnen Klassen haben weitere Eigenschaften und Funktionen. Diese ergeben sich aus dem Zusammenhang und können im Quelltext abgerufen werden. Exemplarisch sind hier daher nur einige der häufig verwendeten beschrieben. Die Funktionen stellen die Verbindung zu den korrespondierenden Klassen dar womit der Zugriff auf deren Objekte erreicht wird. 49 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Exemplarisch für Anknüpfungen zugehörige Datenbanktabellen: Datenbankpendant db. - für alle BSCs - für alle Perspektiven bsc.ID db.ID persp.ID db.(Main)Process_ID - für alle Ziele - für alle Kennzahlen ziel.ID db.ZielID knz.ID db.BSC_ID Datenbanktabelle „Docs“: Die Spalte „ObjectID“ liefert die Zugehörigkeit zu Zielen bzw. Kennzahlen. Gleiches Verfahren gilt für Kommentare und Projekte (wovon sich deren Untertabellen ableiten). 50 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Beschreibung der öffentlichen Klassen und Schnittstellen der Bibliothek ncstruct v0.1.0.6 Im Folgenden werden in jeder Klasse die wichtigsten Funktionen und Eigenschaften kurz beschrieben. Geerbte sowie mehrmals vorkommende Eigenschaften werden dabei nur einmal behandelt. 4.1.3 Interface: INCNode Element (Property) ID As Long Beschreibung Eindeutige ID des Knoten. AddChild(c As INCNode, Optional sKey As String Hängt einen neuen Childknoten an. = "") As Long RemoveChild(vParameter As Variant) As Long Löscht einen Childknoten. (Property) INCNode Child(vParameter As (Property) Children As Long Variant) As Gibt einen Childknoten zurück. vParameter kann entweder eine Zahl(Index) oder ein String(Schlüssel) sein. Gibt Anzahl der Childknoten zurück. GetParent() As INCNode Gibt den Parentknoten zurück. SetParent(c As INCNode) As Long Verknüpft mit einem Parentknoten. (Property) Text As String Bezeichnung des Knoten. 4.1.4 Interface: INCSafeObject Element Beschreibung SetSContext(clsContext As CSecureContext) As Übergibt eine Instanz Long CSecureContext an das Objekt. der Klasse GetSContext () As CSecureContext Gibt die dem Objekt zugeordnete Instanz der Klasse CSecureContext zurück. GetPermission(lPermission As Long, lParam As Gibt True zurück, wenn die Berechtigung lPerLong) As Boolean mission in dem durch CsecureContext definierten Sicherheitskontext enthalten ist. Für den WC ist zur Zeit nur eine Berechtigung relevant: lPermission=14 : Objekt sichtbar lParam: 0: überprüft nur die Instanz, für die GetPermission aufgerufen wurde 1: überprüft auch die übergeordneten Knoten, leifert True auch falls einer der übergeordneten Knoten die Berechtigung hat. 51 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 4.1.5 Klasse: CNCDataConnector Siehe Dokumentation zu ncev. 4.1.6 Klasse: INCSafeObject Kommentar: Beschreibt eine Balanced Scorecard. Element (Property) PCount As Long Beschreibung Gibt Anzahl der Perspektiven zurück. AddPerspektive(c As CNCPerspektive, Optional Verknüpft eine Perspektive mit der BSC. sKey As String = "") As Long (Property) Perspektive(vParameter As Variant) Gibt eine Perspektive zurück. vParameter kann As CNCPerspektive entweder eine Zahl(Index) oder ein String(Schlüssel) sein. (Property) DataCount As Long Gibt Anzahl der Datensätze zurück.(falls die BSC aktiv ist) 4.1.7 Klasse: CNCPerspektive Kommentar: Repräsentiert eine Perspektive. Beschrieben werden nur Methoden, die sich auf Kennzahlen beziehen. Element (Property) KCount As Long Beschreibung Gibt Anzahl der Kennzahlen zurück (Property) Kennzahl(vParameter As Variant) As Gibt eine Kennzahl zurück. vParameter kann CNCKennzahl entweder eine Zahl(Index) oder ein String(Schlüssel) sein. AddKennzahl(c As CNCKennzahl, Optional sKey Verknüpft eine Kennzahl mit der Perspektive. As String = "") As Long 4.1.8 Klasse: CNCZiel Kommentar: Beschreibt ein Ziel. Element (Property) KCount As Long (Property) KW(Index As Long) As udtKWeight (Property) UZCount As Long (Property) DZCount As Long (Property) UZW(Index As Long) As udtZWeight (Property) UZW(Index As Long) As udtZWeight Beschreibung Gibt Anzahl der Kennzahlen zurück Setzt bzw. liest die Gewichtung zu jeder Kennzahl, die mit dem Ziel verknüpft ist. Gibt Anzahl der verknüpften Ziele(nach oben) zurück Gibt Anzahl der verknüpften Ziele(nach unten) zurück Setzt bzw. liest die Gewichtung zu jedem Ziel, mit dem das aktuelle Ziel verknüpft ist.(nach oben) Setzt bzw. liest die Gewichtung zu jedem Ziel, mit dem das aktuelle Ziel verknüpft ist.(nach unten) 52 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH (Property) MCount As Long Gibt Anzahl der Massnahmen zurück (Property) Massnahme(vParameter As Variant) Gibt eine Massnahme zurück. vParameter kann As CNCZMeasure entweder eine Zahl(Index) oder ein String(Schlüssel) sein. AddMassnahme(c As CNCZMeasure, Optional Verknüpft eine Massnahme mit dem Ziel. sKey As String = "") As Long 4.1.9 Klasse: CNCApp Kommentar: die Hauptklasse. Enthält alle anderen Strukturen. Element Beschreibung InitBSCTree() As Long Initialisiert den BSC-Baum. InitProcessTree() As Long Destroy() As Boolean Initialisiert den Process-Baum. Darf nur nach InitBSCTree ausgeführt werden. Zerstört die Instanz und gibt alle Ressourcen frei. 4.1.10 Klasse: CSecureContext Element Beschreibung SetUser(sName As String, sPasswort As String) Initialisiert den Sicherheitskontext mit einem beAs Long stimmten Benutzer. Rückgabewert: 0: erfolgreich initalisiert 1: Benutzer existiert nicht 2, 3: Fehler, Inkonsistenz in der Datenbank GetUserPrivilege(lPrivilege As Long) As Boolean Liefert True wenn der Sicherheitskontext die Berechtigung lPrivilege enthält, wobei diese Berechtigung nicht an ein bestimmtes Objekt gebunden ist. Anmerkungen: _1) Die allermeisten Eigenschaften und Funktionen sind selbsterklärend und wurden daher nicht beschrieben. _2) ncstruct setzt ADO voraus. 53 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 5 IIS – Microsoft Webserver Windows- eigener Webserver, Bestandteil von Windows (ab Win 2000, Ausnahme Win XP home), muss als Windowskomponente installiert werden. Nimmt Clientanfragen entgegen und liefert Webseiten aus. 6 Datenbank Microsoft SQL Server 2003 Vorbereitung des Systems durch einspielen einer „leeren“ Datenbank mit notwendigen Strukturen (siehe 6.1). 6.1 Struktur 6.2 Tabellen 6.2.1 Bezug zu Kennzahlen Datenbank-Beschreibung Bezug Kennzahlen: Bsc_Data Sammelpunkt der Kennzahlendaten. 54 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Eine Kennzahl wird über Process_ID, ID, BSC_ID adressiert Data: Aufzählung der Perioden Value: eingegebener Wert der Kennzahl in der Periode Soll/Risk/WLevel1-4: Einstellung über den AdminClient LastChanged: letzte Änderung CalcTime: Erster Tag des Monats in der zugehörigen Periode EndTime: Letzter Tag des Monats in der zugehörigen Periode Probleme: Wenn die Kennzahlenpflege sehr schlecht durchgeführt (zu spät oder wenn eine Kennzahl bei der Berechnungen aus mehreren Kennzahlen nicht eingegeben wurde) wurde, treten vereinzelt Verschiebungen in CalcTime/EndTime auf. Ähnliches bei einer schlecht vorbereiteter Datenbank. Kennzahlen Process_ID, BSC_ID adressieren die Kennzahl Value: Semikolon-getrennte Aneinanderreihung der Eingabewerte Vorsicht: Bei manueller Änderung der Value in der Bsc_Data muss auch hier angepasst werden. Gleiches gilt für Datenimport. BSCKennzahlen 55 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Gewichtung: Anteil an Erreichungsgraden Perspektive: zusätzliche Position im Baum CalcAuto: Berechnete Kennzahl MainProcessID: Ast des Hauptbaumes Abstand: „M“=Monate, Ziffer = wie viele in einer Periode (1, 3, 6, 12) Data: Anzahl der Datensätze in der BSC_data Status: Zustand der Kennzahl (in Berechnung / wartet auf Eingabe / alle Informationen vorhanden) Source: Rechenregeln für berechnete Kennzahlen BSC_Liste Name / Shortname: Findet sich als Bezeichnung im Baum wieder 56 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Unit: Einheit der Wertigkeit Digits: Darstellung (Kommastellen) BestInt: 0=up, 1=down, 2=Abstand (jeweils +10 für KPI) Rang: Standard 10.000, Alternative Werte zur Bildung einer Darstellungsreihenfolge nicht alphabethisch (geeignet für importierte Daten) 57 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH 6.2.2 Bezug zu Zielen Datenbank-Beschreibung-Ziele: Ziele BSC_ID – Bsc_Data.BSC_ID ZielID: Aufzählung Ziel: Name des Ziels Description: Beschreibung Start / End: Prozesslaufzeit WLevel1-2: Warngrenzen, unabhängig von den Kenzahlwarngrenzen ZKennzahlen ZielID = Ziele.ZielID BSC_ID = Ziele.BSC_ID Gewichtung: Anteilswert der Kennzahl im Zielerreichungsgrad Ziele_Struktur Zusammenhänge Ober-/Unterziel. Parent & Child aus Ziele.ZielID 58 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information. DOOR GmbH Gewichtung: Anteil des Unterziels am Oberziel ZGrad Üblicherweise 2 Datensätze je Periode und Ziel (Periodenanfang / Periodenende) vgl. Datum Flag zeigt Berechnungszustand an Zielerreichungsgrade werden vom Server berechnet sobald alle notwendigen Eingaben vorhanden sind. In der Konfigurationsdatei des Servers ist eine Neuberechnung der Zielerreichungsgrade für beliebigen Zeitraum einstellbar. Dieses muss durchgeführt werden wenn ältere Kennzahldaten (soll / risk / value) verändert wurden. Vorsicht: Die Neuberechnung verursacht je nach Zeitraum und Datenbankgröße eine dauernde hohe Prozessorlast (ca. 8 * Anzahl der Monate * normale Durchlaufdauer). Parallel laufende weitere Programme werden dieses verlängern DOOR GmbH Frank Bischoff Hildesheimer Str. 27 D-38114 Braunschweig eMail: [email protected] Telefon: +49 [0]531-3000-03 Telefax: +49 [0]531-3000-09 59 von 59 © 2008 DOOR GmbH. Alle Rechte vorbehalten. Andere Marken oder Logos sind Eigentum der jeweiligen Firmen und Inhaber. Die Angaben im Text sind unverbindlich und dienen zur Information.