Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Produktentwicklung als Wettbewerbsvorteil: IBM Softwareentwicklung für Systeme Differenzieren Sie Ihre Produkte mit innovativer Software, die im Team.

Ähnliche Präsentationen


Präsentation zum Thema: "Produktentwicklung als Wettbewerbsvorteil: IBM Softwareentwicklung für Systeme Differenzieren Sie Ihre Produkte mit innovativer Software, die im Team."—  Präsentation transkript:

1 Produktentwicklung als Wettbewerbsvorteil: IBM Softwareentwicklung für Systeme
Differenzieren Sie Ihre Produkte mit innovativer Software, die im Team entwickelt wird

2 Ziele Die folgenden Folien gehören zu einer Präsentation für Kunden.
Sie richten sich an Leiter der Entwicklung, ranghohe Führungskräfte in der Produktentwicklung, CIOs und CTOs. Diese Präsentation positioniert IBM® Rational®-Systemtechnologie im Hinblick auf PDM-Anwendungen und zieht Parallelen zwischen dem mechanischen Bereich, in dem PDM entwickelt werden, und vergleichbaren Herausforderungen in der Softwareentwicklung. Am Ende dieser Aktivität sollten die Teilnehmer Folgendes können: Diese Präsentation für Kunden halten Die Bedeutung von Software in den heute verfügbaren Produkten beschreiben und die Folgen von Softwarefehlern herausstellen Erklären, dass die Effizienz in der Softwareentwicklung gesteigert werden kann, indem der Geschäftsprozess der Softwarebereitstellung mittels der modellgesteuerten Entwicklung automatisiert wird Detailliert erläutern, wie die Zusammenarbeit und Produktivität in der Softwareentwicklung durch eine Plattform für die System- und Softwareentwicklung – Jazz™ – ermöglicht wird Erklären, wie schrittweise bessere Geschäftsergebnisse erreicht werden können, indem der Prozess der Softwarebereitstellung mittels eines Measured Capability Improvement Framework bewertet wird

3 Agenda Trends in der Produktentwicklung und - bereitstellung
Herausforderungen bei der Entwicklung effektiver Software für Produkte Bewährte Verfahren für die erfolgreiche System- und Softwareentwicklung

4 Agenda Trends in der Produktentwicklung und - bereitstellung
Herausforderungen bei der Entwicklung effektiver Software für Produkte Bewährte Verfahren für die erfolgreiche System- und Softwareentwicklung

5 Die Welt wird sehr viel smarter …
INSTRUMENTALISIERT Wir sind jetzt in der Lage, den genauen Zustand von allem zu messen, zu erkennen und zu sehen. Heute gibt es eine Milliarde Transistoren pro Kopf der Weltbevölkerung. Bis 2010 werden 30 Milliarden RFID-Chips in unser Umfeld und ganze Ökosysteme eingebettet werden. VERNETZT Menschen, Systeme und Objekte können auf völlig neue Weise miteinander kommunizieren und interagieren. Heute gibt es eine Milliarde Internetnutzer. Bis 2011 wird fast ein Drittel der Menschheit Zugang zum Web haben. Weltweit gibt es ungefähr 4 Milliarden Mobiltelefonbenutzer. INTELLIGENT Wir können schnell und präzise auf Veränderungen reagieren und bessere Ergebnisse erzielen, indem wir künftige Ereignisse vorhersehen und uns optimal dafür wappnen. Jeden Tag werden 15 Petabytes an neuen Daten erzeugt. Das ist achtmal mehr als die Menge der Informationen in allen Bibliotheken in den USA. Ein durchschnittliches Unternehmen mit Mitarbeitern gibt 5,3 Mio. US-Dollar pro Jahr für die Suche nach den auf seinen Servern gespeicherten Informationen aus.

6 … und führt zu Veränderungen in den Produkten, die wir erstellen, …
Luftfahrt und Verteidigung Da Unternehmen Kosten senken/Innovationen stärken müssen, arbeiten sie beim Entwurf mit Partnern zusammen – über die Grenzen von Gesetzgebung, Technologie und Sicherheit hinweg. Elektronik Die Notwendigkeit der Produkt-differenzierung führt zu einem immer größeren Anteil von Software in Produkten. Automobilindustrie Der Wert von Elektronik und Software im Fahrzeug wird bis 2010 auf 35 % steigen. 90 % der Innovationen basieren auf Elektronik und eingebetteter Software. Unsere Kunden in der Automobilindustrie, Elektronikbranche und Luft-/Raumfahrt sind mit großen Herausforderungen und enormem Druck durch einen sich ständig verändernden Markt konfrontiert. Auf dieser Folie haben wir einige der aktuellen Marktveränderungen und Kundenanforderungen hervorgehoben. Beispielsweise ist in der Automobilindustrie der Anteil von Elektronik und Software in Fahrzeugen enorm hoch. Einem unserer großen OEMs zufolge wird bis 2010 oder 2011 über die Hälfte der Kosten seiner Fahrzeuge – nicht nur 35 bis 40 Prozent, sondern die Hälfte der Kosten – auf Elektronik und Software entfallen. Sie sehen auf dieser Folie auch, dass ein Großteil der Innovationen in der Automobilindustrie auf Software und Elektronik basiert, z. B. spezielle Funktionen zur Verbesserung des Fahrverhaltens, Traktionskontrolle und weitere ausgeklügelte Funktionen. Auch in der Elektronikbranche nimmt die Abhängigkeit von Software deutlich zu. Medizinische Geräte sind immer stärker auf Software angewiesen. Im Bereich der Unterhaltungselektronik trifft dies noch mehr zu, und auch in Bürogeräten kommt immer mehr Software zum Einsatz. In allen Segmenten der Elektronikindustrie besteht ein immenser Bedarf, auch bei Halbleitern. In der Luftfahrt und Verteidigung war der Anteil von Elektronik und Software schon immer sehr groß. Die eingesetzte Software und Elektronik ist allerdings noch komplexer geworden. Noch mehr Partner nutzen sie. Noch mehr Subsysteme müssen integriert werden. Die Komplexität einer ohnehin schon sehr komplexen Umgebung nimmt noch mehr zu. Veränderungen lassen sich in der gesamten Lieferkette beobachten – sogar bei Massenprodukten, die heute komplexe Software und Elektronik erfordern.

7 Toolgestützter Entwurf
… und in der Art und Weise, wie wir sie erstellen Der Produktentwicklungsprozess entwickelt sich weiter – der Schwerpunkt verschiebt sich von den Kosten zur Innovation Toolgestützter Entwurf Reengineering Innovation 1970 bis 1980 1980 bis heute Heute und in Zukunft Geschäftliche Faktoren Produktivitätssteigerung durch Automatisierung Neue Technologie für Kosten- und Zeit-ersparnisse, mehr Flexibilität Globalisierung von Lieferanten, Arbeitskräften und Märkten 2D-CAD Ad-hoc-Datenmanagement Keine Organisations-/Prozessänderung 3D-CAD PDM-Schwerpunkt auf mechanischer Stückliste Organisations- und Prozess-verbesserung Stärkerer Schwerpunkt auf Software-Engineering Volle Rückverfolgbarkeit von Anforderungen im gesamten Produkt-lebenszyklus Ganzheitliche System-planung und -interaktion Produkt-entwicklung Auf Systeme für das Product-Lifecycle-Management (PLM) wurden im Lauf der Jahre beträchtliche Aufmerksamkeit, Investitionen und Ausgaben verwendet – aber haben sich diese Investitionen auch bezahlt gemacht? Sind Unternehmen, die diese Investitionen getätigt haben, auf dem Markt von heute erfolgreich? Wenn nicht, warum? In den 1980er Jahren begannen Unternehmen damit, CAD/CAM-Tools einzusetzen, um bessere Zeichnungen anfertigen zu können. Häufig wurden jedoch keine entsprechenden Änderungen an ihrer Geschäftsstruktur vorgenommen, um diese Investitionen zu optimieren. In den 1990er Jahren investierten Unternehmen in Systeme für das Produktdatenmanagement (PDM) und verknüpften diese Systeme mit ihren ERP-Systemen. Heute und in absehbarer Zukunft wollen Unternehmen verschiedene PLM-Anwendungen bereichsübergreifend integrieren. Doch sogar bei diesem Vorhaben wird Software möglicherweise nicht ausreichend berücksichtigt. Dasselbe gilt für die Notwendigkeit einer integrierten Entwurfssicht durch optimierte Systems-Engineering-Verfahren und -Tools. Heute besteht die Herausforderung darin, die Anforderungen für das gesamte System richtig zu erfassen – indem ihnen dieselbe Aufmerksamkeit wie dem Stücklistenmanagement zuteil wird –, und Software mit derselben Disziplin, Fokussierung und Kontrolle zu entwickeln, die auf CAD/CAM angewandt wurde. Das alles setzt voraus, dass ein neuer Schwerpunkt auf die bereichsübergreifende Zusammenarbeit und Entwicklung gelegt wird, d. h. auf das integrierte Product-Change-Management/Systems-Engineering. Geschäftlicher Nutzen Rasche Innovation, wobei Software ein wichtiges Unterscheidungsmerkmal ist Zeit- und Kosteneinsparungen Höhere Produktivität und Qualität

8 Für einen smarteren Planeten sind erhebliche Investitionen in Software und Systeme nötig
Unternehmen und Institutionen weltweit hatten noch nie so viele neue Möglichkeiten wie heute. Überlegen Sie, wie viel Software für folgende Aufgaben benötigt wird: Nutzung einer Fülle von Informationen, um intelligentere Entscheidungen zu treffen Einsatz für Energie, Umwelt und Nachhaltigkeit, um eine umweltfreundlichere Welt zu schaffen Management einer dynamischen Infrastruktur, die aus Milliarden von Geräten besteht Entscheidungsträger weltweit setzen zunehmend instrumentalisierte, vernetzte und intelligente Produkte und Systeme ein. Der Erfolg bei der Schaffung eines smarteren Planeten hängt in hohem Maße vom Management einer effektiven Softwarebereitstellung ab. Schnellere Innovation hängt von unserer Fähigkeit zum Management einer effektiven Softwarebereitstellung ab.

9 Viele Branchen haben diesen Wandel bei Software schon erlebt In der Luftfahrt und Verteidigung hat sich der Softwareanteil verzehnfacht Relative Verteilung von Software-/Hardwarekosten (in % der Gesamtkosten) 100 Plattform Jahr Anteil von Spezifikations-anforderungen, die Softwaresteuerung erfordern F-4 1960 8 % A-7 1964 10 % F-111 1970 20 % F-15 1975 35 % F-16 1982 45 % B-2 1990 65 % F-22 2000 80 % Hardware Entwicklung 60 Software 20 Wartung 1955 1970 1985 Quelle: Software Engineering, IEEE Transactions on Computers, Dezember 1976 Quelle: The Australian Software Acquisition Management Course, Defense Systems Management College, März 2000

