Você está na página 1de 31

UNIVERSIDADE NORTE DO PARANÁ

SISTEMA DE ENSINO PRESENCIAL CONECTADO


SUPERIOR EM TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO
DE SISTEMAS

ALUNO: OSMAN BENÍCIO DE HOLANDA CAVALCANTI SEGUNDO

PRODUÇÃO TEXTUAL INTERDISCIPLINAR INDIVIDUAL

ESTUDO DE CASO
“SISTEMA ZER@DENGUE”

Garanhuns/PE
2020
NOME DO(S) AUTOR(ES):

OSMAN BENÍCIO DE HOLANDA CAVALCANTI SEGUNDO

ESTUDO DE CASO
“SISTEMA ZER@DENGUE”

Trabalho interdisciplinar apresentado à Universidade


Norte da Paraná (Unopar), como requisito parcial para a
obtenção de média semestral na disciplina de:
Engenharia e Projeto de Software, Projeto Orientado à
Objetos e Programação Para Web II.

Orientadores: Tutor Eduardo Viana de Almeida


Professora Iolanda Cláudia Santos Catarino
Professor Gilberto Fernandes Junior
Professora Vanessa Matias Leite

Garanhuns/PE
2020
SUMÁRIO

1 INTRODUÇÃO..........................................................................................................3
2 DESENVOLVIMENTO..............................................................................................5
2.1 TAREFA 1 – Engenharia e Projeto de Software....................................................7
2.2 TAREFA 2 – Projeto Orientado à Objetos...........................................................13
2.3 TAREFA 3 – Programação Para Web II..............................................................18
3 CONCLUSÃO......................................................................................................... 26
REFERÊNCIAS......................................................................................................... 28
3

1 INTRODUÇÃO

Sobre o cenário de estudo proposto que é o Sistema Zer@Dengue é


de grande importância, pois o mesmo traz uma atividade cotidiana na qual podemos
implementar na prática o que foi estudado no semestre e trazendo a aplicação da
teoria aprendida com as disciplinas. Nesse caso iremos estudar de acordo com a
situação geradora de aprendizado, que é o sistema Zer@Dengue na qual no
contexto o personagem Alberto caminhava por uma rua próxima a sua casa e
em um terreno baldio viu vários entulhos. Preocupado com a dengue e como o
terreno não tinha muros, ele resolveu verificar se não havia criadouros do mosquito
Aedes aegypti. Para seu desespero, havia um pneu e três garrafas de água com
diversas larvas do provável mosquito. Imediatamente tirou a água dos pneus e
dos recipientes, mas ficou muito apreensivo com essa situação. A dengue mata e
estava muito perto da sua casa. Hoje ele resolveu aquele problema pontual, mas
como continuar com essa vigilância. Com esses questionamentos ele fez uma
pesquisa e soube que na empresa DEV-TI, composta de vários egressos e alunos
de Análise e Desenvolvimento de Sistemas (ADS) está com um projeto em
execução para o desenvolvimento de um software para o Ministério da Saúde
chamado Sistema Zer@Dengue, no qual qualquer pessoa poderá fazer uma
denúncia de possíveis focos de dengue. Nesse ambiente de tecnologia em que
vivemos hoje criar um sistema nesse segmento com certeza é um grande negócio,
imaginando que desenvolvendo um aplicativo Web, você terá acesso e poderá
denunciar vários focos dos vírus.
Com o objetivo de levar ao cidadão informações mais rápidas sobre a
dengue, e possibilitar que as denúncias sobre focos e casos da doença cheguem ao
poder público com menos burocracia e de forma direta, DEV-TI adotou essa nova
ferramenta digital que está disponível para smartphones: o Zer@Dengue, aplicativo
que visa transformar o cidadão comum em agente contra a doença. Disponível
gratuitamente para iOS e Android, o aplicativo permite ao cidadão registrar focos do
mosquito Aedes aegypti, bem como relatar casos conhecidos de dengue. Além
disso, o aplicativo disponibiliza ao usuário informações sobre a campanha contra a
dengue proposta pelo Governo Municipal. A utilização deste aplicativo pela
população é um avanço no sentido de permitir ao cidadão que relate onde ocorreu
4

um caso da doença, o que possibilita o georreferenciamento dos casos e áreas


atingidas pela epidemia, e também demonstra que a população está comprometida
com a campanha de eliminação de focos da doença, mesmo que seja fora de sua
residência. As denúncias de possíveis criadouros serão encaminhadas pelo estado
para os municípios para que possam tomar providências. O cidadão é um importante
ator no combate. Registrada a denúncia, ela é encaminhada de imediato ao sistema
da Prefeitura e priorizada pelas equipes de vigilância para bloqueio do foco. As
denúncias enviadas pelo cidadão têm tratamento preferencial, porque elas
possibilitam maior efetividade ao combate aos focos do mosquito do que as visitas
aleatórias. O tempo de atendimento da denúncia é de 48 horas e o cidadão pode,
agora, acompanhar pelo aplicativo a resposta dada.
O software é integrado a diferentes metodologias prescritas pelo Ministério da Saúde
e pela Organização Mundial de Saúde.

