×

Loading...
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务

I agree. Here is an article to share from IBM: IBM SOA Foundation: An architectural introduction and overview

( ZT from http://en.wikipedia.org/wiki/Service-oriented_architecture )

Service-oriented Architecture (SOA) is an architectural design pattern that concerns itself with defining loosely-coupled relationships between producers and consumers. While it has no direct relationship with software, programming, or technology.

COM is good from architectural point of view, but now it is closely coupled with MS technology. Maybe I am wrong here if there is any new development.
Report

Replies, comments and Discussions:

  • 工作学习 / 学科技术讨论 / Very good paper for SOFEA ( Service-Oriented Front-End Architecture ) ! But I would like to know more about general framework for application access control and role assignment. Anyone knows it?
    本文发表在 rolia.net 枫下论坛(ZT)

    How do we design and build the Presentation Tier of an application in an increasingly service-oriented world? We (Ganesh Prasad, Rajat Taneja and Vikrant Todankar) believe there is a definite answer, although it is not a particular technology but rather an Architectural Style. We call this style SOFEA, for Service-Oriented Front-End Architecture.

    The principles of SOFEA are:

    0.Decouple the three orthogonal Presentation Tier processes of Application Download, Presentation Flow and Data Interchange. This is the foundational principle of SOFEA. (Interestingly, the most common Presentation Tier technology, i.e., traditional web technology or “Web 1.0”, fails this principle.)

    1.Explore various Application Download options to exploit usefully contrary trade-offs around client footprint, startup time, offline capability and a number of security-related parameters. (The key differences between “thin” and “rich” clients lie in these trade-offs, and therefore SOFEA is a metamodel for both types of applications.)

    2.Presentation Flow must be driven by a client-side component and never by a server-side component. Client state must be managed within the client. (We show that the Front Controller “pattern” represented by all server-side web frameworks is in fact an anti-pattern, which is why there are so many variants of it and why none of them satisfies.)

    3.Data Interchange between the Presentation Tier and the Service Tier must not become the weakest link in the end-to-end application chain of data integrity. The Presentation Tier must support equally rich data structures, data types and data constraints. (In this regard, the inherent weakness of “Web 1.0” makes it hard to integrate with the Service Tier. We recommend the use of XML as the common data denominator for the two tiers). Ideally also, the Data Interchange pattern between the two tiers should follow the peer-to-peer model rather than the client/server model to enable more natural event notification.

    4.Model-View-Controller (MVC) is a good pattern to use to build the Presentation Tier. (This is not to be confused with Front Controller, which is an anti-pattern.) The MVC Controller is the key front-end component which manages client state and drives both Presentation Flow and Data Interchange processes.

    There are many Presentation Tier technologies available to developers today, including some that were very recently announced. While all of them inherently allow wide latitude in the way they are used, we believe that adherence to SOFEA principles will ease their integration into an increasingly SOA-oriented enterprise infrastructure.更多精彩文章及讨论,请光临枫下论坛 rolia.net
    • thanks...good post. will read it later...
    • Definitely I cannot say it is b***s***, but actually it says nothing. There is no other front technology besides HTML/JavaScript (which it's vulnerable), and it says nothing about problems need to solved with rich client.
    • You can never implement role based access control on client side, and you will never see one.
      • Think again, then try to repeat what you said..?
        Well, on client side, definitely there is no one. But he was talking about whole system framework in general.
        • I still repeat what I said because this has been thought for years. All those new words, SOFEA, SOA, AJAX, they are nothing new except javascript and xml, and they may be used in one kind of problem, but not general.
          • Javascript and XML are merely application-level scripting tool and communication packaging protocol. SOA is a conceptual enterprise application framework. It re-defines interfaces among different eco-systems which JS may or may not be resided on.
            • SOA is merely a concept than a framework, IMO, it just defines how interface should be defined. To me, it is same like COM, defines interfaces and you don't care who, where and how the interface was implemented, and COM has been there for 15 years.
              • I agree. Here is an article to share from IBM: IBM SOA Foundation: An architectural introduction and overview
                ( ZT from http://en.wikipedia.org/wiki/Service-oriented_architecture )

                Service-oriented Architecture (SOA) is an architectural design pattern that concerns itself with defining loosely-coupled relationships between producers and consumers. While it has no direct relationship with software, programming, or technology.

                COM is good from architectural point of view, but now it is closely coupled with MS technology. Maybe I am wrong here if there is any new development.
                • I agree too :) SOA is good, but we need good framework that can help developers to implement them. COM is an excellent technology, and MS' COM+ is way better than EJB 2. I worked on both side for years and I still like COM+.
                  • I don't quite buy it. COM is good for sure, but (1) It is a solution only inherenced with MS OS, cannot be implemented across multiple OS platforms. (2) It is really a headache nightmare to keep all DLLs' version update to date. DCOM??
                    • COM is OS independent. If there is implementation of COM library on Linux, COM objects running on Windows/Linux can call each other without knowing that. Keeping file up to date is same like others, there is no difference.
                      • This is an interesting article telling about service-oriented (SO) design in COM technology. MS is pushing its .net, even though COM is still supported.
    • Very genius idea and way to go !!! Correct the thin client architecture by implementing a true MVC framework on the client side, not a Front Controller-based framework on the web server. Use XML instead of JSON to respect data.