Escolar Documentos
Profissional Documentos
Cultura Documentos
Este Projeto apresentado como requisito parcial para obteno do diploma de Bacharel em Engenharia da Computao pela Escola Politcnica de Pernambuco Universidade de Pernambuco.
Resumo
Atualmente, o controle de alunos em Estgio Curricular feito pela Coordenao de Estgio do Departamento de Sistemas e Computao (DSC) da Escola Politcnica de Pernambuco (POLI) apresenta diversas dificuldades, como a falta de organizao de documentos produzidos de forma manual, alunos que negligenciam a disciplina ao no comparecerem s reunies de acompanhamento e estagirios trabalhando em atividades no recomendadas pelo departamento. Este projeto prope o desenvolvimento de uma aplicao web de gerenciamento de Estgio Curricular dos alunos, tornando mais fcil o trabalho do Coordenador de Estgio, evitando matriculas em estgios de baixa qualidade e aumentando o controle sobre os estagirios e a participao dos mesmos em relao disciplina. Exemplos de tecnologias utilizadas neste trabalho so C#, ASP.NET e SQL Server.
Abstract
Nowadays, the control of students curricular stage in the Department of Computing and Systems (DSC) of the Polytechnic School of Pernambuco (POLI) show many difficulties, such as lack of organization of manual producing documents, students that neglect the associated course as they miss meetings, and working in companies not recommended by the Department. This project proposes the development of a web application for controlling students in curricular stage, aiming at making easier the stage coordinators work, avoiding matriculation in low quality stages and increasing the control of students and their participation in the discipline. Examples of used technologies are C#, ASP.NET and SQL Server.
Sumrio
1. Introduo
1.1. Motivao 1.2. Objetivos e Metas
11
11 11
2. Estado da Arte
2.1. Tecnologias 2.2. Processos 2.3. Justificativa da configurao utilizada 2.4. Concluso
13
13 16 17 17
3. O Trabalho
3.1. O Sistema 3.2. Arquitetura 3.3. Metodologia 3.4. Lies aprendidas no desenvolvimento 3.5. Recomendaes 3.6. Concluso
18
18 27 27 29 29 29
30
30 30
5. Bibliografia 6. Apndice A: Caso de Negcio 7. Apndice B: Anlise de Riscos 8. Apndice C: Anlise de Casos de uso 9. Apndice D: Especificao de Casos de uso 10.Apndice E: Diagramas
32 33 36 41 49 60
ndice de Figuras
Figura 1. Viso geral do .NET Framework. Figura 2. Pgina de login do sistema. Figura 3. Pgina principal do sistema, vista pelo Coordenador de Estgio. Figura 4. Alterao de dados de aluno. Figura 5. Incluso de Estgio Curricular. Figura 6. Consulta de Estgios Curriculares. Figura 7. Visualizao de Estgio Curricular por um aluno. Figura 8. Marcao de reunies de acompanhamento. Figura 9. Exemplo de relatrio administrativo. Figura 10. Frum. Figura 11. Incluso de depoimento no frum. Figura 12. Envio de Relatrio de Estgio. Figura 13. Arquitetura do sistema. Figura 14. Diagrama de Classes. Figura 15. Diagrama de Casos de Uso de Aluno. Figura 16. Diagrama de Casos de Uso de Professor. Figura 17. Diagrama de Casos de Uso de Coordenador. Figura 18. Diagrama do Banco de Dados. 14 18 19 20 21 22 23 23 24 24 25 26 27 60 61 61 61 62
ndice de Tabelas
Tabela 1. Linguagens suportadas pelo .NET Framework Tabela 2. Cronograma das Atividades Tabela 3. Cronograma Inicial Tabela 4. Descrio da classe Usurio Tabela 5. Descrio da classe DAOUsuario Tabela 6. Descrio da classe Acadmico Tabela 7. Descrio da classe DAOAluno Tabela 8. Descrio da classe Empresa Tabela 9. Descrio da classe DAOEmpresa Tabela 10. Descrio da classe DAOProfessor Tabela 11. Descrio da classe Estgio Tabela 12. Descrio da classe DAOEstagio Tabela 13. Descrio da classe Depoimento Tabela 14. Descrio da classe Assunto Tabela 15. Descrio da classe DAODepoimento Tabela 16. Descrio da classe DAOAssunto 13 28 34 41 41 42 42 43 43 44 45 45 46 47 47 47
Tabelas de Siglas
As siglas esto dispostas por ordem de apario no texto.
Sigla DSC POLI CLR IL MSIL JI CTS CLS VB ASP HTML SQL SGBD RAM HD IDE GB MB GHz PDF FAQ IIS FTP LINQ WPF XML DAO Significado Departamento de Sistemas e Computao Escola Politcnica de Pernambuco Common Language Runtime Intermediate Language Microsoft Intermediate Language Just-In-Time Common Type System Common Language Specification Visual Basic Active Server Pages HyperText Markup Language Structured Query Language Sistema de Gerenciamento de Banco de Dados Random Access Memory Hard Disk Integrated Drive Electronics Gigabyte Megabyte Gigahertz Portable Document Format Frequently Asked Questions Internet Information Services File Transfer Protocol Language Integrate Query Windows Presentation Foundation Extensible Markup Language Data Access Object
Agradecimentos
Universidade de Pernambuco, por me dar a oportunidade de cursar uma universidade pblica de qualidade. Ao professor Srgio Soares Castelo Branco, pelas orientaes necessrias para a confeco deste trabalho. A meus pais, por me darem a educao que se tornou a minha arma para enfrentar a vida. A minha esposa e minha filha, por me darem todo o apoio que eu pudesse precisar. A Deus, por me dar a fora e a determinao necessrias para alcanar meus objetivos.
10
Captulo 1 Introduo
1.1 Motivao
Atualmente, todo o controle de alunos em Estgio Curricular do Departamento de Sistemas e Computao (DSC) da Escola Politcnica de Pernambuco (POLI) feito de forma manual pela Coordenao de Estgio, atravs do preenchimento de documentos. Esta prtica acarreta em acmulo excessivo de documentos, duplicao de informaes e dificuldades em se administrar os estgios em curso. Alm disso, todas estas informaes e tarefas ficam centralizadas no Coordenador de Estgio do DSC, o que tende a causar a sobrecarga deste profissional. Como prtica geral, os alunos tendem a se matricular primeiro no Estgio Curricular atravs da Diviso de Estgio da POLI, usando o SIG@ o sistema de gesto acadmica da instituio , e s ento procuram um professor orientador do DSC. O que ocorre que muitas vezes o estgio em questo no recomendado pelo departamento, pois o aluno servir de mode-obra barata e no ter nenhuma experincia enriquecedora para a formao profissional. Uma vez iniciado o Estgio Curricular, surge outro problema. Os alunos tendem a aparecerem para a primeira reunio de acompanhamento com o professor orientador e, ao invs de manterem uma regularidade nestas reunies, passam o resto do semestre sem entrar em contato com o docente, reaparecendo apenas pouco antes da entrega do relatrio do Estgio Curricular. Surge a a dificuldade de controle e obteno de informaes sobre o status atual dos discentes.
O aluno, durante o exerccio do seu estgio, pode acompanhar a marcao de reunies de acompanhamento feitas por seu professor orientador e postar em um frum depoimentos sobre exerccio da sua funo. Ao fim do estgio, deve enviar seu Relatrio de Estgio para livre consulta por outros usurios. Ao final desse projeto, deseja-se: Permitir o gerenciamento de forma automatizada e mais eficiente dos alunos em Estgio Curricular. Evitar a sobrecarga de servios sobre o Coordenador de Estgio. Prover uma anlise prvia a respeito da qualidade do estgio proposto. Proporcionar a troca de experincias profissionais entre alunos atravs do frum de depoimentos. Disponibilizar uma vasta biblioteca de Relatrios de Estgio. Melhorar o controle em relao s reunies de acompanhamento entre alunos e professores orientadores. Manter constante a obteno de informaes sobre o status atual dos estgios. Aumentar a participao dos alunos em relao ao Estgio Curricular, uma vez que os mesmos podero acompanhar sua situao atravs do sistema.
12
A plataforma .NET composta por dois componentes: um ambiente de execuo a CLR , uma grande biblioteca de classes a Framework Class Library. A CLR (Common Language Runtime) o ambiente de execuo para todos os programas no .NET Framework. Ela age como um sistema operacional, ou seja, tudo que executado dentro dela gerenciado por ela mesma, como requisies de acesso memria e de hardware. Ele encarrega-se de aprimorar o desempenho de aplicativos, minimizando processamento desnecessrio e realizando garbage collection (destruio de objetos inteis) e tratamento de excees.
13
A CLR interpreta e executa dinamicamente cdigo na IL (Intermediate Language), tambm conhecida como MSIL (Microsoft Intermediate Language). O compilador de cada linguagem do framework compila seu cdigo para a IL. Em tempo de execuo, o compilador JIT (Just-In-Time) da CLR compila o cdigo em IL para cdigo nativo, o qual interpretado e executado. Desta forma, a CLR acessvel a qualquer compilador que produza cdigo em IL. Fazem parte ainda da CLR a CTS (Common Type System), que descreve o conjunto de tipos suportados pela mesma, e a CLS (Common Language Specification), que determina a forma como as linguagens do framework compartilham suas bibliotecas e tem o propsito de prover a interoperabilidade entre as linguagens do .NET.
2.1.2 ASP.NET
ASP.NET8 a plataforma da Microsoft para o desenvolvimento de aplicaes Web e o sucessor da tecnologia ASP. um componente do servidor Web IIS que permite criar pginas dinmicas atravs de uma linguagem de programao integrada no .NET Framework. No nem uma linguagem de programao, nem um servidor Web. O ASP.NET baseado no .NET Framework herdando todas as suas caractersticas. Por isso, como qualquer aplicao .NET, as aplicaes para essa plataforma podem ser escritas em vrias linguagens, como C# e Visual Basic .NET. Uma aplicao para Web desenvolvida em ASP.NET pode reutilizar cdigo de qualquer outro projeto escrito para a plataforma .NET, mesmo que em linguagem diferente. Uma pgina ASP.NET escrita em VB.NET pode chamar componentes escritos em C, por exemplo. O ASP.NET a evoluo do ASP11, tecnologia usada anteriormente pela Microsoft para criar aplicaes Web. Algumas das suas vantagens em relao ao ASP so: 1. No ASP, quando uma pgina solicitada no servidor, a biblioteca do ASP l cada uma das linhas passo a passo, interpreta os cdigos, monta um HTML virtual e envia para o browser que o solicitou. J no ASP.NET, as pginas so compiladas; por isso, so cerca de 25% mais rpidas que no ASP. 2. No VBScript, a linguagem de programao usada no ASP, a declarao de uma varivel no obrigatria. Alm disso, as variveis no podem ser tipadas (ou seja, ter seu tipo de 14
contedo definido); so do tipo Variant podem receber qualquer tipo de contedo. No ASP.NET, todas as variveis devem ser declaradas e ter o respectivo tipo definido, o que fundamental no tratamento do cdigo. 3. Nas pginas em ASP, o cdigo VBScript inserido dentro do cdigo HTML, retalhando toda a pgina e dificultando sua manuteno. Em ASP.NET, usa-se o Code Behind: uma pgina dividida em dois arquivos vinculados, um de layout, escrito em HTML, e outro com o cdigo de programao. 4. O ASP.NET disponibiliza uma vasta biblioteca de controles Web pr-desenvolvidos, como tabelas, caixas de seleo e calendrios, o que facilita a criao das pginas, principalmente quando preciso publicar o contedo de um banco de dados. Alm disso, existem os controles de validao, usados para validar os dados inseridos pelo usurio. 5. Em ASP, a melhor forma de debugar erros imprimindo o contedo de variveis na tela do browser. No ASP.NET, utilizando a ferramenta de desenvolvimento adequada (Visual Studio .NET ou Visual Web Developer), possvel definir breakpoints (pontos de interrupo) no cdigo, provocando uma pausa temporria durante a execuo da pgina no browser. Assim, pode-se checar o contedo das variveis e acompanhar o processamento passo a passo. 6. No ASP.NET, o tratamento de erros, bastante deficiente no ASP, foi totalmente reestruturado com o uso de excees, sendo possvel identificar qualquer erro que ocorra na pgina e personalizar mensagens. 7. Normalmente, em ASP.NET, usada a programao orientada a eventos, que bem mais intuitiva e muito similar usada em aplicaes locais.
15
A C# baseada nas linguagens C e C++, porm apresenta melhorias em relao a elas, como por exemplo: Ponteiros e aritmtica sem checagem contra sobrecarga (overflow) s podem ser utilizados em uma modalidade especial chamada modo inseguro (unsafe mode). Objetos no so liberados explicitamente, mas atravs de garbage collection, quando no h referncias aos mesmos, prevenindo assim referncias invlidas. Destrutores no existem, mas sim finalizadores. Porm, sua execuo no imediata. No permitida herana mltipla, mas uma classe pode implementar vrias interfaces. O objetivo principal simplificar a implementao do ambiente de execuo. C# mais seguro com tipos que C++. As nicas converses implcitas por padro so as seguras, tais como ampliao de inteiros e converses de um tipo derivado para um tipo base. No existem converses implcitas entre inteiros e variveis lgicas ou enumeraes, assim como ponteiros nulos. Propriedades esto disponveis, as quais permitem que mtodos sejam chamados com a mesma sintaxe de acesso a membros de dados.
2.2 Processos
2.2.1 Estao de Trabalho
No desenvolvimento do sistema proposto, foi utilizado um notebook Toshiba STi com processador AMD Turion 64 1,8 GHz, 512 MB de memria RAM DDR 400, HD IDE de 60 GB.
2.4 Concluso
Diante as caractersticas e vantagens apresentadas pelas citadas tecnologias, um sistema Web desenvolvido em ASP.NET e usando banco de dados SQL Server 2005 Express Edition pareceu a escolha mais confivel para desenvolver uma aplicao de alto desempenho, segura em relao aos dados, de fcil manuteno e de baixo custo de produo.
17
Captulo 3 O Trabalho
3.1 O Sistema
A seguir, so apresentadas todas as funcionalidades do sistema que foram implementadas at ento.
3.1.1 Login
Inicialmente, o usurio do sistema precisar efetuar login para poder ter acesso ao mesmo. Na pgina inicial, digita seu login e sua senha e clica no boto Entrar. Caso login e senha estejam corretos, o usurio passa para a pgina principal.
Na pgina principal, o usurio encontra ao lado esquerdo encontrar o menu de funcionalidades do sistema, dividido em Cadastros, Opes e Arquivos; ele configurado de acordo com o tipo do usurio que efetuou login: aluno, professor orientador ou Coordenador de Estgio (vide Anexo I). Acima do mesmo, est a barra do usurio, que informa o login do mesmo e possui os links para alterao de senha e logout do sistema.
18
Caso o usurio seja um aluno ou professor orientador recentemente cadastrado, ser obrigado a alterar sua senha, uma vez que estar usando uma senha provisria cadastrada automaticamente pelo sistema.
3.1.2 Cadastros
Os cadastros do sistema so acessveis apenas para o Coordenador do Estgio. Eles dividem-se em cadastros de aluno, professor, empresa e estgio. 3.1.2.1 Cadastro de Aluno Na pgina de incluso de aluno, o usurio digita o nmero da matricula, o nome, o login e o email do aluno, e clica no boto Incluir para efetuar a incluso. Caso no exista um aluno com a matrcula informada ou o login, a incluso realizada e enviada ao e-mail informado uma mensagem informando que o discente foi cadastrado no sistema com uma senha provisria e que deve alter-la quando fizer o primeiro acesso.
19
Clicando no link Consultar, exibida a pgina de consulta de alunos, onde o usurio pode digitar o nome (ou parte dele) do discente e clicar no boto Consultar. O resultado da consulta exibido em uma tabela logo abaixo do boto. Do lado esquerdo de cada linha da tabela, h um link Alterar. Ao clicar no mesmo, exibida uma pgina com todas as informaes do aluno cadastradas no sistema. Caso deseje, o usurio pode alterar o nome e/ou o e-mail do discente, clicando no boto Alterar, ou exclu-lo do sistema, clicando no boto Excluir. 3.1.2.2 Cadastro de Empresa Esta funcionalidade foi projetada para ser um simples cadastro do nome da empresa, podendo ser facilmente estendida no futuro para conter mais informaes, caso necessrio. semelhante de Cadastro de Aluno, descrita anteriormente. 3.1.2.3 Cadastro de Professor Esta funcionalidade idntica de Cadastro de Aluno, descrita anteriormente. 3.1.2.4 Cadastro de Estgio Esta uma das funcionalidades mais importantes do sistema. Na pgina de incluso de estgio, o usurio escolhe o aluno, a empresa e o professor orientador, cada um deles disposto em uma caixa de seleo. Digita a data de incio do estgio, a data pretendida pelo aluno para terminar o estgio e a data em que o estgio terminou; necessrio que estas datas obedeam a uma ordem cronolgica. Depois, escolhe a situao do mesmo (matriculado, cancelado, aprovado ou reprovado) e clica no boto Incluir para efetuar a incluso.
20
Caso deseje consultar os estgios cadastrados, o usurio pode clicar no link Consultar. exibida a pgina de consulta, onde o usurio pode digitar o nome (ou parte dele) do aluno e clicar no boto Consultar. O resultado da consulta, com os estgios cadastrados do referido discente, exibido em uma tabela logo abaixo do boto. Do lado esquerdo de cada linha da tabela, h um link Alterar que, quando clicado, exibida uma pgina com todas as informaes do estgio cadastradas no sistema. Caso deseje, o usurio pode alterar as informaes includas por ele, clicando no boto Alterar, ou excluir o cadastro, clicando no boto Excluir; apenas no pode alterar os dados referentes marcao de reunies de acompanhamento entre aluno e professor, uma vez que apenas o orientador pode faz-lo (vide seo 3.1.3.1).
21
Uma vez que a situao do estgio alterada para cancelado ou reprovado, as informaes sobre o mesmo no estar mais disponvel para alterao, mas apenas para visualizao.
3.1.3 Opes
As funcionalidades desta seo do menu esto disponveis de acordo com o tipo de usurio. Elas so descritas a seguir. 3.1.3.1 Meus Estgios Esta funcionalidade est disponvel apenas para usurios dos tipos aluno e professor orientador, cada um com suas configuraes prprias. Para alunos, a pgina exibe os estgios cadastrados do discente em questo, permitindo que o mesmo, ao clicar no link Detalhar ao lado de cada linha da tabela contendo os cadastros, visualize todas as informaes do estgio escolhido.
22
Para professores orientadores, funciona de forma semelhante, com o diferencial da existncia do link Marcar Reunies, que remete a uma pgina onde feita a marcao de reunies de acompanhamento Na pgina em questo, o docente pode informar as datas combinadas entre ele e o aluno para as reunies de acompanhamento e definir sua situao (aluno compareceu, aluno faltou ou no ocorreu). Ao clicar no boto Alterar, so efetuadas as alteraes.
23
3.1.3.2 Relatrios Disponvel apenas para o Coordenador de Estgio, esta opo oferece gerao de relatrios administrativos da Coordenao de Estgio, como: Distribuio de carga horria dos estgios. Distribuio de alunos em estgio por professor orientador. Listagem dos discentes em estgio com suas respectivas situaes.
3.1.3.3 Frum Disponvel para todos os tipos de usurios, o frum rene depoimentos de situaes pelas quais os alunos passaram no exerccio dos seus estgios, divididos por assunto.
24
O usurio escolhe em uma barra de seleo o assunto do frum que deseja consultar. Sero exibidos abaixo os depoimentos em ordem de incluso, informando o login do aluno ao lado. 3.1.3.4 Incluir Depoimento Apenas alunos podem incluir depoimentos no frum. O usurio precisa escolher um assunto para o depoimento, disposto em uma barra de seleo, e digitar o texto do depoimento que deseja deixar pblico para todos os usurios que consultem o frum. Ao clicar no boto Incluir, efetuada a incluso do depoimento.
3.1.3.5 Enviar Relatrio de Estgio Uma vez que seu estgio tenha sido aprovado, o aluno pode, por meio desta funcionalidade, realizar o upload do seu Relatrio de Estgio para sistema, para que ele fique disponvel na rea Arquivos (vide seo 3.1.4.2).
25
Nesta pgina, o usurio clica no boto Procurar. aberta uma janela do prprio sistema operacional pela qual pode navegar pelos diretrios do computador e escolher o arquivo que deseja enviar. Este arquivo precisa ser de texto, ter a extenso permitida (PDF) e tamanho at 03 (trs) MB (megabytes). Ao clicar no boto Enviar, o envio do arquivo efetuado. 3.1.3.6 FAQ O FAQ (abreviatura para Frequently Asked Questions) est presente nos mais variados tipos de sites na internet, reunindo perguntas comumente perguntadas por usurios. No sistema em questo, tem o objetivo de sanar as dvidas mais comuns dos alunos em relao ao Estgio Curricular, como: qual o tempo de durao do Estgio Curricular, qual o seu critrio de avaliao, o que necessrio para realizar a matrcula, etc. Est disponvel para todos os tipos de usurios.
3.1.4 Arquivos
Os links desta seo do menu esto disponvel para todos os tipos de usurios. 3.1.4.1 Documentos Est pgina disponibiliza para download documentos e modelos teis para os alunos durante o curso de Estgio Curricular, como: Manual do Estgio Supervisionado da POLI. Ficha de Solicitao de Professor Orientador. Modelo de Relatrio de Estgio da Diviso de Estgio da POLI. 3.1.4.2 Relatrios de Estgio Est pgina disponibiliza para download o acervo de Relatrios de Estgio enviados pelos alunos ao fim dos seus respectivos estgios (vide seo 3.1.3.6). 26
3.2 Arquitetura
A arquitetura do sistema est divida em trs camadas: Web Forms, DAOs e Framework, como mostra a Figura 13.
Os Web Forms so as pginas que sero acessadas pelo browser e fazem a interface com o usurio. Os DAOs (Data Access Objects) fazem o acesso ao Banco de Dados e implementam a lgica de negcio. J o Framework do sistema composto de entidades de negcio, biblioteca de excees e listas de funes e de constantes.
3.3 Metodologia
3.3.1 Atividades
A seguir, so apresentadas as atividades realizadas no desenvolvimento deste projeto. 3.3.1.1 Levantamento de requisitos Foram feitas entrevistas com o Coordenador da Diviso de Estgio a fim de coletar o mximo de detalhes possveis do processo administrativos dos estgios dos alunos, bem como sugestes e desejos para melhorias no referido processo. 3.3.1.2 Definio da metodologia e tecnologia utilizadas Com base nos requisitos colhidos na etapa anterior, foram definidos a plataforma de trabalho, o ambiente de desenvolvimento, a tecnologia utilizada, e linguagem de programao adotada e o banco de dados que far o armazenamento das informaes dos Estgios Curriculares. 3.3.1.3 Documentao Foram confeccionados o Documento de Requisitos do Sistema, o Planejamento da Monografia e o Projeto da Monografia, seguindo os padres adotados pela metodologia de desenvolvimento. 3.3.1.4 Obteno de material pedaggico
27
Foi feita a aquisio de livros especializados em desenvolvimento de software disponveis no mercado, alm de uma busca em sites na internet por material que pudesse sugerir melhorias ou novidades. 3.3.1.5 Definio da hospedagem Foi definido em que parte do servidor do DSC o sistema ficar hospedado. O ambiente foi preparado para suportar o sistema de acordo com os requisitos obtidos na seo 3.2.1.2: ambiente Windows 2000 ou superior, servidor web IIS 6.0 e banco de dados SQL Server 2000 ou superior. Foi realizada a instalao de servidor de FTP para facilitar o envio de arquivos. 3.3.1.6 Definio da Interface grfica O desenvolvimento dessa atividade foi feito utilizando-se Macromedia Fireworks 8 e Macromedia Dreamweaver 8. Foi buscada uma interface leve e atrativa, com a qual tanto professores quanto alunos possam se familiarizar. 3.3.1.7 Implementao do sistema Foi realizada de acordo com todas as especificaes obtidas na seo 3.2.1.2: ambiente Windows 2000 ou superior, servidor Web IIS 6.0, banco de dados SQL Server 2000 ou superior, plataforma ASP.NET e linguagem C#. 3.3.1.8 Escrita da Monografia Foi realizada ao logo do desenvolvimento do projeto, a fim de que no final da disciplina, seja feita a defesa da mesma para a bancada de professores.
28
3.5 Recomendaes
Apesar de ser necessrio apenas um computador com acesso Internet e um brower para navegao em sites, para melhor utilizao do sistema, recomenda-se usar o sistema operacional Microsoft Windows verso 2000 ou superior com o browser Microsoft Internet Explorer verso 6.0 ou superior, com permisso de execuo de scripts.
3.6 Concluso
Diante do que foi apresentado nas sees anteriores deste captulo, pode-se constatar que este projeto foi desenvolvido usando tecnologias de ponta, como ASP.NET e SQL Server, a fim de se obter uma aplicao segura e de alto desempenho, e tcnicas modernas de Engenharia de Software e Gerenciamento de Projetos, objetivando uma produo planejada e prevenida de contratempos e gastos extras.
29
30
Gerao de atas de presena em reunies de acompanhamento de alunos em Estgio Curricular. Visualizao de consultas em formato de grfico. Implementao de acesso a Banco de Dados atravs de Stored Procedures, para otimizao do processo. Atualizao da plataforma do sistema para ASP.NET 3.5, a mais atual at o momento. Uso de novas tecnologias desenvolvidas pela Microsoft que integram o .NET Framework 3.5, como LINQ e WPF. Implantao de criptografia atravs do protocolo de segurana SSL para acesso ao sistema. Criao de componentes web personalizados para o sistema gerados em tempo de execuo de acordo com o tipo de usurio usando repositrios em XML.
31
Bibliografia
[1] Pressman, R. S. (2006). Engenharia de Software. McGraw-Hill Books. [2] Reynolds, G. W., Stair, R. M. (2005). Princpios de Sistemas de Informao. Thompson Editora. [3] Lotar, A. (2003). ASP.NET com C#: Curso Prtico. Novatec Editora. [4] Ullman, C., Kauffman, J., Hart, C., Sussman, D., Maharry, D. (2004). Beginning ASP.NET 1.1 with Visual C#.NET 2003. Wiley Publishing, Inc. [5] Utley, C. (2006). Desenvolvendo Aplicativos para Web com SQL Server 2000. Makron Books. [6] Tulloch, M., Santry, P. (2001). Dominando IIS 5.0. Editora Moderna. [7] ARAJO, A. V. (2006). Treinamento Avanado em .NET. Digerati Books. [8] Wikipdia. (2008). http://www.wikipedia.org, ltimo acesso em 04/05/2008. [9] MSDN Brasil. (2008). http://msdn.microsoft.com/pt-br/default.aspx, ltimo acesso em 20/05/2008. [10] DevMedia Editora - Central de Contedo .Net. (2008). http://www.devmedia.com.br/canais/default.asp?site=35, ltimo acesso em 20/05/2008. [11] Dez razes para migrar para ASP.NET. (2008). http://www.microsoft.com/brasil/msdn/tecnologias/aspnet/aspnet_migrar.aspx, ltimo acesso em 15/11/2006.
32
2.0 Referncias
Anlise de Riscos, Especificao de Casos de Uso e Anlise de Casos de Uso.
X X
7.0 Restries
34
Por tratar-se de uma aplicao web, requerido para hospedar o sistema um servidor web com processador de 2,0 GHz de velocidade ou superior, HD de 80 GB de capacidade ou supeior, memria RAM de 256 MB de capacidade ou superior, sistema operacional Windows 2000 ou superior com .NET Framework verso 2.0 ou superior, banco de dados SQL Server Express Edition verso 2005 ou superior e servidor web IIS verso 6.0 instalados. Nos terminais de operao, os nicos requisitos so acesso Internet e um browser para navegao de sites. Recomenda-se usar processador de 1,8 GHz de velocidade ou superior, memria RAM de 256 MB de capacidade ou superior, sistema operacional Microsoft Windows 2000 ou superior com browser Internet Explorer 6.0 ou superior.
35
2.0 - Referncias
Pressman, R. S. (2006). Engenharia de Software. McGraw-Hill Books.
36
3.0 Riscos
3.1 A tecnologia utilizada para o desenvolvimento do projeto no ser a mais indicada
ID: Nome: Descrio: A tecnologia utilizada para o desenvolvimento do projeto (linguagem de programao, ferramenta de desenvolvimento, servidor de banco de dados, etc.) no ser a mais indicada. Impacto: Dificuldade de se implementar o que est previsto no projeto, atrasos no cronograma, a necessidade de se refazer o software do ponto inicial (mesmo que este esteja em fase final de desenvolvimento), mal desempenho do software. Estratgia de Controle: A tecnologia escolhida deve ser avaliada cuidadosamente, levando-se em conta os requisitos do projeto, o desenvolvedor deve estar plenamente treinado na mesma. importante tambm modularizar o projeto, de forma que se um mdulo der problema, ele possa ser substitudo por outro feito em outra tecnologia. Indicadores: Falta de documentao de apoio da tecnologia adotada, dificuldade de se encontrar profissionais habilitados a trabalhar com tal tecnologia, mal desempenho do software, entre outros. Plano de Contingncia: Primeiramente, deve-se substituir os mdulos problemticos por outros desenvolvidos em outra tecnologia. Caso todo o projeto esteja comprometido, a soluo migrar completamente para outra tecnologia. Para isso, preciso primeiramente negociar com o cliente um novo prazo de entrega; caso o mesmo seja aprovado, um novo cronograma ser feito e o desenvolvedor ser treinado na nova tecnologia. RC01 Magnitude: Baixa A tecnologia utilizada para o desenvolvimento do projeto no ser a mais indicada
37
38
39
3.6 Mudanas bruscas no desenvolvimento impostas pelo cliente numa etapa avanada
ID: Nome: Descrio: O cliente solicita mudanas bruscas no projeto, como a adio de mais funcionalidades ao projeto aps a coleta dos requisitos, o que pode causar atraso no projeto, pois o mesmo precisar novamente passar pelas fases de planejamento. Impacto: Atraso no cronograma. Em caso de mudanas crticas e de complexidade elevada, o projeto pode ser inviabilizado por parte do desenvolvedor. Estratgia de Controle: Deixar claro ao cliente na fase de planejamento do projeto que modificaes de alta complexidade imprevistas podem inviabilizar o projeto. Indicadores: O cliente informa que necessita de mais funcionalidades no software ou que deseja a mudanas de algumas j implementadas, de modo a suprir totalmente suas necessidades. Plano de Contingncia: O Gerente do Projeto deve informar ao cliente que mudanas nesta etapa da elaborao implicar em mais tempo necessrio para a concluso do mesmo do que o que foi acertado inicialmente. Caso o mesmo aceite estas condies, reajustar o cronograma, fazer um novo levantamento de requisitos e dar incio s modificaes solicitadas. RC06 Ranking: Alta Mudanas bruscas no desenvolvimento impostas pelo cliente numa etapa avanada
40
2.2 Classe DAOUsuario Descrio: classe que faz o acesso tabela USUARIO do Banco de Dados.
Tabela 5. Descrio da classe DAOUsuario. Mtodos Inserir(usuario) Alterar(usuario) Excluir(login) Consultar(login) Existe(usuario) Descrio Insere o cadastro de um usurio no Banco de Dados. Altera o cadastro de um usurio no Banco de Dados. Exclui o cadastro de um usurio do Banco de Dados Recupera o cadastro de um usurio do Banco de Dados. Verifica se o cadastro de um usurio existe no Banco de Dados.
41
Tabela 6. Descrio da classe Acadmico. Atributos matricula nome login email Descrio Nmero de Matrcula do acadmico na POLI. Nome do acadmico. Login de acesso ao sistema do acadmico . E-mail para contato do acadmico. Tipo String String String String
3.2 Classe Aluno Descrio: subclasse da classe Acadmico que contm informaes cadastrais de um aluno. No possui nenhum atributo adicional. 3.3 Classe Usurio J descrita anteriormente. 3.4 Classe DAOAluno Descrio: classe que faz o acesso tabela ALUNO do Banco de Dados.
Tabela 7. Descrio da classe DAOAluno. Mtodos Inserir(aluno) Alterar(aluno) Excluir(matricula) Consultar(matricula) Existe(aluno) Descrio Insere o cadastro de um aluno no Banco de Dados. Altera o cadastro de um aluno no Banco de Dados. Exclui o cadastro de um aluno do Banco de Dados Recupera o cadastro de um aluno do Banco de Dados. Verifica se o cadastro de um aluno existe no Banco de Dados.
7.2 Classe DAOEmpresa Descrio: classe que faz o acesso tabela EMPRESA do Banco de Dados.
Tabela 9. Descrio da classe DAOEmpresa. Mtodos Inserir(empresa) Alterar(empresa) Excluir(empresaID) Consultar(empresaID) Existe(empresa) Descrio Insere o cadastro de um empresa no Banco de Dados. Altera o cadastro de um empresa no Banco de Dados. Exclui o cadastro de um empresa do Banco de Dados Recupera o cadastro de um empresa do Banco de Dados. Verifica se o cadastro de um empresa existe no Banco de Dados.
11.2 Classe Usurio J descrita anteriormente. 11.3 Classe DAOProfessor Descrio: classe que faz o acesso tabela PROFESSOR do Banco de Dados.
Tabela 10. Descrio da classe DAOProfessor. Mtodos Inserir(professor) Alterar(professor) Excluir(matricula) Consultar(matricula) Existe(professor) Descrio Insere o cadastro de um professor no Banco de Dados. Altera o cadastro de um professor no Banco de Dados. Exclui o cadastro de um professor do Banco de Dados Recupera o cadastro de um professor do Banco de Dados. Verifica se o cadastro de um professor existe no Banco de Dados.
44
Tabela 11. Descrio da classe Estgio. Atributos estagioID matriculaAluno matriculaProfessor empresaId dataInicio dataPrevisataFim dataFim situacao dataReuniao1 dataReuniao2 dataReuniao3 dataReuniao4 situacaoReuniao1 situacaoReuniao2 situacaoReuniao3 situacaoReuniao4 Descrio Nmero do cdigo da empresa. Nmero de Matrcula do aluno na POLI. Nmero de Matrcula do professor na POLI. Nmero do cdigo da empresa. Data do incio do estgio. Data prevista para o fim do estgio. Data do fim do estgio. Situao do estgio: aprovado (A), cancelado (C) , matriculado (M) ou reprovado (R). Data marcada para a 1 reunio de acompanhamento Data marcada para a 2 reunio de acompanhamento Data marcada para a 3 reunio de acompanhamento Data marcada para a 4 reunio de acompanhamento Situao da 1 reunio de acompanhamento Situao da 2 reunio de acompanhamento Situao da 3 reunio de acompanhamento Situao da 4 reunio de acompanhamento Tipo int String String int DateTime DateTime DateTime char DateTime DateTime DateTime DateTime char char char char
15.2 Classe Aluno J descrita anteriormente. 15.3 Classe Professor J descrita anteriormente. 15.4 Classe Empresa J descrita anteriormente. 15.5 Classe DAOEstagio Descrio: classe que faz o acesso tabela ESTAGIO do Banco de Dados.
Tabela 12. Descrio da classe DAOEstagio. Mtodos Inserir(estagio) Alterar(estagio) Excluir(estagioID) Consultar(estagioID) Existe(estagio) Descrio Insere o cadastro de um estgio no Banco de Dados. Altera o cadastro de um estgio no Banco de Dados. Exclui o cadastro de um estgio do Banco de Dados Recupera o cadastro de um estgio do Banco de Dados. Verifica se o cadastro de um estgio existe no Banco de Dados.
45
15.6 Classe DAOAluno J descrita anteriormente. 15.7 Classe DAOProfessor J descrita anteriormente. 15.8 Classe DAOEmpresa J descrita anteriormente.
19.2 Classe Assunto Descrio: classe que contm informaes cadastrais de um assunto. 46
Tabela 14. Descrio da classe Assunto. Atributos assuntoID descrio Descrio Nmero do cdigo do assunto. Descrio do assunto. Tipo int String
19.3 Classe DAODepoimento Descrio: classe que faz o acesso tabela DEPOIMENTO do Banco de Dados.
Tabela 15. Descrio da classe DAODepoimento. Mtodos Inserir(depoimento) Alterar(depoimento) Excluir(depoimentoI D) Consultar(depoimen toID) Existe(depoimento) Descrio Insere o cadastro de um depoimento no Banco de Dados. Altera o cadastro de um usurio no Banco de Dados. Exclui o cadastro de um depoimento do Banco de Dados Recupera o cadastro de um depoimento do Banco de Dados. Verifica se o cadastro de um depoimento existe no Banco de Dados.
19.4 Classe DAOAssunto Descrio: classe que faz o acesso tabela ASSUNTO do Banco de Dados.
Tabela 16. Descrio da classe DAOAssunto. Mtodos Inserir(assunto) Alterar(assunto) Excluir(assuntoID) Consultar(assuntoI D) Existe(assunto) Descrio Insere o cadastro de um assunto no Banco de Dados. Altera o cadastro de um assunto no Banco de Dados. Exclui o cadastro de um assunto do Banco de Dados Recupera o cadastro de um assunto do Banco de Dados. Verifica se o cadastro de um assunto existe no Banco de Dados.
48
2.4 - Pr-condies: o usurio precisa estar logado no sistema. 2.5 - Ps-condies: a senha do coordenador alterada ou uma mensagem de erro emitida.
6. Uma pgina exibida com as informaes do aluno. 4.3 - Fluxos Alternativos de Eventos: 1. O aluno no est cadastrado no sistema. Uma mensagem de erro emitida. 4.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O cadastro do aluno deve constar no sistema. 4.5 - Ps-condies: uma pgina exibida com as informaes do aluno ou uma mensagem de erro emitida.
2. Uma mensagem exibida informando que o aluno foi excludo com sucesso. 6.3 - Fluxos Alternativos de Eventos: 1. O aluno no est cadastrado no sistema. Uma mensagem de erro emitida. 6.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O cadastro do aluno deve constar no sistema. 6.5 - Ps-condies: o cadastro do aluno excludo ou uma mensagem de erro emitida.
52
15.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O aluno escolhido deve estar cadastrado no sistema. 3. O professor escolhido deve estar cadastrado no sistema. 4. A empresa escolhida deve estar cadastrada no sistema. 15.5 - Ps-condies: O estgio cadastrado ou uma mensagem de erro emitida.
1. Na pgina com as informaes do estgio, o usurio entra com os novos dados nos respectivos campos. Clica em Alterar. 2. Uma mensagem exibida informando que o estgio foi alterado com sucesso. 17.3 - Fluxos Alternativos de Eventos: 1. O estgio no est cadastrado no sistema. Uma mensagem de erro emitida. 2. O usurio digita um dado invlido (por exemplo, uma data no formato errado). Uma mensagem de erro emitida. 3. O usurio deixa de digitar um dado obrigatrio. Uma mensagem de erro emitida. 17.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O cadastro do estgio deve constar no sistema. 17.5 - Ps-condies: o cadastro do estgio alterado ou uma mensagem de erro emitida.
1. O usurio precisa estar logado no sistema. 2. O cadastro do estgio deve constar no sistema. 19.5 - Ps-condies: as reunies so marcadas ou uma mensagem de erro emitida.
Estgio e clica no boto OK. 5. O nome do arquivo e seu caminho aparecem na caixa de texto Arquivo. O usurio clica no boto Enviar. 6. Uma mensagem exibida informando que o upload do arquivo para o sistema foi realizado com sucesso. 22.3 - Fluxos Alternativos de Eventos: 1. O usurio clica no boto Enviar sem que tenha selecionado nenhum arquivo. Uma mensagem de erro emitida. 2. O usurio (aluno) ainda no foi aprovado no Estgio Curricular e, portanto, ainda no pode enviar seu relatrio. Uma mensagem de erro emitida. 3. O usurio seleciona um arquivo que no existe. Uma mensagem de erro emitida. 4. O usurio seleciona um arquivo com extenso invlida. Uma mensagem de erro emitida. 21.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O usurio (aluno) precisa ter sido aprovado no Estgio Curricular. 3. O arquivo deve existir no computador do usurio. 4. O arquivo precisa ter a extenso PDF. 21.5 - Ps-condies: o upload do arquivo para o sistema realizado ou uma mensagem de erro emitida.
22.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 2. O assunto escolhido deve estar cadastrado no sistema. 22.5 - Ps-condies: um depoimento includo ou uma mensagem de erro emitida.
3. O usurio seleciona um tipo de relatrio. 4. exibida uma pgina com o relatrio administrativo solicitado. 25.3 - Fluxos Alternativos de Eventos: No h. 25.4 - Pr-condies: 1. O usurio precisa estar logado no sistema. 25.5 - Ps-condies: um relatrio administrativo exibido.
59
Apndice E Diagramas
1.0 Diagrama de Classes
60
61
Observao: os casos de uso Gerenciar englobam os casos de uso Incluir, Consultar, Alterar e Excluir.
62