Software Factories Vortrag im Rahmen des Seminars Entwicklung verteilter eingebetteter Systeme Timo Baum 27.2.2006.

Slides:



Advertisements
Ähnliche Präsentationen
Migration von Feldbussen zu PROFINET
Advertisements

Persistente Domänenmodelle mit JPA 2.0 und Bean Validation
1 Gerardo Navarro Suarez BPM Suite. 2 Quelle: camunda Services GmbH Das Warum hinter Activiti Problem bestehender BPMS: Starker Fokus auf das Business.
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Gedanken zur Redundanz - ein Einführungsvortrag -
Daten fließen lassen XML in Microsoft Office 2003 Lorenz Goebel Frank Fischer
STRATEGIE.
Web Matrix Project Kurzüberblick Dirk Primbs Technologieberater Developer Platform Strategy Group Microsoft Deutschland GmbH.
<<Presentation Title>>
Ruby on Rails im Überblick
Enterprise Resource Planning
Web Services und Workflow-Steuerung
3rd Wednesday, 18. Januar Wettbewerb Breitband Ruhr – Mit neuen Technologien Zukunft sichern 29. 3rd Wednesday, 18. Januar 2006 Ulrike Langer, Projekt.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Agile Software Entwicklung mit dem RUP Agile Softwareentwicklung Best Practice bei.
Cassey - Common Answer Set Evaluation sYstem Jean Gressmann Benjamin Kaufmann Robert Lenk.
Microsofts XML-Strategie aus Sicht des Endanwenders Klaus Rohe Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Produktpolitik von SAP im Zeitalter offener Schnittstellen
Datenbanksystementwicklung – Praktikum & Vorlesung – WS 2004/2005
eXtreme Programming (XP)
Introducing the .NET Framework
Taschenrechner im Mathematikunterricht Stephan Damp
Grundlagen für die Teilnahme an G8GTS Die Pflichtstunden in G8GTS
Vortrag zur Verteidigung der Diplomarbeit von Oliver Schäfer
Barrierefreiheit ( Accessibility ).
Die Bank von morgen - eine neue Welt für IT und Kunden? 23. Oktober 2001.
MSDN Webcast: VB.NET für Einsteiger und Umsteiger, Teil 10 Die erste, eigene Klassenbibliothek (Level 100) Presenter: Daniel Walzenbach Technologieberater.
UML Begleitdokumentation des Projekts
Tino Reindanz - FSU Jena Seminar Aktive Datenbanken – SS 2007 Folie 1 Seminar Aktive Datenbanken Rule Development Rule Development for Active Database.
INSTITUT FÜR DATENTECHNIK UND KOMMUNIKATIONS- NETZE 1 Harald Schrom ViEWcon08.
Forschung & Technologie Seminar: Entwicklung verteilter eingebetteter Systeme 1. Meeting: , 14:00-15:30, Raum tbd, Themenvergabe 2. Meeting 1.11.,
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering WS 2006 / 2007Folie 1 Agile Vorgehensweisen Hintergrund –in den letzten Jahren hat.
Roger Zacharias Diplom-Informatiker, Sun Certified Enterprise Architect Wincor Nixdorf Produktlinien auf Basis von SOA und J2EE.
Morbach, den Morbach, den Gemeinsam statt einsam - Neue Wohnformen im Dorf Barrierefreie Wohnungen Angepasste Wohnungen Betreutes.
BMU – KI III 1 Stand: März 2007 Entwicklung erneuerbarer Energien in Deutschland im Jahr Erneuerbare Energien in Deutschland im Jahr 2006.
Software Architektur III
Silverlight Eine Einführung. Agenda 1.Was ist Silverlight? 2.Die Silverlight Philosophie 3.Vorstellung des Szenarios 4.Einführendes Beispiel 5.Konzepte.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Integration heterogener verteilter Systeme mit WS-BPEL – ein Praxisbeispiel Dr. Wolf-Dieter Heinrichs.
Rüdiger Meyer Senior Manager Industry Strategy
Inhalt (2) Atmung Kreislauf (AED) Erste Hilfe 2006.
Durchstarten beim Technologieführer
Andreas Pichler IT-Consulting
Service Orientierte Architektur
Architekturen und Techniken für computergestützte Engineering Workbenches.
Cooperation unlimited © Zühlke Juni 2009 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
Windows Presentation Foundation WS 2013/14 Prof. Dr. Herrad Schmidt
Universität Zürich Informatikdienste GoKoordinatorenmeeting 27. April UZH Global Storage Projekt.
Definitionen der SWT (1)
Seminar: Entwicklung verteilter eingebetteter Systeme WS05/06 Betreuer: Info:
Wasserfallmodell und Einzelbegriffe
Enterprise Achitect (Sparx Systems) Marius Rudolf
Ulrich Kalina, Deutsche Blindenstudienanstalt Marburg
ppt, ©Robert Wolff, Presenting PowerPoint.
Untersuchungen zur Erstellung eines
Forschungszentrum Karlsruhe in der Helmholtz-Gemeinschaft MIPAS-STR IMK-Seminar 24 März MIPAS aircraft : current activities (update ) POF:Topic.
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Seite 1 © 2007 Dr. Schwaiger Roland VP SW-Technologien WS 2007/2008 VP Softwaretechnologien WS2007/2008 SAP GUI Pattern und Componentry Dr.
Vortrag - Diplomarbeiten (HS I)
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
XML Die “E-Lance Economy” oder die “Digital Economy” stellt neue Anforderungen an Funktionalität im Netz. XML wurde vom World Wide Web Consortium (W3C)
Christian Binder Senior Platform Strategy Manager Microsoft Deutschland GmbH.
Software Product Line Adoption
DevOps in der Praxis Umfrage Q4/2015
SE 2010, Paderborn Produktlinien-Engineering im SOA-Kontext.
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
Seminar Softwareproduktlinien Domänenspezifische Sprachen Sascha Draffehn von.
Investitionen sichern - wachse mit Forms in die neue Welt
Gewachsene Architektur Das kann nicht funktionieren!
 Präsentation transkript:

