ADF Software Factory - Software aus der Werkstatt

1,401 views
1,027 views

Published on

Vortrag von Ulrich Gerkmann-Bartels (enpit) auf der DOAG Konferenz 2012

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,401
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

ADF Software Factory - Software aus der Werkstatt

  1. 1. ADF SOFTWARE FACTORY SOFTWARE AUS DER WERKSTATT Definition Elemente der Fertigungsstraße Ausblick Ulrich Gerkmann-Bartels CEO & Consultant Oracle Technologies DOAG 2012
  2. 2. Ulrich Gerkmann-Bartels ÜBER MICH CEO & Consultant Oracle Technologies Beratung, Training Oracle Technologie ADF Certified Implementation Specialist Community DOAG, ADF EMG, ADF German Community, Twitter @Gerkmann-Bartels Blog Technical http://maybe-interesting.blogspot.com Sonstiges http://www.enpit.de/blog 2
  3. 3. ENTERPRISE PRAGMATIC IT Consulting Oracle Fusion Middleware Training Oracle WebCenter Enable productive IT by Oracle Technologies Development Oracle ADF Oracle WebLogic
  4. 4. SOFTWARE AUS DER WERKSTATT ‣ Industrialisierung der Softwareentwicklung ‣ Methodik und Werkzeugauswahl definieren den Fertigungsweg ‣ Komponenten basierte Wiederverwendung ‣ Entwicklung als ein „Montage“ - Prozess Ulrich Gerkmann-Bartels 4
  5. 5. KOMPONENTEN
  6. 6. MONTAGE
  7. 7. AGENDA Definition Elemente einer Fertigungsstraße Ausblick Ulrich Gerkmann-Bartels 7
  8. 8. VIEWPOINT: FERTIGUNG ‣ Software Factories, J.Greenfield u.a. ‣ Oracle® Reference Architecture - Software Engineering IT Strategies from Oracle (ITSO) Ulrich Gerkmann-Bartels 8
  9. 9. SOFTWARE FACTORY „..a software product line that configures extensive 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 frameworkbased components.“[1] 1. Greenfield, Jack; Short, Keith; Cook, Steve; Kent, Stuart (2004). Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. ISBN 0-471-20284-3 Ulrich Gerkmann-Bartels 9
  10. 10. ORA - Asset-centric Engineering ORA - Oracle Reference Architecture Ulrich Gerkmann-Bartels 10
  11. 11. AGENDA Definition Elemente einer Fertigungsstrasse Ausblick Ulrich Gerkmann-Bartels 11
  12. 12. VORAUSSETZUNG ‣ Oracle ADF Architektur ‣ Modularisierung durch ADF Libraries ‣ Varianten durch Metadata Services und Customization Layer ‣ User Interaktion / Komponenten ist Use Case (prozessorientiert) geschnitten Ulrich Gerkmann-Bartels 12
  13. 13. FOKUS: ADF SOFTWARE FACTORY Ulrich Gerkmann-Bartels 13
  14. 14. DOCUMENTATION Documentation Patterns Architecture Reference Projects ‣ Design Guide, Style Guide and Development Guide ‣ Referenzlösungskatalog* (internal / external) ‣ Erfassen von neuen Aufgabenstellung mit Voting ‣ Suchfunktionalität *Vgl. ADF Code Corner F. Nimphius Ulrich Gerkmann-Bartels 14
  15. 15. BEISPIELE UC01 UC02 ModuleA Task Flow(s) ModuleB ModuleB Rahmenapplikation JSF / JSFF AM Module Use Case 15
  16. 16. TASK FLOW DESIGN USE CASES FORM << << in in cu cu de de USE CASE >> >> DIALOG 16
  17. 17. USE CASE TASK FLOW 17
  18. 18. DIALOG TASK FLOW FORM 18
  19. 19. Source SOURCE ‣ Custom Components Templates Code Snippets Custom Components Eingabe von Rufnummer mit Auswahllisten, Funktionsleisten ‣ Templates JSF Page Templates, Task Flow Templates ‣ ADF Skinning ‣ Code Snippet Library Ulrich Gerkmann-Bartels 19
  20. 20. BEISPIEL: TASK FLOW TEMPLATES <<copy>> << r efe edit-contact re nc e> > dialog-crud-template dialog-reference 20
  21. 21. SOURCE ORGANISATION ‣ Jedes Modul ist eine eigene JDeveloper - Application / Workspace ‣ Die Kernapplikation besitzt eine eigenen JDeveloper - Applikation / Workspace ‣ Ein Modul kann ein oder mehrere Libraries in Form von ADF Libraries (JAR) oder WLS Shared Libraries (WAR) erzeugen ‣ Die Kernapplikation erstellt ein Enterprise Archive (EAR). JDeveloper Workspace einer Kernapplikation 21
  22. 22. SOURCE ORGANISATION ‣ Je nach Ziel eines Workspace sind unterschiedliche JDeveloper Projekttypen beteiligt ‣ Kernapplikation ‣ Database, Model, View, UML, Lib, Env Module ‣ ‣ Database, Model, View Basisbibliotheken ‣ ‣ Model, View, Skin, ... JDeveloper Workspace von Basisbibliotheken 22
  23. 23. SOURCE ORGANISATION 23
  24. 24. Tools TOOLS Code Generator Working Tool Chain Werkzeug Design / UML Visual Version, JDeveloper, ArgoUML, Innovater, Case Tool X, Oracle Designer Java IDE JDeveloper, Eclipse mit OEPE Database JDeveloper, SQL Developer, Toad, PLSQL Deveeloper, SQL+ SCM Subversion, Git Build / Job Engine Hudson, Jenkins, TeamCity DPL Development Process Language :) Ant, Maven Ulrich Gerkmann-Bartels 24
  25. 25. Tools TOOLS Code Generator Working Tool Chain Werkzeug Template und Code Generator Velocity, Eclipse Modeling Track / Voting / Documentation Redmine, Jira, Bugzilla Die einzelnen Tools sind nicht ausreichend ! Ulrich Gerkmann-Bartels 25
  26. 26. WORKING TOOL CHAIN Tools Code Generator Working Tool Chain ‣ Organisatorische Struktur wird nur eingehalten, wenn Sie gegeben wird ‣ Übergang zwischen den Werkzeugen benötigt Schnittstellen (DPN: Ant!) ‣ Generierung von Templates oder Verzeichnisstrukturen benötigt Kontextinformationen Ulrich Gerkmann-Bartels 26
  27. 27. Tools WORKING TOOL CHAIN Code Generator Working Tool Chain ‣ Integriere in ein Tool nur wirklich wichtige Funktionalität ‣ Erster Ansatz DPN* ‣ Generiere Teile (Code, XML, Scripte, Env) aber keine eierlegende Wollmichsau designed mit Bildchen und Pfeilen ;) * Development Process Language Ulrich Gerkmann-Bartels 27
  28. 28. JDEV - EXTENSION Tools Code Generator Working Tool Chain ‣ Generieren von Module(Projekten) mit Verzeichnistruktur, Templates und Libraries. ‣ Generien von Manifest oder ADFLib.properties ‣ Verifizierte Code Snippet Library Extension :) ‣ Integration eigener Search Source in der JDeveloper - Suche Would be nice ! * Development Process Language Ulrich Gerkmann-Bartels 28
  29. 29. JDEV - EXTENSION Ulrich Gerkmann-Bartels 29 Tools Code Generator Working Tool Chain
  30. 30. ADF SOFTWARE FACTORY Ulrich Gerkmann-Bartels 30
  31. 31. ASSET REPOSITORY ‣ Supplier Artefakte Build Process EAR, WAR, WLS SHARED LIB, JAR, JDEV EXTENSION, DATABASE-BUNDLE ‣ Meta - Informationen Asset Repository Store ‣ Referenzen ‣ Input: Supplier oder Build Prozess Ulrich Gerkmann-Bartels 31
  32. 32. MEHR ALS SCM Ulrich Gerkmann-Bartels 32 Asset Repository Store
  33. 33. ASSET REPOSITORY ‣ Supplier Subversion + Custom Solution ‣ Asset Repository Maven + Custom Solution ‣ Oracle Enterprise Repository ?! Ulrich Gerkmann-Bartels Build Process Store 33
  34. 34. Assembly ASSEMBLY Asset Browser ‣ ‣ Dependency werden als eine JDev ADF Library Definition eingebunden ‣ Keine Berücksichtigung von anderen Dependency (Database, WS) ‣ Ulrich Gerkmann-Bartels Resource Palette ist nicht ausreichend Tool: Custom...Manuel ... No Solution 34
  35. 35. QA ‣ Akzeptanztest von Use Cases ‣ Vorausetzung: Asset Repository Store ‣ ‣ ‣ Ausführung von einzelnen Task Flows User Interaktion ist innerhalb eines Task Flows gekapselt. Tool: ADF EMG Task Flow Tester Ulrich Gerkmann-Bartels 35 QA Generic Runtime
  36. 36. QA - ADF EMG TASK FLOW TESTER JDeveloper Extension: ADF EMG (S. Davelaar, Oracle FMW Architecture Team (A-Team) Ulrich Gerkmann-Bartels 36
  37. 37. DEPLOYMENT AND DELIVERY ‣ ‣ Deployment Cockpit Asset Repository Asset Repository + Configuration Management -> Laufzeitumgebung ‣ Status of Delivery ‣ Store Deployment and Delivery Tool: Custom Solution Deployment Cockpit Configuration Management Generierte ENV-Scripte, WLST, SQL+PLUS Update Server Ulrich Gerkmann-Bartels 37
  38. 38. ADF SOFTWARE FACTORY Ulrich Gerkmann-Bartels 38
  39. 39. AGENDA Definition Elemente einer Fertigungsstraße Ausblick Ulrich Gerkmann-Bartels 39
  40. 40. SOFTWARE FACTORY Web Client Software Factory, http://visualstudiogallery.msdn.microsoft.com/8fc2c9d6-5282-404b-9c58-e72b326b1e26, abgerufen am 13.09.2012 Ulrich Gerkmann-Bartels 40
  41. 41. WIE VIELE VARIANTEN HAT DENN IHRE PRODUKTLINIE ?
  42. 42. HINDERNISSE BEACHTEN ‣ Organisatorische Herausforderung ‣ IT Silos überwinden ‣ Must have: A-TEAM ‣ No All-In-One-Solution ‣ Nicht über das Ziel hinausschießen Ulrich Gerkmann-Bartels 42
  43. 43. FIRST STEPS ‣ Werkzeugkasten definieren ‣ Prototyp der Fertigungsstraße BaseFramework, Templates and Referenzproject Continuous Integration Assets Repository* Automatic Deployment ‣ Schnittstellen in der Werkzeugkette schließen * Dependency Management Ulrich Gerkmann-Bartels 43
  44. 44. CROSS-FUNCTION ASSETS ‣ Getting started ‣ Bundle von Backend Services mit User Interface ‣ Wiederverwendbar in vielen Projekten Ulrich Gerkmann-Bartels 44
  45. 45. CROSS-FUNCTION ASSETS ‣ Account Management ‣ Schlüsselverzeichnis ‣ Modul / Menusteuerung ‣ Auditing Ulrich Gerkmann-Bartels 45
  46. 46. WEITERE INFORMATIONEN ‣ Software Factories J. Greenfield, K. Short, S. Cook, S. Kent; Wiley Publishing Inc., Indianapolis, Indiana, 2004 ‣ Oracle® Reference Architecture - Software Engineering IT Strategies from Oracle (ITSO) ‣ OTN: ADF Architecture Square ‣ ADF EMG Andreas Koop 46
  47. 47. VIELEN DANK FÜR IHRE AUFMERKSAMKEIT HABEN SIE NOCH FRAGEN?

×