Fara ASA is a leading Scandinavian provider of Automatic Fare Collection Systems for Public Transportation. FARA needed to develop a product based on requirements from five different customers. Gislen Software provided 20 Indian developers during more than two years and developed major parts of a web-based central system, data synchronisation solution via GPRS and a framework for the bus computer to ensure that a single set of software could be used in both portable and fixed systems. The project was about 55 thousand hours, which made it one of the largest projects ever outsourced from Norway to India.
Background
Q-Free ASA, a world leader for holistic intelligent transport systems and road toll systems, got five large AFC projects during 2004. These projects were ticket systems with smart cards and unlike their earlier ticketing solutions they decided to develop a product. As a result of this FARA ASA was founded. Today FARA ASA is one of the leading producers of IT solutions for public transportation in Scandinavia. The project included hardware as well as software. The environmental requirements for bus computer are among the toughest you can think of. Apart from vibrations, the bus computer which is mounted inside the bus should manage from -45 till +90 centigrade. Even if the hardware was a challenge, it was not the only one. GPS positioning, GPRS alarm solution in some of Europe’s least populated areas, battery life span at outdoor temperatures well below the freezing point as well as new national standards for smart cards, which were changed after the project was started. The outsourced part is among the largest software project ever outsourced from Norway to India.
Requirement & Design
A team of three Indians and one Swede were sent to Trondheim and worked together with Q-Frees staff. The product to be developed was based on requirements from five different clients. The Onsite team went through requirements and analysed different parts which should Fara3be outsourced to India. The team in Norway managed all communication with India. Later staff who had been in Norway communicated directly with different Norwegians. One of our business analysts documented the entire context by travelling by bus and took photographs with a digital camera. A document which described the context was produced to create a proper understanding of the environment and context for the team in India. The following list are examples of what we developed:
An almost full scale prototype of the bus computer GUI
The final bus computer should be developed in ANSI C with the help of a GUI-framwork which should be used both for the fixed Linux based bus computer and for the portal Windows CE based units which should be used for sale of tickets for airport busses and for inspectors. This framework did not yet exist, but should be developed and development in ANSI C is a demanding process. Therefore we first developed an almost full scale prototype in Delphi for the bus computer where the bus drivers could try out their own configuration and get an idea how the system would work. Thanks to this prototype many problems could be avoided.
Other things we developed
- The GUI framework for the bus computer in ANSI C
- Printer library in ANSI C
- Library to read, store and update data in smart cards
- A Web browser in ANSI C to present hyperlinked HTML files in the bus computer (for help and instructions)
- J2EE/Web modules for administration of users, bus computers, administration, management and overview modules for communication
- J2EE/Web modules to manage events and alarms including sending of SMS / Email to key persons, based on defined events from any sub system.
- J2EE/Web modules for management of driver settlements, payment and corrections
- J2EE-based communication solution to synchronise up to thousand bus computers, portable bus computers and point of sales per hour.
- Solutions to define and maintain products, fees, routes etc.
- Reports
Gislen Software delivered more than 55 thousand hours of work. As per NASSCOM’s official statistics, that meant that we stood for about 5% of India’s total IT export to Norway during 2005.
Development Process
The requirements were given when Gislen Software were contacted. But Gislen Software have been involved in all parts of the design process. A simplified Unified Process was used with Use Case Analysis, where so called ’Fully Dressed Use Cases’ were used to explicitly explain the work flow of the different solutions. A windows based desktop prototype was developed in Delphi to show different customers the GUI interface of the bus computer. This was done in order to early show how the bus computer would look like in the different environments (fixed and portable) without spending expensive development time in ANSI C, before the customers expectations were completely mapped. Since the calendar time for developing the prototype was limited we used the time difference between India and Norway and worked 24/7 to develop this prototype.
Conclusion
Gislen Software could provide resources with short notice to develop the different parts of the project. Together with FARA’s staff and Norwegian consultants Gislen Software managed to develop a single product which was finished and deployed on time for all the five customers’ requirements. A combination of onsite and offsite development, experienced business analysts and senior developers onsite, we managed to provide resources for what is probably the largest IT software project developed in Norway using outsourcing.
Fara ASA was introduced on Oslo Stock Exchange on January 1, 2006 and the first delivery was done to Rogaland County during January 2006.
We learned a lot from this project. Large outsourcing projects should be managed using a combination of onsite and offsite work, and local staff should be involved in the first phase. Cultural and contextual challenges should both be documented and understood by key people in the outsourcing team. Prototyping, use case analysis and up front documentation pays off and reduces risks.