Developers

Accounting on a Blackberry…

On the day that the new 3G iPhone finally launches in the UK, I thought it would be fun to show that we have got CODA 2go running not just on an iPhone (see previous post) but also now on a Blackberry.

Here you can see a view of a customer account, and then the menu of actions available to the me:

 

Read the rest of this entry »

The team behind CODA 2go…

A commentator to one of our recent posts, Getting Agile, asked for more perspective on our development time frame and resources. Following our statement that we have had a team of 14 people working for over 6 months to get CODA 2go product released, he stated that “This is the same sort of time frame I would expect from a ‘traditional’ approach and/or like one based upon .NET. This may be agile but it is not what I would call rapid.”

I think a definition of ‘team’ and the product we are creating will provide some depth to the high level answer I gave at recent Tour de Force events:

At least 14 people have ‘worked on’ CODA 2go. This team consists of Product Management, Architects, Functional and Tecchnical Designers, Programmers, Automated Test Engineers, Testing Engineers, Documentation and Marketing. If you add in legal and corporate representatives, the team would rise above that. However, the core scrum team actually producing the product itself consists of 9 people (5 programmers, 3 testers and 1 on documentation). Other individuals are working on this project as well as others.

Not forgetting, of course, that the accounting knowledge and design brought to bear by the team builds on nearly 30 years of intellectual property represented by CODA. We are a 600 person, 14 country organization, part of the 5th largest midrange software author globally, Unit 4 Agresso.

In the 6 months, the team has created an all new, multi-company, multi-lingual, multi-currency accounting service on Force.com. Not only is it seamlessly integrated with Salesforce.com and Google Apps, but it has an extensive workflow engine, deployment to mobile clients (check out the demos running on BlackBerry and iPhone) and many other advanced features. The application has been stress tested, carries full automated regression testing for future releases and we have created and documented pattern based coding  and best practices for developing on Force.com.

I believe that the benefits we have obtained and the speed of delivery are far more than agile, they are revolutionary.

At the same time as the application has been developed, the extended team has been part of the creation of the business model for Platform as a Service (PaaS) with Salesforce.com as well as creating the legal and operational framework around delivering applications in a PaaS environment.

There are many things that an international application developer like CODA will not cut corners on. Right from the design through the coding and testing and having a full time documenter on the project. What we have created and will continue to build, on is a fully scaleable, unified international accounting solution. I really don’t think you will find many world class business applications built in such an aggressive timescale.

Web 2.0 Philosophy

Just returned from Tour de Force in Silicon Valley - another interesting, enjoyable and well attended event . After the morning’s keynote the CODA stand was again a very busy location with non-stop stream of inquiries from existing salesforce.com customers, other software developer companies and service organizations exploring the possibility of adding CODA 2go into their ‘kitbag in the cloud’ .
This piece on pcworld.com from Wednesday covers some of the headline messages from the keynote but it was Sheryl’s closing comments about Web 2.0 philosophy I want to highlight - “Focus on the foundation and let users build what they want.” I think this idea is central to what CODA is delivering on the platform - adding powerful yet highly flexible accounting components that users and 3rd parties can build into their overall solution. 

CODA itself continues to discover more functionality on the force.com platform that we can leverage from our application ( a separate blog entry will cover that soon ), shortly the salesforce community will find international accounting capabilities also running 100% natively on the platform that is already integrated with CRM and ready to integrate into their solutions.

Accounting data in your iGoogle homepage

Following on from our post on CODA 2go and Google Apps integration, one of the opportunities I’m excited about is taking the ability to securely pull and push data from force.com into a Google Gadget and combine that with the ability to easily push Gadgets into the iGoogle Portal. 

 

The result would be an already widely used and accepted ‘home page’ that could also include key metrics and reports from back office systems.   Here’s an example of key financial information pushed to iGoogle via Gadgets with data sourced from CODA 2go on force.com .  This is all because we’ll have access to data in a ‘mash-up enabled’ environment.  Exciting stuff!

 

 

Google Apps integration brings spreadsheet joy to accountants!

Following the recent launch of the Salesforce and Google Apps offerings, we have prototyped our own CODA 2go-specific Google Apps integration! This has been built using a Google Gadget, Apex code and Visualforce and the result has got us and everyone we demonstrated it to at Dreamforce very excited about the possibilities this proof of concept opens up.

Our experience of producing finance software over decades is that accountants love manipulating transactions in spreadsheets! The success of our on-premise CODA-XL product (which extends Microsoft Excel) has been outstanding, with virtually all customer organisations adopting it enthusiastically. Now in the on-demand world we have produced an equivalent solution that uses Google Spreadsheets and Force.com.

The initial prototype can be used to perform a Cost Allocation over extracted transaction details from the CODA 2go product. The user can then apportion new values by editing the cells used by formulas in the spreadsheet; we then post back the results in the form of a journal back into CODA 2go from within the Google Spreadsheet user interface via a Visualforce-powered Google Gadget!

