Prévia do material em texto
Modelagem de Sistemas Aula 1 --- Conceitos do Paradigma Orientado a Objetos A tarefa principal [e identificar objetos do mundo real envolvidos no contexto do sistema e a relação entre eles. Ao identificar um objeto, é identificado os dados (atributos) e as funcionalidades (funções). OBJETO = DADOS + FUNÇÕES --- Orientação a Objeto (OO) - Objeto Coisas a serem modeladas do mundo real. Pode ser algo concreto como um carro, aluno, ou algo abstrato como uma disciplina, um curso. Cada objeto possui seus dados. - Classes Conjunto de objetos com as mesmas características (atributos e métodos). Podemos dizer, que Objeto é uma instância de uma Classe. - Mensagens Quando um objeto executa uma operação de responsabilidade de outro, ele manda uma mensagem para o outro objeto, informando o que precisa ser feito. Essa operação é implementada por um método da classe que recebe a mensagem. - Método É um procedimento que executa uma operação em um objeto. --- Pilares Permitem que classes sejam reaproveitadas, otimizando tempo e custo de desenvolvimento. - Encapsulamento (Privados) Esconder, ou seja, o objeto esconde seus dados (atributos) do acesso indevido de outros objetos. Dados somente são acessados por métodos da própria classe. - Herança Mecanismo para derivar novas classes a partir da definição de classes existentes através de um processo de refinamento. - Polimorfismo “Muitas formas”. Quando uma classe herda atributos e métodos de classes bases, ela tem poder para alterar os métodos. - Visibilidade Uma classe pode visualizar da outra. + Público - Privado ~ Pacote #Protegido --- Conclusão - Reusabilidade Softwares podem ser escritos com base em componentes existentes. - Extensibilidade Novos componentes de software podem ser desenvolvidos a partir de outros, sem afetar o comportamento do componente de origem. --- UML Linguagem padrão para construção de projetos de sistemas, voltada para “visualização”, “especificação”, “construção” e “documentação de artefatos”. Disponibiliza 14 diagramas, divididos em 2 grupos: - Diagramas de Estruturas - Diagramas Comportamentais - Diagramas: - Sequência Mostra como interagem e detalha a troca de mensagens entre objetos. - Estados Ciclo de vida de cada objeto. - Implantação Determina o ambiente físico, necessidades de hardware, redes, etc. --- - UML como esboço Foca na comunicação, serve para expressar ideias. - UML como projeto Sistema completo, usando vários diagramas. - Processos iterativos RUP, Scrum, XP. Ciclo de vida em mini projetos. Aula 3 --- Especificação de Casos de Uso Deve mostrar a interação entre ator e sistema. Existe 3 formatos: - Formato Resumido Resumo de um parágrafo, contendo o cenário principal e o cenário de sucesso. Utiliza na análise inicial de requisitos, para ter uma ideia do assunto e do escopo. - Formato Informal Múltiplos parágrafos que cobrem vários cenários. Mesma condição do “formato resumido”. Exemplo: “ Se o cliente informou o pagamento em cartão e a operadora não aprova a transação, informa o cliente e solicita uma nova forma de pagamento.” - Formato Completo Detalhe de todos cenários, com seções adicionais, adicionando elementos que definem os pré e pós-condições. Utilizado depois que muitos casos de uso estiverem sido descritos no formato resumo ou informal, durante a fase de análise de requisitos. Aula 4 Diagrama de Classes Molde Objeto Associação Exclusiva. O contrato é feito por uma pessoa ou empresa. Herança / Especialização / Generalização Agregação “Prova” existe sem as “Questões”. Composição “Pedido” necessita do “Itens Pedido”. Pedido depende dos Itens. Dependência Nome Relacionamento e Papéis Aula 5 Aula 6 Diagrama de Sequência Aula 7 Diagrama de Estados Aula 8 Fluxograma Aula 9 Diagrama de componentes Interfaces fornecidas Serviços oferecidos a outros componentes. Interfaces requeridas Interfaces usadas pelo componente. “ <--- ” Pois é conjunto. Sempre irá usar. “Gerenciador Caixa Eletrônico” sempre irá ser criptografado “Criptografia”. Diagrama de Implantação O diagrama de implantação mostra o layout físico de um sistema, revelando quais partes do software são executadas em quais partes do hardware (fowler). --- Nó Representa um recurso computacional de um sistema, como servidores, impressoras, terminais, Desktop, entre outros. --- Caminhos de Comunicação (Conexões) TCP/IP, porta USB, etc.