Baixe o app para aproveitar ainda mais
Prévia do material em texto
Modelagem de Sistemas Marcelo Vasques de Oliveira Aula 1 Aula 1 – Paradigmas O.O e a UML Características e pilares do paradigma orientado a objeto Análise e projeto orientado a objeto A UML e seus diagramas 2 Modelagem de sistemas Processo intelectual e progressivo. Entendimento e mapeamento de uma realidade Modelos são usados para representar a realidade Maquete de um empreendimento imobiliário Diagramas no desenvolvimento de sistemas Ajudam aos profissionais a entender a realidade Modelagem de sistemas Conjunto de diagramas que representem a estrutura e comportamento do sistema 3 Paradigma Orientado a Objeto Paradigma = forma de abordar um problema. Orientado a objeto Identificar os objetos do mundo real envolvidos no contexto do sistema e a relação entre esses objetos. 4 Elementos básicos paradigma OO Objetos, mensagens, atributos, métodos e classes 5 Pilares da O.O Encapsulamento: esconder os atributos do acesso indevido de outros objetos. Os atributos devem ser acessados por métodos da própria classe 6 Pilares da O.O Herança: derivar novas classes a partir de outras já existentes - reuso. A classe descendente herda atributos e métodos da classe ancestral Economia: tempo/dinheiro; segurança 7 Pilares da O.O - Herança 8 Pilares da O.O Polimorfismo: Alterar o comportamento de uma classe herdada. Amplia o poder de reaproveitamento da herança Alteração (re escrita) de métodos 9 Pilares da O.O - Polimorfismo 10 Pilares da O.O Visibilidade: O que uma classe pode visualizar da outra. Garantir o encapsulamento Classes com métodos privados apenas ? 11 Conclusões Paradigma OO Conceito de encapsulamento Classes independentes, que facilita desenvolvimento e manutenção Herança e polimorfismo. Permite e facilitam a reutilização, útil para o desenvolvimento e manutenção As classes passam a ser componentes portáveis entre as aplicações Reusabilidade Extensibilidade Favorecem o desenvolvimento de sistemas grandes e complexos 12 UML Uma resposta ao mercado que precisa de diagramas compatíveis com desenvolvimento OO. Integração de 3 métodos OMT (Object Modeling Technique) de Jacobson OOSE (Object-Oriented Software Engineering) de Rumbaugh Booch Em 1997 é adotada pela OMG (Object Management Group ) como linguagem padrão de modelagem 13 A UML COMO LINGUAGEM PADRãO Linguagem padrão voltada para: Visualização: diagramas gráficos Especificação: Análise, projeto Construção : integrado a linguagens Documentação Independente do método de desenvolvimento usado. Não é um método, não é uma metodologia, não é um processo Não determina a ordem e nem quais diagramas devem ser usados no desenvolvimento 14 DIAGRAMAS DA UML – VERSãO 2.4.1 15 16 COMO USAR A UML ? Como esboço Foco: comunicação Expressar ideias Fomentar a discussão entre desenvolvedores Como projeto Foco : completeza Construção de um projeto completo, usando vários diagramas Compatível com os modelos iterativos incrementais PU (RUP) Metodologias ágeis 17 PROCESSOS ITERATIVOS E A UML Processo de desenvolvimento Abordagem para organizar as atividades de construção, implantação e manutenção PU (processo Unificado): RUP Metodologias ágeis: XP e SCRUM Processos iterativos Ciclo de vida em mini projetos curtos, preferencia com duração fixa (ex: 3 meses) – são as iterações Cada iteração contêm um sub conjunto das funcionalidades do sistema Baseados em incrementos sucessivos do sistema Entre as iterações temos ajustes e feedbacks 18 PROCESSOS ITERATIVOS E A UML 19 Processo com uso de 3 iterações. Em cada uma repete-se o conjunto de etapas. AS ETAPAS 20 Levantamento de Requisitos Levantamento e mapeamento das necessidades dos usuários Análise de Requisitos (“Faça a coisa certa”) Entendimento em detalhes dos requisitos e modelagem da solução lógica sem considerar aspecto físicos. – Domínio do problema Quais funções o sistema precisa para atender aos requisitos ? Projeto (“Faça certo a coisa”) Definição da arquitetura e componentes do sistema, com a visão da tecnologia a usar. AS ETAPAS 21 Implementação Codificação na linguagem de programação Testes Aferição se atende aos requisitos e qualidade do software Implantação. Treinamento, entrega e uso no ambiente dos usuários. UML E RESULTADOS DE CADA FASE Levantamento de Requisitos Diagrama de casos de uso + especificações informais Diagrama de classe conceitual Análise de Requisitos Diagrama de casos de uso + especificações completas Diagrama conceitual de classes Diagrama de Estados Diagrama de Atividades 22 UML E RESULTADOS DE CADA FASE Projeto Diagrama de classes de projeto Diagrama de sequencia Diagrama de estados Diagrama de componentes Diagrama de Implantação 23 Modelagem de Sistemas Marcelo Vasques de Oliveira Atividade 1 Exercícios 1) Como se chama o princípio que diz que: o acesso aos atributos de uma classe devem ser somente pelos métodos da classe e não diretamente por outra classe ? ( ) Herança ( ) Polimorfismo ( ) Entropia ( ) Encapsulamento ( ) Visibilidade 25 Exercícios 2) Analise as sentenças a seguir: I. A herança garante reuso e consequente economia de tempo e dinheiro II. O polimorfismo diz que os atributos devem ter visibilidade privada III. Sem herança não há como ter polimorfismo. IV. O encapsulamento visa garantir o desenvolvimento de classes independentes. Assinale a única alternativa CORRETA ( ) Estão corretos apenas I e III ( ) Estão corretos I, II, III e IV ( ) Estão corretos apenas I e IV ( ) Está correto apenas III ( ) Estão corretos apenas I, III e IV 26 Exercícios 3) No que se refere a UML (Linguagem Unificada de modelagem), assinale a única alternativa INCORRETA. ( ) É independente de processo de desenvolvimento de software ( ) Contém um conjunto de diagramas com diferentes visões ( ) A UML destina-se a visualização, especificação, construção e documentação de sistemas orientados a objeto. ( ) Nasceu da união de métodos usados, na época, pelos principais profissionais do mercado. ( ) Voltada especificamente para a modelagem de requisitos 27 Exercícios 4) Analise as assertivas sobre os processos iterativos I. São processos onde o ciclo de vida do sistema é dividido em uma série de mini projetos e de curta duração. II. Cada iteração contém um subconjunto das funcionalidades do sistema. III. Em cada iteração temos as atividades de Levantamento de Requisitos, Análise de Requisitos, projeto, implementação, testes e implantação IV. São modelos ultrapassados e não adequados a UML ( ) Estão corretas apenas I e II ( ) Estão corretas I, II, III e IV ( ) Estão corretas apenas II e IV ( ) Estão corretas apenas I, III e IV ( ) Estão corretas apenas I, II e III 28 Exercícios 5) Como se chama o diagrama que mostra as funcionalidades do sistema e os atores que com elas interagem? ( ) Diagrama de classes ( ) Diagrama de estados ( ) Diagrama de componentes ( ) Diagrama de sequencia ( ) Diagrama de casos de uso 29 Exercícios 6) Assinale a opção que apresenta o diagrama da UML que: mostra o comportamento do ciclo de vida de cada objeto ( ) Diagrama de classes ( ) Diagrama de colaboração ( ) Diagrama de objetos ( ) Diagrama de Implantação ( ) Diagrama de Estado 30 Visibilidade Comentários + Publico Qualquer classe pode usar o método ou atributo - Privado Apenas a propria classe pode usar o metodo ou o atributo ~ Pacote Apenas classes dentro do pacote podem usar o método ou atributo # Protegido Apenas as subclasses (herança), ou classe especializada pode usar o atributo ou método Casos de Uso Mostra as funcionalidades do sistema e os atores Classes O mais popular dos diagramas. Apresenta as classes presentes no sistema e os vários tipos de relacionamentos existentes entre eles. Descreve para cada classe, suas propriedades (atributos e métodos). Sequencia Mostra como os objetos interagem para a realizaçãode um caso de uso, detalhando a troca de mensagem entre os objetos. Estados Mostra, para cada objeto do sistema, o seu ciclo de vida. Atividades Descrevem a lógica de procedimentos, processos de negócios e fluxos de trabalho, suportando processamento sequencial e paralelo. Implantação Determina o ambiente físico sobre o qual o sistema vai operar. Determina as necessidades de hardware do sistema, evidenciando características físicas dos servidores, estações, protocolos de comunicação, redes e etc. Componentes Apresenta diferentes componentes de um sistema, além de possíveis dependências entre eles. Comunicação São os antigos Diagramas de Colaboracão, que junto com o diagrama de sequencia forma os diagramas de interação, porém não focam a temporalidade (sequencia). Casos de Uso Mostra as funcionalidades do sistema e os atores Classes O mais popular dos diagramas. Apresenta as classes presentes no sistema e os vários tipos de relacionamentos existentes entre eles. Descreve para cada classe, suas propriedades (atributos e métodos). Sequencia Mostra como os objetos interagem para a realização de um caso de uso, detalhando a troca de mensagem entre os objetos. Estados Mostra, para cada objeto do sistema, o seu ciclo de vida. Atividades Descrevem a lógica de procedimentos, processos de negócios e fluxos de trabalho, suportando processamento sequencial e paralelo. Implantação Determina o ambiente físico sobre o qual o sistema vai operar. Determina as necessidades de hardware do sistema, evidenciando características físicas dos servidores, estações, protocolos de comunicação, redes e etc. Componentes Apresenta diferentes componentes de um sistema, além de possíveis dependências entre eles. Comunicação São os antigos Diagramas de Colaboracão, que junto com o diagrama de sequencia forma os diagramas de interação, porém não focam a temporalidade (sequencia). Casos de Uso Mostra as funcionalidades do sistema e os atores Classes O mais popular dos diagramas. Apresenta as classes presentes no sistema e os vários tipos de relacionamentos existentes entre eles. Descreve para cada classe, suas propriedades (atributos e métodos). Sequencia Mostra como os objetos interagem para a realização de um caso de uso, detalhando a troca de mensagem entre os objetos. Estados Mostra, para cada objeto do sistema, o seu ciclo de vida. Atividades Descrevem a lógica de procedimentos, processos de negócios e fluxos de trabalho, suportando processamento sequencial e paralelo. Implantação Determina o ambiente físico sobre o qual o sistema vai operar. Determina as necessidades de hardware do sistema, evidenciando características físicas dos servidores, estações, protocolos de comunicação, redes e etc. Componentes Apresenta diferentes componentes de um sistema, além de possíveis dependências entre eles. Comunicação São os antigos Diagramas de Colaboracão, que junto com o diagrama de sequencia forma os diagramas de interação, porém não focam a temporalidade (sequencia).
Compartilhar