Aplicabilidade desse tema, vem com o avanço cada vez mais da


tecnologia em nossas vidas e o cenário que irá ser demostrada são de normalidade
em qualquer região dos pais. Startup nesse meio tecnológico e nesse segmento são
mais frequentes na internet e bem mais barato, onde se tem hoje uma
competividade para criar aplicativos nesse segmento e a web torna a expansão do
negócio bem mais fácil, rápida, barata e a venda torna-se repetível. Podemos dizer
que a desenvolver um aplicativo que auxilie na guerra contra algum vírus ou doença,
hoje em dia já não é mais inovador, sendo visto mais facilmente no mercado,
elevando a competitividade no ambiente de negócios que refletem diretamente no
desenvolvimento econômico e social. O contexto é atual na sociedade está marcado
pelo acréscimo da concorrência e pelo desenvolvimento tecnológico, assumindo um
papel de destaque por ser capaz de impulsionar a criação e implantar novas formar
de monitoramento a pontos de focos da dengue. Nisso como aluno irei fazer parte
da equipe de desenvolvimento do aplicativo Zer@Dengue no intuito de solucionar e
fazer algumas tarefas solicitada pelo o cliente.
5

2 DESENVOLVIMENTO

Vejo como é importante a contribuição da Disciplina Engenharia


e Projeto do Software para o desenvolvimento do projeto. Nesse contexto
aprendemos a elaborar documentação de Engenharia e Projeto do Software
Zer@Dengue. Considerando que a solução proposta tem as funcionalidades
básicas para realização do cadastro da pessoa física (cidadão) que faz a denúncia;
cadastro da localização, indicando o estado, cidade e bairro do ponto suspeito do
foco do mosquito; cadastro para registrar a denúncia; e consulta de
acompanhamento do status da denúncia. A documentação de Engenharia e
Projeto do Software proposto foi contemplado com um plano de gerenciamento de
projeto de software, mostrando definição e descrição de todo o planejamento
para executar, controlar e encerrar o projeto. A descrição do (s) Método (s) de
Desenvolvimento de Software a ser adotado para modelagem das atividades
básicas de Análise de Sistemas e Projeto de Sistemas, foi a Unified Modeling
Language (UML) e na atividade de Análise de Sistemas foram adotados as
técnicas de modelagem – Diagrama de Use Cases, Diagrama de Classes,
Diagrama Sequência e Diagrama de Atividades que foram elaboradas com a
ferramenta CASE Astah. O modelo escolhido foi RAD (Rapid Application
Development) representando modelo de desenvolvimento rápido. O modelo de
desenvolvimento rápido é usado em projetos que necessita de uma velocidade
maior de desenvolvimento que o normal, sendo o caso pra o sistema Zer@.Dengue.
Esse modelo é usado em projeto com prazos muito curtos para entrega.
Na disciplina de Projeto Orientado à Objetos foi feito um projeto
com base nos requisitos de engenharia e projeto de software do sistema
Zer@Dengue que foi feito e implementado abordando a orientação à objetos visando
deixar o sistema mais robusto. Foi feito uma pesquisa breve e a linguagem
orientada a objeto mais adequado ao projeto foi o Java. Tendo como padrão de
projeto MVC utilizada pela a equipe de desenvolvimento. O frameworks que usamos
foi JavaServer Faces (JSF) e sua importância em projetos de sistemas orientados à
objetos, foi na facilidade que é um framework de fácil manuseio bastam apenas
termos alguns fundamentos em framework e desenvolvimento web. JSF possui
6

alguns componentes simples como o input e botões a também componentes


sofisticados como o de tabela de dados porem acredito que o mais importante é pelo
fato de integrar com o padrão Java EE e estar incluído em cada servidor de
aplicação Java EE sendo assim a facilidade de ser adicionado a um container web.
Usamos também SpringMVC que e um framework mais utilizado atualmente e fácil
de usar tanto em um Servlet Container quanto em um Application Server. Em
relação a arquitetura de software usamos o padrão de criação Abstract Factory com
a intenção de fornecer uma interface para criação de famílias de objetos
relacionados ou dependentes sem especificar suas classes concretas. Foi
apresentado o padrão de arquitetura na qual achamos que se encaixa no
desenvolvimento do sistema Zer@Dengue .
A disciplina de Programação Para Web II foi muito útil no que tange
a desenvolver aplicações web, na qual foi criado uma página de cadastro do portal
do sistema. Com os seguintes campos; Nome Completo; e-mail; Senha; RG; CPF;
Endereço; Telefone; Cidade; Bairro e Estado. Após realizado o cadastro, o usuário
vai ser redirecionado para a página da denúncia, onde nesta página, temos os
campos: Endereço da ocorrência (obrigatório); Campo para postagem de foto
mostrando o local com o foco de dengue; Descrição obrigatória com o relato do local
assim como o usuário poder consultar o status da denúncia. As linguagens para
implementação do portal foram: PHP, HTML e CSS. As informações de cadastro e
denuncia foram armazenadas no banco de dados.
7

