Springe zum Inhalt

Autor: Sandro Dörr

Mein Name ist Sandro Dörr. Ich habe Wirtschaftsinformatik studiert und mein fachlicher Schwerpunkt lag bisher in der Softwareentwicklung, bevorzugt in Java, in der Audiosignalverarbeitung und Content Management Systemen. Dabei habe ich mich in den letzten drei Jahren sehr viel mit MS SharePoint Businesslösungen beschäftigt. Der Fokus liegt hier in Themenbereichen wie Abbildung von Geschäftsprozessen mit der SharePoint Workflow Engine, Social Media im Unternehmen, Intranet und Collaboration-Szenarien. Gerne berate ich Sie bei dem Aufbau Ihres Firmenportals, bei der Schulung Ihrer Key-User und IT-Mitarbeiter, bei der Abbildung Ihrer Geschäftsprozesse mit Nintex oder SharePoint Designer oder wirke in spannenden Softwareentwicklungsprojekten mit.

Die Normalformen – Normalisierung im relationalen Datenbankschema

Der Normalisierungsprozess wurde erstmalig im Jahre 1972 von Codd vorgschlagen und später von Boyce und Codd um die 4. Normalform (Boyce-Codd Normalform – BCNF) erweitert. Dieser Prozess analysiert die funktionalen Abhängigkeiten zwischen den Attributen im relationalen Datenbankentwurf (siehe hierzu auch mein Artikel: Funktionale Abhängigkeiten im relationalen Schemaentwurf ). Das Ziel der Normalisierung ist zum Einen Redundanzen zu eliminieren und zum Andern die Verhinderung bzw. Minimierung von Anomalien (Einfüge-,Lösch- und Updateanomalien). Es gibt prinzipiell auch noch weitere Normalformen, jedoch wird in der Industrie beim Datenbankentwurf bis zur Boyce-Codd Normalform normalisiert. Daher werde ich auch die NF nur bis zur BCNF behandeln.

Dieser Artikel vermittelt das theoretische Verständnis und die praktischen Fertigkeiten für den Normalisierungsprozess in kompakter und Verständlicher Weise, ohne sich dabei in theoretischen Betrachtungen zu verlieren und führt Sie damit Schritt für Schritt bis zur 4. Normalform.

Lesen Sie weiter Die Normalformen – Normalisierung im relationalen Datenbankschema

Funktionale Anhängigkeiten im relationalen Schemaentwurf

Beim Datenbankentwurf spielt die funktionale Abhängigkeit von Attributen eine zentrale Rolle, da sie als wichtigstes Konzept im Entwurf eines relationalen Schemas gilt. Genauer gesagt werden funktionale Abhängigkeiten eingesetzt um die Normalformen für ein Relationenschema herzuleiten. Im folgenden Artikel möchte ich also die funktionale Abhängigkeit in diesem Kontext beleuchten. Dabei werde ich eine formale Definition für den Begriff der funktionalen Abhängigkeit erarbeiten und an Beispielen veranschaulichen. Dieser Artikel sollte damit die Grundlage für die Herleitung der Normalformen im relationalen Datenbankschema bilden.

Lesen Sie weiter Funktionale Anhängigkeiten im relationalen Schemaentwurf

Transformation eines Entity-Relationship-Modell (ERM) in ein relationales Datenbankschema

Im Rahmen der Datenmodellierung wird der Problembereich einer Analyse unterzogen, sodass die Diskurswelt, also der relevante Ausschnitt der Realität bzw das Modell, in der Form eines ER-Diagramms dargestellt werden kann. Das konzeptuelle Schema (ER-Diagramm) kann nun mit Hilfe von Tranformationsregeln in das relationale Datenbankschema überführt werden. Das Resultat hieraus sind Relationenschemata, welche anschliessend einer Normalsierung unterzogen werden müssen. Zum Thema Normalisierung werde ich einen eigenen Artikel schreiben, da diese Themen sehr gut abgegrenzt werden können.

In diesem Artikel werde ich also die notwendigen Kenntnisse vermitteln um ein ER-Diagramm in Relationenschemata zu überführen. Dies werde ich mit zahlreichen Beispielen visualisieren um dieses relativ abstrakte Thema anschaulicher zu gestalten.

Lesen Sie weiter Transformation eines Entity-Relationship-Modell (ERM) in ein relationales Datenbankschema

Electronic Mail – das eMail Protokoll

