1 / 33

The Role of Modernization at GSA OMG Gov Info Days, 3/11/08

George Thomas, GSA Enterprise Chief Architect, FCIOC-AIC Service Subcommittee Co-chair, OMG GovDTF Steering Committee. The Role of Modernization at GSA OMG Gov Info Days, 3/11/08. This Presentation. Overall Modernization Context Top down MDA and bottom up ADM strategy Yesterday

allayna
Download Presentation

The Role of Modernization at GSA OMG Gov Info Days, 3/11/08

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. George Thomas, GSA Enterprise Chief Architect, FCIOC-AIC Service Subcommittee Co-chair, OMG GovDTF Steering Committee The Role of Modernization at GSAOMG Gov Info Days, 3/11/08

  2. This Presentation Overall Modernization Context Top down MDA and bottom up ADM strategy Yesterday Service Oriented Business Architecture Architecture Driven Modernization Summary Today Service Component Reference Architecture Platform Specific Model Transformations Service Oriented Infrastructure

  3. Modernization Context GSA has 8 SSO’s FAS, PBS, OCFO, OCAO, OCIO, OCSC, OGP, OCHCO ~13,000 people across the country (globe)‏ Some localization of the ‘back office’, but numerous ‘feeder systems’ and multiple back offices... Business and IT SME’s Systems heterogeneity Lossy expertise outsourcing Functionality unknown, forgotten, lost, out of date, or otherwise unavailable! ~$600M in mostly care and feeding of existing IT Not good business coverage, but (massively) redundant IT Insert other b/f/c slogan here… OMG to the rescue! Make $200 per person day become $20 at a cost of X over Y eGov dogfood - including all your customers! MDA toddler, ADM new born 5 years into MDA, one ADM project FMEA NEAR

  4. MDA Top Down - ADM Bottom Up Aspects of system detail discovery, and generation of technology platform implementation are automated Model Driven Architecture (MDA) Architecture Driven Modernization (ADM)

  5. FMEA Support Team and Tools OCIO and OCFO on FMEA for FMLoB Model Driven Solutions MDA, One GSA EA, ComponentX, SOAPro specialists Logistics Management Institute GSA EA and FM domain (including JFMIP-FSIO) specialists Tactical Strategy Group ADM, Transformation specialist Allen Systems Group Becubic and additional support Overall FMEA ADM effort From a Pilot, to NEAR critical Enabled the identification of modules and programs that are still active (86 modules, 728 programs, 342 copybooks, 735,000 lines of code) Tag (annotation framework) code segments, relate to other code segments Offers query, reporting, sorting capabilities that are very useful for the extraction of business rules ~3 FTE person months - 422 out of 728 reviewed, 636 business rules extracted Only ADM’ing the COBOL stuff…

  6. SOBA: “One GSA” Discipline Segmentation Focus of FMEA Financial Management Acquisition Solutions Property Management Policy Business Intelligence Human Resources Marketing

  7. SOBA: FM Discipline: Enterprise Roles Financial Reporting Financial Planning Receivables Accounting Funds Management Payables Accounting General Ledger Cash Management Cost Allocation Asset Accounting Financial Reporting collects financial data from all other enterprise roles.

  8. Service Oriented BA Models: Grammar and Visualization • EDOC as Service Oriented Architecture Domain Specific Language • Collaborative Role Interactions (CRI), standard graphic notation • ‘Systems of systems’, a recursive functional decomposition of roles • BP is a composition of choreographed and orchestrated Services • In/Out-sourced, Org/Geo boundary crossing CoI (G2G, B2B, B2G, G2C, A2A) ROLE 1 ROLE 2 ROLE 1 P1 P2 LoB Service Provider LoB Service Consumer ROLE 3 P4 P3 Mediation Service

  9. SOBA: Decomposition Conventions Enterprise Role Work Role Activity Sub activity Protocol Information Flow

  10. EDOC and BPMN = Choreography + Orchestration Billing Receivables Accounting Other RA Work Role The Protocol between Acquisition and Receivables Accounting Service Component Orchestrations Acquisition Work Role Acquisition

  11. FM Discipline: Enterprise Roles

  12. RA Enterprise Role: Work Roles

  13. Billing Work Role: Activities

  14. Establish Billing Activity: Sub Activities

  15. EDOC Protocols = Service Interface Specification Each message in a Protocol is an event that the Service Provider responds to The Protocol interaction is initiated by a message from the Service Consumer The Service Provider responds to the Consumer with success or failure message ‘callbacks’

  16. Protocols Are Used To Generate WSDL (SA/PSM, TRM) <portType name=“ChargeEstablishmentRequestInterface"> <operation name=“sendChargeEstablishment"> <input name=“ChargeEstablishment" message="tns:ChargeEstablishment" /> </operation> </portType> <portType name=“ChargeEstablishmentResponseInterface"> <operation name=“sendChargeEstablished"> <input name=“ChargeEstablished" message="tns:ChargeEstablished" /> </operation> <operation name=“sendChargeRejected"> <input name=“ChargeRejected" message="tns:ChargeRejected" /> </operation> </portType>

  17. Business Transaction Message Model (DTO Assembler) Message “panoptic” inheritance of “namesakes” Namesake “restricted” inheritance allows for explicit inclusion and exclusion of attributes and associations

  18. Generated DTO in XML is the SOBA IEP <CustomerOrderEstablishment> <Inter-Work-RoleTransaction> <inter-work-roleTransactionID> … </inter-work-roleTransactionID> … </Inter-Work-RoleTransaction> <newOrder> <orderingCustomer> <customerID> … </customerID> </orderingCustomer> <controllingSalesInstrument> <salesInstrumentId> … </salesInstrumentId> </controllingSalesInstrument> <customerOrderAmount> … </customerOrderAmount> … <lineItems> … </lineItems> </newOrder> </CustomerOrderEstablishment>

  19. ADM - Flow of NEAR Modules

  20. NEAR Sunset Sequencing • Becubic enabled us to discover NEAR data exchanges and module dependencies • “Simple Path” from system inputs to system output can be derived (graph theory)‏ • Functionality of modules belonging to the same path should be transitioned simultaneously • Priority is given to Simple Paths of which nodes (modules) belong to the smallest number of other Simple Paths • Turn off a module when it does not belong to another Simple Path • A Turn Off sequence of NEAR Modules was derived from the files exchanged between programs inside modules per service and per functional area • This sequence allows evaluation of feeder systems based on service presentation, e.g. asset accounting

  21. Record Unfilled Customer Order - Functional Spec • Receive CustomerOrderEstablishment • Let newOrder = CreateCustomerOrder(CustomerOrderEstablishment.newOrder).data • Send GeneralLedgerTransaction to increase Unfilled Customer Orders and decrease Anticipated Reimbursements • Send newOrder as RecurrentCustomerOrder (Note: EstablishRecurringReceivables will check if there are actually any creation triggers.) • Send CustomerOrderEstablished

  22. Service Components from Service Architectures The Service Component gets a port corresponding to each roles played by the indicated participant The Plays Role dependency specifies the interfaces of a service component by declaring how it is to participate in the business architecture

  23. Participants at this level could roughly be individual people or system functions Internal interactions needed to carry out the required business services Business service provided and consumed by Receivables Accounting Receivables Accounting SOBA

  24. Receivables Accounting Reference Architecture User of a consumed service by multiple internal parts

  25. Receivables Management Activities Activity Sent event Received event Information flow

  26. Establish Unfilled Customer Order Subactivities Output parameter Input parameters Subactivity

  27. Record Unfilled Customer Order Behavior • Can be specified using basic UML Activity Diagrams • Or use BPMN (not part of UPMS) for BPMS (from left to right!) Control flow

  28. Example Web Services Generation <wsdl:portType name=“BillSubmission.BillSubmissionReceiverInterface"> <wsdl:operation name=“submitBill"> <wsdl:input message="tns:BillSubmissionCluster“ name=“billSubmission"> </wsdl:input> </wsdl:operation> </wsdl:portType> <wsdl:portType name=“BillSubmission.BillSubmissionSubmitterInterface"> <wsdl:operation name=“notifyBillDelivered"> <wsdl:input message="tns:BillDeliveredCluster“ name=“billDelivered"> </wsdl:input> </wsdl:operation> <wsdl:operation name=“notifyBillReturned"> <wsdl:input message="tns:BillReturnedCluster“ name=“billReturned"> </wsdl:input> </wsdl:operation> </wsdl:portType>

  29. From Reference Architecture to Reference Implementation Logical System Architecture (ZIFA) = Platform Independent Model (MDA) = Segment Architecture (FEA) = Reference Architecture Physical Technology Architecture (ZIFA) = Platform Specific Model (MDA) = Solution Architecture (FEA) = Reference Implementation Financial System Specification Service Interfaces Service Components Service Manager Components Behavioral Specifications Message Specifications Data Manager Components Persistent Data Specifications Financial System Implementation Web Services Service Façades Platform (JEE) Components Language Functions XML Schemas Data Bases Data Base Schemas

  30. Software Factories Platform Specific Model (PSM) More stereotyping and tagging generate code from this PSM <<Provision>> To JEE tiers; Integration HTTP, JMS Services MDB, SSB, etc. Data SQL, DDL, etc. jar/war/ear modeldriven.org Transformations PIM/PSM to PSI

  31. Solution Architecture, Target J2EE Technology Platform Meta Data Repository Directory XSLT XSD XMI WSDL LDAP JMX Management Console HTTP/WebDAV Adapter Tier Integration Tier (ESB) Transactional Services Tier J2EE Application Server Request Queues JMS Broker J2EE Application Server Result Topics Transaction Manager Data Manager Oracle XML DB File Adapters WebService Adapter RMI EJB EJB JMS JMS JDBC JAX-WS Files SOAP/JMS FTP SOAP/HTTP Feeder Systems Server-Side Presentation GL System

  32. Same Source (PIM) For New JEE/JBI SA Target (PSM) SA SU SA SU SA SU Now Targeting Service Units and Service Assemblies SA SU Adapter Tier Integration Tier Transactional Service Tier EJB Container ESB Centralized Management Server Transaction Manager Data Manager RMI Transform Script Adapter Process JMX JMX JAX-WS Queue JBI Runtime JMS Broker JBI Runtime Topic XSLT SE BPEL SE JMS BC JMS JMS JMS BC JEE SE Normalized Message Router Normalized Message Router JBI Runtime File BC JMS HTTP BC JMS BC NMR SOAP/HTTP SOAP/JMS Files Feeder Systems Server-Side Presentation FTP

  33. Questions, Discussion Thank You for your time! This presentation can be found here; https://george-thomas.info/08/omg/adm g.thomas@gsa.gov - 202.219.1979 General Services Administration Office of the Chief Information Officer, Enterprise Chief Architect Federal CIO Council Architecture and Infrastructure Committee Services Subcommittee co-chair Object Management Group Government Domain Task Force Steering committee USDA Graduate School EA Certificate Program SOA Instructor

More Related