Software Factories Vortrag im Rahmen des Seminars Entwicklung verteilter eingebetteter Systeme Timo Baum

Software Factories Tendenzen in der Softwareindustrie Zunehmende Komplexität in der Softwareentwicklung Verlagerung der Entwicklung von der Unterstützung der Produktivität von Systemen und von Entwicklern (um deren Effektivität zu erhöhen) zu Anwendungen, die Geschäftsprozesse automatisieren Anforderungen ändern sich immer schneller

Software Factories Probleme der Software- Industrie Die Erwartungen zu erfüllen, bereitet Schwierigkeiten Mangel an qualifizierten Entwicklern führt zu – Eskalierenden Kosten – Längeren Produkteinführungszeiten – Verbreiteten Problemen mit der Verlässlichkeit, Sicherheit, Leistung der Anwendungen Als Reaktion auf neue Innovationen fordern Kunden immer mehr Verfügbare Methoden und Praktiken führen nicht weiter

Software Factories Probleme mit hoher Dringlichkeit Aufspüren und Schließen von Sicherheitslücken Komponenten, die in der Testumgebung funktionieren, in der Produktivumgebung lauffähig machen Die Unfähigkeit, trotz der durchdringenden Verfügbarkeit objektorientierter Methoden Wiederverwendung in einem kommerziell bedeutsamen Maße zu verwirklichen

Software Factories Probleme mit hoher Dringlichkeit (2) Die Gratwanderung, die Beweglichkeit eines einzelnen Teams zu bewahren und dabei die die Fähigkeit zur Zusammenarbeit mehrerer Teams zu gewährleisten => diese Symptome deuten darauf hin, dass in der Art, wie wir Software entwickeln, fundamentale Mängel vorliegen

Software Factories Die Hauptursachen Viele Aspekte sind bedingt durch die beiden Notwendigkeiten, mit Komplexität und rasch auftretenden Veränderungen umzugehen: Monolithische Bauweise – Not Invented Here-Syndrom Programmiersprachen – Für viele Geschäftsprozesse zu umfangreich Einmalige Entwicklungen – Ohne Wiederverwendung Unausgereifte Entwicklungsprozesse

