38 research outputs found

    Ansätze zur kollaborativen Softwareerstellung

    Full text link
    Die Erstellung von Software zur Unterstützung betrieblicher Abläufe wird in zunehmendem Maße komplexer. Da der Erstellungsprozess in der Softwareindustrie traditionell einer Werkstatt- bzw. Einzelfertigung entspricht, erfordert die stetig steigende Nachfrage nach betrieblicher Software und die fortschreitende Globalisierung die rationellere Gestaltung der Softwareentwicklung. In der Literatur werden daher immer häufiger die Industrialisierung der Softwareerstellung und neuartige Formen der Spezialisierung, Arbeitsteilung und Zusammenarbeit (engl. Collaboration) vorgestellt. Dabei kann im Wesentlichen unterschieden werden, ob die Zusammenarbeit einzelner Akteure und Arbeitsgruppen auf Projektebene oder die strategische Zusammenarbeit von Unternehmen innerhalb der Softwareindustrie behandelt wird. Über diese beiden grundlegenden Betrachtungsebenen hinweg lassen sich existierende Ansätze zur arbeitsteiligen Softwareerstellung entlang mehrerer Dimensionen, wie räumliche, zeitliche und organisatorische Verteilung der Aktivitäten im Prozess sowie Intensität und Richtung der Zusammenarbeitsbeziehungen klassifizieren. Ziel dieses Artikels ist es, einen umfassenden und systematischen Überblick über bestehende Ansätze zur kollaborativen Softwareerstellung zu geben, indem diese in einen generischen Klassifikationsrahmen eingeordnet werden. Des Weiteren soll eine etymologische und pragmatische Herleitung des Kollaborationsbegriffs die Etablierung eines eigenständigen Forschungsparadigmas im Rahmen der Wirtschaftsinformatik ermöglichen

    Entwicklungsmethodiken zur kollaborativen Softwareerstellung – Stand der Technik

    Full text link
    Die weltweit wachsende Nachfrage nach Unternehmenssoftware erfordert immer neue Methoden und Formen der Zusammenarbeit (Kollaboration) bei der Softwareerstellung. Zu diesem Zweck untersucht und vergleicht dieses Arbeitspapier existierende Vorgehensmodelle und deren Evolution. Zusätzlich werde erste Ansätze zur kollaborativen Softwareerstellung vorgestellt und ihre Eignung für ein kommerzielles Umfeld analysiert. Die Arbeit verwendet hierzu einen eigenen Vergleichsrahmen, der u.a. auch so genannte "Kollaborationspunkte“ in Betracht zieht, d.h. Aktivitäten im Prozess an denen das Einbinden mehrerer Entwickler und/oder Anwender vorteilhaft ist. Die Erkenntnisse aus der vergleichenden Analyse des Stands der Technik werden schließlich dazu verwendet, Defizite existierender Ansätze aufzuzeigen und Anforderungen für unterstützende Werkzeuge abzuleiten

    Analyse der Übertragbarkeit der Open-Source-Entwicklungsmethodik in den kommerziellen Bereich

    Full text link
    Open Source-Software findet bereits seit einiger Zeit erfolgreich Einzug in die Unternehmenspraxis. Das quelloffene Betriebssystem GNU/Linux sowie der HTTP-Server Apache haben sich mittlerweile in vielen großen wie kleinen Unternehmen zu einem Standard etabliert. Eine wesentliche Grundlage für den Erfolg dieser und weiterer Open Source-Produkte bilden die entsprechenden Entwicklungsmethoden, die zur Unterstützung verteilter Zusammenarbeit innerhalb der Open Source Communities entstanden sind. Dies hat zur Folge, dass Einflüsse aus der Open Source-Welt auf zweierlei Arten in die Unternehmenspraxis diffundieren: Neben dem vermehrten Einzug von quelloffene Anwendungen in unternehmenskritische Bereiche einerseits führt die Tatsache, dass diese Anwendungen verteilt und quelloffen entwickelt werden, andererseits dazu, dass immer mehr Unternehmen dazu übergehen, die entsprechenden Methoden und Techniken auch in ihren kommerziellen Softwareprojekten einzusetzen. Vor allem Letzteres soll im Zentrum dieser Arbeit stehen

    Entwicklung eines Datenbankinformationssystems " Kursverwaltung " der Deutschen Unfallhilfe mit Open-Source Programmen

    Get PDF
    Diese Diplomarbeit beschreibt eine Softwareentwicklung für ein datenbankgestütztes Informationssystem. Bei der Entwicklung dieses Systems wird ausschließlich frei verfügbare Software eingesetzt. Damit die Leistungsfähigkeit der eingesetzten freie Software besser beurteilt werden kann, wird in der vorliegenden Diplomarbeit beispielhaft eine Komponente einer Kursverwaltungs-Software entwickelt. Die entwickelte Komponente ist Teil des Datenbanksystems ”Kursverwaltung” der Deutschen Unfallhilfe DUH GmbH in Bochum. Diese Firma wurde ausgewählt, da dort im Rahmen einer Neukonzeption ein Datenbanksystem entstehen soll und der Einsatz freier Software favorisiert wird. Zu Beginn der Diplomarbeit wird erläutert, was der Begriff ”freie Software” bzw. ”Open-Source” beinhaltet und welchen Stellenwert diese Softwareprodukte zur Zeit besitzen. Nach diesem allgemeinen Überblick werden spezielle Softwareprodukte für die genannte Softwareentwicklung vorgestellt. Anschließend werden die vorgestellten Produkte zur Entwicklung einer Komponente des Datenbanksystems ”Kursverwaltung” eingesetzt. Schwerpunkt bilden hierbei vorallem die Entwicklung der Datenbank und die Anbindung der relationalen Datenbank an die objektorientiert entwickelte Programmlogik. Dabei wird auch auf die mögliche Generierung von Softwareteilen eingegangen, welches zur Zeit einen Trend in der allgemeinen Softwareentwicklung ausmacht. Die Diplomarbeit wird durch die Implementierung der Beispielkomponente vervollständigt und schließt mit einer Bewertung der Softwareentwicklung mit Open-Source Programmen ab

    Analyse der Barrieren und Treiber zwischenbetrieblicher Softwareerstellung und Konstruktion einer Kollaborationsplattform für kleine und mittlere Unternehmen

    Full text link
    Die Erstellung von Unternehmenssoftware gliedert sich zunehmend in die Herstellung von Komponenten durch einzelne Zulieferer, die von Systemintegratoren zusammengeführt und implementiert werden. Dadurch gewinnt die zwischenbetriebliche Zusammenarbeit in der Softwarebranche zunehmend an Bedeutung. Um den Wertschöpfungsprozess innerhalb dieser entstehenden, so genannten Softwarelieferketten zu stärken, werden mit dem vom Wirtschaftsministerium Baden-Württemberg geförderten Projekt TASK die unternehmensübergreifende Entwicklung, Integration und Implementierung von Softwarekomponenten unterstützt. Dieser Artikel stellt zum einen die Struktur und den bisherigen Verlauf des Projekts vor, zum anderen werden wissenschaftliche Erkenntnisse aus der empirischen Analyse der Barrieren und Treiber zwischenbetrieblicher Softwareerstellung sowie der Gestaltung einer Kollaborationsplattform für die zwischenbetriebliche Softwareerstellung präsentiert. Den Abschluss bildet eine Diskussion aktueller und zukünftiger Probleme bei der Etablierung zwischenbetrieblicher Zusammenarbeit in der Softwareindustrie am Beispiel mittelständischer Unternehmen in Baden-Württemberg

    Ein agiles Vorgehensmodell anhand von APEX 4.2

    Get PDF
    In der Softwareentwicklung setzen sich vermehrt agile Methoden durch, die meist in kleineren Softwareprojekten Anwendung finden. Durch die intensive Einbeziehung des Kunden, Kommunikation innerhalb des Teams und kontinuierlichen Auslieferung soll die Softwarequalität gesteigert werden. So erhält der Kunde ein produktiv einsetzbares Softwareprodukt. Diese Bachelorarbeit gewährt einen Überblick über bekannte agile Prozesse und betrachtet im Detail den Scrum Prozess. Danach wird das Framework Oracle APEX vorgestellt und schließt mit einer Betrachtung zur Eignung der Einführung des Scrum Prozesses innerhalb APEX ab.In the software engineering agile methods gain more acceptance, which apply usually in smaller software projects. Through the intensive involvment of customers, communication within the team and continuous delivery the software quality shall increase. In this way the customer gets a productiv usable software product. This bachelor thesis allows an overview about known agile processes and views the scrum process in detail. After that the oracle APEX framework will be introduced and completes with an observation of the scrum process as a suitable implementation within APEX

    Eine evolutionäre Methode zur Einführung von Prozessmodellen am Beispiel des V-Modell XT

    Get PDF
    Introducing a new process model in a company with existing software engineering processes can be done either revolutionary or evolutionary. The revolutionary introduction, even though it is recommended and described by different authors, poses the problem of an abrupt change in the development process which leads to a lack of acceptance between the affected software engineers. As no guide lines exist on the evolutionary introduction, the presented thesis proposes a new meta process model, ePEM, which describes the process of evolutionary introducing a new process model. It is developed based on the principles of method engineering following an analysis of three major process models and evaluated through the introduction of the V-Modell XT in a medium sized german company with a large department for software development.In der vorliegenden Arbeit wurde eine evolutionäre Methode zur Einführung von Prozessmodellen bearbeitet, mit dem Ziel der Entwicklung einer wissenschaftlich fundierten Methode, die unabhängig vom Prozessmodell, praktisch anwendbar ist. Bei der Literaturrecherche bestehender Methoden hat sich gezeigt, dass ein umfassender Ansatz, der die in dieser Arbeit behandelte Problemstellung löst, noch nicht existiert. Daher wurde aufbauend auf dem Methoden-Engineering eine systematische Struktur für die Konstruktion der Methode geschaffen und auf der Basis von definierten Grundprinzipien die Methode entwickelt. Bei der Entwicklung der ePEM orientierte sich diese Arbeit an den Grundsätzen der Ordnungsgemäßen Modellierung (GOM), wie sie in Abschnitt 4.3 zusammengefasst sind. Des Weiteren wurde in einer Literaturrecherche eine Vielzahl von Prozessmodellen auf Gemeinsamkeiten untersucht. Daraus wurden drei signifikante Prozessmodelle ausgewählt und kurz vorgestellt. Auf der Grundlage der identifizierten Gemeinsamkeiten wurde die ePEM entwickelt. Es kann gefolgert werden, dass die ePEM für alle Prozessmodelle, die die Strukturelemente Aktivität, Produkt und Rollen beinhalten - das sind nach dem jetzigen Kenntnisstand alle - einsetzbar ist.Ilmenau, Techn. Univ., Diplomarbeit, 200

    Entwicklungsprozess für qualifizierbare Softwarewerkzeuge nach ISO 26262

    Get PDF
    Um die hohen Qualitätsanforderungen an Softwarewerkzeuge für die Entwicklung eingebetteter Systeme im Automobilumfeld zu gewährleisten, wurde in dieser Arbeit in Zusammenarbeit mit dem Unternehmen TWT ein Qualitätsprozess definiert, der die Nachweisbarkeit von Anforderungen sowie eine Qualifizierung nach dem Sicherheitsstandard ISO 26262 ermöglicht. Hierfür wurden zunächst die Vorgaben des Sicherheitsstandards zur Softwareentwicklung und zur Qualifizierung von Softwarewerkzeugen analysiert. Danach wurden die bestehenden Softwareentwicklungsprozesse bei der TWT untersucht. Aus beidem wurden anschließend Anforderungen an den Qualitätsprozess abgeleitet, so dass dieser sowohl die Anforderungen des Sicherheitsstandards erfüllt als auch sich in die bestehenden Entwicklungsprozesse bei TWT einfügt. Das Konzept des Qualitätsprozesses basiert auf dem im Sicherheitsstandard verwendeten V-Modell, erweitert dieses jedoch um den Einsatz eines kontinuierlichen, testorientierten Requirements Engineerings, einer kontinuierlichen Integration und um Quality Gates, die die Phasen des V-Modells voneinander trennen. Durch das Requirements Engineering und die Quality Gates werden sowohl die Softwareanforderungen validiert als auch die Anforderungen und Vorgaben des Sicherheitsstandards auf ihre Einhaltung überprüft. Durch den Einsatz einer kontinuierlichen Integration, fügt sich der Qualitätsprozess in die bestehenden Entwicklungsprozesse bei TWT ein. Abschließend wurde der ausgearbeitete Qualitätsprozess in einem Expertenreview evaluiert. Die Evaluation ergab, dass der Qualitätsprozess die Anforderungen erfüllt. Des Weiteren gab es Anregungen für eine Erweiterung des Qualitätsprozesses.In this work, a quality process was defined in close cooperation with the company TWT to ensure the high quality requirements of software tools used for developing embedded systems in the automobile environment. This process allows verifying these requirements as well as qualifying software tools based on the safety standard ISO 26262. For this purpose, the requirements of the safety standard for developing software and qualifying software tools were analyzed. Afterwards, the existing software development processes at TWT were examined. Based on both, requirements for the quality process were derived in order to comply with the requirements of the safety standard as well as to embed the process into the existing development processes at TWT. The concept of the quality process is based on the V-Model used in the safety standard. Additionally, the V-Model is extended with a continuous and test oriented requirements engineering, a continuous integration, and quality gates, which separate the phases of the V-Model. Requirements engineering and quality gates are used to validate software requirements as well as to ensure compliance with requirements of the safety standard. By using continuous integration, the quality process is embedded into the current development processes at TWT. Last, the quality process was evaluated in an expert review. The evaluation showed that the quality process meets all requirements. Furthermore, suggestions for extensions of the quality process were given

    Ansatz einer entwicklungsprojektweiten Abhängigkeits-Konsistenz des Quellcodemodells zur Qualitätsverbesserung von Software-Entwicklungsprojekten

    Get PDF
    Heutige Softwareentwicklungsprojekte müssen oft eine Vielzahl von Anforderungen mit hoher Komplexität in kurzen Release-Zyklen umsetzen. Daraus ergeben sich besondere Herausforderungen an Arbeitsteilung, Dokumentation, Prozesssicherheit und Qualität. Entwicklungsarbeiten müssen parallelisiert werden und Softwareentwickler müssen sich immer wieder in den Quellcode einarbeiten. Die Entwickler brauchen schnelle und präzise Rückmeldung über die Qualität ihrer durchgeführten Änderungen am Quellcode. Über feingranulare Traceability Links in den Quellcode werden eine verbesserte Dokumentation und größere Prozesssicherheit ermöglicht. Dazu wird ein Metamodell für den Quellcode definiert und in ein Metamodell mit Anforderungsmanagement, Änderungsmanagement, Testdatenmanagement und Dokumentation eingebunden. Das gesamte Modell wird in einem Software Configuration Management (SCM) Repository abgespeichert, um die Versionierung aller Artefakte und Links zu ermöglichen. In einem Quellcode Editor können die Traceability Links erstellt und genutzt werden. Die Historie einzelner Quellcode Artefakte kann einschließlich der Traceability Links im Editor zur Anzeige gebracht werden. Durch das Vorliegen des Quellcodes als Modell wird auch ein feingranulares pessimistisches Sperren einzelner Modell Artefakte ermöglicht. Damit ist das parallele Bearbeiten einer Klasse oder einer Methode möglich, ohne dass der Quellcode verschmolzen werden muss. Es werden durch die Sperren auch Syntaxfehler im SCM Repository verhindert. Im Quellcode Editor werden die Sperren anderer Entwickler angezeigt. Continuous Integration wird dahingehend erweitert, dass durch Abspeichern von Class-Dateien im Repository ein schneller Produkt-Build und damit auch schnelleres Feedback für den Entwickler ermöglicht wird. Durch Testauswahlstrategien werden nur für den geänderten Quellcode relevante Tests ausgeführt. Eine Testauswahlstrategie verwendet dabei die Traceability Informationen zwischen geänderten Quellcode, Anforderung, Testspezifikation und dem Test-Quellcode. In großen Projekten entstehen auf Grund des Quellcodes sehr große Modelle, die eine Herausforderung bezüglich Speicherbedarfes und Performance darstellen. Es wurden Untersuchungen an Hand eines Projekts mit 6,5 Millionen Quellcode-Zeilen durchgeführt. Für diese Konzepte wurde ein Prototyp auf Basis der Eclipse Entwicklungsumgebung und für Java entwickelt

    Methoden- und Werkzeugunterstützung für evolutionäre, objektorientierte Software-Projekte

    Get PDF
    Die Software-Entwicklung verläuft in der Regel evolutionär, d.h. als eine Folge von Erweiterungs- und Anpassungszyklen, beruhend auf Erfahrung, Nutzung und Revision. Viele der bekannten Vorgehensmodelle, wie z.B. "Rational Unified Process" (RUP), berücksichtigen diesen evolutionären Aspekt der Software-Entwicklung ungenügend. Mit dem EOS-Modell, ein Vorgehensmodell für die evolutionäre, objektorientierte Software-Entwicklung (EOS), wird versucht, dieses Defizit zu überbrücken. In der ursprünglichen Fassung ist das EOS-Modell methodenunabhängig. Ein Ziel der Dissertation war es, konkrete Methoden für die EOS-Subprozesse Projektmanagement, Software-Entwicklung, Qualitätssicherung, Konfigurationsmanagement und Nutzung und Bewertung vorzuschlagen. Ausgehend von der Methoden-Definition wurde prototypisch ein Werkzeug implementiert, das eine systematische Unterstützung der definierten Methoden ermöglicht
    corecore