2.1 TAREFA 1. ENGENHARIA E PROJETO DE SOFTWARE

1. Título do projeto - Software Zero Dengue

2. Nome do gerente - Osman Segundo

3. Nome do patrocinador e/ou cliente – Ministério da Saúde


4. Justificativas – Zer@Dengue é um aplicativo que visa transformar o cidadão comum
em agente contra a doença. Disponível gratuitamente para iOS e Android, o
aplicativo permite ao cidadão registrar focos do mosquito Aedes aegypti, bem como
relatar casos conhecidos de dengue. O objetivo é fazer a utilização deste aplicativo
pela população para que se torne um avanço no sentido de permitir ao cidadão que
relate onde ocorreu um caso da doença, o que possibilita o georreferenciamento dos
casos e áreas atingidas pela epidemia, e também demonstra que a população está
comprometida com a campanha de eliminação de focos da doença, mesmo que seja
fora de sua residência. As denúncias de possíveis criadouros serão encaminhadas
pelo estado para os municípios para que possam tomar providências.

5. Aspectos gerais do gerenciamento do projeto


Esse projeto faz com que o cidadão seja um importante ator no combate. As
denúncias enviadas pelo cidadão têm tratamento preferencial, porque elas
possibilitam maior efetividade ao combate aos focos do mosquito do que as visitas
aleatórias. O tempo de atendimento da denúncia é de 48 horas e o cidadão pode,
agora, acompanhar pelo aplicativo a resposta dada. O software é integrado a
diferentes metodologias prescritas pelo Ministério da Saúde e pela Organização
Mundial de Saúde.

6. Gerenciamento do cronograma
8

2.1.2. A descrição do Processo de Desenvolvimento de Software a ser


adotado;

Primeiramente, foi feito o levantamento de requisitos onde a atividade teve


como objetivo, compreender o problema, dando aos desenvolvedores e usuários, a
mesma visão do que deve ser construído para resolução do problema. Essa é a
etapa mais importante, no que diz respeito ao retorno de investimentos no projeto.
Vários projetos são abandonados pelo baixo levantamento de requisitos, ou seja,
membros da equipe não disponibilizaram tempo suficiente para essa fase do projeto,
em compreender as necessidades dos clientes em relação ao sistema a ser
desenvolvido.

Depois foi feito análise de onde nós desenvolvedores fizemos um estudo


detalhado dos dados levantados na atividade anterior. De onde são construídos
modelos a fim de representar o sistema de software a ser desenvolvido. Nesta fase
foi feita a validação e verificação dos modelos construídos, antes de partir para
solução do problema. No projeto foi gerada uma descrição computacional,
mencionando o que o software deve fazer, e deve ser coerente com a descrição
realizada na fase de análise de requisitos.

Na fase de implementação foi feito processo de desenvolvimento orientado a


objetos, tendo implementação se dado definindo as classes de objetos do sistema
em questão, fazendo uso de linguagens de programação Java. Foi usado também
na implementação, ferramentas de software e bibliotecas de classes preexistentes
para agilizar a atividade, como também o uso de ferramentas CASE, que
dinamizaram o processo de desenvolvimento, nas várias atividades realizada.

Logo após foi feita diversas atividades de testes que foram executadas a fim
de se validar o produto de software, testando cada funcionalidade de cada módulo,
buscando, levando em consideração a especificação feita na fase de projeto. Ao
9

final dessa atividade, os diversos módulos do sistema são integrados, resultando no


produto de software.

Por fim na implantação compreendeu a instalação do software no ambiente


do usuário. O que inclui os manuais do sistema, importação dos dados para o novo
sistema e treinamento dos usuários para o uso correto e adequado do sistema.

Modelo-RAD

O modelo escolhido foi RAD (Rapid Application Development)


representando modelo de desenvolvimento rápido. O modelo de desenvolvimento
rápido é usado em projetos que necessita de uma velocidade maior de
desenvolvimento que o normal, sendo o caso pra o sistema Zer@.Dengue. Esse
modelo é usado em projeto com prazos muito curtos para entrega.

No desenvolvimento incremental, uma das características de RAD, o sistema


é dividido em módulos, tomando por base a funcionalidade. Tendo os incrementos
definidos, a cada ciclo é acrescido de novas funcionalidades ou até mesmo
modificações, caso seja necessário. Outra característica é justamente essa
maleabilidade de adaptação dos processos e a capacidade de se manter em
constante evolução.

2.1.3 A descrição do (s) Método (s) de Desenvolvimento de Software a ser


adotado para modelagem das atividades básicas de Análise de Sistemas e
Projeto de Sistemas, indicando quais técnicas de modelagem serão
adotadas para especificar cada atividade do desenvolvimento;

Foi adotado a Unified Modeling Language (UML) e na atividade de


Análise de Sistemas foram feita as técnicas de modelagem – Diagrama de Use
Cases, Diagrama de Classes, Diagrama de Sequência e Diagrama de Atividades,
então foi apresentado a especificação completa da modelagem dessas técnicas
elaborada em uma ferramenta CASE.
Usamos a UML, por conta da agilidade e velocidade entregando
10

