Transforming Your Enterprise Application Platform

Even during the best of times, you are always looking to reduce costs and improve the time-to-market of new IT features and applications. In today's difficult economic climate, you are faced with a squeezed budget and a trimmer staff, yet your clients demand faster and better delivery. Something's got to give, but what? Fortunately, for you and your organization, there is "gold" in your enterprise application platform. Do you really need to be paying all those licensing fees? What was the argument for buying those costly licensed products in the first place - instead of that low or no cost alternative? Is that argument still valid?

It just may be that a transformation of your technical platform could result in a cheaper and more responsive delivery capability. Some studies suggest that organizations that employ commercially licensed software as the core of their application platforms spend 30% of total application cost in up-front and recurring licensing fees. This doesn't mean that you can toss these components out in favor of their low-cost alternatives and just kick back and start counting your savings. If it were that easy, you would have done that already. So, what's the catch? Well, for one thing, some of your commercially licensed components may be quite necessary for your unique functional, administration or performance needs. Plus, moving to an open source or low cost licensing platform like Red Hat, Apache or Spring comes with its own costs. Up-front training and hiring of personnel takes time and money: And where do I turn when there is a problem with an open source technology? What does it mean to me if that open source product has a "copylefting" license?

Fortunately, the argument for moving, at least in part, to a low or no-cost software stack is stronger today than ever. Vendors like Red Hat invest heavily in open source technologies, augment them with their low-cost licensed products, add administration tools, and most importantly, they provide support.

Lowering licensing costs is one major reason to transform your enterprise application platform, but there are many others:

  • Are parts of your current platform no longer being supported by your commercial vendor?
  • Is it difficult to hire for the skill sets required?
  • Does it take too much effort to deliver new features and applications?
  • Is your platform difficult to administer?
  • Does it lack scalability?

Whatever the drivers and regardless of whether you intend to move towards open source or commercial products, transforming your application platform is a major undertaking. This is where we can help!

In 1997, Distributed Logic was founded as an architecture-first firm, driven by a firm understanding that building application portfolios on a strong enterprise architecture foundation is of profound importance. Our commitment to the art of enterprise architecture, our hands-on involvement with today's best application platforms and our broad experience with service-oriented, event-driven, high performance, and large-volume applications makes us the ideal partner to install your new strategic architecture.

We offer a process that moves you from the point of wanting to make a change to the establishment of your first application on your new platform.

Strategy Formulation

We start by facilitating, capturing and formalizing current pain points and strategic goals for your application platform. We then perform a gap analysis against your existing technology set and turn this analysis into an opportunity evaluation.

Opportunity Evaluation

We inventory the individual components of your current technology stack, detail their roles, identify their respective costs, and evaluate each against strategic goals:

  • Is there a viable, cheaper alternative?
  • Do you have multiple components that serve the same purpose?
  • Can it perform to specifications?
  • Can you find people with the appropriate expertise?
  • Does it adhere to open standards?
  • Does it integrate well with this other product?
  • etc.

Often, there are cheaper, more performant alternatives. Our breadth of experience and our trove of product evaluations can help you to create a target stack and alternatives in quick order. However, after potential technology stacks have been first identified, there is more work to be done. For one, we need to understand the total cost of ownership for each alternative, and we need to compare this analysis against each other and against your current stack. Our experience and our process in creating a holistic view of costs ensures that you move to a new stack without hidden gotchas. How much will it cost to move from my current platform to the new platform? Does my current architecture adhere to open standards, making such a transition easier?

At this point, you understand potential target stacks, their costs and a ballpark for migration, but can you be sure that each target component works as advertised? In the next step in our process, we selectively dig deeper into these candidate technologies.

Prove It

It's time for a healthy dose of skepticism. Does the product work as advertised? You may not need to test a widely-adopted component framework like Spring to see if dependency injection works as advertised, but just how difficult is it to manage queueing services in a clustered environment?

Whether we're proving our recommendations to our client or we have our own doubts, proofs-of-concept is a staple of our engagements. We jointly develop a proof-of-concept designed to test suspect product features against your requirements, setup the environment, develop the proof, write the test tools and watch the sparks fly. After several iterations of tweaking, we know, one way or another, whether this product lives up to its promise. From here, we target another product or move forward with often-reusable code and always-valuable experience with a proven product.

This experience firms up our technology stack selection and provides direct input into the architectural process.

Enterprise Application Platform Architecture

The best technology stack can be ruined by poor or incomplete architecture and the worst stack can be made adequate through expert design. So, what do we get when we combine a quality stack with excellent architecture? A cost-effective, responsive and scalable application platform: that's what.

As we mentioned earlier, enterprise architecture is our original and key competency. We don't just deliver a few conceptual component diagrams, rip off a proof or two and hand you a boilerplate document. We deliver a comprehensive blueprint that explains the components, their roles & responsibilities and how they work together to accomplish all the key architectural patterns that your application platform requires. We answer questions like:

  • How do I reliably coordinate an extended business transaction across layers of my stack?
  • How do I execute business transactions across discrete applications, when some of the applications may not be available?
  • How do I externalize my business rules?
  • How can I scale one application independent of another?
  • How can I integrate my business partner's transactions into my own?
  • How do my components maintain state in clustered environments?
  • How do I transform between relational and object data?
  • How do I compliment my backend validation framework with client-side validations?
  • How do I leverage aspect-oriented programming to create the most flexibility in my architecture?

We make sure that your architecture not only meets your functional specifications but also addresses important, but often-overlooked requirements. For example: Part of your total cost of ownership is the eventual replacement of components of your new stack. To mitigate these costs, you must adhere to open standards. Just because you might use open source doesn't mean that you adhere to open standards, and just because you may have built on a commercial technology stack does not preclude you from adhering to open standards. Adherence to these standards not only reduces eventual sunsetting costs, but allows a greater degree of plug-and-play across your stack and reduces potential integration issues.

Once the architecture has been well-detailed, we then compare it against business timelines and a plan is made that phases in platform components as needed. Out of this timeline comes both a work and staffing plan.

Next, we take our first steps into the new platform.

Building Client Competency

We believe that organizations only realize the benefits of their new strategic platform when they have built a sound competency center that can deliver on the platform into the future.

We excel at helping our clients to formally and informally train and recruit staff, and we embrace integrated project teams. Our passion for technology transformation and architecture spills over into our client relationships from the day we walk in the door, and become especially evident now as we impart our knowledge into the people who will carry the torch forward in your organization. In addition to hiring-in and training existing people, we recommend that we engage together to establish the first application in the new architecture.

Establish the First Application in the New Architecture

Based on existing skill sets, project timelines, staffing levels and many other factors, we together create an integrated project team to deliver this first project. In this stage, we offer as many different services as there are ways to configure a project team.

Our seasoned project management team has experience in managing integrated teams, including those with an overseas / offsite component. They pay special attention to transparency of management and take pride in their flexibility. Our project management staff also pays special attention to project risks and employ risk-mitigation strategies. In keeping with that attitude, we are also firm believers in frequent, visible deliverables and methodologies and tools needed to support that.

Our business analysis team can document existing systems and develop new requirements, using the latest requirements management strategies, methodologies and software.

Our application development staff is experienced in the target technologies and tools. They are enthusiastic partners in integrated teams, and they understand the delicate culture of such teams. Our techies take a great deal of pride in not only delivering solutions, but building trust and expert knowledge among their client counterparts.

Our staff is well-versed in a variety of systems development life cycle methodologies, from high-ceremony to Agile.

All of our teams also come equipped with a project management portal for use by the integrated team.