SOA




                 1
  2009   4   8
Through 2010, a lack of working SOA governance 
arrangements will be the most common reason for 
SOA failure.

          “Applica*on and SOA Governance, The Who, What and Why”
                                    ‐ Ma> Hotle, Gartner, June 2008




                                                                  2
SOA

      3
SOA

      4
5
:




    5
:



    SOA    SOA
     SOA

                 5
6
:




    6
:



      (       )
SOA       (       )

                      6
7
:




    7
:




    (   )



            7
8
…




    8
…




(       )


            8
9
:




    9
:




    9
10
10
SOA

      11
SOA



SOA separates func?ons into dis?nct units, or services, 
which developers make accessible over a network in order 
that users can combine and reuse them in the produc?on 
of applica?ons.

                                                Wikipedia



                                                           12
SOA



SOA separates func?ons into dis?nct units, or services, 
which developers make accessible over a network in order 
that users can combine and reuse them in the produc?on 
of applica?ons.

                                                Wikipedia



                                                           12
SOA



SOA separates func?ons into dis?nct units, or services, 
which developers make accessible over a network in order 
that users can combine and reuse them in the produc?on 
of applica?ons.

                                                Wikipedia



                                                           12
13
1   1




        13
1   1   2




            13
1   1   2   N




                13
SOA




1   1         2   N




                      14
SOA




1   1         2   N




                      14
SOA




1   1         2   N




                      14
SOA




1   1         2   N




                      15
SOA




1   1         2   N




                      15
SOA




1   1         2   N




                      15
SOA




1   1         2   N




                      15
SOA




1   1         2   N




                      15
SOA




1   1         2   N




                      16
SOA




1   1         2   N




                      16
SOA




1   1         2   N




                      16
SOA




      17
SOA


100




            17
SOA


100

      * 90%




                    17
SOA


100

      * 90%   * 90%




                            17
SOA


100

      * 90%   * 90% * 90%




                            17
SOA


100

      * 90%   * 90% * 90%
                            * 90%




                                    17
SOA


100

      * 90%   * 90% * 90%
                            * 90%
                                    * 90%




                                        17
SOA


100
                                    59
      * 90%   * 90% * 90%
                            * 90%
                                    * 90%




                                         17
SOA


100
                                    59
      * 90%   * 90% * 90%
                            * 90%
                                    * 90%




                                         17
SOA




      18
SOA




You only need one service to destroy 
your business.
                                 Gartner


                                      18
SOA




You only need one service to destroy 
your business.
                                 Gartner


                                      18
19
…


    19
…


    19
SOA


      20
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA
SOA governance is doing the right SOA things the 
right way of the SOA stakeholders.
  Eric A. Marks: “SOA Governance of the Services Driven Enterprise”


SOA Governance is a concept used for ac?vi?es related 
to exercising control over services in an SOA. The specific 
focus of SOA governance is on the development of services 
that add value to the business, effec?ve SOA governance 
must cover the people, processes, and technologies 
involved in the en?re SOA life cycle.
                                                       Wikipedia
                                                                21
SOA




      22
SOA

      -GTU




             22
SOA

      -GTU

      -GTW




             22
SOA

      -GTU

      -GTW


      -GTD




             22
SOA

      -GTU

      -GTW


      -GTD


      -GTR




             22
:
       SOA Governance                2008-10-26

    SOA Governance                 SOA
              IT        …




                            CMMI



             level



                                              23
:




    24
:




    24
:




    24
:




    24
:




    24
:
SQA




          24
:




    25
:




    25
:




    25
Software AG




              26
Software AG




              26
Software AG




              26
Software AG




              26
Software AG




              26
Software AG




              26
MuleSource




             27
MuleSource




             27
MuleSource




             27
MuleSource




             27
:
Through 2010, a lack of working SOA governance 
arrangements will be the most common reason for SOA 
failure.




             “Applica*on and SOA Governance, The Who, What and Why”
                                       ‐ Ma> Hotle, Gartner, June 2008
                                                                  28
:
Through 2010, a lack of working SOA governance 
arrangements will be the most common reason for SOA 
failure.




             “Applica*on and SOA Governance, The Who, What and Why”
                                       ‐ Ma> Hotle, Gartner, June 2008
                                                                  28
:
Through 2010, a lack of working SOA governance 
arrangements will be the most common reason for SOA 
failure.




             “Applica*on and SOA Governance, The Who, What and Why”
                                       ‐ Ma> Hotle, Gartner, June 2008
                                                                  28
29
29
SOA


      30
31
MVC/CV
                        Template                     Form

                  Layout        Tile               Controller


                                       AppFacade
         TS


                  Process      Rule       DTO       DTOAssembler
DI/AOP




                   DomainObject                 DomainService
         DDD




                     Repository                     Factory


                  DAO      DataObject
         ORM




                                           SA         ServiceAgent
                         ORM


                                                                     32
MVC/CV
                       Template                Form

                     XYZController Controller
                  Layout        Tile
                     XYZFacade
                     XYZService      AppFacade
         TS


                     XYZ Rule
                   Process               DTO    DTOAssembler
