SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Complexity, Modularity, Abstraction:
Designing Architecture-Oriented Services



                                      Model-Driven Day
                                   November 24th, 2011               (v0.0)

                                 Yves Caseau
                  Bouygues Telecom – Académie des Technologies

Yves Caseau – Complexity, Modularity, Abstraction – November, 2011            1/31
Outline



1.     Complexity
       the 21st century challenge for enterprises and their information
       system
2.     Enterprise Architecture
       Anticipation in a complex world is not forecasting,
       but building a « situation potential »
3.     SOA and sustainability
       repeatable long-term performance requires discipline /
       governance
4.     Cloud-Ready Architecture
       Distributed, scalable, massively parallel computing resource for
       the whole information system



Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   2/31
Companies are Facing a Complex World
Part I: Complexty



                    A Complex World:
                          Hyper-competition, globalization, time is shrinking
                          The power has shifted to the consumers (F. Dupuy)
                          T. Friedman : « All that is easy has been done, what’s left is the hard
                           stuff »
                    Complicated problems require specialists,
                      Complex problems require everyone
                          Diversity of skills and viewpoints …
                          … organized into teams
                    Complex problems are solved “on the gemba”,
                      where they occur, one at a time
                          Abstractions hide too much, decomposition does not work !
                          “Reproducible conditions” … do not always exist (isolation is impossible)
                          Communication is hard (cf. IT when specifying is harder than coding)
                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011          3/31
An Enterprise is a « Complex System »
Part I: Complexty



                       Numerical complexity (number of things)
                       Multi-scale
                       Temporal complexity
                       Richness of interactions with environment
                       Symptom examples:
                               Costs (Information Systems evolution)
                                   Example: non-linear evolution of project costs w.r.t. project size

                               Rate of errors & failures
                                   Difficulty to « guarantee » robustness and fault-tolerance

                                   Ross Ashby « regulation of a (complex) system requires a control system
                                    that is as complex as the system itself »
                               Time-to-market
                                   The first complexity-related issue

                                   Time-to-integrate-a-new-component depends on the host size :

                                        – Human complexity (organization)
                                        – Modularity failure (unforseen impacts & interaction between components)
                               Law of unintended consequences – Feature Interaction Problem

                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                          4/31
A systemic view of the enterprise & its IS
Part I: Complexty


                        Finality                                                                               Political Aspects
                                           Business Model (CEISAR)



                       Evolution
                                                                  Changes


                        Structure




                                                                                                                                             PRAXEME
                                               Organisation (CEISAR)                     “pragma” aspect

                          Functional            Process                 Objets                     Semantic aspect
                          Model                 Model
                                                                                                     Logic aspect

                        Operating
                        System    Decision System
                                                                                                           “Pragmatic” aspect
                                                                                                           operation procedures
                                         Information System
                                                                                                     Geographical
                                                                                                                        Software aspect
                                                                                                     / localization
                                               Precesses
                                                IS                                                IS is a
                                                                                                  complex                Hardware
                                                                                                  system itself
                           Input flows          environnement

                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                                                5/31
Consequences of a « systemic vision »
                       Features / properties « emergence »
Part I: Complexty



                          from « Performance by Design » …

                          .. to « Performance though simulation & prototypes »

                       Humility and Continuous improvement                         Complexité


                       Complexity Governance
                          Acknowledge the problem !                 Exécution
                                                                      dans le
                          Attack it with method                    Monde Réel
                                                                                                                Agilité

                          Cf. CEISAR’s cube
                                                                        Modèle                           Eléments Partageables
                                                                                                            ou Réutilisables
                                                                                                     Eléments Spécifiques
                           (three dimensions)                                               Operations
                                                                               Transformations
                                                                     Synergie
                       Explicit policies are a key governance tools
                              SLA, service contacts, data ownership policies, …
                       “Enterprise Architecture” as a corporate practice
                           Stakeholders alignment

                           The “external environment” is critical to IS strategic planning




                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                         6/31
Measuring Complexity
Part I: Complexty



                       Measuring the numerical complexity 
                       Sizing the objects (TPMC, FP, Tb)
                       Complexity (« relationship intricacy ») Metrics
                            DSM (design structure matrix)
                            Cyclomatic complexity                      (G,  )              ( x). ( y)
                                                                                     ( x , y )G
                            Scalar Euclidian Complexity
                               The only scale-invariant metric that applies to an architecture map




                       Bottom line : metrics offer a small amount of help

                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                  7/31
Taming Information System Complexity (I)
Part I: Complexty



                       Simple approach:
                             maps and architecture schemas (UML2 helps ).
                       Common sense approach:
                             Energetic standardization
                             Reducing heterogeneity reduces complexity (Printz).
                       Technological approach:
                              Infrastructure (middleware)
                             Introduction of physical de-coupling, sharing and intermediation




                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011       8/31
Taming Information Systems Complexity (II)
Part I: Complexty




                       Systematic approach (« Urbanisation »):
                            Enterprise Architecture, seen as a company-wide practice, since it helps to
                             align everyone towards a common target and a transformation path.
                       Architectural approach (hardest, at the structure level):
                            modularity (semantic de-coupling).
                       Strategic Approach (Service-Oriented Architecture):
                            SOA as a governance practice, reduces complexity:              Cf. Parts
                               share & reuse                                                II & III
                               Common understanding

                               Reduces the temporal complexity




                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011          9/31
Lessons from Bouygues Telecom
Part II                                                              Back-office re-engineering 2001-2005


1.     Complexity
       the 21st century challenge for enterprises and their information
       system
2.     Enterprise Architecture
       Anticipation in a complex world is not forecasting,
       but building a « situation potential »
3.     SOA and sustainability
       repeatable long-term performance requires discipline /
       governance