In diesem Artikel möchte ich die Arbeitsweise des eMail Protokolls im Detail beleuchten. Hierbei soll auch eine Einordnung in das OSI-Referenzmodell erfolgen. Ausserdem möchte ich abschliessend auf das Thema Sicherheit eingehen um aufzuzeigen wo die Schwächen des Protokolls liegen und einen kleinen Ausblick auf die Möglichkeiten, welche sich in diesem Bereich bieten, liefern.

Lesen Sie weiter Electronic Mail – das eMail Protokoll

Berechnung der Differenz zweier Datumswerte mit Nintex Workflow

Möchte man mit Nintex Workflow die Differenz zwischen zwei Datumswerten, zum Beispiel in Tagen, berechnen, so könnte man zunächst auf die Idee kommen, dies mit der Aktion für mathematische Berechnungen zu machen, was jedoch so nicht funktionieren wird, da diese Funktion mit dem Datumsformat nicht zurecht kommt.

Daher möchte ich in diesem Artikel eine einfache Lösung für diese häufig auftretende Anforderung aufzeigen, die sich die Inlinefunktionen von Nintex zu nutze macht. Dabei werde ich zunächst kurz die Nintex Inlinefunktion vorstellen um dann alle Schritte der Anwendung anhand von Screenshots visualisieren um dem Leser das Nachvollziehen meiner Lösung etwas einfacher zu machen.

Lesen Sie weiter Berechnung der Differenz zweier Datumswerte mit Nintex Workflow

Die diskrete Kosinus-Transformation (DCT)

Die diskrete Kosinustransformation (DCT – discrete cosine transformation) ist eine  diskrete, reellwertige, lineare und orthogonale Transformation.  Sie wurde 1974 ertsmalig vorgestellt und wurde aus der Fourier-Transformation (FT) unter Ausnutzung von Signalsymmetrien abgeleitet. Da es sich um eine reellwertige Transformation handelt, im Gegensatz zur FT deren Ergebnisse einen Real- und einen Imaginärteil hat, was natürlich nicht ganz so bequem zu handhaben ist und auch die doppelte Menge an Daten erfordert.

In diesem Artikel möchte ich einerseits die theoretischen Grundlagen und Anwendungsgebiete der DCT streifen, sowie anhand von Codebeispielen in Java eine Implementierung der diskreten Kosinustransformation vorstellen.

Lesen Sie weiter Die diskrete Kosinus-Transformation (DCT)

Der Iterator – iterieren über Java Collections

Die Java Collections implementieren die Schnittstelle java.lang.Iterable<T> und stellen somit eine Iterator Methode zur Verfügung. Mit dieser Methode besteht die Möglichkeit alle Objekte der Datenstruktur nacheinander einzeln zu extrahieren. Im Folgenden möchte ich kurz die Verwendung der Iterator für eine Liste an einem Codebeispiel veranschaulichen.

Lesen Sie weiter Der Iterator – iterieren über Java Collections

Java Collections

Die sogenannten Collection-Klassen (auch Aggregate oder Container) stellen eine Sammlung von Daten oder Objekten in einer sog. Datenstruktur dar. Sie werden verwendet um bei der Programmausführung transiente (nicht persistent gespeicherte) Daten im Arbeitsspeicher zu halten. In diesem Zusammenhang dürfte den meisten Lesern das Array schon bekannt sein, welches jedoch, im Gegensatz zu den Collections, teil der Sprachdefinition von Java ist.  Da Arrays jedoch verschiedenen Einschränkungen unterworfen sind bietet die Java-Klassenbibliothek im Paket java.util die Collections zur Verwendung an.

Die Vorteile gegenüber dem Array und den konkreten Einsatz der Java-Collections möchte ich in diesem Artikel mit dem nötigsten an Theorie und ein wenig Beispielcode veranschaulichen. Außerdem werde ich immer wieder auf die entsprechenden Seiten der Java-Klassenbibliothek verweisen, sodass Sie sich einen schnellen Überblick über die Methoden verschaffen können.

Lesen Sie weiter Java Collections

SharPoint-Desinger Workflow Startoptionen

Bei der Verwendung von SharePoint Designer Workflows bestehen verschiedene Möglichkeiten wie ein Workflow gestartet werden kann. Daher unterscheidet man prinzipiell drei unterschiedliche Varianten. Den Erstellungs-Workflow (on create), den Update-Workflow (on update) und den manuellen Wkfl. Die ersten beiden stehen daher in unmittelbarem Zusammenhang zum Erstellungsformular (New-Form) und dem Bearbeitungsformular (Edit-Form). In diesem Artikel möchte ich daher die Zusammenhänge kurz darstellen.