valor no menor espaço de tempo possível, e melhorando isso continuamente.


Foi feito o diagrama de use cases que teve como objetivo de auxiliar
a comunicação entre os analistas e o cliente. No diagrama de Use Cases foi descrito
um cenário que mostrou as funcionalidades do sistema do ponto de vista do usuário.
No Diagramas de classes foi demonstrado uma série de benefícios para
qualquer organização. Foi ilustrado modelos de dados para sistemas de informação,
e com esse diagrama tivemos como entender melhor a visão geral dos esquemas de
uma aplicação.

No Diagramas de atividade oferecemos uma série de benefícios para os


usuários, demonstrando a lógica do algoritmo. Ilustrando o processo de negócio ou
fluxo de trabalho entre usuários e o sistema.

No Diagramas de sequência foram representados os detalhes do caso de uso


UML. Modelado a lógica de um processo, função ou operação sofisticado. Foi visto
como objetos e componentes interagem uns com os outros para concluir um
processo.

2.1.4. A modelagem das atividades básicas de Análise de Sistemas e Projeto


de Sistemas, considerando as técnicas de modelagem indicadas no item
anterior. Especificação completa da modelagem dessas técnicas elaborada
em uma ferramenta CASE;
DIAGRAMA USE CASE
11

DIAGRAMA DE CLASSES

DIAGRAMA DE SEQUÊNCIA
12

DIAGRAMA DE ATIVIDADE

2.1.5. A descrição da arquitetura lógica e física, indicando e justificando todas


as tecnologias que serão adotadas na implementação e implantação do
software.

Na visão lógica foi demonstrado as partes que integram o sistema, assim com
suas interações. Representando os diagramas com um agrupamento de abstrações
e que enfatiza classes e objetos. Onde foram feito o Diagramas de classe e
Diagramas de sequência. Foi mostrado como a funcionalidade é projetada ou
construída dentro do sistema em termos de estrutura estática e de comportamento
13

dinâmico do sistema. Os diagramas de classes e de estado são utilizados por esta


visão.

Na visão física procurou-se demonstrar o ambiente de execução do sistema,


nesta visão é onde você mapeia os artefatos de software ao hardware que
hospedará estes artefatos. O diagrama UML que representa a visão física é o
diagrama de implementação.

2.2 TAREFA 2

Tarefa 2: Projeto Orientado à Objetos

Usamos o Java, porque é a linguagem de programação mais utilizada no


mercado atual. Auxiliado pela presença do JRE (Java Runtime Environment), ou
variações dele, em quase todos os dispositivos eletrônicos do momento, a
linguagem Java é um grande sucesso entre os desenvolvedores. O sucesso da
linguagem aumentou ainda mais com o Google Android, que escolheu o Java como
linguagem preferencial de desenvolvimento de aplicações. Usamos a linguagem que
é orientada para objetos. Ou seja, todos os elementos inseridos nela são chamados
de objetos que interagem entre si. A sintaxe que é utilizada na
linguagem Java possui semelhanças com outra famosa linguagem de programação,
que é a C++, porém com características mais simplificadas. Na linguagem Java os
14

códigos são escritos dentro de uma determinada classe, sendo que todos os
elementos são chamados de objetos. Daí o fato da linguagem ser voltada para a
orientação de objetos. Quando ela foi concebida, o principal propósito dessa
linguagem era ser simples e de fácil assimilação. Podendo ser utilizada também por
programadores ainda iniciantes. Além disso ela traz uma característica muito
importante: é uma linguagem multiplataforma. Desse modo, ela possui a capacidade
de rodar em diferentes sistemas, tais como o Windows, o Linux e o Android. Essa
linguagem também possui ferramentas que possibilitam desenvolver várias
aplicações, a tornando bastante versátil e intuitiva. A linguagem Java conta com
características que conferem uma série de vantagens, tornando o ato de
programação mais fácil e eficiente. Entre os principais benefícios dela, convém
mencionar: Linguagem Multi-Threaded que a característica, onde apresenta
capacidade para suportar processamentos múltiplos. Isso facilita bastante o trabalho
de programação. A Criação de aplicativos onde é possível criar apps para
dispositivos móveis, tais como smartphones e tablets. Em uma época em que tais
dispositivos são comuns, essa linguagem ganha muita relevância. Comunidade
grande, onde conta com um bom suporte, pois possui uma comunidade formada por
vários usuários que trocam informações e interagem entre si, sanando dúvidas e
dando sugestões. Hoje em dia é possível contar com vários fóruns, grupos em redes
sociais, vídeos tutoriais, bem como eventos realizados com o intuito de estudar mais
as possibilidades que essa linguagem oferece. A outra é gratuidade onde a
linguagem Java é “free”, assim como possui ambientes de produção que também
são gratuitos, tais como o Eclipse, o Jcreator e o Netbeans.

O objetivo do padrões de criação foi abstrair a instanciação de objetos. Com