10 Der Softwareentwicklungsprozess wird weiterentwickelt und verbessert, um seiner Bedeutung in heute verfügbaren Produkten gerecht zu werden 1960er er Jahre 1990er er Jahre Heute und in Zukunft Komplexität 100 % maßgeschneidert 30 % wiederverwendete Assets 70 % maßgeschneidert 70 % wiederverwendete Assets 30 % maßgeschneidert Prozess Ad hoc Wiederholbar Agilität im richtigen Maß Koordiniert und bewertet Teams Am selben Standort Praktische Einarbeitung Softwarekenntnisse Global verteilt Zugang zu Know-how – überall Tools Proprietär Nicht integriert Kombination aus proprietären und kommerziellen Tools Kommerziell Plattform für die Entwicklung im Team Projekt- leistung Vorhersehbar Außerhalb des Budget- und Zeitrahmens Unvorhersehbar Selten im Budgetrahmen, manchmal im Zeitrahmen Im Budget- und Zeitrahmen Erfolgsquote 10 % 25 % - 33 % >60 % Diese Folie zeigt drei Generationen von grundlegenden technologischen Fortschritten bei Tools, Komponenten und Prozessen, basierend auf der Annahme, dass die erforderliche Qualität und das benötigte Personal gleich bleiben. Die drei Generationen der Softwareentwicklung sind im Folgenden definiert: Konventionell: 1960er und 1970er Jahre, handwerkliches Können. Unternehmen verwendeten maßgeschneiderte Tools und Prozesse, und praktisch alle maßgeschneiderten Komponenten wurden in primitiven Sprachen erstellt. Die Projektleistung war insofern sehr vorhersehbar, als die Ziele in puncto Kosten, Zeitplan und Qualität fast nie erreicht wurden. Übergangsphase: 1980er und 1990er Jahre, Software-Engineering. Unternehmen verwendeten besser reproduzierbare Prozesse und Standardtools, und in den meisten Fällen (>70 %) wurden maßgeschneiderte Komponenten in höheren Programmiersprachen erstellt. Einige Komponenten (<30 %) waren als kommerzielle Produkte verfügbar, darunter das Betriebssystem, das Datenbankmanagementsystem, Netzwerkkomponenten und die grafische Benutzeroberfläche. Moderne bewährte Verfahren: Seit 2000, Softwareproduktion. Heute werden koordinierte und geprüfte Prozesse, integrierte Automatisierungsumgebungen und überwiegend (70 %) Standardkomponenten eingesetzt. Nur ungefähr 30 % der Komponenten müssen speziell für das Unternehmen erstellt werden. Durch Fortschritte bei der visuellen Modellierung und bei integrierten Produktionsumgebungen können diese maßgeschneiderten Komponenten jedoch sehr schnell erstellt werden. Technologien für die Umgebungsautomatisierung, Größenreduzierung und Prozessverbesserung sind nicht voneinander unabhängig. In jeder neuen Generation der Entwicklung ist es entscheidend, dass sich die Fortschritte bei allen Technologien ergänzen. Beispielsweise könnten die Prozessverbesserungen ohne neue Komponententechnologien und eine stärkere Automatisierung von Tools nicht erfolgreich eingesetzt werden.

11 Da der Anteil von Software an Systemen enorm zunimmt, können Softwarefehler dramatische Folgen für komplexe Systeme haben Luft- und Raum- fahrtbehörde Hersteller von MP3-Playern Automobil-hersteller Aufgrund eines Softwarefehlers in der Bordsteuerung zerstörte sich der Prototyp einer Rakete im Wert von 1 Mrd. US-Dollar nur 40 Sekunden nach dem Start selbst. Eine Million Benutzer eines 30-GB-MP3-Players stellten eines Morgens fest, dass ihre Geräte aufgrund der falschen Handhabung von Schaltjahren nicht mehr funktionsfähig waren. Der Verkauf musste gestoppt werden, bis die Software zur Steuerung des Motors aktualisiert werden konnte, um übermäßige Hitze im Auspuffsystem zu erkennen.

12 Agenda Trends in der Produktentwicklung und - bereitstellung
Herausforderungen bei der Entwicklung effektiver Software für Produkte Bewährte Verfahren für die erfolgreiche System- und Softwareentwicklung

13 Software kann Ihre Produkte von der Konkurrenz abheben Aber erst müssen Sie diese Herausforderungen meistern Unzureichende Konzentration auf Softwareinnovation Wachsende Komplexität der Software UND ihrer Integration in das System Mangelnde Zusammenarbeit und Kommunikation zwischen verteilten Entwicklerteams Mangelnde Innovation Häufig wird zu viel Zeit auf den Moment verwendet, ohne dass man über die nächsten Schritte nachdenkt. Verpasste Chancen Häufig zeigen Ihnen Kunden Geschäftschancen auf, aber wenn Sie nicht verstehen und analysieren, was die Kunden wollen, entgehen Ihnen diese Chancen. Mangelnde Zusammenarbeit und Kommunikation Die Erstellung von Software erfordert ein Team. Es ist jedoch nicht immer einfach, alle Beteiligten auf dem neuesten Stand zu halten. Verlorene oder unzufriedene Kunden Die Kundentreue ist unbeständig. Schon ein einziges Produkt mit schlechter Qualität kann dazu führen, dass Kunden zur Konkurrenz abwandern oder vertragliche Verpflichtungen nicht erfüllt werden. Ständig steigende Entwicklungskosten Die Erfassung und Weitergabe von bewährten Verfahren ist entscheidend, um zu vermeiden, dass dieselben Fehler immer und immer wieder gemacht werden. Wachsende Komplexität der Software und ihrer Integration in das System Wenn Sie das System nicht „verstehen“, können Sie die Auswirkungen von Änderungen nicht vorhersehen. Befolgung von Standards ist notwendig, aber kostenintensiv Die Konformität mit Standards ist äußerst wichtig, kostet jedoch Geld. Um wettbewerbsfähig zu sein, brauchen Sie höchst effiziente Tools und Prozesse, mit denen Sie die Erfüllung kritischer Ziele nachweisen können, während sie mit jedem nachfolgenden Release Geld sparen. Keine Möglichkeit zur Wieder-verwendung von Software Kosten für die Einhaltung von Gesetzen und Vorschriften

14 Herausforderungen für eine effektive Softwarebereitstellung Kostenüberschreitungen, verfehlte Fristen und Qualitätsprobleme „Bei 62 % der Projekte wurde der Zeitplan nicht eingehalten.“ „50 % der ausgelagerten Projekte werden voraussichtlich den Erwartungen nicht gerecht.“ „Nur 34 % der Softwareprojekte werden als erfolgreich erachtet, was über 300 Mrd. US-Dollar jährlich kostet.“ „Bei 49 % der Projekte wurde das Budget überschritten.“ „41 % der Projekte bringen nicht den erwarteten geschäftlichen Nutzen und ROI ein.“ „Nur 37 % sind zufrieden mit dem Tempo der Softwareentwicklung.“ „46 % der Produkte werden den Anforderungen von Kunden nicht gerecht.“

15 Agenda Trends in der Produktentwicklung und - bereitstellung
Herausforderungen bei der Entwicklung effektiver Software für Produkte Bewährte Verfahren für die erfolgreiche System- und Softwareentwicklung

16 Wie kann ich eine effektivere Softwarebereitstellung erreichen, ausgehend von meiner aktuellen Position? „Wie kann ich die Effizienz der Softwarebereitstellung in meinem Unternehmen steigern?“ „Wie kann ich für Koordination und Transparenz über verteilte Bereiche und Technologien hinweg sorgen?“ „Wie kann ich Fortschritte auf dem Weg zu den gewünschten Geschäfts-ergebnissen sicherstellen?“

17 Um die Effizienz zu steigern, suchen Sie nach Wegen, um den Geschäftsprozess der Softwarebereitstellung zu automatisieren Setzen Sie Modelle als primäre Artefakte im gesamten Lebenszyklus der Systementwicklung ein. Stellen Sie sicher, dass alle Anforderungen erfüllt werden und funktionales Verhalten realisiert wird, während nicht funktionale Auflagen eingehalten werden. Verbessern Sie die Kommunikation zwischen allen Beteiligten im Systementwicklungsteam. Managen Sie Komplexität durch Abstraktion. Automatisieren Senken Sie die Kosten und verbessern Sie die Qualität, indem Sie Abläufe auf der Basis von Echtzeit-informationen automatisieren. Steigern Sie die Produktivität ohne zusätzliche Mitarbeiter. Standardisieren Sie Prozesse und automatisieren Sie wiederholt anfallende Aufgaben, um die Teameffizienz zu verbessern. Stellen Sie die Einhaltung von gesetzlichen Bestimmungen durch selbst dokumentierende Daten und automatisierte Prüfprotokolle sicher. Automatisieren und standardisieren Sie wiederholt anfallende Aufgaben. Implementieren Sie den Self-Service-Zugriff auf vorkonfigurierte Prozesse. Sorgen Sie für die schnelle Erkennung und Behebung von Fehlern. Senken Sie die Produktionskosten und erzielen Sie einen konkreten ROI. Standardisieren Sie Prozesse, um die Teameffizienz zu verbessern. Implementieren Sie Prüfungen der Codequalität als Teil Ihres automatisierten Standardprozesses. Erkennen Sie Softwarefehler in einer früheren Phase des Lebenszyklus der Softwareentwicklung – während der Codier- und Erstellungsphasen. Stellen Sie die automatisierte Einhaltung von gesetzlichen Bestimmungen sicher. Erfassen Sie selbst dokumentierende Daten und Prüfprotokolle, z. B. zu Prozessen für die Softwareassemblierung sowie Builds und Releases. Managen Sie IT-Ziele hinsichtlich Governance und Compliance durch anpassbare Berichtsmethoden.

