Baixe o app para aproveitar ainda mais
Prévia do material em texto
09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 1/17 Disciplina: Projeto de TCC em Sistemas de Informação Aula 5: Solução proposta 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 2/17 Apresentação Chegamos a um marco no processo de desenvolvimento de software de seu Projeto de TCC. Já estudamos uma série de de�nições, agora é hora de descrevermos o sistema proposto, que seguirá as de�nições estabelecidas na proposta de trabalho e o paradigma orientado a objetos. Já a modelagem do sistema usará a linguagem de modelagem UML (Uni�ed Modelling Language). Veremos aqui é preciso ter cuidado e, se possível, garantias de que os requisitos estão sendo corretamente capturados e compreendidos pelos analistas de sistemas. Um dos fatores relevantes para a correta identi�cação e de�nição de requisitos é o uso das técnicas adequadas de levantamento de requisitos que estudaremos a partir de agora. Nesta aula, portanto, descreveremos os diagramas da UML que serão usados e a correlação entre eles, o que irá clarear o entendimento da solução escolhida para o sistema proposto. Objetivos Descrever os conceitos de requisitos: funcionais e não funcionais; Listar requisitos do sistema de seu TCC. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 3/17 Conceitos preliminares Paradigma orientado a objeto O paradigma orientado a objeto é aquele em que a implementação da solução do problema se dá por um conjunto de objetos que interagem. Cada objeto é responsável pela solução de parte do problema. O objeto é uma estrutura de dados abstrata, constituída por: • Atributos - dados necessários à solução da parte do problema de sua responsabilidade; e • Métodos - implementação da solução da parte do problema de sua responsabilidade. O acesso aos dados (atributos) de um objeto é protegido (encapsulado) pelos seus métodos, de forma que apenas os métodos do próprio objeto devem acessar os seus atributos. Um objeto é uma instância de uma classe. A classe é uma espécie de molde dos seus objetos. Exemplo Professor é uma Classe. Marcelo Vasques é um objeto (instância) da classe Professor. Comentário Particularmente, achamos que deveria ser programação orientada a objetos e análise e projeto orientado a classes. Durante a programação, lidamos com os objetos, pois eles vivem nas memórias dos computadores na execução dos programas. Já nos momentos de análise e projeto de sistemas a preocupação são as classes, ou seja, a estrutura dos moldes dos objetos. Os três pilares da orientação a objeto Os três pilares da orientação a objeto ou também paradigma orientado a objeto são: 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 4/17 A partir do momento em que uma classe herda atributos e métodos de outra classe base, ela tem o poder de alterar o comportamento de cada um desses procedimentos (métodos). Vantagens do paradigma orientado a objetos O paradigma orientado a objetos facilita o controle da complexidade, uma vez que promove a melhor estruturação de seus componentes, permitindo que seus componentes já usados e validados possam ser reaproveitados. Cabe ressaltar que uma das principais razões para a baixa produtividade no desenvolvimento de software é a di�culdade de reutilização de código usando o paradigma funcional. As hierarquias de classes (herança) são componentes portáveis entre aplicações, que, se bem projetados, podem ser reutilizados em vários sistemas sem modi�cação. Além disso, podem ser estendidos (polimor�smo) sem corromper o que já existe. Assim sendo, podemos dizer que o modelo de objetos proporciona modularidade trazendo os seguintes benefícios: Reusabilidade Softwares podem ser escritos com base em componentes já existentes. Extensibilidade Novos componentes de software podem ser desenvolvidos a partir de outros já existentes, sem afetar o comportamento do componente de origem. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 5/17 Comentário Sabe-se que softwares são intrinsicamente complicados devido a estes novos requisitos das aplicações modernas: • Alta con�abilidade; • Alto desempenho; • Desenvolvimento de software rápido e barato; • Alta complexidade; e • Tamanhos grandes. O modelo OO O modelo OO veio para combater os problemas derivados da crise do software. Este termo foi cunhado em 1968, na Europa, e caracterizado pelos seguintes problemas do software: Fonte: Shutterstock • Baixa con�abilidade; • Baixa qualidade; • Alto custo de manutenção; e • Duplicação de esforços na sua construção (tempo e dinheiro). Atenção Um sistema desenvolvido com as características do modelo OO tende a ser bem estruturado, posto que os objetos são unidades coesas com interfaces simples que escondem as suas implementações. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 6/17 Fonte: Shutterstock A UML UML é uma linguagem de modelagem, não é um método de desenvolvimento, nem tão pouco uma metodologia ou um processo de desenvolvimento de sistemas, uma vez que não determina a ordem e nem como os diagramas devem ser usados. Simplesmente disponibiliza os diagramas, sob as várias visões necessárias ao desenvolvimento de sistemas e cada empresa utiliza da forma como lhe convém, ou seja, adequando a UML ao seu processo de desenvolvimento de sistema. A UML é uma linguagem de modelagem que disponibiliza um conjunto de diagramas que permite a modelagem sob diferentes perspectivas atendendo às demandas de análise e projeto de um sistema. A linguagem de modelagem independente de processo de desenvolvimento de software, podendo ser usada em conjunto com: Metodologias ágeis, como SCRUM e XP, RUP (Rational Uni�ed Process). Modelos iterativos diversos. Modelo em cascata. Modelo em cascata com retroalimentação. Além desses, há outros que atendem ao desenvolvimento sob o paradigma orientado a objeto. Como a UML não determina quais diagramas usar e por onde começar, cada pro�ssional começa por onde quiser. Fonte: Shutterstock Exemplo 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 7/17 Muitos começam pelo diagrama de classes, na medida em que o consideram o diagrama mais relevante. Porém, outros iniciam pelo diagrama de casos de uso, cuja �nalidade é modelar as principais funcionalidades dos sistemas para atender às necessidades de seus usuários. Ambos estão usando a UML de forma correta e expressando a forma como visualizam a sequência mais adequada para desenvolver sistemas. Classi�cação dos diagramas da UML Os diagramas da UML são classi�cados em dois grandes grupos de relevante perspectiva na modelagem de sistemas: • Os diagramas que mostram a estrutura do sistema;e • Os diagramas que descrevem o comportamento do sistema. Comentário Nesta disciplina, desenvolveremos o diagrama de casos de uso e o diagrama de classes. Caso seu sistema seja grande, você pode usar diagrama de pacotes para segmentar a solução, embora esse diagrama não seja exigido pela estrutura de conteúdos do projeto de TCC (aula 1). Quais serão os nossos diagramas UML? Veja os diagramas UML que serão usados nesta disciplina: Diagrama Especificação Diagrama de classes O mais popular dos diagramas. Tem muitas informações, mas a principal finalidade é apresentar os tipos de objetos presentes no sistema e os vários tipos de relacionamentos existentes entre eles. Descreve, para cada classe, suas propriedades (atributos e métodos). (Uso Opcional) Diagrama de Pacotes Pacotes são elementos que englobam outros. O mais comum são classes, mas tem sido usado para outros elementos, especialmente casos de uso. Representam a divisão de um sistema grande em partes menores (modularização). Diagrama de Casos de Uso Mostra as funcionalidades do sistema e os atores que com elas interagem. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 8/17 Fonte: Shutterstock. Metodologia de modelagem No contexto do paradigma orientado a objeto, usa-se diagramas que ajudam na modelagem de análise (conceitual) e projeto (tecnológico) do sistema. Nesta disciplina, Projeto de TCC em Sistemas de Informação, descreveremos a solução conceitual, composta por um conjunto integrado de diagramas disponibilizados pela linguagem de modelagem UML (Uni�ed Modeling Language), acrescido das especi�cações textuais dos casos de uso e do modelo conceitual de dados através do Diagrama de Entidade e Relacionamento ou Modelo de Entidade e Relacionamento. Os documentos constantes da metodologia de modelagem proposta para a condução de seu TCC são: 1 Escopo da Solução 2 Requisitos do sistema 3 Diagrama de casos de uso (UML) 4 Especi�cações textuais dos casos de uso 5 Modelo conceitual de classes (UML) 6 Modelo conceitual de dados 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassMat… 9/17 A seguir vamos descrever como o seu projeto de TCC deve ser desenvolvido usando os artefatos acima e considerando o cronograma de entregas de seu projeto de TCC em Sistemas de Informação. Descrição da metodologia de modelagem Primeiramente, descreveremos em linhas gerais o que deve ser descrito em cada item de conteúdo de seu Projeto de TCC em Sistemas de Informação, conforme abaixo: 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 10/17 Clique nos botões para ver as informações. Deve-se descrever aqui a abrangência do sistema, especi�cando o que será considerado no projeto do sistema e o que não será considerado, na solução escolhida (a mais viável dentre as alternativas apresentadas). Descrever de forma macro as atividades da empresa e os bene�ciários que farão e os que não farão parte. Escopo da Solução Usando um template que será especi�cado na aula 6 (Requisitos), detalharemos todos os Requisitos (Funcionais e Não funcionais), além das regras de negócio. Aplicaremos uma metodologia que associa a cada Requisito Funcional (RF), as regras de negócio e também os requisitos Não Funcionais (RNF) a ele relacionados. Requisitos do Sistema O diagrama de casos de uso é um modelo da UML que apresenta, de forma grá�ca, as funcionalidades do sistema com os respectivos atores que com eles interagem. É um modelo simples, de fácil entendimento, que pode ser usado para aferição dos requisitos junto aos usuários do sistema. Diagrama de Casos de Uso (UML) O diagrama de sequência não mostra temporalidade nem tão pouco sabemos qual o comportamento de cada caso de uso. Para tal devemos especi�car textualmente o comportamento do caso de uso, mostrando a sequência das interações entre ator e caso de uso. Os documentos ou áudios com registros dos levantamentos de dados podem servir de base para essa especi�cação textual dos casos de uso. Não necessariamente as especi�cações textuais começam a ser detalhadas apenas quando o diagrama de casos de uso estiver 100% concluído. As duas atividades podem ser realizadas, em parte, em paralelo, caso seja mais produtivo e oportuno. Especi�cação textual dos casos de uso Um dos focos, talvez o principal, da análise e projeto de um sistema desenvolvido sob o paradigma orientado a objeto deve ser a de�nição do diagrama de classes, caracterizando a estrutura do sistema. Em última análise, o diagrama de classes que for implementado, será a solução tecnológica do sistema. Diagrama Conceitual de classes (UML) 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 11/17 O modelo de classes deverá ser persistido, em sua totalidade ou não, dependendo do problema em questão. Como existem três diferentes abordagens para persistência de dados em SGBD (Sistema Gerenciador de Banco de dados), o modelo conceitual é o mais abstrato de todos. Mostra as entidades, com seus atributos e respectivos relacionamentos, indicando como os dados a serem persistidos se relacionam. O modelo conceitual, primeira camada de modelagem de dados, independe da forma como os dados serão implementados no banco. É um modelo independente de tecnologia. O modelo conceitual mostra os dados pertinentes ao negócio. Modelo Conceitual de dados Relação entre os modelos Veja agora a relação entre os modelos e quais usam quais modelos como base de sua concepção. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 12/17 Os requisitos do sistema devem estar contidos em seu escopo (escopo do sistema). O diagrama de casos de uso está intimamente relacionado aos Requisitos do sistema, especialmente os Requisitos Funcionais (RF) e as Regras de Negócio (RN). Para desenhar o diagrama de casos de uso, devemos ter em mãos as especi�cações de requisitos (RF com RN e RNF associados) • Regra: Caso de uso pode agregar em si mais de um requisito funcional (RF). Ou seja, se tivermos 100 requisitos funcionais teremos 100 ou menos casos de uso no diagrama. As especi�cações textuais dos casos de uso dizem respeito aos casos de uso constantes dos diagramas de casos de uso. • Regra: Todo caso de uso do diagrama deve ter sua especi�cação textual de�nida, conforme um dos 2 padrões que descreveremos na aula 7 (Modelagem de Requisitos em Casos de Uso): o resumido e o completo. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 13/17 Diagrama Conceitual de Classes: para construir o diagrama de classes da UML, que represente o modelo conceitual, devemos ter em mãos o diagrama de casos de uso e as respectivas especi�cações textuais. • Regra: Analisa-se o diagrama de casos de uso, de forma a identi�car as classes, seus atributos e seus métodos. Atores podem ser classes, desde que precisemser persistidos. Os casos de uso podem ser transformados em classes ou métodos. Depois de identi�cada a classe, se houver outro caso de uso que diga respeito a mesma classe, será representado como um método da respectiva classe. • Regra: Para identi�car atributos das classes, sugerimos avaliar as especi�cações textuais dos casos de uso, onde constam os dados da interação ator-caso de uso. Modelo Conceitual de Dados: 100% derivado do diagrama conceitual de classes. • Regra: Uma classe a ser persistida, transforma- se em entidade no modelo conceitual de classes. • Regra: Os métodos devem ser ignorados (desconsiderados). • Regra: Os atributos, caso sejam atômicos, transformam-se em Atributos no modelo conceitual de classes. • Regra: Dependendo do tipo de relacionamento (detalhes na aula 9) no diagrama de classes, teremos um diferente comportamento no modelo conceitual de dados. Construídos os artefatos acima, teremos desenvolvido os modelos de análise de seu projeto de TCC. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 14/17 Passo a passo a modelagem do sistema de seu Projeto de TCC O esquema a seguir mostra o passo a passo do procedimento para a condução da modelagem do sistema de seu Projeto de TCC em Sistemas de Informação. 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 15/17 Atividade 1. No que se refere ao paradigma orientado a objeto e a UML (Uni�ed Modelling Language), avalie as assertivas a seguir: I. O paradigma orientado a objeto considera que na execução de um sistema, objetos vão interagir, para cumprir com a �nalidade do sistema; II. Os três pilares da orientação a objetos são: encapsulamento, herança e poliativismo; III. A UML é uma linguagem de programação, independente de tecnologia e de processo de desenvolvimento de software; IV. A UML não diz por onde começar a sua análise de sistemas. Com base em sua análise, marque a opção que apresenta apenas as assertivas corretas: a) I, II, III e IV b) I, III e IV apenas c) III apenas d) I apenas e) I, II e III apenas 2. Sobre os diagramas da UML que podem ser usados para modelar a análise do sistema, avalie as assertivas: I. Especi�cação textual dos casos de uso; II. Diagrama de atividades; III. Diagrama de casos de uso; IV. Diagrama Conceitual de classes; V. Diagrama de Entidade e Relacionamento. Assinale a alternativa que indica apenas as assertivas corretas: a) Estão corretas III e IV b) Estão corretas I, III e IV c) Estão corretas I, III, IV e V d) Estão corretas III, IV e V e) Estão corretas I, II, IV e V 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 16/17 3. Sobre a metodologia de modelagem que está sendo proposta, analise as sentenças abaixo e marque verdadeiro ou falso: a) O primeiro passo é o diagrama de casos de uso. b) Não se deve especi�car uma linha de descrição textual de casos de uso, enquanto o diagrama de casos de uso não estiver 100% pronto. c) O diagrama de classes é construído com base na lista de requisitos, apenas. d) O diagrama de entidade e relacionamento representa as entidades, seus atributos e relacionamentos, com base no diagrama de casos de uso. e) A ordem correta de aplicação dos modelos é: 1.De�nição do escopo; 2.De�nição dos requisitos; 3.Diagrama de casos de uso; 4.Especi�cação textual dos casos de uso; 5.Diagrama conceitual de classes e 6.Diagrama conceitual de classes. Referências BOOCH, G.; JACOBSON, I.; RUMBAUGH, J. UML - Guia do Usuário. 2.ed. Rio de Janeiro: Elsevier, 2005. cap. 1 e 2. FOWLER, Martin. UML Essencial - Um Breve Guia Para a Linguagem-Padrão. 3.ed. Porto Alegre: Artmed, 2005. cap. 1. LARMAN, Craig. Utilizando UML e Padrões? Uma Introdução à Análise e ao Projeto Orientados a Objetos e ao Processo Uni�cado. 3.ed. Porto Alegre: Artmed, 2007. cap. 2. Próxima aula Revisão dos Conceitos de Requisitos: Funcionais, Não funcionais e Regras de negócio; Elaboração da Lista de Requisitos do sistema de seu TCC; Especi�cação de cada requisito de seu TCC. Explore mais Leia os seguintes textos: Os 4 pilares da Programação Orientada a Objetos <https://www.devmedia.com.br/os-4-pilares-da-programacao-orientada-a- objetos/9264> ; Série: Eu sobrevivo sem UML? <https://www.devmedia.com.br/uml/> ; O que é UML e Diagramas de Caso de Uso: Introdução Prática à UML <https://www.devmedia.com.br/o-que-e-uml-e- 09/05/2019 Estácio - Disciplina online estacio.webaula.com.br/Classroom/index.html?id=1505259&courseId=12860&classId=1130637&topicId=2610954&p0=03c7c0ace395d80182db07ae2c30f034&enableForum=S&enableMessage=S&enableClassM… 17/17 diagramas-de-caso-de-uso-introducao-pratica-a-uml/23408> .
Compartilhar