2014 - next generation soa - a real-world guide tomodern service-oriented computing

Upload: roque-bezerra

Post on 13-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    1/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    2/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    3/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    4/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    5/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    6/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    7/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    8/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    9/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    10/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    11/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    12/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    13/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    14/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    15/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    16/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    17/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    18/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    19/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    20/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    21/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    22/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    23/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    24/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    25/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    26/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    27/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    28/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    29/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    30/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    31/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    32/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    33/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    34/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    35/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    36/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    37/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    38/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    39/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    40/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    41/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    42/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    43/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    44/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    45/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    46/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    47/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    48/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    49/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    50/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    51/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    52/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    53/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    54/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    55/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    56/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    57/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    58/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    59/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    60/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    61/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    62/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    63/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    64/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    65/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    66/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    67/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    68/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    69/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    70/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    71/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    72/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    73/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    74/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    75/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    76/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    77/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    78/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    79/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    80/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    81/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    82/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    83/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    84/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    85/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    86/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    87/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    88/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    89/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    90/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    91/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    92/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    93/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    94/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    95/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    96/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    97/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    98/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    99/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    100/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    101/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    102/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    103/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    104/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    105/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    106/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    107/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    108/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    109/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    110/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    111/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    112/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    113/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    114/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    115/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    116/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    117/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    118/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    119/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    120/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    121/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    122/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    123/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    124/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    125/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    126/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    127/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    128/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    129/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    130/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    131/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    132/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    133/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    134/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    135/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    136/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    137/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    138/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    139/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    140/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    141/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    142/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    143/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    144/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    145/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    146/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    147/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    148/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    149/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    150/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    151/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    152/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    153/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    154/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    155/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    156/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    157/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    158/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    159/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    160/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    161/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    162/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    163/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    164/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    165/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    166/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    167/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    168/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    169/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    170/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    171/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    172/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    173/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    174/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    175/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    176/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    177/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    178/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    179/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    180/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    181/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    182/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    183/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    184/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    185/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    186/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    187/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    188/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    189/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    190/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    191/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    192/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    193/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    194/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    195/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    196/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    197/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    198/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    199/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    200/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    201/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    202/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    203/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    204/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    205/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    206/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    207/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    208/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    209/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    210/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    211/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    212/298

    211

    Each role has specific deliverables and plays a particular set of functions ineach phase in the SOA project lifecycle.

    Summary of Key Points

    ! Each SOA project progresses through a variety of stages

    ! A number of roles are necessary to effectively implement SOA governance

    8.3 SOA Governance Fundamentals

    The primary business goal of SOA governance is to ensure that an SOAinitiative achieves its targeted business outcome. This is achieved by

    establishing an SOA governance system, which acts as a meta-decision systemthat an organization puts in place to control and constrain decision-makingresponsibilities related to the adoption and application of service-orientation.The foundation of an SOA governance system resides within an SOAGovernance Program Office (SPGO) responsible for creating andadministering an SOA governance program.

    There are several ways in which the SPGO may be established in anorganization.

    ! Centralized Enterprise SGPO # a single governance body that oversees SOAgovernance on behalf of the entire IT enterprise.

    ! Centralized Domain SGPO # a single governance body that subjects alldomain service inventories on to a common SOA governance system.

    ! Federated Domain SGPOs # in this model, a central overarching SGPOexists in addition to individual SGPOs, each responsible for a separate domain

    service inventory.

    ! Independent Domain SGPOs # in absence of a central overarching SGPO,each domain service inventory has its own SGPO, which has full governanceauthority and jurisdiction over that domain.

    The SGPO exists to create and maintain an SOA governance program. Thetask of realizing it can be divided into three basic steps:

    1. Assessing the Enterprise (or Domain) , which is focused on:

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    213/298

    212

    ! Current Governance Practices and Management Styles

    ! SOA Initiative Maturity

    ! Current Organizational Model

    ! Current and Planned Balance of On-Premise and Cloud-based ITResources

    2. Planning and Building the SOA Governance Program # primaryelements include:

    ! SOA Governance Precepts (i.e. rules, policies and standards)

    ! SOA Governance Processes

    ! SOA Governance Roles

    ! SOA Governance Tools! SOA Governance Roadmap

    3. Running the SOA Governance Program that includes the followingsteps:

    ! Collect the right metrics and have the right people use them

    ! Provide transparency and foster collaboration

    ! Ensure consistency and reliability

    ! Ensure compliance and establish incentives! Provide education and communication

    These elements establish a solid foundation for a successful SOA governanceprogram.

    Summary of Key Points

    ! The SOA Governance Program Office should be established to administer the

    SOA governance program

    ! The SGPO can be organized in a variety of ways

    8.4 Governing SOA Projects

    As discussed earlier, SOA projects typically go through a number of stages.The SOA Governance Program Office establishes entry and exit criteria foreach stage. An effective approach to achieving this is to ensure that the quality

    and completeness of outputs from each individual lifecycle stage are reviewedand approved before proceeding to the next stage. To achieve this, a number

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    214/298

    213

    of review processes based on criteria established by related precepts areestablished.

    Each SOA project stage comes with a distinct set of precepts, processes, and

    roles associated with it. There are some that are common across most, if notall the stages.

    ! Precepts

    ! Service Profile Standards # services within a given serviceinventory need to be consistently documented

    ! Service Information Precepts # service information primarilyrepresents business-centric data to which clear meaning and contexthas been assigned

    ! Service Policy Precepts # information describing operationalelements of a service

    ! Logical Domain Precepts # rules and guidelines for services basedon different types of service models

    ! Security Control Precepts # services unique security requirementsand concerns

    ! SOA Governance Technology Standards # SOA governancetechnology products are standardized for the regulation of services within a service inventory boundary

    ! Metrics

    ! Cost Metrics # metrics describing costs associated with SOAinvestments and ongoing work

    ! Standards-related Precept Metrics # metrics derived from theresults of corresponding review processes

    ! Threshold Metrics # hard limitations on the design-time orruntime usage or management of a service

    ! Vitality Metrics # measure of a service s on-going behavior

    We will not discuss detailed governance mechanisms applied in each SOAproject phase, as this is covered in great detail in a separate book.

    Summary of Key Points

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    215/298

    214

    ! SOA governance projects are governed through a variety of precepts andprocesses

    8.5 Service Information and Policy Governance

    Service information governance is the practice of identifying and evolvinggovernance controls that ensure the provision of timely and accurateinformation. There is a distinct difference between data, information, andknowledge. SOA governance can help ensure that services provide clearunderstating of data and its meaning and that service consumers can trust thisinformation without requiring knowledge of its origins.

    Policies represent information related to service s non-functional

    requirements, security, and other limitations. They can be described in humanor computer readable formats. Many service management platforms caninterpret and enforce such policies at runtime.

    A number of precepts are required to position and regulate serviceinformation and policy content.

    ! Enterprise Business Dictionary/Domain Business Dictionary # an officialreference for definitions of information terms and concepts that are core to

    the organization s business. There may be an Enterprise Business Dictionaryand a Domain Business Dictionary established.

    ! Service Metadata Standards # data about a service focused on establishingits functional meaning and context. This typically includes technology,functional, programming logic, and quality of service information.

    ! Enterprise Ontology/Domain Ontology # the information at the basis ofontology that originates from or relates to information in the businessdictionary as well as service metadata. Typical concern is with ensuring thatthe ontology is current and in alignment with business dictionary and servicemetadata content.

    ! Business Policy Standards # a set of standards related to how business isconducted. The expectation is that any policy (human or machine-readable)used within a given service inventory be standardized in terms of technology,tooling, and vocabulary.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    216/298

    215

    ! Operational Policy Standards # rules and guidelines that establishconstraints and requirements for how services operate and interoperate atruntime. Policies that are in use are expected to be standardized within theservice inventory boundary.

    ! Policy Centralization # policy definition needs to be centralized when itneeds to be shared by multiple service contracts.

    There is a number of governance processes that support the application of theprecepts described above. They provide controls for maintaining the qualityand alignment of service information and related policies.

    ! Data Quality Review # ensures data correctness.

    ! Communications Quality Review # addresses the communications quality ofdata.

    ! Information Alignment Audit # ensures that the meaning is kept consistentthroughout the scope in which content is utilized.

    ! Policy Conflict Audit # resolves policy domain overlaps.

    To attain the most effective service-oriented platform, an organization shouldattempt to establish a comprehensive set of enterprise business models. Toachieve this, the following steps should be undertaken.

    ! Establish a Service Information Governance Council # chartered withproviding governance over information standards and is comprised ofmembers or department representatives from all affected lines of business.

    ! Assign Business Information Custodians # support creation andmaintenance of business dictionary and ontology.

    ! Assign Value to Business Information # assign individual terms and business entities a value ranking indicating its relative importance to theorganization.

    ! Relate Service Information Governance to Master Data Management # ensure that if MDM is in use within an IT enterprise that is adopting SOA, it

    should be related to and incorporated with service information and policygovernance precepts and processes.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    217/298

    216

    Once all the precepts, processes, and governance mechanisms are established,service information and policies can be effectively governed across the entireSOA project lifecycle.

    Summary of Key Points

    ! Service policies and information are governed through a variety of preceptsand processes

    8.6 SOA Governance Vitality

    Once deployed and in use, services and supporting technologies become livingassets. The SOA governance program must therefore provide a means by

    which these assets are routinely reviewed, kept current and accurate and,most importantly, relevant to business needs. To address this evolutionaryaspect, the SOA governance program needs to make the notion of vitality partof the SOA governance system being employed.

    To accomplish this, the SOA program must implement a series of vitalitytriggers as a mechanism of notification and reaction. They representpre-determined events and conditions that execute pre-determined activitiesas part of a vitality process. There are five common types of vitality triggers:

    ! Strategic Adjustments # changes to the organization s business direction or vision; IT changes pertaining to technology and resources.

    ! Industry Shifts # changes in business law, governmental policy, or eveneconomic or political factors; technology shifts that occur within proprietary vendor platforms and product lines, as well as industry technology standardscommunities.

    ! Metrics # metrics related to performance of various parts of an SOAecosystem; metrics exposing lack of compliance with industry or ITregulations.

    ! Organizational Shifts # organizational events that affect the IT enterprise,deliberately or inadvertently.

    ! Periodic # pre-defined vitality activities that are carried out at scheduled

    intervals; review of assets using a pre-defined timescale.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    218/298

    217

    A set of processes should exist to ensure SOA asset vitality is being addressed.They are comprised of a series of activities that are carried out in response tocertain vitality concerns or requirements. They ensure execution of different vitality activities, which include:

    ! Identify Activity # centers on capturing relevant information surroundingthe trigger and the circumstances of its execution.

    ! Assess Activity # encompasses tasks that focus on determining the effect ofcarrying out a refresh, prior to moving on to the actual Refresh activity.

    ! Refresh Activity # governs the actual actions performed in response to thepreviously identified vitality concern.

    ! Approve Activity # SOA Program Governance Office review that can resultin the acceptance or rejection of the refresh plan.

    ! Communicate Activity # the communication of the planned refresh to theaffected stakeholders, project teams, and others involved with the targetedasset.

    Together, the vitality triggers and activities that are kicked off in responseensure that the SOA program remains current and viable. SOA program vitality is the final element that underlines and supports all the previouslydefined SOA governance mechanisms.

    Summary of Key Points

    ! SOA governance program must implement a series of vitality triggers todetermine qualifying events

    ! In response to a trigger, a series of activities can be executed

    8.7 Next Generation SOA Governance

    As discussed in previous chapters, evolution of the service-oriented computingintroduced a number of new technology elements, practices, and patterns.These had direct impact on the state of SOA governance. It had to adapt to therapidly changing service-oriented computing space. As a result, new SOA

    governance practices and mechanisms had to be introduced.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    219/298

    218

    The extensions to the existing SOA governance attributes are rooted in thefoundation described throughout this chapter. Instead of establishingradically new approaches, they aim to coexist with and extend current SOAgovernance program implementations. However, the shifts in theservice-oriented computing space necessitated expansion of the SOAgovernance domain and scope.

    Each next generation architecture element creates a need for related set ofgovernance mechanisms and practices. The subsequent sections discussspecific precepts and processes that are introduced in each stage of an SOAproject.

    Business Process Management

    BPM has a profound impact on SOA. When applied correctly, it cansignificantly enhance the value SOA already offers. Therefore, SOAgovernance mechanisms should concentrate on maximizing the alignment between the two disciplines but do so intelligently and for the right reasons.Table 9.1 discusses how this can be accomplished in each SOA project stage.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    220/298

    219

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    221/298

    220

    SOA governance mechanisms related to Business Process Management.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    222/298

    221

    The BPM approaches, tools, and technologies offer significant synergies withSOA and its established precepts and processes. While this close relationshipshould be exploited to its full potential, it will undoubtedly become evenstronger, as the technology evolves and maturity increases on both sides.

    Business Rules Engines

    Business Rules Engines bring a new dimension to service-orientation. Theyprovide capability to externalize business rules that services need to execute aspart of their logic. The rules may be maintained by external parties outside ofthe organization that owns and manages the service. The changes to the rulesimplemented through a rules engine need to be synchronized with the serviceinterface and other business logic the service may execute. The service itselfmay be reduced to just a call to a rules engine.

    The variety of rule engine technologies that exists today demands a careful setof guidelines to be crafted in order to determine which platform is the mostappropriate to use in which situation. SOA governance mechanisms need to beput in place to help guide rule service design and development in the mosteffective way. Table 9.2 specifies which existing precepts and processes needto be expanded to accommodate Business Rule Engine technology and

    whether new ones need to established or not.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    223/298

    222

    SOA governance mechanisms related to Business Rules Engines.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    224/298

    223

    The business rule engine technology is becoming more pervasive andlightweight. The evolutionary path of this platform points to significantsynergies with ESB and BPM technologies. The precepts and processesoutlined above may not be necessary in the future if rule engines become fullyintegrated into the rest of SOA platform.

    Event Driven Architecture

    Event Driven Architecture represents a shift from typical service-orientedapproaches. In its simplistic form, it can be viewed as asynchronous SOA. Inits most complex representation, other technologies such as ESB, BPM, business rules engines, and complex event processing platforms may be partof the whole picture.

    Event driven services and their consumers need to be governed from asomewhat different perspective than their typical counterparts. Specificprovisions related to the complex and asynchronous nature of EDA should beadded to the SOA governance mechanisms. Table 9.3 discusses them in detail.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    225/298

    224

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    226/298

    225

    SOA governance mechanisms related to Event Driven Architecture.

    As everything else, Event Driven Architecture continues to evolve. ESBs arestarting to provide support for events and complex event processing. Vendorsare introducing event processing platforms. Registries are building in support

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    227/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    228/298

    227

    The Business Architecture governance body is typically comprised of businessand IT executives. Ideally, an Enterprise Architecture or SOA governancefunction should be represented on the committee.

    Similar executive steering committees may already exist in the organization. Ifthat is the case, the business architecture governance function can beundertaken by one of them. Alternatively, the SGPO can add this function toits charter but representatives from the business community should be addedin order to align SOA and business strategies.

    Case Study Example

    Once RYLC established its SOA program, the chief architect realized that itlacked structured governance. A number of services were created andcontinued to evolve with little oversight. The developers and architects working on SOA projects complained that there was little guidance availableto them and they lacked proper documentation. The funding for services being constructed was also unclear. Many projects complained that they

    were unfairly taxed by being the first ones implementing services slated to be reused by others later. Project managers were unclear on whatmethodologies needed to be followed to create a service, what deliverables were necessary, and how changes to existing services had to be introducedand implemented.

    In response to these concerns, the chief architect decided to institute anSOA Governance program. He presented the case to the CIO to attain initialfunding and begin planning the SOA Governance program. As part of the

    need for SOA Governance, he described RYLC as a Service

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    229/298

    228

    Aggressive organization and outlined the risks associated with this type ofapproach to SOA.

    At the outset, a central SOA Governance Program Office (SPGO) wasestablished, as shown inFigure 8.3.

    Figure 8.3. RYLC established a central SGPO responsible for itsenterprise service inventory.

    The SGPO was chartered with establishing all the SOA governance precepts

    and processes, setting up a standard funding model, and continuallyrevitalizing the program. The CIO decided to let the chief architect chair theSGPO and include representatives from each IT department as well as theenterprise architects responsible for various domains including data,security, infrastructure, and common assets.

    The SGPO decided to establish a central platform funding approach to helpRYLC better manage its SOA platform investment and demand. It alsorecommended establishing a hybrid funding model for service delivery work.

    The SGPO felt that a combination of these models would provide the bestplatform for RYLC to streamline its SOA program.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    230/298

    229

    Next, SGPO tackled the SOA project lifecycle. It defined a comprehensiveset of precepts and processes along with the corresponding roles for eachstage in the lifecycle. Additionally, a set of operational metrics were definedto measure how well each precept and process was performing.

    To alleviate the issue of service discoverability and lack of centralizeddocumentation storage, SGPO recommended adopting one of the existingRegistry and Repository tools. A separate team was chartered withexploring the existing product landscape and making a recommendation. Itdeveloped a comprehensive roadmap describing what the SOA Governanceautomation goal state looked like and what capabilities had to be present.Based on this roadmap, the team evaluated a number of commercial andopen source products. The final recommendation was to purchase aRegistry / Repository platform from the same vendor that supplied thecompany s ESB in order to leverage synergies and built-in integrations between the two products. However, the proposed implementationapproach took a number of deliberate steps prior to fully implementing allthe features and introducing an end-to-end SOA Governance automation.These steps included:

    1. Building out Registry / Repository infrastructure and installingsoftware

    2. Establishing a metadata model that fully describes all servicemetadata

    3. Registering all existing services

    4. Allowing other groups to start registering their own services andrequest access to existing services

    5. Fully integrating Registry / Repository with ESB

    6. Automating all established processes throughout each SOA projectlifecycle stage

    Since RYLC wanted to leverage SOA as a strategic tool to gain competitiveadvantage and become more agile, the CIO proposed to extend the SOAGovernance to the business. He proposed that an executive steeringcommittee responsible for aligning business and IT goals be created. RYLCCEO, who was already impressed with the results achieved through the SOAprogram, concurred and sanctioned establishing this new body. The new ITSteering Committee included the CIO, chief architect, and all businessdivision heads, COO, and CFO. The CEO specifically chartered the group to

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    231/298

    230

    work closely with the SGPO in aligning business strategies with SOA andmeasuring results.

    Summary of Key Points

    ! Existing SOA governance precepts and processes need to be extended inresponse to technology and architecture evolution

    ! Business Architecture should be closely aligned with SOA and SOAgovernance

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    232/298

    231

    SOA Industry Standards

    1. Executive Summary

    This chapter is intended to serve as a guide to help readers differentiate andselect appropriate SOA standards based on their specific needs. Thespecifications introduced and positioned here include:

    o The OASIS Reference Architecture for SOA Foundationo The OMG Service Oriented Architecture Modeling Language (SoaML)

    Specificationo The Open Group SOA Ontologyo The Open Group SOA Governance Frameworko The Open Group Service Integration Maturity Model (OSIMM)

    These specifications are discussed in detail and contrasted with each other.

    2. What are Architectural Standards?

    System architecture is a formal description of a system, or a detailed plan ofthe system at component level to guide its implementation. Architecturerepresents the structure of components, their interrelationships, and the

    principles and guidelines governing their design and evolution over time. Italso ensures a common understanding of what exists now or will be built inthe future. Architecture helps us compose complex solutions from simpler building blocks. Architectural standards [1] are needed to address customerarchitecture and deployment considerations. They are directed towards ITarchitects and oriented towards consistency rather than interoperability.Infrastructure standards are normative, product-driven, conformance-centricand interoperability-focused.

    Figure 1. The landscape of architecture standards

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    233/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    234/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    235/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    236/298

    235

    participants representing over 600 organizations and individual members in100 countries.

    The OASIS SOA Reference Model Technical Committee is responsible

    for developing a common SOA reference model (RM) and SOA architecture(RA). The reference model defines a set of SOA-related entities andrelationships, intended to provide a common understanding and language forSOA concepts, while the associated reference architecture comprises of

    o Business via Service view which lays the foundation forconducting business in the context of Service Oriented Architecture

    o Realizing Services view which addresses the requirements forconstructing a Service Oriented Architecture

    o Owning Service Oriented Architecture view which focuses onthe governance and management of SOA-based systems.

    OASIS has several member sections that focus on specific technical areasincluding:

    o The Open Composite Services Architecture (CSA) MemberSection # advances open standards intended to simplify SOAapplication development

    o The Semantic Execution Environment (SEE) TechnicalCommittee # proposes a semantic Web Services platform to addressthe problems of interoperability between data and behavior acrossdiverse organizations

    o The SOA for Telecom Technical Committee (SOA-TEL TC) # plans to identify gaps in standards coverage for using ServiceOriented Architecture (SOA) techniques in a telecom environment

    o The SOA End-to-End Resource Planning Technical

    Committee (SOA EERRP TC) # focuses on the supply chain, withparticular reference to business quality of service, SLA managementand supplier credentials.

    OMG

    The Object Management Group membership includes hundreds oforganizations, with half being software end-users in over two dozen verticalmarkets, and the other half representing virtually every large organization in

    the computer industry and many smaller ones. OMG is responsible for theUnified Modeling Language $ (UML ( ) and Model Driven Architecture (

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    237/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    238/298

    237

    While the potential benefits of SOA are clear, the standards picture still looksless so. Forrester Research has counted around 115 standards floating aroundin the SOA space in its most recent study on that topic. It also has found that just confirming which vendors support which standards is virtually impossible,mainly because of missing compliance tests. Since many of these standardsare not yet fully mature, the main challenge is to find an architecturalframework to help maintain integrity and integration while standardscontinue to evolve.

    Technical experts and architects have to navigate their adoption of standardscarefully until they mature and become widely accepted. Standards such as

    SOAP and WSDL have already been well-adopted and others like WS-Securityare being increasingly accepted. Popular standards include SOAP, WSDL, WS-I Basic Profile, UDDI, WS-Security, WS-BPEL, BPMN, WSRP, XMLSchema, XSLT, XPath, XQuery, XML Signature and XML Encryption.

    There are many new terms emerging in the SOA space due to the arrival ofdifferent players including IT service and solution organizations, consultingcompanies, standards consortiums, academic institutions, governments,customers, etc. This rapid expansion creates an urgent need for universal sets

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    239/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    240/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    241/298

    240

    models. Vendors and various BPM platforms support one or both of theselanguages.

    Additionally, there may be a variety of Domain Specific Languages (DSL)

    defined for a variety of domains. Some of these DSLs are incorporated intostandards, while others remain on their own. DSLs, as any other modelinglanguages, help people working within the domain standardize the syntax,notation, and semantic of the information being presented by each model.

    Concrete/Solution / Physical Architectures # A concrete architecture isa physical instantiation of a reference architecture achieved by substitution ofthe general, logical, and abstract elements of the template with concrete orphysical realizations of vendor products and instances of technical products,standards, protocols, and design/architectural decisions. Industries caninstantiate concrete architectures for their usage context. Concrete/solutionarchitectures are used directly to drive project implementations.

    While we already briefly discussed SoaML, the next section is dedicated tocovering it in detail.

    4. Service Oriented Architecture Modelling Language (SoaML) [2]

    For many years, UML (unified modeling language) has been the key tool for visually specifying, modeling, representing and communicatingobject-oriented software design. With the continued adoption ofservice-orientation for enterprise engineering, there was a need for UML to beextended to accommodate the unique principles and patterns of the serviceparadigm. To address this need, OMG created the SoaML specification.SoaML defines a UML profile and a metamodel that extends UML to supporta range of modeling requirements for SOA. The key requirements include the

    specification of a system of services, individual service interfaces and serviceimplementations.

    The SoaML metamodel extends the UML metamodel to support servicemodeling. This extension is intended to support different service modelingscenarios, such as single service description, service-oriented architecturemodeling, or service contract definition. SoaML has been designed to support both the IT and business perspectives of SOA. A UML profile customizes UMLfor a specific domain or purpose by using extension mechanisms such as

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    242/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    243/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    244/298

    243

    The simple interface based approach uses a UML interface to specify aone-way service interaction. This focuses attention on a one-way interactionprovided by a participant on a port represented as a UML interface. Theparticipant receives operations on this port and may provide results to thecaller. This approach can be used with &anonymous ' callers and theparticipant makes no assumptions about the caller or the choreography of theservice.

    The service contract based approach extends a UML collaboration tospecify a binary or n-ary service interaction. This defines service specificationsthat describe the roles each participant plays in the service (such as providerand consumer) and the interfaces they implement to play that role. These

    interfaces are the types of ports on the participant, which obligates theparticipant to be able to play that role in the service contract. The servicecontract based approach extends a UML collaboration to model the structuralpart of the service interaction. The approach can be used to specify services in which there is a contractual obligation, i.e. an agreement, between two ormore parties. This is the case where you have an interaction pattern thatinvolves an exchange of messages specifying (simple) interfaces on both sides.

    The service interface based approach extends a UML class to specify a

    binary or n-ary service interaction. This is quite similar to the service contract based approach in that it also focuses on binary and n-ary service interactions,requiring that a set of related (simple) interfaces is specified as one servicespecification. Whereas the service contract based approach prescribes usingUML collaboration, the service interface based approach focuses on UMLcomponents and allows the interconnection between these componentsthrough ports. In order to connect components through ports, the ports mustspecify both required and provided interfaces. The service interface based

    approach introduces the concept of a service interface and a conjugateservice interface to type the ports on the provider and consumer siderespectively.

    Both the service contract and service interface based approaches entail thespecification of simple interfaces, typically one for each of the rolesparticipating in the service interaction. Thus, a service contract or a serviceinterface can be seen as an extension of the simple interface based approach.

    An Illustration - The Dealer Network Architecture example from the SoaMLspecification is explained here. The services architecture for this example is

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    245/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    246/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    247/298

    246

    It should be noted that some of the language constructs defined in SoaML fiton both the business and IT level. In particular, this applies to participantsthat are used to define the service providers and consumers in a system. At the business level, the participants typically represent business organization unitsor roles, whereas on the IT level the participants typically represent ITsystems or software components. When a participant acts as a provider, itcontains service ports, and when a participant acts as a consumer, it containsrequest ports.

    SoaML is agnostic to the choice of modeling formalisms to define behavior.The specification states that any UML behavioral constructs can be used todescribe behavior, e.g. service choreographies, and other formalisms, e.g. EPC

    (event processing chain), business process modeling notation (BPMN), UML,BPEL (business process execution language), etc. The SoaML specificationprimarily describes the structure of the service architecture.

    SoaML goals are:

    o Intuitive and complete support for modeling services in UMLo Support for bi-directional asynchronous services between multiple

    parties

    o Support for Services Architectures where parties provide and usemultiple services

    o Support for services defined to contain other serviceso Easy ability to map to a business process specification or become a part

    of ito Compatibility with UML, BPDM and BPMN for business process

    modelingo Direct mapping to web serviceso Top-down, bottom up or meet-in-the-middle modelingo Design by contract or dynamic adaptation of serviceso Ability to specify and relate service capability with its contracto No changes to UML notation

    The SoaML modeling language was designed to generate services directlyfrom models. It provides a baseline modeling language for specification of anyservices within a service oriented environment, including cloud-based services.The SoaML language specifies some twenty main extensions to UML that

    provide key language constructs for specifying the structure of services.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    248/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    249/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    250/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    251/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    252/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    253/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    254/298

    253

    availability, reliability, manageability, scalability, latency, governance, andintegration capabilities. The underlying requirements that determine thecapabilities SOA supports are determined by:

    o A set of service requirements that includes business (functional) andnon-functional requirements of a service

    o Service requirements result in the documented capability that a serviceneeds to deliver or is expected to deliver

    o The provider view of a service requirement is the business andtechnical capability that a service needs to deliver given the context of allof its consumers

    o The consumer view of a service requirement is the business and

    technical capability that the service is expected to deliver in the context ofthat consumer alone.

    A service requirement may be addressed through a combination of layers,each of which has a specific responsibility. This is typically defined in the SOAReference Architecture. Services themselves have a contract element andfunctional element. The contract defines what the service does for consumers, while the functional element defines how the service is implemented. Theservice contract is integrated with the underlying functional element through

    a binding component that hides the physical implementation of the servicefrom its consumers, thereby allowing the physical implementation to bechanges without breaking the service contract.

    This model addresses ability to service enable legacy assets, new assets,services composed from other services or infrastructure services. For eachlayer, there is a specific mechanism by which the service requirementsinfluence that layer. The identification of service requirements and themapping of those requirements to each of the layers in the SOA Reference Architecture is a key element for implementing SOA in an enterprise.

    Figure 8. Nine Layers of the SOA Reference Architecture

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    255/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    256/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    257/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    258/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    259/298

    258

    compelling IT related reason behind the use of such services, they are notgenerally tied back to a business process and, as such, do not warrant arigorous analysis required for business services.

    In addition to being an important template for defining an SOA solution at alogical level, the SOA Reference Architecture is also a useful tool in the designof vendor neutral SOA solutions. This is because it enables the objectiveidentification of SOA infrastructure requirements. The SOA Reference Architecture provides a well-factored decomposition of the SOA problemspace, which allows architects to focus on those parts of an SOA solution thatare important in the context of the problem they are solving and to map therequired capabilities onto vendor product capability rather than trying to

    reverse engineer an SOA solution architecture from the capability of aparticular vendor s products. This set of requirements can be used to betterleverage various capabilities provided by a mix of different vendors that mayoffer the same architectural building blocks. Using the same SOA Reference Architecture we can deliver SOA business services based on the samedeployment framework.

    Layer 4: Business Process Layer

    In a service-oriented world, business capabilities are realized by businessprocesses or collections of business processes. These business processesinclude service orchestrations and compositions, as well as the ability to insert&human intervention ' and support long-living transactions. In particular,compositions and choreographies of services exposed in Layer 3 are defined inthis layer.

    The evolution of service composition into flows, or choreographies of services bundled into a flow act together to establish an application. These applications

    support specific use cases and business processes. Visual flow compositiontools can be used to design application flows. Figure 10 shows how a BusinessProcess &P ' can be implemented using Services A, B, C and D from ServicesLayer. Process P contains the logic to sequence and orchestrate serviceinvocation and execution. The services that are aggregated as a businessprocess can be an individual service or a composite service.

    Figure 10. Process composed from a variety of services

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    260/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    261/298

    260

    From the bottom-up perspective, after we have created a set of assets, we would like to leverage them in a meaningful business context to satisfycustomer requirements. The flexibility and extensibility of service compositionguided by business requirements and composition rules enable businessprocess to address different types of customer pain points by reusing serviceassets.

    From the interaction perspective, the business process layer communicates with the consumer layer (a.k.a. presentation layer) to gather inputs from anddisplay results to various actors (e.g. end-user, decision makers, systemadministrator, etc.) through Web portals or business-to-business (B2B)interfaces. Most of the control flow messages and data flow messages of the

    business process may be routed and transformed through the integration layer.The structures of the messages are most often defined by the data architecturelayer. The KPIs for each task or process could be defined in QoS and businessperformance layer. The design of service aggregations is guided by theGovernance layer. Of course, all the services should be represented anddescribed by the Services Layer in the SOA Reference Architecture.

    From the technical perspective, dynamic and automatic business processcomposition poses critical challenges to researchers and practitioners in the

    field of Web services. Business processes are driven by business requirementsthat typically tend to be informal, subjective, and difficult to quantify.Therefore, it is critical to properly formulate the descriptive and subjectiverequirements into quantifiable, objective, and machine-readable formats inorder to enable automatic business process composition and execution. Inaddition, the current web service specifications generally lack ability to definecomprehensive relationships among business entities, business services, andoperations. These relationships may be important to optimize business

    process composition and execution. How to clearly specify searchrequirements to discover the most appropriate Web services candidatesremains a challenge.

    Lastly, a typical business process generally requires multiple web services tocollaborate in order to address its needs. Therefore, each service not onlyneeds to satisfy individual requirements, but also needs to coexist with otherservices in order to fit within the overall composed business process. Thissuggests that the entire business process needs to be optimized prior toexecution.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    262/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    263/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    264/298

    263

    An ESB provides a location-independent mechanism for integration. Theintegration that occurs here is primarily the integration of the &functional ' layers in the SOA Reference Architecture (layers 2 through 4). For example,this is where the binding (late or otherwise) of services occurs for process

    execution. This allows a service to be exposed consistently across multiplecustomer-facing channels such as Web, IVR, XML client, mobile, etc. Thetransformation of response to HTML (for Web), Voice XML (for IVR), XMLString, wireless mark-up language can be done via XSLT or other built-intransformation functionality supported by the ESB platform.

    The integration layer provides a level of indirection between the consumer offunctionality and its provider. A service consumer interacts with the serviceprovider via the Integration Layer. Hence, each service interface is only

    exposed via the integration layer (e.g. ESB), never directly. Consumers andproviders are decoupled, and this decoupling allows seamless integration ofdisparate systems into new solutions.

    Business Rules and Integration Layer

    As widely known, business rules are a cross-cutting architectural concern.They need to be consistently applied across the multiple layers in SOA or overtime. The integration layer provides a common business rules capability that

    can be used by the ESB and the other layers in the SOA Reference Architecture.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    265/298

    264

    The integration layer also incorporates the support for runtime service virtualization using registry. Service virtualization abstracts (decouples) thelocation of services for consumers. Services are exposed and can be discoveredthrough a registry, but the exact location is hidden to support versioning,change of service locality and administration, without impacting theconsumer.

    Layer 7: Quality of Service (QoS) Layer

    SOA contains inherent characteristics that exacerbate existing QoS concernsin computer systems. They include increased virtualization / loose coupling, widespread use of XML, composition of federated services, heterogeneouscomputing infrastructures, decentralized SLAs, need to aggregate IT QoSmetrics to produce business metrics, etc. These characteristics createcomplications for QoS that require attention within any SOA solution. TheQoS layer provides the service solution lifecycle processes with the capabilitiesrequired to ensure that the defined policies and non-functional requirementsare addressed.

    The QoS layer deals with issues like monitoring and capture of service andsolution metrics from an operational perspective as well as signaling

    non-compliance with non-functional requirements related to the salientservice qualities and policies associated with each SOA layer. Service metricsare captured and connected with individual services to allow serviceconsumers to evaluate service performance, creating an increased level oftrust. This layer serves as an observer of the other layers and can create events when a non-compliance condition is detected or (preferably) when anon-compliance condition is anticipated. The QOS layer makes non-functionalrequirements related issues the primary feature/concern and establishes afocal point for dealing with them in any given solution. It provides the meansof ensuring that each service meets its requirements in the followingcategories:

    o reliabilityo availabilityo manageabilityo scalabilityo security

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    266/298

    265

    Finally, the QoS layer enhances the business value of SOA by enablingorganizations to monitor business processes related to or supporting sharedservices. In particular, SOA security, a significant issue with typical serviceimplementations due to their potential perimeter-less nature as opposed totraditional, web-based, & within the firewall ' , perimeter based security is acapability realized by the QoS layer.

    Layer 8: Information Architecture Layer

    This layer includes information architecture, business intelligence, andmeta-data considerations. It ensures the inclusion of key considerationspertaining to data and information architectures that can also be used as the basis for the creation of business intelligence through data marts and data warehouses. This includes meta-data content that is stored in this layer. Forindustry-specific SOA solutions, this layer captures all the commoncross-industry and industry-specific data structures, XML-based meta-dataarchitectures (e.g. XML schema), and business protocols of exchanging business data. Some discovery, data mining, and analytical modeling of dataare also covered in this layer. These common structures may be standardizedfor the industry or an organization.

    Layer 9: Governance LayerSOA Governance ensures that the services and SOA solutions within anorganization adhere to the defined policies, guidelines and standards. SOAgovernance activities need to conform to Corporate, IT & EA governanceprinciples & standards. The Governance layer will be adapted to match andsupport the target SOA maturity level of the organization.

    The governance layer includes SOA governance (governance of processes for

    policy definition and enforcement) as well as Service governance (servicelifecycle). This covers the entire lifecycle of the services and SOA solutions(from design to runtime and retirement) as well as portfolio management of both the services and SOA solutions managing all aspects of services and SOAsolutions (e.g. SLA, capacity and performance, security and monitoring). Thislayer can be applied to all the other layers in the SOA Reference Architecture.From the quality of service and performance metrics perspective, it is wellconnected with the QoS layer. From a service lifecycle and design timeperspective, it is connected with the Service layer. From an SOA solutionlifecycle perspective, it is connected with the Business Process layer. The goal

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    267/298

    266

    of the SOA Governance layer is to ensure consistency of the Service andSolution portfolio and lifecycles processes. In this layer, the extensible andflexible SOA governance framework will ensure that all aspects of SOA aremanaged and governed. This includes:

    o Service lifecycleo SOA standards, precepts, and practiceso SOA methodologyo Governance processes and mechanismso Service Level Agreements based on QoS and KPIso Capacity and Performance management policieso Security enablement

    The information in this layer that is collected and made available consists of:

    o Guidelines for SOA Governanceo Guidelines for Service and SOA Solution lifecycle and portfolio

    managemento Best practiceso Policies (e.g. security)o Standardso Service and SOA solution roadmapso Compliance, Dispensation and Communication documentation

    The SOA Reference Architecture is a crucial component for constructingcompetent service-oriented IT systems, as it can be applicable to any domainand technology. Due to highly abstract and generic nature, any kind ofpreferences can be imposed on the Reference Architecture.

    6. SOA Ontology

    The purpose of this technical standard is to contribute to the Open Groupmission of Borderless Information Flow by developing and fostering commonunderstanding of SOA in order to improve alignment between the businessand information technology communities and to facilitate SOA adoption. Itdoes this in two specific ways:

    o It defines the concepts, terminology and semantics of SOA in both business and technical terms in order to create a foundation for further work in domain-specific areas, enable communications between business

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    268/298

    267

    and technical people, and enhance the understanding of SOA concepts inthe business and technical communities

    o It provides a means to state problems and opportunitiesunambiguously so as to promote mutual understanding. In the long termscenario, it potentially contributes to model-driven SOA implementation.

    The SOA ontology is designed to be used by:

    a) Business people, to give them a deeper understanding of SOA conceptsand how they are used in the enterprise

    b) Architects, as metadata for architectural artifacts

    c) Architecture methodologists, as a component of SOA meta-models

    d) System and software designers, for guidance in terminology andstructure

    The SOA ontology is best represented using the Web Ontology Language(OWL) defined by the World-Wide Web Consortium (W3C). OWL has threeincreasingly expressive sub-languages: OWL-Lite, OWL-DL, and OWL-Full.This ontology uses OWL-DL, the sub-language that provides the greatestexpressiveness possible while retaining computational completeness anddecidability. The SOA ontology contains classes and properties corresponding

    to the core concepts of SOA. The formal OWL definitions are supplemented bynatural language descriptions of the concepts with graphic illustrations of therelations between them and with examples of their use. For purposes ofexposition, the ontology also includes UML diagrams that graphicallyillustrate its classes and properties. The natural language and OWL definitionscontained in this specification constitute the authoritative definition of theontology, and the diagrams are for explanatory purposes only.

    The Core Concepts of SOA Ontology

    The terms system and element are two core concepts of the SOA ontology.Both are concepts that are often used by practitioners, including the notionthat systems have elements and that systems can be hierarchically combined(systems of systems). What differs from domain to domain is the specificnature of systems and elements. For instance, an electrical system has verydifferent kinds of elements than an SOA system. Relationships betweensystems and elements are represented using the following constructs:

    o uses and usedBy

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    269/298

    268

    o represents and representedBy

    Element Class

    Elements may use other elements in various ways. An element uses anotherelement if it interacts with it in some fashion. For example, an element simplyis a member of (used by) some system class or an element interacts with

    (using) another element (such as a service) in an ad-hoc fashion or even a

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    270/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    271/298

    270

    A system is an organized collection of other artifacts, specifically instancesof Element , each such instance having the used by relationship to thesystem. The concept of system is captured by the System OWL class, which isillustrated in Figure 13.

    Figure 13. System class representation

    In the context of the SOA ontology we consider in detail only functionalsystems that belong to the SOA domain. Note that a fully described instanceof System should have by its nature (as a collection) a uses relationship to atleast one instance of Element .

    Since System is a subclass of Element , all systems have a boundary and areopaque to an external observer (black box view). This excludes structures thathave no defined boundary from the System class. From theservice-orientation perspective, this is not especially relevant, since mosttypical SOA systems can be described from an outside (consumer) perspective.

    Furthermore, having System as a subclass of Element allows us to naturallyexpress the notion of systems of systems # the lower-level systems are simplyelements used by the higher-level system.

    At the same time, along with supporting an external viewpoint (black box view,see above), all systems must also support an internal viewpoint (white box view) expressing how they are organized as a collection. As an example, from aservice perspective, these viewpoints would typically correspond to a servicespecification view versus a service realization view (similar to the way thatSoaML defines services as having both a black box (specification) part and a white box (realization) part).

    It is important to realize that even though systems using elements express animportant aspect of the uses property, it is not necessary to &invent ' a system just to express that some element uses another. In fact, even for systems wemay need to be able to express that they can use elements outside their own boundary # though this in many cases will be expressed not at the system level,

    but rather by an element of the system using that external Element instance.

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    272/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    273/298

    272

    express the concept of architectural abstraction. We find the need forarchitectural abstraction in various places such as a role representing thepeople playing that role, an organizational unit representing the people withinit (subtly different from that same organizational unit using the people withinit, as the represents relationship indicates the organizational unit as asubstitute interaction point), an architectural building block representing anunderlying construct (for instance, important to enterprise architects wantingto explicitly distinguish between constructs and building blocks) and anEnterprise Service Bus (ESB) representing the services that are accessiblethrough it (for instance, relevant when explicitly modeling operationalinteraction and dependencies). The concept of such an explicitly changing viewpoint, or level of abstraction, is captured by

    the represents and representedBy properties illustrated in Figure 13.

    Figure 14. Represents and representedBy properties

    It is important to understand the exact nature of the distinction between usingan element (E1) and using another element (E2) that represents E1. If E1

    changes, then anyone using E1 directly would experience a change, butsomeone using E2 would not experience any change. When applying thearchitectural abstraction via the represents property there are threedifferent architectural choices that can be made:

    a) An element represents another element in a very literal way, simply byhiding the existence of that element and any changes to it. There will be aone-to-one relationship between the instance of Element and the(different) instance of Element that it represents. A simple real-world

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    274/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    275/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    276/298

  • 7/26/2019 2014 - Next Generation SOA - A Real-World Guide ToModern Service-Oriented Computing

    277/298

    276

    integration with one or more packaged applications, application renovationand development, and systems integration. This roadmap helps to determinethe scope, focus, and incremental steps for different parts of the organizationin order to transform them towards a higher level of service-orientation andservice integration, with justifications in terms of anticipated business benefits.

    OSIMM provides a framework for surfacing insights and identifying ITimprovements in terms of component development, service integration, SOA,and IT governance. OSIMM focuses on increasing levels of flexibility in sevenaspects of an organization or enterprise # business, organization andgovernance, methods and processes, application portfolio, architectu