Titelaufnahme

Titel
Flexible engineering environment integration for (software+) development teams / von Andreas Pieber
VerfasserPieber, Andreas
Begutachter / BegutachterinBiffl, Stefan ; Schatten, Alexander
Erschienen2010
Umfangvi, 136 Bl. : Ill.
HochschulschriftWien, Techn. Univ., Dipl.-Arb., 2010
Anmerkung
Zsfassung in dt. Sprache
SpracheEnglisch
DokumenttypDiplomarbeit
Schlagwörter (DE)Technische Integration / Software-Intensive Systeme / Verteilte Systeme / Automaotisierung / OpenEngSB
Schlagwörter (EN)Technical Integration / Software-Intensive Systems / Distributed Systems / Automation / OpenEngSB
URNurn:nbn:at:at-ubtuw:1-34242 Persistent Identifier (URN)
Zugriffsbeschränkung
 Das Werk ist frei verfügbar
Dateien
Flexible engineering environment integration for (software+) development teams [2.96 mb]
Links
Nachweis
Klassifikation
Zusammenfassung (Deutsch)

Moderne, Software-intensive Systeme bestehen aus einer Vielzahl von Komponenten, wobei sowohl das Verhalten jeder einzelnen Komponente, als auch das Zusammenspiel mehrerer, durch Software gesteuert wird. Um dabei aktuelle Sicherheits- und Qualitätsstandards einhalten zu können müssen die Systeme trotz ihrer Komplexität test- und vorhersagbar sein.

Um solche Systeme spezifizieren, designen und entwickeln zu können, wird neben einer Prozesssteuerung auch eine intensive Interaktion zwischen Softwareentwicklern und anderen Spezialisten, wie zum Beispiel Maschinenbauern und Elektroingenieuren, notwendig. Um ein kohärentes Produkt entwickeln zu können benötigt das Entwicklerteam flexible und effiziente Mechanismen um Daten zwischen ihren heterogenen Werkzeugen auszutauschen und synchron zu halten. Außerdem müssen sie bei der gleichzeitigen Arbeit an softwarerelevanten Artefakten über Änderungen informiert bleiben. Projekt- und Qualitätsmanager hingegeben benötigen qualitativ hochwertige Daten über den aktuellen Entwicklungsstand, um den Fortschritt und die Qualität von wichtigen Artefakten und des Produktionsprozesses jederzeit überprüfen zu können.

Zur Zeit gibt es allerdings kaum Toolunterstützung für die flexible Integration von heterogenen, softwareintensiven Systemen. Dies behindert flexible Prozessintegration und Qualitätsmanagement, was letztendlich zu Entwicklungsverzögerungen und Qualitätsrisiken führen kann. Zur Erhöhung der Produktqualität und Verringerung der Fehlerrate werden Systeme benötigt, die einen effizienten, flexiblen und plattformunabhängigen Ansatz zur Integration von heterogenen Teams, derer Werkzeuge und disziplinübergreifender Prozesse erlauben.

In dieser Arbeit wird ein Lösungsansatz vorgestellt, der in der quelloffenen Engineering Service Bus(OpenEngSB) Plattform implementiert wurde. Diese Plattform erweitert das Konzept des Enterprise Service Bus (ESB) um Lücken bei der Integration von heterogenen Werkzeugen zu schließen. Zusätzlich wird eine Methode definiert, um disziplinübergreifende Prozesse und Qualitätssicherung in softwareintensiven Systemen zu beschreiben und zu implementieren. Das OpenEngSB Konzept wird anhand einer Fallstudie mit zwei praxisorientierten Szenarios mit dem aktuellen Stand der Technik verglichen. Dabei werden folgende Szenarien herangezogen: (1)Continuous Integration & Test und (2) Änderungsmanagement von Signalen über Werkzeugdomänen hinweg. Die Analyse zeigt, dass die Implementierung von Anwendungsfällen mit dem OpenEngSB verglichen mit den heute blichen Vorgehensweisen, zu effizienteren und effektiveren Ergebnissen führt.

Weiters ist die Integration der Tools und Prozesse mit Hilfe der OpenEngSB Plattform schneller durchzuführen und flexibler anzupassen.

Zusammenfassung (Englisch)

Modern software-intensive systems depend on distributed software to control the system behavior. The system behavior is supposed to be testable and predictable to meet safety and quality standards. Software engineering, as part of systems engineering, depends in many application domains on the specifications and designs of experts from several other disciplines, such as mechanical and electrical engineering, and application-specific process engineering. Therefore, system engineering teams need flexible and efficient mechanisms to exchange data between engineering tools and models to develop a coherent product and stay aware of changes from concurrent work on software-relevant artifacts.

Project and quality managers need an environment that facilitates efficient high-quality data collection on the engineering team level in order to track project progress and quality levels of major artifacts and production processes.

Unfortunately, currently tools only provide limited support for the flexible integration of heterogeneous engineering environments. While each discipline has specific tool sets that support the major engineering tasks, there is surprisingly little work on the technical integration of tools and models across engineering disciplines. The weak technical integration of the expert knowledge across disciplines hinders flexible engineering process automation and quality management, leading to development delays and quality risks for the final product. To increase product quality and reduce the risk for errors during the engineering process, an efficient, flexible and platform independent solution approach is needed. It should be possible to integrate heterogeneous teams, their tools and engineering processes over multiple engineering disciplines.

The concept of an open source Engineering Service Bus (OpenEngSB) platform, which extends the Enterprise Service Bus concept from business software engineering towards bridging technical gaps between engineering systems and tools in heterogeneous engineering environments, is introduced in this work. It provides a method for describing and developing flexible engineering process automation and quality management across engineering disciplines. The OpenEngSB concept is evaluated against the state-of-the-art, implementing two prototypes for real-world scenarios: (1) Continuous Integration & Test and (2) Signal Change Management across Tool Data Models. The empirical evaluation reveals that implementing use cases from software-intensive systems is feasible, efficient and effective. Additionally, compared to traditional approaches, the OpenEngSB platform makes integration easier and much more flexible.