Software Development

How FoodSHIELD's developers put ColdFusion 8 to good use

FoodSHIELD's development team likes ColdFusion 8's rapid development nature and its easy creation and consumption of Web services. Find out more details in this technical case study.

 

In the first installment of my two-part series on real-world use of Adobe ColdFusion 8, I looked at how NaturalInsight uses ColdFusion 8 to solve business problems. This edition explores how FoodSHIELD -- an enterprise-class collaboration portal focused on the Food Safety and Defense sector -- uses ColdFusion 8. I also share what I learned from my discussion with Eric Hoffman, the Managing Partner at EJH & Associates; their primary product is FoodSHIELD.

Note: This case study is also available in the TechRepublic download Real-world use of ColdFusion 8: Two technical case studies.

What does FoodSHIELD's application do?

FoodSHIELD's application provides easy communication between regulatory bodies and the food and agriculture industry. This allows them to respond quickly in the event of an emergency (such as food recalls). It creates a centralized community including blogs, surveys, Adobe Connect conferencing, discussion mailing lists, forums, and education resources. It also aggregates information about all participants, such as which laboratories have expertise in specific testing methods. Essentially, if something goes wrong anywhere in the process of getting food from producers to consumers, users of FoodSHIELD can coordinate their response, track the progress of the response actions, and leverage a large existing knowledge base and contact information to ensure that the best possible response is implemented.

How FoodSHIELD uses ColdFusion 8

FoodSHIELD runs using ColdFusion 8 Enterprise Edition. They have two data centers set up, each using a large application server and a large MySQL database server. Both servers run on Solaris.

The application uses the Savvy Content Manager to handle publication of dynamic content and uses a custom framework for the other portions of the system. They are investigating a switch to Model-Glue or ColdBox as a Model-View-Controller (MVC) framework.

Along the same line, they are investigating the use of ColdSpring to handle dependency-injection, and Transfer to handle Object-Relational Mapping (ORM) functions. When FoodSHIELD was originally built, these frameworks were still being refined, so the development team chose to use their own custom libraries. Now that the frameworks are more mature, they are being looked at again for future use.

ColdFusion 8's benefits, challenges, and areas for improvement

FoodSHIELD integrates with a range of external systems using Web services, including government agency servers that handle laboratory results. Eric mentioned how easy this was to create as a result of ColdFusion's extremely easy creation and consumption of Web services.

The development team used the built-in AJAX capabilities of ColdFusion 8 to rapidly add more "Web 2.0" features to the application. They also leveraged the jQuery JavaScript framework to provide some functionality that the built-in AJAX features didn't offer out of the box.

Eric's team also has two Adobe AIR applications under development for workgroup notifications and document management monitoring on the desktop. The applications will leverage the built-in LiveCycle integration that ColdFusion 8 provides to allow communication between AIR and ColdFusion. They're also looking at adding Flex components to the existing system to handle data visualization, since Flex offers such huge capabilities in this area.

An agile, Scrum-like development approach is employment by the FoodSHIELD CollabNet SourceForge Enterprise 5 for source code control, versioning, defect tracking, and QA. Gomez is used for load testing of the application, and Silverback is used on the Mac for quick and easy usability testing.

One challenge worth highlighting is that Eric needed to make a major change to their platform long after the first versions of the application were deployed: They needed to switch from Windows to Solaris. Because ColdFusion 8 is completely cross-platform, making this major change was quick and painless.

The other capability that Eric noted several times was the rapid development nature of ColdFusion 8. The ability to take customer feedback and changing requirements and quickly turn them around by implementing them within FoodSHIELD was a big help to the development team.

As far as areas for improvement, Eric mentioned that he could use even more PDF and FlashPaper capabilities (converting any type of document would be ideal), and that a slimmer AJAX library size would be appreciated since they are widely using the ColdFusion AJAX features.

Conclusion

I hope you find this exploration of ColdFusion 8 usage in the real world to be informative and a bit more technically-oriented than a typical case study or marketing press release. Both of these customers use ColdFusion 8 in different ways, for different reasons, on different platforms, but they both seem to have the same end result -- powerful, user-focused applications that can be built and maintained very rapidly.

If you're considering a Web development project, and you need an extremely rapid, cross-platform solution that offers a huge range of built-in services, download the Trial Edition of ColdFusion 8 and see how it might help you reach your goals.

Get weekly development tips in your inbox Keep your developer skills sharp by signing up for TechRepublic's free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!
2 comments
jerjerous
jerjerous

Thanks for taking the time to discuss this, I feel strongly about it and love learning more on this topic. I have been talking about this subject a lot lately with my father so just maybe this will get him to see my point of view. however only some of the points were actually treated actually good, I believe digging deep for the issue to construct it more informative will actually help, will be looking ahead for more informative billet than this. Portable Storage

giftedwon
giftedwon

why did they even both for? Motorcycle Accessories

Editor's Picks