The classification of data in an enterprise is a daunting task but, roughly, there is reference data and transaction data. Sub-categories of transaction data are: orders, invoices, tickets, … . Many of the projects that I have been working on involve in one way or another synchronization of orders, meaning keeping the orders state consistent across multiple sub-systems. In time, a few patterns emerged and we built tools to implement these patterns. The kit consists of XML schemas and Java libraries for: canonical representation of Product/Service/Resource orders, decomposition and status aggregation of status, web-services interfaces based on NGOSS SID and OSS/J (JSR 89 and JSR 264).
Toolkit for Order Synchronization
Author: Calin Groza
December 3, 2008
Fielding on Design
Author: Calin Groza
November 12, 2008
I recently read a blog by Roy Fielding on REST. Deep, in one of the comments, Fielding says:
[…] I think most people just make the mistake that it should be simple to design simple things. In reality, the effort required to design something is inversely proportional to the simplicity of the result.
People who saw many good and bad designs relate to this. But it is not acknowledged in day-to-day life, on the contrary:
- Many integration solutions are overly complex because people just don’t appreciate how much (high quality) work goes into designing a simple/elegant solution;
- (Junior) architects do not appreciate the beauty of a simple solution. They will over-engineer the solution creating more adaptation layers between systems with no benefit, interfaces too generic loosing all the advantages of strong type checking
- It is hard to win the argument in an architecture meeting suggesting a simpler solution as if that shows a lack of knowledge rather than a honed skill.
Fielding’s quote should be on the first page of software design books.
Lorem Ipsum
Author: admin
October 12, 2008
Lorem ipsum dolor sit amet, this is an article to test the formatting the posts on the web site, consectetuer adipiscing elit. Mauris semper, velit semper laoreet dictum, quam diam dictum urna, nec placerat elit nisl in quam. Etiam augue pede, molestie eget, rhoncus at, convallis ut, eros. Aliquam pharetra.Nulla in tellus eget odio sagittis blandit. Maecenas at nisl. Nullam lorem mi, eleifend a, fringilla vel, semper at, ligula. Mauris eu wisi. Ut ante dui, aliquet nec, congue non, accumsan amet, lectus. Mauris et mauris.” Duis sed massa id mauris pretium venenatis.
Code:
<xs:annotation>
<xs:appinfo source=”http://www.intspc.com/appinfo/EntityChange”>
<ec:EntityInfo>
<ec:RecordInfo>
<ec:KeyList>
<ec:Key>COMPANY-CDE22</ec:Key>
<ec:Key>LANG-CDE</ec:Key>
<ec:Key>INSTALL-AREA-CDE</ec:Key>
</ec:KeyList>
<ec:Type>Positional</ec:Type>
</ec:RecordInfo>
</ec:EntityInfo>
</xs:appinfo>
</xs:annotation>
Quote:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Ordered List
-
aaaa
-
a11111
-
a22222
-
-
a33333
-
bbbb
-
cccc
Numbered List:
- ammmm
- aaaa
- bbbb
- cccc
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.