Alternative: SAPGUI for Java

SAPGUI for Java (Linux)

Die SAPGUI for Java bietet eine alternative Zugriffsmöglichkeit auf SAP-Systeme. So ermöglicht die in Java implementierte GUI den Einsatz von Clients mit unixoiden Betriebssystemen. Aber auch Windows-Anwendern würde ich raten einen Blick auf das plattformunabhängige Frontend zu werfen.

Im Vergleich zur klassischen SAPGUI for Windows ist das generische Java-Pendant nämlich äußerst ressourcenschonend und platzsparend (ca. 90 MB Festplattenplatz). Dafür müssen im Gegenzug auf Gimmicks wie Screen Painter und MS Office-Integration verzichtet werden. Letzteres habe ich bisweilen nicht vermisst. 🙂

Reflecting on my Internship in Software Engineering and Project Management at SAP

I recently completed an internship in the software engineering department of SAP, a large international software manufacturer, where I had the opportunity to work as a software engineer and project manager. Looking back on my experience, I am proud of the exceptional performance I was able to achieve in both of these roles and the great success I had in leading a team of 12 developers.

Leading a Complex Project: Developing Mobile BI Infrastructure at SAP

One of the main responsibilities of my internship was to lead the development of a mobile BI infrastructure. This was a complex and challenging project, but I was able to effectively manage it by using my project management skills to ensure that everything was completed on time and within budget. I was also able to contribute to the development of the infrastructure by using my software development skills to create high-quality code.

Collaborative and Inclusive Work Environment at SAP

One of the things that I enjoyed most about my internship was the opportunity to work with such a diverse group of developers. Each person brought their own unique skills and perspectives to the table, which made the experience all the more enriching. By fostering a collaborative and inclusive work environment, I was able to create a positive team dynamic that made it easier for everyone to work together effectively.

Top Learnings in Software Project Management

These are some of my top learnings in software project management:

  1. Setting clear goals and objectives: It is important to have a clear understanding of what the project aims to achieve, as well as specific goals and objectives that need to be met. This will help to guide the project and ensure that it stays on track.
  2. Managing resources: A software project manager must be able to effectively allocate and manage resources, including budget, staff, and equipment, to ensure that the project is completed on time and within budget.
  3. Communication: Effective communication is crucial in software project management. The project manager must be able to communicate clearly and effectively with team members, stakeholders, and other stakeholders to ensure that everyone is on the same page and that any issues or concerns are addressed in a timely manner.
  4. Risk management: It is important to anticipate and mitigate potential risks to the project, as well as have contingency plans in place in case something does go wrong.
  5. Adaptability: A successful software project manager must be able to adapt to changes in the project and the industry, and be able to pivot as needed to ensure the project’s success.
  6. Leadership: A software project manager must be able to effectively lead and motivate the team to ensure that everyone is working towards the common goal.
  7. Attention to detail: A software project manager must have strong attention to detail to ensure that all aspects of the project are properly planned and executed.
  8. Time management: Managing a project requires effective time management skills to ensure that tasks are completed on schedule and that the project stays on track.

Conclusion: A Rewarding Internship at SAP

In conclusion, my internship at SAP was a valuable and rewarding experience that has helped me to develop my skills in software development and project management. I am grateful for the opportunity to have worked with such a talented team and am confident that the skills and knowledge I gained during my time at SAP will be invaluable as I pursue a career in the software industry.

Want to know more about my journey in the software industry? Follow me on Twitter and LinkedIn for more insights.

This blog post is an excerpt from the Personal Development section of my internship report written for my university.

MS SQL Server: ETL mit Data Transformation Services

Screenshot von SQL Server Enterprise Manager mit SAP MaxDB
Screenshot von SQL Server Enterprise Manager mit SAP MaxDB

Kürzlich stand ich vor der Herausforderung einen Datenbestand von einem Datenbanksystem (SAP MaxDB) in ein anderes (Microsoft SQL Server) zu überführen. Das Unterfangen war manuell jedoch kaum zu realisieren, da die Datenbank mehrere hundert Tabellen und unzählige Datensätze umfasst.

Abhilfe schaffte der Microsoft SQL Server Enterprise Manager. Dort finden sich die Data Transformation Services wieder, Hilfsprogramme, die es erlaubt, ETL-Prozesse (Extract, Transform, Load) beim Import in oder Export aus einer Datenbank zu automatisieren. Dabei werden verschiedene Datenbanksysteme unterstützt, sofern diese über eine ODBC– oder eine OLE DB-Schnittstelle verfügen, was auch bei SAP MaxDB der Fall ist.

Konkret bestehen die Data Transformation Services (DTS) aus folgenden Komponenten:

  • DTS Import/Export Wizard: Assistenten, die es erlauben Daten von oder zu einem MS SQL Server zu übertragen, sowie Map Transformations ermöglichen.
  • DTS Designer: Ermöglicht das erstellen von komplexen ETL-Workflows einschließlich event-basierter Logik.
  • DTS Run Utility: Planung und Ausführung von DTS-Packages; auch via Kommandozeile möglich.
  • DTS Query Designer: Eine GUI für das Erstellen von SQL-Abfragen für DTS.

Software modellieren

Allein mit dem Schreiben von Programmcode ist es meiner Abteilung nicht getan. Um den Überblick über das Projekt nicht zu verlieren, ist es notwendig die Software vorab mit einer Modellierungssprache zu beschreiben.

Für mein Projekt verwende ich dazu UML (Unified Modeling Language). Betriebswirtschaftliche Anwendungen lassen sich damit hervorragend abbilden. Drei Diagrammtypen erweisen sich für meine Vorhaben als besonders nützlich:

  • Anwendungsfalldiagramm: zeigt was das System tun soll
  • Aktivitätsdiagramm: beschreibt den Ablauf eines Anwendungsfalls
  • Klassendiagramm: stellt die Beziehung zwischen den Klassen dar

Zu UML habe ich eine sehr praktische Notationsübersicht und ein Online-Buch gefunden.

Download UML-Notationsübersicht als PDF-Datei

ABAP says Hello World

Hello World

Letzte Woche habe ich im Geschäft damit begonnen mich in die Programmiersprache ABAP (Advanced Business Application Programming) und die zugehörige Entwicklungsumgebung (ABAP Workbench) einzuarbeiten. Diese werde ich für meine folgenden Aufgaben benötigen.

Bei ABAP handelt es sich um eine 4GL-Sprache (fourth generation language). Der wesentliche Unterschied zu einer 3GL-Sprache, wie Java und C++, besteht darin, dass der Programmierer nicht mehr festlegt wie ein Problem gelöst wird, sondern was der Rechner machen muss, um dieses Problem zu lösen.