18 Erfassung und Analyse von Anforderungen
Die dokumentgesteuerte Softwareentwicklung führt zu langwierigen, inflexiblen Entwicklungsprozessen Erfassung und Analyse von Anforderungen System- analyse und -entwurf HW/SW-Entwurfs- dokument SW-Entwurf SW-Implementierung und Komponententest Anforderungs- SW-Entwurfs- spezifikation Modul- integration und -test System- abnahme (Sub-)System- .exe .doc Spezifikationen Schnittstellenanforderungen Systementwurf Analyse und Abwägung Testpläne Leider funktioniert das Ganze nie so, wie es sollte. Zwischen den Entwicklungsphasen bestehen Hürden. Es gibt viele Probleme im Systems-Engineering-Bereich. Vielleicht kommen Ihnen einige davon bekannt vor. Die Hürden, die wir angesprochen haben, stehen für die mangelnde Kommunikation zwischen den einzelnen Phasen. Häufig werden Spezifikationen in Textform entwickelt und an das nächste Team weitergegeben, das sie weiter ausarbeiten soll. Man geht davon aus, dass der Input jeweils korrekt ist, kann jedoch nie sicher sein, da es sich bei den Spezifikationen um informell erstellte Dokumente handelt, die beschreiben, wie das System funktionieren sollte. Das Problem bei dieser Vorgehensweise besteht natürlich darin, dass die Teams in jeder Phase nicht wissen, ob das, was sie bekommen, korrekt ist – bis zur Systemintegration und zum Systemtest, der Phase, in der die Behebung von Fehlern am kostenaufwendigsten ist. [KLICKEN] Fehler, die in dieser Phase festgestellt werden, müssen innerhalb der Textspezifikationen der frühen Phasen der Entwicklung korrigiert werden, und der Prozess wird bis zum Systemtest fortgesetzt. Zu diesem Zeitpunkt können Sie nur hoffen, dass der Fehler behoben wurde, da anderenfalls dieselbe Iteration wiederholt werden muss. [KLICKEN] Wenn Sie sich die Grafik auf dieser Folie ansehen, können Sie erkennen, dass die meisten Fehler in einer frühen Phase des Entwicklungsprozesses auftreten. [KLICKEN] Sie werden jedoch erst während der Integration oder des Systemtests entdeckt. Das führt dazu, dass ihre Behebung ziemlich zeit- und kostenaufwendig ist und häufig zur Folge hat, dass Produkte mit geringerem Funktionsumfang und/oder später als geplant auf den Markt kommen. 18

19 Mit einem Modell können Sie alle Entwicklungsartefakte vereinen
Erfassung und Analyse von Anforderungen System- abnahme SOFTWARE- MODELL (Sub-)System- integration und -test System- analyse und -entwurf Modul- integration und -test Die Komplexität von Systemen erzwingt eine Umstellung von dokumentbasierten auf modellbasierte Systeme, die besser in der Lage sind, Komplexität mittels Abstraktion zu bewältigen. Die Modelle werden dann zum Ausgangspunkt. Das bedeutet, Spezifikationen und Schnittstellenanforderungen werden aus den Modellen erzeugt, Testpläne können von den Modellen abgeleitet werden, und die Analyse und der Entwurf können auf den Modellen basieren. Vom Ausführen und Korrigieren zum Managen, Anpassen und Ausrichten Von einem Analyse- zu einem Syntheseparadigma Das offensive Risikomanagement bildet den Kern des IBM Prozessframeworks für die modellgesteuerte Systementwicklung. SW-Entwurf SW-Implementierung und Komponententest Umstellung von einem dokumentbasierten auf einen modellbasierten Ansatz 19

20 Die modellgesteuerte Entwicklung (MDD) führt zu besseren Entwürfen und verlässlicheren Ergebnissen
„Die modellgesteuerte Entwicklung wird verwendet, um Anforderungen klarer zu analysieren, Entwurfsspezifikationen zu definieren, Systemkonzepte mittels einer Simulation zu testen und automatisch Code für die direkte Implementierung auf der Zielhardware zu erstellen.“ „Ein sehr wichtiger Aspekt des Entwurfs besteht darin, wie nahe die endgültigen Ergebnisse des Entwurfs den vor dem Entwurf definierten Erwartungen kommen.“ Vorteile Höhere Produktivität mit weniger Mitarbeitern Standardisierung von Prozessen und Automatisierung von wiederholt anfallenden Aufgaben, um die Teameffizienz zu verbessern und eine schnellere Wertschöpfung zu erreichen Verbesserung der Einhaltung gesetzlicher Bestimmungen durch selbst dokumentierende Daten und Workflows Verbesserung mit MDD Entwurfsverbesserungen (Bsp. aus der Telekommunikation) Managen Sie Komplexität und Änderungen: Nutzen Sie Modelle, um Systems-Engineering-Praxis zu fördern – integrieren Sie die visuelle Modellierung, Modellausführung und gemeinsame Realisierung sowie Systemmodelliersprachen; modellieren, verstehen und automatisieren Sie Abhängigkeiten, die Rückverfolgbarkeit und die Wirkungsanalyse. Kontrollieren und steuern Sie den gesamten Produktlebenszyklus, um Änderungen zu managen und zu bewerten und darauf zu reagieren. Monate von Beginn bis Lieferung 19 % Stornierte Entwürfe 49 % Entwürfe hinter dem Zeitplan 46 % Monate hinter dem Zeitplan 22 % Embedded Market Forecasters, Gaining a Competitive Design Advantage in the New Telecom/Datacom Marketplace, Dr. Jerry Krasner, Juni 2008 20 20

21 System- anforderungen
Legen Sie die Architektur im Voraus fest – bewusst, nicht zufällig Eine frühzeitige Architekturanalyse hilft, später Fehler zu vermeiden System- anforderungen System Subsystem 1 Subsystem 2 Subsystem 3 Anwendungs- fall Markt-/Kundenbedarf ... Aktion1 Aktion2 Aktion3 Nachdem Sie die allgemeinen Systemanforderungen bestimmt haben, erstellen Sie Strukturen, um die funktionalen und nicht funktionalen Anforderungen zu erfüllen. Diese Strukturen sind die übergeordnete Architektur. Analysieren Sie die Architektur und führen Sie frühzeitige Trade-off-Analysen durch. Bleiben Sie auf dieser abstrakten Ebene und führen Sie die Architekturen frühzeitig aus, um Probleme früher aufdecken und sehr viel kostengünstiger beheben zu können. Die Wahrung der Rückverfolgbarkeit ist entscheidend, jedoch nicht machbar, wenn sie manuell ausgeführt wird – die Situation wird zu schnell zu komplex. Architektur Option 1: Zentralisierung der Verarbeitung in einigen dedizierten Prozessoren Kompromisse Sicherheit Kosten Geschwindigkeit Architektur Option 2: Verteilung der Verarbeitung auf mehrere Multifunktionsprozessoren

