Escolar Documentos
Profissional Documentos
Cultura Documentos
1
Sumário
1. Introdução ................................................................................................................................. 1
2. Programação para Dispositivos Móveis ...................................................................................... 2
3. Linguagens de Programação para Dispositivos Móveis ............................................................... 2
4. Requisitos .................................................................................................................................. 3
5. Arquitectura de Software........................................................................................................... 4
6. Diagrama de Entidades e Relacionamentos ................................................................................ 4
7. Sistema e Gestão de Base de Dados (SGBD) ............................................................................... 5
8. Metodologia (Qualitativo e Quantitativo) .................................................................................. 6
9. Cinco Problemas Identificados ................................................................................................... 6
10. TheWay ................................................................................................................................. 7
10.1. Descrição do Problema e Público-alvo ................................................................................ 7
10.2. Descrição da Solução .......................................................................................................... 7
11. Requisitos Funcionais............................................................................................................. 7
12. Diagrama de Entidades e Relacionamentos (DER) .................................................................. 8
13. Diagrama de Classes .............................................................................................................. 9
14. Arquitectura de Software (MVA) .......................................................................................... 10
15. Protótipo ............................................................................................................................. 11
15.1. Fragment Home ............................................................................................................... 20
15.2. Fragment Favoritos .......................................................................................................... 20
15.3. Fragment Contacto .......................................................................................................... 20
15.4. Fragment Log Out/ Deslogar ............................................................................................ 20
16. Link do github ...................................................................................................................... 21
17. Conclusão ............................................................................................................................ 22
18. Referências Bibliográficas .................................................................................................... 23
Índice de Figuras
2
3
1. Introdução
Este trabalho é uma ilustração sobre a qualidade da aplicação cujo nome é TheWay, podendo
assim conhecer-se os seus limites e o seu objectivo principal para o qual deve ser programado.
Cujo foco é facilitar a interação do usuário e o aplicativo, em momentos que este usuário possa
estar em situações que obrigatoriamente não possa mexer o dispositivo, ou que apenas se
encontra em cenários negativos. Como por exemplo: conduzindo ou mesmo caminhando e
correr o risco de ser roubado.
Objectivo Geral
- Fazer um levantamento de requisitos.
Objectivo Específico
- Formalizar e descrever o escopo do projecto em questão.
1
➢ Esta é a seccção da Revisão Bibliográfica
2
No caso deste trabalho, que tal falar do Java?
Java
- Segurança, robustez, popularidade, recursos de desenvolvimento móvel integrados,
investimento relativamente baixo, Suporte da comunidade.
Acima estão citados os seus benefícios primários, quando falamos de Java para Dispositivos
Móveis.
Por que usar Java para desenvolvimento móvel?
“Java é uma linguagem de programação versátil e poderosa que pode ser usada para
desenvolver uma ampla gama de aplicativos. Pode ser executado em qualquer plataforma,
incluindo Android e iOS.”(Borusiuk 2022)
Plataformas Java
✓ Java Standard Edition (JSE) – Define a JVM e bibliotecas que irão correr em
computadores.
✓ Java Enterprise Edition (JEE) – É a plataforma JSE adicionada a um conjunto de APIs
para os servidores, containers e ferramentas.
✓ Java Micro Edition (JME) – É a plataforma projectada para pequenos dispositivos e
possui uma máquina virtual mais leve e um mínimo de bibliotecas.
4. Requisitos
Neste âmbito, sua definição seria como sendo o conjunto de dados que podemos chamar de
descrição de um sistema de software por desenvolver.
E temos dois tipos de requisitos, que são os:
- Funcinais e não-funcionais.
Requisitos Funcionais
Estes dizem sobre a capacidade da aplicação, mais concretamente, o que ela faz.
Exemplo: Um aplicativo de música deve ser capaz de realizar pesquisas musicais do usuário e
tocar a tal música assim como realizar as outras operações básicas.
Requisitos Não-Funcionais
Praticamente são as limitações de um aplicativo, ou por outras palavras, as qualidades
específicas, isto é, sem sair da “caixa”, destinado a um tipo de ambiente ou ação.
Exemplo: Afirmar que o software deve operar somente em Android e IOS ou somente em IOS.
Ou ainda, quando definimos que uma solução precisa utilizar criptografia, pois manipula dados
sensíveis de usuários.
3
5. Arquitectura de Software
É de extrema importância pensar em arquitectura desde o dia zero da criação de um software.
Porquê?
- Devido a cada escolha durante o crescimento do trabalho, pois se essa escolha for errada pode
vir a criar consequências futuras como uma que toda gente conhece, a lentidão do software, e
vários outros e isso pode levar ao termo chato chamado trabalho.
De acordo com o canal da Youtube Código Fonte TV, o mais simples e o mais conhecido
padrão de arquitectura de software é o model-view-controller (MVC) mas neste trabalho irá se
falar do Minimum Viable Architecture (MVA) que é tecnicamente equivalente ao Minimum
Viable Product (MVP).
“Um MVP precisa de um MVA” (Bittner 2022)
MVA – pode ser definido como a arquitetura com as mínimas funcionalidades do produto, a
cada fase ou versão que o producto vai passando. Em que durante o ciclo de vida de cada versão
ele é melhorado.
Os Principais Princípios da Arquitetura Mínima Viável
“- Construir para o cenário mais provável” (Novoseltseva 2022)
“- Manter o design flexível o suficiente para lidar com cenários extremos à medida que eles
surgem” (Novoseltseva 2022)
“- O produto é construído em pequenos incrementos ao longo de um determinado período de
tempo” (Novoseltseva 2022)
“- Esse tipo de arquitetura é fundamentado em requisitos concretos e factuais, em vez de
suposições” (Novoseltseva 2022)
4
Figura 2 – Notação Chen
5
Tipos de SGBD
1. Relacionais (SQL): cuja função é conectar dados de origens diferentes
2. Não relacionais (NoSQL): a diferença em relação aos bancos SQL é que, aqui, a
estrutura de dados não tem que ser previamente definida
3. Hierárquico: formato mais antigo, no qual os dados se organizam em uma disposição
piramidal, onde dados “filhos” são ligados a dados “pai”
4. De rede: nele, cada “filho” pode ter mais de um “pai” e a estrutura dos dados se
assemelha mais a uma teia de aranha do que a uma pirâmide
5. Orientado a objetos: modelo mais avançado em que diferentes formatos de dados se
mesclam, sendo, por isso, mais caro de se implementar.
PrincipaisVantagens Do SGBD
✓ Menos esforço humano
✓ Customização
✓ Evita redundâncias
✓ Facilidade no compartilhamento de dados.
6
Bom, acima estão descritos os problemas e suas possíveis aplicações que servirão de soluções.
Opcionalmente o problema que tem maior impacto na sociedade, o que será facilmente usado
pelos utilizadores é o TheWay apesar da concorrência.
10. TheWay
10.1.Descrição do Problema e Público-alvo
TheWay é o nome do aplicativo que principalmente irá inovar os artistas locais do nosso país,
além de ter músicas globais, terá músicas dos artistas locais que dificilmente são encontrados
na maioria dos aplicativos de músicas online. Esta app servirá como uma ponte para aqueles
que querem que os seus nomes sejam conhecidos numa grande extensão de área.
Solucionará também o problema que os condutores, e pedestres normalmente têm, que são:
acidentes de viação e roubos de dispositivos na rua, respectivamente.
10.2.Descrição da Solução
Com o uso do comando de voz para realizar as operações importantes do aplicativo, o usuário
não precisa de interação directa com o dispositivo. Assim, em qualquer situação de difícil
manuseamento, o usuário só precisará usar o comando de voz.
7
12. Diagrama de Entidades e Relacionamentos (DER)
8
13. Diagrama de Classes
9
14. Arquitectura de Software (MVA)
10
15. Protótipo
11
12
13
14
15
16
17
18
19
Numa primeira fase o aplicativo faz o upload das músicas numa activity em que o botão
presente no fragment home redireciona até a própria activity, onde se conecta com o storage
do firebase para não fazer-se o upload directamente do firebase isto é, fazer upload
manualmente, criando sempre variáveis. E o aplicativo irá como conclusão tocar a música
que será listada numa activity que cont’em recycler view.
De momento ao tocar a própria card view a música toca, ainda não pausa ou vai para a
seguinte música.
A app contém 4 fragments de home, favoritos, de log out e contacto, contém também um
header, options, toast messages e a própria navigation Drawer.
15.1.Fragment Home
- possui no momento um botão que irá redicionar o usuário a activity que terá a função de
fazer upload da música;
-Futura deve possuir uma visualização amigável para o usuário.
15.2.Fragment Favoritos
- Deve futuramente listar as músicas favoritas do usuário.
15.3.Fragment Contacto
- Deve possuir contacto para suporte ao usuário.
20
16. Link do github
- https://github.com/DidasMorera/TheWay
21
17. Conclusão
Este trabalho no geral foi um levantamento de requisitos que é a fase inicial de qualquer
projecto, neste caso, de um projecto de um aplicativo. Conclui-se que os diagramas
principalmente são a base para uma ideia se tornar concreta e para que esta ideia concreta seja
devidamente organizada para evitar futuros contratempos, usando diagramas de entidades e
relações, diagrama de classes como também a mínima arquitectura viável.
Os Objectivos propostos foram atingidos teoricamente e praticamente, pois os pontos foram
abordados mas alguns não devidamente aprofundados devido ao contexto em causa.
22
18. Referências Bibliográficas
13. Iarn tech. Android Studio Navigation Drawer with Custom Fragment and Activity ||
Navigation Component. YouTube, 20 de Fevereiro de 2022. Disponível em: <
https://www.youtube.com/watch?v=aAzjQ2K_pDI>. Acesso em: 29 de Janeiro de
2023.
14. Foysal Tech. Online Music Player App using Firebase + Backend using Android
Studio Part 01. YouTube, 28 de Fevereiro de 2022. Disponível em:
<https://www.youtube.com/watch?v=ThZKrjHTD4M&list=PL0xdCkXoUQmPtkilS
maag0JEWzvGZnYrE&index=4 >. Acesso em: 29 de Janeiro de 2023.
23