American sofware company Softshare have been around for a good 20 years and have offices in California and Holland. They specialize in B2B/EAI primarily focused on XML and EDI message transfer and document mapping. They offer a smaller web EDI tool for the lower end business customer called ‘Athena’ which enables small businesses to trade with the larger and more technologically advanced enterprises that demand electronic trading. Softshare provides two flag ship products, Delta their data translation / mapping engine and their e-Commerce Server, ECS. Both tools work well together to provide a communications and document transformation service for B2B and EAI strategies however our focus here is on ECS.
Version 6.0 of their e-Commerce Server has not long been released and it comes in 3 flavours, ECS Lite, ECS Standard and ECS Enterprise. ECS Lite as its name suggests is a low feature version of the server and certain features such as certain pipeline processing, scheduled commands, scheduled reports and native AS1,2 and 3 support are not available. ECS is clearly the best option for heavy EDI users. Not only does ECS offer improved features in this latest release but its core (routing) engine has been completely re-written in Java and so is no longer just a windows compatible server. ECS operates as a systems connector so that EDI, XML and structured file messages can be passed to their Delta translation maps. Like the bigger EAI/B2B products, ECS Server uses Input and Output channels (once known as Output Queues) to retrieve messages or to post messages to different platforms / servers. Input and Output channels support the major communications protocols (HTTP, POP3, FTP and SMTP) as well as security protocols AS1 (SMTP),2 (HTTP) and 3 (FTP). Clustering is now supported in this latest release and fail-over features have massively improved (in that ECS 5.0 had none and fail-over was down to getting creative with the underlying SQL Server). A master controller node can be configure with a backup controller which is able to take on operations 30 seconds (customizable) after the master controller is deemed non responsive. Another super new feature to ECS 6.0 is the concept of pools for load balancing for inbound messages across different servers in the pool.
Input and Output Channels
As stated, the standard concept of inbound and outbound channels remains. An input channel is similar to Biztalk’s receive port (however with only one configurable receive location). The channel allows configuration of the uri or file location, security parameters, scheduling, content filtering and disposition (what happens to a message after pickup). The Input/Output channel also offers a pipeline processing feature (similar to Biztalk’s pipeline albiet with a limited number of processing activities). Pipeline processing allows the message to go through several processing steps including ASCII to EBCDIC character set conversion, message header manipulation, character replacement, string replacement, unicode conversion and command line processing. The command line pipeline feature allows passing the processed message to an external application (with parameters) for processing (e.g. special decryption processing or extraction of compressed file formats). My only niggle with ECS channels is the inability to plug in your own pipeline processing modules that can perform customized processing. Custom channels can’t be created either. A channel framework that programmers could tap into would be a massive selling point for this server.
The management console application allows you to manage your ECS installs across your network and itself has seen improvements in this version. Your nodes, pools, management (exception handling and notifications), channels and projects are all managed from within the console and now your trading partners are also available (trading partners where once only available through the Trading Partner Management utility). This version of ECS (and Delta) take a project approach to your B2B maps and channels and make designing mapping projects in Delta and managing them (including importing and exporting) in ECS a breeze (not unlike a Biztalk application).
Data Administrator is your window into your ECS servers traffic. All messages that pass through the system are logged in the ECS database and the files (and file headers) are stored on the physical disk in a logical address based folder structure – Data Administrator allows you to filter data in order to locate specific messages. The application allows you to see the full routing of a message from the channel it arrived on, the translation map that has modified the message and the output channel where the resulting message has left the system. The most common use of Data Administrator is the ability to ‘re-stage’ or resend a message (or collection of messages called a batch), this feature can become super useful when message mapping errors occur or connected servers are down (e.g. sending to an FTP Server that is off-line for maintenance).
All in all, ECS Server is a strong server product as a result of years of development. It lacks in certain departments against the bigger players in EAI and B2B arena and even though it does provides event rule features it is far from offering full business process and orchestration creation tools. This is essentially an advanced communications server that interoperates with a mapping engine to provide a translation and comms package (in conjunction with the Delta translation engine) for XML and EDI based B2B trading. It is very good at what it can accomplish for the price tag and in my experience is completely under utilized in most organizations where it is installed. It is capable of a lot more than I can cover in this article and the option to request a 30 day demo from Softshare direct is available. Its latest release has come along way and along with Delta is an excellent choice for small to medium sized enterprises. Lastly, Softshare offer a great free product called EDI Notepad and this is a must for anyone that deals with EDI messaging on a regular basis.