Lesen Sie weiter SharPoint-Desinger Workflow Startoptionen

Das Prinzip der Objektorientierung

In diesem Artikel möchte ich euch die wesentlichen Merkmale der Objektorientierung anhand der Programmiersprache Java erklären, die von vornherein als objektorientierte Sprache entwickelt wurde und somit das Konzept hervorragend veranschaulicht. Die Objektorietnierung geht davon aus, dass ein Modell der Realität über eine Menge von Objekten abgebildet werden kann. Hierbei geht man so vor, dass man zunächst im Problembereich denkt, der in der Regel sehr Komplex ist, da die Objekte der Realen Welt zahlreiche Eigenschaften haben, die jedoch nicht alle relevant für die Lösung sind. Dementsprechend nimmt man eine Abstraktion des Problembereiches vor und modelliert den sogenannten Lösungsbereich als einen Ausschnitt der realen Wel, der nur die Objekte und die Eigenschaften enthält der für die Lösung des Problems notwendig sind.

Die Eigenschaften von Objekten werden über sogenannte Attribute dargestellt, während der Zugriff auf die Eigenschaft mit Hilfe von Methoden erfolgt. Objektorientierte Softwaresysteme haben zudem die hilfreiche Eigenschaft sehr stabil gegenüber nachträglichen implementierten Änderungen zu sein, anders als dies z.B. bei der Funktionsorientierten Programmierung schnell zu instabilen Zuständen führen kann.

Lesen Sie weiter Das Prinzip der Objektorientierung

Die Unterscheidung von Effektivität und Effizienz

Effektivität und Effizienz sind zwei Begriffe die zum Einen sehr wichtig sind und zum anderen sehr häufig durcheinander gebracht und nicht richtig verstanden werden. Gerade im Unternehmen sollten diese beiden Ideen täglich gelebt werden und die Grundlage jeder Entscheidung bilden, egal ob es nun Führungsentscheidungen sind oder aber wie Sie eine Aufgabe angehen oder Ihren täglichen Arbeitsablauf gestalten. Denn Ineffektivität und Ineffizienz sind der langsame und schwerfällige Tod jedes Unternehmens. (Anmerkung: Man sollte meinen, dass dies auch für Staaten gilt, aber die tägliche Erfahrung lehrt uns das Gegenteil. Die Frage ist nur wie lange das gutgehen kann.) Aus diesem Grunde möchte ich hier eine kleine Definition wagen und die beiden Begriffe voneinander abgrenzen.

 

Lesen Sie weiter Die Unterscheidung von Effektivität und Effizienz

SharePoint Metadatennavigation – Schlüsselfilter und Navigationshierarchie (Hierarchiefilter)

Das zentrale Element des MS SharePoint ist die Liste. In Ihrer Struktur erinnert Sie an eine Tabelle einer SQL Datenbank und bietet dem User zahlreiche Möglichkeiten herkömmliche Daten, aber auch „Big Data“ in Form von beliebigen Dateien effektiv zu verwalten und zu verschlagworten. Gerade im Bereich großer Ablagesysteme für Dokumente, die in früheren Zeiten im Unternehmen durch den klassischen Fileserver realisiert wurden, zeigen sich die Stärken des SharePoint. Eine dieser Stärken ist die Pflege von Metadaten, also Eigenschaften oder Attributen die Aussagen über den Inhalt einer Datei oder eines Datensatzes im Allgemeinen machen. Früher waren an dieser Stelle die „sprechenden Dateinamen“ das Mittel der Wahl (oder besser gesagt der Qual) um neben Verzeichnishierarchien in begrenztem Umfang die Suche zu nutzen zu können. Welche bedeutenden Fortschritte und Möglichkeiten Ihnen der SharePoint bietet, und damit die Zusammenarbeit wesentlich erleichtert, möchte ich Ihnen in diesem Artikel anhand der Schlüsselfilter und Navigationshierarchie zeigen.

Lesen Sie weiter SharePoint Metadatennavigation – Schlüsselfilter und Navigationshierarchie (Hierarchiefilter)

Initiierungsformularparameter – SharePoint Designer Workflow Parameterübergabe

