projeto integrador ist-rio - projeto de software...

15
RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN 2178-5589. 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de Jogos.Rio de Janeiro: RevISTa, Ano 3. Resumo. O Projeto Integrador é uma iniciativa de caráter interdisciplinar que visa estimular o desenvolvimento de projetos de pesquisa científica em prol da consolidação dos conhecimentos adquiridos pelos alunos do IST-Rio, Instituto Superior de Tecnologia em Ciências da Computação do Rio de Janeiro, atual FAETERJ-Rio. O objetivo do Projeto Integrador é a elaboração de um software de jogo e-Learning de perguntas e respostas cujo conteúdo corresponde à ementa da grade de disciplinas desta instituição. Desta forma, os alunos participantes do projeto, além de reforçarem sua base de conhecimentos e adquirirem experiência em um projeto de software, estarão contribuindo para a criação de uma ferramenta pedagógica que poderá ser reaproveitada e aperfeiçoada pelos futuros alunos. Palavras-chave: IST-RIO, Projeto Integrador, Jogo 1. Introdução Inicialmente, o Projeto Integrador foi uma proposta, feita pela coordenação do curso, para integração das matérias dos períodos. No quarto de 2012/1 foi feito o projeto integrador com base nas seguintes disciplinas Engenharia de Software, Produção de Software, Orientação a Objetos II e Direito em Informática. Esse projeto foi feito sob forma de uma pesquisa científica que teve como principal característica a utilização da interdisciplinaridade para que os alunos pudessem praticar e reforçar, seus , Gutierre da C. Oliveira, Júlio César da Silva Projeto Desenvolvido pelos alunos do Curso de Análise de Sistemas Informatizados do Instituto Superior de Tecnologia do Rio de Janeiro (IST-Rio).

Transcript of projeto integrador ist-rio - projeto de software...

Page 1: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

1

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Resumo. O Projeto Integrador é uma iniciativa de caráter interdisciplinar que visa

estimular o desenvolvimento de projetos de pesquisa científica em prol da consolidação

dos conhecimentos adquiridos pelos alunos do IST-Rio, Instituto Superior de

Tecnologia em Ciências da Computação do Rio de Janeiro, atual FAETERJ-Rio. O

objetivo do Projeto Integrador é a elaboração de um software de jogo e-Learning de

perguntas e respostas cujo conteúdo corresponde à ementa da grade de disciplinas

desta instituição. Desta forma, os alunos participantes do projeto, além de reforçarem

sua base de conhecimentos e adquirirem experiência em um projeto de software,

estarão contribuindo para a criação de uma ferramenta pedagógica que poderá ser

reaproveitada e aperfeiçoada pelos futuros alunos.

Palavras-chave: IST-RIO, Projeto Integrador, Jogo

1. Introdução

Inicialmente, o Projeto Integrador foi uma proposta, feita pela coordenação do curso,

para integração das matérias dos períodos. No quarto de 2012/1 foi feito o projeto

integrador com base nas seguintes disciplinas Engenharia de Software, Produção de

Software, Orientação a Objetos II e Direito em Informática. Esse projeto foi feito sob

forma de uma pesquisa científica que teve como principal característica a utilização da

interdisciplinaridade para que os alunos pudessem praticar e reforçar, seus

, Gutierre da C.Oliveira, Júlio César da Silva

Projeto Desenvolvido pelos alunos do Curso de Análise de Sistemas Informatizados do Instituto

Superior de Tecnologia do Rio de Janeiro (IST-Rio).

Page 2: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

2

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

conhecimentos adquiridos nas matérias que compõem a grade curricular. A

materialização do Projeto Integrador se dá no desenvolvimento de um jogo eletrônico,

homônimo a este projeto. O jogo é do tipo e-Learning e obedece ao formato Quiz (de

perguntas e respostas) onde o rol de questões corresponde às disciplinas dos períodos

que seus alunos participantes cursam.

A motivação presente é devido a crescente utilização de jogos eletrônicos desenvolvidos

especialmente para área educacional como uma forma de equalizar a balança do

conhecimento.

Para entendermos melhor como isto pode ser útil, devemos antes entender um pouco

sobre a Teoria dos jogos, que foi introduzida por John von Neumann e Oskar

Morgensternem (1944), e que é um ferramental matemático para modelagem e análise.