4.     Cloud-ready architecture
       Distributed, scalable, massively parallel computing resource for
       the whole information system




Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                                  10/31
Enterprise Architecture
Part II: Architecture



                            IS Re-engineering                                                    Architecture: why ?

                           « Urbanisation »                                                        Communicate a vision
                                   Component-based
                                                                                                        Key transformation tool
                                   Process-oriented
                                                                                                    Favor reuse
                                     (business logic extraction)
                                                                                                        Reduce complexity and costs
                                   Temporal de-coupling
                                     (asynchronous message)                                             Support standardization

                                   Functional de-coupling                                          Align stakeholders
                                     (intermediation)                                                   Architects need to avoid
                            « Enterprise Architecture »                                                 complex tools & formalisms
                               Coherence of three domains
                                                                                                        Sensitive to each
                                   Strategy : goals                                                     enterprise’s maturity level
                                   operations: processes and data
                                                                                                    Asynchronous / diachronous
                                   Information Systems: applications
                                                                                                        Acts as a corporate memory
                                     and services
                                                                                                        Visual change management
                           Similar topic / two views
                               EA is more concerned with the target

                               Re-engineering is a process



                            Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                                     11/31
Data Architecture
Part II: Architecture



                           Data Model
                                Semantic reference: what does a customer, a bill, … mean ?
                                Conceptual model: how is a customer defined ?
                                Ontology: class hierarchy (UML)
                                Major business asset & key alignment tool
                           Data Architecture
                                Distribution
                                Formats (ex: XML)
                                Life cycle
                           Dynamic Management of Business Objects
                                Distribution / synchronization
                                Save / restore (disaster recovery)
                                Data flow management
                                    E.g., network capacity planning




                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011    12/31
Functional Architecture and Object-Oriented Design
Part II: Architecture



                           Functional Architecture means to decompose:
                                Into functions and sub-functions, in a top-down manner
                                Descriptive normalization: (input, output, transformation, roles, …)
                           Functional Architecture is no longer self-contained(vs. 20 years ago)
                                A narrow focus on functional architecture leads to take business process
                                 and data distribution issues into account too late.
                                When functional analysis is carried too deeply, one gets “”silos”
                                Functional top-down is poorly suited to the efficient use of off-the-shelf
                                 software packages
                           Object-Oriented Design :
                            mixing functional & data model at the IS level
                           Functional Architecture feeds :
                                Business roadmaps & « level 0 » decomposition: descriptive analysis of
                                 activities/jobs within the company
                                Service definition within SOA
                                Contributes to data architecture and business object model
                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011              13/31
Service Architecture
Part II: Architecture



                           Service = Function + Interface + Contract
                           Service Architecture
                                Design a structure (clean up the call graph)
                                Provide meaning (to simplify change management and reuse)
                           “local” SOA = service-based architecture
                                Often linked to technology, such as « Web Services »
                                A new look for an old best practice 
                                The goal is the system (and its architecture), services are a mean
                           “global” SOA = build a service catalog, whose rich structure is “an
                            architecture”
                                Independent from technologies (Tuxedo, procedures, …)
                                Reuse of previous software component reuse theory, applied to large
                                 components which are pieces of the IS
                                The goal is to design a reusable service catalog (the lasting asset),
                                 architecture (organization) is a mean (and varies across time)



                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011            14/31
Process Architecture
Part II: Architecture



                           Design a structure on top of temporal interactions:
                                Events
                                Chaining & dependencies => business logic
                                Goals => processes
                           Describe « fractal/recursive » structure for processes
                                Processes / sub-processes
                                Process families
                                   Sharing resources: data, GUI, …

                                Roles (organizational alignment)
                                   Business process mapping is the best alignment tool between

                                    organization and information system
                                Process description -> services, functions, … (cf. previous slides)
                           Normalize / Standardize
                                Share / reuse / outsource
                                Best approach to integrate packaged software

                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011             15/31
Designing a Target Architecture
Part II: Architecture




                                                  Functions                     Processes         Data

                                                                                                 Lexicography
                                                   Métiers
                                                                                                                      Référence
                                                                                                 Objets (ontology)     externe
                                                Macro-functions               Macro-processes
                                                                                  (draft)
                                                                                                 Object Lifecycle

                                  External
                                                   Level 0
                                  Reference                                   Macro-processes
                                                                External
                                                                Reference
                                                                                                Exchanges - Content
                                                                                Events
                                                 Services

                                                  Catalog                     Processes
                                                                                                Update protocol

                                              Service Archi. v1             Process Archi v1
                                                                                                 Data Archi. v1


                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                              16/31
Designing a Modular Architecture
Part II: Architecture


                           Goal: minimize impact dispersion for new services
                           “Definition”: modularity is the correlation
                                « Distance in the code » and frequency of interaction
                                « Distance in the code » and « co-evolution »
                           Good practices :
                                Layered architecture (define abstraction levels)
                                Process Architecture (define a composition grammar)
                                    Sharing/reuse & modularity go hand-in-hand : sub-process

                                     identification
                                Event-Oriented Architecture
                                    Pub/sub is still a one of the best modular patterns

                                Model-Driven Architecture:
                                 careful design of « future-proof » data model
                                Service Architecture reduces unmanaged interactions
                                                                                              Cf. Part III
                                    Reification of functional architecture

                                    Abstraction/ encapsulation


                        Yves Caseau – Complexity, Modularity, Abstraction – November, 2011         17/31
Part III                                                             Image blog




1.      Complexity
        the 21st century challenge for enterprises and their information
        system
2.      Enterprise Architecture
        Anticipation in a complex world is not forecasting,
        but building a « situation potential »
3.      SOA and sustainability
        repeatable long-term performance requires discipline /
        governance
4.      Cloud-ready architecture
        Distributed, scalable, massively parallel computing resource for
        the whole information system



