Buscar

PIM VII - SISTEMA DE CONTROLE DE MATRICULA DE CURSOS LIVRES_DRAFT

Prévia do material em texto

UNIP EaD
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
Nome
Nome
SISTEMA DE CONTROLE DE MATRICULA DE CURSOS LIVRES
BARUERI - SP
2019
UNIP EaD
Projeto Integrado Multidisciplinar
Cursos Superiores de Tecnologia
SISTEMA DE CONTROLE DE MATRÍCULAS DE CURSOS LIVRES
Nome: 
RA(s): 
Curso: Análise e Desenvolvimento de Sistemas
Semestre: 2019.2
BARUERI - SP
2019
RESUMO
	O projeto resume-se na construção de um sistema de matrícula de cursos livres, na qual será elaborado toda a fase de projeto, que antes na fase de análise já havia sido iniciada pelo arquiteto de softwares. Para as devidas considerações e estrutura do projeto, teremos como fundamento as disciplinas de Programação Orientada a Objetos II, Projeto de Sistemas Orientado a Objetos, Gestão da Qualidade e Empreendedorismo, onde, teremos como base a arquitetura MVC e dentro deste cenário serão utilizados diagramas de classe de implementação, diagramas de sequência de implementação, diagrama de atividades e diagrama de distribuição, considerando a analise realizada nos casos de uso e diagrama de classes elaborados na fase de análise. Também um dos objetivos será atestar as dificuldades envolvidas no desenvolvimento do projeto visando a qualidade necessária para garantir que de fato todos os requisitos sejam atendidos e assim obtermos resultados satisfatórios para nosso cliente e usuário final.
	
Palavras-chave: Diagramas, MVC, Programação, Qualidade, Sistema.
Sumário
1.	Introdução	5
2.	Arquitetura MVC	6
2.1	Camada View	6
2.2	Camada Model	7
2.3	Camada Controller	7
3.	Modelo de Referência MVC	8
4.	Diagramas de Classes de Implementação	9
4.1	Diagrama de Classes de Implementação – Manter Curso	10
4.2	– Diagrama de Classes de Implementação – Manter Aluno	10
4.3	– Diagrama de Classes de Implementação – Efetuar Matricula	11
4.4	– Diagrama de Classes de Implementação – Gerar Relatório Matricula	12
4.5	– Diagrama de Classes de Implementação – Efetuar Login	13
4.6	– Diagrama de Classes de Implementação – Consultar Curso	14
4.7	– Diagrama de Classes de Implementação – Consultar Matriculas	15
5.	– Diagramas de Sequência de Implementação	16
5.1	– Diagramas de Sequência de Implementação – Manter Curso	16
5.2	– Diagramas de Sequência de Implementação – Manter Aluno	18
5.3	– Diagramas de Sequência de Implementação – Efetuar Matricula	19
5.4	– Diagramas de Sequência de Implementação – Relatório Matricula	19
5.5	– Diagramas de Sequência de Implementação – Efetuar Login	20
5.6	– Diagramas de Sequência de Implementação – Consultar Matricula	20
6.	– Diagrama de Atividades para o Método privado “calcularVlrCurso()”	21
7.	– Diagrama de Distribuição	23
8.	Relatório Final	24
9.	Conclusão	25
Introdução
Atualmente a tecnologia tem abrangido as diferentes áreas do conhecimento, para tanto, há atualmente a necessidade de envolver a tecnologia em praticamente todas as atividades sejam elas rotineiras, hobbys, trabalho etc.
Dada a situação, há uma crescente demanda por soluções tecnológicas e automatizadas, para que pessoas como você e eu possamos desfrutar do conforto, facilitação e otimização para a realização das inúmeras tarefas das quais temos que dispor esforço e tempo para serem executadas.
Sendo assim, no projeto em questão uma empresa de treinamentos entendeu essa necessidade e contratou nossa empresa para realizar um sistema para controlar matrículas de cursos livres oferecidos pela instituição.
Atualmente podemos ressaltar que existem inúmeras tecnologias capazes de atender esta demanda e de todas, entendemos que a melhor forma será trabalhando com o modelo arquitetural MVC (Model, View,Controller) que falaremos mais adiante.
De modo geral, qualquer projeto de software resume em quatro etapas e que devem ser seguidas com todo o zelo e importância, a saber: Analise de Requisitos, Projeto e Implementação, Testes e validação.
Em nosso contexto, iremos enfatizar a etapa de Projeto, onde serão elaboradas por meio da análise de requisitos já realizadas pelo arquiteto de softwares, os diagramas que serão utilizados no desenvolvimento propriamente dito do sistema, que são: Diagrama de Classe de Implementação, Diagrama de Sequência de Implementação, Diagrama de Atividades e Diagramas de Distribuição.
Com o design que será elaborado nas próximas etapas, podemos demonstrar de forma conceitual os artefatos envolvidos no projeto, bem como suas reais dificuldades e desafios que serão encontrados durante o desenvolvimento da aplicação.
21
Arquitetura MVC
O Engenheiro Civil Christopher Alexander criou o que se considera o primeiro padrão de projeto em meados da década de 70. É considerado um padrão de projeto uma solução já testada e documentada que possa resolver um problema específico em projetos distintos. Através do trabalho de Alexander, profissionais da área de desenvolvimento de software utilizaram tais conceitos para iniciar as primeiras documentações de padrões de projetos, tornando-as acessíveis para toda a área de desenvolvimento.
Entretanto, Trygve Reenskaug, iniciou em 1979 o que viria a ser o nascimento do padrão de projeto MVC. A implementação original foi descrita no artigo “Applications Programming in Smalltalk-80: How to use Model-View-Controller”. A ideia de Reenskaug gerou um padrão de arquitetura de aplicação cujo objetivo é separar o projeto em três camadas independentes, que são o modelo, a visão e o controlador. Essa separação de camadas ajuda na redução de acoplamento e promove o aumento de coesão nas classes do projeto.
	MODEL
	VIEW
	CONTROLLER
	Responsável pela leitura e escrita de dados e suas validações.
	Faz a exibição da interface com o usuário utilizando-se de HTML ou XML.
	Responsável por receber todas as requisições do usuário e determinar qual model será usado e qual view será exibida.
