Derek C. Ashmore's Blog, page 6

March 1, 2015

The Difference between Architecture and Design

Architecture is more about 'what' is being built (e.g. interface definitions, which apps and modules will be developed or used and what they are responsible for).  Design is more code level and is more about 'how'.
Objectives for the architect:
  Enhance technology support for business change.  Optimize developer productivity.  Minimize support infrastructure needed.  Optimize development throughput.  Protect value for technology investments (includes risk mitigati...
 •  0 comments  •  flag
Share on Twitter
Published on March 01, 2015 06:59

February 22, 2015

Continuing Education for Architects

As fast as technology changes, members of the information technology field, no matter what role they fill (developer, architect, project manager, etc.), are effectively in a never-ending continuing education course.  It’s not a formal course and is entirely self-directed.  It doesn’t have formal grades, although your success in the field is effectively the grading system.  Some resist this concept and learn only under duress.  
I’ve received requests my readers in the past...
 •  0 comments  •  flag
Share on Twitter
Published on February 22, 2015 03:18

November 5, 2014

Is it a bad practice to catch ‘Exception’?

I recently encountered an organization that religiously enforces the Checkstyle IllegalCatch rule (reference here) and mandates following it for all production code.  This rule seeks to ensure that developers don’t catch Throwable, Exception, or RuntimeException directly. The assertion is that it is always a better practice to catch more specific exceptions.  This rule seems a bit draconian to me, so I did a little surfing to see what others thought.  It seems the question...
 •  0 comments  •  flag
Share on Twitter
Published on November 05, 2014 03:10

May 28, 2014

Handling External Processes in Java made Easy

Handling external processes in Java has never been easy.  The JDK provides a way to start and manage external processes and they do work; but they are awkward.  If the process hangs for some reason, getting at the input and output streams to figure out what’s going wrong is a pain.
I ran into this issue recently with my work on the Transform4J project, am open source Java ETL Transformation API,  where my test cases need to start and stop databases such as Cassandra and MongoDB....
 •  0 comments  •  flag
Share on Twitter
Published on May 28, 2014 02:41

March 20, 2014

A JSON Library Evaluation for Java EE applications

I have a need to enhance a set of Java EE applications to support mobile development projects.   As mobile developers seem to prefer JSON formats to XML for passing data to/from mobile devices, I had a need evaluate current Java JSON libraries for use by the supporting Java EE applications.  The client prefers open source products to vended products.  The most prevalent open source product choices seem to be the following:

Json.org – (http://json.org/java/ )Google GSON V2.2.4 –...
 •  0 comments  •  flag
Share on Twitter
Published on March 20, 2014 01:10

October 6, 2012

Are Commercial J2EE Application Servers worth their cost?


If the market is any indication, the answer is a resounding no!  Check out market share research conducted earlier this year and published on Silicon Angle. The two largest commercial application servers Websphere and Weblogic have a whopping 2.17% market share between them. The lion share of the market is going to open source application servers such as Tomcat and JBoss.As an architect and developer, I've always thought open source application servers easier to support. In most organizat...
 •  0 comments  •  flag
Share on Twitter
Published on October 06, 2012 05:37

March 15, 2012

Design Tips for Integrating Your Java/J2EE Applications with 3rd Party Software Products


Those of us writing Java/J2EE applications are commonly asked to interface with other applications we don't control. Sometimes, these are other custom applications written and managed by other teams. Sometimes, these are vended applications. Often, these applications are on a different platform (e.g. .Net) and sometimes not even designed to be integrated easily with custom applications. I refer to these types of interfaces as external [application] interfaces . External interfaces like these a...
 •  0 comments  •  flag
Share on Twitter
Published on March 15, 2012 01:44

February 19, 2012

Four Tips for Reducing J2EE Application Costs

Much has been made of J2EE application complexity and what managers perceive as high development and support costs. I don't want to spark a religious war over choosing J2EE vs. .Net or LAMP. But, there are ways that managers can minimize J2EE application development and support costs (or decrease them over time if you have a large J2EE investment currently). Adopt one J2EE web framework and standardize its use for all J2EE applications throughout the enterprise. Web framework product choices...
 •  0 comments  •  flag
Share on Twitter
Published on February 19, 2012 08:12

January 31, 2012

How to Reduce External Dependencies for your Java Libraries

For people who write or contribute to java open source products, external dependencies are a blessing and a curse. They are a blessing in that these external dependencies provide needed functionality that shortens development. I couldn't imagine writing code without the benefit of Apache Commons Lang, Commons Collections, Commons IO, Commons BeanUtils, and many more. They shorten development a tremendous amount, but for open source libraries, they also present problems.
The first problem is th...
 •  0 comments  •  flag
Share on Twitter
Published on January 31, 2012 00:47

January 16, 2012

The Benefits of a Standardized Application Architecture

There is much literature on software architecture and design. Most of that literature focuses on coding patterns and best practices. That is, the literature focuses on an applications internal structure and improving quality at a code level, usually with a single application as the intended scope. In fact, most application architectures are created and deployed for a small number of applications. It's time we looked at the larger picture and considered the benefits of deploying an standardize...
 •  0 comments  •  flag
Share on Twitter
Published on January 16, 2012 22:25