Sistematização da Aprendizagem de Programação em Grupo
|
|
- Augusto Camilo Bergmann
- 6 Há anos
- Visualizações:
Transcrição
1 Sistematização da Aprendizagem de Programação em Grupo Thais Castro 1,2, Hugo Fuks 1 1 Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) Caixa Postal Porto Alegre RS Brazil 2 Instituto de Computação Universidade Federal do Amazonas (UFAM) Av. Gal. Rodrigo Otávio, 3000 Campus, Setor Norte Manaus AM - Brasil hugo@inf.puc-rio.br, thais@dcc.ufam.edu.br Abstract. The thesis reported here deals with devising structuring elements that may broaden intervention opportunities from the teacher in a context of group programming learning. Based on a set of case studies with freshmen in computing courses a systematization for practices, methods and technologies was developed producing an approach for supporting group programming based in three investigation paths: pedagogical assumptions, CSCL environments and collaboration methods. Within this context we proposed a group programming progressive learning scheme and a new way to analyze conversation logs inspired on the speech acts theory. Resumo. A tese aqui relatada trata da concepção de elementos estruturantes para ampliar as oportunidades de intervenção pelo professor em um contexto de aprendizagem de programação em grupo. A partir de uma série de estudos de caso com turmas de calouros em cursos de computação, foi desenvolvida a sistematização de práticas, metodologias e tecnologias para apoiar a aprendizagem de programação em grupo, baseada em três frentes de investigação, a saber: pressupostos pedagógicos, ferramentas LMS e métodos de colaboração. Nesse contexto foi proposto um esquema progressivo de aprendizagem de programação em grupo e uma maneira de analisar logs de conversas inspirada na teoria de atos de fala. 1. Introdução Aprendizagem de programação é uma atividade cognitiva que requer alto nível de raciocínio abstrato [Weinberg, 1971]. Essa necessidade de abstração frequentemente provoca bloqueios nos alunos de graduação em computação durante a disciplina introdutória de programação, transformando a aprendizagem no tema em uma experiência penosa e desmotivadora. Para amenizar o problema, diferentes abordagens têm sido utilizadas e um elemento comum a todas elas é a busca pelo desenvolvimento de habilidades para a solução de problemas, o que induz o aluno a intuitivamente entender estratégias como divisão e conquista, além de ilustrar a representação de uma solução na linguagem de programação adotada na disciplina. ISSN:
2 Abordagens mais recentes procuram aplicar conceitos e técnicas utilizados em aprendizagem colaborativa à aprendizagem de programação. Nesse caso, a principal motivação para incorporar a colaboração na aprendizagem é que o mercado de trabalho exige profissionais aptos a trabalharem em equipes e essa habilidade é formada durante os cursos de graduação. A construção dessa habilidade exige um planejamento mais profundo das disciplinas introdutórias. No plano de curso deve estar prevista a utilização de métodos de aprendizagem colaborativa além das estratégias de aprendizagem e práticas pedagógicas usuais. O pressuposto desses métodos colaborativos é de que os alunos aprendem mais quando conseguem interagir com seus pares, em busca de uma solução para um dado problema [Delval, 2002]. Em disciplinas introdutórias de programação em nível de graduação, o uso de groupware baseado na Internet representa uma oportunidade para introduzir boas práticas no processo de aprendizagem dos alunos, especialmente o registro de todas as interações entre os alunos em seus grupos enquanto resolvem exercícios, além do registro da evolução dos códigos de cada aluno. O registro das atividades é um requisito essencial para acompanhar o progresso da aprendizagem, tornando possível para o professor fornecer feedback apropriado ao longo do processo, especialmente na realização dos exercícios. Os alunos que trabalham em grupos apoiados por LMSs (Sistemas de Gerenciamento da Aprendizagem) geralmente produzem extensos logs de conversas incluindo fragmentos de código, rastros dos processos de tomada de decisão, da metodologia de trabalho e do uso de seus próprios padrões de desenvolvimento, os quais devem ser filtrados e categorizados para futuras análises dando subsídios para a identificação just in time de dificuldades dos estudantes e à oportuna intervenção do professor durante o processo. A investigação aqui relatada trata da concepção de elementos estruturantes para ampliar as oportunidades de intervenção pelo professor em um contexto de aprendizagem de programação em grupo. Para isso, investigamos tecnologias de apoio à aprendizagem de programação, enfatizando técnicas de programação em grupo, visando a inserção da colaboração em contextos de aprendizagem de programação. Em geral, nos cursos de programação introdutória, as turmas são grandes e o professor, mesmo registrando todas as interações, não consegue, sem auxílio de mecanismos de filtragem e classificação de conteúdos, acompanhar o que se passa em cada grupo para poder intervir durante a realização dos exercícios. Daí surge a questão de pesquisa: como ampliar oportunidades de intervenção em um processo de aprendizagem de programação em grupo? O objetivo desta tese é sistematizar práticas, metodologias e tecnologias em uma abordagem para apoiar a aprendizagem de programação em grupo. Para isso, três frentes de investigação devem ser abertas no Pressuposto Pedagógico, nas Ferramentas LMS e no Método de Colaboração. O pressuposto pedagógico da tese é a teoria de desenvolvimento cognitivo de Piaget, aliada a práticas vigentes de ensino de programação e técnicas conhecidas de programação em grupo. As práticas pedagógicas relacionadas na revisão bibliográfica desta tese se baseiam em concepções pedagógicas diversas, tendo em comum o uso de 1764
3 software de apoio para a realização de exercícios. Essas ferramentas computacionais são úteis para monitorar e intervir durante o processo de aprendizagem. As técnicas de programação em grupo investigadas são usadas em empresas de desenvolvimento de software e muitas vezes adaptadas para serem utilizadas em disciplinas introdutórias de programação em cursos de graduação cujo cerne é computação. Segundo a investigação feita nesta tese, os LMSs tem sido bastante utilizados para apoiar a aprendizagem presencial na graduação, confirmado por pesquisas em máquinas de busca na web e exemplo prático na instituição onde os estudos de caso desta tese foram aplicados, a Universidade Federal do Amazonas (UFAM). Ainda de acordo com a teoria de Piaget, esta pesquisa assume que os ambientes LMSs aliados a técnicas colaborativas (o que chamamos ambientes CSCL) incentivam a colaboração e regulam as práticas desejadas. Portanto, o segundo pilar desta tese é baseado em ambientes CSCL e tecnologias que apoiem a adoção de práticas desejadas com possibilidades de integração a esses ambientes. Para isso, foram investigadas linguagens de agentes e adoção do LCC para descrever agentes responsáveis pela identificação de padrões de interação gerados a partir de um esquema proposto nesta tese. A intervenção é vista neste trabalho como o ponto crucial na aprendizagem de programação em grupo. Neste sentido, foi proposto um esquema progressivo de aprendizagem de programação, que auxilia os alunos a gradativamente adotarem práticas colaborativas na resolução de exercícios de programação enquanto o professor observa como eles estão incorporando práticas colaborativas às práticas individuais anteriormente identificadas através de uma análise baseada na evolução dos códigos individuais dos alunos, desenvolvida no contexto desta pesquisa. Esse esquema pode, conforme verificado com uma linguagem de representação do conhecimento, ser generalizado para outros contextos de aprendizagem. 2. Aprendizagem de Programação O que realmente é necessário para se aprender e facilitar a aprendizagem de programação ainda não é conhecido. Até o desfecho desta pesquisa não foram encontrados trabalhos na literatura que tenham tido êxito em estabelecer métodos irrefutáveis e técnicas para aprendizagem de programação. Por outro lado, há iniciativas cujo principal objetivo é criar e manter o interesse dos alunos na disciplina utilizando abordagens inicialmente baseadas nos processos de resolução de problemas que os alunos iniciantes em cursos de graduação em computação já foram expostos durante a educação básica, necessárias à apreensão dos conceitos. Outros ainda valorizam as práticas colaborativas, como a técnica de programação em pares, parte da metodologia dos métodos ágeis de programação, como meio de envolver os alunos em projetos de interesse coletivo, proporcionando uma vivência em grupo, necessária no mercado de trabalho. Buscar compreender quais processos cognitivos estão envolvidos na aquisição das habilidades para programação possibilita que as práticas utilizadas por cada aluno se tornem evidentes e o conhecimento gerado possa ser reutilizado em outros cursos de programação introdutória. Nesta seção apresentamos uma caracterização de diferentes maneiras de agrupar as modificações observadas na evolução dos códigos de alunos de 1765
4 Ciência da Computação e Engenharia da Computação cursando a disciplina de Introdução à Computação na UFAM. As versões de códigos, objeto desta análise, foram obtidas diretamente de um banco de dados local, que foi povoado durante a realização de trabalhos práticos da disciplina introdutória, conforme planejamento e execução discutida em [Almeida, Castro & Castro, 2006]. Essa disciplina introdutória foi ministrada utilizando o paradigma de linguagem funcional sendo toda a codificação em Haskell. Para identificar alguns processos cognitivos que os alunos poderiam demonstrar através das várias versões parciais de sua codificação, propusemos uma ferramenta chamada AcKnow, discutida amplamente em [Castro, Castro and Fuks, 2008], que identifica e agrupa as modificações na evolução dos códigos em três categorias de evolução de códigos: sintáticas, semânticas e refactoring. Modificações sintáticas exemplos: endentação, inserção e deleção de caracteres. Essas modificações visam tornar o código interpretado corretamente pelo interpretador Haskell, processo que sugere muitas correções por tentativa e erro na tentativa de encontrar uma solução. Modificações semânticas exemplos: modificação nas estruturas de dados; mudança de tupla para lista; inclusão de uma função recursiva; e correção de bugs. Essas modificações afetam diretamente a avaliação da função, resultando em uma saída errada. Refactoring exemplo: modificações cujo objetivo é melhorar o código, de acordo com métricas de qualidade conhecidas da engenharia de software. O Acknow foi desenvolvido em Prolog, utilizando uma gramática de cláusulas definidas e um conjunto de regras de inferência. O objetivo dessa ferramenta é analisar e categorizar a evolução dos códigos dos alunos, fornecendo elementos para que o professor faça intervenções no processo de aprendizagem de programação de seus alunos enquanto eles ainda estão elaborando sua solução. Como entrada de dados, o AcKnow foi projetado para receber funções presentes nos códigos dos alunos indicados por uma análise quantitativa previamente realizada por uma ferramenta de controle de versões chamada AAEP [Almeida, Castro & Castro, 2006]. Essas indicações são baseadas na quantidade de versões que cada aluno fez. Quando a essa quantidade de versões de um ou mais alunos difere significativamente da distribuição normal da turma, esse(s) aluno(s) é (são) identificado(s) como caso especial, ficando marcado para visualização do professor, que envia as versões diretamente para o AcKnow. Então, baseado na análise do AcKnow para cada par de versões, o professor faz uma análise mais detalhada, fornecendo feedback diretamente aos alunos. O padrão de modificações mais comum dentre os códigos analisados é um grande número de modificações sintáticas, algumas modificações semânticas intercaladas com outras sintáticas, seguindo em alguns casos por um refactoring. Uma aluna chamou atenção por apresentar um padrão diferente e bem eficaz. Ela efetuou uma modificação de refactoring logo após as de sintática e então refletiu e percebeu que a estrutura de dados utilizada poderia trocada em prol de uma representação mais adequada. 1766
5 3. Tecnologias para Aprendizagem de Programação em Grupo No contexto de um projeto de pesquisa da UFAM, foi desenvolvido o ColabWeb, um ambiente CSCL configurado e desenvolvido utilizando a plataforma Moodle. Este ambiente é utilizado como apoio às disciplinas presenciais ministradas por professores do Departamento de Ciência da Computação. O projeto de interface para o ColabWeb privilegiou sua funcionalidade, o que fez com que os primeiros cursos ocorressem com um aproveitamento desequilibrado de seus recursos. Em vista dessa diferença em termos de sucesso no uso daquele groupware, evidenciada neste trabalho através do gerenciamento de cursos de computação introdutória, decidiu-se fazer uma inspeção que evidenciasse o poder de comunicação do artefato de software (ColabWeb). Para isso, é utilizado o Método de Inspeção Semiótica (MIS) [De Souza et al., 2008]. Vale ressaltar que um método de avaliação da comunicabilidade do ambiente CSCL que se estiver utilizando é parte integrante desta sistematização, pois tal ambiente precisa passar por constantes melhorias. Outros métodos de avaliação aplicados a ambientes CSCL já foram utilizados em contextos de curso, como os que avaliam a participação dos alunos em fóruns, a participação dos alunos de um curso em todas as atividades do groupware utilizado e até a participação em debates. No entanto, nenhum desses trabalhos considera que a interface influencia na avaliação da participação dos alunos nas atividades propostas em um ambiente CSCL. Tal aspecto só é considerado em métodos de inspeção baseados na semiótica como é o caso do MIS. Conforme a expectativa do MIS, foram elencadas recomendações de melhorias para a comunicabilidade do ColabWeb. Essa inspeção foi descrita detalhadamente em [Castro & Fuks, 2009]. Avalia-se uma instância (ColabWeb) de uma arquitetura amplamente utilizada (Moodle), observando-se unidades, que neste caso são cursos. A partir dessas unidades generalizam-se as observações para a instância Resultado da Aplicação do MIS no ColabWeb Foram encontrado problemas navegacionais, ou seja, a forma de navegação e estruturação de páginas web do ColabWeb, que é uma herança do Moodle, não é adequada. Apesar dos diversos problemas encontrados e a sugestão de modificações, a estrutura de navegação do Moodle não permite ser modificada. No entanto, da mesma forma que as configurações, podem-se omitir os links indesejados da interface com o usuário, acrescentando outro, referenciando assim o desejado. Dessa forma, o problema que ocorre com a visualização de grupos poderia ser amenizado retirando-se o link de grupos, permanecendo somente a palavra que os descreve. 4. Um Esquema Progressivo para Aprendizagem de Programação em Grupo Um recorte na literatura relacionada à aprendizagem de programação em grupo incluindo: o relato de uma experiência de 15 anos com aprendizagem de programação [Castro et al, 2002]; a especificação de padrões de colaboração [Kobbe et al, 2007]; e um estudo exploratório sobre aprendizagem colaborativa de programação [Castro et al, 2008], mostra que a programação em grupo é uma tarefa difícil em grande parte devido à inexperiência dos estudantes com o trabalho em grupo. Para desenvolver atividades 1767
6 em grupo, especialmente aquelas como a programação, é necessário um modelo para orientar a atividade ou, no caso da inexistência de tal modelo, um esquema de progressão para a aprendizagem de programação, como proposto a seguir. A Figura 2 ilustra o esquema progressivo de aprendizagem de programação que define uma progressão do indivíduo para o grupo na programação, em um cenário que inicia na Fase 1, com uma preparação que envolve sessões no laboratório tratando com problemas introdutórios e esclarecimentos sobre a metodologia. A Fase 2 consiste da solução individual com o respectivo registro. Na Fase 3 o trabalho em grupo começa com a decisão sobre qual seria a melhor solução individual desenvolvida. Na Fase 4 a solução do problema torna-se colaborativa: o professor define as tarefas e o grupo define os atores para cada atividade. Na Fase 5 o grupo é também responsável pela definição das tarefas. Por fim, na Fase 6 acontece uma atividade de desenvolvimento onde os grupos competem num cenário que reproduz situações reais de trabalho. Figura 1 Esquema Progressivo de Aprendizagem de Programação em Grupo A opção pela divisão em 6 fases, bem como a sequenciação proposta, foi baseada na experiência com o ensino de programação usando linguagens funcionais desenvolvido naquela instituição desde 1989, bem como na análise dos relatos citados no início desta seção, considerando-se um curso de 75 horas desenvolvido ao longo de um semestre acadêmico. 5. Sistematização da Aprendizagem de Programação em Grupo Até agora propusemos elementos de uma abordagem para aprendizagem de programação em grupo baseada em: (1) elementos da evolução de códigos para evidenciar pistas de aquisição de níveis mais elevados de abstração a partir da identificação de fragmentos de código que representam modificações na forma como o aluno enxerga a solução do exercício; (2) elaboração de exercícios de programação adequados ao desenvolvimento da habilidade de abstração de alunos iniciantes em cursos de graduação em computação, proporcionando a prática em grupo como sugerido nos estudos de Piaget; (3) recomendações para utilização, configuração e desenvolvimento de interfaces para ambientes CSCL de forma a proporcionar maior poder de comunicabilidade entre os alunos; e (4) um esquema progressivo de introdução de práticas colaborativas no contexto de situações de aprendizagem de programação em grupo. 1768
7 Para que os elementos enumerados acima se transformem na sistematização de uma abordagem é necessário evidenciar se, com a utilização de um ambiente CSCL (3) para apoiar a disciplina de programação introdutória, a elaboração de exercícios de programação que proporcionem a evolução do raciocínio abstrato (2), seguindo um macro-script para colaboração (4) e considerando que o aluno modifique seu raciocínio através do refinamento sucessivo dos códigos (1), as oportunidades de intervenção são ampliadas. As intervenções têm o propósito de, através do acompanhamento durante a resolução dos exercícios, incentivarem as interações no ambiente. Essas atividades requerem a identificação e análise dos padrões presentes nas interações, que constituem o elemento final da sistematização proposta nesta tese. Através de dois estudos de caso aplicamos o esquema progressivo e ao mesmo tempo propomos uma forma de análise das conversas. O esquema progressivo de aprendizagem de programação em grupo proposto precisava ser testado de modo a provar sua utilidade em cursos introdutórios de programação como forma de desenvolver nos alunos habilidades para colaboração em programação, apoiando o refinamento de sua habilidade de abstração. Primeiramente, propusemos um estudo de caso para aplicarmos os elementos dessa abordagem, em forma de um estudo de caso descritivo [Yin, 2010], onde procuramos por evidências de como os grupos utilizam o esquema proposto, dentro da metodologia do curso. A partir da análise desse estudo de caso, identificamos padrões nas interações nas discussões registradas nos fóruns que nos permitiram caracterizar através do estilo de conversa, se o grupo estava interagindo de forma a favorecer a colaboração. Um segundo estudo de caso foi então definido, sendo o seu projeto uma replicação do primeiro, com a diferença de que nesse momento procuramos explicações para confirmar uma hipótese, o que caracteriza um estudo de caso explanatório (Yin, 2010). Foram utilizadas as categorias encontradas anteriormente, as quais foram chamadas de padrões de interação. 5.1 Padrões de Interação nos logs das Conversas do ColabWeb Ao procedermos a análise dos logs, observamos que os turnos de fala, apesar das diferenças de vocabulário e estilo, apresentavam intenções que se repetiam em todos os grupos. Dada a natureza dos diálogos, notamos uma semelhança com Atos de Fala, que, conforme descrito por Searle [1969], são classificações para os diferentes usos da linguagem, principalmente sobre a interpretação de questões, exclamações, comandos, ou seja, sobre enunciados que não são unicamente descritivos. Percebemos que são descritos para cada fala uma classificação que retrata a intenção do indivíduo, o que sugeriu sua adequação à situação observada na análise. A teoria dos atos de fala é utilizada em ambientes multiagente para descrever as interações dos agentes. Para adaptá-la ao contexto de fóruns de discussão voltados à aprendizagem de programação, achamos necessário estender o conceito do ato de fala, de forma que retratasse a continuação desses atos, em forma de resposta. Dessa forma podemos perceber se o grupo está conversando (alternando turnos, comentando falas anteriores) ou se está somente cumprindo o roteiro do esquema progressivo. 1769
8 Chamamos essas classificações inspiradas em atos de fala estendidos de padrões de interação, devido a sua utilização em desenvolvimento de ambientes CSCL, possuindo categorias de descrição para cada padrão, o que fornece mais subsídios para verificação de consistência de cada padrão. 5.2 A Representação dos Padrões de Interação Estereótipos são combinações de diferentes padrões de interação. Estereótipos positivos são aqueles que normalmente conduzem a um bem-sucedido esforço colaborativo de codificação, enquanto os estereótipos negativos são aqueles que não indicam esforço colaborativo, eventualmente expressando o código de um único membro ou um código incorreto. Entretanto, estereótipos não emergem facilmente nos logs de conversas. Duas razões principais para isso são a ocorrência de quebras na conversação que não são adequadamente restauradas numa discussão on-line e a complexidade do diálogo natural. Assim, uma representação estruturada para a discussão poderia ser benéfica. Uma forma de tratar o problema de definir, casar e tratar com estereótipos detectados dentro dos logs de diálogos baseados no fórum é utilizar uma linguagem de representação formal com boa dose de expressividade. Uma linguagem baseada na lógica pra tratar com protocolos de comunicação em ambientes multiagente foi então adotada para representar os padrões de interação. O LCC (Lightweight Coordinate Calculus) [Robertson, 2004] é uma notação já utilizada em diferentes aplicações sob uma plataforma denominada Open Knowledge ( que ajuda a tratar o problema de coordenação. Apesar de ser uma linguagem bastante expressiva, o LCC mantém a simplicidade necessária para representar adequadamente as interações através de recursos de inferência providos pela plataforma Open Knowledge. Tipicamente, Figura 2, cada processo inicia por um membro do grupo decidindo iniciar um tópico com uma mensagem, disparando desse modo um padrão de interação. O iniciador automaticamente torna-se o coordenador para aquele padrão de interação. Em seguida um agente virtual chamado broadcaster distribui a mensagem para todos os demais inscritos na conversa. Caso após a leitura da mensagem alguém resolver respondê-la, a pessoa torna-se automaticamente um avaliador enviando a mensagem de volta ao coordenador via broadcaster. O professor analisa os padrões de interação apresentados por cada grupo e define qual sequência ele considera bem sucedida como um estereótipo. Uma base de conhecimento é então criada para cada exercício compreendendo o log de conversas do grupo, padrões de interação e estereótipos. Sempre que um estereótipo não identificado surgir durante uma conversa no fórum, o professor deve analisar em profundidade e dar feedback ao grupo antes que a tarefa seja concluída. Ele pode precisar incluir novos estereótipos na base de conhecimento. Para saber quando intervir, os professores deveriam sempre: (a) identificar os estudantes que não estão correspondendo à participação esperada nos próprios grupos, o que implica que os alunos encontraram dificuldades em executar a tarefa solicitada; (b) 1770
9 identificar os estereótipos negativos, buscando ajudar os alunos sempre que eles estiverem bloqueados. Figura 2 Representação Formal das Conversas As pistas para intervenção emergem sempre que: (i) um padrão de interação aparece repetitivamente numa discussão no fórum; (ii) somente um ou dois membros do grupo se mantêm trabalhando, mesmo se estiverem usando diferentes padrões de interação e (iii) a combinação de padrões de interação reforçar estereótipos negativos. 6. Conclusão Este artigo descreve resumidamente a pesquisa de uma tese de doutorado que propõe a sistematização da aprendizagem de programação em grupo. Essa sistematização é fundamentada na teoria do desenvolvimento cognitivo de Jean Piaget, na utilização de ambientes CSCL para auxiliar no registro e monitoramento das atividades de aprendizagem guiadas por um esquema progressivo de aprendizagem de programação em grupo. A partir da teoria de Piaget fazemos uma comparação com o desenvolvimento da capacidade de abstração nos adolescentes, perfil da maioria dos alunos ingressantes nos cursos de Engenharia da Computação e Ciência da Computação da UFAM, instituição onde desenvolvemos os estudos de caso desta pesquisa. O AcKnow foi desenvolvido buscando explicitar o processo cognitivo dos alunos ao resolverem problemas de programação. Sabemos que o grupo tem um papel importante na aprendizagem para descobrirmos como os alunos se organizam em grupos e levantarmos as necessidades desenvolvemos um estudo de caso exploratório aplicado a uma turma de calouros de Ciência da Computação em Esse estudo apontou a falta de organização e de critérios de divisão de tarefas no grupo como uma das causas da dificuldade dos grupos realizarem o exercício no tempo previsto. Isso serviu de subsídio para a elaboração de um esquema progressivo de aprendizagem de programação em grupo. O esquema progressivo de aprendizagem de programação em grupo foi proposto e posto em prática, mostrando-se eficaz para a introdução de práticas de colaboração à programação porque estimula os participantes a refletir sobre o processo de solução de problemas como um grupo, percebendo a necessidade de interdependência entre os envolvidos. 1771
10 Para a análise do estudo de caso de 2008 utilizamos a forma de categorizar discurso dos atos de fala [Searle, 1969] e criamos padrões de interação, onde a unidade de análise é uma fala, que pode estar em duas ou mais entradas desde que faça parte do mesmo pensamento, e suas respostas ou continuações. Discutimos com o professor da turma de 2008 sobre os momentos em que ele interveio e, vendo a análise, os momentos que gostaria de intervir se estivesse ciente dos padrões de interação durante a resolução dos exercícios. A partir daí elaboramos estereótipos positivos e negativos, os bons sendo aqueles que promoviam colaboração e os maus os que a atrapalhavam ou não a incentivavam. Representamos formalmente os padrões de interação e executamos com as informações do 2º. exercício da fase 5. Os padrões provaram-se consistentes. No estudo de caso seguinte, alguns estereótipos foram refinados e outro foi incluído. Referências Almeida Neto, F. A. ; Castro, T. ; Castro, A. N. Utilizando o Método Clínico Piagetiano para Acompanhar a Aprendizagem de Programação. In: XVII Simpósio Brasileiro de Informática na Educação, Brasília: Gráfica e Editora Positiva Ltda, v. 17. p Castro, T.; Fuks, H.; Castro, A. N. Detecting Code Evolution in Programming Learning. In: 19th Brazilian Symposium on Artificial Intelligence, 2008, Salvador, Bahia. Lecture Notes in Computer Science / Lecture Notes in Artificial Intelligence, v p b. Castro, T.; Fuks, H. Inspeção Semiótica do ColabWeb: Proposta de Adaptações para o Contexto de Aprendizagem de Programação. Revista Brasileira de Informática na Educação. Vol.17, N. 1. Pp ISSN Castro, T.; Fuks, H.; Spósito, M.; Castro, A. The Analysis of a Case Study for Group Programming Learning. ICALT - Proc. of the 8th IEEE International Conference on Advanced Learning Technologies, July 1-5, Santander, Spain Delval, J. Introdução à Prática do Método Clínico: descobrindo o pensamento das crianças. Editora ARTMED. Porto Alegre, Brasil De Souza, C. S. Compulsory Institucionalization: investigating the paradox of computer supported informal social process. Interacting with Computers, v. 16, n. 4, p Kobbe, L., Weinberger, A., Dillenbourgh, P., Harrer, A., Hämäläinen, R., Häkkinen, P. And Fischer, F. Specifying computer-supporter collaboration scripts. Computer- Supported Collaborative Learning, 2: Robertson, D. A Lightweight Method for Coordination of Agent Oriented Web Services. In Proceedings of AAAI Spring Symposium on Semantic Web Services. Stanford Searle, J. Speech Acts. Cambridge University Press. ISBN X Weinberg, G. M. The Psychology of Computer Programming. Computer Science Series. Litton Educational Publishing, F USA
11 Yin, Robert K. Estudo de Caso: Planejamento e Métodos 4ª. Edição. Bookman Editora. ISBN
Introdução INTRODUÇÃO AO SWEBOK. Origens do corpo de conhecimentos da Engenharia de Software: Introdução a Computação e Engenharia de Software
INTRODUÇÃO AO SWEBOK Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Origens do corpo de conhecimentos da Engenharia de Software: Engenharia da Computação Ciência da
5 Usando as Representações de Design Rationale
5 Usando as Representações de Design Rationale Como mencionamos anteriormente, representar design rationale em uma linguagem formal usando o modelo formal dos artefatos nos permite atribuir semântica ao
6 Considerações Finais
6 Considerações Finais Este capítulo apresenta as contribuições desta tese e os trabalhos que podem dar continuidade à pesquisa nela apresentada. 6.1 Contribuições Este trabalho tinha como objetivo propor,
INF1013 MODELAGEM DE SOFTWARE
INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa
Metodologia da Pesquisa em Sistemas de Informação. Aula 3. Projeto de Pesquisa. Revisão Sistemática. Profa. Fátima L. S. Nunes
Metodologia da Pesquisa em Sistemas de Informação Aula 3 Projeto de Pesquisa Revisão Sistemática Profa. Fátima L. S. Nunes Metodologia Pesquisa SI- 1 Como elaborar um projeto? Roteiro 1) Escolha do tema
132 6 Conclusão 6.1. Contribuições da Tese
132 6 Conclusão Esta tese teve como objetivo principal o estudo da aplicação de transformações para manter a rastreabilidade de um sistema de software. Esta abordagem permite a captura automática das informações
INF1403 Percurso Cognitivo (Cognitive Walkthrough)
1 INF1403 Percurso Cognitivo (Cognitive Walkthrough) Aula 11 08/04/2013 2 O que é o PERCURSO COGNITIVO Um método de inspeção Realizado por especialistas, sem a participação de usuários. Principal objetivo
Avaliação de comunicabilidade
1 Avaliação de comunicabilidade INF1403 Introdução a IHC Aula 14 João Dutra Bastos 28/04/2014 2 Avaliação Com quem? Inspeção Métodos de Inspeção de IHC são normalmente aplicados sem participação de usuários
MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO
MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO Sumário PREFÁCIO...3 MODELO DA DOCUMENTAÇÃO...3 1. INTRODUÇÃO AO DOCUMENTO...3 1.1. Tema...3 2. DESCRIÇÃO
FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS
FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS Acadêmico: Roger Anderson Schmidt Orientador : Marcel Hugo Supervisor : Ricardo de Freitas Becker Empresa
Workshop de Ambientes de apoio à Aprendizagem de Algoritmos e Programação (SBIE 2007) Instituto de Ciências Matemáticas e de Computação ICMC-USP
Camila K. D. Corte, Ana C. Riekstin Marco Aurélio G.Silva Ellen F. Barbosa, José C. Maldonado camila, claudiar, magsilva, francine, jcmaldon@icmc.usp.br Workshop de Ambientes de apoio à Aprendizagem de
3 Arquitetura para a Coordenação e a Composição de Artefatos de Software
Uma Arquitetura para a Coordenação e a de Artefatos de 23 3 Arquitetura para a Coordenação e a de Artefatos de Resumo Este capítulo apresenta a arquitetura ACCA, que é a parte central deste trabalho. A
As 10 Áreas da Engenharia de Software, Conforme o SWEBOK Prof. Elias Ferreira
As 10 Áreas da Engenharia de Software, Conforme o SWEBOK Prof. Elias Ferreira Educação de iniciação profissional validada e legitimada pela sociedade Registro da adequação à prática através de certificação
Notas de Aula 03: Introdução a Orientação a Objetos e a UML
Notas de Aula 03: Introdução a Orientação a Objetos e a UML Objetivos da aula: Introduzir os conceitos da Orientação à Objetos (O.O) Introduzir os conceitos da UML Relacionar os processos às ferramentas
3 A aplicação MoLIC WOz
A aplicação MoLIC WOz 33 3 A aplicação MoLIC WOz Esta seção descreve a MoLIC WOz relacionando com a Engenharia Semiótica (3.1) e apresentando a estrutura da ferramenta (3.2). 3.1 MoLIC WOz e a Engenharia
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE
1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Introdução 2 Antes de qualquer
(b) Quais os tipos de informações (diferentes, adicionais) disponibilizadas para as diferentes situações que os usuários podem se encontrar?
4 Método ISIM O método ISIM, aqui proposto, avalia a qualidade da interação baseada em mapas, com especial ênfase em situações de uso que envolvem localização ou traçado de trajetos. Nesta avaliação, os
Comunidade Virtual de Aprendizagem de Lógica para Crianças
Comunidade Virtual de Aprendizagem de Lógica para Crianças Cintia Carvalho Oliveira 1, Daniele Carvalho Oliveira 1, Prof. Dr. João Nunes de Souza 1 1 Programa de Pós-Graduação em Ciência da Computação
Avaliação da Educação Básica em Nível Estadual
Avaliação da Educação Básica em Nível Estadual Avaliação da Educação Básica em Nível Estadual. SARESP Sistema de Avaliação de Rendimento Escolar do Estado de São Paulo Avaliação de Aprendizagem em Processo
Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1
Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando
A IMPLEMENTAÇÃO E VALIDAÇÃO DE UM AMBIENTE VIRTUAL DE APRENDIZAGEM PARA UFRGS: MOODLE INSTITUCIONAL. Maira Bernardi 1
A IMPLEMENTAÇÃO E VALIDAÇÃO DE UM AMBIENTE VIRTUAL DE APRENDIZAGEM PARA UFRGS: MOODLE INSTITUCIONAL Maira Bernardi 1 Este artigo descreve o Moodle institucional (http://moodleinstitucional.ufrgs.br), um
Ambiente Virtual de Aprendizagem (AVA)
Ambiente Virtual de Aprendizagem (AVA) Ultimamente o ensino a distância tem ganhado grande destaque em todo pais, por proporcionar capacitação a pessoas que não tem acesso ao ensino presencial. Esta proposta
Sistemas Especialistas (SE)
Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação Sistemas Especialistas (SE) Inteligência Artificial Site: http://jeiks.net E-mail: jacsonrcsilva@gmail.com
Agentes pedagógicos. 2. Referencial teórico
Agentes pedagógicos 1. Introdução Com o exponencial crescimento do computador, cada vez mais se faz necessário a busca e inserção de novas formas de aplicação de tecnologias na área da educação. Por intermédio
INDICAÇÕES PARA O PLANEJAMENTO DO SEGUNDO SEMESTRE APRENDA+
INDICAÇÕES PARA O PLANEJAMENTO DO SEGUNDO SEMESTRE APRENDA+ ÍNDICE 1 MAPA DE OBJETIVOS E PLANEJAMENTO ESCOLAR - Estratégia e objetivo DN e DR - Explicação das intensidades de uso e engajamento - Integração
TESTES DE SOFTWARE 1. Fundamentos sobre testes de software
ENG SOFT - TESTES TESTES DE SOFTWARE 1. Fundamentos sobre testes de software A atividade de teste de software sempre foi considerada como um gasto de tempo desnecessário, uma atividade de segunda classe,
Uma ontologia para modelagem de conteúdo para Ensino a Distância. An ontology for modeling distance learning contents
SEMINÁRIO DE PESQUISA EM ONTOLOGIA NO BRASIL 11 E 12 de Agosto Universidade Federal Fluminense Departamento de Ciência da Informação Niterói Rio de Janeiro Brasil Esta comunicação está sendo submetida
DESCOMPLICANDO A PROGRAMAÇÃO EM LINGUAGEM C. UMA SOLUÇÃO PARA DEPURAÇÃO SIMPLES DE CÓDIGOS. GOMES, M. S. ¹, AMARAL, E. M H. ¹
DESCOMPLICANDO A PROGRAMAÇÃO EM LINGUAGEM C. UMA SOLUÇÃO PARA DEPURAÇÃO SIMPLES DE CÓDIGOS. GOMES, M. S. ¹, AMARAL, E. M H. ¹ ¹ Universidade Federal do Pampa (UNIPAMPA) Bagé RS Brasil RESUMO Este trabalho
Prof. Ms. Ronaldo Martins da Costa
Prof. Ms. Ronaldo Martins da Costa Diferentes conjuntos de etapas que envolvem métodos, ferramentas e procedimentos utilizados no desenvolvimento de software CiclodeVidaClássico Prototipação Modelo Espiral
por parte dos usuários dos sistemas de computação se tornou menos necessária e a popularidade desse tipo de linguagem diminuiu. Mais recentemente, a
1 Introdução Middleware é um termo cunhado no final da década de 60 (Naur e Randell, 1968), que é freqüentemente empregado para designar uma camada de software que oferece uma infra-estrutura para construção
Aula 1.7 Introdução a APOO e UML
APOO Aula 1.7 Introdução a APOO e UML Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Possuir um lápis e uma régua não te tornam um arquiteto 2 Você pode conhecer toda a API Java, C++ ou qualquer LPOO. 3 Mas
Introdução a Teste de Software
Universidade Católica de Pelotas Tecnólogo em Análise e Desenvolvimento de Sistemas Disciplina de Qualidade de Software Introdução a Teste de Software Prof. Luthiano Venecian 1 Conceitos Teste de software
Inspeção Semiótica do ColabWeb: Proposta de Adaptações para o Contexto da Aprendizagem de Programação
Revista Brasileira de Informática na Educação, Volume 17, Número 1, 2009. Inspeção Semiótica do ColabWeb: Proposta de Adaptações para o Contexto da Aprendizagem de Programação Thais Castro Departamento
Scrum e Extreme Programming
Scrum e Extreme Programming CODEX Sumário Objetivo 3 Scrum 4 Papéis de Atuação 4 Eventos do Scrum 5 Artefatos do Scrum 5 Porque Scrum? 5 Extreme Programming 6 Práticas do Extreme Programming 6 Porque XP?
Engenharia de Software. Aula 2.4 Modelos de Casos de Uso. Prof. Bruno Moreno
Engenharia de Software Aula 2.4 Modelos de Casos de Uso Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Comportamento do Sistema Refere-se às funcionalidades do sistema Requisitos funcionais; O comportamento
Engenharia de Software
PLANO DE AVALIAÇÕES Engenharia de Software 1ª AP: 08 de setembro 2ª AP: 13 de outubro 3ª AP: 10 de novembro NAF: 17 de novembro Referência bibliográfica: SOMMERVILLE, I. Engenharia de Software. 8ª ed.
6. QUADRIMESTRE IDEAL 7. NÍVEL Graduação 8. Nº. MÁXIMO DE ALUNOS POR TURMA TEORIA: 60 LABORATÓRIO: 30
Universidade Federal do ABC Rua Santa Adélia, 166 - Bairro Bangu - Santo André - SP - Brasil CEP 09.210-170 - Telefone/Fax: +55 11 4996-3166 1. CÓDIGO E NOME DA DISCIPLINA MC5001 - SISTEMAS MULTIAGENTES
Ambiente Legal em TAMPO: Aprendizagem Colaborativa em Educação Infantil
Ambiente Legal em TAMPO: Aprendizagem Colaborativa em Educação Infantil Andréia Pereira, Alberto Raposo, Hugo Fuks Departamento de Informática PUC-Rio Rua Marquês de São Vicente, 225 RDC Gávea 22453-900
27) Em relação aos Projetos de Sistemas de Software, assinale a sequência correta de desenvolvimento de um sistema:
Modelos de Ciclo de Vida e Metodologias de Software 33) No SCRUM, uma iteração que segue um ciclo (PDCA) e entrega incremento de software pronto é denominada: A) Backlog. B) Sprint. C) Daily scrum. D)
PERFIL PROFISSIONAL DO TUTOR DE CURSOS DE EDUCAÇÃO A DISTÂNCIA
PERFIL PROFISSIONAL DO TUTOR DE CURSOS DE EDUCAÇÃO A DISTÂNCIA Área profissional: Educação Segmento tecnológico: Educação a Distância Qualificação profissional: Tutor de Cursos de Educação a Distância
APRENDIZAGEM BASEADA EM PROBLEMA
APRENDIZAGEM BASEADA EM PROBLEMA APRENDIZAGEM BASEADA EM PROBLEMA Este material pretende facilitar sua participação na sessão de tutoria presencial sobre o assunto (no dia 08/05/2015), bem como orientar
INDICAÇÕES PARA O PLANEJAMENTO DO SEGUNDO SEMESTRE APRENDA+
INDICAÇÕES PARA O PLANEJAMENTO DO SEGUNDO SEMESTRE APRENDA+ ÍNDICE 1 MAPA DE OBJETIVOS E PLANEJAMENTO ESCOLAR - Estratégia e objetivo DN - Explicação das intensidades de uso e engajamento - Sugestões de
Processos de software
Processos de software 1 Processos de software Conjunto coerente de atividades para especificação, projeto, implementação e teste de sistemas de software. 2 Objetivos Introduzir modelos de processos de
4 Concepção de objetos de aprendizagem contemplando serviços e modelados como Web Services
4 Concepção de objetos de aprendizagem contemplando serviços e modelados como A definição mais genérica de learning objects propõe que são qualquer entidade, digital ou não-digital, que pode ser usada,
UM PORTAL COM ATIVIDADES PARA O ENSINO DE ESTATÍSTICA
Sociedade Brasileira de na Contemporaneidade: desafios e possibilidades UM PORTAL COM ATIVIDADES PARA O ENSINO DE ESTATÍSTICA Amanda Nunes Barros Instituto de e Estatística USP amanda.nunes.barros@usp.br
Funcionamento das Unidades Curriculares de Dissertação de Mestrado (Preparação e Elaboração)
Mestrado em Engenharia Informática Funcionamento das Unidades Curriculares de Dissertação de Mestrado (Preparação e Elaboração) Este documento descreve o regime de funcionamento das duas unidades curriculares
PROGRAMA ESPECIAL DE FORMAÇÃO PEDAGÓGICA DE PROFESSORES PARA EDUCAÇÃO PROFISSIONAL MANUAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) TUTOR
PROGRAMA ESPECIAL DE FORMAÇÃO PEDAGÓGICA DE PROFESSORES PARA EDUCAÇÃO PROFISSIONAL 2016 MANUAL DO AMBIENTE VIRTUAL DE APRENDIZAGEM (AVA) TUTOR Neste manual você encontrará tutoriais para as ferramentas
APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA
APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA Guilherme de Souza Ferreira Discente do curso Tecnologia em Análise e Desenvolvimento de Sistemas
Manual de Acesso ao Ambiente Usuário: Aluno
Manual de Acesso ao Ambiente Usuário: Aluno Índice 1. Objetivo. 2. Sobre o Ambiente Virtual de Aprendizagem. 3. Como acessar o Ambiente Virtual de Aprendizagem. 4. Como visualizar as disciplinas disponíveis
Introdução a UML (Unified Modeling Language)
Introdução a UML (Unified Modeling Language) O que é a UML? Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário
Planejamento de ensino
Planejamento de ensino Ensino O ENSINO: é um processo de aprendizagem que objetiva a formação ou transformação da conduta humana. A educação de hoje interessa-se pelo desenvolvimento harmônico do educando
Requisitos de Software e UML Básico. Janaína Horácio
Requisitos de Software e UML Básico Janaína Horácio janaina@les.inf.puc-rio.br Agenda Requisitos O que é? Objetivos? Atividades?... UML O que é? Modelos... Casos de Uso O que é? Componentes 2 Requisitos
Requisitos de Software
Requisitos de Software Engenharia de requisitos Estabelece os serviços que o cliente requer de um sistema e as restrições sob as quais tal sistema operará e será desenvolvido. Tais serviços e restrições
MAPAS CONCEITUAIS NA EDUCAÇÃO: PROPONDO UMA NOVA INTERFACE PARA AMBIENTES DE APRENDIZAGEM BASEADOS NA PLATAFORMA MOODLE
1 MAPAS CONCEITUAIS NA EDUCAÇÃO: PROPONDO UMA NOVA INTERFACE PARA AMBIENTES DE APRENDIZAGEM BASEADOS NA PLATAFORMA MOODLE Rio de Janeiro - RJ - 05/2012 Categoria: C Setor Educacional: 5 Classificação das
KURRUPAKO: UM AGENTE ANIMADO SÓCIO-AFETIVO PARA AMBIENTES DE APRENDIZAGEM
KURRUPAKO: UM AGENTE ANIMADO SÓCIO-AFETIVO PARA AMBIENTES DE APRENDIZAGEM Eliseo Reategui 1, Elisa Boff 1, Rafael F. Ceron 1 e Rosa Maria Vicari 2 {ebreateg,eboff,rfceron}@ucs.br; rosa@inf.ufrgs.br 1 Departamento
Professora Orientadora do Departamento de Ciências Exatas e Engenharias. 4
DESENVOLVIMENTO DE OBJETO DE APRENDIZAGEM DE MATEMÁTICA VOLTADO PARA ESCOLAS DA REDE PÚBLICA UTILIZANDO SOFTWARE ADOBE FLASH PROFESSIONAL CC: UM OBJETO PARA O ENSINO DE ESTATÍSTICA 1 Diogo Rafael Silva
4 Processo de Transformação
Tecnologias Relacionadas 43 4 Processo de Transformação Com a constante mudança nos requisitos (funcionais e não funcionais) do domínio da aplicação, há uma grande necessidade de que os sistemas estejam
2 Metodologias para Projetos de Aplicações Hipermidia
2 Metodologias para Projetos de Aplicações Hipermidia O processo de desenvolvimento de aplicações é o objeto de diversas pesquisas, principalmente no caso das aplicações voltadas para a Internet, que diferem
Desenvolvimento de Aplicações para Educação à Distância: O Ambiente Virtual de Aprendizagem SOLAR
Universidade Federal do Ceará (UFC) Desenvolvimento de Aplicações para Educação à Distância: O Ambiente Virtual de Aprendizagem SOLAR TRILHA DA INDÚSTRIA Emanuel Coutinho Antônio de Lisboa Coutinho Wellington
A Informática Na Educação: Como, Para Que e Por Que
RBEBBM -01/2001 A Informática Na Educação: Como, Para Que e Por Que Autores:José A. Valente Afiliação:Departamento de Multimeios e Nied - Universidade Estadual de Campinas - Unicamp, Campinas - SP javalente@unicamp.br
Sistemas de Tutoria em Cursos a Distância. Semana 5 A importância do papel do tutor num curso a distância. Giulliana Panzer Sobral
Sistemas de Tutoria em Cursos a Distância Semana 5 A importância do papel do tutor num curso a distância Giulliana Panzer Sobral O Papel do Tutor no cenário EaD O tutor é o mediador entre o professor coordenador
Uso de Lógica Fuzzy no Auxílio ao Acompanhamento Automático de Alunos utilizando um Ambiente de Aprendizagem
Uso de Lógica Fuzzy no Auxílio ao Acompanhamento Automático de Alunos utilizando um Ambiente de Aprendizagem Práticas de ensino de algoritmos Péricles Miranda Resumo Os professores enfrentam diversos desafios
O ENSINO DE LABORATÓRIO DE FÍSICA NA UEFS: CONSIDERAÇÕES TEÓRICO-PEDAGÓGICAS
123 O ENSINO DE LABORATÓRIO DE FÍSICA NA UEFS: CONSIDERAÇÕES TEÓRICO-PEDAGÓGICAS Milton Souza Ribeiro* Dagoberto da Silva Freitas** Durval Eusíquio de Miranda*** RESUMO Este trabalho se ocupa do estudo
COLAB-UFV: Um Ambiente Colaborativo para Apoio a Projetos Acadêmicos
COLAB-UFV: Um Ambiente Colaborativo para Apoio a Projetos Acadêmicos João Teixeira Araujo 1, Gláucia Braga e Silva 1, Daniel Mendes Barbosa 1, Aislan R. Almeida Leite 1 1 Instituto de Ciências Exatas e
PROCEDIMENTO PASSO A PASSO: DISCIPLINAS ELETIVAS. Programa Ensino Integral
PROCEDIMENTO PASSO A PASSO: DISCIPLINAS ELETIVAS Programa Ensino Integral PROCEDIMENTO PASSO A PASSO: DISCIPLINAS ELETIVAS VERSÃO 03 02 15 Definição: As Disciplinas Eletivas constituem uma das inovações
Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.
Diagramas UML Classe, Seqüência e Atividades Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 15 de maio
Engenharia de Software Processo de Desenvolvimento de Software
Engenharia de Software Processo de Desenvolvimento de Software Prof. Elias Ferreira Elaborador por: Prof. Edison A. M. Morais Objetivo (1/1) Conceituar PROCESSO E CICLO DE VIDA, identificar e conceituar
UM ESTUDO SOBRE O USO DO SOFTWARE APLUSIX COMO FERRAMENTA PEDAGÓGICA PARA A APRENDIZAGEM DE SISTEMAS DE EQUAÇÕES DO PRIMEIRO GRAU COM DUAS VARIÁVEIS.
UM ESTUDO SOBRE O USO DO SOFTWARE APLUSIX COMO FERRAMENTA PEDAGÓGICA PARA A APRENDIZAGEM DE SISTEMAS DE EQUAÇÕES DO PRIMEIRO GRAU COM DUAS VARIÁVEIS. VALENZUELA, Silvia Teresinha Frizzarini UFMS steresini@ig.com.br
Verificação e Validação (V & V)
Verificação e Validação (V & V) Objetivo: assegurar que o software que o software cumpra as suas especificações e atenda às necessidades dos usuários e clientes. Verificação: Estamos construindo certo
Manutenção de Software
Manutenção de Software Engenharia de Software Rosana Braga (material produzidos por docentes do Labes-ICMC/USP) Manutenção do software O propósito do processo manutenção do sistema e software é modificar
Estilos de aprendizagem e utilização de recursos digitais no ambiente colaborativo Sakai
Los estilos de aprendizaje y enseñanza: Nuevas aplicaciones y ámbitos de intervención Estilos de aprendizagem e utilização de recursos digitais no ambiente colaborativo Sakai Paulo Alves Luísa Miranda
Conteúdo Programático
Ementa do Curso O treinamento ios+swift Intro foi criado pela Catteno com o intuito de introduzir os alunos em programação de Apps para a plataforma ios (tablets e smartphones), utilizando a linguagem
UML (Unified Modelling Language)
UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:
Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas
JADEX: A BDI REASONING ENGINE. Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp.
JADEX: A BDI REASONING ENGINE Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp. 149-174 Volume 15 Motivação Existem muitas plataformas para desenvolvimento
1 Introdução. pela comunidade de computação em vários países de língua não-inglesa.
1 Introdução O design 1 de um artefato de software normalmente envolve a compreensão do problema a ser modelado, a identificação de possíveis alternativas de solução para este problema, a análise destas
MANUAL TCC ELABORAÇÃO DO TRABALHO DE CONCLUSÃO DE CURSO
MANUAL TCC ELABORAÇÃO DO TRABALHO DE CONCLUSÃO DE CURSO 1 ÍNDICE MANUAL TCC ELABORAÇÃO DO TRABALHO DE CONCLUSÃO DE CURSO Manual TCC - Elaboração do Trabalho de Conclusão de Curso 3 Apresentação 3 Qual
Escolhendo um Modelo de Ciclo de Vida
Escolhendo um Modelo de Ciclo de Vida Ciclos de Vida 1 Ciclo de Vida de um Produto Qualquer desenvolvimento de produto inicia com uma idéia e termina com o produto pretendido. O ciclo de vida de um produto
Método de prototipação em papel Comparativo dos métodos de avaliação
Interface Homem/Máquina Aula 25 Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2011.1/tcc-00.184 Roteiro da Aula de
Algoritmos e Programação
ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA
Pontifícia Universidade Católica de São Paulo Programa de TIDD
Disciplina: 2854 - Sistemas Inteligentes e Ambientes Virtuais Turma A Área de Concentração: Processos Cognitivos e Ambientes Digitais Linha de Pesquisa: Inteligência Coletiva e Ambientes Interativos Professor:
Requisitos de Sistemas
Requisitos de Sistemas Unidade II - Processos de Negócio Identificação Conceitos Modelagem - BPM - UML Processos x Requisitos 1 Processo de negócio CONCEITO Um processo de negócio, processo organizacional
A pesquisa no ensino de computação. Práticas de ensino de algoritmos (Hazzan, Cap. 4) Péricles Miranda
A pesquisa no ensino de computação Práticas de ensino de algoritmos (Hazzan, Cap. 4) Péricles Miranda Existe pesquisa na área de ensino? Existe uma variedade de tópicos Conhecimento de novatos Investiga
Visão Geral do Curso. Prof. Alberto Costa Neto Introdução à Ciência da Computação (Programação em Python)
Visão Geral do Curso Prof. Alberto Costa Neto Introdução à Ciência da Computação (Programação em Python) Sobre a Disciplina ICC Disciplina: Introdução à Ciência da Computação Códigos: COMP0100 e COMP0208
Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata
Processo de Desenvolvimento Também chamado de ciclo de vida do software Reflete os passos necessários para se construir um produto de software Existem vários modelos de ciclo de vida Cascata (1956) Iterativo
Manual de Acesso ao Ambiente Usuários: Aluno e Professor
Manual de Acesso ao Ambiente Usuários: Aluno e Professor Índice 1. Objetivo. 2. Sobre o Ambiente Virtual de Aprendizagem. 3. Como acessar o Ambiente Virtual de Aprendizagem. 4. Como visualizar as disciplinas
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA BAIANO CAMPUS CATU RELATÓRIO DE ESTÁGIO SUPERVISIONADO I
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA BAIANO CAMPUS CATU RELATÓRIO DE ESTÁGIO SUPERVISIONADO I SUPERVISÃO INDIRETA PROF. EDUARDO OLIVEIRA TELES Estudante: Daniel Oliveira Mota Catu Janeiro
AVALIANDO A UTILIZAÇÃO DA METODOLOGIA ÁGIL DE DESENVOLVIMENTO ACADÊMICO (MADA) EM PROJETOS DISCIPLINARES
AVALIANDO A UTILIZAÇÃO DA METODOLOGIA ÁGIL DE DESENVOLVIMENTO ACADÊMICO (MADA) EM PROJETOS DISCIPLINARES Sâmia Lorena O. Medeiros¹; Karliane M. O. Vale²; Adrianne Paula V. de Andrade³ ¹Estudante do curso
Prof. Esp. Fabiano Taguchi
UML Prof. Esp. Fabiano Taguchi http://fabianotaguchi.wordpress.com fabianotaguchi@hotmail.com UML COMPETÊNCIA: Conhecer e desenvolver estudos de caso usando modelagem orientada a objeto. HABILIDADE: Conhecer
Ferramentas CASE. CASE fornece ao engenheiro de software a habilidade de automatizar atividades manuais e de aperfeiçoar o conhecimento de engenharia.
Para qualquer artesão seja mecânico, carpinteiro, engenheiro de software uma boa oficina deve ter 3 características: - uma coleção de ferramentas úteis que ajudam em cada passo da construção do produto
Bonita BPM uma solução inovadora para gerenciar o seu processo de negócio
60 Resumos Expandidos: XII Mostra de Estagiários e Bolsistas... Bonita BPM uma solução inovadora para gerenciar o seu processo de negócio Douglas Alves Rodrigues¹ Luciana Alvim Santos Romani² Resumo: Neste
Engenharia de Software
1 Engenharia de Software CURSO: Sistemas de Informação PERÍODO LETIVO: 2009-1 SEMESTRE: 4º PROFESSOR(A): Francisco Ildisvan de Araújo Introdução METODOLOGIA DE DESENVOLVIMENTO DE SISTEMAS Uma metodologia
3 OBJETIVOS PLANO DE ENSINO
LEI MUNICIPAL Nº 443/1967 - REC. PORTARIA MEC Nº 028/1989 - RENOV.REC DEC. Nº 780/2007. AV. JOSÉ ACÁCIO MOREIRA 787 - DEHON - TUBARÃO/SC - CEP 88704-900. PLANO DE ENSINO 1 DADOS DE IDENTIFICAÇÃO Nome da
Testes de Software. Prof. Edjandir C. Costa
Testes de Software Prof. Edjandir C. Costa edjandir.costa@ifsc.edu.br Sumário - Processo de teste - Estágios de teste - Diferenças entre tipos de testes Processo de Teste Dois objetivos distintos: - Demonstrar
MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro
MODELAGEM DE SISTEMAS Introdução a Computação e Engenharia de Software Profa. Cynthia Pinheiro Introdução Modelagem de Sistemas: A modelagem de um sistema auxilia o analista a entender a funcionalidade
UM CATÁLOGO DE BOAS PRÁTICAS, ERROS SINTÁTICOS E SEMÂNTICOS EM MODELOS BPMN
UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO UM CATÁLOGO DE BOAS PRÁTICAS, ERROS SINTÁTICOS E SEMÂNTICOS EM MODELOS BPMN Autora: Cynthia Raphaella da Rocha
CURSOS EAD DIRETRIZES: METODOLOGIA DA PESQUISA
CURSOS EAD DIRETRIZES: METODOLOGIA DA PESQUISA Este é um documento que visa oferecer algumas orientações básicas sobre a disciplina de Metodologia da Pesquisa / Métodos e Técnicas de Pesquisa e sobre a