1. 
2. 
Camada View
Também intitulada, camada de apresentação, elas é responsável por realizar a interface com o usuário, realizando um representação dos dados modelados nos quais tenham eventualmente os usuários interagido diretamente. Desta maneira, proporciona a entrada dos dados e por consequência o resultado das respostas geradas no sistema.
Camada Model
Camada que é responsável por conter a lógica da aplicação, sendo responsável por receber as regras de negócio, realizar a comunicação com o banco de dados com base nas regras SQL, transformando e convertendo os dados de maneira significativa, no que tange as funções de tratamento e manipulação de dados (inserir, alterar, excluir etc).
Camada Controller
Responsável pela intermediação entre as camadas View e Model, essa camada é que de fato determina o comportamento da aplicação, fazendo tarefas como gerenciamento e interpretação dos requisitos estabelecidos pelos usuários da aplicação e retornando uma interação entre as duas camadas citadas.
Sua única funcionalidade compete em apenas controlar e mapear as ações, decidindo qual model será utilizada, quais demandas serão enviadas e qual combinação de views será utilizada para exibição do retorno dos dados da model.
Modelo de Referência MVC
Figura 1 – Desenho da Arquitetura de Referência estática MVC
Diagramas de Classes de Implementação
O diagrama de classes pode ser considerado por muitos autores um dos senão o mais importante e também um dos mais utilizados no contexto de diagramas UML. Seus principal atributo está em permitir a visualização das classes que irão fazer parte do sistemas bem como a representação dos seus atributos e métodos e também demonstrar como tais classes se relacionam, se complementam e transmitem informações entre si. A base estática que será apresentada a seguir irá apresentar como as classes estão previamente organizadas e também preocupando-se em definir sua estrutura lógica.
Logo, com base no caso de uso desenhado pelo arquiteto na fase de análise mencionada anteriormente, veremos então os diagramas de classe de implementação, para cada caso de uso apresentado, cada um com seu respectivo diagrama, tendo como referência o padrão arquiteturalMVC apresentado na figura 1.
3. 
4. 
Diagrama de Classes de Implementação – Manter Curso
Figura 2 – Desenho da Classe de Implementação do caso de uso Manter Curso
– Diagrama de Classes de Implementação – Manter Aluno
Figura 3 – Diagrama de Classe de Implementação do caso de uso Manter Aluno
– Diagrama de Classes de Implementação – Efetuar Matricula
Figura 4 – Diagrama da Classe de Implementação do caso de uso Efetuar Matricula
– Diagrama de Classes de Implementação – Gerar Relatório Matricula
Figura 5 – Diagrama da Classe de Implementação do caso de uso Gerar Relatório Matricula
– Diagrama de Classes de Implementação – Efetuar Login
Figura 6 – Diagrama da Classe de Implementação do caso de uso Efetuar Login
– Diagrama de Classes de Implementação – Consultar Curso
Figura 7 – Diagrama da Classe de Implementação do caso de uso Consultar Curso
– Diagrama de Classes de Implementação – Consultar Matriculas
Figura 8 – Diagrama da Classe de Implementação do caso de uso Consultar Curso
– Diagramas de Sequência de Implementação
O diagrama de sequência tem como objetivo apresentar uma determinada sequência de eventos e possíveis trocas de mensagens entre os objetos que estão contidos em um determinado contexto, sendo assim, evidenciando as operações que serão realizadas entre eles em uma sequência lógica.
A representação é apresentada em tempo de execução da aplicação mostrando o diagrama de cima para baixo as interações que são realizada e também facilitando a compreensão entre elas.
No diagrama de sequência podemos representar o ciclo de vida de um objeto através das seguintes disposições onde, as linhas verticais são preenchidas pelas barras verticais que indicam exatamente quando o objeto passou ou passará a existir e também quando deixará de existir adicionando um “x” na parte inferior. As linhas horizontais existem para representar as trocas de mensagens feita pelos objetos, acompanhas pela rotulação da mensagem contendo nome da mensagem, e opcionalmente, os parâmetros, linhas horizontais tracejadas que representam o retorno das mensagens. Também podemos representar as mensagens enviadas para o mesmo objeto quando necessário, representando as interações.
5. 
– Diagramas de Sequência de Implementação – Manter Curso
Figura 9 – Diagrama de Sequência de Implementação – Cadastrar Curso
Figura 10 – Diagrama de Sequência de Implementação – Alterar Curso
Figura 11 – Diagrama de Sequência de Implementação – Consulta Curso
Figura 12 – Diagrama de Sequência de Implementação – Excluir Curso
– Diagramas de Sequência de Implementação – Manter Aluno
Figura 13 – Diagrama de Sequência de Implementação – Cadastrar Aluno
Figura 14 – Diagrama de Sequência de Implementação – Alterar Aluno
Figura 15 – Diagrama de Sequência de Implementação – Consultar Aluno
Figura 16 – Diagrama de Sequência de Implementação – Excluir Aluno
– Diagramas de Sequência de Implementação – Efetuar Matricula
Figura 17 – Diagrama de Sequência de Implementação – Efetuar Matricula
– Diagramas de Sequência de Implementação – Relatório Matricula
Figura 18 – Diagrama de Sequência de Implementação – Relatório Matricula
– Diagramas de Sequência de Implementação – Efetuar Login
Figura 19 – Diagrama de Sequência de Implementação – Efetuar Login
– Diagramas de Sequência de Implementação – Consultar Matricula
Figura 20 – Diagrama de Sequência de Implementação – Consultar Matricula
– Diagrama de Atividades para o Método privado “calcularVlrCurso()”
O diagrama de atividades tem como sua principal finalidade representar um fluxo ou processo do sistema onde há casos em que o sistema se dispõe de regras inerentes 
Todo diagrama de atividade deve possuir um início, marcado por um círculo preenchido, e um fim, representado por um círculo preenchido com um aro branco na extremidade, para a representação das ações utilizamos um retângulo de bordas arredondadas ligados por setas que representam os fluxos de controle, para a representação de decisões utilizamos um losango.ao negócio.
 Nesta ocasião, o método em questão, a saber, “calcularVlrCurso()”, representa uma das regras de negócio do sistema com a finalidade de calcular o valor total do curso no ato da matricula do aluno.