eles, o sistema vai solicitar um objeto de um determinado tipo e o terá prontinho, sob
demanda, sem nem se preocupar com as nuances da criação. Fazendo um paralelo
com o mundo real, uma empresa automobilística quando precisa de amortecedores,
ela terceiriza (solicita-os) e então os instala em seus carros, sem se preocupar com
o todo envolvido na criação desse componente.

O uso de padrões de projeto propicia a construção de aplicações e ou


estruturas de código de forma flexível e a documentação de soluções
reaproveitáveis. Através dos padrões de projeto é possível identificar os pontos
comuns entre duas soluções diferentes para um mesmo problema. Conhecer esses
pontos comuns nos permite desenvolver soluções cada vez melhores e mais
15

eficientes que podem ser reutilizadas, permitindo, assim, o avanço do conhecimento


humano.

Usaremos o padrão Abstract Factory, com a intenção de fornecer uma


interface para criação de famílias de objetos relacionados ou dependentes sem
especificar suas classes concretas. Também é conhecido como Kit. Este padrão foi
aplicado quando se desejou isolar a aplicação da implementação da classe
concreta, que poderia ser um componente e ou framework específico no qual a
aplicação conheceria apenas uma interface e a implementação concreta seria
conhecida apenas em tempo de execução ou compilação. Imagine que em uma
aplicação houvesse a necessidade de que ela fosse implementada para oferecer
suporte a plataformas e características distintas. Por exemplo: Uma visão desktop e
uma móvel (celular Pocket PC). A maneira de constituí-la, seria definindo uma
família de componentes para cada plataforma e uma fábrica que os instancia de
acordo com a plataforma alvo na qual a aplicação estará sendo executada.

2.2.1 Defina frameworks e sua importância em projetos de sistemas


orientados à objetos. Cite um ou dois exemplos existentes que seriam
interessantes para a implementação do sistema.

Podemos considerar um framework como uma solução para um conjunto


de problemas em comum, com uso de classes e interfaces, que disponibilizam
objetos com capacidade de capturar funcionalidades comuns a várias aplicações.
A linguagem Java apresenta uma série de conhecidos frameworks, que auxiliam
no desenvolvimento de sistemas. Usamos Spring MVC e o JSF. No caso Spring
(POA) - framework baseado em orientação a aspectos. Possibilidade de uso em
conjuntos com outros frameworks MVC, como o Struts e JSF. Por isso que
escolhemos ele e o JavaServer Faces (J2EE) - baseado em tecnologia de
servlets e JSP, pode ser usado como uma opção ao Struts.

Por oferecer facilidade e flexibilidade para trabalhar com requisições web


o Spring MVC foi a ferramenta que ajudou no desenvolvimento. Hoje é difícil
conceber uma aplicação sem a parte web, concorda? Além das numerosas
aplicações web, a maioria dos aplicativos móveis (para Android e iOS, por exemplo)
16

precisam de uma APIs RESTful para consumir. É o framework mais utilizado


atualmente e fácil de usar tanto em um Servlet Container quanto em um Application
Server. A desvantagem é que tem bastante configuração a ser feita inicialmente mas
que pode ser resolvida usando outros projetos da Spring como o Spring Boot. O
Spring tem muitos outros projetos bacanas além do SpringMVC que facilitam
bastante a vida do desenvolvedor mas não é totalmente integrado com o Java EE.
Muita coisa tem que ser usada do próprio Spring e não da especificação do Java.

Já o JSF que é uma especificação do Java EE para trabalhar com a WEB também.
Facilita muito a vida de aplicações Stateful, aquelas que precisam guardar o estado
entre as páginas e interações por exemplo. Tem sido muito utilizada para transportar
o comportamento de aplicações Desktop para a WEB e esta, na minha opinião, é a
principal vantagem.

2.2.2 A arquitetura de software é importante, pois afeta o desempenho e a


robustez, bem como a capacidade de distribuição e manutenibilidade de um
sistema. Apresente um padrão de arquitetura que poderia se encaixar no
desenvolvimento do sistema Zer@Dengue, pensando em um projeto
orientado à objetos.

O padrão de arquitetura mais eficiente para o sistema Zer@Dengue é o


MVC é o acrônimo de Model-View-Controller (em português: Arquitetura Modelo-
Visão-Controle - MVC) é um padrão de projeto de software, ou padrão
de arquitetura de software formulado na década de 1970, focado no reuso de
código e a separação de conceitos em três camadas interconectadas, onde a
apresentação dos dados e interação dos usuários (front-end) são separados dos
métodos que interagem com o banco de dados (back-end). Normalmente usado
para o desenvolvimento de interfaces de usuário que divide uma aplicação partes
(camadas/componentes) interconectadas. Isto é feito para separar representações
de informação internas dos modos como a informação é apresentada para e aceita
pelo usuário, levando ao desenvolvimento paralelo de maneira eficiente. Modelo
17

para esse sistema é a ponte entre as camadas Visão (View) e Controle


