Digital Edition

SYS-CON.TV
Elastic Path Software: How To - Building Enterprise Apps with Open Source Frameworks
Advice "from the trenches" on using open source frameworks to simplify enterprise software development

To learn more about ElasticPath, go to: www.elasticpath.com

Software Re-use in the Real World
Any software developer worth the price of their iPod will tell you that "reusability" is one of the Holy Grails of software development: it is incredibly valuable, but equally as elusive. How many developers working on insane deadlines have time to sit back and think about all the wonderful ways that their business components "might" be used in the future? Even standards committees led by industry experts have trouble with this.

So where is this reusability that we've been promised? Enter the world of open source software. Over the past couple years, there has been an explosion of open source tools and frameworks for developers to choose from. Projects like Struts, Spring and Hibernate have become household terms in the vocabulary of today's enterprise software developers. Here at Elastic Path, we have a simple philosophy when it comes to writing code: do it as a LAST resort. OK, I know what you're thinking: A software company that doesn't like to write code?!?! Yup, that's right! Because the more of it you write, the more of it you have to document, test, debug and maintain. And with all of the wonderful open source tools and frameworks out there, our philosophy isn't hard to live by.

Choosing Your Weapons Wisely
Alright, so you're a team lead or architect and you need to build a new web application. One of your first responsibilities on this project should be to sort out the high level architecture. In the past, this could be a really daunting task involving lots of late-night architecture sessions and Jolt cola. Today, it really boils down to: what frameworks and tools should I use and how do I make them all play well together?

Some things to consider when evaluating open source frameworks include:

  • How popular is it?
  • How big/responsive/friendly is the developer community?
  • Has it been used in large-scale apps?
  • How good is the documentation?
  • How steep is the learning curve?
  • How active is the CVS/Subversion tree (ie. Is this project alive and kicking or dead as a doornail?)
  • Do people in your team or company have experience with it?
  • Is it based on a recognized standard?
  • Does it come with a restrictive license? (most of them don't)
We've done a ton of this framework research here at Elastic Path so I'll share some of the open source technologies that we've found useful in real-world enterprise development:
  • Presentation layer: Velocity
  • Web layer: Struts (but we're moving to Spring MVC)
  • Web services layer: Axis, XMLBeans
  • Business/Services layer: Spring (this is also used to wire objects throughout our application)
  • Data Access layer: Hibernate, JBossCache (for Java object caching)
  • Business rules engine: Drools (now part of JBoss)
  • Security: Spring ACEGI
  • Builds: Ant
  • Validation: Jakarta Commons Validator
  • Testing: jUnit, httpUnit, jWebUnit, Checkstyle (currently evaluating), PMD (currently evaluating)
  • Logging: Log4J
  • Search: Lucene
  • Code generation: XDoclet, Middlegen, Torque, Hibernate tools, scripting languages (Perl, PHP, Python, Ruby, Groovy)
  • AJAX: DWR, Echo2 (currently evaluating these)
I hope this has given you some practical advice in using open source frameworks in your next project. If you're interested in an extended version of this article please visit: www.elasticpath.com/papers

Elastic Path Software
225 West 8th Avenue, 3rd Floor
Vancouver, BC, Canada
V5Y 1N3

Toll-free in N.America
1-800-942-5282

Phone: 604-408-8078
sales@elasticpath.com
www.elasticpath.com

To learn more about ElasticPath, go to: www.elasticpath.com

About IT Solutions Guide
IT Solutions Guide (ITSG), aimed at development and corporate managers, is a free quarterly supplement focusing on the most competitive tools, solutions, and services available in the IT and infrastructure technology world today.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

Elastic Path Software: How To - Building Enterprise Apps with Open Source Frameworks. Any software developer worth the price of their iPod will tell you that 'reusability' is one of the Holy Grails of software development: it is incredibly valuable, but equally as elusive. How many developers working on insane deadlines have time to sit back and think about all the wonderful ways that their business components 'might' be used in the future? Even standards committees led by industry experts have trouble with this.




ADS BY GOOGLE
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE
Likewise, which authenticates Linux, Unix and Mac users with Microsoft Active Directory, has started...
The new widgetry features multi-cluster support and enhanced concurrency management to improve scali...
In the wake of the financial crisis and its attendant repercussions across the global economy, the U...
It says Traffic Server enables the session management, authentication, configuration management, loa...
The company says “extensive collaboration with large enterprise beta customers, such as Comviva, Hos...
It claims the widgetry, which lets Mac users run Windows and Linux alongside Mac OS X, is faster, sm...
Cisco CEO John Chambers, who has turned into something of an economic oracle probably because he is ...
Microsoft’s browser rivals aren’t satisfied with the tentative “ballot screen” settlement that the c...
Do you have digital camera? Do you record special events around you? Publish them on your website wi...
According to Aster Data, applications need to go to “Big Data,” not the other way around. And to do ...
The Cloud Computing Conference and Expo in Santa Clara has come to an end, leaving a fair share of o...
As virtualization entered the data center it became an accidental standard bearer for network automa...
In iPhone Tips, Tricks & Apps for Business Executives, the analyst shares quick and easy ways to tru...
Investors who are serious about maximizing returns and minimizing risks will find McWilliams' ongoin...
The talk at the Cloud Computing Expo this week in Santa Clara was all about enterprise cloud adoptio...
RASS and 6fusion USA, Inc. announced a partnership to co-deliver cloud hosted desktop and server app...
I can't let this experience go undocumented. I am sitting in Starbucks drinking a Mocha, writing a b...
The first "Ulitzer New Media Power Panel" took place today at the Santa Clara Convention Center in S...
A majority of executives polled by Deloitte (60.9 percent) believe cloud computing will be a transfo...
Google Thursday open sourced its Closure JavaScript tools – a compiler, a cross-browser, server-agno...