You may have noticed lately that a new terminology has surfaced in the way we talk about testing, validating and virtualizing software architectures of a certain type: Modern Applications. Most recently it was used in our release on the HP / iTKO agreement, and you can also see it now on our website. So why is this distinction important?
Understandably, the first thing that may spring to mind with "Modern Apps" is an architecture akin to a Mondrian compartmentalized painting, or maybe some kind of new wave synth music. However, the use of "Modern" makes a lot of sense in encompassing several commonalities inherent in today's enterprise software, without requiring adherence to a specific architectural approach such as SOA.
In short, "Modern Applications" are today's class of distributed, multi-tier, object-based, flexibly assembled software architectures, used to support complex business workflows. Modern applications may include all of the above technologies or architectures (SOA, REST, BPM, Virtualization, MDM, Cloud Computing, SaaS, what have you). While that sounds very general, that defines the kind of software we see getting put in place in most leading enterprises today. We are seeing analyst traction in this sense too, for the natural result of "legacy modernization" should, by rights, lead to "modern applications."
A couple days ago we had a live webinar with Perficient's chief technologist and SOA blogger Eric Roch - and we started with SOA but quickly migrated to other integration platforms, the use of Service Virtualization and Data Management which are very different from SOA, and there are many other aspects of Modern Apps that are not relevant to SOA. (You can watch a WebEx archive of the 9/26 webinar with iTKO and Perficient here.) Eric recently wrote about this in his blog: "Do We Need more than SOA for a Modern Application Architecture?" as well:
"While SOA is certainly a big part of the solution, a total modern architecture also includes leveraging business process management (BPM), data management and Web 2.0 technologies. SOA alone does not implicitly improve governance, IT strategy or business alignment, and top-down, strategic SOA has been largely disappointing."
We definitely agree. What is relevant is that this category of applications are pulled into an environment where they are built, leveraged and shared among multiple development teams and business partners - Modern Applications are not "stovepipe" architectures designed and built by a single team with a rigid set of protocols. Modern Apps are the kinds of flexibly assembled, agile software structures that modern businesses demand, in order to be competitive.
SOA, even if the term fades away, would be considered modern as a model for designing and building applications. However SOA alone leaves out a lot of other strategic and technology advances we are seeing in today's enterprise. We hope this explains our use of this admittedly broad term adequately. Your thoughts on this topic welcome!

Comments