Possui um conjunto de estratégias cujo objetivo não é tão somente resolver as questões

estratégicas, mas sim ajudar a ordenar o pensamento estratégico. Na ciência da

computação, contribui para o desenvolvimento de programas com inteligência artificial

e com a cibernética. Na educação é uma ferramenta pedagógica muito utilizada para

consolidar conhecimentos adquiridos pelos alunos, como um ambiente alheio ao

estresse que muitas vezes está presente em sala de aula. Os jogos eletrônicos em

especial, são muito familiares aos estudantes, e com o uso adequado, podem ser

estimulantes para a formação acadêmica dos mesmos.

2. Metodologia Scrum

Atualmente, no cenário de produção de software em que os prazos de entrega curtos e

projetos de complexidade e tamanho variados, as metodologias de desenvolvimento ágil

tornam-se necessárias. A metodologia Scrum tem se destacado neste cenário, pois aplica

um desenvolvimento de modelo interativo e incremental, extremamente escalável e

proporciona intensa colaboração e participação dos participantes do desenvolvimento.

Page 3: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

3

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Basicamente, a metodologia Scrum consiste em separar as demandas da lista

funcional do projeto em pequenas tarefas, que serão distribuídas para os membros da

equipe de desenvolvimento - Scrum Team -. Estas metas são denominas Backlog. O

gestor da equipe - nomeado Scrum Master - determina um prazo curto pré-estabelecido -

conhecido como Sprint - que varia até 30 dias, onde há reuniões diárias - Dayling Scrum

- e após cada fim do Sprint há uma reunião - Sprint Planning Meeting. Estas reuniões,

diárias ou periódicas, são levantadas pelos Scrum Master questões relativas ao resultado

do Sprint, ao processo do Sprint, a se algum membro tem algo a acrescentar, a

participação do cliente e a conclusão para imediata evolução do próximo Sprint. Com

isto, há um feedback imediato de entrega para o cliente e como a equipe está lidando

com o desenvolvimento do projeto, se há problemas, e a possibilidade de articular

medidas quase que instantâneas para corrigir problemas encontrados, integrando os

participantes do desenvolvimento.

Esta metodologia destaca-se pela sua escalabilidade, pois pode ser aplicada a

qualquer tipo de projeto. O ideal para cada Scrum Team é a faixa de 6 a 9 membros,

todavia, caso seja uma equipe grande de desenvolvimento, pode-se dividir em diversos

Scrum Team, distribuídos por área de atuação do projeto.

Portanto, pode-se concluir que a metodologia Scrum trata de uma intensa e

organizada distribuição de tarefas provendo a atualização constante. Sendo assim, nota-

se que este cenário se enquadra para aplicação desta metodologia no projeto. A adoção

da aplicação da metodologia ágil, foi positiva devido a forma de otimizar o

desenvolvimento do projeto, pois como características principais podemos citar a

valorização de indivíduos e suas interação em relação aos processos, simplificação no

processo de documentação e ênfase ao funcionamento do software, com grande censo de

adaptação a realidade, valendo-se da realização de tarefas de forma granular, o que traz

maior foco em resultados e consequentemente traz o aumento de produtividade.

Nas aulas de Produção de Software foram realizadas simulações do

desenvolvimento ágil na Metodologia scrum aplicado ao projeto integrador. Adaptando

Page 4: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

4

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

a metodologia Scrum a nossa a realidade de sala de aula e do projeto aplicado, foi

definido os ciclo e reuniões (meetings) da seguinte forma:

Ciclo diário (tempo de aula):

Definições das tarefas

40minutos de produção

Reunião no fim do dia

Ciclo semanal/mensal

Análise de resultados

Redefinições das tarefas

Veja seguir o diagrama representando a adaptação da metodologia Scrum

(Figura 1).

Figura 1. Diagrama representando a adaptação da metodologia Scrum.

Page 5: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

5

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

De acordo esta adaptação descrita acima, veja a seguir o quadro Scrum referente

ao primeiro ciclo:

Figura 2. Quadro Scrum.

Conforme descrito, estas adaptações geraram uma experiência interessante no

sentido de agregação de valor e conhecimento de uma metodologia direcionada a

resultado e a produção rápida de software. Outro ponto que vale a pena destacar é a total

adaptabilidade do planejado das tarefas executadas, que devido à inexperiência da