DI/AOP




                     XYZRepository
                    DomainObject             DomainService
                     XYZFactory
         DDD




                     XYZDAO
                      Repository               Factory

                     XYZDO
                  DAO
                     … DataObject
         ORM




                                        SA       ServiceAgent
                        ORM


                                                                32
DALGen
          DB
                         Middlegen          SQLParser




                                                         Model

                                                                 Glue
                                 Velocity
PayRuleDO.java                                                          beans‐dao.xml


       PayRuleDAO.java                                  sqlmap.xml


                                                   PayRule‐sqlmap‐
           Iba*sPayRuleDAOImpl.java
                                                    Mapping.xml


                                                                                 33
GTD

                                       DALGen
          DB
                         Middlegen          SQLParser




                                                        Model

                                                                Glue
                                 Velocity                                 ……
                 Linux 13
PayRuleDO.java                                                         beans‐dao.xml

                                                        —— Linus Torvalds
       PayRuleDAO.java                                  sqlmap.xml


                                                  PayRule‐sqlmap‐
           Iba*sPayRuleDAOImpl.java              – Dreaming In Code       ,
                                                    Mapping.xml


                                                                                33
@AccountTransAction





             (txId)



                          34
http://dddsample.sourceforge.net/
                           35
http://dddsample.sourceforge.net/
                           35
@DomainRoot(“Cargo”)




                       http://dddsample.sourceforge.net/
                                                  35
@DomainRoot(“Cargo”)




                         JavaDoc




                       http://dddsample.sourceforge.net/
                                                  35
“            ”

                       SG
XMLParser    Spring         QDox




                                     Model

                                             Glue
            Velocity

docbook     graphviz    jfreechart




                                                    36
“            ”

                       SG
XMLParser    Spring         QDox




                                     Model

                                             Glue
            Velocity

docbook     graphviz    jfreechart




                                                    36
“            ”

                       SG
XMLParser    Spring         QDox




                                     Model

                                             Glue
            Velocity

docbook     graphviz    jfreechart




                                                    36
Registry   Repository




                        37
Registry   Repository

   SOA




                        37
Registry         Repository

   SOA




   SOA     SLA

                              37
Registry         Repository

   SOA




   SOA     SLA

                              37
Registry         Repository

   SOA




   SOA     SLA

                              37
Registry         Repository

   SOA



    Repository 




   SOA     SLA

                              37
Registry         Repository

   SOA



    Repository 



     Registry


   SOA     SLA

                              37
Registry         Repository

   SOA



    Repository 



     Registry


   SOA     SLA

                              37
38
-   -




        39
-   -




        39
-   -




        39
-   -




        39
Service    Service
Agent     Interface




                      40
@CriticalService

Service      Service
Agent       Interface




                             40
Service Policy

                      @CriticalService

Service                     Service
Agent                      Interface




                                         40
Service Policy

                      @CriticalService

Service                     Service
Agent                      Interface




                                         40
Service Policy

                      @CriticalService

Service                     Service
Agent                      Interface




                                         40
Service Policy




                 41
Service Policy




SG

                      41
Service Policy




              SC




SG

                      41
Service Policy




              SC




SG

                      41
/                    /              /
•                  •                •
•                  •                •
•                  •                •




        Registry       Repository

                                            42
43
IT


 IT

IT



IT



IT


           44
IT


 IT

IT



IT



IT


           44
IT


 IT

IT



IT



IT


           44
IT


 IT

IT



IT



IT


           44
IT


 IT

IT



IT



IT


           44
IT


 IT

IT



IT



IT


           44
(Alignment)?
I did not live un?l this ?me,
Crown'd my felicity,
When I could say without a crime,
I am not thine, but thee.
                           ——  Katherine Philips
                           (17                 )




                                    ——
                                               45
IT

IT


IT


      46
IT

IT


IT


      46
IT

IT


IT


      46
IT

IT


IT


      46
0
->


 1
 ->



 2
->



 3
->




      47
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
Archimate

… is an open and independent modeling language 
for enterprise architecture… is one of the open 
standards hosted by the Open Group and based on 
the IEEE 1471 standard… dis?nguishes itself from 
other languages such as UML and BPMN by its well 
defined metamodel, and wider enterprise 
modelling scope.
                                         Wikipedia


                                                48
49
49
49
49
49
50
51
52
52
52
52
52
53
53
54
54
54
54
54
0
->


 1
 ->



 2
->



 3
->



      55
0
      ->
 0
->
       1
       ->
 1
 ->
       2
      ->
 2
->
       3
      ->
 3
->



            55
/


       0
      ->
 0
->
       1
       ->
 1
 ->
       2
      ->
 2
->
       3
      ->
 3
->



            55
!




    56
!




    56
!




    56
SOA


      57
IT

                  …….

  SOA


Repository

Registry
  SOA




                        58
59
7


     0
    ->


     1
     ->


    2
    ->


     3
    ->




          60
InfoQ, etc…
              61

支付宝 大规模Soa系统治理中的架构支持