October 2005 - Posts
Damian's comments were spot on - although he did have an advantage :). Essentially you have no choice but to build functional tests against the original app to prove that the new Java code produces identical results. I also implied in the original posting that not all the code was being ported - the accumulation and session management code wraps the calculation code which will remain in C++. The functional tests have already proved there worth by identifying an issue with data marshalling in Java, that didn't exist in the legacy application.
TDD is a must when developing the new code for obvious reasons.
eTrading Software looks to be a new consultancy that has moved into the same space as finetix - project based trading system development. Its going to be interesting to see how well eTrading Software does in London (UK) compared to finetix, since today they are about the same size.
- C++ Corba legacy codebase (5+ years old, 1 million lines)
- No unit tests
- Little test data
- Limited knowledge transfer from the original development team.
- A flake environment to run the application in.
- Port the C++ result accumulation and session management code to Java
- Write C+ unit tests to understand the current system, then write Java equivalent code using TDD
- Write Java tests using TDD based on your understanding of the C++ code
- Hope you understand the C++ code, and JFDI in Java
- Give up and go home
- Get the original development team to do the work
A colleague has invented JFDI a new process/framework (call it what you will). I think he should patent the idea, start marketing the concept, and start selling training courses to the investment banks. Good luck to him, I think he onto a winner of an idea. I'd add the following to the JFDI manifesto:
- Kind of working software with absolute no documentation.
- Guaranteed bugs
- Customer Collaboration only when its career and bonus enhancing.
- Responding to change only when absolutely necessary, and only when directed by 3 levels of management (command and control)
- Guaranteed delivery of the software on the date required.
No surprises here. From a commercial software perspective, DataSynapse and Platform seem to be doing well in the investment banking arena. Question for Microsoft; Will your up-and-coming Compute Cluster solution do any better than Sun's attempt?
Anyone used Paremus's Infiniflow grid product?
Extract from an internal email:
"We are holding a Breakfast Seminar on Nov 30, together with Ken Schwaber. This 2-hour session will be for clients and prospects to learn about agile development, what it is, how we do it, and some project-specific presentations. We will be asking all of our current clients to attend, so if you know of anyone who you know would like to attend, please let me know"
Today the main points I came away with were:
- Fixed Price Fixed Contract Scrum is possible - Ken has a slide on this, with possible contract clauses.
- When replying to an Request For Proposal (RFP) consider prioritizing the functionality documented by the client, and creating an initial product backlog. This backlog should form part of the proposal for the client.
- Investment banks (large organizations) are often so set in their ways of managing project, that the Scrum framework will probably only be used within projects from the bottom up - i.e. teams will start to use Scrum without management realising.
- In an ideal world the Project Management Office (PMO) and the Vendor Management Office (VMO) of investment banks should probably all go on a ScrumMaster course to understand the benefits of iterative development, 30 days delivery, 30 days risk.
- The course at Beaumont House was attended by a number financial companies: Citigroup, JP Morgan, Abbey and Nationwide.
- Ken's Microsoft TV Scrum story about how the various Scrum projects integration from the viewpoint of hardware and software (complexity) was interesting.
- The continuation of the FIFA exercise today again highlighted the need to tell the client to truth - often going against the grain of almost every company I know.
The Scrum methodology can be found here.
Today was the first day of the ScrumMaster course taught by Ken Schwaber. For anyone looking to get into Scrum, I recommend this course. Classic comments from Ken on the first day were:
- Since CMM went commercial, it "a pile of crap" "hell in a handbag"
- "Workers rule" - a radical thought for most companies
- Inspect and adapt (retrospective)
- Focus on what can be done, not "yes, but"
- Keep technical jargon out of the sales pitch
- The Fat Burger story was a classic
- Don't take on somebody else's risk !
- Competitive advantage is telling the client the truth. Change the way you do business, the customers will follow
- Possible tag line for a financial consulting company "30 Days Delivery" or "30 Days Risk"
Dan's on the course as well this week.
I see Amex plan to implement a new hybrid trading structure
using its in-development Auction and Electronic Market Integration Platform - AEMI. Anyone know what AEMI is implemented in? Is it an in-house development or did they outsource?
It appears BNP has purchased Platform Computing Symphony product to take advantage of spare compute capacity from 2000 desktop PCs within in the equity and derivatives division. Given that I'm currently working for an investment bank on a grid project, it's always interesting to read what other banks are doing. I'd be curious to know why BNP choose Platform over DataSynapse when BNP has already rolled out DataSynapse GridServer in its London derivatives area. Given that DataSynapse has similar spare compute functionality to Platform, I wonder why BNP opted for a second grid product when they could have just used DataSynapse?
Update: Deutsche Bank also uses DataSynapse in the Global Equity Derivatives area for exotic risk calculations. I believe they have around 1000 engines in there grid. Other companies using DataSynapse have considered coupling it with Tangosol Coherence to avoid database bottlenecks - maybe DataSynapse should partner with a caching company to solidify there product.
More Posts Next page »