Meine Erfahrungen mit der Projektverwaltung 2.0

Wer bin ich? Was mache ich?

Hallo zusammen, ich bin Maximilian Komp und absolviere die Ausbildung zum  Informatikkaufmann bei der gicom GmbH. Ich werde euch einen kleinen Einblick in meine Aufgaben und Eindrücke geben, so wie ich es erlebt habe. Meine bisher verbrachten Tage sind allesamt spannend und interessant. Zu Beginn der Ausbildung bekamen wir neuen Azubis den Auftrag, die Projektverwaltung neu zu gestalten und aufzubauen, um die Vorgänge zu automatisieren und somit den Zeitaufwand der Mitarbeiter und der Verwaltung zu verringern. Wie wir das technisch gelöst haben, hat Felix Bürling (Azubi im 2ten Lehrjahr) in seinem Blog Beitrag „Von der Anforderung bis zum fertigen Produkt – Zeiterfassungsrevolution“  detailgetreu erläutert. Jetzt beschreibe ich mal meine Erfahrungen als Rookie.

Was ist die Projektverwaltung:

Die Projektverwaltung regelt unsere ganzen Abläufe in den Themen Arbeitszeiten erfassen, Spesen erfassen, Spesen prüfen, erfasste Zeiten Projekten zuordnen und, und, und. Sie ist unser Hauptwerkzeug für die Verwaltung, die damit die Rechnungen für unsere Kunden erstellt. Deswegen ist ein reibungsloser Ablauf essentiell für uns!

Übersicht

Meine Aufgaben

Die Aufgaben die ich bisher durchgeführt habe reichen von Hilfestellung in der Nutzung des Programms bis zur Fehlersuche in einem 1000-zeiligen Code. In den vier Monaten, in denen ich das Projekt begleitet habe, sind mir einige hartnäckige Fehler untergekommen und oftmals musste ich mehrere Tage an der Korrektur eines Fehlers arbeiten. Umso größer ist jedoch das Erfolgsgefühl, wenn sich der Fehler endlich beheben lässt und das Programm wieder weiter läuft. Als einer der Hauptverantwortlichen wachse ich mit meinen Aufgaben. Bei gicom erhielt ich frühzeitig Verantwortung und lernte gleichzeitig damit umzugehen. Es macht mir Spaß gemeinsam mit anderen Azubis ein Projekt durchzuführen.

Die Herausforderung

Eine große Herausforderung liegt  in der Koordination der einzelnen Team-Mitgliedern. Dabei war uns das von gicom eingesetzte Ticket System „Mantis“ eine große Hilfe. Es ist ein Open Source Programm und weist jedem Problem oder Verbesserung eine eindeutige ID zu. Dadurch war es uns möglich, den genauen Status und die Zuordnung der Aufgaben zu meinen Kollegen zu verfolgen. Wichtig dabei ist es, Probleme zu analysieren und richtig zu priorisieren, damit die schwerwiegenden Probleme zuerst gelöst werden und danach die Wunschliste der Benutzer.

Persönliche/Berufliche Erfahrungen die ich gemacht habe:

Für mich selbst konnte ich mitnehmen, dass man mit Teamwork große Dinge erreichen kann.

Interessant ist es, dass ich in der Zeit in der ich das Projekt begleitet habe zwei neue Programmiersprachen, SQL und VBA (Visual Basic for Application), kennen gelernt habe – nur durch „LEARNING BY DOING“. Zu meinen persönlichen Erfahrungen kann ich noch sagen, dass ich gelernt habe, was Verantwortung wirklich bedeutet und wie ich damit umgehe.

Autor: Maximilian Komp

Von der Anforderung bis zum fertigen Produkt – Zeiterfassungsrevolution

Dieser Blogbeitrag handelt von der Entstehung einer neuen iOS Applikation, die zur Zeiterfassung auf dem iPad genutzt wird.