(Controller), consiste na parte lógica da aplicação, que gerencia o comportamento
dos dados através de regras de negócios, lógica e funções. Esta fica apenas
esperando a chamada das funções, que permite o acesso para os dados serem
coletados, gravados e, exibidos. O modelo sabe o que o aplicativo quer fazer e é a
principal estrutura computacional da arquitetura, pois é ele quem modela o problema
que está se tentando resolver. Modela os dados e o comportamento por trás do
processo de negócios. Se preocupa apenas com o armazenamento, manipulação e
geração de dados. É um encapsulamento de dados e de comportamento
independente da apresentação.

Já View é a visualização onde a Visão pode ser qualquer saída de


representação dos dados, como uma tabela ou um diagrama. É onde os dados
solicitados do Modelo (Model) são exibidos. É possível ter várias visões do mesmo
dado, como um gráfico de barras para gerenciamento e uma visão tabular para
contadores. A Visão também provoca interações com o usuário, que interage com o
Controle (Controller). O exemplo básico disso é um botão gerado por uma Visão, no
qual um usuário clica e aciona uma ação no Controle. A camada controle é o
componente final da tríade, faz a mediação da entrada e saída, comandando a visão
e o modelo para serem alterados de forma apropriada conforme o usuário solicitou
através do mouse e teclado. O foco do Controle é a ação do usuário, onde são
manipulados os dados que o usuário insere ou atualiza, chamando em seguida o
Modelo.

O Controle (Controller) envia essas ações para o Modelo (Model) e para a


janela de visualização (View) onde serão realizadas as operações necessárias.
Mesmo tendo sido desenvolvida inicialmente para computação pessoal, o MVC foi
drasticamente adaptado como uma arquitetura para as aplicações web em todas as
maiores linguagens de programação sendo o padrão mais indicado para o
desenvolvimento do sistema Zer@ Dengue. Muitos frameworks de
aplicação comerciais e não comerciais foram desenvolvidos tendo como base esse
modelo. Tais frameworks variam em suas interpretações, principalmente no modo
que as responsabilidades MVC são separadas entre o cliente e servidor.
18

Vantagens do MVC são como o mesmo gerencia múltiplos views usando o


mesmo modelo é fácil manter, testar e atualizar sistemas compostos; É muito
simples adicionar novos clientes apenas incluindo seus views e controles; Torna a
aplicação escalável; É possível ter desenvolvimento em paralelo para o modelo,
visualizador e controle pois são independentes; Facilita o reuso do código; Melhor
nível de sustentabilidade, pois facilita a manutenção da aplicação; Melhor
performance, graças a separação em camadas; Fácil transformação da interface,
sem que haja necessidade de modificar a camada de negócio; Melhor desempenho
e produtividade, graças a estrutura de pacotes modulares e a arquitetura modular
permite aos desenvolvedores e designers desenvolverem em paralelo.

Essa estruturação em camadas objetiva facilitar a alocação da funcionalidade


aos componentes. O uso de camadas oferece suporte à flexibilidade e portabilidade,
o que resulta em facilidade de manutenção. Outro aspecto a destacar da arquitetura
em camadas é o uso de interfaces padrões visando facilitar reuso e manutenção.
Interfaces bem definidas encapsulam componentes (com funcionalidades definidas)
já testados, prática que permite o reuso e também auxilia na manutenção, já que
toda e qualquer alteração necessária estaria confinada àquele componente.

2.3 TAREFA 3

TELA DO FORMULÁRIO SENDO EXECUTADO NO NAVEGADOR


19

CÓDIGO FONTE –FORMULÁRIO CADASTRO USUÁRIO


<html>
<head>
<title>Formulario Cadastro Zer@ Dengue</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">


<br>
<table width="60%" border="0" cellspacing="0" cellpadding="0"
align="center">
<tr>
<td height="60">
<div align="center"><font face="Arial" size="4"><b>Cadastro de
Usu&aacute;rio SISTEMA ZER@ DENGUE</b></font></div></td>
</tr>
</table>
<p>&nbsp;</p>
<form name="frm_clientes" method="post"
action="formdenuncia.html">
<table width="80%" border="0" cellspacing="0" cellpadding="0"
align="center">
<tr>
<td width="24%" height="25"><font face="Arial" size="2">Nome
Completo</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="nome_user" size="35"></font></td>
</tr>

<tr>
20

<td height="25" width="24%"><font face="Arial"


size="2">Endere&ccedil;o:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="end_user" size="30"></font></td>
</tr>

<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Bairro:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="bairro_user" size="30"></font></td>
</tr>

<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Email:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="email_user" size="35"></font></td>
</tr>
</table>
<table width="80%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Senha:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="senha" size="20">
</font></td>
</tr>
</table>
<table width="80%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
21

<td height="25" width="24%"><font face="Arial"


size="2">RG:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="rg" size="20">
</font></td>
</tr>
</table>
<table width="80%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td height="25" width="24%"><font face="Arial"
size="2">CPF:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="cpf" size="20">
</font></td>
</tr>
</table>
<table width="80%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Telefone:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="tel_user" size="20">
</font></td>
</tr>
<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Cidade:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="cidade_user" size="35">
</font></td>
</tr>
22

