Extraído do Understanding Active X e OLE de David Chappel
"Ao longo dos últimos 35 anos, os desenvolvedores de hardware para computador passaram do projeto de equipamentos do tamanho de um hangar de computadores portáteis a minúsculos microprocessadores. No mesmo período, os desenvolvedores de softwares passaram de programas em montagem e COBOL à linguagem C e C ++. Poderíamos dizer que esse progresso (algumas pessoas discordariam), o mundo do software não avança tão rápido quanto o mundo do hardware. Então, o que tem os desenvolvedores de hardware que os desenvolvedores de software não tem?
A resposta está nos componentes utilizados. Se os engenheiros de hardware eletrônico tiveram que começar a partir de um monte de areia, toda vez que projetavam um novo dispositivo de hardware, e o primeiro passo foi a extração do silício para a fabricação de placas de circuito impresso, o progresso não foi tão rápido quanto é hoje para avançar neste setor. Um designer de hardware sempre constrói um sistema que se baseia nos componentes já preparados, cada um com uma função específica e fornece um conjunto de serviços através de interfaces definidas. A tarefa de designers de hardware é consideravelmente mais fácil graças ao trabalho de seus antecessores.
A reutilização dos componentes é também um método para criar software com melhores desempenhos. Ainda hoje, os desenvolvedores de software começam a partir de um monte de areia e seguem os mesmos passos dados por centenas de desenvolvedores no passado. Muitas vezes, o resultado é surpreendente, mas poderia ser melhorado. A criação de novos aplicativos a partir de componentes existentes que já foram testados, sempre tende a produzir códigos mais confiáveis. Além disso, ficou demonstrado que é mais rápido e econômico, fatores não menos importantes."
A abordagem modular do objeto envolve a criação de uma representação informática dos elementos do mundo real que estamos interessados, sem se preocupar com a implementação, quer dizer, independentemente de uma linguagem de programação. Embora, ela suponha a determinação de objetos e o isolamento de seus dados e funções que utilizam. Entre 1970 e 1990, vários analistas desenvolveram abordagens orientadas para o objeto e, por volta de 1994, havia mais de 50 métodos de objetos. No entanto, apenas 3 métodos realmente alcançaram a popularidade:
O método OMT de Rumbaugh
O método BOOCH'93 de Booch
O método OOSE de Jacobson
Em 1994, Rumbaugh e Booch (Jacobson juntou-se a eles em 1995) uniram forças para desenvolver a linguagem de definição UML (Unified Modeling Language) que define uma linguagem padrão, incorporando as vantagens de vários métodos anteriores (isto é, aqueles de outros analistas). Isso permite a programação completa de um aplicativo que usa uma linguagem com abordagem modular para todos os componentes do programa que está sendo desenvolvido.