Yves Caseau – Complexity, Modularity, Abstraction – November, 2011          18/31
Strategic Issues : Tomorrow’s Information System
Part III: Sustainability & SOA



                                 Complexity does not mean that some challenges are not clearly visible
                                  Information Systems 2.0 – our customers …

                                          want their voice heard: they need a feedback mechanism
                                         collaborate with other customers or prospects
                                         expect Information Systems to be always on, any time on any device 
                                    Information Systems need to be personalized & predictive
                                         Social networks analytics, Bayesian learning, …
                                         Semantic processing : making sense from customer & partner input
                                         Time acceleration generates more data - need to master « big data »
                                          analytical skills
                                    Customers and end-users demand to be more autonomous
                                         End-users have control over their own processing , write their own « apps »
                                         IS must follow the customer wherever she goes, not the opposite !
                                         Customer are « the architect of their own experience » → IS must become
                                          interoperable platforms

                                 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011         19/31
Sustainable Information Systems »
Part III: Sustainability & SOA


                                    « develop today’s information services without preventing the ability
                                     to develop those for tomorrow, through the overuse of resources, or
                                     the production of un-manageable complexity».
                                          Freely inspired from « sustainable » as defined by Brundtland Commission 
                                    (global) SOA is the only method for sustainable IS development
                                        Not the only re-engineering method

                                        (other approaches exist which reduce IS complexity),

                                        but the best method to do so continuously, as a company-wide

                                         practice (with all stakeholders), a long-term progressive &
                                         measured effort, which generates its own reward
                                    Clean-up : learn to remove/trip (classic from asset management)
                                    Cf. Extreme programming (Agile Manifesto) :
                                        Leveling the effort, continuous integration, favor simple designs

                                        Continuous simplification, not a last-resort heroic attempt




                                 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                20/31
SOA & Governance :
Part III: Sustainability & SOA


                                 Three steps:
                                    Service Définition: build the business service catalog.
                                     Starts like a functional analysis (from business processes) – but reusability and
                                     composability is engineered during this step, trough the dialog between business
                                     and IS.
                                    Architecture de Service: Transform a list into a hierarchical and modular structure.
                                     Classical difficulties and solutions (ex: refactoring) …
                                     to avoid a « Web Services spaghetti».
                                    Service Intégration : the « technical » step – often confused (SOA SOI).
                                     Integration/middleware technology is quite mature nowadays 
                                 “Think globally, act locally” SOA starts with the periphery of the system
                                   and ends with the core. Data architecture is critical from day one.
                                      Beware of the “proof of concept” which is much harder to integrate than

                                       to build 
                                      « Something you do, not something you buy » - David Linthicum

                                  SOA Governance

                                      its first goal is to establish the existence of shared artifacts (architecture

                                       schemas, service catalogs, roadmaps) et everyone’s role (rights and
                                       duties)
                                 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                   21/31
Sustainability’s Equation
Part III: Sustainability & SOA

                                    For a company with expected growth g, the IT budget is defined as
                                     the sum of the project budget P and the Operation budget O.
                                            An application portfolio of size S is built, with life expectancy A
                                            a given share (d) of the application portfolio is removed/destroyed
                                            We suppose that the operation cost for an application that costs 1k€ is w k€
                                            We also suppose that there is a productivity gain over the years of p%.
                                    The usual two ratios that are of interest :
                                            r = (P / O) = ration of build / run - usual measure R = (P / P + O)
                                            n = Pn / P = % of the project budget spent on creating new applications

                                    Sustainability Theorem : stable IT budget relative to company growth 
                                         n = [A (g + d) ] / (1 + (g+d) A) & r = [g + d + p +(1-d)/A] / [w (1 - d + A(g+d))]

                                    Corollary
                                       Easy to plug into an Excel spreadsheet

                                            Example: w = 25%, d = 5%, p = 4%, A = 10,
                                             we get R = 42% and n = 33%. (no surprise )
                                            How to improve r ?
                                               Clean-up old applications

                                               Increase productivity for operations

                                     Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                       22/31
SOA as a discipline : Architecture-oriented Services
Part III: Sustainability & SOA



                                    How get reusability, across the enterprise (sharing)
                                     and across time (reuse) ?
                                         Abstraction
                                            Trade-off between too generic and too specific

                                         Modularity
                                            Relies on process and event architecture

                                         Composability
                                            Horizontal (Process) : Common (Pivotal) Object Model

                                            Vertical (Functional) : Parametric Polymorphism 

                                    API Model Discipline
                                         Manage versions !
                                         API (meta) data model : worth some effort !
                                         Each CIO becomes a software editor
                                    This is more an art than a science 


                                 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   23/31
MDA: where Abstraction and Modularity start
Part III: Sustainability & SOA



                                    Data model is the key factor for modularity & flexibility
                                    A few rules drawn from experience:
                                         Reify links
                                         Reify roles
                                         Hierarchy products vs. complex ontologies
                                         Group/individual substitution
                                    Work on the meta-model
                                    Think « object » 
                                         Ontology before description, encapsulation (hiding vs. transparency)
                                    The data model defines the IS « situation potential »
                                         Difficulty of strategic planning in a complex world 
                                         scenario practices: what if …
                                             … we were … one of our competitor ?

                                             … we outsourced this activity ?

                                             … we provided this service to other companies (SaaS)


                                 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011         24/31
Part VI

1.     Complexity
       the 21st century challenge for enterprises and their information
       system
2.     Enterprise Architecture
       Anticipation in a complex world is not forecasting,
       but building a « situation potential »
3.     SOA and sustainability
       repeatable long-term performance requires discipline /
       gouvernance
4.     Cloud-ready architecture
       Distributed, scalable, massively parallel computing resource for
       the whole information system




Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   25/31
Cloud Computing : Scalable Resources & Services
Part IV: Cloud-ready Architecture



                                       Two angles :
                                            Cloud as a computing resource : a CIO issue
                                            Cloud as a service platform : joint ownership
                                       A « new » kind of resource
                                            The heir of grid and « commodity servers »
                                            Fast provisioning
                                       A new kind of business model
                                            CAPEX to OPEX (rent)
                                            Full scalable (up and down)




                                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   26/31
