Abstract :
For many software-development managers, staying abreast of the many new technologies that affect the systems we build is nearly impossible. One of the most complex and confusing technology areas is middleware-the cornerstone required to build enterprise-scale distributed systems. Within this esoteric technology domain, it´s all too easy to hold up our hands and declare that the outlook is bleak for any kind of consensus on the direction distributed systems will take. Enterprise application integration issues, the nuances of competing middleware products from lots of vendors, and several overlapping standards activities all contribute to the confusion and uncertainty. To help us make sense of the middleware muddle, I discuss the key concepts and issues involved. To better understand recent progress in this arena, the focus is on current best practices for building enterprise-scale systems. That way, we can assess the current state of the technology and its impact on potential future strategies for distributed-systems developers. I begin by generalizing that any successful solution in enterprise-scale software engineering has four key elements: processes, infrastructure, tools, and adoption services. I briefly review current best practice in each of these four areas
Keywords :
business data processing; client-server systems; software development management; software standards; adoption services; best practices; enterprise application integration; enterprise-scale distributed systems; infrastructure; middleware; processes; software development managers; standards activities; tools; vendors; Application software; Assembly systems; Asynchronous communication; Buildings; Capability maturity model; Message-oriented middleware; Object oriented modeling; Operating systems; Real time systems; Unified modeling language;