<tr>
<td height="25" width="24%"><font face="Arial"
size="2">Estado:</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<select id="estado" name="estado">
<option value="AC">Acre</option>
<option value="AL">Alagoas</option>
<option value="AP">Amapá</option>
<option value="AM">Amazonas</option>
<option value="BA">Bahia</option>
<option value="CE">Ceará</option>
<option value="DF">Distrito Federal</option>
<option value="ES">Espírito Santo</option>
<option value="GO">Goiás</option>
<option value="MA">Maranhão</option>
<option value="MT">Mato Grosso</option>
<option value="MS">Mato Grosso do Sul</option>
<option value="MG">Minas Gerais</option>
<option value="PA">Pará</option>
<option value="PB">Paraíba</option>
<option value="PR">Paraná</option>
<option value="PE">Pernambuco</option>
<option value="PI">Piauí</option>
<option value="RJ">Rio de Janeiro</option>
<option value="RN">Rio Grande do Norte</option>
<option value="RS">Rio Grande do Sul</option>
<option value="RO">Rondônia</option>
<option value="RR">Roraima</option>
<option value="SC">Santa Catarina</option>
<option value="SP">São Paulo</option>
<option value="SE">Sergipe</option>
<option value="TO">Tocantins</option>
<option value="EX">Estrangeiro</option>
23

</select>
</font></td>
</tr>
<tr>
<td height="25" colspan="2"><div align="center">
<input type="submit" name="cadastrar" value="Cadastrar
Usuário&gt;&gt;">
</div></td>
</tr>
</table>
</form>
</body>
</html>

TELA DO FORMULÁRIO DE DENÚNCIA SENDO EXECUTADO


NO NAVEGADOR

CODIGO FONTE – FORMULÁRIO DENÚNCIA


<html>
<head>
24

<title>Formul&aacute;rio Denuncia</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">


<br>
<table width="60%" border="0" cellspacing="0" cellpadding="0"
align="center">
<tr>
<td height="60">
<div align="center"><font face="Arial"
size="4"><b>Formul&aacute;rio de Den&uacute;ncia</b></font></div>
</td>
</tr>
</table>
<br>
<form name="frm_clientes" method="post"
action="mailto:osmanhc@gmail.com">
<table width="79%" border="0" cellspacing="0" cellpadding="0"
align="center">
<tr>
<td width="24%" height="25">&nbsp;</td>
<td height="25" width="76%">&nbsp;</td>
</tr>

<tr>
<td height="25" width="24%"><font face="Arial"
size="2">ENDERE&Ccedil;O DA OCORR&Ecirc;NCIA (OBRIGAT&Oacute;RIO);
</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="text" name="end_user" size="30"
value=""></font></td>
</tr>
25

<tr>
<td height="25" width="24%"><font face="Arial"
size="2">UPLOAD DA FOTO DO LOCAL</font></td>
<td height="25" width="76%"><font face="Arial" size="2">
<input type="file" name="bairro_user" size="30"
value=""></font></td>
</tr>
</table>
<table width="79%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td height="25" width="24%"><p><font face="Arial"
size="2">DESCRI&Ccedil;&Atilde;O DO
LOCAL(OBRIGAT&Oacute;RIO)</font></p></td>
<td height="25" width="76%"><label>
<textarea name="descricao" id="descricao" cols="45"
rows="5"></textarea>
</label></td>
</tr>
</table>
<table width="79%" border="0" align="center" cellpadding="0"
cellspacing="0">
<tr>
<td width="100%" height="25"><div align="center">
<input type="submit" name="alterar" value="ENVIAR
DENÚNCIA&gt;&gt;">
</div></td>
</tr>
</table>
<p>&nbsp;</p>
</form>
</body>
</html>
26
27

3 CONCLUSÃO

O trabalho proporcionou uma experiência com o conteúdo que foi


aprendido no semestre, colocando em prática muitas coisas que só estávamos
aprendendo na teoria e com um tema atual . Considerando a disciplina de
Engenharia e Projeto de Software dentro do cenário proposto foi elaborado a
documentação do Software Zer@Dengue. Considerando uma solução para as
funcionalidades básicas para realização do cadastro de pessoa física para fazer uma
denúncia sobre focos da Dengue. A documentação de Engenharia e Projeto do
Software proposto contemplou um plano de gerenciamento de projeto de
software, com a descrição do Processo de Desenvolvimento de Software que foi
adotado com a descrição do método e técnicas usada para o desenvolvimento do
sistema. Foi realizado exposição da UML feito com a ferramenta Case Astah, com
os Diagramas de Use Cases, Diagrama de Classes, Diagrama de Sequência e
Diagrama de Atividades. Sendo uma importante tarefa pra se feito em qualquer
plano de desenvolvimento de software. E teve uma breve descrição da arquitetura
lógica e física, indicando e justificando todas as tecnologias que serão adotadas na
implementação e implantação do software, sendo a etapa que achamos mais difícil
no processo de desenvolvimento do trabalho.
Com a disciplina de Projeto Orientado ao Objeto e com base nos
requisitos de engenharia e projeto de software do sistema Zer@Dengue que foi
elaborado a equipe demonstrou a relação importante nas duas disciplinas,
complementando uma a outra nesse processo. Foi pensado de volta como será feito
implementação do sistema pensando na abordagem orientado à objetos. Para isso,
tivemos a experiência de procurar uma linguagem de fácil de utilização e
escolhemos tambem o padrão de projeto, definindo os frameworks, assim como
padrão de arquitetura que é muito importante, pois afeta a capacidade de
distribuição e manutenibilidade do sistema, essa parte achamos um pouco
complicado para escolher os frameworks pela a quantidade que tínhamos e o que
melhor de adaptava ao projeto, assim como padrão de criação da arquitetura
tivemos um pouco de dificuldade para escolher.
Na disciplina de Programação para WEB II foi feito dois formulários
para cadastro de usuário e o outro de denúncia. Colocando em pratica a parte de
28