equipe foi necessária redefinição das tarefas em tempo de produção do ciclo em diversos

casos.

3. Modelagem do Software

Quanto à parte técnica, o projeto foi tratado como um sistema software de mercado, com

as devidas exigências de documentação a serem feitas. Todas as fases do ciclo de

desenvolvimento de software foram abordadas nas diferentes disciplinas do curso de

Análise de Sistemas do IST-Rio que adotaram o projeto integrador, como: Engenharia

de Software (ENG), Interface Homem Máquina (IHM), Produção de Software (PSW) e

Orientação ao Objeto II (OO2).

A disciplina ENG foi direcionada a criação da documentação de software do

sistema, sempre atendendo ao padrão UML – Unfied Modeling Language: diagrama de

Page 6: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

6

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

caso de uso, descrições de casos de uso, diagrama de classes e diagrama de sequência.

Em IHM, foi feito todo o projeto de interface aplicada ao layout e a questão da

usabilidade do sistema, como também foi contemplado a fase de teste, por meio de

roteiro de teste de interface. Já as definições do projeto consolidadas na engenharia de

requisitos, elaboração de cronograma, gerenciamento do projeto, aplicação da

metodologia de desenvolvimento e produção dos insumos foram executadas na

disciplina PSW. Segue a diante os principais insumos produzidos do projeto que

compõem a documentação, Figura 3, Figura 4, Figura 5 e Figura 6.

Figura 3. Diagrama de caso de uso.

Page 7: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

7

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 4. Modelo conceitual do banco de dados.

Figura 5. Modelo físico do banco de dados.

Page 8: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

8

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 6. Diagrama de Sequência CS04 Iniciar Partida

4. Implementação do Sofware

A implementação do software foi suportada pela disciplina de OO2. Os conceitos de

orientação ao objeto avançados recém-adquiridos na teoria foram aplicados na prática

no contexto da implementação do sistema. Conceitos são estes: páginas dinâmicas,

arquitetura MVC, Padrões de Projeto e boas práticas de implementação.

A linguagem básica para as páginas estáticas foi HTML – HyperText Markup

Language. Já, o conteúdo dinâmico foi implementado com a utilização da linguagem de

programação PHP – Hypertext Preprocessor. O SGBD – Sistema de Gerenciamento de

Banco de Dados - usado foi o MySql. Todas essas escolhas são de acordo com a

disponibilidade de ferramentas pela instituição e domínio dos alunos participantes.

A aplicação de padrões de projeto foi imprescindível para organização das

classes e chamada de métodos. Vale destacar o uso do padrão Singleton, onde só é

necessário instanciar uma a classe uma só vez, vide classe de conexão com banco de

dados e classe de controle.

A arquitetura MVC – Model View Controller – proporciona a separação de

camadas do sistema. Esta arquitetura, tendência em sistemas WEB, foi adotada na

implementação do projeto, é visível no modelo de classes de implementação:

Page 9: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

9

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Page 10: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

10

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 7. Diagrama de classe da implementação.

4.1. Máquinas de Estados

Para definir como seria a implementação do player de questões, foi elaborado um

esquema através da teoria dos grafos. Com a ajuda da utilização de grafos,

estabelecemos as regras de transição entre os níveis do jogo, onde dependendo do nível

de acerto nas respostas (totalmente correta, parcialmente correta e errada), o jogador

avançará ou não nas fases (representadas pelos números circulados). Usando estes

mesmos critérios o avanço para a fase seguinte poderá ser mais rápido ou mais lento ,

correspondendo ao número de saltos no grafo. Veja o esquema a seguir:

Figura 8. Máquina de estados: visão detalhada.

Na figura a seguir, temos uma visão geral de todos os grafos das fases do jogo

encadeados, onde o vencedor, será aquele que cumprir todas as fases com menos saltos

entre os grafos. O tempo total é o critério de desempate.

Regras de transição de estados (níveis) Estado inicial e final Número de estados finito

Page 11: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

11

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 9. Máquina de estados: visão macro.

4.2. Player do Sistema

Segue a diante a tela da interface do jogo:

Page 12: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

12

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 10. Tela do Player de Questões.

5. Mensuração do Projeto

Aplicando a metodologia de análise de ponto de função mantida pela IFPUG –