Bei der manuellen Ausführung eines SharePoint-Designer Workflows kann es unter Umständen erforderlich sein, dass der Benutzer Informationen übergibt die zur Datenverarbeitung innerhalb des Workflows notwendig sind. In der Softwareentwicklung sprechen wir von der Parameterübergabe. Die übergebenen Parameter können wie lokale Variablen innerhalb der Workflowinstanz verwendet werden, sind jedoch nicht Teil des Datensatzes (Listenelement) selbst.

Im folgenden Artikel möchte ich Ihnen beispielhaft demonstrieren wie Sie die Übergabeparameter für einen Workflow konfigurieren.

Lesen Sie weiter Initiierungsformularparameter – SharePoint Designer Workflow Parameterübergabe

Zustandsautomat – SharePoint Workflow

Im Unternehmensumfeld sind Geschäftsprozesse und vor allem ihre Automatisierung ein zentrales Thema. Bei der Abbildung von Geschäftslogik mit MS SharePoint Technologie, z.B. bei der Entwicklung von Workflows mit Hilfe von Visual Studio oder SharePoint Designer gibt es zum Einen das Konzept des sequentiellen Workflows und zum Anderen den Zustandsautomat (engl. state machine) welcher seine Vorteile gegenüber sequentieller Automatisierung von Geschäftsprozessen hat, welche in einer tendenziell größeren Freiheit der menschlichen Teilnehmer bestehen.

Lesen Sie weiter Zustandsautomat – SharePoint Workflow

Export eines SharePoint Designer Workflow Templates – Workflow Vorlagen

MS SharePoint bietet von Haus aus eine recht nützliche Workflow Engine die sich dafür eignet Geschäftsprozesse abzubilden. Hierzu bietet Microsoft sein gratis-Tool SharePoint Designer an. Der SP-Designer bietet jedoch, im Gegensatz zu Nintex, relativ eingeschränkte und unflexible Möglichkeiten einen Workflow zu exportieren. Ein SharePoint Designer Workflow wird direkt mit einer Liste oder Bibliothek verknüpft und bleibt auch an diese eine Liste gebunden, während Sie z.B. in Nintex einen Export an Inhaltstypen binden können oder aber auch einen direkten ungebundenen (keine Bindung an eine Liste) Export vornehmen können und dies auf Knopfdruck im Nintex eigenen Format.

Lesen Sie weiter Export eines SharePoint Designer Workflow Templates – Workflow Vorlagen

Hyperlink in ein MS SharePoint Formular einfügen

Der SharePoint Designer ist das Standard Tool das gratis von Microsoft zur Verfügung gestellt wird um verschiedene Modifikation Ihrer SharePoint Lösungen umzusetzen. An dieser Stelle möchte ich Ihnen zeigen wie Sie ein SharePoint Formular mit dem Designer um einen Hyperlink zu einer beliebigen Seite ergänzen. Dabei können Sie auch festlegen ob der Link in einem neuen Tab geöffnet werden soll oder nicht. Was meist sinnvoll ist, da der Link ja meist ergänzende Informationen zur Anlage oder Bearbeitung des Listenelmentes zur Verfügung stellen soll.

Lesen Sie weiter Hyperlink in ein MS SharePoint Formular einfügen

Form-Webparts in einem SharePoint Listenformular einfügen – Lookup auf eine Liste in einer Form

SharePoint Forms können leicht mit dem SharePoint Designer um die Standardwebparts ergänzt werden. In diesem Beispiel möchte ich Ihnen das anhand eines Listenwebparts demonstrieren welches ich in das Bearbeitungsformular (engl. edit form) einer Aufgabenliste einfüge. Dies kann genutzt werden um Informationen aus beliebigen anderen SharePoint Listen bei der Anlage oder Bearbeitung eines Listenelements zur Verfügung zu stellen.

Lesen Sie weiter Form-Webparts in einem SharePoint Listenformular einfügen – Lookup auf eine Liste in einer Form

Druck Button in MS SharePoint Formularen einfügen

Der SharePoint Standard bietet von Haus aus keine Möglichkeit Listenformulare auszudrucken. Natürlich ist es möglich über das Kontextmenü (Rechtsklick auf ein Listenelement) die Displayform auszudrucken. Jedoch ist ein Druckbutton innerhalb des Formulares wesentlich eleganter und nutzerfreundlicher.

Diese Funktion lässt sich auch mit ein paar Klicks über das gratis Werkzeug SharePoint Designer umsetzen. Dazu verwenden wir eine JavaScript Funktion die auf der Client Seite im Browser (Webtechnologie) ausgeführt wird.

Lesen Sie weiter Druck Button in MS SharePoint Formularen einfügen