Die Geschäftsführung entschied, dass die Arbeitszeit statt am Desktop, zukünftig am mobilen Endgerät erfasst werden soll. Die Vorteile, die demnach ausschlaggebend für die Nutzung eines mobilen Endgerätes sind, sind folgende:

  • einfache Handhabung für den Mitarbeiter, da er viel unterwegs ist und seine Zeiten mobil erfassen kann
  • Zeitreduzierung -> Mitarbeiter bekommt Projekte, Arbeitszeiten und Pausen automatisch in der Applikation vorgeschlagen
  • der Mitarbeiter bekommt zudem einen Hinweis, wenn er mal eine Erfassung vergessen sollte
  • Sofortiger Überblick über die geleisteten Zeiten für die Geschäftsführung.

Insgesamt waren sieben Mitarbeiter an dem Projekt beteiligt. Zwei Mitarbeiter, die den Datenbankserver mit seinen Tabellen und Formularen zu erstellen hatten. Drei Mitarbeiter, die für die iOS Entwicklung verantwortlich waren sowie zwei Mitarbeiter, die das Projekt unterstützend begleitet haben. Somit waren die Aufgaben im Team klar verteilt und jeder konnte mit der Entwicklung starten.

Der Arbeitstag wird folgendermaßen gepflegt.

Das Datenbankteam stellte einen Datenbankserver zur Verfügung, der per Internet erreichbar ist. Bei der Datenbeschaffung orientierte sich das Datenbankteam anhand des alten Verwaltungssystems für die Zeiterfassung. Dadurch mussten nicht alle Tabellen und Strukturen neu entwickelt werden. Das iOS Team hat im ersten Schritt die Oberfläche entwickelt. Dabei hatten sie sich darauf beschränkt nur das Nötigste darzustellen, um die Abwicklung der Zeiterfassung dem Mitarbeiter so einfach und komfortabel wie möglich zu gestalten. Folgende Dialoge haben sich ergeben: Anmeldung, Zeiterfassungsübersicht und Zeiterfassung. Die Anmeldung dient der Authentifizierung gegenüber dem Datenbankserver, zugleich aber auch der Zuordnung der angelegten Arbeitszeiten des Mitarbeiters auf der Datenbank. Mit einer Übersichtstabelle werden dem Mitarbeiter alle erfassten Arbeitszeiten dargestellt, die in dem Zeiterfassungsscreen angelegt worden sind.

Die Monatsübersicht der App.

Die Monatsübersicht der App.

Nach dem die Oberfläche der iOS Applikation und der Datenbankserver fertig gestellt worden ist, ging es an den nächsten Schritt: Eine Verbindung zwischen dem Datenbankserver und der iOS Applikation herzustellen. Als geeignete Schnittstelle wurde das ODATA Protokoll eingesetzt, das auf dem Standard HTML Protokoll basiert.

Der Datenbankserver stellt einen IIS (Internet Information Service) bereit, auf dem Webservices angelegt wurden. Als die Webservices verfügbar waren, konnte das iOS Team durch das ODATA Protokoll eine Verbindung zum Datenbankserver aufbauen. Die Testphase der iOS App begann für ausgewählte Mitarbeiter Anfang Dezember. Sie beläuft sich auf vier Wochen, in der sie intensiv getestet und verbessert wird. Seit Anfang Januar steht die Zeiterfassung – App jeden Mitarbeiter zur Verfügung.

Es hat mir sehr viel Spaß bereitet zusammen im Team Probleme zu identifizieren und zu lösen – was nicht immer einfach war.

Autor: Felix Bürling

Contract2Go/Fashion

Nach unserem großen Erfolg mit unserer Business-App „Contract2Go“ entwickeln wir nun eine weitere App: „Contract2Go – Fashion“. Diese App unterstützt Einkäufer bei ihrer Einkaufsreise, beispielsweise nach Asien, zur Beschaffung von Bekleidung.

Artikelübersicht

