Architecture

TeamSOA brings lessons learned with distributed, high availability services to client's IT architecture. With over 20 development years around SOA, questions on Quality of Service, Identity Management, Security, Enterprise Service Buses, Web Service Brokers and Management can be answered from solid experience, rather than from best guesses and vendor-driven hype. We provide a perspective and a framework of discussion for many SOA concerns: How much Network policy should be created and enforced on the endpoints, versus the Network itself? How do you prevent single point of failure? Does "once and only once" guaranteed delivery suffice, or is "at least once" delivery good enough? Other key challenges include handling transactions across distributed endpoints, tracking run-time issues when applications are loosely coupled, and controlling distribution of requests and access to services.

Implementation

Our team has had exposure to a large number of emerging tooling and platforms for building Web Service applications. We have extensive experience with all aspects of the BEA WebLogic Platform: Workshop for building new services, WebLogic Integration (WLI) for workflows and business process management, Liquid Data for exposing disparate data sources as Web Services, and Portal for rapidly adding Web applications to corporate intranets. We have built Web Services based on Microsoft .Net, including stand-alone and Web applications. Beyond the basic development toolkits, we have worked with several security and identity management vendors, such as Oblix, Netegrity, and DataPower, to build SOA solutions.

Having developed Blue Titan's Network Director: Web Services Management product, we thoroughly understand the benefits and limitations of such software, and have had exposure to much of the competition, including Digital Evolution, Amberpoint, Actional, and WebMethods.

In terms of messaging vendors, we've worked with TIBCO, MQSeries, Talarian, Sonic, and have followed the evolution of messaging to the Enterprise Service Bus, especially Sonic ESB; we look forward to BEA's Quicksilver offering, which adopts many Network Director concepts. We also have experience with several open-source ESB solutions, including JBossMQ, and ActiveMQ.

Prior to building Network Director, we developed VelociGenX: Web Services Orchestration product, which won the CONNECT "Most Innovative New Product" award in 2001. Through its creation, we gained intimate knowledge of several of the Web Service standards such as BPEL4WS, XPATH, XSLT, WSDL, SOAP, WS-Inspection, WS-Addressing, WS-Reliable Messaging, WS-Security, WS-Policy, UDDI, as well as how to meet WS-Interoperability guidelines.

We have written persistence layers on top of relational databases, such as Oracle, DB2, Microsoft SQL Server, and MySQL, LDAP-based directories, and Berkeley-based hash tables, and the file system. Although we have used EJBs, our evaluation of the various vendor offerings found several performance issues with them. We've used Database Controls, JDO, JDBC, and have relied on well-established open-source efforts, such as Castor JDO, and Hibernate, for both client and product development work.

Quality Assurance and Deployment

As part of ensuring that no single point of failure exists in the architecture or process, we've defined best practices for testing and deploying Web Services. Several clients have hired us for training and education of existing QA and operation teams. Our QA guideline involves verifying Web Service functionality using Mindreef's SOAPscope, and capturing Web Service requests and responses into "workspaces" which can be played back for regression testing. We also have employed open source tooling, such as our in-house VeloMeter1 product, and the Perl Apache::Bench module to perform load testing.

At deployment, we describe how different parts of the SOA should be configured and where they should be placed, with respect to the firewall, VPN, load balancers, routers, etc. We've helped customers come up with processes for tracking down difficult to resolve problems that occur with loosely coupled systems, enabling operations to respond rapidly to these potentially devastating production issues. Of course, our architecture and testing guidelines emphasize catching such issues during QA and staging, before new IT functionality is brought into production.


LEADING THE SOA INITIATIVE
Our team has had exposure to a large number of emerging tooling and platforms for building Web Service applications.

As part of ensuring that no single point of failure exists in the architecture or process, we've defined best practices for testing and deploying Web Services. Several clients have hired us for training and education of existing QA and operation teams.