IT & BWL
- Wirtschaftsinformatik
-
Aus dem heutigen Unternehmensalltag sind komplexe IT- und Softwarelösungen nicht mehr wegzudenken. Die Wirtschaftsinformatik stellt dabei die wissenschaftliche Disziplin dar, die Betriebswirtschaft und Informatik miteinander verbindet. Sie befasst sich weniger mit der Erstellung, sondern mehr mit der Planung und dem Management von IT- und Informationssystemen, außerdem der Koordination und Abstimmung von Unternehmensleitung und -technik.
- Projektmanagement
-
Für die Durchführung eines IT-Projektes bedarf es eines integrierten Vorgehens, an dessen Anfang eine grundlegende Analyse erfolgt. Es müssen außerdem die Ziele, die Abfolge einzelner Projektabschnitte sowie die technische und personelle Organisation festgelegt werden. Zudem sollten Kalkulationen und Risikobewertungen vorgenommen werden. Die anschließende Umsetzung erfordert vor allem Koordination und oftmals auch Anpassungen der Projektpläne.
- Personalmanagement
-
Gerade im Bereich von IT und Software ist der Faktor Mensch von absolut zentraler Bedeutung! Es sind gleichermaßen Eigenschaften wie Fachwissen, Kreativität sowie Sozialkompetenz gefordert. Bei Studien zu verschiedenen Vorgehensmodellen für die Bewältigung von Projekten stellt sich immer häufiger heraus, dass weniger die Organisation, sondern vor allem das Team für den Erfolg oder Misserfolg verantwortlich ist.
- Wirtschaftlichkeitsanalysen
-
Unternehmen sind zwingend auf IT angewiesen, betrachten Investitionen jedoch leider viel zu oft noch sehr undifferenziert. Dabei handelt es sich in der Regel um keine geringen Kosten und meist haben Investition unternehmensweise Auswirkungen. Um eine sachliche Beurteilung vornehmen zu können, ist es besonders wichtig, Erfolgs- und Einsparungspotentiale qualitativ und/oder quantitativ möglichst genau zu ermitteln.
- IT- & Projektcontrolling
-
Obwohl es diese Probleme bereits seit langer Zeit gibt, läuft doch immer noch ein großer Anteil der IT-Projekte aus dem Rahmen und erfüllt die eigenen Ansprüche an Zeitpläne, Personaleinsatz und Kosten nicht. Die Gründe dafür können sowohl in zu optimistischen Planungen als auch einer mangelnden Kontrolle, Überwachung und Steuerung der Umsetzung liegen. Ein wirksames Projektcontrolling ist daher unabdingbar.
- Geschäftsprozessmanagement
-
IT und Software unterstützen reale Geschäftsprozesse. Um diese beispielsweise für die Softwareentwicklung oder auch für Analyse- und Optimierungsvorhaben abstrahiert und grafisch darzustellen, gibt es verschiedene Modellierungssprachen, von denen UML wohl am weitesten verbreitet ist. Mit ihrer Hilfe wird die Geschäftstätigkeit analysiert und einzelne Prozesse sowie ganze Prozessketten dargestellt.
- Veränderungsmanagement
-
Änderung bei Geschäftsprozessen, IT und Software sind oftmals überlebenswichtig für Unternehmen, haben aber meist auch große Auswirkungen auf den Arbeitsalltag der Mitarbeiter. Für den Gesamterfolg ist die Belegschaft deshalb von entscheidender Bedeutung. Sie nimmt Veränderungen oftmals als Bedrohung wahr und muss zwingend für die geplanten Maßnahmen gewonnen werden.
- Qualitätsmanagement
-
Qualitätsmanagement findet in den unterschiedlichsten Bereichen statt, vor allem aber für Produkte, Dienstleistungen und Geschäftsprozesse. Man versteht darunter das planvolle und meist kontinuierliche Vorgehen, dessen Ziel es ist, Qualitätssteigerungen zu erzielen. In den vergangenen Jahrzehnten haben sich dafür unterschiedliche Standards etablieren können.
- Innovationsmanagement
-
Gerade in Deutschland sichern viele Firmen ihre Zukunft durch Innovationen. Trotzdem ist nur ein Bruchteil aller Unternehmen tatsächlich innovativ, obwohl es unzählige Ratgeber zu diesem Thema gibt. Eine aktuelle Studie bestätigt diesen Befund und kommt zu dem Schluss, dass nur sehr selten eine echte Innovationskultur herrscht und vor allem Innovation nach Vorschrift gemacht wird.
- Produktmanagement
-
So wie in einem Unternehmen alle Fäden beim Management zusammenlaufen, hat das Produktmanagement die unternehmerische Leitung für ein einzelnes Produkt inne. Es koordiniert vielfältige Aufgaben, angefangen bei der Produktplanung und Wettbewerbsanalyse über die Kundenforschung und die Produktentwicklung bis zum Marketing und dem Kundenservice. Produktmanager arbeiten entsprechend interdisziplinär und müssen mit sämtlichen Aspekten ihres Produktes sowie dessen Marktumfeld und der Zielgruppe bestens vertraut sein.
- Compliance- & Risikomanagement
-
Werden IT-Projekte durchgeführt, sind diese in der Regel auch mit Risiken verbunden, die enorme Auswirkungen auf Unternehmen haben können. Mit dieser Problematik befasst sich das Risikomanagement. Ein wirksames Compliance-Management hilft zudem Risiken zu minimieren, die Verstöße gegen die zahlreichen unternehmensinternen, gesetzlichen und/oder kundenspezifischen Vorschriften nach sich ziehen können.
Daten & BWL
- Data Warehouse
-
Teilweise auch als Datenlager bezeichnet werden Date Warehouses dazu genutzt, Daten aus den unterschiedlichsten Quellen bzw. Bereichen eines Unternehmens an einem einzigen Ort zu sammeln, zu speichern und zu archivieren. Dafür müssen verschiedenartige Typen von Daten vereinheitlicht und von überflüssigen Teilen ohne langfristigen Informationswert befreit werden, sodass der Datenbestand im Anschluss sinnvoll durchsucht und einheitlich abgefragt werden kann.
- Business Intelligence & Analytics
-
Die betriebswirtschaftliche Erkundung und Analyse baut im Allgemeinen auf Geschäftsdaten, oftmals einem Data Warehouse, auf und befasst sich mit der systematischen Auswertung von Daten. So sollen Erkenntnisse gewonnen werden, die unterschiedlichen Bereichen, vor allem aber dem Management, klügere Entscheidungen sowie Verbesserungen hinsichtlich Prozessen, Erträgen und Kosten ermöglichen.
- Entscheidungsunterstützung
-
Decision Support Systeme helfen Menschen bei der Entscheidungsfindung. Sie bauen dabei nicht selten auf den Daten aus einem Data Warehouse und den Tätigkeiten aus dem Bereich der Business Intelligence und Business Analytics auf. Entscheidungsunterstützungssysteme stellen die auf Entscheidungen hinführende Aufbereitung der Daten in den Vordergrund. Außerdem leiten sie oftmals durch den gesamten Entscheidungsprozess.
IT & Recht
- Softwareentwicklung & Agilität
-
Ebenso wie bei jeder anderen professionellen Tätigkeit sind auch bei der Entwicklung von Software zahlreiche rechtliche Aspekte zu beachten. Dazu gehören u.a. Urheberrecht, Softwarepatente, Wettbewerbsrecht, Verträge zum Kauf bzw. zur Lizensierung einer Applikation, Allgemeine Geschäftsbedingungen sowie Wettbewerbungs- und Markenrecht.
- Outsourcing
-
Lagern Unternehmen Teile ihrer IT, die Datenverarbeitung oder die Softwareentwicklung aus, müssen dabei gesetzliche Vorschriften beachtet werden. Nicht selten erlangen Dienstleister im Zusammenhang mit ihrer Arbeit Zugriff auf hochsensible Unternehmensinformationen und Kundendaten.
- Cloud Computing & Hosting
-
Cloud Computing ist sicherlich mehr als ein Hype und als Technologie nicht mehr wegzudenken. Es fehlt jedoch oftmals noch an verlässlichen rechtlichen Rahmenbedingungen, mit denen ich mich in meiner Diplomarbeit befasst habe. Gerade dem strengen EU-Datenschutz genügen leider viele außereuropäische Cloud-Angebote derzeit noch nicht. Dies macht den Einsatz solcher Dienste im Unternehmensalltag und insbesondere im Zusammenhang mit Kundendaten äußerst problematisch.
Software & BWL
- Unternehmenessoftware
-
Heutzutage kann kaum ein Unternehmen mehr auf leistungsfähige Software verzichten. Dabei steht für unterschiedlichste Aufgaben und Zwecke viel Standardsoftware zur Verfügung, die mehr oder weniger gut an die Bedürfnisse des jeweiligen Unternehmens angepasst werden kann. In der Regel deutlich teurer, dafür aber auch “maßgeschneidert” ist Individualsoftware, die extra nach den Vorstellungen des Auftraggebers angefertigt wird.
- Herausforderung Softwareentwicklung
-
Die Entwicklung von Geschäftsanwendungen ist eine ebenso spannende wie komplexe Aufgabe, weshalb am Ende leider viel zu oft wichtige Anforderungen nicht erfüllt werden und/oder sich die Kosten drastisch erhöht haben. Diesen Problemen versucht man mit unterschiedlichen Vorgehensmodellen zu begegnen, jedoch zeigt sich in der Praxis immer wieder, dass hauptsächlich das Team entscheidend für den Projekterfolg ist.
- Lean & Agile Software Development
-
Agile Softwareentwicklung und die Prinzipien des “Lean Manufacturing” versuchen den bürokratischen Aufwand während eines Herstellungsprozesses so gering wie möglich zu halten. Dadurch soll Arbeit gespart, aber vor allem die Flexibilität sowie Fokussierung auf das Endprodukt und den Kunden erhöht werden. Führende Softwareentwickler haben für diese Methoden das “Agile Manifest” formuliert.
- Business & Requirements Analysis
-
Im Rahmen einer Business-Analyse inkl. Anforderungserhebung und -analyse (Requirements Engineering & Analysis) werden Strukturen, Prinzipien und Geschäftsprozesse eines Unternehmens untersucht, um auf dieser Basis bspw. Softwarelösungen zu entwickeln. Eine derartige Untersuchung kann sehr weitreichend sein und bedarf einer ausgiebigen Kommunikation mit betroffenen Personen (Stakeholder).
- Behavior Driven Development
-
BDD gilt als Weiterentwicklung von testgetriebener Softwareentwicklung und legt den Fokus auf die Einbeziehung sämtlicher, vor allem nicht-technischer Stakeholder, bspw. der späteren Anwender. Die Eigenschaften einer geplanten Geschäftsanwendung werden dabei von diesen verbal und mit Beispielen definiert, um allen Beteiligten ein möglichst genaues Bild zu verschaffen und Missverständnissen von Anfang an vorzubeugen.
- Web- & Softwarearchitektur
-
Bei einer Fokussierung auf Webentwicklung gehören Internet- und Softwarearchitektur thematisch zusammen, da erstere unweigerlich letztere beeinflusst. Durch die zunehmende Verbreitung von schnellen stationären wie mobilen Datenverbindungen, unterschiedlichsten Thin Clients wie Tablets und Smartphones sowie Technologien wie Cloud Computing nimmt das Angebot an web- bzw. browserbasierten Applikationen stetig zu.
- Domain Specific Languages
-
Domänenspezifische Sprachen werden als Werkzeuge speziell für einen bestimmten Bereich geschaffen, sodass sich die entsprechenden Aufgaben und Probleme damit meist deutlich besser bewerkstelligen lassen. Die nachfolgend behandelten internen DSLs bauen auf allgemeinen Programmiersprachen wie Ruby oder Scala auf und nutzen deren Funktionsumfang.
- Generative Programmierung
-
Bei der generativen Programmierung wird auf Basis bestimmter Eingaben und anhand festgelegter Regeln durch einen Generator automatisch Programmcode erzeugt. Damit solch eine Lösung brauchbare Softwareteile erstellt, braucht es für die Umsetzung einer Generatorlösung allerdings sehr erfahrene Softwarearchitekten und Entwickler. Trotzdem können so eher einfache Tätigkeiten extrem beschleunigt werden.
- Software & Qualitätssicherung
-
Unternehmenssoftware muss strengen Qualitätsanforderungen genügen, da mit Mängeln behaftete Software hohe Kosten verursachen sowie die Wettbewerbsfähigkeit und sogar die Existenz eines Unternehmens gefährden kann. Deshalb muss während des gesamten Entwicklungsprozesses permanent die Qualität der Arbeit überwacht und sichergestellt werden. In diesem Zusammenhang ist auch ein rechtlich einwandfreier Zustand zu garantieren.
Java Virtual Machine
- Java
-
Java ist eine besonders im Unternehmensumfeld weit verbreitete, objektorientierte Programmiersprache für die JVM. Sie zeichnet sich durch eine sehr hohe Leistungsfähigkeit aus, erreicht aber im Entwicklungsprozess in der Regel eine deutlich schlechtere Produktivität als die im Web-Umfeld weit verbreiteten Programmiersprachen Scala, Ruby und Python. Java wurde allerdings auch mit einem anderen Fokus konzipiert und sollte beispielsweise einfacher sein als C.
- Scala
-
Bei Scala handelt es sich um eine noch recht junge rein objektorientierte sowie funktionale Programmiersprache für die Java Virtual Machine. Sie wollte Java einfacher und besser machen und zeichnet sich durch eine extrem gute Interoperabilität zu ihrem Vorbild aus und kann deshalb besonders gut mit dieser Sprache kombiniert werden. Die Performance ist im Allgemeinen etwas schlechter als die von Java, aber deutlich besser als die von Ruby und Python.
- Ruby & JRuby
-
Die objektorientierte Programmiersprache Ruby dürfte den meisten aufgrund des Web-Frameworks Ruby on Rails bekannt sein und wird wie Python und im Gegensatz zu Java und Scala interpretiert statt kompiliert. Entsprechend ist die Performance deutlich schlechter, allerdings erreichen Entwickler in der Regel eine wesentlich höhere Produktivität, ohne und erst recht mit dem bekannten Framework.
- Python & Jython
-
Die nicht auf spezielle Programmierparadigmen festgelegte Sprache Python besticht vor allem durch ihre großartige Lesbarkeit. Quellcode erinnert nicht selten an sog. Pseudocode, der im Gegensatz zu Python nicht ausführbar ist. Wie Ruby und anders als Java und Scala wird Python interpretiert und hat damit ähnliche Nachteile hinsichtlich der Performance wie Ruby. Mit Django steht ein von Ruby on Rails inspiriertes Web Framework zur Verfügung.
Web Frameworks
- Play Framework
-
Die Macher von Play wollten die Leichtigkeit von Ruby on Rails und Django in die Java-Welt übertragen. Das ist ihnen ganz wunderbar gelungen! Hat man mit einer der beiden Lösungen für Ruby und Python bereits gearbeitet, fühlt man sich sofort wohl und findet sich gut zurecht. Mit der Version 2.0 steigt zudem Scala zu einer im Framework gleichrangigen Java-Alternative auf.
- Ruby on Rails
-
Das Web Framework Ruby on Rails hat die Webentwicklung in den vergangenen Jahren sicherlich geprägt wie kaum ein anderes. Es setzt Konventionen über Konfiguration und ermöglicht so einen besonders schnellen Start in die Erstellung von Applikationen. Umwerfend ist zudem die Community, die sich um Rails gebildet hat. Für beinahe jedes Problem gibt es zudem bereits mehrere fertige Lösungen.
- Django
-
Neben Pylons ist Django das beliebteste Web Framework in Python. Es unterstützt die schnelle Entwicklung von Web-Applikationen und setzt dabei weniger stark auf allgemeine Konventionen als Ruby on Rails, allerdings deutlich mehr als das auf größtmögliche Flexiblität ausgerichtete Pylons.
- HTML, CSS & JS Toolkits
-
Zusätzlich zu großen Web Frameworks Play, Ruby on Rails und Django gibt es noch viele andere Projekte, die sich darauf verschrieben haben, die Webentwicklung effizienter zu gestalten und Webentwicklern das Leben leichter zu machen. Einige Beispiele dafür sind die Grid-Systeme 960.gs und Less Framework, die CSS-Erweiterung LESS sowie die JavaScript-Frameworks SproutCore und Google Web Toolkit.