The Innevibilaty of Cloud Computing 
Part IV: Cloud-ready Architecture



                                       Better TCO
                                             Commoditization
                                             economy of scale (operations)
                                             Utilization rate (from sharing)
                                             PUE (Power Usage Effectiveness)
                                       Parallel computing performance
                                             Example from the movie industry
                                             MapReduce & Hadoop 
                                       Distributed computing reliability
                                             Massive redundancy …
                                             State-of-the-art availability (99.9% to 99.99%)
                                       Flexibility
                                             Scalability
                                             Pay-as-you-grow


                                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   27/31
Don’t Confuse Clouds with Smoke 
Part IV: Cloud-ready Architecture



                                       Data privacy & security
                                            A major concern for most citizens
                                            Not all data centers are equal in front of hackers
                                            Data architecture must distinguished hot/warm/cold
                                       Brewer’s Theorem (Distributed computing is still hard )
                                            Consistency (all views obtained through different process represent
                                             the same information)
                                            High-availability (relies on massive replication)
                                            Fault-tolerance (disaster recovery)
                                       Cloud, Caching and Peer-to-Peer Architecture
                                            « Cloud projection over the edges »
                                            Digital homes future architecture




                                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011         28/31
SOA is not scale-free /
                                    speed of light is still a constraint 
Part IV: Cloud-ready Architecture




                                       Latency is still a constraint
                                            Tens of ms to access the cloud
                                            Performance is not guaranteed (or price is no longer cheap)
                                       Service « scale » (size) is crucial
                                            SOA is not scale-free
                                            A classic rule of « performance management » for SOA
                                            Even more important with a cloud-architecture
                                       RCA: Rich Client Architecture
                                            Used for SaaS and MMORPG … for a reason 
                                            Applies to heavy transactional contexts




                                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011     29/31
Cloud-ready Architecture
Part IV: Cloud-ready Architecture



                                       A cloud-ready architecture supports progressive migration
                                        of both front-office & back-office services to the cloud
                                            SaaS for front-office is easier : way to start …
                                            Portal integration, then mash-up
                                       Variation of a service-oriented
                                        architecture                                                                                     événements
                                                                                                         Applications
                                       Requires to:                                                     interactives
                                                                                                                                 Processus               Batchs

                                            Leverage Web technology                                     (ex: portail)

                                            “think platform”                                                       Infrastructure (ex: ESB synchrone)
                                                                                          Annuaire
                                             cf. “What would Google Do”                   UDDI           service   service                                         Propriété
                                                                                                                                                                   clés:
                                            Build catalogs of                                                                                                     • Stateless
                                                                                                                                                                   •Gestion
                                             Web APIs                                                                                              Mash-ups
                                                                                                                                                                   explicite du
                                                                                                                                                                   contexte
                                                                                                     Infrastructure (ex: ESB asynchrone)
                                                                                                                                                                   •Contrat de
                                                                                                                                                                   service

                                                                                                                           Applications   Ressources



                                                                                          « Cloud »
                                                                                                            Référentiels
                                                                                          (Internet)
                                                                                                            (données)

                                    Yves Caseau – Complexity, Modularity, Abstraction – November, 2011                                                            30/31
Conclusion
   Models are key for:
         agility
        situation potential (seizing opportunities)
        cost management


   Innovation in the digital world happens in the source code
        agile development (end user / designer / developer)
        Fail often to succeed early (Eric Riess)
        Lean IT: no delays, quality in, fast delivery, less code,
         short intervals (small batches), customer participation,
         VSM & « muda » removal


   You should prepare to the advent of massively parallel computing
        Cloud or multi-core
        Even for traditional back-office functions
        From VNG to DCG 

Yves Caseau – Complexity, Modularity, Abstraction – November, 2011   31/31

Más contenido relacionado

Destacado

W4 ucl@md day2011
W4 ucl@md day2011W4 ucl@md day2011
W4 ucl@md day2011MDDAY11
 
Obeo thales@md day2011
Obeo thales@md day2011Obeo thales@md day2011
Obeo thales@md day2011MDDAY11
 
W4@md day2011
W4@md day2011W4@md day2011
W4@md day2011MDDAY11
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011MDDAY11
 
Axel uhl sap@md-day2011
Axel uhl sap@md-day2011Axel uhl sap@md-day2011
Axel uhl sap@md-day2011MDDAY11
 
Objet direct@md day2011
Objet direct@md day2011Objet direct@md day2011
Objet direct@md day2011MDDAY11
 
Levers, Wheels And Axles, Pulleys
Levers, Wheels And Axles, PulleysLevers, Wheels And Axles, Pulleys
Levers, Wheels And Axles, PulleysElizabeth Nolen
 

Destacado (7)

W4 ucl@md day2011
W4 ucl@md day2011W4 ucl@md day2011
W4 ucl@md day2011
 
Obeo thales@md day2011
Obeo thales@md day2011Obeo thales@md day2011
Obeo thales@md day2011
 
W4@md day2011
W4@md day2011W4@md day2011
W4@md day2011
 
Soft fluent@md day2011
Soft fluent@md day2011Soft fluent@md day2011
Soft fluent@md day2011
 
Axel uhl sap@md-day2011
Axel uhl sap@md-day2011Axel uhl sap@md-day2011
Axel uhl sap@md-day2011
 
Objet direct@md day2011
Objet direct@md day2011Objet direct@md day2011
Objet direct@md day2011
 
Levers, Wheels And Axles, Pulleys
Levers, Wheels And Axles, PulleysLevers, Wheels And Axles, Pulleys
Levers, Wheels And Axles, Pulleys
 

Similar a Yves caseau@md day2011

PHX Session #5 : Architecture Without Big Design Up Front (Garibay)
PHX Session #5 : Architecture Without Big Design Up Front (Garibay)PHX Session #5 : Architecture Without Big Design Up Front (Garibay)
PHX Session #5 : Architecture Without Big Design Up Front (Garibay)Steve Lange
 