Einmal mit dem Backend-System synchronisiert, hat der Einkäufer alle notwendigen Daten auf seinem iPad zur Verfügung und kann Angebote direkt aufnehmen und miteinander vergleichen. Er sieht alle zu verhandelnden Sortimentsplanungen mit zugeordneten Artikeln. Diese können im Detail mit Bild und Produktbeschreibungen angezeigt werden. Bei Bedarf kann der Einkäufer auch selbst Fotos aufnehmen und Produktbeschreibungen anhängen. Hat er sich für ein Angebot entschieden, werden die Daten bei nächster Gelegenheit zurückgespielt und der Papierkrieg sowie das händische Einpflegen in das Backend-System entfallen.

Angebotsvergleich

Kehrt der Einkäufer von seiner Einkaufsreise zurück, hat die Weiterverarbeitung der neuen Auftragsdaten im System bereits begonnen. Für die Verhandlungsnachbereitung wird ihm ein Überblick ausgegeben, wodurch der Erfolg der einzelnen Produkte und Warengruppen anhand der Handelsspanne nachverfolgt werden kann. Somit ist der Einkäufer durch „Contract2Go – Fashion“ jederzeit bestens informiert und eine transparente Verhandlung mit Vergleichbarkeit ist gewährleistet.

„Contract2Go-Fashion“ stellt alle notwendigen Daten bereit, sodass  nicht mehr Berge von Papier mit Sortimentsplanungen und Produktbeschreibungen mit zum Lieferanten nach Hong Kong genommen werden müssen. Im Gepäck befindet sich nun lediglich das iPad. Die notwendigen Daten werden medienbruchfrei aus dem heimischen System geladen und auch in dieses zurückgespielt.

Die erfolgreiche Einkaufsreise kann beginnen!

Autor: Nikolas Heitkamp

Meine Erfahrung mit Xcode

Apps für iOS Geräte wie dem iPad oder dem iPhone werden in Apples Entwicklungsumgebung Xcode programmiert. Nachdem man Xcode komfortabel über den App-Store bezogen hat, kann es auch schon los gehen. Programmiert wird in Objective-C (ObjC), einer objektorientierten Version der bekannten Programmiersprache C. Damit man alle Funktionen des iPads auch nutzen kann, gibt es das CocoaTouch-Framework. Das wird mit Xcode gleich mitgeliefert und man kann leicht die Gestensteuerung oder andere bekannte Funktionalitäten ansprechen.

Nun legen wir das erste Projekt an. Die Oberfläche von Xcode wirkt aufgeräumt. Auf der rechten Seite bieten sich eine Vielzahl von Einstellungsmöglichkeiten, wie beispielsweise welche Funktionen die App nun auf welcher Weise unterstützen soll. Hier kann man auch ganz einfach und schnell zusätzliche Bibliotheken einbinden. Am linken Bildrand ist die Navigationsleiste, wo man schnell auf die Klasse seines Projektes zugreifen kann. Später erreicht man über diese Navigationsleiste zügig gefundene Fehler des Debuggers, selbstgesetzte Haltepunkte oder Programmabschnitte über die leistungsfähige Suchhilfe.

Eine App besteht aus einem Hauptfenster (MainWindow), einer Hauptanweisungsklasse (AppDelegate), sowie beliebig viele weitere Klassen, für die verschiedenen Sichten oder zum Auslagern von Methoden. Das Hauptfenster bleibt in der Regel leer, man bindet jeweils nur verschiedene Sichten (Views) ein. Diese Sichten ähneln den (etwas überholten) Frames bei HTML. Da bei ObjC absolut alles objektorientiert ist, sind auch die Sichten jeweils ein Objekt, gesteuert durch eine Klasse (ViewController). Eine Klasse besteht immer aus zwei Bestandteilen: einer Kopfdatei (.h) und einer Hauptdatei (.m). In der Kopfdatei werden alle Deklarationen gemacht, der ausführbare Quelltext steht dann in der Hauptdatei.

