Case Studies
|
ICMobile Platform
InfoClarus Inc.
The ICMobile Platform makes mobile application development and deployment rapid, easy and cost effective. The ICMobile Platform is open standards-based to maximize existing IT resources, skill sets, and infrastructure in the deployment of mobile applications that are easy to create and inexpensive to maintain
Requirement : The ICMobile Platform required a J2ME extension.With strong capabilities in developing mobile apps for the Pocket PC and other devices, a big gap needed to be filled to add support for new generation always-connected devices like J2ME smart phones, the BlackBerry from Research In Motion, Palm and others. It was required that the applications use the most powerful combination of CLDC [ Connected Limited Device Configuration ] and MIDP [ Mobile Information Device Profile ]. Due to fundamental differences between these platforms, sustaining the “design once run anywhere” approach of the mobile platform was a crucial requirement.
Solution : The original mobile studio approach was to take the application design in an XML format, determine the device for which the application was to be deployed and then apply XSL transforms to generate the code needed for the application to run. This had led to various problems including debugging nightmares, extensibility issues and paucity of skilled resources. Websym engineers designed a Java code generator extension to the Mobile Studio, thus moving new code generation from the XSL transformation realm to pure, maintainable Java code. Websym was responsible in providing the J2ME and RIM extensions to the ICMobile Platform. Websym worked on various levels in the process starting with design, implementation, testing and customer support.
- Code generator – The code generator picks up the application design from the Studio in the form of fairly complex XML and generates the MIDP code for the application. The code generator handles various aspects of the J2ME application such as Application Management, Navigation, and Communication with the server. The code generator also provided hooks in the generated code for integration with the Persistence layer and the Synchronization Server. A separate code generator that shared the design framework of the J2ME code generator was also written for RIM devices such as the Blackberry
- User Interface – We also developed a set of widgets on J2ME with more flexibility than the built-in ones, including a complex table widget.
- Persistence layer – To provide database support for the generated applications, we used PointBase on the RIM devices and devised our own pseudo-relational, lightweight persistence store on J2ME. This layer was implemented on top of RMS. This layer was designed to abstract the database specific services and provide a uniform layer for the J2ME and RIM applications
- Synchronization module – Websym contributed in improving the existing synchronization process by designing and implementing incremental synchronization, which will also be used in the next generation product
- We also integrated the code generators with the application server. The code generator is implemented as a servlet , so the designer can access the generator from anywhere on the network with access to the application server
- Websym was also responsible for the architecture and design of the next generation ICMobile platform, which will be implemented on Eclipse. Eclipse was a good choice for the customer, since it provides a professional development platform which is essential for an application builder. Its cross-platform compatibility is also a major plus when deploying the Studio in enterprises. Moving the entire responsibility of project maintenance, code editing and builds to Eclipse built the foundation for the new generation Studio
- Code generator – The code generator picks up the application design from the Studio in the form of fairly complex XML and generates the MIDP code for the application. The code generator handles various aspects of the J2ME application such as Application Management, Navigation, and Communication with the server. Code generator also provided hooks in the generated code for integration with the Persistent layer and Synchronization Module. Code generator is also capable of generating code for the RIM devices such as Blackberry
- User Interface – We also developed a set of widgets on J2ME with more flexibility than the built-in ones, including a complex table widget
- Persistent layer – To provide database support for the generated applications, we used PointBase on the RIM devices and devised our own pseudo-relational, lightweight persistent store on J2ME. This layer was designed to abstract the database specific services and provide a uniform layer for the J2ME and RIM applications
- Synchronization module – Websym contributed in improving the existing synchronization process by designing and implementing incremental synchronization, which will also be used in the next generation product
- We also integrated the code generators with the application server. The code generator is implemented as a servlet , so the designer can access the generator from anywhere on the network with access to the application server
- Websym was also responsible for the architecture and design of the next generation ICMobile platform, which will be implemented on Eclipse. Eclipse was a good choice for the customer, since it provides a professional development platform which is essential for an application builder. Its cross-platform compatibility is also a major plus when deploying the Studio in enterprises. Moving the entire responsibility of project maintenance, code editing and builds to Eclipse built the foundation for the new generation Studio
Technologies : UML, RUP, Java/J2ME, Java/J2EE, XML, RIM Extensions, Castor, Pointbase, MIDP |
|