NCOIC SCOPE Executive Overview
NCOIC SCOPE Executive OverviewNCOIC SCOPE Executive Overview
NCOIC SCOPE Executive OverviewGovCloud Network
 
Overcoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud ComputingOvercoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud ComputingNane Kratzke
 
E Cognition User Summit2009 S Lang Zgis Object Validity
E Cognition User Summit2009 S Lang Zgis Object ValidityE Cognition User Summit2009 S Lang Zgis Object Validity
E Cognition User Summit2009 S Lang Zgis Object ValidityTrimble Geospatial Munich
 
System model optimization through functional models execution methodology and...
System model optimization through functional models execution methodology and...System model optimization through functional models execution methodology and...
System model optimization through functional models execution methodology and...Daniele Gianni
 
Mulenburg jerry
Mulenburg jerryMulenburg jerry
Mulenburg jerryNASAPMC
 
SAF 2008 - Analysis and Architecture
SAF 2008 - Analysis  and ArchitectureSAF 2008 - Analysis  and Architecture
SAF 2008 - Analysis and Architecturemhessinger
 
Correlation Architecture
Correlation ArchitectureCorrelation Architecture
Correlation Architecturesboray
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecturedrewz lin
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architectureTot Bob
 
Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010davemayo
 
Arena product presentation
Arena product presentationArena product presentation
Arena product presentationjhjsmits
 
Lean Inventive Systems Thinking Work Book
Lean Inventive Systems Thinking Work BookLean Inventive Systems Thinking Work Book
Lean Inventive Systems Thinking Work BookCrafitti Consulting
 
Object Orientation Fundamentals
Object Orientation FundamentalsObject Orientation Fundamentals
Object Orientation FundamentalsPramod Parajuli
 
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...Milan Zdravković
 
Orchestration Panel at Cloud Connect 2010
Orchestration Panel at Cloud Connect 2010Orchestration Panel at Cloud Connect 2010
Orchestration Panel at Cloud Connect 2010dev2ops
 

Similar a Yves caseau@md day2011 (20)

Architecture
ArchitectureArchitecture
Architecture
 
Hierarchy in Flux: Interfacing Robots
Hierarchy in Flux: Interfacing RobotsHierarchy in Flux: Interfacing Robots
Hierarchy in Flux: Interfacing Robots
 
PHX Session #5 : Architecture Without Big Design Up Front (Garibay)
PHX Session #5 : Architecture Without Big Design Up Front (Garibay)PHX Session #5 : Architecture Without Big Design Up Front (Garibay)
PHX Session #5 : Architecture Without Big Design Up Front (Garibay)
 
NCOIC SCOPE Executive Overview
NCOIC SCOPE Executive OverviewNCOIC SCOPE Executive Overview
NCOIC SCOPE Executive Overview
 
Lição prova professor coordenador
Lição prova professor coordenadorLição prova professor coordenador
Lição prova professor coordenador
 
Overcoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud ComputingOvercoming Cost Intransparency of Cloud Computing
Overcoming Cost Intransparency of Cloud Computing
 
E Cognition User Summit2009 S Lang Zgis Object Validity
E Cognition User Summit2009 S Lang Zgis Object ValidityE Cognition User Summit2009 S Lang Zgis Object Validity
E Cognition User Summit2009 S Lang Zgis Object Validity
 
System model optimization through functional models execution methodology and...
System model optimization through functional models execution methodology and...System model optimization through functional models execution methodology and...
System model optimization through functional models execution methodology and...
 
Mulenburg jerry
Mulenburg jerryMulenburg jerry
Mulenburg jerry
 
SAF 2008 - Analysis and Architecture
SAF 2008 - Analysis  and ArchitectureSAF 2008 - Analysis  and Architecture
SAF 2008 - Analysis and Architecture
 
Correlation Architecture
Correlation ArchitectureCorrelation Architecture
Correlation Architecture
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecture
 
4+1view architecture
4+1view architecture4+1view architecture
4+1view architecture
 
Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010
 
Arena product presentation
Arena product presentationArena product presentation
Arena product presentation
 
Lean Inventive Systems Thinking Work Book
Lean Inventive Systems Thinking Work BookLean Inventive Systems Thinking Work Book
Lean Inventive Systems Thinking Work Book
 
Next Generation BPM
Next Generation BPMNext Generation BPM
Next Generation BPM
 
Object Orientation Fundamentals
Object Orientation FundamentalsObject Orientation Fundamentals
Object Orientation Fundamentals
 
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...
Towards Semantic Interoperability Framework for Custom Orthopaedic Implants M...
 
Orchestration Panel at Cloud Connect 2010
Orchestration Panel at Cloud Connect 2010Orchestration Panel at Cloud Connect 2010
Orchestration Panel at Cloud Connect 2010
 

Más de MDDAY11

No magic@md day2011
No magic@md day2011No magic@md day2011
No magic@md day2011MDDAY11
 
Modeliosoft@md day2011
Modeliosoft@md day2011Modeliosoft@md day2011
Modeliosoft@md day2011MDDAY11
 
Modelio praxeme@md day2011
Modelio praxeme@md day2011Modelio praxeme@md day2011
Modelio praxeme@md day2011MDDAY11
 
Mia software@md day2011
Mia software@md day2011Mia software@md day2011
Mia software@md day2011MDDAY11
 
Blu age@md day2011
Blu age@md day2011Blu age@md day2011
Blu age@md day2011MDDAY11
 
Sogeti telosys@md day2011
Sogeti telosys@md day2011Sogeti telosys@md day2011
Sogeti telosys@md day2011MDDAY11
 

Más de MDDAY11 (6)

No magic@md day2011
No magic@md day2011No magic@md day2011
No magic@md day2011
 
Modeliosoft@md day2011
Modeliosoft@md day2011Modeliosoft@md day2011
Modeliosoft@md day2011
 