International Function Point Users Group – foi possível medir o tamanho funcional do

sistema.

Os insumos para esta contagem foram os seguintes artefatos: modelo de dados e

descrições de casos de uso. A contagem realizada foi a estimada, conforme a imagem a

seguir:

Page 13: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

13

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

Figura 11. Contagem Estimada de Ponto de função.

O total encontrado nesta contagem foi de 46 pontos de função, não sendo

aplicado o fator de ajuste, que contempla os requisitos não funcionais.

Para fins de curiosidade, levando em consideração o cenários e condições do

projeto, como mão de obra inexperiente, equipe reduzida. hora de trabalho reduzida,

exigência de documentação, padrão de qualidade não definido e finalidade acadêmica

didática, pode-se considerar que o valor R$/PF para esta linha de projeto seria de

R$20,00/ PF. Sendo assim, já que o total encontrado foi de 46PFs, este sistema custaria:

R$ 920,00.

Page 14: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

14

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

6. Considerações Finais

A experiência de participação no Projeto Integrador foi uma oportunidade de exercitar o

trabalho em equipe e de adquirir experiência prática na execução de um projeto de

software, ainda que este tenha sido realizado em uma visão micro do que de fato

acontece no mundo real.

A prática dos conhecimentos técnicos ajudou a identificar áreas de preferência,

bem como aptidões dos participantes, embora que, apesar de um prazo curto a se

cumprir, com equipe reduzida e, consequentemente, sobrecarga de tarefas. Então, o que

acarretou em alguns cronogramas desrespeitados, o que foi contemplado e de certa

forma permitido pela metodologia SCRUM. Outro fator a ser melhorado, é na

comunicação junto aos clientes, que neste caso são os professores orientadores das

disciplinas englobadas no projeto, onde tivemos poucas oportunidades de reuniões de

revisão e coordenação para o projeto. Certamente, tudo isto contribuiu para o

aprendizado de como trabalhar sobre pressão e como valer-se da criatividade e da

eficiência em atingir as metas estabelecidas.

O Projeto Integrador contemplou maior dinamismo nas aulas, e seu caráter

interdisciplinar aumentou a visão dos alunos sobre as próprias disciplinas, oferecendo

maiores perspectivas de suas aplicações em relação ao mercado de trabalho.

Referências

(s.d.). ( Martinig & Associates) Acesso em 04 de Abril de 2012, disponível em Metods

& Tools: http://www.methodsandtools.com/.

KOWALTWSKI, T., & BREITMAN, K. (2007). Atualizações em Informática 2007.

Puc Rio.

MOUSQUER, T., & ROLIM, C. O. (s.d.). A Utilização de Dispositivos Móveis como

Ferramenta Pedagógica Colaborativa na Educação Infantil. (U. R. URI, Editor)

Acesso em 08 de Abril de 2012, disponível em

http://www.santoangelo.uri.br/stin/Stin/trabalhos/11.pdf.

PRESSMAN, R. S. (1995). Engenharia de Software. Makron Books.

Page 15: projeto integrador ist-rio - projeto de software didaticorevista.faeterj-rio.edu.br/artigos/05/projeto_integrador_ist-rio... · 1 Lage (et al.) Projeto Integrador IST-Rio - Projeto

RevISTa: Publicação técnico-científica do IST-Rio.

nº 05 Data: Dezembro / 2012 ISSN 2178-5589.

15

Lage (et al.) Projeto Integrador IST-Rio - Projeto de Software Didático com Aprendizagem Através de

Jogos.Rio de Janeiro: RevISTa, Ano 3.

SARTINI, B. A., GARBUGIO, G., BORTOLOSSI, H. J., SANTOS, P. A., &

BARRETO, L. S. (25 a 29 de Outubro de 2004). Uma Introdução a Teoria dos Jogos.

(I. B. SBM, Produtor, & Universidade Federal da Bahia) Acesso em 08 de Abril de

2012, disponível em http://www.mat.puc-rio.br/~hjbortol/bienal/M45.pdf.

Teoria dos Jogos. (s.d.). Acesso em 09 de Abril de 2012, disponível em Wikipedia:

http://pt.wikipedia.org/wiki/Teoria_dos_jogos.

XAVIER, F. S. (2008). PHP - Do Básico à Orientação a Objetos. Ciência Moderna.