Você está na página 1de 23

UNIVERSIDADE ANHANGUERA – UNIDERP

(POLO DE PORTO ALEGRE - RS)

Curso Superior de Tecnologia em Análise e Desenvolvimento de


Sistemas

Tema: Projeto de Aplicativo Mobile para uso acadêmico discente

(Paulo Rogério dos Santos – RA 3440116354)

PROJETO INTERDISCIPLINAR APLICADO AOS CURSOS


SUPERIORES DE TECNOLOGIA V (PROINTER)
(Relatório Final)

Tutor (a) EAD: IVO DUCATTI

Porto Alegre / RS
2019

1
UNIVERSIDADE ANHANGUERA – UNIDERP
(POLO DE PORTO ALEGRE - RS)

Curso Superior de Tecnologia em Análise e Desenvolvimento de


Sistemas

Tema: Projeto de Aplicativo Mobile para uso acadêmico discente

(Paulo Rogério dos Santos – RA 3440116354)

PROJETO INTERDISCIPLINAR APLICADO AOS CURSOS


SUPERIORES DE TECNOLOGIA V (PROINTER)
(Relatório Final)

Trabalho desenvolvido para o curso


de tecnologia em análise e
desenvolvimento de sistemas,
disciplina projeto interdisciplinar
aplicado à tecnologia em análise e
desenvolvimento de sistemas V,
apresentado à Anhanguera
Educacional como requisito para a
avaliação na Atividade PROINTER, no
5º semestre 2019, sob orientação do
tutor (a) EAD IVO DUCATTI.

Porto Alegre / RS
2019

2
RESUMO

Esta pesquisa tem como finalidade o desenvolvimento de um projeto, cujo objetivo é


o desenvolvimento de um aplicativo MOBILE para melhorar a gestão do corpo
discente. Permitindo que os mesmos trabalhem de forma colaborativa através do
gerenciamento e acompanhamento de suas atividades cotidianas. De tal forma a
permitir que as tarefas sejam realizadas individualmente e em grupo com controle
pelo aplicativo das alterações efetuadas nas diversas atividades, bem como os
usuários recebam uma notificação das atualizações das tarefas realizadas. Para
isto, o software irá disponibilizar uma versão individual do trabalho compartilhado e
seu respectivo histórico e também uma versão colaborativa, de acordo com as
alterações realizadas nos arquivos. Para a construção do aplicativo foi utilizado a
plataforma Java/Android, permitindo armazenamento em Cloud Computing (Nuvem).

3
Sumário

INTRODUÇÃO .......................................................................................................................................... 5
DESENVOLVIMENTO................................................................................................................................ 6
REQUISIÇÃO FORMAL DE PROPOSTA (RFP) ........................................................................................ 6
A empresa ....................................................................................................................................... 6
Objetivos da RFP ............................................................................................................................. 6
Escopo do Projeto ........................................................................................................................... 6
TERMO DE ABERTURA DE PROJETO (TAP) .......................................................................................... 7
Objetivos do Projeto ....................................................................................................................... 7
Entregas previstas para o projeto ................................................................................................... 7
Descrição do projeto ....................................................................................................................... 7
Restrições do projeto ...................................................................................................................... 7
Planejamento .................................................................................................................................. 8
Riscos ............................................................................................................................................... 8
Orçamento do Projeto .................................................................................................................... 8
REQUISITOS FUNCIONAIS ........................................................................................................................ 9
REQUISITOS NÃO FUNCIONAIS ............................................................................................................... 9
DIAGRAMAS ............................................................................................................................................ 9
DIAGRAMA DE CASO E USO ............................................................................................................ 9
DIAGRAMA DE CLASSE .................................................................................................................. 10
DIAGRAMA DE SEQUÊNCIA ........................................................................................................... 10
CRONOGRAMA DE ENTREGA PROJETO ................................................................................................. 11
ESTRUTURA ANALÍTICA DO PROJETO (EAP) .......................................................................................... 11
PLANO DE GERENCIAMENTO DA QUALIDADE ...................................................................................... 12
MONITORAMENTO E CONTROLE .......................................................................................................... 12
INTERFACE DO APLICATIVO................................................................................................................. 123
CÓDIGO FONTE APLICATIVO .............................................................................................................. 124
TERMO DE ENCERRAMENTO .............................................................................................................. 121
CONCLUSÃO .......................................................................................................................................... 22
REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................................................. 23