Modelio praxeme@md day2011
Modelio praxeme@md day2011Modelio praxeme@md day2011
Modelio praxeme@md day2011
 
Mia software@md day2011
Mia software@md day2011Mia software@md day2011
Mia software@md day2011
 
Blu age@md day2011
Blu age@md day2011Blu age@md day2011
Blu age@md day2011
 
Sogeti telosys@md day2011
Sogeti telosys@md day2011Sogeti telosys@md day2011
Sogeti telosys@md day2011
 

Último

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Último (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Yves caseau@md day2011

  • 1. Complexity, Modularity, Abstraction: Designing Architecture-Oriented Services Model-Driven Day November 24th, 2011 (v0.0) Yves Caseau Bouygues Telecom – Académie des Technologies Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 1/31
  • 2. Outline 1. Complexity the 21st century challenge for enterprises and their information system 2. Enterprise Architecture Anticipation in a complex world is not forecasting, but building a « situation potential » 3. SOA and sustainability repeatable long-term performance requires discipline / governance 4. Cloud-Ready Architecture Distributed, scalable, massively parallel computing resource for the whole information system Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 2/31
  • 3. Companies are Facing a Complex World Part I: Complexty A Complex World:  Hyper-competition, globalization, time is shrinking  The power has shifted to the consumers (F. Dupuy)  T. Friedman : « All that is easy has been done, what’s left is the hard stuff » Complicated problems require specialists, Complex problems require everyone  Diversity of skills and viewpoints …  … organized into teams Complex problems are solved “on the gemba”, where they occur, one at a time  Abstractions hide too much, decomposition does not work !  “Reproducible conditions” … do not always exist (isolation is impossible)  Communication is hard (cf. IT when specifying is harder than coding) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 3/31
  • 4. An Enterprise is a « Complex System » Part I: Complexty  Numerical complexity (number of things)  Multi-scale  Temporal complexity  Richness of interactions with environment  Symptom examples:  Costs (Information Systems evolution)  Example: non-linear evolution of project costs w.r.t. project size  Rate of errors & failures  Difficulty to « guarantee » robustness and fault-tolerance  Ross Ashby « regulation of a (complex) system requires a control system that is as complex as the system itself »  Time-to-market  The first complexity-related issue  Time-to-integrate-a-new-component depends on the host size : – Human complexity (organization) – Modularity failure (unforseen impacts & interaction between components)  Law of unintended consequences – Feature Interaction Problem Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 4/31
  • 5. A systemic view of the enterprise & its IS Part I: Complexty Finality Political Aspects Business Model (CEISAR) Evolution Changes Structure PRAXEME Organisation (CEISAR) “pragma” aspect Functional Process Objets Semantic aspect Model Model Logic aspect Operating System Decision System “Pragmatic” aspect operation procedures Information System Geographical Software aspect / localization Precesses IS IS is a complex Hardware system itself Input flows environnement Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 5/31
  • 6. Consequences of a « systemic vision »  Features / properties « emergence » Part I: Complexty  from « Performance by Design » …  .. to « Performance though simulation & prototypes »  Humility and Continuous improvement Complexité  Complexity Governance  Acknowledge the problem ! Exécution dans le  Attack it with method  Monde Réel Agilité  Cf. CEISAR’s cube Modèle Eléments Partageables ou Réutilisables Eléments Spécifiques (three dimensions) Operations Transformations Synergie  Explicit policies are a key governance tools  SLA, service contacts, data ownership policies, …  “Enterprise Architecture” as a corporate practice  Stakeholders alignment  The “external environment” is critical to IS strategic planning Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 6/31
  • 7. Measuring Complexity Part I: Complexty  Measuring the numerical complexity   Sizing the objects (TPMC, FP, Tb)  Complexity (« relationship intricacy ») Metrics  DSM (design structure matrix)  Cyclomatic complexity  (G,  )    ( x). ( y) ( x , y )G  Scalar Euclidian Complexity  The only scale-invariant metric that applies to an architecture map  Bottom line : metrics offer a small amount of help Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 7/31
  • 8. Taming Information System Complexity (I) Part I: Complexty  Simple approach:  maps and architecture schemas (UML2 helps ).  Common sense approach:  Energetic standardization  Reducing heterogeneity reduces complexity (Printz).  Technological approach:  Infrastructure (middleware)  Introduction of physical de-coupling, sharing and intermediation Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 8/31
  • 9. Taming Information Systems Complexity (II) Part I: Complexty  Systematic approach (« Urbanisation »):  Enterprise Architecture, seen as a company-wide practice, since it helps to align everyone towards a common target and a transformation path.  Architectural approach (hardest, at the structure level):  modularity (semantic de-coupling).  Strategic Approach (Service-Oriented Architecture):  SOA as a governance practice, reduces complexity: Cf. Parts  share & reuse II & III  Common understanding  Reduces the temporal complexity Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 9/31
  • 10. Lessons from Bouygues Telecom Part II Back-office re-engineering 2001-2005 1. Complexity the 21st century challenge for enterprises and their information system 2. Enterprise Architecture Anticipation in a complex world is not forecasting, but building a « situation potential » 3. SOA and sustainability repeatable long-term performance requires discipline / governance 4. Cloud-ready architecture Distributed, scalable, massively parallel computing resource for the whole information system Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 10/31
  • 11. Enterprise Architecture Part II: Architecture IS Re-engineering Architecture: why ?  « Urbanisation »  Communicate a vision  Component-based  Key transformation tool  Process-oriented  Favor reuse (business logic extraction)  Reduce complexity and costs  Temporal de-coupling (asynchronous message)  Support standardization  Functional de-coupling  Align stakeholders (intermediation)  Architects need to avoid  « Enterprise Architecture » complex tools & formalisms  Coherence of three domains  Sensitive to each  Strategy : goals enterprise’s maturity level  operations: processes and data  Asynchronous / diachronous  Information Systems: applications  Acts as a corporate memory and services  Visual change management  Similar topic / two views  EA is more concerned with the target  Re-engineering is a process Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 11/31
  • 12. Data Architecture Part II: Architecture  Data Model  Semantic reference: what does a customer, a bill, … mean ?  Conceptual model: how is a customer defined ?  Ontology: class hierarchy (UML)  Major business asset & key alignment tool  Data Architecture  Distribution  Formats (ex: XML)  Life cycle  Dynamic Management of Business Objects  Distribution / synchronization  Save / restore (disaster recovery)  Data flow management  E.g., network capacity planning Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 12/31
  • 13. Functional Architecture and Object-Oriented Design Part II: Architecture  Functional Architecture means to decompose:  Into functions and sub-functions, in a top-down manner  Descriptive normalization: (input, output, transformation, roles, …)  Functional Architecture is no longer self-contained(vs. 20 years ago)  A narrow focus on functional architecture leads to take business process and data distribution issues into account too late.  When functional analysis is carried too deeply, one gets “”silos”  Functional top-down is poorly suited to the efficient use of off-the-shelf software packages  Object-Oriented Design : mixing functional & data model at the IS level  Functional Architecture feeds :  Business roadmaps & « level 0 » decomposition: descriptive analysis of activities/jobs within the company  Service definition within SOA  Contributes to data architecture and business object model Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 13/31
  • 14. Service Architecture Part II: Architecture  Service = Function + Interface + Contract  Service Architecture  Design a structure (clean up the call graph)  Provide meaning (to simplify change management and reuse)  “local” SOA = service-based architecture  Often linked to technology, such as « Web Services »  A new look for an old best practice   The goal is the system (and its architecture), services are a mean  “global” SOA = build a service catalog, whose rich structure is “an architecture”  Independent from technologies (Tuxedo, procedures, …)  Reuse of previous software component reuse theory, applied to large components which are pieces of the IS  The goal is to design a reusable service catalog (the lasting asset), architecture (organization) is a mean (and varies across time) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 14/31
  • 15. Process Architecture Part II: Architecture  Design a structure on top of temporal interactions:  Events  Chaining & dependencies => business logic  Goals => processes  Describe « fractal/recursive » structure for processes  Processes / sub-processes  Process families  Sharing resources: data, GUI, …  Roles (organizational alignment)  Business process mapping is the best alignment tool between organization and information system  Process description -> services, functions, … (cf. previous slides)  Normalize / Standardize  Share / reuse / outsource  Best approach to integrate packaged software Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 15/31
  • 16. Designing a Target Architecture Part II: Architecture Functions Processes Data Lexicography Métiers Référence Objets (ontology) externe Macro-functions Macro-processes (draft) Object Lifecycle External Level 0 Reference Macro-processes External Reference Exchanges - Content Events Services Catalog Processes Update protocol Service Archi. v1 Process Archi v1 Data Archi. v1 Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 16/31
  • 17. Designing a Modular Architecture Part II: Architecture  Goal: minimize impact dispersion for new services  “Definition”: modularity is the correlation  « Distance in the code » and frequency of interaction  « Distance in the code » and « co-evolution »  Good practices :  Layered architecture (define abstraction levels)  Process Architecture (define a composition grammar)  Sharing/reuse & modularity go hand-in-hand : sub-process identification  Event-Oriented Architecture  Pub/sub is still a one of the best modular patterns  Model-Driven Architecture: careful design of « future-proof » data model  Service Architecture reduces unmanaged interactions Cf. Part III  Reification of functional architecture  Abstraction/ encapsulation Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 17/31
  • 18. Part III Image blog 1. Complexity the 21st century challenge for enterprises and their information system 2. Enterprise Architecture Anticipation in a complex world is not forecasting, but building a « situation potential » 3. SOA and sustainability repeatable long-term performance requires discipline / governance 4. Cloud-ready architecture Distributed, scalable, massively parallel computing resource for the whole information system Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 18/31
  • 19. Strategic Issues : Tomorrow’s Information System Part III: Sustainability & SOA Complexity does not mean that some challenges are not clearly visible  Information Systems 2.0 – our customers …  want their voice heard: they need a feedback mechanism  collaborate with other customers or prospects  expect Information Systems to be always on, any time on any device   Information Systems need to be personalized & predictive  Social networks analytics, Bayesian learning, …  Semantic processing : making sense from customer & partner input  Time acceleration generates more data - need to master « big data » analytical skills  Customers and end-users demand to be more autonomous  End-users have control over their own processing , write their own « apps »  IS must follow the customer wherever she goes, not the opposite !  Customer are « the architect of their own experience » → IS must become interoperable platforms Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 19/31
  • 20. Sustainable Information Systems » Part III: Sustainability & SOA  « develop today’s information services without preventing the ability to develop those for tomorrow, through the overuse of resources, or the production of un-manageable complexity».  Freely inspired from « sustainable » as defined by Brundtland Commission   (global) SOA is the only method for sustainable IS development  Not the only re-engineering method  (other approaches exist which reduce IS complexity),  but the best method to do so continuously, as a company-wide practice (with all stakeholders), a long-term progressive & measured effort, which generates its own reward  Clean-up : learn to remove/trip (classic from asset management)  Cf. Extreme programming (Agile Manifesto) :  Leveling the effort, continuous integration, favor simple designs  Continuous simplification, not a last-resort heroic attempt Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 20/31
  • 21. SOA & Governance : Part III: Sustainability & SOA Three steps:  Service Définition: build the business service catalog. Starts like a functional analysis (from business processes) – but reusability and composability is engineered during this step, trough the dialog between business and IS.  Architecture de Service: Transform a list into a hierarchical and modular structure. Classical difficulties and solutions (ex: refactoring) … to avoid a « Web Services spaghetti».  Service Intégration : the « technical » step – often confused (SOA SOI). Integration/middleware technology is quite mature nowadays  “Think globally, act locally” SOA starts with the periphery of the system and ends with the core. Data architecture is critical from day one.  Beware of the “proof of concept” which is much harder to integrate than to build   « Something you do, not something you buy » - David Linthicum  SOA Governance  its first goal is to establish the existence of shared artifacts (architecture schemas, service catalogs, roadmaps) et everyone’s role (rights and duties) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 21/31
  • 22. Sustainability’s Equation Part III: Sustainability & SOA  For a company with expected growth g, the IT budget is defined as the sum of the project budget P and the Operation budget O.  An application portfolio of size S is built, with life expectancy A  a given share (d) of the application portfolio is removed/destroyed  We suppose that the operation cost for an application that costs 1k€ is w k€  We also suppose that there is a productivity gain over the years of p%.  The usual two ratios that are of interest :  r = (P / O) = ration of build / run - usual measure R = (P / P + O)  n = Pn / P = % of the project budget spent on creating new applications  Sustainability Theorem : stable IT budget relative to company growth  n = [A (g + d) ] / (1 + (g+d) A) & r = [g + d + p +(1-d)/A] / [w (1 - d + A(g+d))]  Corollary  Easy to plug into an Excel spreadsheet  Example: w = 25%, d = 5%, p = 4%, A = 10, we get R = 42% and n = 33%. (no surprise )  How to improve r ?  Clean-up old applications  Increase productivity for operations Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 22/31
  • 23. SOA as a discipline : Architecture-oriented Services Part III: Sustainability & SOA  How get reusability, across the enterprise (sharing) and across time (reuse) ?  Abstraction  Trade-off between too generic and too specific  Modularity  Relies on process and event architecture  Composability  Horizontal (Process) : Common (Pivotal) Object Model  Vertical (Functional) : Parametric Polymorphism   API Model Discipline  Manage versions !  API (meta) data model : worth some effort !  Each CIO becomes a software editor  This is more an art than a science  Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 23/31
  • 24. MDA: where Abstraction and Modularity start Part III: Sustainability & SOA  Data model is the key factor for modularity & flexibility  A few rules drawn from experience:  Reify links  Reify roles  Hierarchy products vs. complex ontologies  Group/individual substitution  Work on the meta-model  Think « object »   Ontology before description, encapsulation (hiding vs. transparency)  The data model defines the IS « situation potential »  Difficulty of strategic planning in a complex world   scenario practices: what if …  … we were … one of our competitor ?  … we outsourced this activity ?  … we provided this service to other companies (SaaS) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 24/31
  • 25. Part VI 1. Complexity the 21st century challenge for enterprises and their information system 2. Enterprise Architecture Anticipation in a complex world is not forecasting, but building a « situation potential » 3. SOA and sustainability repeatable long-term performance requires discipline / gouvernance 4. Cloud-ready architecture Distributed, scalable, massively parallel computing resource for the whole information system Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 25/31
  • 26. Cloud Computing : Scalable Resources & Services Part IV: Cloud-ready Architecture  Two angles :  Cloud as a computing resource : a CIO issue  Cloud as a service platform : joint ownership  A « new » kind of resource  The heir of grid and « commodity servers »  Fast provisioning  A new kind of business model  CAPEX to OPEX (rent)  Full scalable (up and down) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 26/31
  • 27. The Innevibilaty of Cloud Computing  Part IV: Cloud-ready Architecture  Better TCO  Commoditization  economy of scale (operations)  Utilization rate (from sharing)  PUE (Power Usage Effectiveness)  Parallel computing performance  Example from the movie industry  MapReduce & Hadoop   Distributed computing reliability  Massive redundancy …  State-of-the-art availability (99.9% to 99.99%)  Flexibility  Scalability  Pay-as-you-grow Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 27/31
  • 28. Don’t Confuse Clouds with Smoke  Part IV: Cloud-ready Architecture  Data privacy & security  A major concern for most citizens  Not all data centers are equal in front of hackers  Data architecture must distinguished hot/warm/cold  Brewer’s Theorem (Distributed computing is still hard )  Consistency (all views obtained through different process represent the same information)  High-availability (relies on massive replication)  Fault-tolerance (disaster recovery)  Cloud, Caching and Peer-to-Peer Architecture  « Cloud projection over the edges »  Digital homes future architecture Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 28/31
  • 29. SOA is not scale-free / speed of light is still a constraint  Part IV: Cloud-ready Architecture  Latency is still a constraint  Tens of ms to access the cloud  Performance is not guaranteed (or price is no longer cheap)  Service « scale » (size) is crucial  SOA is not scale-free  A classic rule of « performance management » for SOA  Even more important with a cloud-architecture  RCA: Rich Client Architecture  Used for SaaS and MMORPG … for a reason   Applies to heavy transactional contexts Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 29/31
  • 30. Cloud-ready Architecture Part IV: Cloud-ready Architecture  A cloud-ready architecture supports progressive migration of both front-office & back-office services to the cloud  SaaS for front-office is easier : way to start …  Portal integration, then mash-up  Variation of a service-oriented architecture  événements Applications  Requires to: interactives Processus Batchs  Leverage Web technology (ex: portail)  “think platform” Infrastructure (ex: ESB synchrone) Annuaire cf. “What would Google Do” UDDI service service Propriété clés:  Build catalogs of • Stateless •Gestion Web APIs Mash-ups explicite du contexte Infrastructure (ex: ESB asynchrone) •Contrat de service Applications Ressources « Cloud » Référentiels (Internet) (données) Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 30/31
  • 31. Conclusion  Models are key for:  agility  situation potential (seizing opportunities)  cost management  Innovation in the digital world happens in the source code  agile development (end user / designer / developer)  Fail often to succeed early (Eric Riess)  Lean IT: no delays, quality in, fast delivery, less code, short intervals (small batches), customer participation, VSM & « muda » removal  You should prepare to the advent of massively parallel computing  Cloud or multi-core  Even for traditional back-office functions  From VNG to DCG  Yves Caseau – Complexity, Modularity, Abstraction – November, 2011 31/31