[フレーム]
BT

InfoQ Software Architects' Newsletter

A monthly overview of things you need to know as an architect or aspiring architect.

View an example

We protect your privacy.

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Unlock the full InfoQ experience

Unlock the full InfoQ experience by logging in! Stay updated with your favorite authors and topics, engage with content, and download exclusive resources.

Log In
or

Don't have an InfoQ account?

Register
  • Stay updated on topics and peers that matter to youReceive instant alerts on the latest insights and trends.
  • Quickly access free resources for continuous learningMinibooks, videos with transcripts, and training materials.
  • Save articles and read at anytimeBookmark articles to read whenever youre ready.

Topics

Choose your language

InfoQ Homepage News SOA Anti-Principles?

SOA Anti-Principles?

This item in japanese

Mar 07, 2010 1 min read

Write for InfoQ

Feed your curiosity. Help 550k+ global
senior developers
each month stay ahead.
Get in touch

First there were software patterns and anti-patterns, then they were applied to SOA and Web Services by a range of vendors and practitioners, and now Steve Jones, who wrote about SOA anti-patterns several years ago, has raised the topic of anti-principles. According to Steve, a principle is ...

[...] a core concept that you are going to measure things about.

[...]In the same way as Anti-Patterns give you pointers when its all gone wrong then Anti-Principles are the things that you will actively aim to avoid during the programme.

In the entry Steve mentions SOA principles including "Loose Coupling" and "Clear Interfaces", but points out that whereas people are often able to list such things, they often won't list (discuss) the Anti-Principles, which are often more important as they indicate problem areas to try to avoid. A quick search through the literature, both online and offline, illustrates a breadth of experience around principles, such as those listed by Stefan Tilkov, Thomas Erl or others. Although there is some literature on anti-patterns, most are either assumed or ignored.

So what makes a good SOA anti-pattern? Steve takes a stab at a few, but there may be others.

  • Small return Values: "This is where people have been used to Batch interface where returns are just codes and descriptions with reports being used to indicate problems. The sort of statement here is just return a code and description rather than returning a decent amount of data."
  • Direct Calling: "This anti-principle is all about where people just get a WSDL and consume it directly without any proxy or intermediary. Its programme suicide and it shouldn't be done."
  • Interface Generation: "This anti-principle says that you shouldn't generate your interfaces from code but should design them up front and make them explicit. So from an anti-principle perspective you are banning the "right-click generate WSDL" IDE approach to Web Service exposure."

Over the years since premier book on the subject of patterns was released, there has been a lot written about the benefits they bring to engineers and their projects. While the (re-)use of patterns and avoidance of anti-patterns has become almost second nature to most developers, it seems that Steve has a point that principles and anti-principles are as important yet too often overlooked, at least as far as SOA is concerned.

Rate this Article

Adoption
Style

Related Content

The InfoQ Newsletter

A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example

We protect your privacy.

BT

AltStyle によって変換されたページ (->オリジナル) /