In this new series, we interview members of the CICS development team to find out more about their work and interests. Editor had a good chat with Will Yates, a CICS Tester and learnt a lot more about Service Flow Feature in CICS Transaction Server V3.2.
Editor: Hello Will. So tell me a little bit about your career in IBM and CICS so far?
Will: I started in IBM straight from college as part of the IBM Integrated Degree scheme. I spent 3 days a week working for IBM and 2 days doing my degree. After I finished my degree (with 1st class honours) I joined IBM software group working as a CICS software engineer in the Hursely Lab.
Editor: Very impressive on the degree result! So how has your time been in Hursley?
Will: I really love working in Hursley and for IBM. Hursley is a great location and IBM offers really good benefits and opportunities. If I am honest when I first found out I was working on CICS I was a bit disappointed, I thought it was old legacy software that didn't really matter. However I was really wrong, I now know CICS as the world's premier transaction processing server. Working on CICS is great.
Editor: I'm glad to hear that. What are you working on now?
Will: I am working as part of the System test team for CICS transaction server. For the next release of CICS we are changing the way we do system test. This will allow us to test CICS in more customer-like scenarios to allow us to generate information that our customers will be able to use as they investigate the new release.
Editor: That sounds really interesting... I can't wait to hear more about the great new release soon! So looking back, what has been the most interesting area you have worked on?
Will: Working with the web service support in CICS has been the most interesting part of my work. As we have supported more standards such as WS-Security and MTOM/XOP the CICS web services story has become more complete, especially with the use of the service flow feature for CICS building on the web services support.
Editor: I have heard a lot about the Web Services support and its continuous development... So, tell me more about Service Flow Feature, or SFF? What do people use it for?
Will: OK so - web services in CICS allow you to expose an existing commarea application as a web service, However applications that are tightly coupled to presentation logic such as 3270 screens cannot be exposed and reused in such a way. SFF allows such applications to be modelled and aggregated with other CICS vital assets and exposed to an SOA as a composed business services.
Editor: So, what does business benefits does it provide to CICS customers?
Will: Many customers have a large proportion of there business critical applications running in CICS. However they want to increase the business benefit of those applications by reusing them in an SOA. SFF allows customers to build new business level applications from existing assets without writing new code or enhancing to change their existing assets. This means that they gain the biggest benefit with the smallest risk. So a big win for them!
Editor: This sounds great - so more assets can be reused! So is it easy to use?
Will: Actually, the latest version of SFF has many new features to make modelling, installation and management of a composed business flow easier than ever before. the tooling is part of rational application developer for z and thus inherits all the usability of it's eclipse base. The runtime also now features a new management transaction that allows flows to be enabled / disabled and for flow parameters to be changed within CICS.
Editor: So, all these new usability features what people refer to as Service Flow Modeller - SFM?
Will: Ok I admit this can be a little confusing - SFF is made up of two components SFM (Service Flow Modeller) which is the eclipse tooling. This allows developers to graphically create a flow that invokes many CICS assets. SFR (Service Flow Runtime) the other part is a CICS application that provides runtime services to the deployed service flow. This then allows the flow to interact with the required CICS assets and services.
Editor: Explain to me, how those 2 component work together?
Will: SFM allows users to import interfaces from their CICS assets, these can be "mapsets", WSDL documents or language structures that represent commarea or container structures. It then allows the user to map data in between the interfaces to control the flow of information between the invocations of CICS assets. The flow is then 'generated' by the tooling, this creates a COBOL application and an SFP file that is used by the runtime to install the flow into CICS.
Editor: How do you then invoke the flow?
Will: An installed flow can be invoked by simplifying linking to the SFR stub program; alternatively the tooling can create the required CICS assets to allow the flow to be invoked as a web service. This can be useful as the flow could then be invoked by a external process engine such as WPA.
Editor: OK, so I hear SFF is a free offering on request - is that right?
Will: SFF is a no charge orderable feature for CICS transaction Server version 3, but the version for 3.2 is much enhanced over the 3.1 version!
Editor: So, one does not really have anything to lose!
Will: Nothing at all - it costs nothing for a company to order and try it out and see if it can create business benefit for them. so why not give it a go!
Editor: Indeed... So tell me, you're a tester, did you always have an overwhelming need to break things?
Will: Yes I used to drive my parents mad by sticking pieces of toast in the VCR and taking apart every pen in the house to see if I could reassemble it. You could say that I was a tester from the day I was born. (laughs)
Editor (jokingly): Great, what do we do without people like you, eh? Seriously though Will, where are the resources for people to find out more about SFF, SFM and SFR?
Editor: You star! Thank you very much for your time Will... Go break things and get them fixed!
Will: Sure - thanks for having me.