Die automatische Quelltextvervollständigung und das obligatorische Syntaxhervorheben helfen den strengen Anforderungen des Compilers gerecht zu werden, führen aber auch zu einem sauberen und aufgeräumten Quelltext. Nennenswert ist noch die mitgebrachte Testumgebung. Zu den Bordmitteln gehören ein iPhone- und iPad-Simulator, um zu sehen, wie sich sein Werk auf diesen Geräten verhält. Dazu gehört auch ein Verhaltensanalysewerkzeug, dass die Lauffähigkeit der App auf dem Endgerät unter verschiedensten Blickwinkeln testet. Neben selbst geschriebenen Testroutinen sind bereits automatische Skripte vorgegeben, wie die Analyse der Beanspruchung der CPU, der Speicherzugriffe und anderen simulierten Langzeittests.

Mit Xcode kann man sich in der App Programmierung für Apples Endgerät richtig frei entfalten. Prinzipiell gesehen gibt es kaum Grenzen, die von Apple vorgegeben werden. Nebenbei können nicht nur Apps für iPhone, iPad und Co. erstellt werden, sondern auch für den Mac selbst.

 Autor: Felix Pliester

Innovatives contract2go

Unser neues Produkt „contract2go“ für das iPad garantiert Ihnen erstmals auch unterwegs den vollen Zugriff auf alle Daten, die Sie für Konditionengespräche benötigen. Mit Hilfe der App sehen Sie die Verträge aller Ihrer Lieferanten mobil ein und schließen neue Verträge ab, noch während Sie beim Kunden verhandeln. Die App ist live mit Ihrem SAP-Server verbunden, so dass alle relevanten Daten von Ihrem SAP-Server geladen und Ihnen anschaulich dargestellt werden. Somit können Sie direkt beim Kunden einen neuen Vertrag erstellen, auch basierend auf einem bisherigen Vertrag. Dabei ist es Ihnen möglich, Konditionen anzupassen und neu zu erstellen, und das sogar inklusive Staffelstufen. Die Konditionen können während der Verhandlung auch bequem per Schieberegler simuliert werden. Dadurch wissen Sie sofort, wo sich Ihre Konditionen verbessern oder verschlechtern, so dass eine effizientere Verhandlung möglich wird.

Des Weiteren bietet die App eine direkte Ertrags- und Gewinnberechnung mit verschiedenen Grafiken zur bildlichen Darstellung der simulierten oder tatsächlichen Änderungen und Erträgen. Nach Abschluss der Verhandlung können Sie mit nur einer Berührung des Bildschirms den neuen Vertrag zu Ihrem Gesprächspartner senden. Die neuen Konditionen werden nun sofort auf Ihrem SAP-Server gespeichert und im Gruppenweiten Lieferanten- und Konditionsmanagement gepflegt. Ein weiteres Feature sind Artikelkonditionen. Ab sofort können Sie einzelne Konditionen auf der Ebene von Artikeln oder Warengruppen abschließen, die hierarchisch auf die weiteren, untergeordneten Warengruppen und Artikel Einfluss haben. Ebenfalls bietet das Produkt „contract2go“ die Einstellung von Rahmenbedingungen rund um Ihren Vertragsabschluss, wie zum Beispiel Lieferzeit oder Kündigungsfrist.

Unsere App bietet somit die wichtigsten Funktionen des GKM’s. Doch in dieser steckt ein großer Vorteil: mit Hilfe der App gelingt es, nicht nur Teile des GKM’s mobil verfügbar zu machen. Vielmehr bekommt das GKM ein ganz neues Design. Dieses unterstützt Ihre Verhandlungen mit den Kunden wirkungsvoll im entscheidenden Moment: Sie müssen diesem die Auswirkungen Ihrer Gespräche nicht mehr beschreiben, sondern führen ihn durch die anschaulich dargestellten Änderungen und neuen Vereinbarungen.

contract2go, eine App für Mobilität und das Auge.

Autor: Nikolas Heitkamp