The feedback from prospects, analysts and the guys at Salesforce has proved that this is yet another feature we can offer with CODA 2go that will keep the accountants smiling…

Click to enlarge

Getting Agile

Its not often you’d get branded a pig or a chicken without taking offence, but in Agile terms you’re either one or the other.  You’re either in the Scrum team getting your hands dirty, in which case you’re a pig, or looking in on the periphery keeping a close eye in which case you’re a chicken.

 

CODA 2go is the first project CODA has run using the Agile methodology Scrum.  It’s a very different approach to the more traditional Waterfall model of software development often adopted at CODA.

 

The Scrum team itself is a multi-disciplinary team made up of designers, developers, testers, automated testers and documenters all working in close proximity.  We have some very skilled people and a strong sense of ownership and team-working which really helps to drive the construction forward.  The team as a whole, headed up by the Scrum master, make decisions on a day to day basis to make sure we can deliver what we’ve signed up to do.

 

It’s been quite a learning curve and a big adjustment to the way we work but I think the benefits really show.  We were able to show off the end to end process of invoice generation through to printing at the end of the third sprint without the use of smoke and mirrors!  The process somewhat de-risks a project by providing software early and iteratively.  By giving it almost immediate visibility to the product owners the direction of the project can be continually reviewed and altered to meet the business needs.

 

We’re now 12 sprints in and we’ve designed, written, tested and documented some first class software and I think we can be proud of what we’ve achieved.

 

Tony Scott, Software Developer, CODA 2go. 8th May 2008.

CODA 2go launched…

Well, we did it… CODA’s first totally new finance system for around 15 years was unveiled at salesforce.com’s Dreamforce event in London on Wednesday. Jeremy Roche from CODA joined salesforce.com CEO Marc Benioff on stage during the keynote to talk about CODA 2go, the first accounting system to be developed on the Force.com platform, and demo the new application.

Demonstrating software live in front of 2500 people is always a risk, and sure enough the first click of a button produced an error message none of us had seen before. Our development team, watching back in Harrogate via the web, told us later their collective hearts stopped for a moment when that happened! However, turns out that that a glitch in the internet connection had taken the web browser off-line momentarily… so Steve Fisher on keyboards just had to refresh the browser and we were off and running.

The audience was certainly ‘wowed’ by the new offering - the CODA stand was mobbed for the rest of the two-day event. As we’d predicted, the salesforce.com community is hungry for a finance system that works seamlessly with their CRM.

We are currently working with beta partners, but when the solution goes on general release in the coming weeks we’re expecting a considerable amount of uptake. Watch this space, as they say!

Three, two, one 2go… Launching tomorrow!

Just one day now to the official unveiling of CODA 2go, at salesforce.com’s Dreamforce Europe event in London. Apparently registration broke the 2000 barrier some days ago so there will literally be standing room only when CODA’s CEO Jeremy Roche joins salesforce.com’s boss Marc Benioff on stage.

Jeremy will show some highlights of the ‘opportunity to cash’ process of CODA 2go, and discuss the product strategy and detail of pricing and availability. Shortly afterwards there will be a breakout where delegates can see the product in more detail.

We are briefing press all day today and tomorrow, so watch out for coverage around the world. Well know tech blogger Dennis Howlett got a preview last week and was highly positive - see his commentary on US site ZDnet or his own site, Accman pro.

We’ll blog more news over the next few days…

Speeding up the Sprint

If you are familiar with our project through previous blogs you will be aware that the term “Velocity” in the Agile methodology refers to how many points of work the team can get
through in a given sprint. The higher the value, the more deliverable is the sprint. The easiest way to increase this as you would imagine is additional team members, however process improvement and increased effectiveness within the team can also help. Thus I am pleased to say that due to some new tooling around the Force.com Metadata API (part of the Development as a Service feature set) we been able to add an additional point to our sprints!

Not to be out done by Salesforce we’ve had a go at developing some of our own tooling. In doing so we have now added another form of Velocity to the sprint! This is in the form of the co-incidentally named Apache Velocity templating tool. Although it is still early days, through building our own set of Velocity templates we have started to reduce the amount of repetitive and ‘boiler plate’ coding we have been performing. Which does also reduce the possibility of errors, and as such improves quality.  To integrate Force.com into Apache Velocity, we have used an open source tool named Force Velocity.

Stephen, one of our developers, has developed a template that generates an Apex class that provides the same functionality as the DescribeSObject API call not currently available in Apex Code at present. Gareth, our Help author is also interested in understanding if it can help reduce duplication in the online help when field information is documented.

So who knows - maybe in a future blog we will start to see how Apache Velocity is impacting our own sprint Velocity in very real way!

Developing a little Help with our friends…

A vital part of any application, especially a business app that will be used by many different people of different capabilities and background, is the Help system. CODA prides itself on its online, context-sensitive Help functionality for its on-premise applications, so we were determined to produce the same if not better for CODA 2go on the Force.com platform.

Gareth, from our award winning Technical Documentation team, tells how we did it… Read the rest of this entry »