Escolar Documentos
Profissional Documentos
Cultura Documentos
Excerto Livro CA Uml Vol2
Excerto Livro CA Uml Vol2
Portugal/2008
Tecnologias
Direco grfica Centro Atlntico Reviso Centro Atlntico Capa Paulo Buchinho Impresso e acabamento PapelMunde 1 edio Maro de 2008 ISBN 978-989-615-061-7 Depsito legal /08
Centro Atlntico, Lda., 2008 Av. Dr. Carlos Bacelar, 968 Escr. 1 A 4764-901 V. N. Famalico Rua da Misericrdia, 76 1200-273 Lisboa Portugal Tel. 808 20 22 21 geral@centroatlantico.pt www.centroatlantico.pt
Marcas registadas: Todos os termos mencionados neste livro conhecidos como sendo marcas registadas de produtos e servios foram apropriadamente capitalizados. A utilizao de um termo neste livro no deve ser encarada como afectando a validade de alguma marca registada de produto ou servio. O Editor e os Autores no se responsabilizam por possveis danos morais ou fsicos causados pelas instrues contidas no livro nem por endereos Internet que no correspondam s Home-Pages pretendidas.
mento baseado em modelos). Em relao aos captulos relativos s duas ferramentas UML, analisadas na primeira edio, decidimos avaliar o Rational Software Architect, uma das ferramentas que sucedeu ao Rational Rose, por continuar a ser uma das referncias do mercado (obviamente reflectindo as verses mais recentes), e substituir o System Architect pelo Enterprise Architect, devido s capacidades desta ltima ferramenta e sua crescente utilizao no mercado. Devido crescente importncia do paradigma do desenvolvimento baseado em modelos (MDE Model Driven Engineering), inclumos um novo captulo que, para alm de caracterizar melhor o mbito deste conceito, descreve uma iniciativa de investigao o ProjectIT que se baseia nestes princpios, e na qual os autores tm vindo a participar ao longo dos ltimos quatro anos.
Lisboa, Janeiro de 2008 Alberto Manuel Rodrigues da Silva Carlos Alberto Escaleira Videira
A segunda razo deve-se ao facto dos tpicos abordados neste livro exigirem uma formao significativa e principalmente uma adequada e correspondente actuao. No basta dominar um conjunto alargado de conceitos e notaes para especificar software, mas fundamental aprender a aplic-los de forma consistente, repetida e sistemtica; adapt-los s condicionantes e realidades de cada empresa, ou de cada projecto em particular; e ainda partilhar tcnicas e mtodos entre todos os indivduos da empresa, ou de cada projecto, para que a comunicao entre todos os intervenientes seja maximizada e eficiente. A terceira razo, consequncia das razes anteriormente referidas, o facto de ser oneroso a adopo efectiva e produtiva (dos tpicos abordados neste livro) no seio das empresas. Oneroso em termos do tempo inicial que necessrio despender em formao, em termos da resistncia mudana, assim como o investimento necessrio na seleco e aquisio de ferramentas CASE que potenciem significativamente as suas vantagens. Este livro surge na sequncia da experincia dos autores em actividades de investigao, mas principalmente em actividades de consultoria e de docncia nas reas de engenharia de software e de sistemas de informao. Os temas abordados neste livro so na sua maioria influenciados pelo trabalho de unificao e de evangelizao dos trs amigos: Grady Booch, Ivar Jacobson e James Rumbaugh. Todavia, da nossa exclusiva responsabilidade o estilo do livro, assim como a sua estrutura, contedo, exemplos e exerccios propostos (tal como as correspondentes gralhas e omisses decorrentes!). O livro condensa e integra informao dispersa por alguns livros da rea, em particular os seguintes ttulos: OMG Unified Modeling Language Specification [OMG99], The Unified Modeling Language User Guide [Booch99], The Unified Software Development Process [Jacobson99], Visual Modeling with Rational Rose 2000 and UML [Quatrani00] e The Rational Unified Process [Kruchten00]. No entanto, h inmeros aspectos que o livro prope e discute de forma nica, dificilmente encontrados em qualquer dos livros referidos. A nvel internacional, existe um nmero relevante de ttulos nesta rea; contudo, h reconhecidamente, na lngua portuguesa, uma lacuna muito significativa. Paralelamente, e em consequncia da nossa experincia e responsabilidade de docncia, superviso e coordenao de trabalhos finais de curso e de investigao identificmos a necessidade e oportunidade de produzirmos este livro com vista a apoiar a aprendizagem da engenharia de software nos tpicos referidos. A temtica tratada neste livro abrangente e a sua profundidade , propositadamente, de nvel intermdio. Inmeros assuntos podero ser analisados e aprofundados complementarmente, entre os quais destacam-se, a ttulo de exemplo, os seguintes: arquitecturas de sistemas de software [Hofmeister99]; processos de negcio em contextos organizacionais [Penker00]; padres de anlise [Fowler96]; padres de desenho em infra-estruturas de software (frameworks) [Souza99]; modelao de dados [Muller00]; modelao de aplicaes segundo o paradigma dos agentes de
software [Odell00], modelao de aplicaes de tempo real [Selic94], ou modelao de aplicaes interactivas [Nunes99]. Todos estes tpicos so importantes nos seus respectivos contextos de aplicao; muitos so alvo de intensa actividade de estudo e investigao. Todos eles apresentam, contudo, um denominador comum: baseiam-se no conhecimento introduzido, apresentado e discutido neste livro.
Audincia do Livro O livro pretende servir como referncia de suporte a um nmero restrito de disciplinas de nvel de ensino superior na rea de sistemas de informao. Consequentemente, o livro adopta um estilo tendencialmente pedaggico atravs da apresentao e discusso de exemplos, da narrativa de histrias e factos reais, ou pela proposta de exerccios acadmicos. O primeiro perfil de leitores deste livro vai directamente para os alunos de licenciatura e de cursos de ps-graduao em engenharia informtica ou em informtica de gesto. Pressupe-se que os leitores j sabem implementar aplicaes informticas; e que neste livro procuram aprender a reflectir sobre o processo de desenvolvimento de software, e aprender tcnicas e prticas consistentes e sistemticas para o realizar. Adicionalmente, este livro relevante para um nmero mais alargado de leitores, em particular para investigadores, gestores informticos, responsveis pelo processo de desenvolvimento de software, analistas-programadores, e outros que necessitem de especificar de forma mais ou menos detalhada sistemas baseados em software. O livro pressupe um conjunto de pr-requisitos que o leitor dever possuir para o poder usufruir devidamente. suposto o leitor possuir um conhecimento razovel sobre as bases da informtica e dos sistemas de computadores, tais como noes essenciais de programao, de bases de dados e de sistemas operativos.
Organizao do Livro A segunda edio do livro encontra-se organizada em 2 volumes, 4 partes, 17 captulos e 2 apndices conforme se resume de seguida. No primeiro volume incluem-se as 2 primeiras partes e no segundo as restantes; os apndices so includos em ambos os volumes. VOLUME 1 ENQUADRAMENTO E LINGUAGEM UML A Parte 1 (INTRODUO E VISO GERAL) do primeiro volume apresenta conceitos gerais, viso histrica e enquadramento da realizao deste livro. Inclui os captulos 1, 2 e 3. A Parte 2 (LINGUAGEM DE MODELAO UML) do primeiro volume constituda por 7 captulos complementares, sendo que o Captulo 4 d a viso histrica e geral do UML
e o Captulo 9 descreve sucintamente alguns aspectos considerados avanados, no essenciais para o leitor que apenas pretende usar e aplicar as caractersticas bsicas do UML. Os restantes captulos (Captulos 5, 6, 7 e 8) constituem o centro desta parte do livro e devero ser lidos de forma sequencial conforme proposto. Adicionalmente, o Captulo 10 discute vrios aspectos relacionados com a problemtica de modelao de dados aos seus diferentes nveis, em UML; e descreve regras de mapeamento de modelos de dados de uma representao de alto nvel (e.g., em UML) para uma representao mais prxima do desenho fsico das bases de dados. VOLUME 2 METODOLOGIAS E FERRAMENTAS CASE A Parte 1 (METODOLOGIAS DE DESENVOLVIMENTO DE SOFTWARE) do segundo volume apresenta exemplos concretos de propostas metodolgicas de desenvolvimento de software, nomeadamente: o RUP (no Captulo 1), o ICONIX (no Captulo 2), e as metodologias geis, em particular o XP e o Scrum, descritos respectivamente no (Captulo 3). A Parte 2 (FERRAMENTAS CASE) do segundo volume apresenta a problemtica das ferramentas CASE descrevendo o seu significado, evoluo histrica e discutindo mecanismos de caracterizao e avaliao (Captulo 4). So apresentadas e analisadas duas das ferramentas que tm feito um investimento forte na modelao em UML, o Rational Software Architect, um dos sucessores do Rational Rose analisado na primeira edio do livro, e o Enterprise Architect, respectivamente nos Captulos 5 e 6. No Captulo 7 apresentada a iniciativa ProjectIT que se enquadra no mbito das abordagens de desenvolvimento baseadas em modelos. No Apndice A (Guia de Recursos Electrnicos) apresenta-se, de modo classificado, um conjunto significativo de recursos electrnicos sobre os temas abordados neste livro. No Apndice B (Glossrio, Siglas e Abreviaturas) apresentam-se trs tabelas com informao relativa ao glossrio, as siglas, e as abreviaturas adoptadas ao longo de todo o livro. Em Referncias listam-se, por ordem alfabtica, todas as referncias bibliogrficas utilizadas ao longo do livro. Por fim, inclui-se o ndice Remissivo que constitui um mecanismo tpico de trabalho e de consulta neste gnero de literatura.
Notao Adoptada Ao longo do livro so adoptadas genericamente as seguintes regras de notao textual:
Nomes e expresses em ingls so escritos em itlico. As excepes so expresses vulgarmente adoptadas para o portugus (e.g., software, bit), expresses intensamente usadas ao longo do texto (e.g., Internet, Web, standard), ou nomes de empresas ou produtos de origem anglo-saxnica (e.g., MS-Word, Enterprise Architect). Frases e expresses que se pretendam destacar so escritas com nfase (i.e., negrito). Exemplos de cdigo, pseudo-cdigo, nomes de classes, ou endereos electrnicos so apresentados numa fonte de tamanho fixo (i.e., Courier).