====== Ficha de Unidade Curricular ====== **[[https://sigarra.up.pt/feup/pt/cur_geral.cur_view?pv_curso_id=742|Mestrado Integrado em Engenharia Informática e Computação]]\\ [[https://sigarra.up.pt/feup/pt/ucurr_geral.ficha_uc_list?pv_ucurr_id=226119|Laboratório de Bases de Dados e Aplicações Web]]\\ [[https://sigarra.up.pt/feup/pt/ucurr_geral.ficha_uc_view?pv_ocorrencia_id=281222|Ocorrência de: 2012/2013 ]]** \\ --- \\ //**[[https://sigarra.up.pt/feup/pt/ucurr_geral.ficha_uc_view?pv_ocorrencia_id=281222|Página oficial]]**// ===== Informação geral ===== **Curso**: Laboratório de Bases de Dados e Aplicações Web\\ **Código**: EIC0085\\ **Curso**: MIEIC, 3º, 104 estudantes (em 31.01.2013)\\ **Ano letivo**: 2012/2013\\ **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 do domínio 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 | 70 | | | Relatório de Especificação de Requisitos (RER) | Trabalho laboratorial ou de campo | 27 | 11/03/2013 | | Relatório de Especificação da Base de Dados (REB) | Trabalho laboratorial ou de campo | 27 | 08/04/2013 | | Relatório de Arquitetura e Protótipo Vertical (RAP) | Trabalho laboratorial ou de campo | 27 | 29/04/2013 | | Produto (P) | Trabalho laboratorial ou de campo | 36 | 03/06/2013 | | Apresentação (A) | Participação Presencial | 5 | 03/06/2013 | | Desempenho Individual (DI) | Participação Presencial | 0 | | | | Total: | 192 | | ===== Obtenção de frequência ===== n/a ===== Fórmula de cálculo da classificação final ===== A nota final será calculada usando a fórmula: Nota = 15% RER + 20% REB + 15% RAP + 40% PA + 10% DI Legenda:\\ RER - Relatório de Especificação de Requisitos\\ REB - Relatório de Especificação da Base de Dados\\ RAP - Relatório de Arquitetura e Protótipo Vertical\\ PA - Produto e Apresentação\\ DI - Desempenho Individual A classificação a qualquer componente de avaliação pode variar de elemento para elemento do mesmo grupo. A aprovação na unidade curricular está condicionada à obtenção de 40% a qualquer uma das componentes da avaliação. 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. ===== Provas e Trabalhos Especiais ===== Não há provas nem trabalhos especiais. ===== Avaliação especial (TE, DA, ...) ===== A avaliação do trabalho, realizado em grupo, é igual para todos os estudantes independentemente do regime de inscrição. Os estudantes dispensados das aulas devem combinar com os docentes a marcação de reuniões regulares para discussão e acompanhamento dos trabalhos. ===== Melhoria de classificação final/distribuída ===== A classificação poderá ser melhorada na ocorrência seguinte da unidade curricular. \\ --- //JCL, SSN//