22 Ergebnisse beim Kunden Standardisierte Qualitätsangebote
Konkrete Einsparungen bei Simulationen und Tests durch Automatisierung der modellgesteuerten Entwicklung Umfassendes Testprozessmodell Ertrag von 7:1 aus Systems-Engineering-Investitionen Integrierte, durchgängige Technologie Reduzierung des Aufwands für manuelle Tests um über 90 % Branchenbasierte Testlösungen Einsparungen von 10 bis 20 % durch die Wiederverwendung von Testfällen und -scripts Erweiterte Fehleranalyse- und Qualitätsmanagementprozesse Reduzierung der Fehlerzahl um bis zu 69 % Ergebnisse beim Kunden Qualitätssteigerung von 30 bis 70 % Verbesserung der Zykluszeiten um 20 bis 50 % Kostensenkungen von 25 bis 60 % Quellen: Umfassendes Testprozessmodell Ertrag von 7:1 aus Systems-Engineering-Investitionen Integrierte, durchgängige Technologie Reduzierung des Aufwands für manuelle Tests um über 90 % (Quelle: globales Finanzinstitut) Branchenbasierte Testlösungen Einsparungen von 10 bis 20 % durch Wiederverwendung von Testfällen und -scripts (Quelle: Nutzung von Assets der GBS-Branchenframeworks bei Kundenprojekten aus einer Auswahl von 855 GBS-Projekten für die Testautomatisierung Erweiterte Fehleranalyse- und Qualitätsmanagementprozesse Reduzierung der Fehlerzahl um bis zu 69 % (Quelle: Verwendung der Defect Reduction Method™ (DRM) der IBM Forschung bei einem globalen Telekommunikationsanbieter, einem globalen Finanzinstitut und intern bei IBM) Qualitätssteigerungen von 30 bis 70 % (Quelle: über 800 GBS-Kundenprojekte und IBM interne Projekte) Verbesserung der Zykluszeiten um 20 bis 50 % (Quelle: Konsortium der italienischen Regierung, globales Finanzinstitut) Kostensenkungen von 25 bis 60 % (Quelle: DRM-Analyse und über 800 GBS-Kundenprojekte) Standardisierte Qualitätsangebote Quelle: GBS Test Practices Investor Board Briefing 22 22

23 Bewährte Verfahren für die modellgesteuerte Entwicklung verringern den Zeit- und Kostenaufwand Damit Projekte im Zeit- und Budgetrahmen durchgeführt werden können Nutzung eines auf Artefakten basierenden Prozesses statt eines papierbasierten Prozesses Messung des Fortschritts am tatsächlich bereitgestellten Produkt, nicht an den abgehakten Prozessschritten Dynamische Erstellung der Dokumentation aus Modellen, dadurch Verringerung des Zeit- und Kostenaufwands im Vergleich zu einem papierbasierten Prozess Verwendung spezieller Planungsverfahren, die Folgendes ermöglichen: Geringeres Risiko durch frühe Iteration Reduzierung der Erstellung von Emulationscode Frühere Aufdeckung von Fehlern, die dadurch kostengünstiger behoben werden können Abwägung von Architekturen in einer frühen Phase des Entwurfszyklus Automatisierung von Tests auf der Basis definierter Anforderungen Die Erfahrung hat gezeigt, dass Iterationen durch die Erstellung einer Reihe von Artefakten sowohl die Artefakte selbst als auch das System – das Endprodukt – verbessern. Jeder progressive Schritt im Prozess der Definition des Kontexts, der Definition der Zusammenarbeit und der Verteilung von Zuständigkeiten auf eine Gruppe kooperierender Bereiche hebt Unklarheiten in den vorhergehenden Schritten hervor, deckt Probleme oder strittige Punkte im Entwurf auf und bietet die Möglichkeit, Fehler in einer frühen Phase des Entwicklungsprozesses zu beheben (zu deutlich niedrigeren Kosten, als wenn sie erst später festgestellt werden). Die modellgesteuerte Systementwicklung basiert auf langjähriger Erfahrung in der Arbeit mit einer Vielzahl verschiedener Kunden und Projekte. Die Vorteile einer wiederholten Durchführung sorgfältig geplanter Aktivitäten für eine Reihe konkreter Artefakte, die gestestet werden können, hat sich bewährt. „Das Projekt ist auf Kurs durch fünf Iterationen [mit] Einsparungen in Millionenhöhe. Die Lösung erhöhte die Erfolgsquote unserer Projekte von 14 % auf über 80 %.“ Technischer Spezialist Luft- und Raumfahrtunternehmen

24 Vordenkerrolle und bewährte Verfahren
Rational® Harmony™ Modellbasierter Entwicklungsprozess auf der Basis der UML (Unified Modeling Language) Umfasst den gesamten Projektablauf mit effizienten Entwurfsiterationen Rational Unified Process® (RUP) Wendet die Disziplin und die bewährten Verfahren des RUP® auf die Herausforderungen der Softwareentwicklung an Höchst konfigurierbare Workflow-Vorlagen zur Identifizierung der Hardware, Software und Mitarbeiterrollen, die an einem Softwareentwicklungsprojekt beteiligt sind IBM hilft seinen Kunden bei der erfolgreichen Implementierung von Frameworks für die Softwareentwicklung Mit Harmony und RUP bietet IBM zwei wichtige und sich ergänzende Frameworks für die Entwicklung an. Die IBM Softwareentwicklungspraxis basiert auf jahrzehntelangem profundem Fachwissen und praktischer Erfahrung in diesem Bereich.

25 Um die Koordination und Transparenz zu verbessern, suchen Sie nach Wegen, um im gesamten Prozess der Softwarebereitstellung zusammenzuarbeiten Produktivität Zentrale, einheitliche Plattform Integration und Wissensaustausch Reibungsloser gemeinsamer Zugriff auf den Projektstatus über Management-Dashboards Qualität Weniger Nacharbeiten Bessere Projektverfolgung Höhere Teamzufriedenheit Höhere Rentabilität Kosteneinsparungen Mehr Innovation, dadurch Umsatzsteigerungen Zusammenarbeiten Sorgen Sie für unternehmensweiten Konsens bei Prioritäten und verbessern Sie die Mitarbeiterproduktivität. Nutzen Sie das Potenzial sozialer Netzwerke, um den verteilten Teams von heute die Möglichkeit zu bieten, im Einklang zu arbeiten und im Kontext zusammenzuarbeiten. Verwenden Sie automatisierte Workflows, um die Produktivität der verschiedenen Teams während des gesamten Prozesses der Softwarebereitstellung zu steigern. Nutzen Sie die Iterationsplanung in Echtzeit und den Arbeitslastausgleich, um die Produktivität der Mitarbeiter zu steigern. Profitieren Sie von Teamarbeit in Echtzeit und im Kontext. Nutzen Sie die neuesten Möglichkeiten sozialer Netzwerke, um die verteilten Teams von heute in die Lage zu versetzen, im Einklang zu arbeiten. Sorgen Sie für Teamtransparenz – „wer“ hat „was“ „wann“ und „warum“ erledigt. Automatisieren Sie die Arbeitsübergabe, damit nichts übersehen wird. Ermöglichen Sie die dynamische Integration von Benutzern, Prozessen und Projekten. Automatisieren Sie den Teamworkflow, um die Produktivität im gesamten Lebenszyklus zu steigern. Profitieren Sie von integrierten Funktionen für Planung, Quellcodeverwaltung, Arbeitselement- und Build-Management und Projekttransparenz. Nutzen Sie eine Vielzahl verschiedener Tool- und Clientintegrationen, um Softwareteams zu vereinen. Sorgen Sie für sofortige Produktivität. Ermöglichen Sie die dynamische Einrichtung von Projekten und Teams. Nutzen Sie die Iterationsplanung in Echtzeit und den Arbeitslastausgleich. Nutzen Sie sofort einsatzbereite agile Prozesse.

26 Eine einheitliche Plattform kann den Geschäftsprozess der Softwarebereitstellung deutlich verbessern
Zusammenarbeiten Automatisieren Messen Wichtige Voraussetzungen Projekt- und Prozessanpassung Individuell erstellt: Um den Wert einer Plattform für die Softwareentwicklung deutlich zu steigern, müssen wir alltägliche Aufgaben automatisieren, damit die Mitarbeiter ihre ganze Energie darauf verwenden können, bessere Ergebnisse zu erzielen. Artefakte Prozesse Pläne Methoden Tools Schulungen Manuell entwickelte Komponenten Automatisierte Erstellung von Inhalten Kosten und Zeit Vorhandene Ausgangspunkte Vorhandene Artefakte, Verfahren Alte Methode Neue Methode

27 Qualitäts- management Änderungs- und Konfigurations-management
Die Vorteile einer einheitlichen Plattform für die System- und Softwarebereitstellung Die manuelle Pflege von Statusberichten kann bis zu 15 % der Projektressourcen in Anspruch nehmen. Techniker Qualität Anforderungs- entwicklung Qualitäts- management Änderungs- und Konfigurations-management Software in höherer Qualität Sorgfältiger getestete Anforderungen, selbst wenn diese sich ändern Lose Verknüpfung zwischen Anforderungen und Testfällen reduziert die Abhängigkeit von der Kommunikation zwischen Benutzern, um die Verbindung aufrechtzuerhalten Software, die Anforderungen besser gerecht wird Größere Transparenz der Anforderungsdetails für Entwickler und Architekten Verbindung zwischen Anforderungen und Arbeitselementen stellt Geschäftsanalysten, Entwicklern und Architekten sofort mehr Informationen bereit Kürzere Bereitstellungszeiten Datenzuordnung zwischen Test und Entwicklung Zuordnung zwischen Testfällen und Fehlern erlaubt die bessere, rechtzeitige Ermittlung, Lösung und Überprüfung von Fehlern Die bessere Abstimmung von Unternehmenszielen und Lösungen kann die Produktivität um 17 % steigern. Die Möglichkeit, gemeinsam an Arbeitselementen, Fehlern und Buildfehlern zu arbeiten, kann unnötige Nacharbeiten um 15 % verringern. Architekt Entwickler

28 Jazz ist eine offene und erweiterbare Plattform für die System- und Softwareentwicklung
Vorhandene Rational- Angebote Business Partner-Angebote Open-Source-Angebote (Subversion etc.) Weitere werden folgen … (weitere IBM Server etc.) Serverintegrationen Neue Innovation: Das Jazz-Projekt Menschen arbeiten zusammen, um erstklassige Software und Systeme bereitzustellen Jazz ist ein Projekt und eine Plattform. Es verändert die Art und Weise, wie Menschen zusammenarbeiten, um größeren Nutzen und höhere Leistung aus ihren Software- und Systeminvestitionen zu erzielen. Eine skalierbare, erweiterbare Plattform für die Zusammenarbeit im Team Eine Community unter Jazz.net, bei der Sie sehen können, wie Produkte auf der Basis von Jazz erstellt werden Unsere Vision von der Zukunft der Software- und Systembereitstellung, die global verteilte, bewegliche und dynamische Teams unterstützt Eine Evolution unseres Portfolios, das im Lauf der Zeit weiterentwickelt wird, um die Jazz-Technologie zu nutzen Clientintegrationen Eclipse Web 2.0 Visual Studio® (1.Q.09)

29 Die erste Welle der Jazz-Angebote
Rational Team Concert Zusammenarbeit im Kernteam „Denken und Arbeiten im Einklang“ und Anzeige des Projektstatus in Echtzeit Rational Requirements Composer Rational Quality Manager Zusammenarbeit von Geschäftsexperten Zusammenarbeit im Qualitätsteam Koordination von Qualitäts-sicherungsplänen, -prozessen und -ressourcen Sondierung, Erfassung, Ausarbeitung, Diskussion und Prüfung von Anforderungen Techniker Zuordnung Qualität Änderungen; Benachrichtigung Anforderung ist mit Arbeitselement verbunden Tester findet Fehler, erstellt Arbeitselement REST-API REST-API Fehlerstatus Anforderungs- management Qualitäts- management Fehler werden gemäß Anforderungen geschlossen REST-API Software in höherer Qualität Sorgfältiger getestete Anforderungen, selbst wenn diese sich ändern Lose Verknüpfung zwischen Anforderungen und Testfällen reduziert die Abhängigkeit von der Kommunikation zwischen Benutzern, um die Verbindung aufrechtzuerhalten Software, die Anforderungen besser gerecht wird Größere Transparenz der Anforderungsdetails für Entwickler und Architekten Verbindung zwischen Anforderungen und Arbeitselementen stellt Geschäftsanalysten, Entwicklern und Architekten sofort mehr Informationen bereit Kürzere Bereitstellungszeiten Datenzuordnung zwischen Test und Entwicklung Zuordnung zwischen Testfällen und Fehlern erlaubt die bessere, rechtzeitige Ermittlung, Lösung und Überprüfung von Fehlern Änderungs- und Konfigurations-management Architekt Entwickler

30 Rational Team Concert: Zusammenarbeit im Kontext, Prozessautomatisierung und Reporting auf einer offenen, erweiterbaren Plattform Weniger Besprechungen und Statusberichte Reduzierung von Fehlern und Nach-besserungen in einer späten Projektphase Geringere Fluktuation und verstärkter Einsatz von Spitzenkräften im technischen und geschäftlichen Bereich Zusammenarbeit im Kontext Kooperation Einfachere Befolgung von Standards Frühere Erkennung und schnellere Behebung von Fehlern Bessere Vorhersagbarkeit von Projekten Das richtige Maß an Governance Klarheit Projektbeginn in Tagen statt Wochen Verkürzung der Zeit bis zur ersten Demonstration Bessere Zykluszeiten durch automatisierte Muster, Services und Architekturen Sofortige Produktivität Kontinuität „Virale“, aber kontrollierte Entwicklung Erweiterte Community Auswählbare Integrationsmerkmale Offene und erweiterbare Architektur Community 30

31 Rational Team Concert im Detail
Team Advisor definiert Regeln (neu) und ermöglicht kontinuierliche Verbesserungen Prozesseinführung und -durchsetzung Zusammenarbeit im Kontext ermöglicht Teammitgliedern die Kommunikation im Kontext ihrer Arbeit Einheitliche Struktur für projektbezogene Artefakte Erstklassiges Onboarding/Offboarding von Teams, einschließlich Teammitgliedern, Subteams und Projektübergabe Rollenbasierte Betriebssteuerung für eine flexible Definition von Prozessen und Funktionen Jazz Team Server Integriertes Datenstrommanagement Vergleichsdaten (Baselines) auf Komponentenebene Serverbasierte Sandboxes Identifiziert Komponenten in Datenströmen und verfügbaren Baselines ClearCase-Connector SCM Arbeitselemente Fehler, Erweiterungen und Konversationen Anzeige und gemeinsame Nutzung von Abfrageergebnissen Unterstützung für Genehmi- gungen und Diskussionen Schnittstelle zum Bearbeiten von Abfragen ClearQuest-Connector Rückverfolgbarkeit von Arbeitselementen und Änderungen Builddefinitionen für team- basierte und private Builds Lokale oder Remote-Build-Server Unterstützung von Ant- und Befehlszeilentools Integration mit Build Forge Build Iterationsplanung Integrierte Iterationsplanung und -ausführung Aufgabenschätzung, verknüpft mit wichtigen Meilensteinen Sofort einsatzbereite Vorlagen für agile Prozesse Projekttransparenz Anpassbare webbasierte Dashboards Echtzeitkennzahlen und -berichte Verfolgung von Projektmeilensteinen und Status Rational Team Concert im Detail

32 Veränderung der Art und Weise, wie Menschen zusammenarbeiten
Jazz-Angebote anderer Anbieter Erweiterung der Jazz-Plattform mit leistungsstarken, integrierten Angeboten von Rational Business Partnern Jazz-Angebote anderer Anbieter Veränderung der Art und Weise, wie Menschen zusammenarbeiten Lösungsanbieter Weitere Partner

33 Die Plattform für die System- und Softwarebereitstellung – Voraussetzungen für Erfolg
Aus vergangenen Fehlern der Softwarebranche lernen Integration auf der Basis eines Repositorys Entwurf eines Datenmodells für die Software- und Systementwicklung für das Repository Bereitstellung eines standardisierten Frameworks für Tools für die Integration auf der Basis des Repositorys Automatisierte Dashboards für das Projektmanagement Das Internet nutzen Enorm skalierbar und erweiterbar Integration von Informationen in großem Umfang Praktisch unerreichte Möglichkeiten der Zusammenarbeit Offenheit und Erweiterbarkeit sicherstellen Auf der Basis des Eclipse-Standards Spezifikation von Daten unabhängig von Tools Zugriff (mehrerer) Tools auf Daten über HTTP/APP Wichtigste Ergebnisse Senkung der Integrationskosten Schaffung einer größeren Partner-Community Einfache Erweiterung und Integration in die übrige Umgebung für die Produktentwicklung Kein vollständiges Ersetzen nötig Das Ziel von Jazz: Bereitstellung einer erstklassigen integrierten Plattform für die System- und Softwareentwicklung Bereitstellung einer Alternative zum proprietären Datenmanagement für unsere Kunden

34 Um schrittweise bessere Geschäftsergebnisse zu erreichen, suchen Sie nach Wegen, um den Softwarebereitstellungsprozess zu messen Treffen Sie fundiertere Entscheidungen, indem Sie die Echtzeitinstrumentierung des Softwarebereitstellungsprozesses verwenden. Nutzen Sie Messdaten für die kontinuierliche Verbesserung der Kompetenz von Einzelnen und Teams. Erhalten Sie Einblick in bereichs- und standortübergreifende Projekte mit minimalen Unterbrechungen. Messen Erreichen Sie kontinuierliche Verbesserungen, indem Sie den Fortschritt im Vergleich zu den gewünschten Geschäftsergebnissen messen. Treffen Sie fundiertere Entscheidungen, indem Sie die Echtzeitinstrumentierung des Softwarebereitstellungsprozesses verwenden. Messen Sie die Effektivität von Prozessen und Verfahren, um Unternehmens- und Geschäftsergebnisse zu verbessern. Erhalten Sie Einblick in bereichs- und standortübergreifende Projekte mit minimalen Unterbrechungen. Treffen Sie rechtzeitige, fundiertere Entscheidungen. Erstellen Sie eine Echtzeitinstrumentierung, um präzise Entscheidungen rund um die Uhr zu unterstützen. Nutzen Sie Dashboards, um für Transparenz im gesamten Lebenszyklus zu sorgen. Verbessern Sie die Ausführung des Softwarelebenszyklus, um Kosten und geschäftliche Risiken zu senken. Konfigurieren und implementieren Sie wesentliche Leistungsindikatoren (KPIs), die auf klar definierte Geschäfts- und Investitionsziele abgestimmt sind. Erhalten Sie bessere Einblicke in Projektportfolios, um sicherzustellen, dass die Ziele erreicht werden können.

35 Implementierung/Assemblierung „Verbesserung von Geschäftsprozessen“
Die Softwarebereitstellung ist ein Geschäftsprozess, der kontinuierlich verbessert werden muss Implementierung/Assemblierung Anforderungen Inbetriebnahme Entwurf Überprüfung Wichtigste Priorität des CIO im Auftrag des CEO in den letzten drei Jahren: „Verbesserung von Geschäftsprozessen“ Quelle: Gartner, „Making the Difference: The 2008 CIO Agenda“, Jan. 2008

36 Entscheidend für höhere Produktivität ist Governance – nicht mehr Rechenleistung
Heute Führendes Verfahren 3 % Anforderungen Analyse/Entwurf Entwicklung Implementierung 27 % 55 % 15 % 20 % 13 % 22 % 5 % % Zeitersparnis University of West Virginia und The United States Air Force Academy 2001 Ohne ein gutes Managementsystem erzielten Unternehmen mit den höchsten IT-Ausgaben für Rechenleistung nur 4 % mehr Vorteile als Unternehmen, die am wenigsten in Rechenleistung investierten. Mit einem guten Governance-System waren die Vorteile deutlich größer: Steigerung der Produktivität um 25 % Kapitalverbesserung um 70 % Quelle: Stephen J. Dorgan und John J. Dowdy – The McKinsey Quarterly, 2004 Number 4 36 36

37 Nutzen Sie ein Measured Capability Improvement Framework (MCIF), um Fortschritte auf dem Weg zu einer effektiven Softwarebereitstellung zu machen Angestrebten geschäftlichen Nutzen sondieren und festlegen Ein Framework unterstützt die systematische Herangehensweise an eine herausragende Software- und Systementwicklung und -bereitstellung Ein erstklassiges Bereitstellungsmodell: Erlaubt die schrittweise, messbare Transformation der Softwarebereitstellung Sorgt durch sofort einsatzbereite Assets für eine schnellere Einführung Bietet flexibles Feedback zum Geschäftsprozess Erfasst die im Bereich der schrittweisen Einführung gesammelten Branchenerfahrungen Phase 1 Lösungskomponenten bestimmen Phase 2 Einführung der Lösung beschleunigen und überwachen Phase 3 Phase 4 Geschäftsergebnisse prüfen und mitteilen Zurück zu Phase 2 Erzielte Ergebnisse bestätigen und neues Projekt beginnen

38 Um das Potenzial eines smarteren Planeten zu nutzen, müssen Unternehmen drei Maßnahmen ergreifen:
1 2 3 WERT FOKUSSIEREN SCHNELL HANDELN CHANCEN ERGREIFEN Für einen smarteren Planeten sind große Investitionen in Software und Systeme nötig. Erkennen Sie, dass Software heute im Mittelpunkt der Wettbewerbsdifferenzierung steht. Geschäftsmodellinnovation Produktinnovation Modellgesteuerte Entwicklung Suchen Sie nach Möglichkeiten, um die Effektivität der Softwarebereitstellung zu steigern. Verbessern Sie die Zusammenarbeit. Automatisieren Sie Aufgaben. Verbessern Sie die Berichterstellung. Nutzen Sie eine einheitliche Plattform für die Softwarebereitstellung, die Agilität im richtigen Maß bietet. Überprüfen Sie Ihre Softwareinvestitionen systematisch. Richten Sie Ihre Investitionen an den Geschäftsergebnissen aus. Erstellen Sie ein Framework für schrittweise Verbesserungen im Geschäftsprozess der Softwarebereitstellung. Um das Potenzial eines smarteren Planeten zu nutzen, müssen Unternehmen drei Maßnahmen ergreifen. 38

39 Softwareentwicklung bei IBM
Pittsburg Poughkeepsie Somers Yorktown Heights Hopewell Junction Southbury New York City Princeton Hawthorne Endicott Edinburgh London / Staines Milton Keynes Hursley Warwick York Andover Bedford, MA Bedford, NH Essex Junction, VT Lexington Westborough Westford Cambridge Beispiele für den Einsatz von Rational-Lösungen bei IBM RTC – Zusammenarbeit IBM WebSphere® – Automatisierung iRAM – Wiederverwendung Lifecycle-Management-Transformation (STG) Unternehmensarchitektur (GBS) Testlösung SCORE (Solution for Compliance in a Regulated Environment) (GBS) QuickStart-Testservices (GBS) Cork Dublin Galway Stockholm Delft Krakau Warschau Moskau Kanada Toronto, Ottawa Montreal, Victoria Böblingen Peking Shanghai Paris Pornichet Zürich Haifa Rehovot Yamato Beaverton Kirkland Seattle Foster City San Francisco SVL/San Jose Almaden Agoura Hills Irving El Segundo Costa Mesa Las Vegas Fairfax Raleigh Charlotte Lexington, KY Atlanta Boca Raton Tampa Mexiko Kairo Taiwan Rom Rochester, MN Boulder Denver Lenexa, KA Tucson Phoenix Austin Dallas Bangalore Pune Hyderabad Gurgaon Malaysia Goldküste Sydney Canberra Sao Paulo Perth

40 Agilität im richtigen Maß mit Rational Team Concert
1.362 Ressourcen insgesamt weltweit Über 60 Rational-Entwicklerteams (~1000 Benutzer), die Rational Team Concert verwenden Mehr als 125 weitere Teams bei IBM darunter 14 Teams bei GBS z. B. Team der Application Factory (AF) mit geplanten Benutzern bis Ende 09 Einarbeitungszeit bei neuen Projekten: weniger als ein Tag Anwendbar auf agile/iterative und Wasserfallprojekte Rational-Entwicklung Rational-Kundensupport WebSphere-Entwicklung Lotus®-Entwicklung Tivoli®-Entwicklung IBM Forschung IBM Global Business Services Kanada – 299 (22 %) Polen – 3 (<1 %) China – 78 (6 %) Frankreich – 30 (2 %) Japan – 4 (<1 %) Israel – 29 (2 %) USA – 639 (47 %) Schweiz – 16 (1 %) Indien – 229 (17 %) Mexiko – 31 (2 %) Brasilien – 4 (<1 %) „Uns hat wirklich gut gefallen, wie Jazz die Zusammenarbeit handhabt, Aufgaben verfolgt und Änderungen den tatsächlichen Aufgaben zuordnet. Das ist Lichtjahre von dem entfernt, was wir bisher mit CVS hatten.“ „Weniger s. Weniger Informationsverluste. Eine sehr präzise Anzeige von Features und Aufgaben. Sehr einfach für jeden. Unterstützt Sprints / Iterationen wirklich gut.“ – IBM internes Feedback

41 IBM kann Ihnen zu Innovation und Effizienz verhelfen Herausragende Produkte und Verfahren für die Softwareentwicklung im Team Höhere Produktivität und Effizienz in der Softwareentwicklung durch modellgesteuerte Entwicklung Einheitliche Entwicklungsplattform, die eine integrierte Umgebung für die Zusammenarbeit im Team bereitstellt Bessere Governance und Geschäftsergebnisse durch Framework für die Messung kontinuierlicher Verbesserungen Nur IBM bietet eine Plattform mit integrierten Produkten für: Anforderungsmanagement Modellgesteuerte Entwicklung Integriertes Änderungsmanagement Qualitätsmanagement und -umsetzung Und … dokumentierte bewährte Verfahren, die durch herausragende Beratungs- und Implementierungsservices unterstützt werden

42 Zusammenfassung Die vorhergehenden Folien gehören zu einer Präsentation für Kunden. Sie richten sich an Leiter der Entwicklung, ranghohe Führungskräfte in der Produktentwicklung, CIOs und CTOs. Diese Präsentation positioniert IBM Rational-Systemtechnologie im Hinblick auf PDM-Anwendungen und zieht Parallelen zwischen dem mechanischen Bereich, in dem PDM entwickelt werden, und vergleichbaren Herausforderungen in der Softwareentwicklung. Am Ende dieser Aktivität sollten die Teilnehmer Folgendes können: Diese Präsentation für Kunden halten Die Bedeutung von Software in den heute verfügbaren Produkten beschreiben und die Folgen von Softwarefehlern herausstellen Erklären, dass die Effizienz in der Softwareentwicklung gesteigert werden kann, indem der Geschäftsprozess der Softwarebereitstellung mittels der modellgesteuerten Entwicklung automatisiert wird Detailliert erläutern, wie die Zusammenarbeit und Produktivität in der Softwareentwicklung durch eine Plattform für die System- und Softwareentwicklung – Jazz – ermöglicht wird Erklären, wie schrittweise bessere Geschäftsergebnisse erreicht werden können, indem der Prozess der Softwarebereitstellung mittels eines Measured Capability Improvement Framework bewertet wird

43 Weitere Informationen finden Sie unter: IBM Rational-Software
Rational-Ankündigungen Rational Software Delivery Platform Änderungen und Lieferung beschleunigen Beständige Qualität liefern Unternehmensmodernisierung ermöglichen Websicherheit und Compliance sicherstellen Projekterfolg steigern Architektur managen Neue Anforderungen managen Kleine und mittlere Unternehmen Gezielte Lösungen Rational-Probedownloads developerWorks Rational Herausragende Innovation IBM Rational TV IBM Business Partner IBM Rational-Kundenreferenzen Abschlussfolie, die in allen externen Präsentationen eingefügt werden muss. Links zu weiteren Informationen: IBM Rational-Software: Rational-Ankündigungen: Rational Software Delivery Platform: Änderungen und Lieferung beschleunigen: Beständige Qualität liefern: Unternehmensmodernisierung ermöglichen: Sicherheit von Websites und Compliance sicherstellen: Projekterfolg steigern: Architektur managen: Neue Anforderungen managen: Kleine und mittlere Unternehmen: Gezielte Lösungen: Rational-Probedownloads: Herausragende Innovation: developerWorks Rational: IBM Rational TV: IBM Rational Business Partner: IBM Rational-Kundenreferenzen: © Copyright IBM Corporation Alle Rechte vorbehalten. Der Inhalt dieser Dokumentation dient nur zu Informationszwecken und wird auf der Grundlage des gegenwärtigen Zustands (auf „as-is“-Basis) ohne jegliche Gewährleistung zur Verfügung gestellt. IBM übernimmt keine Haftung für irgendwelche Schäden, die aus der Nutzung dieser oder einer anderen Dokumentation entstehen oder damit in Zusammenhang stehen. Aus dem Inhalt dieser Dokumentation können kein Gewährleistungsanspruch oder andere Anforderungen an IBM (oder seine Lieferanten oder Lizenzgeber) abgeleitet werden, noch kann der Inhalt eine Änderung der Bedingungen der geltenden Lizenzvereinbarung, der die Nutzung der IBM Software unterliegt, bewirken. Vertragsbedingungen und Preise erhalten Sie bei den IBM Geschäftsstellen und/oder den IBM Business Partnern. Die Produktinformationen geben den derzeitigen Stand wieder. Gegenstand und Umfang der Leistungen bestimmen sich ausschließlich nach den jeweiligen Verträgen. IBM, das IBM Logo, Rational, das Rational-Logo und weitere IBM Produkte und Services sind Marken der IBM Corporation in den USA und/oder anderen Ländern. Weitere Unternehmens-, Produkt- oder Servicenamen können Marken anderer Hersteller sein.

44 Ergänzende Folien

45 Beweglichkeit und Zuverlässigkeit als Alleinstellungsmerkmale
Neue Innovation: Das Jazz-Projekt Menschen arbeiten zusammen, um erstklassige Software und Systeme bereitzustellen Jazz ist ein Projekt und eine Plattform. Es verändert die Art und Weise, wie Menschen zusammenarbeiten, um größeren Nutzen und höhere Leistung aus ihren Software- und Systeminvestitionen zu erzielen. Eine skalierbare, erweiterbare Plattform für die Zusammenarbeit im Team Eine Community unter Jazz.net, bei der Sie sehen können, wie Produkte auf der Basis von Jazz erstellt werden Unsere Vision von der Zukunft der Software- und Systembereitstellung, die global verteilte, bewegliche und dynamische Teams unterstützt Eine Evolution unseres Portfolios, das im Lauf der Zeit weiterentwickelt wird, um die Jazz-Technologie zu nutzen

46 Beispiele für Varianzen
Hinweis: Passen Sie diese Folie an den Unternehmens- und Projektkontext an. Einigen Sie sich auf Kennzahlen für den geschäftlichen Nutzen: Kosten, Gewinn, Rendite, Marktanteil etc. Bestimmen Sie die Art der Projektkombination. Wählen Sie geeignete betriebliche Kennzahlen aus. Wählen Sie Verfahren aus, um die Kennzahlen für die Projektkombination zu erreichen. Legen Sie Kennzahlen und Feedbackkanäle für eine umfassende Steuerung fest. Beispiele für Varianzen Gemeinsame Vision Risikobasierter Lebenszyklus Evolutionäre Architektur Agile Planung Testgesteuerte Entwicklung Anforderungsmanagement Änderungsmanagement Iterative Entwicklung Verfahren Demonstrationen für Stakeholder Betaversionen Fehlerdichte, Beseitigungsrate Selbstprüfung für Verfahren Steuerungen Stabilität der Architektur Produktivität des Unternehmens Markteinführung neuer Features Teamproduktivität Kosten pro Änderungsanforderung Produktivität Einzelner Effizienz (Betriebs-kennzahlen) Rentabilität eines einzigartigen Systems Ausbau des Marktanteils Betriebskosten Nutzen (Geschäfts-kennzahlen) Hoch Mittel Gering

47 Softwareentwicklung wird durch Softwarebereitstellung abgelöst
Ökonomische Governance, auf Risiko-Nutzen-Profile abgestimmt Am geschäftlichen Nutzen und Ergebnis orientiert Verteilte, webbasierte Zusammenarbeit Einheitliche Plattform mit integrierten Prozessen/Tools Sequenz aus freigegebenen Funktionen mit immer höherem Nutzen Keine klare Grenze zwischen Entwicklung und Wartung Kontinuierliche Weiterentwicklung von Systemen Softwarebereitstellung Klar abgegrenzte Entwicklungsphase Klare Übergabe an Wartung Sequenz aus Anforderungen, Entwurf, Codierung, Test Phasen- und rollenspezifische Tools Teams am selben Standort Standard-Engineering-Governance An Entwicklern orientiert

48 Wichtige Verschiebungen in der Verbesserung der Softwareökonomie
Konventionelle Governance Agile Governance Aktivitätenbasiertes Management Ergebnisbasiertes Management Ausgereifte Prozesse, PMI/PMBOK Mehr Kunst als Technik Detaillierte Planung, anschließende Verfolgung Planung/Lenkung/Planung/Lenkung… von Varianzen Konkurrenzdenken Ehrliche teambasierte Kommunikation Papieraustausch, Spekulationen Progressionen/Digressionen, Fakten Anforderungen haben Priorität Architektur (Risikominderung) hat Priorität Unterstellt Sicherheit bei gewünschtem Produkt Gibt Unsicherheiten zu Vermeidung von Änderungen Management von Änderungen Frühe Scheingenauigkeit Sich entwickelnde Artefakte „Mehr Details = höhere Qualität“ Umfang (Problemspezifikationen) Entwurf (Lösungsspezifikationen) Einschränkungen (Planungsspezifikationen) Prozesseinsatz in zu großem oder Bestimmung des richtigen zu kleinem Umfang Prozessumfangs Prozess ist am wichtigsten und wird blind Gewünschte Ergebnisse steuern befolgt Prozess Management von Varianzen

49 Vier Erfolgsmuster, um Agilität im richtigen Maß zu erreichen
Umfangsmanagement  Assetbasierte Entwicklung Lösungen entstehen aus Anforderungen, und Anforderungen entstehen aus verfügbaren Assets Statt einer Methode, bei der alle Anforderungen im Voraus erfasst werden Prozessmanagement  Bestimmung des richtigen ProzessumfangsProzess und Instrumentierung entwickeln sich von einfach zu komplex Statt einer Methode, bei der der Prozess während des gesamten Lebenszyklus des Projekts einfach oder komplex sein sollte, abhängig von der Art des Projekts Fortschrittsmanagement  Ehrliche Einschätzungen Erfolgreiche Projekte weisen eine Sequenz von Progressionen und Digressionen auf Statt einer Methode, bei der der angestrebte Nutzen zu 100 % mit einem monoton zunehmenden Fortschritt auf der Basis eines statischen Plans erreicht werden soll Qualitätsmanagement  Zunehmend bessere, nachweisbare Ergebnisse Test muss eine erstklassige, den gesamten Lebenszyklus umfassende Aktivität sein Statt einer untergeordneten Aktivität, die in einer späteren Phase im Lebenszyklus durchgeführt wird

50 Rational DOORS Das Spitzenprodukt für das Anforderungsmanagement für Systeme
Durchgängige Transparenz von Anforderungen Umfassende Unterstützung für die Erfassung, Strukturierung, das Management und die Analyse von Anforderungen und deren Rückverfolgbarkeit Anforderungen bleiben auf allen Dekompositionsebenen gleich Skalierbarkeit für große Projekte Rückverfolgung von Anforderungen zu Entwicklungsaufgaben und Entwurfsmodellen Pflege eines vollständigen Prüfprotokoll „DOORS® deckt die Anforderungen auf unserer Liste am besten ab. Es ist in allen vier Bereichen unserer Bewertung herausragend. DOORS ist stark in der Erfassung, Verknüpfung und Analyse der Anforderungen während ihres gesamten Lebenszyklus.“ Yphise Agile Requirements-Driven Development, Yphise, März 2008 Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

51 Rational Focal Point & Rational Requirements Composer Produktmanagement und Definition von Anforderungen Rational Focal Point™ Erstklassige Lösung für das Produkt- und Portfoliomanagement Automatisierte Erfassung von Ideen Auswahl von Features auf der Basis des geschäftlichen Nutzens Marktanalyse, um die richtige Ausrichtung von Features sicherzustellen Rational Requirements Composer Definition von Anforderungen und Zusammenarbeit auf der Basis von Jazz Visuelle Erfassung von Anforderungen Verwendung von Prozessskizzen, Storyboards, Skizzen von Benutzerschnittstellen und Rich Text Senkung des Risikos durch frühzeitige Vereinbarung der Anforderungen Schnelle Iterationen mit allen Beteiligten Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

52 Rational Synergy & Rational Change Konfigurations- und Änderungsmanagement
Aufgabenbasiertes Konfigurationsmanagement Workflow- und Framework-Unterstützung von einfachen bis komplexen Geschäftsanforderungen Unterstützung für Qualitätsinitiativen und Entwicklungsmethodiken Unterstützung für die komponentenbasierte Entwicklung Erweitertes Release- und Variantenmanagement Rational Change™ Lösung für das unternehmensweite Änderungsmanagement Webbasierte Lösung für das Management und die Kommunikation von Änderungen im gesamten Unternehmen Management der häufig unterschiedlichen Prozesse für global verteilte Teams Integrierte Unterstützung für das Lebenszyklus- und aufgabenbasierte Management Umfangreiche integrierte Berichtsfunktionen Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

53 Rational ClearCase & Rational ClearQuest Konfigurations- und Änderungsmanagement
Umfassendes Softwarekonfigurationsmanagement Transparenter Echtzeitzugriff auf Dateien und Verzeichnisse, praktisch überall im Unternehmen Unterstützung für Teams jeder Größe Ausgereifte Tools für die Verzweigung und grafische Zusammenführung für den gleichzeitigen Zugriff auf Dateien Rational ClearQuest® Umfassendes Softwareänderungsmanagement Erstellung von Echtzeitberichten und Prozessdurchsetzung Automatisierte Workflows und -Benachrichtigungen Testmanagement Zugriffskontrolle, elektronische Signaturen, wiederholt anwendbare Prozesse und Prüfprotokolle Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

54 Rational Team Concert & Rational Build Forge Zusammenarbeit und Build-Management
Softwareinnovation durch Zusammenarbeit Teamarbeit in Echtzeit und im Kontext Integriertes Management von Quellcode, Arbeitselementen und Builds Automatische und unaufdringliche Datenerfassung Schnellerer Teamworkflow durch dynamische Prozesse Rational Build Forge® Automatisierte und schnellere Erstellungs- und Freigabeprozesse Automatisierung von Erstellungsprozessen und Konfigurationen Zuverlässige Dokumentation von Release-Inhalten Mehr Transparenz und Erkennung von Engpässen durch unternehmensweite Berichterstellung Schnellstart durch Verbindung mit vorhandenen Entwicklungstechnologien Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

55 Rational Quality Manager Zentraler Knotenpunkt für geschäftsorientierte Softwarequalität
Risikominderung durch Zusammenarbeit Koordination aller Beteiligten und Teams Automatisierter Prozessworkflow Vor- und nachgelagertes Qualitätsmanagement Effizienterer Betrieb durch Automatisierung Effizienz bei der Entwicklung und Ressourcennutzung Optimierung des Testumfangs Abdeckung von Umgebung und Lebenszyklus Fundierte Entscheidungen durch einfache Berichterstellung Laufende Prozessverbesserung Proaktives Risikomanagement Bessere Vorhersagbarkeit Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

56 Rational Test RealTime
Rational Rhapsody TestConductor (Add-on) & Rational Test Realtime Prüfung und Verifizierung Rational Rhapsody® TestConductor (Add-on) Szenariobasierte Testfallerstellung und -prüfung Test des Entwurfs im Vergleich zu den Anforderungen Profilerstellung von Speicher, Leistung und Abdeckung Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Code Test Analyse Lösung Rational Test RealTime Proaktive Behebung von Codefehlern Automatisiert Tests, die Analyse und Fehlerbehebung in einer frühen Phase des Entwicklungszyklus Bietet eine aufwandsarme Technologie, die zielunabhängige Tests ermöglicht Weitet die modellgesteuerte Entwicklung auf Funktionen für die Laufzeitanalyse aus Rational Test RealTime bietet Entwicklern ein umfassendes Angebot an Funktionen für Funktions- und Strukturtests, die auf jede Entwicklungsumgebung angewandt und auf jedem Zielsystem gehostet werden können. Genau das sind die Voraussetzungen dafür, dass eine Testlösung die hohe Qualität erreicht, die Sie brauchen, und zwar genau dann, wenn Sie sie brauchen. Was steckt hinter diesen Features? Was wollten wir erreichen, als wir sie zusammengestellt haben? Wir wollten die Qualitätsentwicklung beschleunigen, ohne den Entwicklern komplizierte Tools aufzubürden, die nicht zu ihrer täglichen Arbeitsweise passen. Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

57 Rational Rhapsody Herausragende modellgesteuerte Entwicklung für Systeme und Software
Entwurf und Entwicklung mittels Branchenstandards und bereichsspezifischen Erweiterungen Prüfung und Verifizierung von Entwürfen mit modellbasierten Simulationen und Tests während des gesamten Produktlebenszyklus Entwicklung vollständiger C-, C++-, Java- und Ada-Lösungen für eingebettete Einheiten mit vollständiger Synchronisation zwischen Architekturmodell und Code Beispiele für zu liefernde Produktmaterialien Systemspezifikationen Optimierter Anwendungs- und Einheitencode Berichte zur Rückverfolgbarkeit von Anforderungen Spezifikations-, Entwurfs- und Testdokumentation Tests, Testfälle und Szenarien Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

58 Rational Harmony Integration von System- und Softwareentwicklung
Bibliothek mit wiederverwendbaren bewährten Verfahren Standardmetamodell (OMG SPEM 2.0) Standardtool (EPF Composer/RMC) Hybrid V – Harmony/SE und Harmony/ESW Spezifiziert eine qualitativ hochwertige, verlustfreie modell-basierte Umstellung vom Systems-Engineering zur Softwareentwicklung Standardkonforme Sprachen UML und SysML für eine nahtlose Integration von Systems-Engineering und Softwareentwicklung Die Rational Harmony-Familie umfasst bereichsspezifische Prozesse und lässt sich in drei Kategorien unterteilen: Harmony/ITSW für die IT-Softwareentwicklung Harmony/ITSW definiert Rollen, Aufgaben, Arbeitsergebnisse, Anleitungen und integrierte Toolunterstützung für die Entwicklung geschäftskritischer Softwareanwendungen im Team. Harmony/ITSW ist ein anforderungsgesteuerter Prozess, der die Verbesserung des Lebenszyklus der Softwareentwicklung (SDLC) ermöglicht, indem er Grundsätze und Verfahren bereitstellt, die auf unserer langjährigen Arbeit an konkreten Projekten mit Kunden basieren. Wenn Sie Lösungen wie Rational DOORS für das Anforderungsmanagement und Rational Change und Synergy für das Änderungs- und Konfigurationsmanagement einsetzen, können Sie den Lebenszyklus der Entwicklung durch die enge Verknüpfung dieser Tools und Prozesse verbessern. Harmony/ESW für die Entwicklung eingebetteter Software Rational Harmony/ESW ist ein Prozess für die iterative, modellgesteuerte Entwicklung auf der Basis der UML 2.1 (Unified Modeling Language), der speziell für die Entwicklung eingebetteter und echtzeitorientierter Anwendungen konzipiert ist. Harmony/ESW löst viele der Prozess- und Managementprobleme im Zusammenhang mit der objektorientierten und objektbasierten Systementwicklung. Das Produkt verbessert außerdem die Qualität und senkt gleichzeitig die Kosten, indem es ausführbare visuelle Modelle iterativ erstellt und testet, Fehler in einer frühen Phase des Entwicklungslebenszyklus erkennt und die Synchronisation mit dem Code aufrechterhält. Harmony/SE für die Systementwicklung Harmony/SE ist ein modellbasierter Entwicklungsprozess, der auf den Sprachen UML 2.1 und SysML basiert. Diese standardkonformen Sprachen ermöglichen die nahtlose Integration von Systems-Engineering und Softwareentwicklung durch Harmony/SE. Harmony/SE umfasst den gesamten Projektablauf mit effizienten Entwurfsiterationen, um die Systemspezifikation, die Anforderungsanalyse, den Entwurf der Systemarchitektur sowie die Definition und Prüfung von Schnittstellen zu verbessern. Hinweis für den Referenten: Optionale Produktfolie, die bei Bedarf verwendet werden kann

59 Jazz Integration Architecture
ENTWICKLUNGSBEREICH Prozesse für den System- und Softwarelebenszyklus Analyse und Entwurf Konfigurations- und Änderungs- management Erstellung Qualitäts- management Freigabe- management Anforderungs- definition und -management Produkt-, Projekt- und Portfolio- management Unternehmens- architektur und Frameworks Messung und Berichtswesen Produktion/ Betrieb GESCHÄFTSBEREICH Suche und Abfrage Zusammenarbeit im Kontext Teambewusstsein Ereignis- benachrichtigung Sicherheit Dashboards Jazz Integration Architecture Hinweis für den Referenten: Diese optionale Folie und die folgenden 2 Folien können verwendet werden, um Jazz und die künftige Richtung der Produktarchitektur vorzustellen.

60 Softwarekostenmodelle
Zeigt, dass Kostenmodelle ungenau sind – große Abweichung – die violetten Linien zeigen die akzeptable Abweichung Korrekte Schätzungen liegen zwischen den Linien. Aus George Stark, Paul Oman, „A comparison of parametric Software Estimation Models using real project data“, in Druck

61 Verbesserung der Softwareökonomie
Produktivität vs. Teamgröße Empirische Modelle zur Schätzung der Softwarekosten für: Unternehmensmodernisierung, Softwarewartung Neuentwicklungen, neue Releases, frühe Prototypen Standardsoftware, Systems-Engineering Zeit oder Kosten für Erstellung = (Komplexität) (Prozess) * (Team) / (Tools) Komplexität Menge an manuell erstellten Komponenten KSLOC, FPs, UCs Qualität/Leistung Umfang Methoden Prozessreife Agilität Priorität Kompetenz/Erfahrung Zusammenarbeit Motivation Automatisierung Prozessaktivierung Prozess Team Tools

62 Qualitäts- management Änderungs- und Konfigurations-management
Die Vorteile einer einheitlichen Plattform für die System- und Softwarebereitstellung Zuordnung Analyst Änderungen; Benachrichtigung Anforderung ist mit Arbeitselement verbunden Tester findet Fehler, erstellt Arbeitselement Tester REST-API REST-API Fehler werden gemäß Anforderungen geschlossen Anforderungs- management Qualitäts- management Fehlerstatus REST-API Änderungs- und Konfigurations-management Software in höherer Qualität Sorgfältiger getestete Anforderungen, selbst wenn diese sich ändern Lose Verknüpfung zwischen Anforderungen und Testfällen reduziert die Abhängigkeit von der Kommunikation zwischen Benutzern, um die Verbindung aufrechtzuerhalten Software, die Anforderungen besser gerecht wird Größere Transparenz der Anforderungsdetails für Entwickler und Architekten Verbindung zwischen Anforderungen und Arbeitselementen stellt Geschäftsanalysten, Entwicklern und Architekten sofort mehr Informationen bereit Kürzere Bereitstellungszeiten Datenzuordnung zwischen Test und Entwicklung Zuordnung zwischen Testfällen und Fehlern erlaubt die bessere, rechtzeitige Ermittlung, Lösung und Überprüfung von Fehlern Architekt Entwickler Koordination von Analysten, Entwicklern und Testern Zusammenarbeit im Kontext und Statusverfolgung Ausrichtung von Teams an Projektplänen Welche Anforderungen sind im Entwicklungsplan enthalten? Verfolgung von Builds und Folgen von Fehlern Welcher Build ist bereit für Tests? Welche Fehler verhindern eine Fortsetzung der Tests? Statusverfolgung mit C/ALM-Dashboard- Mashups Transparenz über Teams und Artefakte hinweg

63 Beispiel eines Softwareentwicklungs- prozesses
Phasen zur Risikominderung Beginn – Minderung des Risikos von Missverständnissen Ausarbeitung – Sicherstellung, dass die Architektur gut genug als Basis für die Lösung ist Erstellung – Konkretisierung der Lösung Umstellung – vom Kunden nutzbare und genutzte Lösung Beispiel eines Softwareentwicklungs- prozesses Phasen Kernbereiche Beginn Ausarbeitung Erstellung Umstellung Geschäftsmodellierung Anforderungen Analyse & Entwurf Implementierung Test & Auswertung Inbetriebnahme Unterstützende Bereiche Diese Folie befasst sich mit RUP SE. Beachten Sie, dass sich diese Folie nicht von der RUP-Standardfolie unterscheidet. Sie dient zwei Zwecken in der Präsentation: Einigen Zielgruppen liefert sie eine Beschreibung des RUP. Anderen zeigt sie, dass wir zum RUP stehen, indem wir ihn speziell für das Systems-Engineering anpassen. Weisen Sie besonders darauf hin, dass die Folie unverändert ist. Es gibt keinen eigenen Bereich „Systems-Engineering“, sondern die Standardbereiche werden erweitert, um auch die umfassendere Systemproblematik abzudecken. Im Folgenden ist die Standardbeschreibung des RUP aufgeführt, die Sie verwenden sollten, wenn Ihre Zielgruppe den RUP nicht kennt: Beachten Sie, dass die für jede Phase ausgewählten Namen nicht den klassischen Entwicklungsaktivitäten, wie z. B. Analyse und Entwurf, entsprechen. Die Namen wurden bewusst ausgewählt, um zu betonen, dass diese Aktivitäten in jeder Phase und Iteration in unterschiedlichen Ausprägungen stattfinden. Die Abbildung auf dieser Folie verdeutlicht, wie sich der relative Schwerpunkt von Phase zu Phase verschiebt. Beachten Sie auch, dass der Beginn und das Ende der Aktivitäten nicht mit dem Beginn und Ende der Phasen übereinstimmen. Anforderungen werden so früh wie möglich im Lebenszyklus erfasst, zunächst in der Beginnphase und dann während der Ausarbeitung. Die Erfassung detaillierter Anforderungen kann in der Erstellungsphase fortgeführt werden. Der Großteil der Analyse- und Entwurfsarbeiten wird in der Ausarbeitungsphase durchgeführt. Die Implementierung beinhaltet Komponententests und findet hauptsächlich in der Ausarbeitungsphase (Architekturelemente) und Erstellungsphase statt. In der Umstellungsphase sehen Sie eine Markierung, die anzeigt, dass Änderungen am Produkt als Antwort auf die erste Kundenreaktion auf das Release (z. B. Fixes für die Betaversion) vorgenommen werden können. Testaktivitäten werden während aller Phasen durchgeführt. Der größte Testaufwand entfällt jedoch auf die späte Phase der Erstellung, in der ein Großteil des Systems für Tests zur Verfügung steht. Konfigurations- & Änderungs- mgmt. Projektmgmt. & Governance Infrastruktur Jede Iteration bringt ein nachweisbares Ergebnis hervor, das für Tests verwendet werden kann; weg von Meilensteinen als Dokumente (z. B. Integration von Compliance in die Architektur) Vorläufige Iteration(en) Iter. 1 Iter. 2 Iter. n Iter. n+1 Iter. n+2 Iter. m Iter. m+1 Iterationen

64 Die modellgesteuerte Systementwicklung nutzt einen rigorosen Prozess für die Dekomposition des Systems und die Ableitung der Subsystemanforderungen Verbesserung der Rückverfolgbarkeit und Wirkungsanalyse Die Wahrung der Rückverfolgbarkeit ist entscheidend, jedoch nicht machbar, wenn sie manuell ausgeführt wird – die Situation wird zu schnell zu komplex. Die modellgesteuerte System- entwicklung bietet einen rigorosen Prozess und Tools für die effektive Dekomposition des Systems, die Ableitung von Anforderungen, die Wahrung der Rückverfolgbarkeit und die Verbesserung der Wirkungsanalyse. Diese Aufgaben werden rekursiv auf allen Systemebenen erledigt – derselbe Prozess kann auf jeder Ebene verwendet werden. System Anwendungs-fall Anwendungs fall Anwendungs- fall Anwendungs-fall Anwendungs- fall Anwendungs fall Anwendungs- fall Anwendungs- fall Anwendungs- fall Subsystem 1 Subsystem 2 Subsystem 3 Aktion1 Aktion2 Aktion3 Anwendungs-fall Anwendungs-fall Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Subsystem 3 Anwendungs-fall ... Anwendungs-fall Subsystem 3 ...

65 Die geschäftlichen Vorteile einer einheitlichen Plattform für die Softwarebereitstellung
Umfangsmanagement  Assetbasierte Entwicklung Einsatz Ihres Tools, wann und wo immer nötig Anzeige der Zuständigkeiten – optimieren Sie Ihre Softwarelieferkette Prozessmanagement  Bestimmung des richtigen Prozessumfangs Durchsetzung einfacher bis komplexer Prozesse im Projektlebenszyklus Wasserfall bis agil – wählen Sie die richtige Methode für das Projekt Fortschrittsmanagement  Ehrliche Einschätzungen Einblick in Echtzeit in den Fortschritt verteilter Teams Produktübergreifende Geschwindigkeits- und Fortschrittsprognosen Qualitätsmanagement  Zunehmend bessere, nachweisbare Ergebnisse Zurückverfolgbare Verbindungen zwischen Entwicklung und Qualität Mehrstufige Dashboards – aus derselben Datenquelle Software in höherer Qualität Sorgfältiger getestete Anforderungen, selbst wenn diese sich ändern Lose Verknüpfung zwischen Anforderungen und Testfällen reduziert die Abhängigkeit von der Kommunikation zwischen Benutzern, um die Verbindung aufrechtzuerhalten Software, die Anforderungen besser gerecht wird Größere Transparenz der Anforderungsdetails für Entwickler und Architekten Verbindung zwischen Anforderungen und Arbeitselementen stellt Geschäftsanalysten, Entwicklern und Architekten sofort mehr Informationen bereit Kürzere Bereitstellungszeiten Datenzuordnung zwischen Test und Entwicklung Zuordnung zwischen Testfällen und Fehlern erlaubt die bessere, rechtzeitige Ermittlung, Lösung und Überprüfung von Fehlern Wichtigste Aspekte: Das Ergebnis wird anders sein, da wir standardisierte Echtzeitdaten erhalten. Diese werden Teams ermutigen, einen Prozess zu verwenden, mit dessen Hilfe sie die Nebeneffekte und Verbesserungen verstehen können, die sie mit dieser Plattform erreichen können. Die Daten sind konkret, echtzeitorientiert und ehrlicher – und nur mit einer Plattform wie dieser möglich. Sie können das MCIF oder Ihre Methode für das Management Ihrer Prozesse verwenden, um alle Einzelteile zu verknüpfen und kontinuierliche, schrittweise Verbesserungen zu erreichen. Wertschöpfungskette

66 700 Business Partner haben zu IBM Rational-Software „gejazzt“
Island: 2 Unternehmen EMEA: 174 Unternehmen Nordamerika: 231 Unternehmen Slowakei: 93 Unternehmen Philippinen: 4 Südamerika: 76 Unternehmen Afrika: 4 Unternehmen Asien/Pazifik: 93 Unternehmen Schulung, Unterstützung und Zertifizierung von Business Partnern, die Jazz-Angebote vertreiben und Service und Support für Kunden dafür bereitstellen.

67 Erzielte Ergebnisse bestätigen und nächstes Projekt starten
Measured Capability Improvement Framework (MCIF): Ein systematischer Ansatz für erstklassige Software Richtige Lösung für die Implementierung auswählen Phase 1 Angestrebten geschäftlichen Nutzen sondieren und festlegen Geschäftsziele, Zusammenhänge und Entwicklungsansätze Phase 2 Lösungskomponenten bestimmen Roadmap für schrittweise Verbesserungen Finanzanalyse Lösung implementieren und Ergebnisse messen Phase 3 Einführung der Lösung mit dem bevorzugten Rational-Ansatz beschleunigen und überwachen Verfahren und Tools anwenden Korrektes Nutzungsmodell anwenden, um ROI zu maximieren Messen und anpassen Phase 4 Geschäftsergebnisse prüfen und mitteilen Geschäftsnutzen und -ergebnisse kompilieren Formelle Prüfung mit den Beteiligten durchführen Erzielte Ergebnisse bestätigen und nächstes Projekt starten


Herunterladen ppt "Produktentwicklung als Wettbewerbsvorteil: IBM Softwareentwicklung für Systeme Differenzieren Sie Ihre Produkte mit innovativer Software, die im Team."

Ähnliche Präsentationen


Google-Anzeigen