====== Ficha de Unidade Curricular ====== **Mestrado Integrado em Engenharia Informática e Computação\\ Laboratório de Bases de Dados e Aplicações Web\\ Ocorrência de: 2013/2014** \\ --- \\ //**[[https://sigarra.up.pt/feup/pt/ucurr_geral.ficha_uc_view?pv_ocorrencia_id=333132|Página oficial]]**// ===== Informação geral ===== **Curso**: Laboratório de Bases de Dados e Aplicações Web\\ **Código**: EIC0085\\ **Curso**: MIEIC, 3º\\ **Ano letivo**: 2013/2014\\ **Semestre**: 2S\\ **Créditos**: 7 ECTS\\ **Horas/Semanas**: 1x2T, 6x3P\\ **Professores**: [[http://www.fe.up.pt/uk/funcionarios_geral.FormView?p_codigo=230756|João Correia Lopes]] | [[http://www.up.pt/feup/funcionarios_geral.FormView?p_codigo=310021|Sérgio Nunes]] ===== Língua de ensino ===== Português. //Suitable for English-speaking students//. ===== Objetivos ===== ENQUADRAMENTO A unidade curricular de LBAW tem como objetivo sedimentar as matérias expostas nas unidades curriculares de bases de dados e linguagens e tecnologias web. Esta unidade curricular oferece uma perspetiva prática sobre duas áreas centrais da engenharia informática. OBJETIVOS ESPECÍFICOS Nesta unidade curricular pretende-se dotar os estudantes da capacidade de projetar e desenvolver sistemas de informação acessíveis através da web e suportados por sistemas de gestão de bases de dados. ===== Resultados de aprendizagem e competências ===== Ao completar esta unidade curricular, o estudante deve ser capaz de projetar e implementar um sistema de informação baseado na web e suportado por um sistema de gestão de base de dados. Em particular, deve ser capaz de: - Especificar os requisitos do sistema de informação baseado na web; - Obter o modelo conceptual de dados do sistema de informação; - Obter e validar o esquema lógico relacional da base de dados do sistema; - Obter o esquema físico da base de dados e afinar o esquema lógico relacional; - Desenhar e implementar interrogações para acesso à base de dados em SQL; - Desenhar e implementar mecanismos para a manutenção da integridade dos dados; - Especificar as interfaces web e a lógica de negócio do sistema de informação; - Implementar os componentes web do sistema com recurso a PHP, HTML, CSS e JavaScript; - Assegurar que as interfaces web estão de acordo com as normas de acessibilidade e usabilidade. ===== Modo de trabalho ===== Presencial ===== Pré-requisitos ===== * Bases de Dados: modelação de dados em UML, Modelo Relacional, linguagem SQL. * Linguagens e Tecnologias Web: protocolo HTTP, linguagens HTML, CSS e JavaScript. ===== Programa ===== * Desenvolvimento de uma aplicação Web suportada por uma Base de Dados: levantamento de requisitos, conceção, modelação, implementação e documentação; * Noções gerais de arquitetura de aplicações Web. Utilização de linguagens de //scripting// de cliente (JavaScript) e de servidor (PHP); * Apresentação do Document Object Model (DOM); utilização de //frameworks// AJAX e APIs de acesso a dados; * Projeto de bases de dados relacionais com recurso a linguagens de modelação de dados (UML), à linguagem SQL e a extensões procedimentais à linguagem SQL; * Identificação e manutenção de regras de negócio: na interface (JavaScript); na lógica de negócio e na base de dados (//triggers//); transações; * Noções gerais de usabilidade e acessibilidade Web. ===== Bibliografia principal ===== * R. Ramakrishnan, J. Gehrke, //Database Management Systems//, McGRAW-Hill International Editions, 3rd Edition, 2002, ISBN=0-07-246563-8. [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000046628|Biblioteca]] ===== Bibliografia complementar ===== * Jeffrey D. Ullman, Jennifer Widom,// A First Course in Database Systems//, Prentice-Hall, 3rd Edition, 2008, ISBN=978-0-13-600-637-4. [[http://aleph.fe.up.pt/F/?func=direct&doc_number=000131263|Biblioteca]] * Scott Ambler, //The Object Primer//, Cambridge University Press, 3rd Edition, 2004, ISBN: 978-0-521-54018-6 [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000153367|Biblioteca]] * Zalewski, Michal, //The tangled Web: a guide to securing modern Web applications//, No Starch Press, Inc. ed, 2011, ISBN=978-1-59327-388-0. [[http://aleph.fe.up.pt/F/?func=direct&doc_number=000149340|Biblioteca]] * Jakob Nielsen, //Designing Web Usability: The Practice of Simplicity//, New Riders Publishing, Indianapolis, 2000, ISBN=1-56205-810-X. [[http://aleph.fe.up.pt/F/-?func=find-b&find_code=SYS&request=000047020|Biblioteca]] ===== Métodos de ensino e atividades de aprendizagem ===== As aulas teóricas serão usadas para apresentação dos guiões dos trabalhos, para a discussão de exemplos representativos, para análise das avaliações efetuadas e para apresentar breves introduções às tecnologias a utilizar. As aulas práticas serão usadas para o desenvolvimento laboratorial do projeto, em grupo, tendo o docente como consultor. ===== Software de apoio ===== * PHP * PostgresSQL * Biblioteca Smarty * Biblioteca jQuery ===== Palavras-chave ===== Physical sciences > Computer science > Informatics ===== Modo de Avaliação ===== Avaliação distribuída sem exame final ===== Componentes de avaliação e ocupação ===== ^ Descrição ^ Tipo ^ Tempo (horas) ^ Data de Conclusão ^ | Participação presencial (estimativa) | Aulas | 75 | | | Especificação de requisitos. | Trabalho laboratorial ou de campo | 20 | 10/03/2014 | | Especificação da Base de dados | Trabalho laboratorial ou de campo | 22 | 31/03/2014 | | Especificação da Arquitetura e Protótipo | Trabalho laboratorial ou de campo | 30 | 21/04/2014 | | Produto. | Trabalho laboratorial ou de campo | 40 | 02/06/2014 | | Promoção. Apresentação e demonstração do produto. | Participação Presencial | 5 | 02/06/2014 | | Questionário Individual | Exercícios | 0 | n/a | | | Total: | 192 | | ===== Obtenção de frequência ===== O trabalho prático será avaliado, durante as aulas laboratoriais, através da entrega dos artefactos previstos. Os conceitos teóricos são avaliados através da resposta individual a questionário com perguntas de escolha múltipla. A aprovação na unidade curricular está condicionada à obtenção pelo estudante de 40% no questionário de resposta individual e de 50% em cada uma das componentes da avaliação prática. Salienta-se o fato de um estudante, por não ter participado numa componente de avaliação, poder ter nota diferente nessa componente da nota do grupo a que pertence. Dada a natureza laboratorial da unidade curricular, não é possível fazer uma avaliação num único momento e, por isso, a avaliação do trabalho prático não pode ser substituída pela realização de um exame. ===== Fórmula de cálculo da classificação final ===== A nota final será calculada usando a fórmula\\ Nota: 80% NP + 20% NI sendo: NP = 20% ER + 20% EBD + 20% EAP + 40% PA Legenda:\\ NI -- Nota do questionário individual\\ NP -- Nota do trabalho prático\\ ER -- Especificação de Requisitos\\ EBD -- Especificação da Base de Dados\\ EAP -- Especificação da Arquitetura e Protótipo Vertical\\ PA -- Produto e Apresentação A classificação final da componente prática (NP) pode variar de elemento para elemento do mesmo grupo, em mais ou menos 2 valores, com base na opinião dos docentes e na autoavaliação e heteroavaliação a realizar internamente em cada grupo. ===== Provas e Trabalhos Especiais ===== Não há provas nem trabalhos especiais. ===== Avaliação especial (TE, DA, ...) ===== A avaliação prática realizada nas aulas laboratoriais durante o semestre de funcionamento da unidade curricular, é exigida a todos os estudantes, independentemente do regime de inscrição e da necessidade de obter avaliação de frequência. Os trabalhadores estudantes e equivalentes dispensados das aulas devem, com periodicidade a combinar com os docentes, apresentar a evolução dos seus trabalhos, assim como devem fazer a apresentação destes, simultaneamente com os estudantes ordinários, e realizar as provas teóricas e práticas de avaliação individual previstas. ===== Melhoria de classificação final/distribuída ===== A classificação poderá ser melhorada na ocorrência seguinte da unidade curricular. \\ --- //JCL, SSN//