4
INTRODUÇÃO

O presente trabalho tem por finalidade o desenvolvimento de um aplicativo


Mobile para uso acadêmico, ou seja, para o compartilhamento das informações
entre os estudantes.
Este aplicativo Mobile, irá permitir que os discentes trabalhem de forma
colaborativa através da realização, acompanhamento e o gerenciamento das
diversas etapas das atividades acadêmicas. Recebendo notificações sobre a
atualização do material postado, bem como permitindo o armazenamento e
compartilhamento das informações em nuvem (Cloud Computing).
Para realização desse projeto serão utilizadas como base as disciplinas
norteadoras estudadas durante o semestre (Linguagem para organização e
transferência de dados para web, Redes de computadores, Engenharia de software
e gerência de projetos, Desenvolvimento de software Seguro e Programação em
dispositivos móveis).
O trabalho está basicamente estruturado em Sete Partes. Sendo a primeira
parte (Desenvolvimento) utilizada para elaborar a Requisição formal da Proposta
(RFP) e o termo de Abertura do Projeto. A segunda parte, responsável por definição
dos Requisitos do Projeto (Requisitos Funcionais e Não Funcionais), Terceira parte
é a responsável pela definição dos Diagramas do Projeto (Caso de Uso, Classe e de
Frequência), Quarta parte é a responsável pelo Cronograma do Projeto, Quinta
Parte, responsável pela EAP (Estrutura Analítica do Projeto), Sexta Parte, responde
pelo Gerenciamento da Qualidade e a Sétima e última parte é a responsável pelo
Monitoramento e Controle do Projeto.

5
DESENVOLVIMENTO

REQUISIÇÃO FORMAL DE PROPOSTA (RFP)


A EMPRESA

A XYZ Informática, localizada em Porto Alegre – RS foi criada no ano 2006.


Fundada por dois sócios (Um da área de Tecnologia e outro oriundo da área de
Administração) cujo objetivo é o desenvolvimento de aplicações web e Mobile para o
mercado corporativo. Bem como, consultoria empresarial e reestruturação
organizacional.
Sua equipe é formada por profissionais com formação em administração de
empresas, contabilidade e tecnologia da informação (Analista de Sistemas, Analista
de negócios, Programadores e Gerente de Projetos).

OBJETIVOS DA RFP

Este documento tem como objetivo a formalização da proposta de


desenvolvimento do aplicativo Mobile Acadêmico. Cujo objetivo é o desenvolvimento
e compartilhamento das diversas Etapas das Atividades Acadêmicas para uso por
parte do corpo discente, permitindo o armazenamento em nuvem (Cloud
Computing).

ESCOPO DO PROJETO

O aplicativo Mobile deve permitir que os discentes trabalhem de forma


colaborativa para a resolução das diversas etapas das atividades acadêmicas e
também permitir o acompanhamento.
Tem como premissa o desenvolvimento das atividades que necessitam de
realização em grupo, bem como divisão das tarefas, de maneira que haja
possibilidade de compartilhamento das postagens e que os acadêmicos recebam
alerta com notificações de atualização sobre os materiais postados.
Além disso, o aplicativo deve disponibilizar uma versão individual do trabalho
com os dados históricos e também uma versão em grupo ou colaborativa,
gerenciando as atividades de acordo com a ordem de alteração do arquivo, por hora.
O aplicativo Mobile, deve ainda permitir a geração das informações em
tecnologias baseadas em XML, docx, xls, bem como utilização em um navegador de
Internet.

6
TERMO DE ABERTURA DE PROJETO (TAP)

Documento TAP (Termo de abertura de Projeto)


Empresa: A XYZ Informática
Projeto: Mobile Acadêmico
Gerente do Projeto: Paulo Santos
Data de Início: abril, 2019.
Data de finalização: junho, 2019.

OBJETIVOS DO PROJETO

Disponibilizar para o corpo discente um aplicativo que possibilite o


gerenciamento das diversas etapas das atividades acadêmicas sejam elas
individuais ou em conjunto referente aos cursos das entidades de Ensino.

ENTREGAS PREVISTAS PARA O PROJETO

 Entrega de forma gratuita de um aplicativo Mobile, cujo objetivo é o


gerenciamento das atividades em grupo do público discente (Alunos);
 Um sistema de alerta de atualizações de tarefas postadas;
 E por fim, um sistema de fácil uso por parte da equipe discente.

