Trabalho semestral: Linguagens para Aplicação Comercial (UFBA 2009.1)

From AdonaiMedrado.Pro.Br
Revision as of 20:29, 2 March 2009 by Adonaimedrado (Talk | contribs) (Etapa teórica)

Jump to: navigation, search

Sobre este documento

Este documento descreve e esclarece as regras para o desenvolvimento e a avaliação do trabalho semestral da disciplina Linguagens para Aplicação Comercial.

Aconselha-se leitura on-line deste documento. Desaconselha-se a impressão.

Objetivo

Conhecer, através da pesquisa e da experiência prática, uma linguagem de programação para aplicações comercias e, opcionalmente, um framework de desenvolvimento.

Descrição do trabalho

O trabalho será composto de duas etapas, uma predominantemente teórica e outra predominantemente prática. As duas etapas poderão ser executadas simultaneamente, porém a apresentação de cada etapa deverá seguir o cronograma da disciplina.

A responsabilidade de execução do trabalho deve ser compartilhada pelos componentes de uma equipe. As equipes podem ser formadas livremente, com qualquer número de componentes a critério dos alunos.

O trabalho pode ser feito com qualquer linguagem de programação comercialmente utilizada, dando-se preferência para uma das seguintes:

Não será aceito mais de uma equipe por linguagem, exceto se utilizarem framework e/ou plataformas diferentes.

Etapa teórica

Na etapa teórica, os componentes do grupo devem produzir conforme NBR 14.724 um documento texto que deve ser enviado para o e-mail linhadireta@adonaimedrado.pro.br em PDF.

A produção deve conter as principais caraterísticas da linguagem e do framework escolhido, incluindo respostas às seguintes questões:

  1. A respeito do framework:
    1. Qual foi a motivação dos desenvolvedores para construirem este produto?
    2. Quais as principais características, capacidades e restrições deste framework?
    3. Sob qual licença ele se encontra? (Proprietária, GPL, QPL, Creative Commons, etc.)
      1. Quais as principais restrições e exigências desta licença?
      2. Quais as obrigações do desenvolvedor que utilizar este framework?
    4. Quais plataformas e sistemas operacionais suportados?
    5. Quais os procedimentos necessários para se compilar um programa simples que utilize este framework?
  2. A respeito da linguagem:
    1. Qual foi o contexto de criação?
    2. Quais os principais nomes (pessoas ou empresas) envolvidos?
    3. Quantas versões anteriores possuiu? Quais as principais evoluções que ocorreram? (Se possível desenvolver quadro comparativo.)
    4. Quais os concursos públicos que exigem/exigiram conhecimento desta linguagem? (Se possível anexar 5 questões com análise das respostas.)
    5. Quais os requisitos mínimos e desejáveis para se execução de um programa? (Exemplo: precisa-se das bibliotecas runtime X, servidor de página Y na versão X ou superior.)
    6. Foi desenvolvida para ser interpretada ou compilada? “Independente de máquina”?
    7. Qual a sintaxe/modo de uso dos principais elementos e estruturas, incluindo:
      1. Tipos básicos existentes e forma de declaração.
      2. Formas de declaração e uso de estruturas, vetores e matrizes.
      3. Instruções condicionais.
      4. Instruções de repetição.
      5. Definição de função/objetos.
      6. Definição de comentários.
      7. Mecanismo de controle de erros (exceção).
      8. Mecanismo de acesso ao banco de dados e arquivos.
      9. Mecanismo de acesso aos dispositivos externos (Exemplo: dispositivos biométricos, impressoras, scanners, etc.).
    8. Utilizando-se a linguagem como se faz a conexão com um banco de dados?
    9. Como é feita a interação com bibliotecas desenvolvidas em outras linguagens?
    10. A linguagem possui utilitários ou formas de automação/auxílio na documentação?
    11. Pode ser utilizado para desenvolver aplicações web/desktop?
    12. Quais os ambientes de desenvolvimento integrado (IDE) disponíveis? - Informar fabricante, site, tipo de licença, características e valor (se for o caso) de cada uma delas.
    13. A linguagem é padronizada (ANSI/ISO)? Qual a referência (documento, data, ano)?

Etapa prática

Na etapa prática deve-se desenvolver um sistema de ponto de venda (SPDV) conforme especificação.

Observações sobre pontuação

Será atribuida pontuação nula aos trabalhos que na parte ou no todo tenham sido plagiados.

Cópias de trechos de textos e/ou códigos sem aspas ou sem a devida marcação de autoria também serão considerados plágios.

  • Para texto: utilize a NBR 10520 e a NBR 6023 para citação e referência.
  • Para código:
    • consulte a possibilidade legal na licença de uso do código para o propósito desejado.
    • siga as instruções do autor/licença ou, caso estas estejam ausentes, coloque indicações claras de inicio e fim do bloco de código de terceiro, bem como nome do autor e link do código original.

Avaliação

A avaliação deste trabalho considerará os seguintes critérios:

  • Primeira etapa
    • Resposta correta às questões propostas (90%).
    • Atendimento à norma culta da língua portuguesa (10%).
  • Segunda etapa
    • Executa o que foi solicitado (50%).
    • Qualidade e legibilidade do código apresentado (20%).
    • Recursos da linguagem utilizados conforme sugestão do manual do fabricante (10%).
    • Usabilidade (10%).
    • Funcionamento do link do site ou do instalador do programa(10%).