Collaboration: At the Extremities of Extreme
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.

Posted by Thomas Erl on Oct 15, 2009
“SOA Principles of Service Design” by Thomas Erl is an encyclopedia of service design principles needed to build SOA solutions. This article contains three supporting practices taken from the book: Service Profiles, Vocabularies, and Organizational Roles.
Download: SOA Principles of Service Design, Chapter 15 - Supporting Practices
In the early phase of documenting services, it is useful to use a common template or a form to collect similar meta-data from all the services. This document represents a service profile. Such a profile can be created by the service custodians early on during the analysis phase, and it is updated later when the service goes through various changes. Some companies prefer to enter the content of the profile into the service registry when the service is deployed. The author goes in great detail explaining what the profile might contain.
Different teams may develop services using different conventions possibly leading to confusion. A common vocabulary helps understanding better what each team is doing. The author suggests standardizing the following vocabularies, also offering a good set of terms to start with:
IT positions in an organization change in time. Some people leave, others come in. New roles may be created when needed. A list of organizational roles, with clear specifications for each one, creates a better picture of what everybody is supposed to do and how they relate to each other. The author presents a set of roles associated with service-oriented design principles:
The author gives a description of each role mentioning the principles associated with it. For example, the Service Analyst role is associated with Service Reusability, Service Autonomy, Service Discoverability.
This chapter is an excerpt from the book SOA: Principles of Service Design, authored by Thomas Erl, published July 2007 by Prentice Hall Professional as part of The Prentice Hall Service-Oriented Computing Series from Thomas Erl, ISBN 0132344823, Copyright 2008 SOA Systems Inc. For more info, please visit informit.com/soa or soabooks.com”
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
No comments
Watch Thread Reply