Figura 21 – Diagrama de Sequência de Implementação – Consultar Matricula
– Diagrama de Distribuição
Este diagrama captura a topologia (ambiente) de hardware de um sistema, é uma representação gráfica da visão estática do funcionamento de um sistema, mostrando os relacionamentos entre os componentes de software e hardware no sistema, focando na organização da arquitetura física em que o software irá ser implementado e executado, contendo somente os elementos essenciais à compreensão desse aspecto, fornecendo detalhes consistentes com seu nível de abstração.
A seguir o diagrama de distribuição elaborado para a execução do sistema deste projeto, apresentado na figura 22.
Figura 22 – Diagrama de distribuição
Relatório Final
O projeto teve como objetivo elaborar o design de um sistema de controle de matriculas de cursos livres para uma empresa de treinamentos, para tanto foram utilizados vários conceitos dentro da fase de projeto onde pudemos obter uma forte compreensão do projeto como um todo e suas devidas especificações.
Durante a fase de projeto, trabalhos o conceito de arquitetura de software chamado MVC, neste conceito, temos a oportunidade de segregar a aplicação em camadas distintas mas que porém conversam entre si, estabelecendo uma melhor interação entre os objetos do sistema e com isso gerando maior qualidade a demanda.
Ainda dentro deste conceito foram abordadas as técnicas de diagramas de implementação e diagramas de sequência de implementação que nos permitiram compreender como as classes estão relacionadas entre si e como elas se comunicam. Também é possível analisar a sequência lógica do comportamento dos objetos, podendo assim aumentar o grau de referência e impedir que problemas futuros ocorram durante a execução da aplicação.
Vale ressaltar que o diagrama de caso de uso e de classes serviram de base para a desenvoltura da fase de Projeto, podendo estabelecer as corretas diretrizes e estabelecer as devidas aplicações técnicas para atender a qualidade esperada pelo nosso cliente e usuário final.
Conclusão
	Conclui-se, portanto, que o desenvolver software além de ser uma tarefa complexa, exige que se tenha uma boa expertise e conhecimento no tema, junto a isso absorvendo as atividades e executando-as de forma planejada e sistemática de acordo com métodos e ferramentas adequadas e necessárias para que se possa criar um produto de qualidade e que possa vir a atender o usuário final de forma qualitativa.
	É importante ressaltar que os conhecimentos e técnicas adquiridas neste projeto, reforça a importância do estudo e o aprendizado no tocante a desenvolvimento de sistemas e no planejamento de sua engenharia. Observamos na elaboração dos diagramas de implementação e de sequência, é possível analisar o quão importante é coletar as especificações com clareza na fase de análise, para que no fim possamos desenvolver produtos de qualidade e que satisfaça o usuário final em sua totalidade. 
	Em desfecho ao projeto apenas ressaltamos que é significativamente importante ter o controle, a documentação e além de tudo qualidade no que tange o desenvolvimento de sistemas.
REFERÊNCIAS
Figuras 1 a 22
Imagens da tela do sistema, Draw.io: https://www.draw.io/ (acessado entre os dias 01 a 06 de Outubro de 2019);
Textuais
Paulo, Diagrama de Classes UML, Disponível em: < https://www.devmedia.com.br/diagrama-de-classes-uml/12251>. Acesso em: 01 a 6 de Outubro de 2019

Continue navegando