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
SYS-CON Events announced today that Yahoo!, a leading global Internet brand and one of the most traf...
With an ever-increasing number of companies now buying computing, storage, and networking power as t...
Yahoo! is investing significantly in Cloud Computing to support the company's global applications an...
SYS-CON Events announced today the latest event in its innovative series of real-world technology co...
ESRI, the leader in geographic information system (GIS) technology, was selected as one of two final...
Aster is seeking to level the playing field on the data warehousing entry front, and that message sh...
"What's fueling the interest in RIA?" asked Regev Yativ, President & CEO of Magic Software Enterpris...
The concept was very well received by non-developer IT Pro's and developers that are experts in othe...
Why are we so confident about the first point? Because IMAP support in WebMail Pro now includes quot...
Business users already heavily rely on their BlackBerry smartphones for telephone and wireless email...
Mimosa Systems, a provider of next-generation email, file and SharePoint archiving solutions, today ...
Businesses need the latest technologies to help them meet their needs, support their goals and compe...
F5 Networks, Inc., a provider Application Delivery Networking (ADN), has announced integration betwe...
Comodo's free pc security software, Comodo Internet Security, has earned five stars, the maximum num...
Oracle has announced the general availability of Oracle Service-Oriented Architecture (SOA) Suite 11...
As part of today's Oracle(R) Fusion Middleware 11g launch, Oracle announced that Oracle Fusion Middl...
With the advent of Cloud Computing, the cost of computation, application hosting and content storage...
Virtualization, viewed as one of the most promising technology investments in an economic downturn, ...
Red Hat, Inc., has announced the Premier Cloud Provider Certification and Partner Program, designed ...
“SOA serves as the foundation for the move into the cloud,” stated Dr. Kareem Yusuf, Director Produc...