Software Factories Software Factories Erste offizielle Ankündigung auf der OOPSLA 2004 (19th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications) Vision: Industrialisierung der Softwareentwicklung Einen Marktplatz für wiederverwendbare Komponenten und Services schaffen Unterstützt durch Visual Studio 2005 Team System

Software Factories Voraussetzungen Systematische Wiederverwendung – Familien von Softwareprodukten mit gemeinsamen Features und Variationen – Kontext der Wiederverwendung muss spezifiziert werden

Software Factories Voraussetzungen (2) Entwicklung durch Zusammenbau – Wie im Automobilbereich – Voraussetzungen: Plattformunabhängige Protokolle Selbstbeschreibung (WSDL) deferred encapsulation (Kapselung abhängig vom Kontext, in den die Komponente eingefügt wird) Architekturgetriebene Entwicklung Zusammenbau durch Instrumentation (z.B. Workflow von Web Services)

Software Factories Voraussetzungen (3) Modellgetriebene Entwicklung – Erhöhung des Abstraktionsniveaus für Entwickler – Automatisierung – z.B. Business Process Execution Language (BPEL) als Instrumentationssprache – Domain Specific Languages (DSL) mit grafischer oder textueller Notation – Modelltransformationen – Process Frameworks

Software Factories Economies of Scale Kostenersparnisse durch Massenproduktion – Das gleiche Problem auf die gleiche Art lösen und die Kosten für jede Lösung verringern

Software Factories Economies of Scope Kostenvorteile, die bei einer steigenden Produktvielfalt durch einen Verbundvorteil entstehen. für die einzelnen Produkte wird auf gemeinsame Ressourcen (z.B. Produktionsanlagen, Technologien) zurückgegriffen Gesamtkosten der Produktion mehrerer Produkte niedriger als die Summe der Produktionskosten der einzelnen Produkte bei getrennter Fertigung (=> SPL)

Software Factories Was sind Software Factories? A software factory is a software product line that configures extensible tools, processes, and content using a software factory template based on a software factory schema to automate the development and maintenance of variants of an archetypical product by adapting, assembling, and configuring framework- based components.

Software Factories Software Factory Schema

Software Factories Software Factory Schema Verschiedene Sichtpunkte (viewpoints), für die definiert ist, welche Sprachen für die Entwicklung von Komponenten verwendet wird Beziehungen zwischen den Sichtpunkten

Software Factories Software Factory Template Um ein Mitglied einer Produktfamilie zu bauen, muss das Software Factory Schema implementiert werden: – DSLs definieren – Patterns definieren – Frameworks definieren – Werkzeuge definieren Alles zusammen ergibt das Software Factory Template – Beinhaltet Code und Metadaten, die IDEs konfigurieren (wie Office Templates)

Software Factories Die Vision der Software Factories Entwicklung durch Zusammenbau – Anwendungsentwicklung als Anpassung und Erweiterung der Komponenten gemäß der Kundenwünsche – Den Großteil der Funktionalität aus fertigen oder von Vertragspartnern gelieferten Komponenten – Deutlich weniger Code schreiben müssen Software-Zulieferketten – Software Factories bei Kunden installieren (Outsourced Product Line Development) – Outsource Product Development

Software Factories Die Vision der Software Factories (2) individualisierte Massenfertigung von Software Organisatorische Implikationen – Entwickler nehmen spezialisiertere Rollen ein, Prozesse werden standardisiert, Lizenzierung für Entwickler stärker notwendig (wie in anderen Industriezweigen bereits üblich)

Software Factories Weiterführende Informationen Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools by Jack Greenfield, Keith Short et al., John Wiley & Sons © 2004 (666 pages) Generative Programming - Methods, Tools, and Applications by Krzysztof Czarnecki and Ulrich W. Eisenecker Addison-Wesley, June op/sf/default.aspx