Modern day applications are way more complex than predecessors such as client-server or mainframe applications. Technologies such as the Internet, Java Enterprise Edition (Java EE) and Service Oriented Architecture (SOA) have revolutionized the way that applications are built and integrated. They are multi-tier and run on heterogeneous platforms. They depend upon several resources within and outside of organizations. Today's resources may include an application running on a mainframe system, or an ERP system, or resources made available by a partner through the Internet, intranet, or extranet. As an administrator, you may not have control over these resources, or applications—however, you are responsible for their performance.
Some of the typical characteristics of modern applications are:
Deployed on an application server or middleware
Depends on databases and messaging providers
May depend on applications running on mainframe systems or legacy systems
May depend on external services available over the internet or extranet
May depend upon complex and long running business processes
May have complex routing or workflow requirements
May depend on a clustered caching service for faster data access
Also, today's applications have complex requirements with associated and specific requirements such as:
Availability
Service Level
Compliance and security
If you are a middleware administrator, you know that you have a lot of things to do! You have to wear several hats from time to time.