linguagens. O objetivo foi familiarizar os alunos com aplicações web em php, html e
css. A importância e o ponto-chave das aplicações web é que elas são executadas
no navegador do usuário, ou seja, não é necessário instalar no computador.
Contudo, a facilidade de uso das aplicações web pelos usuários resultou no
crescimento de desenvolvimento de sistemas web, tornando-os cada vez mais
complexos. Uma das vantagens do desenvolvimento de aplicações web é que a
maioria dos usuários já está acostumada com o funcionamento dos navegadores,
dispensando um treinamento prévio. Além disso, a manutenção e a atualização são
centralizadas, portanto, não é necessário instalar em todos os computadores, basta
colocar os arquivos no servidor.
Desta forma tivemos a certeza que devemos sempre estar se atualizando pra
não ficarmos pra trás, os conhecimentos nessas áreas sempre estão em constante
evolução, por isso sua importância no estudo de caso. Outra reflexão é a
importância da interação dessas disciplinas, para que tenhamos um serviço que
atenda os objetivos da empresa e de seus cliente e usuários, onde o gestor, possa
tomar como base essas informações para decisões importantes sobre seu
segmento.
29

REFERÊNCIAS BIBLIOGRÁFICAS

MAITINO, Neto Roque. Engenharia de Software. Londrina: Editora e Distribuidora


Educacional S.A, 2016.

TERRA, Paulo Henrique, Anderson Emídio e Adriano Sepe. Projeto Orientado a


Objeto. Londrina: Editora e Distribuidora Educacional S.A, 2018.

GONÇALVEZ, Anderson Emídio, Paulo Henrique e Adriano Sepe. Ferramentas


para o sistema web II. Londrina: Editora e Distribuidora Educacional S.A, 2018.

VIEIRA, Silvâne. DENGUE | APLICATIVO PARA CELULAR É A NOVA ARMA DE


COMBATE À DOENÇA EM MG. Disponível em
http://www.blog.saude.gov.br/index.php/programasecampanhas/29459-91dengue-
aplicativo-para-celular-e-a-nova-arma-de-combate-a-doenca-em-mg. Acesso dia
18/05/2020.

Governo do Estado do Para. UNIOESTE DESENVOLVE APLICATIVO DE


MAPEAMENTO DA DENGUE. Disponível em
http://www.aen.pr.gov.br/modules/noticias/article.php?storyid=105092&tit=Unioeste-
desenvolve-aplicativo-de-mapeamento-da-dengue. Acesso dia 18/05/2020.

ARRUDA, Ana Cristina. Nova versão de aplicativo Goiânia Contra o Aedes


simplifica denúncia de focos pelo usuário. Disponível em
http://www.mpgo.mp.br/portal/noticia/nova-versao-de-aplicativo-goiania-contra-o-
aedes-simplifica-denuncia-de-focos-pelo-usuario#.XsKwR0RKjIU. Acesso dia
18/05/2020.

MEDIA, Dev. Conheça os Padrões de Projeto. Disponível em


https://www.devmedia.com.br/conheca-os-padroes-de-projeto/957. Acesso dia
25/05/2020.
30

TEDESCO, Kennedy . Padrões de projeto: o que são e o que resolvem.


Disponível em https://www.treinaweb.com.br/blog/padroes-de-projeto-o-que-sao-e-o-
que-resolvem/. Acesso dia 25/05/2020.

OLIVEIRA, Eric. O Universo dos Frameworks Java. Disponível em


http://www.linhadecodigo.com.br/artigo/758/o-universo-dos-frameworks-
java.aspx.Acesso dia 25/05/2020.

SILVA, Andreia. Ciclo de Vida de um Projeto: o que é e quais as suas principais


características. Disponível em https://www.euax.com.br/2018/11/ciclo-de-vida-de-
um-projeto/.Acesso dia 04/06/20.

VENTURA, Plínio. Entendendo o Diagrama de Atividades da UML. Disponível em


https://www.ateomomento.com.br/uml-diagrama-de-atividades/.Acesso dia 08/06/20.

Você também pode gostar