DESCRIÇÃO DO PROJETO

Um aplicativo Mobile (versão IOS ou Android) que faz o gerenciamento das


diversas etapas das atividades acadêmicas, com mecanismos de divisão de tarefas,
bem como sistema de geração de alertas de forma a permitir um melhor
acompanhamento, no tocante a:
 Prazos de entrega
 Divisão de Tarefas
 Sistema de alerta de atualizações

RESTRIÇÕES DO PROJETO

 O projeto deve ser entregue até o dia 30 junho de 2019.

7
PLANEJAMENTO

 Escrever o escopo do projeto.


 Desenvolver analise de requisitos.
 Realizar estudos de viabilidade.
 Conseguir a aprovação do TAP.
 Criar cronograma de entregas.
 Planejar o plano piloto do projeto.
 Fazer a implantação em produção após realização de testes.
 Solicitar aprovação de entrega.

RISCOS

 Escasso prazo para entrega das atividades;


 Insuficiência de recursos humanos;
 Não entrega do aplicativo nos prazos estabelecidos;

ORÇAMENTO DO PROJETO

Empresa parceira da Instituição não irá cobrar pelas atividades de


desenvolvimento e implementação. Desde que no aplicativo/Plataforma, conste seu
nome e possa utilizar-se em propagandas do projeto aplicativo Mobile Acadêmico
nas diversas mídias, tais como: TV, Jornais, Web, etc.

8
REQUISITOS FUNCIONAIS

A partir analise efetuada pela equipe composta pelos Analistas de Negócio,


Análise de Sistemas e Gerencia do Projeto, os seguintes requisitos funcionais para o
desenvolvimento do aplicativo Mobile, serão necessários:

 Listar cursos do usuário;


 Listar atividades e suas alterações;
 Autenticação de usuário e senha;
 Sincronização das informações;
 Notificação de alteração de atividades em andamento.

REQUISITOS NÃO FUNCIONAIS

Da mesma forma, após analise do time de projetos em entrevistas com os


usuários (corpo discente), os seguintes requisitos não funcionais foram encontrados:
 Persistência dos dados na aplicação, mesmo sem conexão com a Internet;
 Tratamento das Views;
 Layout Responsivo para os diversos dispositivos (Desktop, Web, Mobile);
 Interface intuitiva.

DIAGRAMAS

DIAGRAMA DE CASO E USO

9
DIAGRAMA DE CLASSE

DIAGRAMA DE SEQUÊNCIA

10
CRONOGRAMA DE ENTREGA PROJETO

Responsável Atividades Entregas


PAULO SANTOS Analise do Escopo 05/04/2019
ALINES MORAES Levantamento de 15/04/2019
requisitos
FLORIANO PEIXOTO Aprovação do Projeto 25/05/2019
MOISES LIMA Prototipação da aplicação, 15/06/2019
Desenvolvimento do
Layout, View, Lógica do
aplicativo nas diversas
camadas e
responsividade do
aplicativo Mobile
CLEBER SOUSA Homologação 18/06/2019
NEIMAR JR Implantação 25/06/2019
JUNIOR VIEIRA Acompanhamento e 30/06/2019
Entrega

ESTRUTURA ANALÍTICA DO PROJETO (EAP)

11
PLANO DE GERENCIAMENTO DA QUALIDADE
Objetivando obter a máxima qualidade na execução das diversas etapas do
projeto. O plano de gerenciamento da qualidade será executado levando-se em
conta os seguintes critérios de mensuração:

 Avaliação através de reuniões, com periodicidade semanal;


 Apresentação das entregas semanais;
 Apresentação dos indicadores para medir a execução e qualidade das
entregas mensais;
 Indicadores de medição tais como tempo de atraso: ou seja, percentual
de atraso acima de tolerância (+- 5% em relação ao projeto total) deve
executar mediamente o plano de ação para correção.

Mudanças eventuais nos requisitos do projeto serão avaliadas e devem ser


tratadas dentro de um sistema de controle de mudanças de qualidade. Sendo
encaminhadas para Gerência de Projetos.

MONITORAMENTO E CONTROLE
De acordo com o que foi estipulado pela gerencia do projeto, através das
entrevistas, analise dos requisitos e na qualidade do software. O monitoramento das
diversas etapas do desenvolvimento do Projeto de desenvolvimento do aplicativo
MOBILE, vai se dar da seguinte forma :
 As Etapas do projeto serão divididas entre os membros do grupo;
 Cada membro do grupo membro ficará responsável por elaborar os
passos para conclusão do projeto;
 Um dos membros ficará responsável por gerenciar e monitorar a
entrega de cada passo e no prazo estipulado.
O gerente de projetos ficará responsável por monitorar a entrega de todos os
componentes envolvidos na elaboração, execução, monitoramento e controle do
projeto.

12
INTERFACE DO APLICATIVO

13
CÓDIGO FONTE DO APLICATIVO

package com.br.CadPessoa;

import android.content.ContentUris;

import android.net.Uri;

import android.provider.BaseColumns;

public class Pessoa {

public static String[] colunas = new String[] { Pessoas._ID, Pessoas.NOME, Pessoas.CPF,


Pessoas.IDADE };

public static final String AUTHORITY = "com.br.CadPessoa.provider.pessoa";

public long id;

public String nome;

public String cpf;

public int idade;

public Pessoa() {

public Pessoa(String nome, String cpf, int idade) {

super();

this.nome = nome;

this.cpf = cpf;

this.idade = idade;

14
public Pessoa(long id, String nome, String cpf, int idade) {

super();

this.id = id;

this.nome = nome;

this.cpf = cpf;

this.idade = idade;

/**

* Classe interna para representar as colunas e ser utilizada por um Content

* Provider

* Filha de BaseColumns que já define (_id e _count), para seguir o padrão

* Android

*/

public static final class Pessoas implements BaseColumns {

// Não pode instanciar esta Classe

private Pessoas() {

public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/pessoas");

public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.google.pessoas";

public static final String CONTENT_ITEM_TYPE =


"vnd.android.cursor.item/vnd.google.pessoas";
15
public static final String DEFAULT_SORT_ORDER = "_id ASC";

public static final String NOME = "nome";

public static final String CPF = "cpf";

public static final String IDADE = "IDADE";

public static Uri getUriId(long id) {

// Adiciona o id na URI default do /pessoas

Uri uriPessoas = ContentUris.withAppendedId(Pessoas.CONTENT_URI, id);

return uriPessoas;

@Override

public String toString() {

return "Nome: " + nome + ", cpf: " + cpf + ", Idade: " + idade;

package com.br.CadPessoa;

import java.util.List;

import com.br.CadPessoa.Pessoa.Pessoas;

import android.app.ListActivity;

import android.content.Intent;

import android.os.Bundle;

16
import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.widget.ListView;

public class CadastroPessoa extends ListActivity {

protected static final int INSERIR_EDITAR = 1;

protected static final int BUSCAR = 2;

public static RepositorioPessoa repositorio;

private List pessoas;

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

repositorio = new RepositorioPessoaScript(this);

atualizarLista();

protected void atualizarLista() {

// Pega a lista de pessoas e exibe na tela

pessoas = repositorio.listarPessoas();

// Adaptador de lista customizado para cada linha de uma pessoa

setListAdapter(new PessoaListAdapter(this, pessoas));

17
@Override

public boolean onCreateOptionsMenu(Menu menu) {

super.onCreateOptionsMenu(menu);

menu.add(0, INSERIR_EDITAR, 0, "Inserir Novo").setIcon(R.drawable.novo);

menu.add(0, BUSCAR, 0, "Buscar").setIcon(R.drawable.pesquisar);

return true;

@Override

public boolean onMenuItemSelected(int featureId, MenuItem item) {

// Clicou no menu

switch (item.getItemId()) {

case INSERIR_EDITAR:

// Abre a tela com o formulário para adicionar

startActivityForResult(new Intent(this, EditarPessoa.class), INSERIR_EDITAR);

break;

case BUSCAR:

// Abre a tela para buscar a pessoa pelo nome

startActivity(new Intent(this, BuscarPessoa.class));

break;

return true;

18
}

@Override

protected void onListItemClick(ListView l, View v, int posicao, long id) {

super.onListItemClick(l, v, posicao, id);

editarPessoa(posicao);

// Recupera o id da pessoa, e abre a tela de edição

protected void editarPessoa(int posicao) {

// Usuário clicou em alguma pessoa da lista

// Recupera a pessoa selecionado

Pessoa pessoa = pessoas.get(posicao);

// Cria a intent para abrir a tela de editar

Intent it = new Intent(this, EditarPessoa.class);

// Passa o id da pessoa como parâmetro

it.putExtra(Pessoas._ID, pessoa.id);

// Abre a tela de edição

startActivityForResult(it, INSERIR_EDITAR);

@Override

protected void onActivityResult(int codigo, int codigoRetorno, Intent it) {

super.onActivityResult(codigo, codigoRetorno, it);

19
// Quando a activity EditarPessoa retornar, seja se foi para adicionar vamos atualizar a lista

if (codigoRetorno == RESULT_OK) {

// atualiza a lista na tela

atualizarLista();

@Override

protected void onDestroy() {

super.onDestroy();

// Fecha o banco

repositorio.fechar();

20
TERMO DE ENCERRAMENTO

Aceitação do Produto
Recebemos da Equipe de Projetos, através da formalização deste documento o
produto identificado acima, conforme as especificações constantes da Definição do
Escopo do Produto deste projeto (TAP – Termo de Abertura do Projeto).
Encerramento
Através deste documento formalizamos o encerramento deste projeto.
Motivo para o Término do Projeto (1)
(1) O projeto terminou praticamente no prazo, orçamento e escopo previstos.
Pequenos desvios nestes aspectos foram pouco significantes. O cliente ficou
totalmente satisfeito, pois o produto que lhe foi entregue está sendo utilizado e
realmente agregou valor ao seu trabalho.
Entrega Final
Porto Alegre-RS, 19 de maio de 2019.

21
CONCLUSÃO

Ao chegarmos à etapa final, ou seja, a conclusão desse projeto. Concluímos


que foi essencial seguirmos com muito afinco as áreas da Metodologia de
Gerenciamento de projeto, conforme o Guia PMBOK. Também foi importante
aprender que o trabalho em equipe, requer muita disciplina por parte de todos. Para
que o objetivo final fosse atingido com sucesso, foi essencial a aplicação dos
conceitos da disciplina de engenharia de software e gerência de projetos. E,
finalmente esperamos que esta etapa do Projeto (PROINTER) seja importante para
contribuição de futuras melhorias nas novas versões do aplicativo.

22
REFERÊNCIAS BIBLIOGRÁFICAS

Bibliografia Básica
GORGES, Eduardo. A Lei de Murphy no Gerenciamento de Projetos. Rio de Janeiro:
Brasport, 2010.
SOMMERVILLE, Ian. Engenharia de Software. 9ª ed. : Pearson, 2011.
HOWARD, Michael; LEBLANC, David. Escrevendo Código Seguro. 2ª ed. Porto
Alegre: Bookman, 2005.
DEITEL, Harvery M.; DEITEL, Paul J. et al.. XML : Como Programar. 1ª ed. Porto
Alegre: Bookman, 2003.
LEE, Wei Meng. Introdução ao Desenvolvimento de Aplicativos para o Android. 1ª
ed. São Paulo: Ciência Moderna, 2011.

Bibliografia Complementar
RIKLADNICKI, Rafael Et. al.. Métodos ágeis para desenvolvimento de software.
Dados eletrônicos: Porto Alegre: Bookman, 2014. Disponível em:
http://online.minhabiblioteca.com.br/#/books/9788582602089?q=software. Acesso
em: 17/11/2014
OODRICH, Michael T. TAMASSIA, Roberto. Introdução à segurança de
computadores. Dados eletrônicos: Porto Alegre: Bookman, 2013. Disponível em:
http://online.minhabiblioteca.com.br/#/books/9788540701939?q=seguran%C3%A7a.
Acesso em: 17/11/2014.
BREITMAN, Karin K. Web Semântica: a internet do futuro. Dados Eletrônicos: Rio
de Janeiro: LTC, 2005. Disponível em:
http://online.minhabiblioteca.com.br/#/books/978-85-216-1958-1/pages/48114702
Acesso em: 17/11/2014.
MEDNIEKS, Zigurd et. al.. Programando o Android. Disponível em:
<http://www.novateceditora.com.br/livros/progandroid/capitulo9788575222843.pdf>.
Acesso em 25 de ago. 2014.
LIFER, Natália; OLIFER, Victor. Redes de computadores: princípios, tecnologias e
protocolos para o projeto de redes. Dados Eletrônicos: Rio de Janeiro: LTC, 2008.
Disponível em:
http://online.minhabiblioteca.com.br/#/books/978-85-216-1982-6/pages/67069976.
Acesso em: 17/11/2014

23