Você está na página 1de 181

Agradecimentos

Os meus agradecimentos: Antes de tudo agradeo a Deus por me ter dado fora e sabedoria para caminhar, por me dirigir sempre no melhor caminho e por abenoar esta minha passagem pelo mundo. Aos meus pais Antnio Loureno David e Margarida Fernandes dos Santos L. L. David, por todo o apoio que me tm dado. Ao meu Tutor, Doutor Aires Manuel Arajo Veloso, pelos seus ensinamentos ao longo do curso e na elaborao do projecto, pois, sem este apoio, no seria possvel a sua implementao. Aos professores Doutor Joaquim Fortes e Mestre Marcelino Tefilo Hiyelekwa, pelo contributo dado com os seus ensinamentos e pela pacincia e ateno que sempre tiveram para comigo durante o curso. A todos os professores que de uma forma directa ou indirecta contriburam para o enriquecimento dos meus conhecimentos. Aos meus familiares, amigos e colegas que foram a fora-motriz para a minha permanncia nesta direco. Em especial dedico minha namorada Paula Natlia Siudifonya, pelo incentivo e por todo o apoio dado. Seria cruel se terminasse sem enderear os meus agradecimentos ao chefe do Departamento Doutor Antnio lvaro. Uma palavra especial para Sra. Crmen Pereira que foi a minha me no departamento. Aos professores Cubanos que por c passaram Gilberto Pres, Victor Pino, Mirtha, Walfriedo, Bertha e Adelaide Clon por tudo o que fizeram para a minha formao. Agradeo ainda ao Doutor Legr pelo contributo dado na correo do projecto. A todos, os meus mais sinceros agradecimentos.

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Resumo
Existem muitos mtodos de gesto de recursos associados a uma determinada empresa ou instituio quer governamental ou no-governamental. Uma boa gesto dos recursos que define a qualidade de servios prestados pela instituio. Os sistemas de informao manuais usados pelas empresas no tm sido suficientemente eficazes para dar cobro as necessidades da empresa. A gesto dos recursos humanos tem sido um factor de tamanha importncia nos dias de hoje nas empresas. Os sistemas de informao informatizados tm desempenhado um papel importantssimo no que tange a gesto organizacional das informaes nas empresas. Baseando-se nas tecnologias de informao estes sistemas podem tornar a gesto dos recursos das empresas mais eficaz e dot-la de maior segurana e disponibilidade da informao. As grandes empresas a nvel mundial migraram dos tradicionais sistemas de informao manuais para os modernos sistemas de informao informatizados. No desenvolvimento dos sistemas informticos aplicam-se tcnicas e mtodos com o objectivo de tornar mais compacto o aplicativo, aumentar o tempo de vida do mesmo e reduzir o custo do seu desenvolvimento. Neste projecto para a Gesto dos Recursos Humanos da Universidade Agostinho Neto, utilizaram-se tcnicas de programao orientada a objectos que permitem fazer uso das suas grandes funcionalidades como herana, polimorfismo e outras.

Carlos Jorge Lima David

ii

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Glossrios
API APPLICATION PROGRAM INTERFACE ASP ACTIVE SERVER PAGES CASE COMPUTER AIDED SOFTWARE ENGINEERING DBM DATABASE MANAGER DDBMS DISTRIBUITED DATABASE MANAGEMENT SYSTEM DDL DATA DEFINITION LANGUAGE DML DATA MANIPULATION LANGUAGE GUI GRAPHIC USER INTERFACE HTML HYPERTEXT MARCKUP LINGUAGE HTTP HYPERTEXT TRANSPORT PROTOCOL I-CASE INTEGRATED CASE JDBC - JAVA DATABASE CONNECTIVITY JDK JAVA DEVELOPMENT KIT JSD JACKSON SYSTEM DEVELOPMENT JSP JAVA SERVER PAGES LAN LOCAL AREA NETWORK LPOO LINGUAGEM DE PROGRAMAO ORIENTADA A OBJECTOS MERISE MTHODE DTUDE ET DE RALISATION INFORMATIQUE D SYSTMES DES ENTREPRISES ODBC OBJECT DATABASE CONNECTIVITY OMT OBJECT MODELLING TECHNIQUE OO ORIENTADO POR OBJECTO OOAD OBJECT ORIENTED ANALYSIS AND DESIGN OOM ORIENTATION OBJECT MERISE OOSE OBJECT ORIENTED SOFTWARE ENGINEERING PC PERSONAL COMPUTER RDBMS RELATIONAL DATABASE MANAGEMENT SYSTEM RH RECURSOS HUMANOS SADT STRUCTURED ANALYSIS AND DESIGNER TECHNIQUE SGBD SISTEMA DE GESTO DE BASES DE DADOS SMTP SIMPLE MAIL TRANSFER PROTOCOL SO SISTEMA OPERATIVO SQL STRUCTURED QUERY LANGUAGE SSADM STRUCTURED SYSTEM ANALYSIS AND DESIGN METHODOLOGY TCP/IP TRANSMISSION CONTROL PROTOCOL/INTERNET PROTOCOL UAN UNIVERSIDADE AGOSTINHO NETO UML UNIFIED MODELLING LANGUAGE UMP UNIFIED MODELING PROCESS URL UNIFIED RESOURCE LANGUAGE XML EXTENSIBLE MACKUP LANGUAGE WAN WIDE AREA NETWORK WWW WORLD WIDE WEB

Carlos Jorge Lima David

iii

Sistema Informtico para a Gesto de Recursos Humanos - UAN

ndice Analtico
ndices de Figuras.................................................................................................................................viii Capitulo 1 - Introduo............................................................................................................................1 1.1 Desenho da investigao..............................................................................................................1 1.1.1 - Problema...............................................................................................................................1 1.1.2 - Objecto.................................................................................................................................1 1.1.3 - Objectivo..............................................................................................................................1 1.1.4 - Campo de actuao...............................................................................................................1 1.1.5 - Tarefas da investigao........................................................................................................2 1.1.6 Resultado que se espera do projecto....................................................................................2 1.2 - Sistema de Gesto de Recursos Humanos...................................................................................2 1.3 - Descrio da Tese........................................................................................................................4 Capitulo 2 - Sistemas Informticos..........................................................................................................5 2.1 - Importncia dos Sistemas Informticos......................................................................................5 2.1.1 - Processos de Desenvolvimento de Software........................................................................7 2.1.1.1 - Modelo em Espiral .......................................................................................................7 2.1.1.2 - UMP .............................................................................................................................8 2.1.1.3 - Metodologias de Anlise de Sistemas...........................................................................8 2.1.1.4 - Metodologia Estruturada...............................................................................................8 2.1.1.5 - Metodologia Orientada por Objectos............................................................................9 UML (Unified Modeling Language)..................................................................................10 Objectivos da UML............................................................................................................11 Uso da UML......................................................................................................................11 Fases do Desenvolvimento de um Sistema em UML........................................................12 Partes que compe a UML.................................................................................................12 Tipos de Diagramas UML.................................................................................................13 Ferramentas CASE ................................................................................................................15 Tipo de Ferramentas CASE...............................................................................................16 2.2 - Arquitectura dos Sistemas Informticos....................................................................................17 2.2.1- Sistemas Distribudos..........................................................................................................17 Definio....................................................................................................................................17 Vantagens e Desvantagens........................................................................................................17 Desvantagens:............................................................................................................................18 Caractersticas dos Sistemas Distribudos.................................................................................18 2.2.2 - Base de Dados Distribuda.................................................................................................19 Objectivos dos Sistemas de Base de Dados Distribuda............................................................20 2.2.3 - Sistema de Gesto de Base de Dados (SGBD)...................................................................20 Principais Caractersticas de um SBDD ...................................................................................21 Classificao dos Sistemas Distribudos...................................................................................21 Armazenamento Distribudo de Dados......................................................................................22 Ferramentas Disponveis no Mercado ......................................................................................22 2.2.4 - Arquitecturas Cliente Servidor........................................................................................22 Categorias de Servidores...........................................................................................................24 Arquitectura Cliente Servidor de Duas Camadas......................................................................26 Arquitectura Cliente Servidor de Trs Camadas.......................................................................27 Middleware................................................................................................................................28 Objectos Distribudos ...................................................................................................................29
Carlos Jorge Lima David

iv

Sistema Informtico para a Gesto de Recursos Humanos - UAN

2.3 - Requisitos dos Sistemas Informticos.......................................................................................29 2.4 - Tecnologias Utilizadas nas Camadas........................................................................................32 Lgica de Apresentao (Camada de apresentao)......................................................................32 Lgica do Negcio (Camada de negcio).....................................................................................33 Linguagem de Programao Java..............................................................................................33 Lgica de Acesso aos Dados.........................................................................................................38 Objectivo do Uso Destas Tecnologias...........................................................................................38 Capitulo 3 - Modelagem do Negcio (SIGRH-UAN)...........................................................................40 3.1 - Viso Geral do Sistema de Informao.....................................................................................40 3.1.1- Descrio das Actividades dos DRHs-UAN.......................................................................42 3.1.2 - Sistemas Existentes na UAN..............................................................................................43 3.1.2.1 - Anlise dos Problemas................................................................................................43 3.1.2.2 - Objectivo do Sistema (Soluo Proposta)...................................................................44 3.1.3 - Anlise Econmica.............................................................................................................45 3.1.3.1 - Anlise da Viabilidade do Projecto.............................................................................47 3.1.4 - Planificao do Projecto e Estimativa de Custo.................................................................47 Projectos que Dependem deste Projecto....................................................................................47 Projectos do qual este projecto depende....................................................................................47 Tarefas e Tempos Estimados.....................................................................................................47 Grafos de PERT ........................................................................................................................48 Grafos de PERT Para Desenvolvimento dos Componentes .................................................48 Grafos de PERT Para Implementao do Sistema.................................................................48 3.2 - mbito do Sistema....................................................................................................................49 3.3 - Actores do Sistema....................................................................................................................51 3.3.1 - Use Cases dos Actores.......................................................................................................51 3.3.2 - Descrio dos Uses Cases do Sistema................................................................................53 Use Case. Controle de Acesso.......................................................................................................54 Use Case. Registar Funcionrios ..................................................................................................54 Use Case. Registar Movimentos....................................................................................................55 Use Case. Registar Avaliaes......................................................................................................55 Use Case. Registar Ausncias........................................................................................................56 Use Case. Alterar Funcionrios.....................................................................................................57 Use Case. Alterar Movimentos......................................................................................................57 Use Case. Alterar Ausncias..........................................................................................................58 Use Case. Alterar Avaliaes........................................................................................................59 3.4 - Diagramas de Use Cases do Sistema.........................................................................................60 3.4.1 - Diagramas de Use Cases do Subsistema Central..............................................................60 3.4.2 - Diagramas de Use Cases do Subsistema Unidade Orgnica..............................................62 3.4.1 - Diagramas de Use Cases do Subsistema Provincial...........................................................64 Capitulo 4 - Desenho do Sistema...........................................................................................................66 4.1 - Camada de Apresentao e Negcio.........................................................................................66 4.1.1 - Diagramas da Interface do Sistema....................................................................................66 4.1.1.1 - Diagrama da Interface do Administrador....................................................................68 4.1.1.2 - Diagrama da Interface do Utilizador Avanado .........................................................69 4.1.1.3 - Diagrama da Interface do Utilizador Normal..............................................................69 4.1.2 - Diagramas de Sequncias...................................................................................................70 4.1.2.1 - Diagrama de Sequncia do Use Case Controle de Acesso..........................................70 4.1.2.2 - Diagrama de Sequncia do Use Case Registar Dados Gerais (Funcionrios)............72 4.1.2.3 - Diagrama de Sequncia do Use Case Registar Dados Acadmicos (Funcionrios)...74 4.1.2.4 - Diagrama de Sequncia do Use Case Registar Dados Laborais (Funcionrios).........76
Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.2.5 - Diagrama de Sequncia do Use Case Registar Dados Adicionais (Funcionrios)......78 4.1.2.6 - Diagrama de Sequncia do Use Case Registar Movimentos .....................................80 4.1.2.7 - Diagrama de Sequncia do Use Case Registar Ausncias .........................................82 4.1.2.8 - Diagrama de Sequncia do Use Case Registar Avaliaes ........................................84 4.1.3 - Diagramas de Colaborao.................................................................................................86 4.1.3.1 - Diagrama de colaborao do Use Cases Registar Dados Gerais dos Funcionrios....87 4.1.3.2 Diagrama de colaborao do Use Cases Registar Dados Acadmicos (Funcionrio)88 4.1.3.3 - Diagrama de colaborao do Use Cases Registar Dados Laborais (Funcionrio) .....90 4.1.3.4 - Diagrama de colaborao do Use Cases Registar Dados Adicionais (Funcionrio) ..91 4.1.3.5 - Diagrama de colaborao do Use Cases Registar Movimentos..................................93 4.1.3.6 - Diagrama de colaborao do Use Cases Registar Ausncias......................................94 4.1.3.7 - Diagrama de colaborao do Use Cases Registar Avaliaes.....................................96 4.1.4 - Diagramas de Actividades .................................................................................................98 4.1.4.1 - Diagrama de actividades do Use Case Registar Dados Gerais...................................98 4.1.4.2 Diagrama de actividades do Use Case Registar Dados Acadmicos........................100 4.1.4.3 - Diagrama de actividades do Use Case Registar Dados Laborais..............................102 4.1.4.4 - Diagrama de actividades do Use Case Registar Dados Adicionais...........................104 4.1.4.5 - Diagrama de actividades do Use Case Registar Movimentos...................................106 4.1.4.6 - Diagrama de actividades do Use Case Registar Avaliaes.....................................108 4.1.4.7 - Diagrama de actividades do Use Case Registar Ausncias.......................................110 4.1.5 - Diagramas de Classes ......................................................................................................112 4.2 - Camada de Persistncia...........................................................................................................117 4.2.1 - Diagrama de Classes........................................................................................................118 4.3 - Modelo Lgico dos dados.......................................................................................................119 Capitulo 5 - Implementao e Instalao do Sistema..........................................................................121 5.1 - Implementao do Sistema......................................................................................................121 5.1.1 - Opes Tcnicas...............................................................................................................121 5.1.2 - Segurana do SIGRH-UAN.............................................................................................121 5.1.3 - Diagramas de Componentes.............................................................................................122 5.1.3.1 - Diagrama de Componentes do Sistema SIGRH-UAN..............................................122 5.1.3.2 - Diagrama de Componentes da Gesto das Unidades Orgnicas ..............................123 5.1.3.3 - Diagrama de Componentes da Gesto Reitoria..........................................................124 5.1.3.4 - Diagrama de Componentes da Gesto Provincial.....................................................125 5.2 - Instalao.................................................................................................................................126 5.2.1 - Requisitos para a instalao do sistema...........................................................................127 5.2.1.1 - Requisitos de Hardware.............................................................................................127 5.2.1.1.1 - Requisitos Mnimos do Cliente .........................................................................127 5.2.1.1.2 - Requisitos Mnimos do Servidor........................................................................127 5.2.1.2 - Requisitos de Software..............................................................................................127 5.2.1.2.1 - Requisitos Mnimos do Cliente .........................................................................127 5.2.1.2.2 - Requisitos Mnimos do Servidor........................................................................127 5.2.3 - Instalao do Sistema.......................................................................................................128 5.2.3.1 - Instalao da Base de Dados.....................................................................................128 5.2.3.2 - Instalao do Portal do SIGRH-UAN.......................................................................128 Capitulo 6 - Perspectivas Futuras, Concluses e Recomendaes......................................................129 6.1 - Perspectivas Futuras................................................................................................................129 6.2 - Concluses...............................................................................................................................129 6.3 - Recomendaes.......................................................................................................................130 Bibliografia .........................................................................................................................................132 Anexos.................................................................................................................................................133
Carlos Jorge Lima David

vi

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexo A - Base de Dados (Modelo Fsico dos Dados)...................................................................133 Anexo B - Interface com o utilizador..............................................................................................140 Anexo C - Script de Criao da Base de Dados..............................................................................157 Anexo D - Configurao das Variveis de ambiente.......................................................................171 Anexo E - Componentes dos Diagramas de UML..........................................................................172

Carlos Jorge Lima David

vii

Sistema Informtico para a Gesto de Recursos Humanos - UAN

ndices de Figuras
Figura 2.1 - Modelo de anlise em espiral ...............................................................................................7 Figura 2.2 - Esquema de um servidor de arquivos..................................................................................24 Figura 2.3 - Esquema de um servidor de Base de Dados........................................................................24 Figura 2.4 - Esquema de um servidor de Transaces............................................................................25 Figura 2.5 - Esquema de um servidor de Software de Grupo.................................................................25 Figura 2.6 Esquema de um servidor de Objectos...............................................................................26 Figura 2.7 Esquema da Arquitectura Cliente Servidor de Duas Camadas.........................................27 Figura 2.8 Esquema Cliente Servidor de Trs Camadas......................................................................28 Figura 2.9 - Integrando base de dados com JDBC .................................................................................33 Figura 2.10 Exemplo de funcionamento das aplicaes WEB............................................................34 Figura 2.11 - Interaco entre um cliente, SERVLET e EJB.................................................................36 Figura 3.1 Estrutura Organizacional da UAN......................................................................................41 Figura 3.2 Estrutura do SIGRH-UAN.................................................................................................44 Figura 3.3 - Actividades e tempos estimados.........................................................................................47 Figura 3.4 - Grafo de PERT para o desenvolvimento dos componentes................................................48 Figura 3.5 - Grafo de PERT para a implementao do sistema..............................................................48 Figura 3.6 Organigrama do SIGRH-UAN...........................................................................................49 Figura 3.7 Diagrama de pacotes do SIGRH-UAN...............................................................................50 Figura 3.8 Diagrama de Use Case do Subsistema Central..................................................................60 Figura 3.9 Diagrama de Use Case do Subsistema Unidade Orgnica.................................................62 Figura 3.10 Diagrama de Use Case do Subsistema Unidade Provincial.............................................64 Figura 4.1 Diagrama da Interface do Sistema......................................................................................66 Figura 4.2 Diagrama da Interface do Administrador...........................................................................68 Figura 4.3 Diagrama da Interface do Utilizador Avanado.................................................................69 Figura 4.4 Diagrama da Interface do Utilizador Normal.....................................................................69 Figura 4.5 Diagrama de Sequencia do Use Cases Controlo de Acesso...............................................71 Figura 4.5 Diagrama de Sequencia do Use Cases Registar Dados Gerais...........................................73 Figura 4.6 Diagrama de Sequencia do Use Cases Registar Dados Acadmicos.................................75 Figura 4.7 Diagrama de Sequencia do Use Cases Registar Dados Laborais.......................................77 Figura 4.8 Diagrama de Sequencia do Use Cases Registar Dados Adicionais....................................79 Figura 4.9 Diagrama de Sequencia do Use Cases Registar Movimentos............................................80 Figura 4.10 Diagrama de Sequencia do Use Cases Ausncias............................................................82 Figura 4.11 Diagrama de Sequencia do Use Cases Registar Avaliaes............................................84 Figura 4.12 Diagrama de Colaborao do Use Cases Registar Dados Gerais dos Funcionrios........87 Figura 4.13 Diagrama de Colaborao do Use Cases Registar Dados Acadmicos ..........................89 Figura 4.14 Diagrama de Colaborao do Use Cases Registar Dados Laborais ................................90 Figura 4.15 Diagrama de Colaborao do Use Cases Registar Dados Adicionais..............................92 Figura 4.16 Diagrama de Colaborao do Use Cases Registar Movimentos......................................93 Figura 4.17 Diagrama de Colaborao do Use Cases Registar Ausncias..........................................95 Figura 4.18 Diagrama de Colaborao do Use Cases Registar Avaliaes.........................................96 Figura 4.19 Diagrama de Actividades do Use Cases Registar Dados Gerais......................................98 Figura 4.20 Diagrama de Actividades do Use Cases Registar Dados Acadmicos...........................100 Figura 4.21 Diagrama de Actividades do Use Cases Registar Dados Laborais................................102 Figura 4.22 Diagrama de Actividades do Use Cases Registar Dados Adicionais.............................104 Figura 4.23 Diagrama de Actividades do Use Cases Registar Movimentos.....................................106 Figura 4.24 Diagrama de Actividades do Use Cases Registar Avaliaes.........................................108

Carlos Jorge Lima David

viii

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 4.25 Diagrama de Actividades do Use Cases Registar Ausncias.........................................110 Figura 4.26 Diagrama de Classes do Sistema na Camada de Negcio..............................................112 Figura 4.27 Diagrama de Classes do Sistema na Camada de Acesso aos Dados..............................118 Figura 5.1 Diagrama de Componentes do Sistema............................................................................122 Figura 5.2 Diagrama de Componentes do Subsistema Unidades Orgnicas.....................................123 Figura 5.3 Diagrama de Componentes do Subsistema Reitoria........................................................124 Figura 5.4 Diagrama de Componentes do Subsistema Provincial.....................................................125 Figura 5.5 Esquema da Instalao do sistema....................................................................................126

Carlos Jorge Lima David

ix

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 1 - Introduo
frequente neste sculo (XXI) o uso de solues em tecnologias de informao para que as empresas estejam mais organizadas, produtivas, competitivas, que haja um maior controlo e para que os trabalhadores estejam melhor acomodados e que trabalhem com maior rapidez. O desenvolvimento de softwares veio trazer solues eficazes e rpidas para tarefas que se tornavam difceis paras os homens nas diversas reas em que esto inseridos os recursos humanos. A Universidade Agostinho Neto a nica Universidade Pblica em Angola, comporta Faculdades, Institutos Superiores e os seus respectivos Ncleos. H ento a necessidade de se fazer um controlo eficiente da informao concernente aos funcionrios associados mesma, isto , funcionrios das Faculdades, Institutos Superiores, Ncleos e Reitoria da referida Universidade. Esta tarefa realizada pelos departamentos de recursos humanos (DRH) de cada Faculdade, Instituto, Ncleo e Reitoria. Visto ser bastante elevado o volume de informaes manipulada nestes departamentos deve-se fazer a informatizao da informao para melhorar a gesto dos referidos departamentos, aumentando rapidez no manuseamento dos dados e disponibilidade dos dados, para que possam ser consultados a qualquer momento.

1.1 Desenho da investigao


1.1.1 - Problema
Na UAN existe um sistema de informao da UAN, assim como existe um sistema de informao de recursos humanos da UAN. Estes sistemas so baseados em sistemas tradicionais baseados em arquivos de papis. Os respectivos sistemas so incompletos e imperfeitos. Uma maior descrio dos problemas decorrentes destes sistemas tradicionais existentes na UAN ser descrita na seco 3.1.2.1.

1.1.2 - Objecto
O objecto investigado o sistema de informao da Universidade Agostinho Neto.

1.1.3 - Objectivo
Esta tese tem como objectivo o desenho e implementao de um sistema informtico para a Gesto de Recursos Humanos da Universidade Agostinho Neto (SIGRH-UAN) o que permitir integrar toda actividade de gesto de recursos humanos realizada nos DRHs das Unidades Orgnicas e Reitoria da UAN, num s sistema distribudo.

1.1.4 - Campo de actuao


Este projecto cinge-se ao desenho e implementao do Sistema de Informao de Recursos Humanos da UAN que uma componente do Sistema de Informao da Universidade Agostinho Neto.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

1.1.5 - Tarefas da investigao


As seguintes tarefas foram efectuadas para o desenvolvimento do projecto: Anlise do sistema de informao da UAN Anlise do sistema de informao dos recursos humanos da UAN Anlise do sistema informtico proposto Desenho do SIGRH-UAN Implementao do SIGRH-UAN Instalao do SIGRH-UAN Testes do SIGRH-UAN

1.1.6 Resultado que se espera do projecto


Este projecto ter dois resultados finais, um terico e um prtico. O resultado terico o desenho do sistema resultante da anlise feita ao sistema de informao de gesto de recursos humanos. O resultado prtico uma primeira implementao do sistema que culminar com um software. Este software ser a ferramenta que permitir fazer a gesto informatizada do sistema de informao dos recursos humanos da UAN disponibilizando as funes mnimas para o funcionamento do mesmo.

1.2 - Sistema de Gesto de Recursos Humanos


O Sistema de Gesto de Recursos Humanos um sistema completo integrado para dar suporte ao planeamento e controlo das actividades do pessoal vinculado a uma determinada instituio. Permite gerir os recursos humanos de uma forma mais eficaz e rpida. O trabalho humano em organizaes tem merecido a ateno de muitos estudiosos, tentando compreender os factores que influenciam o desempenho das pessoas no ambiente de trabalho. Isto porque tudo o que uma organizao capaz de realizar depende, em ltima anlise, das pessoas com que conta. Planeamento, marketing, direco, controle, arrecadao de fundos e as actividades esto directamente relacionadas com conhecimentos, atitudes e habilidades que as pessoas trazem e desenvolvem ao longo de sua vida pessoal e profissional. Isto vale para todas as organizaes, independentemente da actividade a que se dedicam. A peculiaridade est em dar aos recursos humanos um tratamento adequado aos propsitos da organizao e aos valores que ela expressa. Por isso, no raro encontrarmos autores que sustentam que o primeiro pblico a ser considerado por uma organizao o pblico interno. Em linhas gerais, uma organizao no ser capaz de demonstrar respeito por seus consumidores se no praticar este mesmo princpio internamente, at porque so os recursos humanos que possuem contacto directo com o pblico externo. No caso das organizaes sem fins lucrativos, h algumas caractersticas que merecem destaque para se pensar na utilizao e no desenvolvimento de recursos humanos: a adeso de seus colaboradores causa da organizao normalmente grande, no sendo raro que se identifiquem como militantes da causa. Neste sentido, a "militncia" tem suas vantagens: a dedicao dos colaboradores ao trabalho se d na medida do seu envolvimento emocional, poltico e ideolgico com as propostas da organizao. No entanto, pode ter seu lado negativo: nem sempre uma pessoa, por mais dedicada que seja, a mais qualificada a desenvolver certas actividades, tornando problemtico direccionar-lhe o trabalho de maneira mais produtiva.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Mais recentemente, a necessidade de compatibilizar estas duas dinmicas militncia e profissionalismo tem-se imposto s organizaes sem fins lucrativos, uma vez que as exigncias do ambiente apontam no sentido de dot-las de instrumentos mais precisos de gesto, de transparncia junto sociedade e de maior preciso quanto aos resultados alcanados. Para isto, as organizaes podem valer-se dos conhecimentos j existentes sobre o desenvolvimento dos recursos humanos e da sua prpria capacidade em adaptar estes conhecimentos s suas caractersticas individuais, produzindo uma poltica de recursos humanos adequada. Tal poltica prev, basicamente, os critrios a utilizar na seleco, contratao, desenvolvimento, incentivo, avaliao e demisso de pessoas por parte de uma organizao. A vantagem de existir uma poltica que ela explicita, para todos os membros da organizao, o que se espera de cada pessoa, seja ela ocupante de cargo tcnico, administrativo ou de direco. Desta forma, cada um tem a oportunidade de saber os seus direitos e deveres, o que esperado como contribuio individual, por que razes o seu desempenho est sendo avaliado positiva ou negativamente, formas de superar eventuais dificuldades e assim por diante. O importante, ento, que haja uma poltica de recursos humanos e no que esta poltica esteja difusa, porquanto s existente na cabea de uma pessoa ou de um grupo restrito de pessoas. Conforme mencionado, uma poltica diz respeito a critrios. Que critrios sero utilizados pela organizao como um todo e no somente por alguns quando se tratar de seleccionar, contratar, avaliar, desenvolver e demitir pessoas? De que forma estes critrios expressam os valores que a organizao defende? Ao mesmo tempo, como mant-los em nveis que possibilitem realiz-los e no inviabilizem o funcionamento da organizao? Como se pode observar, uma poltica de recursos humanos algo susceptvel de ser realizado por uma organizao do terceiro sector, seja qual for seu o mbito de actuao, tamanho ou quantidade de recursos materiais disponveis. uma prioridade para as instituies estatais ou privadas terem uma boa gesto dos seus recursos. Sendo o homem o maior recurso de qualquer instituio, importante um bom plano de gesto deste recurso humano. Vrios critrios de gesto de recursos humanos so usados pelas empresas e organizaes bem como instituies do Estado para melhorar o controlo do rendimento dos seus funcionrios. A revoluo do mundo da informtica veio abrir uma grande porta para o aumento da eficincia no controlo destas qualidades. O desenvolvimento de sistemas informticos para gesto dos recursos associados s instituies veio viabilizar todo o processo organizativo, processo de controlo de actividades humanas realizadas na respectiva instituio, o que permite aumentar o desempenho das instituies tendo as pessoas certas nos stios certos no momento certo. O sistema de gesto de recursos humanos um subsistema do sistema de informao da UAN e um dos sistemas de suporte do sistema de informao da UAN. O sistema de gesto de recursos humanos tem como papel fundamental gerir os recursos humanos que daro suporte ao sistema geral de informao. Sem este sistema (SGRH) o sistema de informao da UAN no funcionar de forma perfeita e eficaz, pois necessrio o homem para tratar das informaes concernentes a UAN e necessrio ainda uma boa gesto destes homens. Dentro do sistema de informao existe no s o sistema de gesto de recursos humanos mas sim outros sistemas. O sistema de gesto financeira um dos subsistemas do sistema de informao da UAN. H uma relao entre o sistema de gesto de recursos humanos e o sistema de gesto financeira da UAN. Os trabalhadores da UAN tm um salrio mensal e podem ser agraciados com subsdios sempre que possvel, estes dados no momento so processados na rea de recursos humanos enviados para a rea financeira e posteriormente devolvidos a rea de recursos humanos. Estes dados so passados em papis para as respectivas reas pois o sistema de informao existente ainda o tradicional.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

1.3 - Descrio da Tese


Esta tese comporta os seguintes captulos: Capitulo 1 Objectivos da Tese, aspectos gerais relacionados com a gesto dos Recursos Humanos e viso geral da Tese. Capitulo 2 Abordagem sobre os sistemas informticos nas instituies, importncia dos sistemas informticos, arquitectura dos sistemas informticos, requisitos dos sistemas informticos e tecnologias usadas em cada camada do sistema. Capitulo 3 Estudo preliminar do sistema no sentido de se fazer um enquadramento concernente as funcionalidades do mesmo e a descrio dos principais casos de uso. Capitulo 4 Neste captulo faz-se o desenho do sistema. Neste captulo descrito o desenho do sistema seguindo a estrutura em duas camadas. Logo, foram descritos em seces o desenho das camadas de apresentao e negcio e a camada de persistncia, onde fez-se a descrio dos diagramas associados aos casos de uso que fazem parte das respectivas camadas. A camada de apresentao est relacionada com a interface do sistema. Todos os formulrios associados a interface que estar disponvel para o utilizador so analisados e criados na camada de apresentao. A camada de negcio o kernel (corao) do sistema, nesta camada so descritos todos os procedimentos que fazem parte das regras de gesto do sistema. Na camada de persistncia faz-se a descrio das entidades (tabelas) associadas ao sistema. Capitulo 5 Implementao e instalao do sistema. Capitulo 6 Descrio das Perspectivas Futuras, Concluses e Recomendaes da Tese.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 2 - Sistemas Informticos


2.1 - Importncia dos Sistemas Informticos
Um dos grandes desafios dos Sistemas Informticos assegurar a qualidade e a agilidade da informao, imprescindvel para as corporaes e seus gestores. A informao tudo na administrao! Todos confirmam e concordam com essa assertiva. No entanto, unnime tambm o conjunto de caractersticas necessrias para que esse fundamental instrumento de trabalho atenda realmente as necessidades dos gestores: Agilidade Disponvel no tempo certo. Confiabilidade Coesa, correcta. Certeira, isto , gil, fivel e para quem ela realmente ser til. A computao corporativa tem uma linha evolutiva particular, tendo como uma das suas principais metas, possibilitar que a informao tenha esse conjunto de caractersticas, criando novos e melhores instrumentos de apoio tomada de deciso. Uma prova disso a tecnologia ERP (Enterprise Resource Planning), que optimiza o trfego de dados dentro da corporao (on-line), minimiza a manipulao e, como consequncia, assegura uma maior fiabilidade para as informaes. Apesar da sua vulgarizao recente, o conceito dos sistemas integrados no novidade, ele sempre existiu, mesmo quando a informatizao era um sonho distante, afinal, os Sistemas de Informao no dependem da informtica ou tecnologia para serem elaborados; eles dependem de conhecimentos administrativos e operacionais. Houve uma poca em que a informtica era um privilgio para poucos, os equipamentos eram muito caros, havia pouca disponibilidade de mo-deobra e sua instalao exigia grandes investimentos em infra-estrutura. Mas os Sistemas de Informao sempre existiram, de uma maneira ou outra, os dados eram processados e transformados em informaes, ainda que de uma forma muito mais trabalhosa. A principal vantagem proporcionada pela tecnologia aos Sistemas de Informao a capacidade de processar um gigantesco nmero de dados simultaneamente, tornando a disponibilizao das informaes requeridas, praticamente on-line. Mas de pouco adianta esse potencial se os sistemas (rotinas, processos, mtodos) no estiverem muito bem coordenados e analisados. Informatizar sistemas ruins traz novos problemas e nenhuma soluo, alm de nublar as possveis causas dessas falhas. Essa situao infelizmente bastante comum nas empresas, pois existe uma grande confuso sobre anlise de sistemas operacionais/corporativos e a programao desses sistemas. A atribuio do desenvolvimento dos sistemas da corporao e sua anlise uma tarefa que cabe aos administradores, cabendo rea tcnica, apenas a automatizao/informatizao dos sistemas apresentados. Os distribuidores de ERP (SAP, Microsiga, RM Sistemas, Datasul, etc) apresentam essa caracterstica de diferenciao de tarefas e atribuies, o que garante o sucesso da implementao do sistema. O computador no pensa, apenas realiza as tarefas que lhe so programadas. O desenvolvimento dos Sistemas de Informao, bem como sua anlise, devem ser feitos de maneira independente. Uma vez desenvolvidos os processos, resta apenas transmiti-los mquina. A eficincia dos sistemas no medida pela informatizao, mas pela qualidade e eficincia dos mtodos, assegurando a informao desejada, fivel e no tempo certo. O entendimento dessa diferena (desenvolvimento de Sistema de Informao versus Programao), proporciona a criao de processos/rotinas mais adequados, maior segurana, maior

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

controlo, alm de possibilitar empresa, uma anlise clara dos benefcios que a informatizao pode trazer. Os Sistemas de Informao so peas fundamentais para as empresas, no apenas na elaborao de relatrios, mas fazem parte de todos os departamentos e actividades da companhia, desde o simples controlo at a confeco de planos estratgicos complexos. Tudo o que acontece, todo o processo regido por um sistema, que pode ser ou no informatizado. Mais uma vez, deve ser considerada a importncia do administrador nesse processo, que nada mais, nada menos que vital para a corporao. Mais do que um modismo, a tecnologia deve ser compreendida como uma ferramenta, um dos diversos mtodos para assegurar qualidade, competitividade, reduo de custos e, principalmente, satisfazer os desejos e anseios dos clientes, que so a verdadeira razo de ser das empresas. Informatizar para que? Mesmo depois de tanto tempo, a informatizao ainda vista como onerosa e at mesmo como desnecessria, ao invs de uma soluo, o que se imagina que com ela vem um problema que antes no existia. No incio, os chamados CPDs (Centro de Processamento de Dados) eram verdadeiras fortalezas inacessveis e desconhecidas. Como as empresas passaram cada vez mais a contar com a tecnologia para suas actividades (e muitas vezes, tornando-se totalmente dependentes, como o caso dos bancos), foi necessrio abrir as portas desses centros, entend-los e integra-los dentro dos objectivos estratgicos/administrativos das corporaes, a informtica finalmente entendida como uma ferramenta, e no mais como uma rea. A evoluo administrativa, catalizada pela globalizao e pela prpria tecnologia, exigiu o desenvolvimento de solues de informatizao e informao, orientadas a atender as expectativas dos planos estratgicos das corporaes, estabelecendo o caminho a ser seguido. O CPD (agora chamado TI Tecnologia da Informao), precisa assegurar o bom funcionamento dos Sistemas de Informao da empresa, buscando solues e oportunidades para o objectivo da corporao, ou seja, para que a misso seja verdadeiramente alcanada. A disseminao dos sistemas informatizados, bem como a prpria evoluo do hardware (computadores, impressoras, monitores), proporcionou uma significativa reduo em seus valores, e diferentemente do que se imagina, informatizar nem sempre caro, muito pelo contrrio, os benefcios de um sistema bem estruturado e eficiente, podem at mesmo aumentar a receita da empresa. importante, porm, compreender que nem sempre esse investimento trar receita, em alguns casos ele evitar sua reduo, desperdcio ou perdas. As principais vantagens agregadas pela tecnologia foram: Capacidade de manipular uma enorme quantidade de dados simultaneamente (Sistemas de Informao e Controle); Preciso, velocidade, menor desperdcio e reduo de custo (Automao de Tarefas) e com o advento da internet, ampliou-se os mercados consumidores ao tamanho atingido pela grande rede. Transformar toda a tecnologia que est disponvel em oportunidades o grande desafio, assim como compreender exactamente para que a informatizao desejada. Assegurar que o processo, suas facilitaes, vantagens e principalmente a sua continuidade em perfeita harmonia passo essencial para a obteno de xito no processo de informatizao. Muitas vezes, se descobre que a modernizao muito mais acessvel do que se imagina. Infelizmente, por

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

inadequao do processo, muitas empresas acabam tendo experincias ruins com a tecnologia, prejuzos e muito mais desordem do que melhorias. Para que isso seja evitado, importantssimo que os Sistemas de Informao da empresa estejam adequados, funcionais. Num futuro prximo, com a presena cada vez mais constante de servios de hosting (hospedagem de sistemas), provvel que a informatizao esteja to acessvel e to presente nas empresas quanto a energia elctrica. Um nmero cada vez maior de empresas est a aderir a esse servio, que possibilita acima de tudo uma reduo dramtica nos custos inerentes infra-estrutura de TI na empresa. Uma boa assessoria nesse processo garante que a empresa colha os benefcios da tecnologia, fazendo dela uma aliada e gerando novas oportunidades corporao. A tecnologia no faz milagres, mas um projecto bem estruturado pode sim, assegurar vantagens competitivas importantes e baixo custo: itens necessrios empresa, principalmente no cenrio de intensa competio e modificaes constantes em que estamos inseridos.

2.1.1 - Processos de Desenvolvimento de Software


2.1.1.1 - Modelo em Espiral Este modelo tem a caracterstica de ser iterativo e incremental, por isso tambm conhecido como modelo iterativo incremental. A ideia de base fornecer o mais rapidamente possvel um prottipo execuvel que permite uma validao concreta e no s a partir da documentao. Com esta ideia encoraja-se a comunicao entre todos os intervenientes de modo a produzir sistemas finais mais robustos e com qualidade superior [5]. A noo de processo iterativo corresponde ideia de melhorar pouco-a-pouco o sistema, enquanto a noo de processo incremental corresponde ideia de aumentar pouco-a-pouco o software. Assim, numa primeira iterao deve-se identificar a viso global e determinar a viabilidade econmica do sistema, efectuar a maior parte da anlise dos requisitos e um pouco de desenho e de implementao. Numa segunda iterao, deve-se concluir a anlise, fazer parte significativa do desenho e um pouco mais de implementao e continuar assim sucessivamente at chegar ao produto final.

Figura 2.1 - Modelo de anlise em espiral

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

2.1.1.2 - UMP O Unified Modeling Process (UMP) uma abordagem iterativa e incremental que sugere uma utilizao efectiva da UML. Este processo pressupe que um projecto seja estruturado numa dimenso temporal e numa dimenso processual [6]. Na dimenso temporal so identificadas 4 fases: Incio. Elaborao. Construo. Trnsito. Na dimenso de processos so contempladas diversas actividades tcnicas: Anlise e modelao do negcio. Levantamento de requisitos. Anlise. Desenho. Programao teste. Instalao. 2.1.1.3 - Metodologias de Anlise de Sistemas A anlise de sistemas consiste nos mtodos e tcnicas de investigao e especificao da soluo de problemas, a partir dos requisitos levantados, para criao e implementao de software em algum meio que o suporte [1]. Na fase de anlise deve-se descobrir o que que o sistema dever fazer e determinar-se o conjunto de requisitos necessrios para a implementao do sistema. Descobrir os requisitos do sistema, se o sistema ainda no existe, algo de muita criatividade e investigao, e se j existir, devese inspeccionar todas as reas envolventes ao sistema. Existem dois tipos de metodologia de anlises que so [5]: Metodologia Estruturada. Metodologia Orientada por Objecto. 2.1.1.4 - Metodologia Estruturada A metodologia estruturada est essencialmente orientada segundo duas abordagens: A Anlise Funcional Orientada para a decomposio funcional do sistema e a identificao dos respectivos processos; A Anlise Orgnica (Anlise Essencial) centrada nos conceitos e nos dados das organizaes.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anlise Funcional Na anlise funcional, funes, algoritmos e actividades constituem a preocupao central do Engenheiro de Software, incidindo toda a anlise nas funcionalidades que o sistema deve realizar e numa fase posterior na definio da maneira que essas funcionalidades sero implementadas. Anlise Essencial Na anlise essencial, a ateno concentra-se nos dados, colocando os conceitos e as entidades manipuladas na rea de negcio como os mais importantes do desenvolvimento do sistema. Esta preocupao incide sobretudo na organizao e no agrupamento de dados comuns e na identificao de relao entre grupos de informao. A premissa bsica para o mtodo da anlise essencial descrever o sistema de maneira independente de restries tecnolgicas. Isto quer dizer que devemos considerar na concepo do modelo essencial a existncia de uma tecnologia perfeita. Devemos entender este aspecto como uma abstraco em que se supe uma tecnologia ideal, sem limitaes, onde: Os custos, consumo e desgaste dos equipamentos so zero. A capacidade de armazenamento de dados do sistema infinita. A velocidade dos processadores infinita. O tempo de acesso a dados instantneo. No ocorrem falhas. Exemplo de Metodologias de Anlise Estruturadas SADT (Structured Analysis and Design Technique) SSADM (Structured System Analysis and Design Methodology) Yourdon System Method JSD (Jackson System Development) STRADIS MERISE (Mthode dtude et de Ralisation Informatique ds Systmes des Entreprise) 2.1.1.5 - Metodologia Orientada por Objectos As metodologias orientadas por objectos tentam reproduzir a forma como o ser humano se apercebe e expressa a realidade que o rodeia e como classifica e subdivide o mundo em objectos com base nas diferenas e semelhanas existentes ao nvel das caractersticas e comportamentos dos mesmos objectos. As tcnicas orientadas por objectos identificam e definem cada objecto de modo a reutiliz-lo da mesma forma que o humano acumula conhecimentos com base no previamente adquirido [5]. Nas abordagens orientadas por objectos as perspectivas de modelao dos sistemas mudam, uma vez que o mesmo conceito da base utilizado ao longo de todas as fases do processo, promovendo a reutilizao e o encapsulamento da informao e facilitando a manuteno. Assim, tenta-se ter uma viso do mundo em termos de objectos e no segundo uma perspectiva funcional.

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Exemplo de Metodologias de Anlise Orientada por Objectos As principais metodologias so as seguintes [5]: Booch OMT (Object Modelling Technique) OOSE (Object Oriented Software Engeneering) OOAD (Object Oriented Analysis and Design) Wirfs-Brock OOM (Orientation Object Merise) UML (Unified Modelling Language) Booch O mtodo de Grady Booch para desenvolvimento orientado a objecto est disponvel em muitas verses. Booch definiu a noo de que um sistema analisado a partir de um nmero de vises, onde cada viso descrita por um nmero de modelos e diagramas. O Mtodo de Booch trazia uma simbologia complexa de ser desenhada mo, continha tambm o processo pelo qual sistemas so analisados por macro e micro vises [14]. OMT Tcnica de Modelagem de Objectos (Object Modelling Technique) um mtodo desenvolvido pela GE (General Electric) onde James Rumbaugh trabalhava. O mtodo especialmente voltado para o teste dos modelos, baseado nas especificaes da anlise de requisitos do sistema. O modelo total do sistema baseado no mtodo OMT composto pela juno dos modelos de objectos, funcional e use-cases [14]. OOSE/Objectory Os mtodos OOSE e o Objectory foram desenvolvidos com base no mesmo ponto de vista formado por Ivar Jacobson. O mtodo OOSE a viso de Jacobson de um mtodo orientado a objectos, j o Objectory usado para a construo de sistemas to diversos quanto eles forem. Ambos os mtodos so baseados na utilizao de use-cases, que definem os requisitos iniciais do sistema, vistos por um actor externo. O mtodo Objectory tambm foi adaptado para a engenharia de negcios, onde usado para modelar e melhorar os processos envolvidos no funcionamento de empresas [14]. Cada um destes mtodos possui sua prpria notao (seus prprios smbolos para representar modelos orientado a objectos), processos (que actividades so desenvolvidas em diferentes partes do desenvolvimento), e ferramentas (as ferramentas CASE que suportam cada uma destas notaes e processos). Neste projecto usa-se a metodologia UML que uma abordagem Orientada por Objecto. UML (Unified Modeling Language) O grande problema do desenvolvimento de novos sistemas utilizando a orientao a objectos nas fases de anlise de requisitos, anlise de sistemas e design que no existe uma notao padronizada e realmente eficaz que abranja qualquer tipo de aplicao que se deseje. Cada simbologia existente possui seus prprios conceitos, grficos e terminologias, resultando numa grande confuso, especialmente para aqueles que querem utilizar a orientao a objectos no s sabendo para que lado aponta a seta de um relacionamento, mas sabendo criar modelos de qualidade para ajud-los a construir e manter sistemas cada vez mais eficazes. UML foi desenvolvida por Grady Booch, James Rumbaugh e Ivar Jacobson.

Carlos Jorge Lima David

10

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A UML uma tentativa de padronizar a modelagem orientada a objectos de uma forma que qualquer sistema, seja qual for o tipo, possa ser modelado correctamente, com consistncia, fcil de se comunicar com outras aplicaes, simples de ser actualizado e compreensvel [1]. A linguagem unificada de modelao UML (Unified Modeling Language) uma linguagem que utiliza uma notao-padro para especificar, construir, visualizar e documentar um sistema de informao orientado por objectos [1]. Objectivos da UML

A modelagem de sistemas (no apenas de software) usando os conceitos da orientao a objectos. Estabelecer uma unio fazendo com que mtodos conceituais sejam tambm executveis. Criar uma linguagem de modelagem utilizvel tanto pelo homem quanto pela mquina.

Uso da UML A UML usada no desenvolvimento dos mais diversos tipos de sistemas. Ela abrange sempre qualquer caracterstica de um sistema num dos seus diagramas e tambm aplicada em diferentes fases do desenvolvimento de um sistema, desde a especificao da anlise de requisitos at a finalizao com a fase de testes [14]. Aqui esto alguns tipos diferentes de sistemas com suas caractersticas mais comuns: Sistemas de Informao: Armazenar, pesquisar, editar e mostrar informaes para os utilizadores. Manter grandes quantidades de dados com relacionamentos complexos, que so guardados em bancos de dados relacionais ou orientados a objectos. Sistemas Tcnicos: Manter e controlar equipamentos tcnicos como de telecomunicaes, equipamentos militares ou processos industriais. Eles devem possuir interfaces especiais do equipamento e menos programao de software de que os sistemas de informao. Sistemas Tcnicos so geralmente sistemas real-time. Sistemas Real-time Integrados: Executados em simples peas de hardware integrados a telefones celulares, carros, alarmes etc. Estes sistemas implementam programao de baixo nvel e requerem suporte real-time. Sistemas Distribudos: Distribudos em mquinas onde os dados so transferidos facilmente de uma mquina para outra. Eles requerem mecanismos de comunicao sincronizados para garantir a integridade dos dados e geralmente so construdos em mecanismos de objectos como CORBA, COM/DCOM ou Java Beans/RMI. Sistemas de Software: Definem uma infra-estrutura tcnica que outros softwares utilizam. Sistemas Operacionais, bancos de dados, e aces de utilizadores que executam aces de baixo nvel no hardware, ao mesmo tempo que disponibilizam interfaces genricas de uso de outros softwares. Sistemas de Negcios: Descreve os objectivos, especificaes, as regras, e o actual trabalho desempenhado nos processos do negcio. importante perceber que a maioria dos sistemas no possui apenas uma destas caractersticas acima relacionadas, mas vrias delas ao mesmo tempo. Sistemas de informaes de hoje, por exemplo, podem ter tanto caractersticas distribudas como real-time. E a UML suporta modelagens de todos estes tipos de sistemas.

Carlos Jorge Lima David

11

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Fases do Desenvolvimento de um Sistema em UML Existem cinco fases no desenvolvimento de sistemas de software: anlise de requisitos, anlise, design (projecto), programao e testes. As fases existentes so as seguintes [14]: 1. Anlise de Requisitos Esta fase captura as intenes e necessidades dos utilizadores do sistema a ser desenvolvido atravs do uso de funes chamadas "use-cases". Atravs do desenvolvimento de "use-case", as entidades externas ao sistema (em UML chamados de "actores externos") que interagem e possuem interesse no sistema so modelados entre as funes que eles requerem. Funes estas chamadas de "use-cases". 2. Anlise A fase de anlise trata das primeiras abstraces (classes e objectos) e mecanismos que estaro presentes no domnio do problema. As classes so modeladas e ligadas atravs de relacionamentos com outras classes, e so descritas no Diagrama de Classe. 3. Desenho (Projecto) Na fase de desenho, o resultado da anlise expandido em solues tcnicas. Novas classes sero adicionadas para prover uma infra-estrutura tcnica. A interface do utilizador e de perifricos, gerenciamento de banco de dados, comunicao com outros sistemas, dentre outros. O desenho resulta no detalhe das especificaes para a fase de programao do sistema. 4. Programao Na fase de programao, as classes provenientes do desenho so convertidas para o cdigo da linguagem orientada a objectos escolhida. 5. Testes Um sistema normalmente rodado em testes de unidade, integrao, e aceitao. Os testes de unidade so para classes individuais ou grupos de classes e so geralmente testados pelo programador. Os testes de aceitao observam o sistema como uma " caixa preta" e verificam se o sistema est funcionando como o especificado nos primeiros diagramas de "use-cases". O sistema ser testado pelo utilizador final e verificar se os resultados mostrados esto realmente de acordo com as intenes do utilizador final. Partes que compe a UML Vises: As Vises mostram diferentes aspectos do sistema que est sendo modelado. A viso no um grfico, mas uma abstraco consistindo em uma srie de diagramas. Definindo um nmero de vises, cada uma mostrar aspectos particulares do sistema, dando enfoque a ngulos e nveis de abstraces diferentes e uma figura completa do sistema poder ser construda [14].

Carlos Jorge Lima David

12

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Modelos de Elementos: Os conceitos usados nos diagramas so modelos de elementos que representam definies comuns da orientao a objectos como as classes, objectos, mensagem, relacionamentos entre classes incluindo associaes, dependncias e heranas. Mecanismos Gerais: Os mecanismos gerais provem comentrios suplementares, informaes, ou semntica sobre os elementos que compem os modelos. Eles provem tambm mecanismos de extenso para adaptar ou estender a UML para um mtodo/processo, organizao ou utilizador especfico. Diagramas: Os diagramas so os grficos que descrevem o contedo em uma viso. UML possui nove tipos de diagramas que so usados em combinao para prover todas as vises do sistema. Tipos de Diagramas UML Os diagramas utilizados pela UML so compostos de nove tipos: Diagrama de use case, de classes, de objecto, de estado, de sequncia, de colaborao, de actividade, de componente e o de execuo. A modelagem esttica suportada pelo diagrama de classes e de objectos, que consiste nas classes e seus relacionamentos. As modelagens dinmicas so suportadas pelos diagramas de estado, sequncia, colaborao e actividade. E a modelagem funcional suportada pelos diagramas de componente e execuo. Os tipos de diagramas da UML so os seguintes [1]: Diagrama de use case A modelagem de um diagrama use case uma tcnica usada para descrever e definir os requisitos funcionais de um sistema. Eles so escritos em termos de: Actores Externos: Representam o papel de uma entidade externa ao sistema como um utilizador, um hardware, ou outro sistema que interage com o sistema modelado. Use cases: Representa uma sequncia de aces executadas pelo sistema e recebe do actor que lhe utiliza dados tangveis de um tipo ou formato j conhecido, e o valor de resposta da execuo de um use-case (contedo) tambm j de um tipo conhecido, tudo isso definido juntamente com o use-case atravs de texto de documentao. Um actor conectado a um ou mais use cases atravs de associaes. Diagrama de classes O diagrama de classes demonstra a estrutura esttica das classes de um sistema onde estas representam as entidades que so geridas pela aplicao modelada. Todos os relacionamentos so mostrados no diagrama de classes juntamente com as suas estruturas internas, que so os atributos e as operaes.

Carlos Jorge Lima David

13

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Diagrama de objectos O diagrama de objectos uma variao do diagrama de classes e utiliza quase a mesma notao. A diferena que o diagrama de objectos mostra os objectos que foram instanciados das classes. Os diagramas de objectos no so to importantes como os diagramas de classes, mas eles so muito teis para exemplificar diagramas complexos de classes ajudando muito na sua compreenso. Diagramas de objectos tambm so usados como parte dos diagramas de colaborao, onde a colaborao dinmica entre os objectos do sistema mostrada. Diagrama de estado Este diagrama mostra todos os estados possveis nos quais os objectos de uma certa classe podem se encontrar e mostra tambm quais so os eventos do sistema que provocam tais mudanas. Os diagramas de estado no so escritos para todas as classes de um sistema, mas apenas para aquelas que possuem um nmero definido de estados conhecidos e onde o comportamento das classes afectado e modificado pelos diferentes estados. Os diagramas de estado capturam o ciclo de vida dos objectos, subsistemas e sistemas. Eles mostram os estados que um objecto pode possuir e como os eventos (mensagens recebidas, timer, erros, e condies sendo satisfeitas) afectam estes estados com o passar do tempo. Diagrama de sequncia Um diagrama de sequncia mostra a colaborao dinmica entre os vrios objectos de um sistema. Mostra a interaco entre os objectos, alguma coisa que acontecer em um ponto especfico da execuo do sistema. O diagrama de sequncia consiste num nmero de objectos mostrado em linhas verticais. O decorrer do tempo visualizado observando-se o diagrama no sentido vertical de cima para baixo. Diagramas de sequncia possuem dois eixos: o eixo vertical, que mostra o tempo e o eixo horizontal que mostra os objectos envolvidos na sequncia de uma certa actividade. Diagrama de Colaborao Um diagrama de colaborao mostra de maneira semelhante ao diagrama de sequncia, a colaborao dinmica entre os objectos. Normalmente pode-se escolher entre utilizar o diagrama de colaborao e o diagrama de sequncia. O diagrama de colaborao desenhado como um diagrama de objecto. Diagrama de Actividade Diagramas de actividades capturam aces e seus resultados. O diagrama de actividades uma variao do diagrama de estado e possuem um propsito um pouco diferente do diagrama de estado, que o de capturar aces (trabalhos e a actividades que sero executados) e seus resultados em termos de mudanas de estados dos objectos. Um diagrama de actividade uma maneira alternativa de se mostrar interaces, com a possibilidade de expressar como as aces so executadas, o que elas fazem (mudanas dos estados
Carlos Jorge Lima David

14

Sistema Informtico para a Gesto de Recursos Humanos - UAN

dos objectos), quando elas so executadas (sequncia das aces), e onde elas acontecem (swimlanes). Um diagrama de actividade pode ser usado com diferentes propsitos: Para capturar os trabalhos que sero executados quando uma operao disparada (aces). Este o uso mais comum para o diagrama de actividade. Para capturar o trabalho interno em um objecto. Para mostrar como um grupo de aces relacionadas podem ser executadas, e como elas vo afectar os objectos em torno delas. Para mostrar como uma instncia pode ser executada em termos de aces e objectos. Para mostrar como um negcio funciona em termos de trabalhadores (actores), fluxos de trabalho, organizao, e objectos (factores fsicos e intelectuais usados no negcio). Diagrama de Componente O diagrama de componente e o diagrama de execuo so diagramas que mostram o sistema por um lado funcional, expondo as relaes entre os seus componentes e a organizao dos seus mdulos durante a sua execuo. O diagrama de componentes descreve os componentes de software e as suas dependncias entre si, representando a estrutura do cdigo gerado. Os componentes so a implementao na arquitectura fsica dos conceitos e da funcionalidade, definidos na arquitectura lgica (classes, objectos e relacionamentos). Eles so tipicamente os arquivos implementados no ambiente de desenvolvimento. Diagrama de Execuo O diagrama de execuo mostra a arquitectura fsica do hardware e do software no sistema. Especifica-se tambm os componentes executveis e objectos que so alocados para mostrar quais unidades de software so executadas e em qual destes computadores so executadas. O diagrama de execuo demonstra a arquitectura run-time de processadores, componentes fsicos (dispositivos) e de software que rodam no ambiente onde o sistema desenvolvido ser utilizado. a ltima descrio fsica da topologia do sistema, descrevendo a estrutura de hardware e software que executam em cada unidade. Ferramentas CASE Ferramentas CASE (Computer Aided Sotfware Engineering) so suportes de Engenharia de software automatizadas a todo o ciclo de desenvolvimento utilizado para a implementao de sistemas. As ferramentas CASE esto para a Engenharia de Software como o CAD (Computer Aided Design) est para a Engenharia Civil. So programas que auxiliam o Analista na construo do sistema, prevendo ainda na prancheta, como ser sua estrutura, quais sero suas classes, entidades, seus fluxos internos e muitos outros detalhes. So elaborados vrios diagramas que em conjunto constituem praticamente uma planta do sistema a ser desenvolvido [9].

Carlos Jorge Lima David

15

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Surgimento Com o advento da Orientao a Objecto, surgiu tambm uma nova maneira de documentar sistemas, que a UML (Unified Modeling Language), desenvolvida por Ivar Jacobson, Grady Booch e James Rumbaugh no incio da dcada de 90. A UML como o prprio nome diz, unificou a notao de sistemas, focando na orientao a objectos. As ferramentas CASE at ento suportavam notaes advindas da tcnica Estruturada (Anlise Estruturada), surgida no final da dcada de 70 com Tom De Marco. (Em seguida vieram Chris Gane, Trish Sarson e Edward Yourdon) [9]. Tipo de Ferramentas CASE As ferramentas CASE esto divididas em trs (3) tipos: Integrated System CASE (I-CASE), que visam desde o projecto/anlise at a gerao cdigo. Este CASE tenta integrar tudo. Porm, lota uma etapa com vrios tipos de subferramentas com a inteno de abranger vrias metodologias. Ex: System Architect. Case's de automao de uma fase (ou mais) de desenvolvimento, so ferramentas que se prendem a uma etapa do desenvolvimento tal como ferramentas de modelagem de dados (modelo de dados) e ferramentas de testes (testes do sistema). Ex: Erwin (modelagem de dados), WinRunner da Mercury (testes funcionais). Ferramentas que seguem uma metodologia especifica, tal como antigo Composer By IEF que seguia a engenharia da informao. O prprio Rational Rose, segue como linha base a O.O, voltada principalmente para UML. Exemplo de ferramentas CASE Erwin Bpwin (Logic works) Rational Rose 2000 System Architect Oracle Designer WG CASE (IBPI) TALISMAN (Staa) OR Compass Poseidon Visio2003 Rose2000 Smart Draw Genexus Clarify Dr. Case Multicase Paradigm PowerDesigner Together Cognos CollGen 16

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Smart Brio Arena

2.2 - Arquitectura dos Sistemas Informticos


2.2.1- Sistemas Distribudos
Definio Um sistema distribudo um sistema cujos componentes hardware e software, que esto em computadores conectados a rede, se comunicam e coordenam as suas aces mediante a troca de mensagens, para o alcance de um objectivo. Esta comunicao estabelecida mediante um protocolo predefinido por um esquema cliente-servidor [7]. Um sistema distribudo constitui-se de um conjunto de processadores autnomos conectados atravs de um subsistema de comunicao, que se cooperam atravs da troca de mensagens. Vantagens e Desvantagens Vantagens: Econmica: 1. Aproveita as mquinas potencialmente ociosas; mais barato ter vrios processadores inter-conectados do que ter um super computador; 2. Baixo custo dos processadores; Velocidade: A capacidade de inter conectar processadores possibilita que se obtenha performance que apenas um sistema composto capaz de atingir; Distribuio inerente: Algumas distribuies so distribudas por natureza. Tolerncia a falhas: Quando uma mquina falha, o sistema como um todo pode continuar funcionando, apenas apresentando uma diminuio no seu desempenho. Crescimento Incremental: Pode-se aumentar o poder computacional atravs da incluso de novos equipamentos. Flexibilidade: 1. Os sistemas distribudos so mais flexveis do que mquinas isoladas, por essa razo so muitas vezes utilizados at mesmo sem a necessidade de maior desempenho. Esta flexibilidade permite que vrios utilizadores compartilhem dados e perifricos. 2. Facilidade para interligar sistemas aplicativos distintos; 3. Tecnologia de rede disponvel;

Carlos Jorge Lima David

17

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Desvantagens:
Poucos softwares de alto nvel disponveis para sistemas distribudos. Dificuldades para evitar acesso indevido. Questes de segurana. A rede de inter conexo pode causar problemas ou no cobrir a demanda existente. Caractersticas dos Sistemas Distribudos Sistemas de computao distribuda podem diferir bastante entre si, dependendo do meio pelo qual seus processadores esto conectados. Dentre as vrias arquitecturas que utilizam mltiplos processadores tem-se: Computadores vectoriais; Mquinas a fluxo de dados; Multiprocessadores; Multicomputadores; Sistemas compostos por vrias estaes de trabalho conectadas por uma rede local ou por uma rede de longa distncia. Distribuio a nvel de Hardware e Software Hardware Um sistema distribudo quando no existe memria primria compartilhada pelos elementos processadores e no distribudo quando existe [7]. Software Quanto ao software, pode-se dizer, de modo geral, que um sistema distribudo quando seus processos se comunicam (se cooperam) atravs de mecanismos baseados em troca de mensagens, isso porque supe-se, a princpio, que o hardware hospedeiro distribudo, portanto, processos residentes em elementos processadores diferentes podem trocar informaes somente via rede de comunicao, por meio de emisso e recepo de mensagens [7]. Analogamente, um sistema no distribudo quando seus processos se comunicam atravs de dados compartilhados. Existem, quatro esquemas de distribuio, decorrente da combinao de hardware e software distribudos ou no, os quais so: Software distribudo sendo executado em um hardware distribudo: Esse esquema caracteriza um sistema no qual os processos esto sendo executados em processadores separados e se comunicando atravs do uso de primitivas do tipo Envia e Recebe", as quais trocam mensagens sobre uma rede local ou uma rede de longa distncia. Software distribudo sendo executado em um hardware no distribudo: Aqui a troca de mensagens entre os processos simulada atravs do uso de memria compartilhada.

Carlos Jorge Lima David

18

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Software no distribudo sendo executado em um hardware distribudo: Aqui o objectivo esconder a distribuio fsica, fazendo com que o sistema aparente possua memria compartilhada. Software no distribudo sendo executado em um hardware no distribudo: Esquema que caracteriza os sistemas convencionais que so fortemente acoplados. Distribuio a Nvel de Componentes de Software Em geral, existem trs aspectos de software que podem estar distribudos: Dados, programas e controlo. Dados: Sistemas de arquivos distribudos e sistemas de banco de dados distribudos. Programas: Programas centralizados e programas distribudos. Programa centralizado: aquele que executado em uma arquitectura na qual cada um dos processadores pode executar qualquer instruo desse programa. Programa distribudo: aquele que se encontra espalhado por vrias memrias primrias, sendo que cada uma acessada por um processador diferente, o qual executa a parte do programa que se encontra na memria primria a ele associada. A distribuio do controlo est relacionada directamente com a distribuio do prprio sistema operacional. O que distingue um sistema distribudo de um sistema de arquitectura clssica a distribuio do controlo. O controlo centralizado quando a execuo de um programa, em qualquer instante, est sob os cuidados de um nico elemento processador. J, quando o controle distribudo, a execuo de um programa est sob os cuidados de mais de um elemento processador.

2.2.2 - Base de Dados Distribuda


uma coleco de dados construda sobre uma rede, e que pertencem logicamente a um s sistema distribudo, o qual cumpre com as seguintes condies [3]: A informao da base de dados armazenada fisicamente em diferentes stios da rede. Em cada stio da rede, a parte da informao se constitui como uma base de dados por si mesma. As bases de dados locais tm os seus prprios utilizadores locais, os seus prprios DDBMS e programas para a administrao de transaces, e seu prprio administrador local de comunicao de dados. Estas bases de dados locais devem ter uma extenso, que faa a gesto das funcionalidades das partilhas necessrias. A combinao destes componentes com os sistemas de administraes de bases de dados locais, que se conhece como Sistema Administrador de Base de Dados Distribudas. Este gestor global permite que utilizadores possam aceder os dados desde qualquer ponto da rede, como se o fizessem com os dados da sua base de dados local. Em consequncias, a base de dados distribuda uma unidade virtual, cujas partes se armazenam fisicamente em vrias bases de dados distintas, localizadas em diferentes stios. Base de dados Distribuda vs Base de dados Centralizada Base de dados Centralizada: Os dados residem em uma s localizao.

Carlos Jorge Lima David

19

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Base de dados Distribuda: Os dados se encontram em vrias localizaes. Cada localizao pode processar transaces locais, ou seja, aquelas que s acedem a dados que residem nesta localizao. Alm disso, uma localizao pode participar na execuo de transaces globais, ou seja, aquelas que acedem dados de vrias localizaes, esta requer comunicao entre vrias localizaes. Uma transaco local aquela que acede a contas da localizao de onde se iniciou e uma transaco global acede a contas de localizaes distintas a localizao donde se iniciou. Objectivos dos Sistemas de Base de Dados Distribuda Os principais objectivos dos sistemas distribudos so os seguintes [4]: Autonomia local. Operaes Continuas. Transparncia de localizao. Fragmentao independente. Replicao independente. Processamento de consultas distribudas. Gesto de transaces distribudas. Independente do Hardware. Independente Sistema operativo. Independente da rede de computadores. Independente do RDBMS.

2.2.3 - Sistema de Gesto de Base de Dados (SGBD)


Em particular, os SGBD podem ser classificados, de acordo com duas propriedades muito importantes dos problemas de gesto de informao que se destinam a apoiar: Complexidade de dados que se destinam a gerir. Necessidade de funcionalidades de interrogao flexvel. Existem trs modelos diferentes de banco de dados que alcanaram popularidade disseminada: Modelo de Rede Modelo Hierrquico Modelo Relacional Modelo Orientado para Objectos

Modelo Relacional uma representao lgica dos dados que permite considerar relacionamentos entre os dados, sem se envolver com a implementao fsica das estruturas dos dados. Um banco de dados relacional composto por tabelas. As tabelas num banco de dados normalmente tm chave primria, mas as chaves primrias no so obrigatrias. Os SGBD baseados no modelo relacional so muito limitados no tipo de dados que permitem gerir de uma forma bem suportada, mas para os tipos de dados que suportam, oferecem facilidades de consulta muito flexveis, em particular atravs da linguagem normalizada SQL.

Carlos Jorge Lima David

20

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Principais Caractersticas de um SBDD As caractersticas dos SBDD so [7]: Dados armazenados em locais (ou ns) processadores dos ns inter-conectados atravs de rede de computadores. A base de dados distribudos realmente uma base de dados e no uma coleco de arquivos. O sistema possui toda a funcionalidade de um SGBD. Classificao dos Sistemas Distribudos Os sistemas de base de dados distribudos so classificados nas seguintes categorias [7]: Sistemas distribudos Homogneos. Sistemas distribudos Heterogneos. Sistemas de base de dados Federal. Sistemas de backup redundantes. Sistemas Distribudos Homogneos Um sistema distribudo homogneo um sistema que utiliza bases de dados que so construdas no mesmo RDBMS. A segunda caracterstica destes sistemas que os dados so estrategicamente repartidos segundo as funes e regies geogrficas e faz o uso de consultas distribudas. Estes sistemas tambm partilham schema sobre um dicionrio de dados global. Sistemas Distribudos Heterogneos Um sistema distribudo heterogneo tem todas as caractersticas de um sistema homogneo, incluindo partilha de schema, excepto que as bases de dados participantes usam dois ou mais RDBMS motores de base de dados. Sistemas de Base de Dados Federal Os sistemas de base de dados federal diferem dos sistemas homogneo e heterogneo porque eles no partilham schema, mas partilha subconjuntos dos seus dados para facilitar operao nos outros sites, com a qual no tem nenhuma relao funcional. Os participantes em um sistema de base de dados federal so completamente independentes entre si e podem ou no utilizar o mesmo RDBMS. Sistemas de Backup Redundantes Os sistemas de backup redundantes so um caso especial dos sistemas homogneos e uma das aplicaes da tecnologia de replicao. Esta estratgia consiste na cpia dos dados de um objecto

Carlos Jorge Lima David

21

Sistema Informtico para a Gesto de Recursos Humanos - UAN

da base de dados primria para outro objecto imagem na mesma ou noutra base de dados e pode estar no mesmo ou em outros sites. Armazenamento Distribudo de Dados O armazenamento de dados num ambiente distribudo pode seguir os modelos seguintes: Replicao: O sistema mantm vrias cpias dos dados, armazenadas em diferentes sites, aumentando a velocidade de leitura e acrescentando um grau de tolerncia a falhas. Partio: Uma relao dividida em vrios fragmentos que so armazenados em diferentes sites. Replicao e Partio: Uma relao dividida por vrios sites que o sistema mantm em vrios sites e, conjuntamente, mantm as rplicas das parties. Ferramentas Disponveis no Mercado Os sistemas de gesto de base de dados distribudos existentes no mercado so os seguintes [12]: Oracle 10 g Fragmentao horizontal primria de tabelas e ndices Hash e faixa de valores Transparncia na manipulao dos dados Real Application Cluster SQL Server 2002 Fragmentao horizontal primria Reduo de fragmentos ainda limitada IBM Informix Dynamic Server Fragmentao horizontal primria IBM Informix Extended Parallel Server MySql Postgre 8.0 GAS Firebird 1.5 SyBase

2.2.4 - Arquitecturas Cliente Servidor


Cliente servidor uma relao entre processos que esto a correr em mquinas diferentes. O processo servidor o fornecedor dos servios. O cliente o consumidor de servios. Fundamentalmente uma arquitectura cliente-servidor implementa uma separao lgica de funes baseada no conceito de servio.

Carlos Jorge Lima David

22

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Recursos partilhados Um servidor pode servir vrios clientes ao mesmo tempo e gerir os acessos a recursos partilhados. Protocolos assimtricos Existe uma relao de muitos-para-um entre clientes e servidor. Os clientes iniciam o dilogo atravs da requisio de um servio. Os servidores esperam passivamente os pedidos dos clientes. Localizao transparente O servidor um processo que pode residir na mesma mquina que o cliente ou numa mquina diferente que esteja ligada atravs de uma rede. Um programa pode ter o papel de cliente, servidor ou ambos. Independncia O conceito inerente s arquitecturas cliente-servidor baseia-se em software que deve ser independente de hardware ou sistemas operativos. Baseado na transmisso de mensagens Clientes e servidores devem estar ligados de forma independente, ou seja, no deve ser obrigatrio que o servidor esteja a correr para que o cliente possa correr. Sistemas deste tipo so normalmente baseados em mensagens. A mensagem o mecanismo de transporte para os pedidos e respostas dos servios. Encapsulamento de servios Um servidor deve ser um programa especializado. As mensagens transmitem o pedido de servio ao servidor. O servidor que deve ser responsvel pela forma como implementa o servio. A forma de implementar os servios pode ser melhorada sem implicaes ao nvel dos clientes. Escalabilidade Os sistemas cliente-servidor podem evoluir facilmente quer por adio de novos clientes quer por evoluo para novas mquinas servidoras mais potentes.

Carlos Jorge Lima David

23

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Integridade O cdigo e os dados do servidor devem ser mantidos centralmente. Desta forma reduzem-se os custos de manuteno e aumenta-se a integridade dos dados. Categorias de Servidores Servidores de Ficheiro Num sistema deste gnero o cliente executa pedidos de registos de ficheiros ao servidor de ficheiros atravs da rede. uma forma muito primitiva de servio de dados e provoca uma troca muito elevada de mensagens pela rede. So sistemas necessrios para a partilha de ficheiros em rede (documentos, imagens, desenhos, etc.).

Figura 2.2 - Esquema de um servidor de arquivos Servidores de Bases de Dados Num servidor de base de dados o que transmitido na rede so instrues SQL. Os resultados das instrues SQL so enviados para o cliente. O cdigo que processa as instrues SQL e os dados residem na mesma mquina (servidor). o servidor que determina quais os registos resultantes da instruo e so apenas estes que so enviados pela rede.

Figura 2.3 - Esquema de um servidor de Base de Dados

Carlos Jorge Lima David

24

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Servidores de Transaces Com os servidores de transaces os clientes invocam procedimentos remotos que residem no servidor (com uma base de dados). Estes procedimentos remotos so constitudos por grupos de instrues SQL. As instrues do procedimento so executadas na totalidade ou ento falha tudo. Neste tipo de servidores o programador tem que escrever cdigo no cliente e no servidor. Estes sistemas usualmente designam-se de OLTP (Online Transaction Processing).

Figura 2.4 - Esquema de um servidor de Transaces Servidores de Software de Grupo (groupware) O objectivo dos sistemas software de grupo (groupware) o de facilitar a gesto de informao semi-estruturada tal como texto, imagem, e-mail, etc. Normalmente estes sistemas tambm implementam capacidades de automao de workflow. Estes sistemas suportam-se sobre sistemas de transmisso de mensagens. Existem diversos sistemas que embora se possam interligar so implementados de formas diferentes.

Figura 2.5 - Esquema de um servidor de Software de Grupo Servidores de Objectos Um sistema deste tipo implementado atravs de um conjunto de objectos que podem comunicar entre si. Objectos cliente comunicam com objectos servidores atravs do ORB (Object Request Broker). Quando o cliente invoca um mtodo num objecto remoto o ORB localiza a instncia do objecto servidor, invoca o mtodo e retorna o resultado ao objecto cliente. As tecnologias concorrentes nesta rea so o CORBA e o DCOM.
Carlos Jorge Lima David

25

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 2.6 Esquema de um servidor de Objectos Servidores WEB O novo modelo introduzido pela Internet consiste em clientes leves, portveis e universais que comunicam com servidores super pesados (servem milhares ou milhes de clientes). Os servidores Web so os servidores que proporcionam as pginas HTML. O cliente de um browser solcita uma pgina e o servidor recebe a mensagem e envia a pgina correspondente. Arquitectura Cliente Servidor de Duas Camadas O caminho para o sistema de duas camadas comeou da necessidade de partilhar dados entre mltiplas aplicaes instaladas em mquinas diferentes. Para tal, era necessrio, um servidor de base de dados separado. A aplicao agora consiste em duas camadas [2]: Lgica de apresentao e lgica de negcio. Lgica de acesso aos dados. Os dados so acedidos atravs de uma conexo a base de dados numa outra mquina. Qualquer alterao na lgica de acesso aos dados no afectar a lgica de apresentao nem a lgica de negcio na aplicao. A separao da lgica de acesso de dados numa segunda camada mantm o acesso aos dados independente e pode garantir uma certa quantidade de escalabilidade e flexibilidade dentro do sistema. Normalmente esta arquitectura se utiliza nas seguintes situaes: Quando se requer pouco processamento de dados na aplicao. Quando se tem uma base de dados centralizada num s servidor. Quando a base de dados relativamente esttica. Quando a quantidade de manuteno reduzida. Existem dois modelos de sistemas de duas camadas: Lgica de apresentao e lgica de negcio, lgica de acesso aos dados. Lgica de apresentao, lgica de negcio e lgica de acesso aos dados.

Carlos Jorge Lima David

26

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 2.7 Esquema da Arquitectura Cliente Servidor de Duas Camadas Consequncias do desenho das duas (2) camadas Um dos problemas principais encarados pelos desenvolvedores de aplicaes usando a arquitectura de sistema de duas camadas era que os clientes continuavam cheios de cdigo de negcio e persistia a necessidade de saber detalhes acerca da localizao das fontes de dados. Porque h muitas funcionalidades concentradas nos clientes, este tipo de clientes normalmente chamado de cliente grosso. Estes clientes precisam ser actualizados geralmente sempre que a aplicao muda [2]. Devido ao facto dos utilizadores de uma aplicao de thick cliente possurem muito cdigo da aplicao instalado nos seus sistemas locais (nos seus pcs), h uma necessidade de instalar cpias recentes da aplicao actualizada quando as alteraes so realizadas. Isto introduz um questo seria de manuseio em termos de roll out e controlo das verses. Tambm, no sempre vivel usar um thick client, porque o utilizador da aplicao poder no querer instalar cdigo no seu computador para usar uma aplicao particular. De igual modo, o provedor de aplicativos poder no querer prover cdigo contendo esta lgica de negcio para trs partes relativamente desconhecidas, mesmo se ela precompilada. Outra questo no uso de thick client refere-se ao acesso aos dados. A necessidade de prover acesso para os back-end dados para todos os clientes da aplicao limita severamente o acesso e a escalabilidade da aplicao. Arquitectura Cliente Servidor de Trs Camadas Nesta arquitectura a lgica da apresentao est separada em camada lgica prpria e camada fsica prpria. Isto significa que diferentes tipos de lgicas de apresentao, assim como cdigo de interface de utilizadores baseados em HTML e utilizadores baseados em GUI, todos podem aceder a mesma lgica do negcio na camada central [2].
Carlos Jorge Lima David

27

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Este modelo das trs camadas tornou-se a arquitectura modelo para sistemas comerciais baseados na Web. A separao em camadas torna os sistemas mais flexveis, contudo aquela parte pode ser alterada independentemente. Dando a separao das funcionalidades do negcio e da apresentao, isto pode no requerer qualquer mudana na lgica de acesso de dados e na lgica de negcio. A separao em camadas fsicas separadas, prov a oportunidade de injectar escalabilidade aumentada e disponibilidade, atravs da replicao das mquinas e do software em camadas diferentes. Com a lgica separada em camadas, muito mais fcil escrever cdigo que adaptado a estas tarefas particulares. Exemplo, devido ao facto da lgica de apresentao estar agora armazenada na sua prpria camada fsica e lgica, o referido cdigo pode ser escrito por um desenvolvedor que hbil nesta rea particular. Desenvolvedores que so habilidosos no uso de componentes Java Web, tal como servlets e JSP podem escrever o cdigo para estas camadas. Estes desenvolvedores no precisam conhecer as tecnologias usadas no cdigo das lgicas de negcio e de acesso aos dados. Esta arquitectura est constituda pelas seguintes camadas [2]: Lgica de Apresentao Define com o utilizador interage com a aplicao e que informao deve ser visualizada pelo utilizador. Lgica do Negcio Guarda o kernel (corao) da aplicao, nomeadamente as regras de gerenciamento dos processos de negcio (ou uma outra funcionalidade qualquer) inserida na aplicao. Lgica de acesso aos dados Gerncia a conexo para qualquer fonte de dados usada pela aplicao (bases de dados tpicas) e a disponibilidade dos dados vindos destas bases de dados para a lgica de negcio. A imagem seguinte ilustra uma representao de um sistema de trs camadas.

Figura 2.8 Esquema Cliente Servidor de Trs Camadas

Middleware Middleware a capa de software intermdia entre o cliente e o servidor. a capa de software que nos permite fazer a gesto dos mecanismos de comunicao [7].
Carlos Jorge Lima David

28

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Existem dois tipos de middleware: Software genrico Servios gerais que requerem todos os clientes e servidores. Normalmente inclui tudo o que tem que ver com transporte (stacks de comunicao, servios de directrio, servios de autenticao, RPCs, etc.). Software de servios Software associado a um servio em particular. Podemos encontrar os seguintes: Middleware especifico de base de dados (ODBC) Middleware especifico de groupware (MAPI, VIM) Middleware especifico de servios de objectos (CORBA, DCOM) Middleware especifico de Internet (http, SSL) Middleware de gesto especifico (ORB)

Objectos Distribudos
Nos sistemas cliente-servidor um objecto distribudo aquele que gerido por um servidor e seus clientes invocam os seus mtodos utilizando um mtodo de invocao remota. O cliente invoca o mtodo mediante o envio de uma mensagem ao servidor que gere o objecto, se executa o mtodo do objecto no servidor e o resultado retornado ao cliente, por meio de outra mensagem [7]. Tecnologias Orientadas a Objectos Distribudos As trs tecnologias importantes e mais usadas neste mbito so [2]: Remote Invocation Method (RMI) Foi o primeiro framework para criar sistemas distribudos de Java. O sistema RMI de Java permite a um objecto que se est a executar numa mquina virtual Java (JVM), chamar mtodos de outro objecto que est em outra mquina virtual diferente. Esta tecnologia est associada a linguagem de programao Java. Distribuited Component Object Model (DCOM)- O modelo de componente de objecto distribudo, est includo nos sistemas operativos da Microsoft. um conjunto de conceitos e interfaces de programa, no qual os objectos de programa do cliente, podem solicitar servios de objectos de programas servidores em outros computadores dentro de uma rede. Common Object Request Broker Architecture (CORBA)- Tecnologia introduzida pelo grupo de administrao de objectos OMG, criada para estabelecer uma plataforma para a gesto de objectos remotos independente da linguagem de programao.

2.3 - Requisitos dos Sistemas Informticos


Os requisitos fundamentais de um sistema de informao so: Segurana, integridade dos dados, disponibilidade dos dados [16]. Segurana O objectivo das medidas de segurana dos sistemas de informao proteger os dados armazenados de acessos no autorizados, garantindo que apenas os utilizadores acedam ao sistema, de acordo com os seus privilgios.
Carlos Jorge Lima David

29

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A segurana pode possuir basicamente duas perspectivas: Segurana Fsica: Permitem que o sistema esteja, fisicamente, fora do alcance de pessoas no autorizadas. Este tipo de segurana foi mais usado no passado, devido ao facto de que actualmente os pontos de acesso aos sistemas informticos se encontram de tal forma dispersos que invalidam qualquer tentativa de impedir o acesso fsico. Segurana Lgica: Para alm de se proteger os recursos do sistema de acessos no autorizados atravs de mecanismos lgicos de controlo de acesso (passwords, etc.), para os sistemas informticos o controlo dos acessos tem de ter meios de definir no s quem tem acesso, mas tambm o qu e como lhe pode aceder.

Integridade A manuteno da integridade tem como objectivo proteger a base de dados de acessos menos vlidos por parte dos utilizadores autorizados, impedindo-os de executar operaes que ponham em risco a correco dos dados armazenados. Trata-se de um conjunto de medidas de segurana muito especiais, que actuando dentro do perfil de autorizaes de cada utilizador pretende evitar que estes, acidentalmente, executem operaes que conduzam a base de dados para estados no vlidos, contribuindo assim para uma robustez do sistema. Existem vrias regras de integridade, tais como: Integridade de Domnio, Integridade da Entidade, Integridade Referencial e Integridade da Base de Dados. Integridade de Domnio: Nesta, os sistemas de gesto de bases de dados relacionais disponibilizam com frequncia um conjunto de mecanismos que permitem estabelecer as restries necessrias para implementar o domnio dos atributos. Integridade da Entidade: Nesta existem duas regras muito importantes, que derivam directamente da teoria relacional e que se prendem com a obrigatoriedade de existncia da chave primria e desta no poder conter valores nulos em nenhum dos seus atributos, para todas as ocorrncias da entidade. A primeira regra compreende-se facilmente e deriva da necessidade de distinguir de forma unvoca as diferentes ocorrncias de uma entidade. A segunda regra resulta da prpria definio de chave primria. Integridade Referencial: Tambm designada integridade da chave estrangeira, diz respeito obrigatria concordncia, em valor, que tem de existir entre esta e a chave primria que ela referencia. Integridade da Base de Dados: Em rigor, todos os tipos de integridade referidos acima visam integridade da base de dados. Ainda assim, existe um conjunto de restries que resultam directamente do problema a modelar e que envolvem mais do que uma entidade em simultneo. Os mecanismos de recuperao dos sistemas de base de dados baseiam-se fundamentalmente, na utilizao de formas de redundncia, que na prtica, quase duplicam a prpria base de dados. Existem praticamente dois tipos de mecanismos de recuperao: - Backups: So copias de segurana, executadas periodicamente, abrangendo toda base de dados. A sua principal desvantagem que permite uma recuperao limitada, uma vez que apenas reflete o estado da base de dados num momento passado, o que significa que na sua reposio, a base de dados ir perder todos os estados seguintes realizao desse backup. - Transaction Logging: Este o mecanismo de recuperao que entre outras coisas, vem eliminar a principal fraqueza apresentada pelos backups. Se a reconstruo da base de dados a partir do seu backup, for completada com a reposio dos estados seguintes a esse backup (permitida pelo transaction logging), ento ser possvel reconstruir a base de dados, praticamente at ao momento em que ocorreu a falha. Para que isso seja possvel, torna-se necessrio que o sistema mantenha o registo das operaes efectuadas a base de dados por todas as transaes posteriores ao ltimo backup.
Carlos Jorge Lima David

30

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Transparncia A transparncia a capacidade de apresentar-se aos seus utilizadores como uma entidade nica. De localizao: No interessa saber, para os utilizadores, onde os recursos esto localizados. De migrao: Os recursos podem se mover sem alterar seus nomes. De replicao: Os utilizadores podem se mover sem alterar seus nomes. De concorrncia: Mltiplos utilizadores podem compartilhar um recurso automaticamente. De Paralelismo: Actividades podem ocorrer em paralelo sem que o utilizador saiba.

Flexibilidade Actualmente a construo de S.O. Distribudos baseada em microkernel, em oposio a sistemas monolticos com mais performances, porm menos flexibilidade. Microkernel implementa poucas funes, fornecendo a princpio quatro servios bsicos: Mecanismo de comunicao de processos. Algum tipo de gerncia de memria. Uma pequena parte do escalonamento e gerncia de baixo nvel de processos. Entrada e sada de baixo nvel. Outros servios (file system, full process management, etc.) so providos por servios a nvel do utilizador. Confiabilidade Os Sistemas Distribudos devem possuir a capacidade de, ao parar de funcionar uma mquina, outra mquina deve assumir os servios realizados pela mesma. Na prtica, existem alguns servidores, em diferentes mquinas, que precisam estar no ar, para que o sistema funcione como um todo. Alguns aspectos relacionados a confiabilidade devem ser levados em considerao, os mesmos so mostrados a seguir: Disponibilidade (availability): Refere-se a fraco de tempo em que o sistema est funcionando, com isso, pode-se melhorar a disponibilidade atravs de um projecto que no exija o funcionamento simultneo de um nmero substancial de componentes crticos. Ou atravs de redundncia, isto , componentes chaves de hardware e software devem ser replicados, de modo que se um deles falhar, os outros estaro aptos a tomar conta da tarefa. Tolerncia a Falhas: Quando um dos servidores falhar? Os sistemas distribudos so projectados com a capacidade de mascarar falhas, isto , no permitem que o utilizador perceba o que est acontecendo. Um exemplo clssico o de servio de arquivos, que pode ser construdo com um grupo de servidores cooperantes, de tal forma que o utilizador no perceba a falta de um ou mais servidores. Desempenho: Os itens apresentados anteriormente no devem ser atingidos se sacrificarmos o desempenho, portanto, deve-se considerar os seguintes itens do desempenho: Tempo de resposta. Throughput (tarefas / tempo). Utilizao do sistema. Quantidade consumida da capacidade da rede. Escalabilidade (Scalability)
Carlos Jorge Lima David

31

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Os sistemas distribudos precisariam de se adaptar a possibilidade de se ter ambientes com milhares de processadores. Para isso deve-se evitar: Componentes centralizados. Tabelas centralizadas. Algoritmos centralizados.

2.4 - Tecnologias Utilizadas nas Camadas


Esta tese foi desenvolvida com base na arquitectura cliente servidor de trs camadas. Estas camadas so implementadas com base em tecnologias existentes. Nesta seco descreveram-se as tecnologias usadas para a implementao de cada camada. Existem duas tecnologias de referncia no que concerne a aplicaes webs, estas tecnologias so: Java Faz-se uso da tecnologia J2EE (Java 2 Enterprise Edition) para o desenvolvimento de aplicaes distribudas voltadas a web. Dot net (.net) uma tecnologia desenvolvida pela Microsoft que permite desenvolver aplicaes em Visual Basic voltadas a web.

Lgica de Apresentao (Camada de apresentao)


A camada de apresentao nas aplicaes Web baseadas numa arquitectura em trs camadas o browser da Internet. O cliente solicita uma pgina ao servidor de aplicativos web, o servidor processa e faz o envio de um ficheiro HTML para o cliente. Nas aplicaes desenvolvidas seguindo a tecnologia J2EE a camada de apresentao desenvolvida por meio de Java Server Pages (JSP) e Servlets. Para o desenvolvimento desta camada foram usadas as seguintes ferramentas: Dreamweaver MX Usado para o desenvolvimento da interface do cliente. Com o dreamweaver tem-se a possibilidade de criar pginas de contedo esttico como pginas de contedo dinmico, gerado a partir de uma base de dados. O dreamweaver possui um suporte para vrios tipos de linguagens dinmicas, tais como JSP, PHP, ASP ou ColdFusion e permite ainda escrever noutros formatos como o XML ou o Javascript. HTML Usado para o desenvolvimento da interface do cliente. PhotoImpact 6 Usado para o tratamento das imagens associadas ao projecto.

Carlos Jorge Lima David

32

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Lgica do Negcio (Camada de negcio)


Esta camada considerada o corao (kernel) do aplicativo. As regras de gesto do aplicativo so definidas nesta camada. Esta camada, foi desenvolvida fazendo uso dos recursos do Java. O cliente interage com o servidor mediante o envio de instrues SQL. Estas instrues so tratadas pelo servidor na camada de negcio que interage com a camada de acesso aos dados, e depois retornada uma pgina HTML com a resposta da solicitao do cliente. A camada de negcio desenvolvida com as EJBs (Enterprise JavaBeans) o que disponibiliza um modelo para o desenvolvimento da camada de negcio nas aplicaes comerciais em Java. Linguagem de Programao Java Java uma linguagem de programao orientada a objecto desenvolvida pela Sun Microsystems. Baseado em C++, a linguagem Java foi desenhada para construo de programas pequenos, simples e portveis em vrias plataformas e sistemas operacionais. Os programas em Java so divididos em dois grupos: Applets e Aplicaes. Drive JDBC JDBC um API (Application Program Interface) para acesso a SGBD (Sistemas de Gesto de Base de Dados) relacionais por meio de comandos SQL (Structured Query Language). Quando o SGBD no dispe de um driver JDBC mas somente o ODBC, ser necessrio uma ponte para o acesso a base de dados. A figura a seguir ilustra o que acontece.

Figura 2.9 - Integrando base de dados com JDBC

Carlos Jorge Lima David

33

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Programao para WEB JSP (Java Server Pages) uma tecnologia para desenvolvimento de aplicaes WEB semelhante ao Microsoft Active Server Pages (ASP). Servlets e JSP so duas tecnologias desenvolvidas pela Sun para desenvolvimento de aplicaes na Web a partir de componentes Java que executem no lado servidor. Essas duas tecnologias fazem parte da plataforma J2EE (Java 2 Platform Enterprise Edition) que fornece um conjunto de tecnologias para o desenvolvimento de solues escalveis e robustas para a Web [10]. Java Server Pages (JSP) JSP so pginas HTML que incluem cdigo Java e outras tags especiais. Desta forma as partes estticas da pgina no precisam ser geradas por mensagens (println()). Elas so fixadas na prpria pgina. A parte dinmica gerada pelo cdigo JSP. Assim a parte esttica da pgina pode ser projectada por um Web Designer que nada sabe de Java. A primeira vez que uma pgina JSP carregada pelo container JSP o cdigo Java compilado gerando um Servlet que executado, gerando uma pgina HTML que enviada para o navegador. O JSP consiste numa combinao de JSP tags e Scriptlets, que contem o cdigo executvel, e a formatao esttica tal como o HTML ou o XML. O cdigo contido no JSP identificado e executado pelo servidor, e a pgina resultante enviada ao cliente. Isto quer dizer que o cdigo embebido pode gerar formatao dinmica que enviada ao cliente como uma formatao esttica prxima do original. O cliente no v este processo, apenas o resultado. O JSP tags delimita as seces do cdigo executvel e forma a base de qualquer pgina web. Os Scriptlets so seces de scripts delimitadas que permitem um JSP efectuar grandes processamentos. Normalmente, pode-se escrever esses scripts usando a linguagem de programao JAVA, mas outras implementaes de JSP podem suportar outras linguagens de programao.

Figura 2.10 Exemplo de funcionamento das aplicaes WEB

Carlos Jorge Lima David

34

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A figura mostra um cliente a fazer uma solicitao via HTTP a um JSP. Primeiramente o cliente faz a solicitao ao contentor JSP, que converte a pgina JSP num ficheiro fonte JAVA e compila-o e retornado ao cliente o resultado desta compilao em forma de pgina web. PHP vs JSP O PHP uma linguagem script para ser executada no lado servidor, criada em 1994 como um projecto pessoal de Rasmus Lerdorf. A sua sintaxe fortemente baseada no C mas possui elementos de C++, Java e Perl. Possui suporte programao orientada a objectos por meio de classes e objectos. Possui tambm suporte extensivo ao banco de dados ODBC, MySql, Sybase, Oracle e outros. O PHP uma linguagem mais fcil no desenvolvimento de pequenas aplicaes para Web em relao JSP, uma vez que uma linguagem mais simples e menos rgida do que JSP. ASP vs JSP ASP a soluo desenvolvida pela Microsoft para atender as requisies feitas a servidores Web. Incorporada inicialmente apenas ao Internet Information Server (IIS), no entanto, actualmente j suportada por outros servidores populares, como o Apache. O desenvolvimento de pginas que usam ASP envolve a produo de um script contendo HTML misturado com blocos de cdigo de controlo ASP. Este cdigo de controlo pode conter scripts em JavaScript ou VBScript. A primeira vantagem de JSP sobre ASP que a parte dinmica escrita em Java e no Visual Basic ou outra linguagem proprietria da Microsoft, portanto JSP mais poderoso e fcil de usar. Em segundo lugar JSP mais portvel para outros sistemas operacionais e servidores Web que no sejam Microsoft. Servlets Servlets so classes Java que so instanciadas e executadas em associao com servidores Web, atendendo requisies realizadas por meio do protocolo HTTP. Podem ser acoplados em diversos tipos de servidores para expandir as suas funcionalidades. Servlets no possuem interface grfica e suas instncias so executadas dentro de um ambiente Java denominado de Container. O container gerncia as instncias dos servlets e prov os servios de rede necessrios para as requisies e respostas. Algumas capacidades dos servlets tornam esta tecnologia particularmente interessante: Gerao dinmica de pginas HTML: Os servlets podem ser instalados em servidores web para processar informaes transmitidas via HTTP a partir, por exemplo de formulrios HTML. As aplicaes podem incluir acesso a banco de dados ou comunicao com outros servlets. Balanceamento de carga entre servidores: Para entender como utilizar servlets para fazer balanceamento de carga, considere a infra-estrutura de um provedor de servios via Internet composta de cinco servidores, dos quais, quatro so capazes de executarem as mesmas aplicaes. O servidor restante, seria responsvel por monitorar a cargas dos demais e receber o acesso inicial de cada cliente s aplicaes e em seguida, redireccionar os pedidos de acesso para um dos quatro servidores de aplicao, conforme a ocupao de

Carlos Jorge Lima David

35

Sistema Informtico para a Gesto de Recursos Humanos - UAN

cada um no momento em que o cliente tenta estabelecer uma conexo. Assim, o cliente passa a trocar informaes somente com o servidor que foi alvo do redireccionamento. Modularizao do cdigo: Um servlet pode executar outro servlet, mesmo que remotamente, desta forma possvel execut-los em corrente. Esta caracterstica possibilita modularizao dos aplicativos, criando servlets com funes especficas. Suponha que para acessar um conjunto de aplicativos, o cliente deva ser autenticado. Neste caso, uma configurao possvel seria de criar um servlet responsvel apenas pela tarefa de autenticao. Uma vez autenticado, este servlet redireccionaria o cliente para outro servlet, no necessariamente instalado no mesmo servidor, que executaria o aplicativo. A vantagem deste tipo de arquitectura, que se por alguma razo for necessrio modificar o procedimento de autenticao, no ser necessrio reescrever toda a aplicao, e sim apenas o servlet responsvel pela autenticao. Estrutura bsica de um Servlet Para criar um servlet utiliza-se a API javax.servlet e javax.servlet.http que define a interface servlet. Todo servlet deve ser uma implementao desta interface, ou ser uma subclasse de uma classe que a tenha implementado. O API no pressupe nenhum requisito quanto a maneira como os servlets sero carregados, o ambiente no qual eles sero executados nem o protocolo que ser utilizado na troca de informaes. Nela esto definidos todos os mtodos para estabelecer a comunicao com clientes. A classe HttpServlet providencia mtodos tais como doget e dopost para suportar servios especficos HTTP.

Figura 2.11 - Interaco entre um cliente, SERVLET e EJB. Ciclo de vida de um servlet O ciclo de vida de um servlet controlado pelo contentor onde o servlet foi deposto. Quando um pedido mapeado a um servlet, o contentor executa os seguintes passos: 1. Se uma instancia do servlet no existe, o contentor web:
Carlos Jorge Lima David

36

Sistema Informtico para a Gesto de Recursos Humanos - UAN

a. b. c. 1.

Carrega a classe servlet. Cria uma instncia da classe servlet. Inicializa a instncia do servlet pela evocao do mtodo init.

Evoca o mtodo de servio, passando um objecto de pedido e resposta.

Se o contentor precisar remover o servlet, finaliza invocando o mtodo destroy do servlet. Mtodos GET e POST Os dois mtodos mais comuns, definidos pelo protocolo HTTP, de se enviar uma requisio a um servidor Web so os mtodos GET e POST. GET Tem como objectivo enviar uma requisio por um recurso. As informaes necessrias para a obteno do recurso so adicionadas URL e, por consequncia, no so permitidos caracteres invlidos na formao de URLs. Vantagem O mtodo GET idempotente, isto , os servidores Web podem assumir que a requisio pode ser repetida, sendo possvel adicionar URL ao bookmark. Desvantagem As informaes passadas via GET no podem ser muito longas, uma vez o nmero de caracteres permitidos ser por volta de 2Kb. POST Tem a mesma funcionalidade que o GET. Os dados so enviados no corpo da mensagem. Vantagens Podem ter tamanho ilimitado. Desvantagens No so idempotentes, o que as torna ideais para formulrios onde os utilizadores precisam digitar informaes confidenciais. Nesta camada usa-se as seguintes tecnologias: JSP JAVA
Carlos Jorge Lima David

37

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Javascript As ferramentas usadas foram: JBuider X Dreamweaver MX

Lgica de Acesso aos Dados


Esta camada descreve a maneira como a lgica de negcio interage com a base de dados. Linguagens de Banco de Dados O processamento de arquivos de acesso aleatrio apropriado para aplicativos (especialmente processamento de transaces) em que crucial ser capaz de localizar e possivelmente actualizar rapidamente um trecho individual dos dados e em que apenas uma pequena parte dos dados de um arquivo, ser processada de cada vez. Java permite aos programadores escrever cdigo que utiliza consultas de SQL para acessar informaes em sistemas de banco de dados relacional. O SQL (Structured Query Language) uma linguagem muito utilizada em sistemas de bancos de dados relacionais para fazer consultas. Linguagens nativas So linguagens projectadas especialmente para fazer consultas em bancos de dados. Estas linguagens incluem uma sublinguagem de banco de dados (Database Sublanguage DSL) voltada para as especificidades dos objectos e operaes do banco de dados. Geralmente cada sublinguagem de dados uma combinao de duas linguagens a saber: Data Definition Language (DDL) Fornece os recursos para definir os objectos do banco de dados. Data Manipulation Language (DML) Fornece recursos para especificar o processamento a ser realizado sobre objectos de banco de dados. Tecnologias Usadas MySql Base de dados SQL Linguagem de consulta de dados na base de dados.

Objectivo do Uso Destas Tecnologias


Nos ltimos tempos o software livre tem ganhado popularidade no seio dos habitantes do mundo da informtica. O uso dos softwares proprietrios, tornou-se num incmodo para as grandes empresas, devido as grandes somas de valores que tm pago por licenas para fazerem uso dos respectivos softwares proprietrios. Consciente da grande expanso dos softwares livres urge a necessidade de se desenvolver aplicativos que faam uso destes softwares e que funcionem em qualquer plataforma de sistema operativo. Seguindo esta senda de ideia usou-se as seguintes tecnologias:
Carlos Jorge Lima David

38

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Java O Java uma linguagem que funciona independentemente da plataforma (Sistema Operativo). MySQL Servidor de base de dados. O MySql um servidor de base de dados livre. Logo, sendo o objectivo actual diminuir os custos de produo dos softwares. Tomcat Servidor de aplicativos JSP (Aplicativos Web).

Carlos Jorge Lima David

39

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 3 - Modelagem do Negcio (SIGRH-UAN)


3.1 - Viso Geral do Sistema de Informao
A UAN est composta por Unidades Orgnicas e Reitoria. Cada Unidade Orgnica encontra-se dividida por departamentos. A Reitoria o rgo da UAN que faz a gesto dos Recursos Humanos da UAN a nvel superior hierrquico. A UAN possui tambm Plos espalhados pelo pas, alguns deles possuem uma ou mais Faculdades ou Unidades Orgnicas. Cada Unidade Orgnica possui um departamento de Recursos Humanos (DRH) que dividido por reparties e seces. Temos as reparties de Gesto do Pessoal e de Formao Profissional. Temos as seces de Arquivo e Controlo e de Estatstica. A seguir so apresentados alguns plos universitrios que esto em funcionamentos e as suas respectivas Unidades Orgnicas: 1. Plo de Luanda: Faculdade de Engenharia Faculdade de Cincia Faculdade de Direito Faculdade de medicina Instituto Superior de Cincias de Educao Faculdade de Letras Instituto Superior de Enfermagem

2. Plo de Benguela: Instituto Superior de Cincias de Educao Faculdade de Direito Faculdade de economia

3. Plo de Cabinda: Instituto Superior de Cincias de Educao 4. Plo do Huambo: Instituto Superior de Cincias Agrrias

5. Plo da Hula: Instituto Superior de Cincias de Educao Faculdade de Economia

Carlos Jorge Lima David

40

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Estrutura Organizacional da UAN


Reitoria

Plo de Kwanza Sul

Plo de Benguela

Plo de Cabinda

Plo da Hula

Plo do UIGE

ISCED

ISCED

Faculdade de Direito

Faculdade de Economia

ISCED

ISCED

ISCED

Plo do Huambo ISCED

Plo de Luanda

ISCA

Faculdade Engenharia

Faculdade de economia

Faculdade de Cincia

Faculdade de Direito

ISCED

Faculdade de Medicina

Faculdade de Letra

Figura 3.1 Estrutura Organizacional da UAN O aplicativo capaz de efectuar todas as operaes possveis que so realizadas nos distintos DRH vinculados a UAN. Em funo das operaes que so efectuadas nos distintos DRHs e com base na lei geral do trabalho que serve de guia para a gesto dos mesmos, as seguintes operaes foram identificadas: 1. Registar Funcionrios 2. Registar Movimentos dos Funcionrios 3. Registar Ausncias dos Funcionrios 4. Registar Avaliaes dos Funcionrios 5. Obter relatrios Os relatrios que se podem obter do sistema so vrios. Alguns dos relatrios possveis como sada do sistema so: 1. Relatrio de todos os trabalhadores da UAN 2. Relatrio de todos os trabalhadores Docentes da UAN 3. Relatrio de todos os trabalhadores de uma Unidade Orgnica 4. Relatrio de todos os trabalhadores Docentes de uma Unidade Orgnica 5. Relatrio dos trabalhadores que faltaram num determinado ms numa Unidade Orgnica 6. Relatrio de todos os trabalhadores transferidos para uma determinada rea 7. Relatrio de todos os trabalhadores com menos de 5 anos para a reforma 8. Relatrio de todos os trabalhadores administrativos 9. Relatrio de trabalhadores por grupos salariais

Carlos Jorge Lima David

41

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.1.1- Descrio das Actividades dos DRHs-UAN


As principais actividades realizadas nos DRHs das Unidades Orgnicas da UAN so as seguintes: Registar Funcionrios, registar movimentos, registar ausncias e registar avaliaes dos funcionrios. Registar Funcionrios O registo dos novos funcionrios feito logo aps a publicao do resultado do concurso pblico para a admisso dos mesmos. No processo de registo dos funcionrios o objectivo fundamental constituir o processo individual do mesmo para que se possa ter um maior controlo dos dados do funcionrio. Os funcionrios devero fazer a entrega do curriculum vitae no DRH para que as informaes acadmicas dos mesmos sejam registadas. No processo de registo dos funcionrios so armazenadas informaes dos dados pessoais do funcionrio, dados acadmicos, dados laborais e dados adicionais, onde: Dados pessoais: Contem a informao dos dados do bilhete do funcionrio, local de trabalho, data de admisso, etc. Dados Acadmicos: Contem a informao da formao acadmica, cursos feitos e idiomas falados associados ao funcionrio. Dados Laborais: Contem informao sobre o local de trabalho anterior do funcionrio, capacitaes feitas pelo referido funcionrio. Dados Adicionais: Contem informaes sobre a situao mdica, agregado familiar e outros documentos associados ao funcionrio. Depois disso criado o processo individual do funcionrio na Unidade Orgnica onde sero adicionadas outras informaes como avaliaes, ausncias e movimentos. Registar Movimentos Os funcionrios associados a UAN podem trabalhar em distintas Unidades Orgnicas associadas a UAN, para tal necessrio que se processe a transferncia do funcionrio de um local de trabalho para o outro. Este processamento feito no registo dos movimentos, onde as informaes sobre as transferncias e os cargos ocupados pelos funcionrios so adicionadas na ficha individual do funcionrio. Para tal dever haver comunicao entre os funcionrios dos distintos DRHs de forma a armazenar-se informaes fidedignas concernentes aos funcionrios. Registar Ausncias Este processo permite fazer o controlo da efectividade. Os distintos departamentos enviam as informaes da efectividade dos funcionrios para o DRH e posteriormente estas informaes so processadas e inseridas no sistema. Neste processo esto associadas as seguintes operaes: Ferias: So armazenadas todas as informaes concernentes as ferias do funcionrio: Faltas: Permite registar todas as faltas do funcionrio. Licenas: As informaes sobre as licenas dos funcionrios so tratadas neste processo.

Carlos Jorge Lima David

42

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Registar Avaliaes Os funcionrios so avaliados em funo dos seu rendimento de trabalho, comportamento e etc. Em funo disto, os funcionrios podem sofrer varias avaliaes num determinado ano. Existem vrios tipos de avaliaes que so: Processos Disciplinares: Os funcionrios do DRH registam as informaes dos processos disciplinares associados a um determinado funcionrio. Distines e louvores: As informaes sobre as distines e louvores dos funcionrios so registadas pelos funcionrios do DRH neste processo. Classificaes: Os funcionrios so avaliados no departamento em que trabalham pelo trabalho que desempenham e estas informaes so enviadas ao DRH para adicionar aos dados do funcionrio.

3.1.2 - Sistemas Existentes na UAN


Actualmente na UAN existe um sistema de gesto de recursos humanos na Faculdade de Engenharia que o SIGRH-FE-UAN. Este sistema uma soluo Standalone desenvolvida com o Visual Basic 6.0 e usa uma base de dados oracle centralizada. 3.1.2.1 - Anlise dos Problemas Depois de um estudo feito sobre o funcionamento dos distintos DRHs associados a UAN, foram identificados os seguintes problemas no tratamento da informao: Actualmente os DRHs ainda funcionam na sua maioria com sistemas de informao tradicionais baseados em arquivos no formato de papis. O acesso a elas demorado, se quisermos saber informaes de funcionrios desde o ano 1990 levaramos uma a duas semanas quando muito 1 ms para encontrar estas informaes. Esta forma de armazenar informao no segura, se acontecer um incndio, desastre natural ou uma sabotagem, a informao actualizada pode desaparecer sem possibilidade de recuperao. Pode-se dar o caso de que a data de que a ficha do funcionrio desaparea e ento no se saber a data de admisso do funcionrio para se poder fazer o controlo do tempo de trabalho do mesmo. Para o registo dos funcionrios os mesmos devem preencher formulrios com os dados pessoais, acadmicos, laborais e adicionais para posterior envio aos distintos DRHs. O tempo de emisso de documentos, isto , obteno de relatrios muito elevado, este um problema que os funcionrios incluindo os funcionrios destes DRHs. O controlo da efectividade feito de maneira descentralizada, os departamentos das Unidades Orgnicas enviam os dados da efectividade e posteriormente so processados podendo assim perder-se informao no processo de transporte da informao. Outro problema que existe o facto de que nesta soluo de arquivos em papis no possvel mais do que uma pessoa consultar a informao associada a um funcionrio, pois os dados esto armazenados na mesma ficha individual. Com o advento da Internet a questo da localizao da informao deixou de ser problema podendo assim um funcionrio consultar informaes no sistema de qualquer parte do mundo, o que no possvel na soluo usada at ao momento.

Carlos Jorge Lima David

43

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.1.2.2 - Objectivo do Sistema (Soluo Proposta)


O objectivo do sistema informtico para gesto dos recursos humanos da UAN (SIGRH-UAN) integrar toda actividade de gesto de recursos humanos realizada nos DRHs das Unidades Orgnicas e Reitoria da UAN, num s sistema distribudo. A figura 3.2 ilustra a distribuio do sistema.

Figura 3.2 Estrutura do SIGRH-UAN A figura supracitada ilustra a estrutura do SIGRH-UAN. A soluo que propomos uma soluo distribuida que estar instalada em todas as Unidades Organicas. Cada Unidade Orgnica ter uma distribuio do SIGRH-UAN que funcionar como um plo (site) do sistema. Esta distribuio do SIGRH-UAN inclui toda a infraenstrutura que permite a funcionalidade do sistema. Em cada Unidade Orgnica ser instalada a base de dados e os modulos para o processamento dos dados do sistema, ser instalado um servidor de base de dados e um servidor web. Estes servidores estaro na intranet da respectiva Unidade Orgnica e os distintos plos (sites) do sistema interligar-se-o por meio da internet como ilustrado na figura 3.2. O subsistema central
Carlos Jorge Lima David

44

Sistema Informtico para a Gesto de Recursos Humanos - UAN

encontrar-se- instalado na Reitoria da UAN e ter links com os demais subsistemas que se encontram distribudos pelas distintas Unidades Orgnicas. Esta soluo permitir a disponibilizao das informaes dos DRHs das Unidades Orgnicas na rede, o que tornar esta informao disponivel de forma online. O sistema vem colmatar algumas insuficincias no funcionamento dos DRHs das Unidades Orgnicas e Reitoria. As principais melhorias que o sistema trar so: Permitir o registo dos dados pessoais, acadmicos, laborais e adicionais de forma segura e mais rpida. Maior controlo nos movimentos, avaliaes e controlo de efectividade dos funcionrios o que aumentar o rendimento do trabalho feito nos respectivos DRHs. O acesso informao ser mais rpido. O maior controlo dos funcionrios permitir fazer-se um maior controlo da qualidade de servio desempenhado pelos mesmos o que aumentar tambm a qualidade de produto (Licenciados) que sairo da UAN para o mercado de trabalho. Ser possvel fazer-se um maior controlo nos descontos aos trabalhadores faltosos, bem como ter estatsticas frequentes do trabalho desempenhado pelos mesmos por meio dos distintos relatrios que esto disponveis no sistema. Um maior controlo dos trabalhadores que estejam em condies de reformar-se e os que tm menos de cinco (5) anos para atingir a reforma. Possibilidade de efectuar-se estatisticas mensais, semestrais e anuais sobre os dados das efectividades, movimentos e avaliaes dos trabalhadores. Maior rapidez na disponibilidade das informaes cientifico-acadmicas dos trabalhadores docentes, o que facilitar na seleo de docentes para leccionarem nos distintos plos existentes nas provincias onde h carncia de professores.

3.1.3 - Anlise Econmica


OBS: A anlise econmica que foi apresentada no resultado de dados reais pois na elaborao de projectos acadmicos no se cumprem totalmente normas padronizadas para o seu desenvolvimento, o que facilitaria na avaliao dos custos dos mesmos visto existir mecanismos de clculos dos mesmos j padronizados. Contudo, com o fim de mostrar o uso de uma metodologia de clculo econmico, de seguida se publicam os resultados do que poderia ser o calculo dos custos e benefcios deste trabalho. CUSTOS Custos directo Custos dos aplicativos usados Material Usado Visio 2003 PhotoImpact 6 MySql Server jakarta-tomcat-5.0.24 Jbuilder X Custo Total Valor 400 275 0 0 1000 Quantidade 1 1 1 1 1 ValorTotal 400 275 0 0 1000 1675

Carlos Jorge Lima David

45

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Obs: O valor do custo do material em dlares (USD). Custos com o pessoal (8 meses de trabalho) Analista 20000.00 USD. Programador 15000.00 USD. DBD 10000.00 USD WebDesigner 1000.00 USD Custo de manuteno 1000 USD Por deslocao sempre que necessrio. 1000 USD Por consultoria sempre que necessrio. Custos indirecto Custos da alimentao durante a fase do projecto 250 USD Deslocaes (Transporte) durante a elaborao do projecto 150.00 USD. Custo total do projecto 50075.00 USD o equivalente a 4.156.225 Kz ( 1USD = 83 Kz) BENEFICIOS A implementao do sistema poder trazer os seguintes benefcios: Benefcios tangveis Transportes No haver necessidade de deslocao para actualizao dos dados dos trabalhadores dos departamentos para o DRH da Unidade Orgnica e da Unidade Orgnica para Reitoria. No ser necessrio a manuteno dos arquivos no informatizados com a informao dos trabalhadores o que diminuir os gastos a nvel das direces das Unidades Orgnicas e Reitoria. Maior controlo na atribuio dos subsdios aos trabalhadores e controlo da efectividade dos mesmos o que permitir a reduo de gastos por parte da Unidade Orgnica. Benefcios Intangveis Aumento do rendimento do pessoal trabalhador do DRH. Melhoria na disponibilidade da informao e consequente prestao de servio aos trabalhadores. Maior fiabilidade e segurana da informao. Neste momento no possvel quantificar-se a relao custo-beneficio do projecto, pois o mesmo ainda no foi implementado.

Carlos Jorge Lima David

46

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.1.3.1 - Anlise da Viabilidade do Projecto O sistema SIGRH-UAN tem um tempo de vida til indeterminado. A soluo apresentada funciona tanto em plataformas Windows como em plataformas Unix o que garante a funcionalidade do SIGRH-UAN mesmo com a mudana do sistema operativo. O sistema pode ser considerado vivel, pois os custos empreendidos no desenvolvimento do mesmo so compatveis com os benefcios futuros que o sistema trar.

3.1.4 - Planificao do Projecto e Estimativa de Custo


Projectos que Dependem deste Projecto Sistema Financeiro: Depende da informao dos funcionrios registados no SIGRH-UAN. Sistema de Controlo de Efectividade: Depende das informaes dos funcionrios registados no SIGRH-UAN. Projectos do qual este projecto depende Portal WEB da UAN. Sistema de controlo de efectividade electrnico: Poder-se- fazer o controlo da efectividade com cartes magnticos e o SIGRH-UAN consultar as informaes deste sistema e actualizar no processo do funcionrio. Sistema Financeiro. Projecto UniNet, rede da Universidade Agostinho Neto: Necessrio para o funcionamento do SIGRH-UAN. Tarefas e Tempos Estimados A seguir apresenta-se o plano para concepo e implementao do sistema. Os passos necessrios para concluso do projecto esto ilustrados na tabela abaixo:

ID 1 2 3 4 5 6

Tarefa Estudo Preliminar Anlise do Sistema Desenho do Sistema Implementao Testes e Integrao Instalao

Data de Inicio 07-04-2005 08-05-2005 02-08-2005 01-10-2005 26-11-2005

Data do Fim 07-05-2005 01-08-2005 30-09-2005 25-11-2005 15-12-2005

Durao 4 Semanas 12 Semanas 8 Semanas 8 Semanas 3 Semanas

Figura 3.3 - Actividades e tempos estimados

Carlos Jorge Lima David

47

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Grafos de PERT Grafos de PERT Para Desenvolvimento dos Componentes

Figura 3.4 - Grafo de PERT para o desenvolvimento dos componentes Grafos de PERT Para Implementao do Sistema

Figura 3.5 - Grafo de PERT para a implementao do sistema

Carlos Jorge Lima David

48

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.2 - mbito do Sistema


Seguindo a estrutura organizacional da UAN a nova organizao dos Recursos Humanos ser constituda por unidades organizativas a saber: Unidade Central (Reitoria), Unidade Provincial (Plos da UAN existentes nas provncias exceptuando a capital), Unidade Unidades Orgnicas (Plos da UAN em Luanda), Unidade Internet.

Figura 3.6 Organigrama do SIGRH-UAN Unidade Central Esta unidade responsvel pelo controlo da gesto dos Recursos Humanos da Universidade Agostinho Neto, recebendo regularmente os dados gerados pelas restantes unidades, e registando dados gerados na reitoria. Unidade Provincial Esta unidade est subdividida em subunidades, cada uma das subunidades faz a gesto dos Recursos Humanos dos plos universitrios existentes na provncia em que est associada exceptuando Luanda. A Unidade Provincial enviar os dados dos seus subsistemas para a unidade Central regularmente. Unidade Orgnica Esta unidade est encarregada de gerir os dados das unidades orgnicas em Luanda. Est subdividida em subunidades, cada uma das subunidades (Unidade Orgnica) far a gesto dos dados da unidade orgnica em questo e o envio regular das informaes a unidade central. Devido a independncia de trabalho entre as distintas unidades orgnicas optou-se por seguir a filosofia de autonomia existente na UAN. Sendo assim, cada unidade orgnica ser autnoma com relao ao sistema, podendo a referida unidade orgnica trabalhar mesmo que haja falha na comunicao com os demais subsistemas. Cada um dos subsistemas ter a sua prpria base de dados, as informaes guardadas em cada subsistema sero replicadas na base de dados do subsistema central.
Carlos Jorge Lima David

49

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Esta forma de implementao introduz outro problema que a redundncia da informao, mas que para este sistema plenamente justificada pelo aumento da eficincia das operaes de consultas, efectuadas localmente em cada um dos subsistemas.

Figura 3.7 Diagrama de pacotes do SIGRH-UAN Subsistema Central A funo principal deste subsistema centralizar e gerir toda a informao gerada nos outros subsistemas. Logo, dever manter informaes actualizadas sobre os dados gerais dos Funcionrios, Movimentos, Ausncias e Avaliaes dos trabalhadores, interagindo com os outros subsistemas, atravs de um mecanismo de actualizao regular por troca de mensagens, e pela insero dos dados dos trabalhadores da Reitoria. Este subsistema ser instalado na Reitoria da UAN. Subsistema Provincial A funo principal deste subsistema centralizar e gerir toda a informao gerada nos subsistemas existentes em cada provncia. Logo, dever manter informaes actualizadas sobre os dados gerais dos Funcionrios, Movimentos, Ausncias e Avaliaes dos trabalhadores. O sistema faz o envio regular das actualizaes ao subsistema central para a actualizao do mesmo. Este subsistema ser instalado num dos plos universitrios de cada provncia exceptuado Luanda. Subsistema Unidade Orgnica A funo principal deste subsistema centralizar e gerir todas informaes da unidade orgnica a que estiver associado (unidade orgnica em Luanda). Logo, dever manter informaes actualizadas sobre os dados gerais dos Funcionrios, Movimentos, Ausncias e as Avaliaes associadas aos trabalhadores da respectiva unidade orgnica.

Carlos Jorge Lima David

50

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.3 - Actores do Sistema


Existem os seguintes actores que interagem com o sistema de informao do SIGRH-UAN: Trabalhador um funcionrio que tem vnculo com a UAN. Funcionrio do DRH o funcionrio que trabalha no departamento de Recursos Humanos de uma Unidade Orgnica especifica ou Reitoria. Gestor do DRH o funcionrio responsvel do departamento de Recursos Humanos de uma Unidade Orgnica especifica ou Reitoria. Decano a entidade mxima na Unidade Orgnica. Trabalhador do DRH Reitoria o funcionrio da Reitoria que trabalha no Departamento de Recursos Humanos. Existem tambm outros actores que so os subsistemas que constituem o SIGRH-UAN: Subsistema Central. Subsistema Provincial. Subsistema Unidade Orgnica. Subsistema Internet.

3.3.1 - Use Cases dos Actores


Tomando como referncia cada um dos actores identificam-se os seguintes use cases em que participam: Cibernauta: Uses Cases: Consultar informaes sobre o DRH Reitoria Consultar informaes sobre concurso pblico Consultar informaes sobre o DAAC da Reitoria Trabalhador: Use Cases: Consultar dados dos Funcionrios Consultar Movimentos via Internet Consultar Ausncias via Internet Consultar Avaliaes via Internet Funcionrio DRH: Uses Cases: Registar Funcionrios Registar Movimentos Registar Ausncias Registar Avaliaes

Carlos Jorge Lima David

51

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Visualizar Funcionrios Visualizar Movimentos Visualizar Ausncias Visualizar Avaliaes Consultar Funcionrios Consultar Movimentos Consultar Ausncias Consultar Avaliaes Obter Relatrios

Gestor DRH: Uses Cases: Registar Funcionrios Registar Movimentos Registar Ausncias Registar Avaliaes Visualizar Funcionrios Visualizar Movimentos Visualizar Ausncias Visualizar Avaliaes Alterar Funcionrios Alterar Movimentos Alterar Ausncias Alterar Avaliaes Listar Funcionrios Listar Movimentos Listar Ausncias Listar Avaliaes Consultar Funcionrios Consultar Movimentos Consultar Ausncias Consultar Avaliaes Obter Relatrios Decano: Uses Cases: Consultar Funcionrios via Internet Consultar Movimentos via Internet Consultar Ausncias via Internet Consultar Avaliaes via Internet Obter Relatrios Trabalhador DRH Reitoria: Uses Cases:
Carlos Jorge Lima David

52

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Registar Funcionrios Registar Movimentos Registar Ausncias Registar Avaliaes Visualizar Funcionrios Visualizar Movimentos Visualizar Ausncias Visualizar Avaliaes Alterar Funcionrios Alterar Movimentos Alterar Ausncias Alterar Avaliaes Listar Funcionrios Listar Movimentos Listar Ausncias Listar Avaliaes Consultar Funcionrios Consultar Movimentos Consultar Ausncias Consultar Avaliaes Obter Relatrios

3.3.2 - Descrio dos Uses Cases do Sistema


Use cases Controlo de Acesso Use cases Validar Dados Use cases Registar Funcionrios 1. Use cases Registar Dados Gerais 2. Use cases Registar Dados Laborais Use cases Registar Locais Trabalho Anteriores Use cases Registar Capacitaes 3. Use cases Registar Dados Acadmicos Use cases Registar Estudos Realizados Use cases Registar Cursos Feitos Use cases Registar Idiomas 4. Use cases Registar Dados Adicionais Use cases Registar Agregado Familiar Use cases Registar Situao Medica Use cases Registar Documentos Adicionais Use cases Registar Movimentos 1. Use cases Registar Transferncias 2. Use cases Registar Cargos Ocupados Use cases Registar Avaliaes 1. Use cases Registar Distines e louvores 2. Use cases Registar Processos disciplinares 3. Use cases Registar Classificaes 53

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Use cases Registar Ausncias 1. Use cases Registar Faltas 2. Use cases Registar Licenas 3. Use cases Registar Ferias Use cases Alterar Funcionrios Use cases Alterar Movimentos Use cases Alterar Avaliaes Use cases Alterar Ausncias Use cases Visualizar Funcionrios Use cases Visualizar Movimentos Use cases Visualizar Avaliaes Use cases Visualizar Ausncias Use cases Consultar Funcionrios Use cases Consultar Movimentos Use cases Consultar Avaliaes Use cases Consultar Ausncias

Use Case. Controle de Acesso


1. O funcionrio preenche o formulrio de entrada (index.jsp) digitando o seu cdigo de utilizador e a sua palavra-chave. 2. O sistema informtico processa a informao inserida para verificar se o utilizador existe e quais so os seus privilgios. 3. Se o utilizador existir, verificar-se- o perfil do mesmo e permitir-se- o acesso a pgina associada ao seu perfil seno o acesso ser negado e voltar-se- para o passo 1.

Use Case. Registar Funcionrios


Viso geral: O use case registar funcionrio est composto por quatro processos: Registar Dados Pessoais: Permite fazer a insero dos dados pessoais de um determinado funcionrio no sistema. Registar Dados Acadmicos: Permite fazer a insero das informaes acadmicas de cada funcionrio tais como: Estudos realizados, cursos feitos e idiomas falados associados ao funcionrio. Registar Dados Adicionais: Permite fazer a insero das informaes concernentes ao agregado familiar, situao mdica e documentos adicionais associados ao funcionrio. Registar Dados Laborais: Permite fazer a insero dos dados laborais de cada funcionrio. Isto , inserir informaes acerca dos locais de trabalho anteriores e as capacitaes (formaes internas ou externas) associados ao funcionrio. Funcionamento: 1. Uses controle de acesso.

Carlos Jorge Lima David

54

Sistema Informtico para a Gesto de Recursos Humanos - UAN

2. O use case comea quando o funcionrio do DRH seleccionar a opo novo do menu Funcionrios na pgina principal do utilizador administrador ou utilizador avanado do aplicativo. 3. O Funcionrio preenche o formulrio com os dados do funcionrio. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Use Case. Registar Movimentos


Viso Geral: O use case registar movimentos est composto por dois processos: Registar Transferncias: Permite fazer a insero das informaes associadas as transferncias (transferncias de locais de trabalho) associadas aos funcionrios. Registar Cargos Ocupados: Permite fazer a insero das informaes associadas aos cargos que um determinado funcionrio ocupou num determinado local de trabalho. Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o funcionrio do DRH seleccionar a opo novo do menu Movimentos na pgina principal do utilizador administrador ou utilizador avanado do aplicativo. 3. O Funcionrio preenche o formulrio com os dados do funcionrio. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Use Case. Registar Avaliaes


Viso Geral: O use case registar avaliaes est composto por trs processos: Registar Distines e Louvores: Este use case permite fazer a insero das informaes associadas as menes honrosas atribudas a um determinado trabalhador.

Carlos Jorge Lima David

55

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Registrar Processos Disciplinares: Permite fazer a insero das informaes dos processos disciplinares que foram movidos contra os funcionrios. Registar Classificaes: Permite fazer a insero das informaes associadas as classificaes que so feitas aos funcionrios em funo do rendimento de trabalho.

Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o funcionrio do DRH seleccionar a opo novo do menu Avaliaes na pgina principal do utilizador administrador ou utilizador avanado do aplicativo. 3. O Funcionrio preenche o formulrio com os dados do funcionrio. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Use Case. Registar Ausncias


Viso Geral: Este use case est composto por trs processos: Registar Ferias: Este use case permite fazer a insero das informaes associadas s ferias dos funcionrios. Registar Licenas: Permite fazer a insero das informaes associadas s licenas dos funcionrios. Registar Faltas: Permite fazer a insero dos dados das faltas dos funcionrios. Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o funcionrio do DRH seleccionar a opo novo do menu Ausncias na pgina principal do utilizador administrador ou utilizador avanado do aplicativo. 3. O Funcionrio preenche o formulrio com os dados do funcionrio. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Carlos Jorge Lima David

56

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Use Case. Alterar Funcionrios


Viso geral: O use case alterar funcionrio est composto por quatro processos: Alterar Dados Pessoais: Permite fazer a alterao dos dados pessoais de um determinado funcionrio no sistema. Para tal, o utilizador seleccionar o registo que pretende alterar e os dados sero visualizados no formulrio de alterao, para a posterior alterao dos mesmos. Alterar Dados Acadmicos: Permite fazer a alterao das informaes acadmicas de cada funcionrio tais como: Estudos realizados, cursos feitos e idiomas falados associados ao funcionrio. Alterar Dados Adicionais: Permite fazer a alterao das informaes concernentes ao agregado familiar, situao mdica e documentos adicionais associados ao funcionrio. Alterar Dados Laborais: Permite fazer a alterao dos dados laborais de cada funcionrio. Isto , alterar informaes acerca dos locais de trabalho anteriores e as capacitaes (formaes internas ou externas) associados ao funcionrio. Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o gestor do DRH seleccionar a opo alterar do menu Funcionrios na pgina principal do utilizador administrador do aplicativo. 3. O gestor selecciona o processo que pretende alterar, os dados so pesquisados na base de dados e retornados no formulrio de alterao de dados. O gestor altera os dados no formulrio inserindo os dados actualizados do funcionrio. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Use Case. Alterar Movimentos


Viso Geral: O use case alterar movimentos est composto por dois processos: Alterar Transferncias: Permite fazer a alterao das informaes associadas as transferncias (transferncias de locais de trabalho) associadas aos funcionrios. Para tal, o utilizador selecciona o registo no qual pretende fazer as alteraes e os seus dados sero visualizados no formulrio, para a posterior alterao. Registar Cargos Ocupados: Permite fazer a alterao das informaes associadas aos cargos que um determinado funcionrio ocupou num determinado local de trabalho.

Carlos Jorge Lima David

57

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o gestor do DRH seleccionar a opo alterar do menu Movimentos na pgina principal do utilizador administrador do aplicativo. 3. O gestor selecciona o processo que pretende alterar, os dados so pesquisados na base de dados e retornados no formulrio de alterao de dados. O gestor altera os dados no formulrio inserindo os dados actualizados sobre os movimentos. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Use Case. Alterar Ausncias


Viso Geral: Este use case est composto por trs processos: Alterar Frias: Este use case permite fazer a alterao das informaes associadas s frias dos funcionrios. Alterar Licenas: Permite fazer a alterao das informaes associadas s licenas dos funcionrios. Alterar Faltas: Permite fazer a alterao dos dados das faltas dos funcionrios. Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o gestor do DRH seleccionar a opo alterar do menu Ausncias na pgina principal do utilizador administrador do aplicativo. 3. O gestor selecciona o processo que pretende alterar, os dados so pesquisados na base de dados e retornados no formulrio de alterao de dados. O gestor altera os dados no formulrio inserindo os dados actualizados sobre os movimentos. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Carlos Jorge Lima David

58

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Use Case. Alterar Avaliaes


Viso Geral: O use case alterar avaliaes est composto por trs processos: Alterar Distines e Louvores: Este use case permite fazer a alterao das informaes associadas as menes honrosas atribudas a um determinado trabalhador. Alterar Processos Disciplinares: Permite fazer a alterao das informaes dos processos disciplinares que foram movidos contra os funcionrios. Alterar Classificaes: Permite fazer a alterao das informaes associadas as classificaes que so feitas aos funcionrios em funo do rendimento de trabalho. Funcionamento: 1. Uses controle de acesso. 2. O use case comea quando o gestor do DRH seleccionar a opo alterar do menu Avaliaes na pgina principal do utilizador administrador do aplicativo. 3. O gestor selecciona o processo que pretende alterar, os dados so pesquisados na base de dados e retornados no formulrio de alterao de dados. O gestor altera os dados no formulrio inserindo os dados actualizados sobre os movimentos. Os dados so enviados para o sistema da respectiva Unidade Orgnica ou Reitoria. 4. Uses validar dados. 5. Se os dados forem invlidos. 6. Ento anula o registro e envia uma mensagem de volta ao utilizador em seguida volta-se para o passo 3. 7. Se os dados forem validos o sistema envia os dados e grava-os na base de dados. 8. Caminhos Alternativos: O funcionrio pode cancelar o processo a partir de qualquer passo pressionado o boto cancelar.

Carlos Jorge Lima David

59

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.4 - Diagramas de Use Cases do Sistema


3.4.1 - Diagramas de Use Cases do Subsistema Central

Figura 3.8 Diagrama de Use Case do Subsistema Central

Carlos Jorge Lima David

60

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Descrio: Vrios actores interagem com o subsistema central, garantindo assim a existncia de dados actualizados no mesmo. Actores Subsistema Provincial: Actualiza o subsistema central com os dados existentes no mesmo, isto , os dados que so inseridos no subsistema provincial so enviados automaticamente para o subsistema central num perodo escolhido pelo DBA, no sentido de manter a base de dados central actualizada. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Subsistema Unidade Orgnica: Actualiza o subsistema central com os dados existentes no mesmo, isto , os dados que so inseridos no subsistema unidade orgnica, so enviados automaticamente para o subsistema central num perodo escolhido pelo DBA, no sentido de manter a base de dados central actualizada. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Trabalhador do DRH Reitoria: Este actor interage com o sistema fazendo as actualizaes dos dados dos trabalhadores da Reitoria da UAN. Este actor tem permisses para efectuar as seguintes operaes: Registar, alterar, consultar e visualizar: Funcionrios, Movimentos, Ausncias e Avaliaes. Obter relatrios. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados.

Carlos Jorge Lima David

61

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.4.2 - Diagramas de Use Cases do Subsistema Unidade Orgnica

Figura 3.9 Diagrama de Use Case do Subsistema Unidade Orgnica

Carlos Jorge Lima David

62

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Descrio: Vrios actores interagem com o subsistema unidade orgnica, garantindo assim os dados existentes no mesmo. Actores Trabalhador: Este actor tem permisses para efectuar consultas no subsistema (Unidade Orgnica) a que estiver associado. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Decano: Este actor tem permisses para efectuar consultas no subsistema (Unidade Orgnica) e obter relatrios do subsistema a que estiver associado. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Funcionrio do DRH: Este actor interage com o sistema fazendo as actualizaes dos dados dos trabalhadores da Unidade Orgnica. Este actor tem permisses para efectuar as seguintes operaes: Registar, consultar e visualizar: Funcionrios, Movimentos, Ausncias e Avaliaes. Obter relatrios. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Gestor do DRH: Este actor interage com o sistema fazendo as actualizaes dos dados dos trabalhadores da Unidade Orgnica. Este actor tem permisses para efectuar as seguintes operaes: Registar, alterar, consultar, eliminar e visualizar: Funcionrios, Movimentos, Ausncias e Avaliaes. Obter relatrios. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Subsistema Central: Activa o servio de Internet para facilitar a transferncia dos dados do subsistema Unidade Orgnica para o subsistema central.

Carlos Jorge Lima David

63

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3.4.1 - Diagramas de Use Cases do Subsistema Provincial

Figura 3.10 Diagrama de Use Case do Subsistema Unidade Provincial

Carlos Jorge Lima David

64

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Descrio: Vrios actores interagem com o subsistema provincial, garantindo assim os dados existentes no mesmo. Actores Trabalhador: Este actor tem permisses para efectuar consultas no subsistema (Provincial) a que estiver associado. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Decano: Este actor tem permisses para efectuar consultas no subsistema (Provincial) e obter relatrios do subsistema a que estiver associado. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Funcionrio do DRH: Este actor interage com o sistema fazendo as actualizaes dos dados dos trabalhadores da Unidade Orgnica. Este actor tem permisses para efectuar as seguintes operaes: Registar, consultar e visualizar: Funcionrios, Movimentos, Ausncias e Avaliaes. Obter relatrios. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Gestor do DRH: Este actor interage com o sistema fazendo as actualizaes dos dados dos trabalhadores da Unidade Orgnica. Este actor tem permisses para efectuar as seguintes operaes: Registar, alterar, consultar, eliminar e visualizar: Funcionrios, Movimentos, Ausncias e Avaliaes. Obter relatrios. Para tal, faz-se um controlo de acesso no sentido de se garantir a segurana dos dados. Subsistema Central: Activa o servio de Internet para facilitar a transferncia dos dados do subsistema Unidade Provincial para o subsistema central.

Carlos Jorge Lima David

65

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 4 - Desenho do Sistema


4.1 - Camada de Apresentao e Negcio
A camada de apresentao responsvel pela interface do cliente. Por meio da mesma o cliente consegue interagir com o sistema, solicitando e enviando dados para o mesmo. A camada de negcio a camada que faz a gesto dos dados que so manipulados no sistema. Objectos de Interface Estes objectos representam os formulrios da aplicao. Actuam na camada de interface do sistema e servem de meio de insero de dados vindo do utilizador para o sistema e visualizao de dados do sistema pelo utilizador. Exemplo: Formulrio de registo dos movimentos, avaliaes, ausncias, dados acadmicos, dados laborais, dados adicionais e dados gerais dos funcionrios. A especificao detalhada da interface com o utilizador est apresentada em anexos (Anexo B). Objectos de Negcio Sendo a camada de negcio o corao (kernel) do sistema fundamental que seja ela a definir as regras de gesto do sistema. Estes objectos tm a funo de validar e controlar as regras de gesto e organizao do sistema (SIGRH-UAN). est camada que faz o processamento das solicitaes dos clientes e envia as mesmas ao servidor e a mesma camada faz a gesto dos dados que devem ser enviados aos clientes pelo servidor.

4.1.1 - Diagramas da Interface do Sistema

Figura 4.1 Diagrama da Interface do Sistema

Carlos Jorge Lima David

66

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Na figura supracitada podemos ver a interface index. Esta interface a interface inicial do sistema, atraves dela podemos aceder distintas funcionalidades do sistema. Na pgina index temos possibilidades de consultar algumas informaes que se encontram disponiveis na mesma, a saber: Recursos Humanos: uma opo que tem um link com uma pgina onde constam informaes sobre o DRH da UAN. Assuntos Acadmicos: uma opo que tem um link com uma pgina onde consta informaes sobre o DAAC da UAN. Assuntos Cientificos: uma opo que tem um link com uma pgina onde consta informaes sobre o departamento de assuntos cientificos da UAN. Informaes Utis: Onde esto disponiveis informaes sobre concursos publicos para admisso de trabalhadores na UAN e outras. Organigrama da UAN: descrito o organigrama da UAN. Ajuda do SIGRH-UAN: Permite aceder a ajuda online do sistema. O diagrama de interface supracitado mostra as interfaces possveis do sistema. Existem trs perfis de utilizadores do sistema e cada um com a sua interface prpria. Temos a interface do utilizador administrador, utilizador avanado e a do utilizador normal. de realar que estes perfis so para a utilizao do sistema. Teremos ainda um utilizador Administrador avanado que ser o administrador do sistema na Unidade Orgnica em que estiver associado. Este utilizador ter os privilgios de alterar a estrutura da base de dados em funo das modificaes que forem incrementadas Os diagramas abaixo ilustrados (Figura 4.1.1.1, Figura 4.1.1.2 e Figura 4.1.1.3) ilustram a interface do SIGRH-UAN para os distintos tipos de utilizadores existentes. Na figura 4.1.1.1 apresentada a interface do utilizador administrador. Este utilizador tem disponvel, todas as operaes que podem ser feitas no SIGRH-UAN. Neste diagrama as classes representam as interfaces existentes no SIGRH-UAN para o respectivo perfil. Sendo assim esto representadas as interfaces das classes a saber: Funcionrios: Registar novo funcionrio, alterar funcionrio, consultar funcionrio, visualizar funcionrio e remover funcionrio. O sistema pode ter muitas consultas e com o passar do tempo pode surgir a necessidade de se acrescer algumas consultas. Sendo assim no foram descritas todas as consultas que podem ser encontradas no sistema. Movimento: Registar movimento dos funcionrios, alterar movimento, consultar movimento, visualizar movimento e remover movimento. Ausncias: Registar ausncias, alterar ausncias, consultar ausncias, visualizar ausncias e remover ausncias. Avaliaes: Registar avaliaes, alterar, consultar, visualizar e remover. A figura 4.1.1.2 ilustra a interface do utilizador avanado. Este utilizador tem limitaes no acesso as funcionalidades do SIGRH-UAN. Nesta interface esto disponveis as opes para um utilizador avanado a saber: Registar: Funcionrios, movimentos, ausncias e avaliaes. Consultar: Funcionrios, movimentos, ausncias e avaliaes. A figura 4.1.1.3 ilustra a interface do utilizador normal. Este utilizador tem limitaes no acesso as funcionalidades do SIGRH-UAN. Nesta interface esto disponveis as opes para um utilizador normal a saber: Consultar: Funcionrios, ausncias, avaliaes e movimentos.

Carlos Jorge Lima David

67

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.1.1 - Diagrama da Interface do Administrador

Figura 4.2 Diagrama da Interface do Administrador


Carlos Jorge Lima David

68

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.1.2 - Diagrama da Interface do Utilizador Avanado

Figura 4.3 Diagrama da Interface do Utilizador Avanado 4.1.1.3 - Diagrama da Interface do Utilizador Normal

Figura 4.4 Diagrama da Interface do Utilizador Normal

Carlos Jorge Lima David

69

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.2 - Diagramas de Sequncias


Os diagramas de sequncia apresentados neste captulo, esto constitudos pelos elementos de modelao seguintes: Objectos da classe. Mensagem ou mtodo da classe. Tempo de vida dos objectos. Tempo de activao das mensagens. Os objectos representam as entidades internas do sistema. Alguns objectos tambm podem representar entidades externas. Entidade Interna um elemento do sistema que representa uma abstraco definida por um objecto do sistema. Como exemplo os movimentos, avaliaes, ausncias, dados acadmicos, dados laborais, dados adicionais, dados gerais, unidades orgnicas, docentes, etc. Entidades Externas As entidades externas representam os actores ou utilizadores do sistema. Neste aplicativo temos as seguintes entidades externas: Funcionrios DRH, Gestor DRH, trabalhadores, sistema central, sistema Unidade Orgnica, Cibernauta, etc. Existem ainda os mtodos de consulta e mutantes das instncias de um objecto de uma classe ou das variveis de uma classe. Os mtodos get so mtodos de consulta que permitem aceder a informao (valor) de uma varivel ou objecto de uma classe. Os mtodos set so mtodos mutantes que permitem modificar a informao (valor) de uma varivel ou objecto de uma classe. 4.1.2.1 - Diagrama de Sequncia do Use Case Controle de Acesso Este use case executado sempre que um utilizador queira aceder ao sistema de gesto. Serve para fazer o controlo dos utilizadores e garantir a segurana lgica dos dados a nvel do aplicativo. Este diagrama est composto por objectos das seguintes classes que so: Form Index. Classe que cria a interface da pgina ndex do sistema. Controle Acesso. Permisso.

Carlos Jorge Lima David

70

Sistema Informtico para a Gesto de Recursos Humanos - UAN

f:Form Index

c:Controle Acesso

setDadosLogin()

<< create() >>

p:Permisso

verificaPermissao()

Resposta

Resposta

Figura 4.5 Diagrama de Sequencia do Use Cases Controlo de Acesso Especificao do Diagrama Objectos f instancia da classe FormIndex. c instancia da classe ControleAcesso. p instancia da classe Permisso. Mensagens setDadosLogin(string userName, String pass). Inicializa as variveis userID e password da classe login com os valores userName e pass. create(). Do objecto permisso, Cria uma instancia de um objecto da classe ControleAcesso.

Carlos Jorge Lima David

71

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Resposta(). Do objecto permisso. Retorna uma string com o valor da varivel privilegio do utilidador. verificaPermissao(). Do objecto permisso. Retorna o valor da varivel permisso da classe ControleAcesso. Funcionamento Quando o utilizador tenta aceder uma pgina que permite a interaco com o sistema por meio da pgina inicial do mesmo, o sistema comea por enviar os dados de login do utilizador (nome de utilizao e palavra chave), para o objecto da classe Controlo de Acesso por meio do mtodo setDadosLogin(). A classe Controle Acesso cria um objecto da classe Permisso e invocando o mtodo create(), depois do objecto estar criado invoca o mtodo verifica(), este mtodo envia os dados para outro objecto da classe Base Dados, para encontrar as permisses deste utilizador. Terminada a procura so retornadas as permisses atravs do mtodo resposta(). 4.1.2.2 - Diagrama de Sequncia do Use Case Registar Dados Gerais (Funcionrios) Nesta seco descreveu-se o use cases que permite o registo dos dados gerais de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo dos dados gerais e as mensagens passadas entre os objectos. Composio do Diagrama Objectos Objecto da classe FormNovoDadoGeral. Classe que cria a interface da pgina para registar os dados gerais de um funcionrio novo. Objecto da classe Sexos. Objecto da classe GruposSalariais. Objecto da classe Racas Objecto da classe SituacoesMedicas. Objecto da classe EstadosCivis. Objecto da classe LocaisTrabalhos. Objecto da classe Regimes. Objecto da classe EstadosActuais Objecto da classe TiposTrabalhadores. Objecto da classe DadosGerais. Objecto da classe BaseDados.

Carlos Jorge Lima David

72

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 4.5 Diagrama de Sequencia do Use Cases Registar Dados Gerais Mensagens create().Cria uma instancia de um objecto da classe DadosGerais. getSexo(). Retorna o valor do objecto sexo da classe Sexos. getRaca(). Retorna o valor do objecto raa da classe Racas. getGrupoSalarial(). Retorna o valor do objecto grupoSalarial da classe GruposSalariais. getSituacaoMedica(). Retorna o valor do objecto situacaoMedica da classe SituacoesMedicas. getEstadoCivil(). Retorna o valor do objecto estadoCivil da classe EstadosCivis. getLocalTrabalho(). Retorna o valor do objecto localTrabalho da classe LocaisTrabalhos. getRegime(). Retorna o valor do objecto regime da classe Regimes. getEstadoActual(). Retorna o valor do objecto estadoActual da classe da classe EstadosActuais. getTipoTrabalhador(). Retorna o valor do objecto tipoTrabalhador da classe TiposTrabalhadores. setDadoGeral(DadosGerais dg). Inicializa um objecto existente da classe DadosGerais com os dados contidos no objecto dg. gravarDadoGeral(). Envia um objecto da classe DadosGerais a classe persistente DadosGeraisP.

Carlos Jorge Lima David

73

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Confirmacao(). Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida os dados dos sexos, raas, grupos salariais, situao medica, estado civil, local trabalho, regime, estado actual e tipo trabalhador so pesquisados automaticamente e preenchidos na pgina, e tambm criado um objecto da classe DadosGerais para receber os dados do funcionrio, isto feito invocando o mtodo create() da classe DadosGerais. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso o trabalhador j esteja cadastrado ento o funcionrio cancela o novo cadastro do trabalhador. 4.1.2.3 - Diagrama de Sequncia do Use Case Registar Dados Acadmicos (Funcionrios) Nesta seco descreveu-se o use cases que permite o registo dos dados acadmicos de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo dos dados acadmicos e as mensagens passadas entre os mesmos. Composio do Diagrama Objectos Objecto da classe FormNovoDadoAcademico. Classe que cria a interface da pgina para registar os dados acadmicos de um funcionrio. Objecto da classe Cursos. Objecto da classe CursosFeitos. Objecto da classe Idiomas Objecto da classe TiposEstudos. Objecto da classe EstudosRealizados. Objecto da classe BaseDados.

Mensagens create(). Cria uma instncia (um objecto) da classe DadosAcademicos. getCurso(). Retorna o valor do objecto curso da classe Cursos. setCursoFeito(CursosFeitos cf). Incializa o objecto existente cursoFeito com o valor do objecto cf da classe CursosFeitos. gravarCursoFeito(). Envia o valor do objecto cursoFeito para a classe persistente CursosFeitosP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Carlos Jorge Lima David

74

Sistema Informtico para a Gesto de Recursos Humanos - UAN

getTipoIdioma(). Retorna o valor do objecto tipoIdioma da classe TiposIdiomas. getNivel(). Retorna o valor do objecto Nivel da classe Niveis. setIdioma(Idiomas id). Inicializa o objecto existente idioma da classe Idiomas com o valor do objecto id. gravarIdioma(). Envia o valor do objecto idioma da classe idiomas para a classe persistente IdiomasP. getTipoEstudo().Retorna o valor do objecto tipoEstudo da classe TiposEstudos. setEstudoRealizado(EstudosRealizados er). Inicializa o objecto existente estudoRealizado da classe EstudosRealizados com o valor do objecto er. gravarEstudoRealizado(). Envia o valor do objecto estudoRealizado da classe EstudosRealizados para a classe persistente EstudosRealizadosP.

Figura 4.6 Diagrama de Sequencia do Use Cases Registar Dados Acadmicos

Carlos Jorge Lima David

75

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida os dados dos cursos, idiomas, nveis e tipos estudos so pesquisados automaticamente e preenchidos na pgina, e tambm criado um objecto da classe DadosAcademicos para receber os dados acadmicos do funcionrio, isto feito invocando o mtodo create() da classe DadosAcademicos. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados acadmicos do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados acadmicos do mesmo ainda no foram inseridos, o trabalhador do DRH introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados acadmicos j existam ento o funcionrio cancela a insero dos dados. 4.1.2.4 - Diagrama de Sequncia do Use Case Registar Dados Laborais (Funcionrios) Nesta seco descreveu-se o use cases que permite o registo dos dados laborais de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo dos dados laborais e as mensagens passadas entre os mesmos. Composio do Diagrama Objectos Objecto da classe FormNovoDadoLaboral. Classe que cria a interface da pgina para registar os dados laborais de um funcionrio. Objecto da classe Profissoes. Objecto da classe TiposCapacitacoes. Objecto da classe Capacitacoes. Objecto da classe BaseDados.

Mensagens create(). Cria uma instncia (um objecto) da classe DadosLaborais. getProfissao(). Retorna o valor do objecto profissao da classe Profissoes. setLocalTrabalho(LocaisTrabalhos lt). Inicializa o objecto localTrabalho da classe LocaisTrabalhos com o valor do objecto lt. gravarLocalTrabalho(). Envia os dados do objecto local de trabalho da classe LocaisTrabalhos para um objecto da classe persistente LocaisTrabalhosP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getTipoCapacitacao(). Retorna o valor do objecto tipoCapacitacao da classe TiposCapacitaoes. setCapacitacoes(Capacitacoes cap). Inicializa o objecto existente capacitacao da classe Capacitacoes com o valor do objecto cap. 76

Carlos Jorge Lima David

Sistema Informtico para a Gesto de Recursos Humanos - UAN

gravarCapacitacoes(). Envia o valor do objecto capacitacao da classe Capacitacoes para a classe persistente CapacitacoesP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Figura 4.7 Diagrama de Sequencia do Use Cases Registar Dados Laborais Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida os dados dos cursos, idiomas, nveis e tipos estudos so pesquisados automaticamente e preenchidos na pgina, e tambm criado um objecto da classe DadosLaborais para receber os dados laborais do funcionrio, isto feito invocando o mtodo create() da classe DadosLaborais. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados laborais do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados laborais do mesmo ainda no foram inseridos, o trabalhador do DRH introduz os
Carlos Jorge Lima David

77

Sistema Informtico para a Gesto de Recursos Humanos - UAN

dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados laborais j existam ento o funcionrio cancela a insero dos dados. 4.1.2.5 - Diagrama de Sequncia do Use Case Registar Dados Adicionais (Funcionrios) Nesta seco descreveu-se o use cases que permite o registo dos dados Adicionais de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo dos dados adicionais e as mensagens passadas entre os mesmos. Composio do Diagrama Objectos Objecto da classe FormNovoDadoAdicional. Classe que cria a interface da pgina para registar os dados adicionais de um funcionrio. Objecto da classe TiposDoadores. Objecto da classe GruposSanguineos. Objecto da classe Sexos. Objecto da classe EstadosCivis. Objecto da classe BaseDados.

Mensagens create(). Cria uma instncia de um objecto da classe DadosAdicionais. getTipoDoador(). Retorna o valor do objecto tipoDoador da classe TiposDoadores. getGrupoSanguineo(). Retorna o valor do objecto grupoSanguineo da classe GruposSanguineos. setSituacaoMedica(SituacaoMedica sm).Inicializa o objecto situacaoMedica da da classe SituacaoMedica com o valor do objecto sm. gravarSituacaoMedica(). Envia o valor do objecto situacaoMedica da classe SituacaoMedica para um objecto da classe persistente SituacaoMedicaP. confirmacao(). Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getSexo(). Retorna o valor do objecto sexo da classe Sexos. getEstadoCivil(). Retorna o valor do objecto estadoCivil da classe EstadosCivis. setAgregadoFamiliar(AgregadosFamiliares af). Inicializa o objecto agregadoFamiliar da classe AgregadosFamiliares com o valor do objecto af. gravarAgregadoFamiliar(). Envia o valor do objecto agregadoFamiliar da classe AgregadosFamiliares para um objecto da classe persistente AgregadosFamiliaresP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. setDocumentoAdicional(DocumentoAdicional da). Inicializa o objecto documentoAdicional da classe classe DocumentoAdicional com o valor do objecto da. gravarDocumentoAdicional(). Envia o valor do objecto documentoAdicional da classe DocumentoAdicional para um objecto da classe persistente DocumentoAdicionalP. confirmacao(). Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Carlos Jorge Lima David

78

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida os dados dos tipodoador, gruposanguineo, sexo e estadocivil so pesquisados automaticamente e preenchidos na pgina, e tambm criado um objecto da classe DadosAdicionais para receber os dados acadmicos do funcionrio, isto feito invocando o mtodo create() da classe DadosAdicionais. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados adicionais do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados adicionais do mesmo ainda no foram inseridos, o trabalhador do DRH introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados adicionais j existam ento o funcionrio cancela a insero dos dados.

Figura 4.8 Diagrama de Sequencia do Use Cases Registar Dados Adicionais

Carlos Jorge Lima David

79

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.2.6 - Diagrama de Sequncia do Use Case Registar Movimentos Nesta seco descreveu-se o use cases que permite o registo dos movimentos de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo dos movimentos e as mensagens passadas entre os mesmos.

Figura 4.9 Diagrama de Sequencia do Use Cases Registar Movimentos

Carlos Jorge Lima David

80

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Composio do Diagrama Objectos Objecto da classe FormNovoMovimento. Classe que cria a interface da pgina para registar os dados dos movimentos de um funcionrio. Objecto da classe Transferencias. Objecto da classe ProcessosDisciplinares. Objecto da classe Classificacoes. Objecto da classe Cargos. Objecto da classe TiposDistincoes. Objecto da classe TiposInfraccoes. Objecto da classe TiposClassificacoes. Objecto da classe BaseDados.

Mensagens create(). Cria uma instncia de um objecto da classe Movimentos. setTransferencia(Transferncias t). Inicializa o objecto transferncia da classe Transferencias com o valor do objecto t. gravarTransferencias(). Envia o valor do objecto transferncia da classe transferncias para um objecto da classe persistente TransferenciasP. confirmao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getCargo().Retorna o valor do objecto cargo da classe Cargos. setCargoOcupado(CargosOcupados co). Inicializa o objecto cargoOcupado da classe CargosOcupados com o valor do objecto co. gravarCargosOcupados(). Envia o valor do objecto cargoOcupado da classe CargosOcupados para um objecto da classe persistente CargosOcupadosP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida o dado cargo pesquisado automaticamente e preenchido na pgina, e tambm criado um objecto da classe Movimentos para receber os dados laborais do funcionrio, isto feito invocando o mtodo create() da classe Movimentos. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados do movimento do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados do movimento do mesmo ainda no foram inseridos, o trabalhador do DRH introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados do movimento j existam ento o funcionrio cancela a insero dos dados.

Carlos Jorge Lima David

81

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.2.7 - Diagrama de Sequncia do Use Case Registar Ausncias Nesta seco descreveu-se o use cases que permite o registo das ausncias de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo das ausncias e as mensagens passadas entre os mesmos.

Figura 4.10 Diagrama de Sequencia do Use Cases Ausncias Composio do Diagrama Objectos Objecto da classe FormNovoAusencia. Classe que cria a interface da pgina para registar os dados das ausncias de um funcionrio.

Carlos Jorge Lima David

82

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Objecto da classe Ausencias. Objecto da classe Licencas. Objecto da classe Ferias. Objecto da classe Faltas. Objecto da classe TiposLicencas Objecto da classe BaseDados.

Mensagens create(). Cria uma instncia de um objecto da classe Ausencias. setFeria(Ferias f). Inicializa o objecto feria da classe Ferias com o valor do objecto f. gravarFeria(). Envia o valor do objecto feria da classe Ferias para um objecto da classe persistente FeriasP. confirmacao ().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. setFalta(Faltas f). Inicializa o objecto faltas da classe Faltas com o valor do objecto f. gravarFalta(). Envia o valor do objecto falta da classe Faltas para um objecto da classe persistente FaltasP confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getTipoLicenca(). Retorna o valor do objeto tipoLicenca da classe TiposLicencas. setLicenca(Licencas l). Inicializa o objecto licenca da classe Licencas com o valor do objecto l. gravarLicenca(). Envia o valor do objecto licenca da classe Licencas para um objecto da classe persistente LicencasP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida o dado do tipolicenca e pesquisado automaticamente e preenchido na pgina, e tambm criado um objecto da classe Ausencias para receber os dados da ausncia do funcionrio, isto feito invocando o mtodo create() da classe Ausencias. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados das ausncias do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados das ausncias do mesmo ainda no foram inseridos, o trabalhador do DRH introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados adicionais j existam ento o funcionrio cancela a insero dos dados.

Carlos Jorge Lima David

83

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.2.8 - Diagrama de Sequncia do Use Case Registar Avaliaes Nesta seco descreveu-se o use cases que permite o registo das avaliaes de um funcionrio no sistema. Mostra-se os objectos que interagem no processo de registo das avaliaes e as mensagens passadas entre os mesmos.

Figura 4.11 Diagrama de Sequencia do Use Cases Registar Avaliaes Composio do Diagrama Objectos Objecto da classe FormNovoAvaliaes. Classe que cria a interface da pgina para registar os dados das avaliaes de um funcionrio. Objecto da classe DistincoesLouvores.

Carlos Jorge Lima David

84

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Objecto da classe TiposDistincoes. Objecto da classe ProcessosDisciplinares. Objecto da classe TiposInfraccoes. Objecto da classe Classificacoes Objecto da classe Cargos Objecto da classe TiposClassificacoes Objecto da classe BaseDados.

Mensagens create(). Cria a instncia de um objecto da classe Avaliacoes. getTipoDistincao(). Retorna o valor do objecto tipoDistincao da classe TiposDistincoes setDistincoesLouvores(DistincoesLouvores dl). Inicializa o objecto distincaoLouvor da classe DistincoesLouvores com o valor do objecto dl. gravarDisitncoesLouvores(). Envia o valor do objecto distincaoLouvor da classe DistincoesLouvores para um objecto da classe persistente DistincoesLouvoresP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getTipoInfraccao(). Retorna o valor do objecto tipoInfraccao da classe TiposInfraccoes. setProcessoDisciplinar(ProcessosDisciplinares pd). Inicializa o objecto processoDisciplinar da classe ProcessosDisciplinares com o valor do objecto pd. gravarProcessoDisciplinar(). Envia o valor do objecto processoDisciplinar da classe ProcessosDisciplinares para um objecto da classe persistente ProcessosDisciplinaresP. confirmacao ().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados. getCargo(). Retorna o valor do objecto cargo da classe Cargo getTipoClassificacao(). Retorna o valor do objecto tipoClassificacao da classe TiposClassificacoes setClassificacoes(Classificacoes c). Inicializa o objecto classificacao da classe Classificacoes com o valor do objecto c. gravarClassificacoes(). Envia o valor do objecto classificacao da classe Classificacoes para um objecto da classe persistente ClassificacoesP. confirmacao().Retorna uma string contendo a informao se os dados foram gravados ou no. Mtodo da classe BaseDados.

Funcionamento A primeira mensagem enviada pelo actor Funcionrio a create(), com isto criado um objecto do tipo formulrio que na pratica o utilizador entende como se fosse abertura do formulrio, em seguida os dados dos tiposdistincoes, tiposinfraccoes, cargos e tiposclassificacoes so pesquisados automaticamente e preenchidos na pgina, e tambm criado um objecto da classe Avaliacoes para receber os dados da avaliao do funcionrio, isto feito invocando o mtodo create() da classe Avaliacoes. Em seguida o sistema fica a espera que o utilizador (funcionrio) introduza os dados das avaliaes do trabalhador. Se o trabalhador no estiver cadastrado ento o funcionrio do departamento dos recursos humanos acede o formulrio de criao dos dados gerais do trabalhador. Caso o trabalhador j exista, se os dados das avaliaes do mesmo ainda no foram inseridos, o
Carlos Jorge Lima David

85

Sistema Informtico para a Gesto de Recursos Humanos - UAN

trabalhador do DRH introduz os dados do funcionrio e o sistema regista os dados na base de dados. Caso os dados das avaliaes j existam ento o funcionrio cancela a insero dos dados.

4.1.3 - Diagramas de Colaborao


Diagramas de Colaborao Nesta sesso so apresentados os diagramas de colaborao dos principais use case do sistema. Os diagramas de colaborao realam a organizao estrutural dos objectos que enviam e recebem mensagens e apenas demonstra a interaco entre os objectos. Os diagramas de colaborao tm um funcionamento semelhante ao diagrama de sequncias. Componentes do Diagrama Este diagrama est constitudo pelos seguintes elementos de modelao: Objectos das classes, que so representados por rectngulos. Mensagens ou mtodos das classes, que so representadas atravs de setas. Ordenao numrica O diagrama de colaborao ordena numericamente as mensagens trocadas entre objectos, comeando no 1 para a primeira mensagem e progredindo sequencialmente. Para representar agrupamentos de mensagens, utiliza-se a escala decimal onde, por exemplo, a primeira mensagem de um subgrupo de mensagem ser a 1.1 a profundidade no limitada, permitindo assim representar casos complexos. Mensagem Cada mensagem corresponde a uma chamada de um mtodo de um objecto da classe.

Carlos Jorge Lima David

86

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.3.1 - Diagrama de colaborao do Use Cases Registar Dados Gerais dos Funcionrios

Figura 4.12 Diagrama de Colaborao do Use Cases Registar Dados Gerais dos Funcionrios A figura supracitada (figura 4.12) ilustra o diagrama de colaborao do use cases registar dados gerais dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao.

Carlos Jorge Lima David

87

Sistema Informtico para a Gesto de Recursos Humanos - UAN

O processo para o registo dos dados gerais do funcionrio comea com a primeira mensagem controloAcesso que permite controlar o acesso dos utilizadores no sistema, as mensagens so seguidas em funo da numerao. Depois de se fazer o controlo de acesso cria-se o formulrio com o mtodo create(). No processo create so invocados alguns mtodos para a criao do formulrio. Estes mtodos so os seguintes: getSexo() invocado para passar os valores na combobox de sexos. getRaca() invocado para passar os valores na combobox das raas. getGrupoSalarial() invocado para passar os valores na combobox dos grupos salariais. getSituacaoMilitar() invocado para passar os valores na combobox das situaes medicas. getEstadoCivil() invocado para passar os valores na combobox dos estados civis. getLocalTrabalho() invocado para passar os valores na combobox dos locais de trabalho. getRegime() invocado para passar os valores na combobox dos regimes. getEstadoActual() invocado para passar os valores na combobox dos estados actuais. getTipoTrabalhador() - invocado para passar os valores na combobox dos tipos de trabalhadores. O processo continua com a mensagem 3 registarDadoGeral. Esta operao centra-se em dois mtodos que so: setDadoGeral() Inicializa os atributos do objecto dadoGeral da classe DadosGerais. gravarDadoGeral() Escreve o objecto dadoGeral na tabela de dados gerais dos funcionrios. 4.1.3.2 Diagrama de colaborao do Use Cases Registar Dados Acadmicos (Funcionrio) A figura abaixo (figura 4.13) ilustra o diagrama de colaborao do use cases registar dados acadmicos dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo dos dados acadmicos do funcionrio comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. No processo create so invocados alguns mtodos para a criao do formulrio. Estes mtodos so os seguintes: getCurso() invocado para passar os valores na combobox de cursos. getTipoIdioma() invocado para passar os valores na combobox dos tipos de idiomas. getNivel() invocado para passar os valores na combobox dos niveis. getTipoEstado() invocado para passar os valores na combobox dos tipos de estados. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados acadmicos do trabalhador. O processo continua com a mensagem 3 registarDadoAcademico. Esta operao centra-se nos seguintes mtodos que so: setCursoFeito() Inicializa os atributos do objecto cursoFeito da classe Cursosfeitos. setIdioma() Inicializa os atributos do objecto idioma da classe Idiomas. setEstudoRealizado() Inicializa os atributos do objecto estudoRealizado da classe EstudosRealizados. gravarCursoFeito() Escreve o objecto cursoFeito na tabela dos cursos feitos. gravarIdioma() Escreve o objecto idioma na tabela de idiomas. gravarEstudoRealizado() Escreve o objecto estudoRealizado na tabela de estudos realizados.

Carlos Jorge Lima David

88

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 4.13 Diagrama de Colaborao do Use Cases Registar Dados Acadmicos

Carlos Jorge Lima David

89

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.3.3 - Diagrama de colaborao do Use Cases Registar Dados Laborais (Funcionrio)

Figura 4.14 Diagrama de Colaborao do Use Cases Registar Dados Laborais

Carlos Jorge Lima David

90

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A figura supracitada (figura 4.14) ilustra o diagrama de colaborao do use cases registar dados laborais dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo dos dados laborais do funcionrio comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. No processo create so invocados alguns mtodos para a criao do formulrio. Estes mtodos so os seguintes: getProfissao() invocado para passar os valores na combobox das profisses. getTipoCapacitacao() invocado para passar os valores na combobox das de capacitaes. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados laborais do trabalhador. O processo continua com a mensagem 3 registarDadoLaboral. Esta operao centra-se nos seguintes mtodos que so: setLocalTrabalhoAnterior() Inicializa os atributos do objecto localTrabalho da classe LocaisTrabalhoAnteriores. setCapacitacao() Inicializa os atributos do objecto capacitacao da classe capacitacoes. gravarLocalTrabalhoAnterior() Escreve o objecto localTrabalhoAnterior na tabela de LocaisTrabalhoAnteriores. gravarCapacitacao() Escreve o objecto capacitacao na tabela de capacitaes. 4.1.3.4 - Diagrama de colaborao do Use Cases Registar Dados Adicionais (Funcionrio) A figura abaixo (figura 4.15) ilustra o diagrama de colaborao do use cases registar dados adicionais dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo dos dados adicionais do funcionrio comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados laborais do trabalhador. O processo continua com a mensagem 3 registarDadoAdicional. Esta operao centra-se nos seguintes mtodos que so: setAgregadoFamiliar() Inicializa os atributos do objecto agregadoFamiliar da classe AgregadoFamiliar. setSituacaoMedica() Inicializa os atributos do objecto situacaoMedica da classe SituacoesMedicas. setDocumentoAdicional() Inicializa os atributos do objecto documentoAdicional da classe DocumentosAdicionais. gravarAgregadoFamiliarr() Escreve o objecto agregadoFamiliar na tabela de AgregadosFamiliares. gravarSituacaoMedica () Escreve o objecto situacaoMedica na tabela SituacoesMedicas.

Carlos Jorge Lima David

91

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 4.15 Diagrama de Colaborao do Use Cases Registar Dados Adicionais

Carlos Jorge Lima David

92

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.3.5 - Diagrama de colaborao do Use Cases Registar Movimentos

Figura 4.16 Diagrama de Colaborao do Use Cases Registar Movimentos

Carlos Jorge Lima David

93

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A figura supracitada (figura 4.16) ilustra o diagrama de colaborao do use cases registar movimentos dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo dos movimentos do funcionrio comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. getCargo() invocado para passar os valores na combobox dos cargos. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados dos movimentos do trabalhador. O processo continua com a mensagem 3 registarMovimento. Esta operao centra-se nos seguintes mtodos que so: setCargoOcupado() Inicializa os atributos do objecto cargoOcupado da classe cargoOcupado. setTransferencia() Inicializa os atributos do objecto transferncia da classe Transferencias. gravarTransferencia() Escreve o objecto transferncia na tabela de Transferencias. gravarCargoOcupado() Escreve o objecto cargoOcupado na tabela de CargosOcupados. 4.1.3.6 - Diagrama de colaborao do Use Cases Registar Ausncias A figura abaixo (figura 4.17) ilustra o diagrama de colaborao do use cases registar ausncias dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo das ausncias dos funcionrios comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. getTipoLicenca() invocado para passar os valores na combobox dos tipos de licencas. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados das ausncias do trabalhador. O processo continua com a mensagem 3 registarAusencia. Esta operao centra-se nos seguintes mtodos que so: setFerias() Inicializa os atributos do objecto feria da classe ferias. setFaltas() Inicializa os atributos do objecto falta da classe falta. setLicencas() Inicializa os atributos do objecto licenca da classe licencas. gravarFeria() Escreve o objecto feria na tabela de Ferias. gravarFalta() Escreve o objecto falta na tabela de Faltas. gravarLicenca() Escreve o objecto licenca na tabela de Licencas.

Carlos Jorge Lima David

94

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Figura 4.17 Diagrama de Colaborao do Use Cases Registar Ausncias

Carlos Jorge Lima David

95

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.3.7 - Diagrama de colaborao do Use Cases Registar Avaliaes

Figura 4.18 Diagrama de Colaborao do Use Cases Registar Avaliaes

Carlos Jorge Lima David

96

Sistema Informtico para a Gesto de Recursos Humanos - UAN

A figura supracitada (figura 4.18) ilustra o diagrama de colaborao do use cases registar avaliaes dos funcionrios. Este diagrama mostra a sequncia de mensagens entre os objectos at concluir uma determinada operao. O processo para o registo das avaliaes do funcionrio comea com a primeira mensagem create() que permite criar o formulrio, as mensagens so seguidas em funo da numerao. getTipoDistincao() invocado para passar os valores na combobox dos tipos de distines. getTipoInfraccao() invocado para passar os valores na combobox dos tipos de infraces. getTipoClassificacao() invocado para passar os valores na combobox dos tipos de classificaes. getCargo() invocado para passar os valores na combobox dos cargos. A mensagem 2 ilustra o processo de seleo do nmero de processo para se inserir os dados das avaliaes do trabalhador. O processo continua com a mensagem 3 registarAvaliacao. Esta operao centra-se nos seguintes mtodos que so: setProcessoDisciplinar() Inicializa os atributos do objecto processoDisciplinar da classe ProcessosDisciplinares. setDistincoesLouvores() Inicializa os atributos do objecto distincaoLouvor da classe DistincoesLouvores. setClassificacoes() Inicializa os attributos do objecto classificacao da classe Classificacoes. gravarProcessoDisciplinar() Escreve o objecto processoDisciplinar na tabela de ProcessosDisciplinares. gravarDistincaoLouvor() Escreve o objecto distincoesLouvores na tabela de DistincoesLouvores. gravarClassificacoes() Escreve o objecto classificacao na tabela de classificacoes.

Carlos Jorge Lima David

97

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4 - Diagramas de Actividades


Nesta seco fez-se a descrio dos principais diagramas de actividades do sistema. 4.1.4.1 - Diagrama de actividades do Use Case Registar Dados Gerais

Figura 4.19 Diagrama de Actividades do Use Cases Registar Dados Gerais

Carlos Jorge Lima David

98

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado Geral do menu Funcionrios. 3. Se o registo do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo dos dados gerais do Funcionrio. 4. Inserir os dados gerais do Funcionrio na pgina. 5. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados invocado. 6. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 4 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

99

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.2 Diagrama de actividades do Use Case Registar Dados Acadmicos

Figura 4.20 Diagrama de Actividades do Use Cases Registar Dados Acadmicos

Carlos Jorge Lima David

100

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado Acadmico do menu Funcionrios. 3. Seleccionar Funcionrio. 4. Se o registo dos dados acadmicos do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo dos dados acadmicos do Funcionrio. 5. Inserir os dados acadmicos do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados acadmicos abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

101

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.3 - Diagrama de actividades do Use Case Registar Dados Laborais

Figura 4.21 Diagrama de Actividades do Use Cases Registar Dados Laborais


Carlos Jorge Lima David

102

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado Laboral do menu Funcionrios. 3. Seleccionar Funcionrio. 4. Se o registo dos dados laborais do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo dos dados laborais do Funcionrio. 5. Inserir os dados laborais do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados laborais abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

103

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.4 - Diagrama de actividades do Use Case Registar Dados Adicionais

Figura 4.22 Diagrama de Actividades do Use Cases Registar Dados Adicionais

Carlos Jorge Lima David

104

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado Adicional do menu Funcionrios. 3. Seleccionar Funcionrio. 4. Se o registo dos dados adicionais do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo dos dados adicionais do Funcionrio. 5. Inserir os dados adicionais do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados adicionais abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

105

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.5 - Diagrama de actividades do Use Case Registar Movimentos

Figura 4.23 Diagrama de Actividades do Use Cases Registar Movimentos

Carlos Jorge Lima David

106

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado do item Movimento do menu. 3. Seleccionar Funcionrio. 4. Se o registo do movimento do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo dos movimentos do Funcionrio. 5. Inserir os dados dos movimentos do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados dos movimentos abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados das transferncias e dos cargos ocupados invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

107

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.6 - Diagrama de actividades do Use Case Registar Avaliaes

Figura 4.24 Diagrama de Actividades do Use Cases Registar Avaliaes

Carlos Jorge Lima David

108

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado do item Avaliao do menu. 3. Seleccionar Funcionrio. 4. Se o registo da avaliao do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo das avaliaes do Funcionrio. 5. Inserir os dados das avaliaes do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados das avaliaes abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados das classificaes, distines e louvores e dos processos disciplionares invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

109

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.4.7 - Diagrama de actividades do Use Case Registar Ausncias

Figura 4.25 Diagrama de Actividades do Use Cases Registar Ausncias

Carlos Jorge Lima David

110

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionamento 1. O utilizador inicia a seco fazendo o login. O utilizador faz a insero do seu username e password e acede ao sistema. 2. Escolhe a opo Novo Dado do item Ausncias do menu. 3. Seleccionar Funcionrio. 4. Se o registo da ausncia do funcionrio j existir ento o processo cancelado, seno, enviada para o utilizador a pgina para o registo das ausncias do Funcionrio. 5. Inserir os dados das ausncias do Funcionrio na pgina. 6. Se o utilizador pressionar o boto cancelar, o processo de registo dos dados das ausncias abortado, seno, se o utilizador pressionar o boto salvar ento o processo de validao dos dados das ferias, faltas e licenas invocado. 7. Se os dados forem validos, conclui-se o processo de criao do registo, seno, voltamos ao ponto 5 e executamos os demais pontos at que se finalize o processo.

Carlos Jorge Lima David

111

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.1.5 - Diagramas de Classes

Figura 4.26 Diagrama de Classes do Sistema na Camada de Negcio

Carlos Jorge Lima David

112

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Descrio das Classes As entidades apresentadas no diagrama de classes da figura 4.26, descrevem os dados que sero modelados no SIGRH-UAN. A descrio detalhada das mesmas a seguinte: funcionarios. A classe funcionarios modela um funcionrio associado a UAN. A classe funcionrios disponibiliza campos e metdos que permitem modelar as informaes pessoais de um determinado funcionrio. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getNome() Retorna o valor da varivel nomeCompleto. 3. getDataNascimento() Retorna o valor do objecto dataNascimento. 4. getSexo() Retorna o valor do objecto sexo. 5. getDataAdmissao() Retorna o valor do objecto dataAdmissao. 6. getNacionalidade() Retorna o valor da varivel nacionalidade. 7. getLocalNascimento() Retorna o valor da varivel localNascimento. 8. getRaca() Retorna o valor do objecto raca. 9. getResidencia() Retorna o valor da varivel residencia. 10. getMunicipio() Retorna o valor da varivel municipio. 11. getProvinciaPais() Retorna o valor da varivel provinciaPais. 12. getGrupoSalarial() Retorna o valor do objecto grupoSalarial. 13. getSituacaoMilitar() Retorna o valor do objecto situaoMilitar. 14. getEstadoCivil() Retorna o valor do objecto estadoCivil. 15. getProfissao() Retorna o valor do objecto profissao. 16. getLocalTrabalho() - Retorna o valor do objecto localTrabalho. 17. getTipoTrabalhador() - Retorna o valor do objecto tipoTrabalhador. docentes. A classe docentes representa um funcionrio que lecciona em uma das Unidades Orgnicas da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCategoriaDocente() Retorna o valor do objecto categoriaDocente. 3. getCategoriaCientifica() Retorna o valor do objecto categoriaCientifica. agregadosFamiliares. A classe agregadosFamiliares modela a informao sobre o agregado familiar dos funcionrios. Nela so armazenadas todas informaes associadas aos membros da famlia de um determinado funcionrio. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCodigoFamiliar() Retorna o valor da varivel codigoFamiliar. 3. getNomeFamiliar() Retorna o valor da varivel nomeFamiliar. 4. getGrauParentesco() Retorna o valor do objecto grauParentesco. 5. getDataNascimento() Retorna o valor do objecto dataNascimento. 6. getSexo() Retorna o valor do objecto sexo. 7. getEstadoCivil() Retorna o valor do objecto estadoCivil. 8. getProfissao() Retorna o valor do objecto profissao. 9. getLocalTrabalho() Retorna o valor da varivel localTrabalho.

Carlos Jorge Lima David

113

Sistema Informtico para a Gesto de Recursos Humanos - UAN

cursosFeitos. A classe cursosFeitos modela a informao sobre cursos de formao acadmica ou profissional feitos pelos funcionrios. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCurso() Retorna o valor do objecto curso. 3. getLocalRealizacaoCurso() Retorna o valor da varivel localRealizacao. 4. getAno() Retorna o valor da varivel ano. transferencias. A classe transferencias modela a informao sobre as transferncias de locais de trabalhos associadas aos funcionrios das Unidades Orgnicas da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getDataTransferencia() Retorna o valor do objecto dataTransferencia. 3. getAreaTrabalhoAnterior() Retorna o valor da varivel areaTrabalhoAnterior. 4. getTransferidoPara() Retorna o valor da varivel transferidoPara. estudosRealizados. A classe estudosRealizados modela a informao sobre os dados acadmicos dos funcionrios. As informaes sobre as habilitaes literrias so modeladas nesta classe. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getTipoEstudo() Retorna o valor do objecto tipoEstudo. 3. getAno() Retorna o valor da varivel ano. locaisTrabalhoAnteriores. A classe locaisTrabalhoAnteriores modela a informao sobre os dados laborais dos trabalhadores com relao aos locais em que trabalhou. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getLocaTrabalho() Retorna o valor da varivel localTrabalho. 3. getDataInicio() Retorna o valor do objecto dataInicio. 4. getDataTermino() Retorna o valor do objecto dataTermino. 5. getProfissao() Retorna o valor do objecto profissao. cargosOcupados. A classe cargosOcupados modela a informao sobre cargos que um determinado funcionrio ocupou numa determinada Unidade Orgnica ou Reitoria da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCargo() Retorna o valor do objecto tipoCargo. 3. getDataInicio() Retorna o valor do objecto dataInicio. 4. getNumeroDespacho() Retorna o valor da varivel numeroDespacho. capacitacoes. A classe capacitacoes modela a informao sobre as capacitaes laborais associadas aos funcionrios das Unidades Orgnicas ou Reitoria da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getTipoCapacitacao() Retorna o valor do objecto tipoCapacitacao. 3. getDataInicio() Retorna o valor do objecto dataInicio. 4. getDataTermino() Retorna o valor do objecto dataTermino.

Carlos Jorge Lima David

114

Sistema Informtico para a Gesto de Recursos Humanos - UAN

classificacoes. A classe classificacoes modela a informao sobre as classificaes do rendimento do trabalho dos funcionrios. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getTipoCargo() Retorna o valor do objecto tipoCargo. 3. getDataClassificacao() Retorna o valor do objecto dataClassificacao. 4. getNomeAvaliador() Retorna o valor da varivel nomeAvaliador. 5. getTipoClassificacao() Retorna o valor do objecto tipoClasificacao. situacoesMedicas. A classe situacoesMedicas modela a informao sobre as situaes medicas, doenas, alergias e grupo sanguneo associados aos funcionrios vinculados a UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCodigoFamiliar() Retorna o valor da varivel codigoFamiliar. 3. getNomeFamiliar() Retorna o valor da varivel nomeFamiliar. 4. getGrauParentesco() Retorna o valor do objecto grauParentesco. 5. getDataNascimento() Retorna o valor do objecto dataNascimento. 6. getSexo() Retorna o valor do objecto sexo. 7. getEstadoCivil() Retorna o valor do objecto estadoCivil. 8. getProfissao() Retorna o valor do objecto profissao. 9. getLocalTrabalho() Retorna o valor da varivel localTrabalho. documentosAdicionais. A classe documentosAdicionais modela a informao sobre os documentos adicionais que os trabalhadores entregam no processo de registo dos mesmos. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getNumeroDocumento() Retorna o valor da varivel numeroDocumento. 3. getTipoDocumento() Retorna o valor da varivel tipoDocumento. 4. getDataEmissao() Retorna o valor do objecto dataEmissao. 5. getLocalEmissao() Retorna o valor da varivel localEmissao. distinoesLouvores. A classe distinoesLouvores modela a informao sobre as distines e/ou louvores atribudas aos funcionrios. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getTipoDistincao() Retorna o valor do objecto tipoDistincao. 3. getDataDistincao() Retorna o valor do objecto dataDistincao. processosDisciplinares. A classe processosDisciplinares modela a informao sobre os processos disciplinares dos trabalhadores vinculados a UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getTipoInfraccao() Retorna o valor do objecto tipoInfraccao. 3. getSancaoAplicada() Retorna o valor da varivel sancaoAplicada. 4. getDataSancao() Retorna o valor do objecto dataSancao.

Carlos Jorge Lima David

115

Sistema Informtico para a Gesto de Recursos Humanos - UAN

idiomas. A classe idiomas modela a informao sobre os idiomas que um determinado funcionrio fala. Isto , no processo de registo, o funcionrio da informaes sobre as lnguas estrangeiras que fala e esta informao modelada nesta classe. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getIdioma() Retorna o valor da varivel idioma. 3. getNivel() Retorna o valor da varivel nivel. ferias. A classe ferias modela a informao sobre as ferias associadas aos funcionrios das Unidades Orgnicas ou Reitoria da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getDataInicio() Retorna o valor do objecto dataInicio. 3. getDataFim() Retorna o valor do objecto dataFim. 4. getTipoFeria() Retorna o valor do objecto tipoFeria. faltas. A classe faltas modela a informao sobre as faltas associadas aos funcionrios das Unidades Orgnicas ou Reitoria da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getDataFalta() Retorna o valor do objecto dataFalta. 3. getJustificacao() Retorna o valor da varivel justificacao. licencas. A classe licencas modela a informao sobre as licenas associadas aos funcionrios das Unidades Orgnicas ou Reitoria da UAN. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getDataInicio() Retorna o valor do objecto dataInicio. 3. getDataFim() Retorna o valor do objecto dataFim. 4. getTipoLicenca() Retorna o valor do objecto tipoLicenca. cargos. A classe cargos representa os distintos cargos que podem estar associados aos funcionrios nos seus locais de trabalho. Metdos da classe 1. getNRegisto() Retorna o valor da varivel nRegisto. 2. getCodigoCargo() Retorna o valor da varivel codigoCargo. 3. getdesignacaoCargo() Retorna o valor da varivel designacaoCargo. usuarios. A classe usuarios modela a informao dos distintos utilizadores do SIGRH-UAN. Metdos da classe 1. getNDesUtilizador() Retorna o valor da varivel designacaoUtilizador. 2. getNomeUtilizador() Retorna o valor da varivel nomeUtilizador. 3. getSenha() Retorna o valor da varivel senha. 4. getTipoUtilizador() Retorna o valor do objecto tipoUtilizador. de salientar que na modelagem das classes em UML o nome das classes escrito no rectngulo superior da entidade e no rectngulo central so descritos os atributos das entidades e os seus respectivos tipos de dados.

Carlos Jorge Lima David

116

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.2 - Camada de Persistncia


Objectos de Dados Estes objectos tm a misso de permitir o acesso a Base de Dados. Atravs destes podemos conectar base, ler dados de uma tabela, escrever dados em tabelas, eliminar dados de uma tabela da base de dados, etc. Para tal so declarados mtodos de consulta dos dados (os mtodos get) e mtodos mutantes (os mtodos set) que permitem obter a informao de um atributo e alterar a informao de um atributo respectivamente. As seguintes tabelas principais foram identificadas nos formulrios existentes na lei geral do trabalho: 1. AgregadosFamiliares Armazena os dados dos agragados familiares dos trabalhadores. 2. Capacitacoes Armazena os dados das capacitaes dos trabalhadores. 3. Cargos Armazena os dados dos tipos de cargos que podem ser exercido pelos trabalhadores. 4. CargosOcupados Armazena os dados dos cargos que os trabalhadores ocupam. 5. Classificacoes Armazena os dados das classificao atribudas aos trabalhadores. 6. DistincoesLouvores Armazena os dados das distines ou louvores dos trabalhadores. 7. Funcionrios Armazena os dados pessoais dos trabalhadores. 8. Docentes Armazena os dados dos trabalhadores docentes. 9. DocumentosAdicionais Armazena os dados dos documentos apresentados pelos trabalhadores. 10. EstudosRealizados Armazena os dados acadmicos dos trabalhadores. 11. Faltas Armazena os dados das faltas dos trabalhadores. 12. Ferias Armazena os dados das frias dos trabalhadores. 13. GruposSalariais Armazena os dados dos grupos salariais associados aos trabalhadores. 14. Idiomas - Armazena os dados dos idiomas falados pelos trabalhadores. 15. Licenas Armazena os dados das licenas dos trabalhadores. 16. LocaisTrabalhosAnteriores Armazena os dados dos locais de trabalho anteriores associados aos trabalhadores. 17. ProcessosDisciplinares Armazena os dados dos processos disciplinares dos trabalhadores. 18. SituacoesMedicas Armazena os dados das situaes mdicas dos trabalhadores. 19. Subsdios - Armazena os dados dos subsdios dos trabalhadores. 20. Transferncias Armazena os dados das transferncias dos trabalhadores. 21. TiposSubsidios Armazena os dados dos tipos dos subsdios. As tabelas encontram-se detalhadas na seco de anexos (Anexo C )

Carlos Jorge Lima David

117

Sistema Informtico para a Gesto de Recursos Humanos - UAN

4.2.1 - Diagrama de Classes

Figura 4.27 Diagrama de Classes do Sistema na Camada de Acesso aos Dados

Carlos Jorge Lima David

118

Sistema Informtico para a Gesto de Recursos Humanos - UAN

O diagrama de classes acima descrito possui as mesmas entidades que foram descritas no diagrama de classes da figura 4.26. Este diagrama especifica uma entidade adicional que contem os mtodos que permitem fazer as conexes a base de dados e declaram mtodos que permitem inserir, alterar, eliminar e consultar dados da base de dados. Os mtodos descritos nestas classes so os seguintes: setConnection() um mtodo da classe connection e tem como funo inicializar a varivel de classe connection com o valor da path (caminho para conexo) para a conexo a base de dados desejada. gravarRegisto() um mtodo da classe connection que usa instrues sql para escrever nas tabelas da base de dados. Este mtodo recebe uma string (cadeia de caracteres) como parmetro que constituda por instrues sql que permitem fazer inseres numa tabela especifica. eliminarRegisto() um mtodo da classe connection que usa instrues sql para eliminar registos nas tabelas da base de dados. Este mtodo recebe uma string (cadeia de caracteres) como parmetro que constituda por instrues sql que permitem fazer as eliminaes numa tabela especifica. alterarRegisto() um mtodo da classe connection que usa instrues sql para actualizar as tabelas da base de dados. Este mtodo recebe uma string (cadeia de caracteres) como parmetro que constituda por instrues sql que permitem fazer actualizaes numa tabela especifica. consultarRegisto() - um mtodo da classe connection que usa instrues sql para consultar dados nas tabelas da base de dados. Este mtodo recebe uma string (cadeia de caracteres) como parmetro que constituda por instrues sql que permitem fazer as consultas numa tabela especifica.

4.3 - Modelo Lgico dos dados


AgregadosFamiliares (idAgregadoFamiliar, numeroRegisto, codigoFamiliar, grauParentesco, dataNascimento, sexo, estadoCivil, profisso, localTrabalho) nomeFamiliar,

Capacitacoes (idCapacitacao, numeroRegisto, tipoCapacitacao, dataInicio, dataTermino) Cargos (idCargo, codCargo, desCargo) CargosOcupados (idCargoOcupado, numeroRegisto, cargo, dataInicio, numeroDespacho) Classificacoes (idClassificacao, idtipoclassificacao) numeroRegisto, idCargo, dataClassificacao, nomeAvaliador,

CursosFeitos (idCursoFeito, numeroRegisto, curso, localRealizacaoCurso, ano) DistincoesLouvores (idDistincaoLouvor, numeroRegisto, tipoDistincao, dataDistincao)

Funcionrios (idFuncionario, numeroRegisto, nomeCompleto, dataNascimento, sexo, dataAdmissao, nacionalidade, localNascimento, raa, municpio, residencia, provinciapais, grupoSalarial,

Carlos Jorge Lima David

119

Sistema Informtico para a Gesto de Recursos Humanos - UAN

situacaoMilitar, estadoCivil, nomeConjuge, dataNascimentoConjuge, numeroBI, localEmissao, dataEmissao, profissao, localTrabalho, telefone, regime, estadoActual, tipoTrabalhador) Docentes (idDocente, numeroRegisto, categoriaDocente, categoriaCientifica) DocumentosAdicionais (idDcoumentoAdicional, tipoDocumento, dataEmissao, localEmissao) numeroRegisto, numeroDocumento,

EstudosRealizados (idEstudoRealizado, numeroRegisto, ano, tipoEstudo) Faltas (idFalta, numeroRegisto, dataFalta, justificacao) Ferias (idFeria, numeroRegisto, dataInicio, dataFim, tipoFeria) GruposSalariais (idGrupoSalarial, desGrupoSalarial, Salario) Idiomas (idIdioma, numeroRegisto, idioma, nivel) Licenas (idLicenca, numeroRegisto, dataInicio, dataFim, tipoLicenca) LocaisTrabalhosAnteriores (idLocalTrabalhoAnterior, localTrabalho, numeroRegisto, dataInicio, dataFim, profissao) ProcessosDisciplinares (idProcessoDisciplinar, numeroRegisto, tipoInfraccao, sancaoAplicada, dataSancao) SituacoesMedicas (idSituacaoMedica, numeroRegisto, tipoDoador, defeitoFisico, doencasAlergias, grupoSanguineo) Subsdios (idTipoSubsidio, numeroRegisto, dataSubsidio, desSubsidio, valor) Transferncias transferidoPara) (idTransferencia, numeroRegisto, dataTransferencia, areaTrabalhoAnterior,

TiposSubsidios (idTipoSubsidio, desSubsidio, valor) O modelo fsico da base de dados vem em anexos A.

Carlos Jorge Lima David

120

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 5 - Implementao e Instalao do Sistema


5.1 - Implementao do Sistema
5.1.1 - Opes Tcnicas
Tendo em conta as questes como portabildade, segurana, escalabilidade e tempo de vida do sistema foram usadas as seguintes tecnologias: Metodologia de anlise do sistema, UML. Linguagem de programao, Java (J2EE). de realar que o desenho do sistema foi feito projectando uma implementao baseada na tecnologia em 3 camadas que a J2EE mas esta verso do sistema foi desenvolvida com a verso em 2 camadas onde a camada de negcio vem associada a camada de apresentao e h somente a separao da camada de persistncia. As ferramentas usadas foram as seguintes: Ferramenta CASE, Visio 2003. Sistema de gesto da base de dados, mySql Server. Ambiente de desenvolvimento, Jbuilder X. Ambiente de criao da interface, DreamWeaver MX. Ferramenta para o tratamento de imagens, PhotoImpact 6.0 JavaScript para fazer as validaes dinamicamente nas pginas. Drive de conexo a base de dados: JDBC (Java Database Conectivity)

5.1.2 - Segurana do SIGRH-UAN


No SIGRH-UAN a segurana lgica dos dados implementada de trs formas: Autenticao: O utilizador para aceder o sistema faz um login. O utilizador faz a insero do UserName e a Password. Se o utilizador estiver cadastrado ento o utilizador acede ao sistema seno o utilizador no consegue aceder ao sistema. Nvel de Autorizao: No nvel de autorizao so definidos os perfis dos utilizadores. Existem trs tipos de utilizadores: Administrador Tem todas as permisses sobre o sistema. Utilizador Avanado Tem permisses de Insero, Visualizao, Consultas e obteno de relatrios. Utilizador Normal Tem permisses somente de consulta de dados. Cada utilizador tem acesso somente a informao disponvel ao seu nvel de autorizao. O userName do utilizador est relacionado com a Unidade Orgnica a que o mesmo pertence, permitindo assim que o mesmo so aceda a informao associada a sua Unidade Orgnica. Encriptao: No sistema os dados so encriptados na camada de apresentao para posterior envio pela rede. Os dados so desencriptados na camada de negcio, isto , no lado do servidor para posteriormente serem armazenados na base de dados. Tambm podemos fazer a encriptao fazendo

Carlos Jorge Lima David

121

Sistema Informtico para a Gesto de Recursos Humanos - UAN

uso do protocolo HTTPS (HyperText Transfer Protocol Secure) que o protocolo HTTP seguro e faz a encriptao da informao antes de trafegar pela rede. Este protocolo usa o porto TCP 443. Para que haja segurana fsica dos dados os servidores sero instalados numa sala segura e protegida. Haver restries no acesso as respectivas salas e usar-se- o sistema de backups redundantes de modo a manter-se a informao actualizada mesmo que o servidor pare de funcionar.

5.1.3 - Diagramas de Componentes


5.1.3.1 - Diagrama de Componentes do Sistema SIGRH-UAN O sistema SIGRH-UAN possui os seguintes subsistemas: Subsistema Central. Subsistema Gesto Departamento Recursos Humanos Reitoria. Subsistema Gesto Unidades Orgnicas (Plo Luanda). Subsistema Gesto Provincial (Plos Provncias). Os componentes representam os mdulos fsicos da aplicao. Estes componentes modelam ficheiros executveis implementados em Java e base de dados do MySql Server. Os componentes esto relacionados entre si, cada seta tracejada indica uma relao de dependncia. Pode-se observar na figura 5.1 que o sistema da Reitoria depende do sistema central para recuperar informaes das unidades orgnicas. Os sistemas das Faculdades dependem do sistema central para replicar as suas informaes. O sistema Internet permite o acesso s informaes da Universidade atravs da Internet. Este sistema depende do sistema central e das Faculdades para cumprir com a sua misso.

Figura 5.1 Diagrama de Componentes do Sistema As seces a seguir apresentam com pormenor as estruturas dos componentes.
Carlos Jorge Lima David

122

Sistema Informtico para a Gesto de Recursos Humanos - UAN

5.1.3.2 - Diagrama de Componentes da Gesto das Unidades Orgnicas A figura abaixo (figura 5.2) ilustra a estrutura do diagrama de componentes do processo de gesto das Unidades Orgnicas. O subsistema Unidades Orgnicas depende dos ficheiros JSP associados aos trabalhadores para recuperar informaes sobre os referidos trabalhadores. O ficheiro principal o que faz a gesto dos dados a nivel da Unidade Organica. No diagrama podemos ver que este ficheiro depende dos ficheiros GestaoDadosGerais.jsp, GestaoDadosAdicionais.jsp, GestaoAvaliacoes.jsp, GestaoMovimentos.jsp e outros representados no diagrama para o seu funcionamento.

Figura 5.2 Diagrama de Componentes do Subsistema Unidades Orgnicas

Carlos Jorge Lima David

123

Sistema Informtico para a Gesto de Recursos Humanos - UAN

5.1.3.3 - Diagrama de Componentes da Gesto Reitoria A figura abaixo (figura 5.3) ilustra a estrutura do diagrama de componentes do processo de gesto da reitoria. O subsistema Reitoria depende dos ficheiros JSP associados aos trabalhadores para recuperar informaes sobre os referidos trabalhadores da Reitoria. Este componente uma subfunao do componente central pois a gesto a nivel da reitoria feita no subsistema central.

Figura 5.3 Diagrama de Componentes do Subsistema Reitoria

Carlos Jorge Lima David

124

Sistema Informtico para a Gesto de Recursos Humanos - UAN

5.1.3.4 - Diagrama de Componentes da Gesto Provincial

Figura 5.4 Diagrama de Componentes do Subsistema Provincial

Carlos Jorge Lima David

125

Sistema Informtico para a Gesto de Recursos Humanos - UAN

5.2 - Instalao

Figura 5.5 Esquema da Instalao do sistema A figura supracitada ilustra o esquema da instalao do sistema. Nela podemos ver no centro a infra-estrutura que ser instalada na Reitoria, na parte superior e inferior da figura podemos ver
Carlos Jorge Lima David

126

Sistema Informtico para a Gesto de Recursos Humanos - UAN

algumas Unidades Orgnicas que fazem parte do subsistema Unidade Provincial. A Unidade Orgnica da Faculdade de Engenharia vem referenciada a esquerda do subsistema central onde podemos ver a infra-estrutura que ser instalada na referida Faculdade.

5.2.1 - Requisitos para a instalao do sistema


5.2.1.1 - Requisitos de Hardware 5.2.1.1.1 - Requisitos Mnimos do Cliente Memoria 128 MB Processador Pentium III 700MHz HD 20 GB Placa de Rede 5.2.1.1.2 - Requisitos Mnimos do Servidor Servidor da Base de Dados e Aplicao WEB Memoria 2GB Processador Pentium IV 3GHz HD 200 GB

5.2.1.2 - Requisitos de Software 5.2.1.2.1 - Requisitos Mnimos do Cliente Browser para navegao WEB (Internet Explorer 4.0 ou superior, mozila etc) 5.2.1.2.2 - Requisitos Mnimos do Servidor Servidor da Base de Dados Sistema Operativo Linux ou Windows 2000 Server JBoss MySql TomCat 4.1 ou superior JSDK 1.4.1 ou superior

Carlos Jorge Lima David

127

Sistema Informtico para a Gesto de Recursos Humanos - UAN

5.2.3 - Instalao do Sistema


O sistema ser instalado nos servidores. Para a instalao do SIGRH-UAN as maquinas servidoras tero os requisitos que foram descritos na seco 5.2.1, requisitos de hardware e software. Os requisitos de hardware teremos em conta no momento da compra dos referidos servidores, j os requisitos de software devero ser instalados para o funcionamento do SIGRH-UAN. 5.2.3.1 - Instalao da Base de Dados Na realidade faz-se a instalao do SGBD e a configurao da base de dados para que funcione no sistema instalado. Para a instalao da base de dados instala-se o mySql Server no directrio raiz do disco duro. Feita a instalao, copia-se o directrio (Directrio do SIGRH-UAN) contendo a base de dados em SQL para o seguinte directrio: Path\data Onde: Path Indica o caminho em que se encontra o mySql Server instalado. Ex: c:\mysql no directrio data onde so colocadas todas as bases de dados que nos pretendemos que arranquem com o nosso servidor mySql Server. Sendo assim o caminho para a nossa base de dados poder ser: C:\mysql\data\SIGRH-UAN 5.2.3.2 - Instalao do Portal do SIGRH-UAN Para a instalao do Portal ser necessrio instalar-se o servidor de ficheiros JSP tomcat. Instalar-se- a verso 5.0.28 do tomcat no directrio raiz do disco duro. Feita a instalao do tomcat, copia-se o portal do SIGRH-UAN para o directrio webapps do servidor tomcat. Path\webapps Onde: Path Indica o caminho em que se encontra instalado o servidor Tomcat. Ex: c:\Tomcat 4.1 O directrio webapps o directrio no qual so colados todos os portais que nos pretendemos que arranquem com o nosso servidor. Sendo assim o caminho para o nosso portal poder ser o seguinte: C:\Tomcat 4.1\webapps\SIGRH-UAN de salientar que as aplicaes Java no geram mdulos executveis como as outras linguagens de programao que so compiladas e no interpretadas. Em anexos D vem as configuraes das variveis de ambiente para o funcionamento do sistema.
Carlos Jorge Lima David

128

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Capitulo 6 - Perspectivas Futuras, Concluses e Recomendaes


6.1 - Perspectivas Futuras
O objectivo de qualquer sistema de informao a sua evoluo com o passar do tempo. Na rea de desenvolvimento o uso das melhores tcnicas e ferramentas para o desenvolvimento de softwares fundamental. Este projecto foi desenvolvido em um semestre. Devido ao curto espao de tempo para a elaborao do projecto e tendo em conta as dificuldades encontradas na recolha dos dados para a elaborao do mesmo, algumas das funcionalidades do projecto no foram implementadas, ficando assim a inteno de no futuro fazer-se a concluso do mesmo. Este projecto foi feito por meio de JSP e Apllets. Com as JSP no possvel separar o cdigo da camada de apresentao do cdigo das outras camadas, de negcio e de persistncia. Logo, h maiores dificuldades na manuteno do sistema. Contudo, poder-se- implementar futuramente o mesmo projecto fazendo uso da tecnologia J2EE que permite fazer a separao das camadas envolvidas no desenvolvimento do sistema, onde as JSP servem somente para a camada de apresentao, e as outras duas camadas so feitas por meio de EJBs (Enterprise Java Beans). A tecnologia J2EE veio aumentar a escalabilidade das aplicaes cliente-servidor de trs camadas. Existem muitos sistemas de gesto de base de dados, mas nem todos so gratuitos. Tendo em conta estes aspectos na implementao da base de dados, usaram-se como SGBDD o MySql Server. Existe ainda o Oracle, que uma das ferramentas mais usadas na actualidade no nosso pais, sendo assim poderemos fazer uso do Oracle 10g que a ultima verso disponvel no mercado. H a perspectiva de se fazer uso do SGBDD Postgre 8.0, que inclui funcionalidades tanto do Oracle como do MySql. A encriptao dos dados que trafegam pela rede um dos aspectos importantes para a segurana lgica dos dados. Nesta verso do sistema no foram desenvolvidos mdulos que permitissem fazer a encriptao da informao antes de ser enviada na rede, mas futuramente em outras verses do sistema ser implementada esta funcionalidade para garantir a fiabilidade da informao. Existem sistemas que esto a ser implementados na UAN, tais como: Sistemas de controlo de efectividade e sistemas financeiros que esto directamente relacionados com este sistema. Sendo assim perspectivamos fazer um estudo da melhor maneira de interligar este sistema aos dois sistemas supracitados e futuramente fazer-se ento o vinculo com os respectivos sistemas de formas a importar os dados automaticamente.

6.2 - Concluses
Os Sistemas de Informao Informatizados tendem a dominar o mundo dos sistemas de informao nas Empresas Pblicas ou Privadas. Devido a grande flexibilidade no manuseamento dos Sistemas de Informao Informatizados, a sua grande disponibilidade e rapidez em dar resposta a uma solicitao, tem-se notado a migrao nas grandes Empresas no mundo e grandes Instituies do Estado para uma politica de uso dos referidos sistemas. No nosso pas sente-se j o incio de uma nova era em termos organizacionais e a inteno da migrao dos sistemas de informao tradicionais, usados at ento, para os novos sistemas de informao informatizados nos sectores pblicos e privados.

Carlos Jorge Lima David

129

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Sendo a UAN um sector pblico (do Estado) que possui um elevado nmero de trabalhadores distribudos por todas as reas da sua estrutura organizacional, este sistema (SIGRH-UAN) dar uma maior eficincia e eficcia na gesto dos Recursos Humanos da mesma. Haver uma maior aproximao entre o pessoal administrativo, trabalhadores de apoio e os docentes. Sendo assim concluiu-se o seguinte: possvel fazer-se uma anlise e melhoria do sistema de informao de gesto dos Recursos Humanos da UAN de forma a torn-lo completo. possvel a informatizao dos departamentos dos recursos humanos das distintas Unidades Orgnicas. Isto , possvel informatizarmos o sistema de informao de recursos humanos da UAN. Sendo o desenho dos sistemas em trs (3) camadas uma nova vertente no mundo da informtica, conclumos que possvel fazer-se o desenho do sistema em trs (3) camadas. possvel a utilizao da UML para o desenho do sistema. O sistema foi implementado com a tecnologia Java Server Page (JSP) que apesar de s mostrar explicitamente a arquitectura em duas (2) camadas, contem na sua essencia a arquitectura em trs (3) camadas no desenho do mesmo. Com este desenho em trs camadas ser mais fcil a manuteno do sistema futuramente e a sua efectiva implementao em trs camadas. possivel implementar praticamente o sistema nas condies actuais do mesmo. Com a implementao deste sistema haver um maior controlo do rendimento de trabalho dos trabalhadores (administrativos, de apoio ou docentes) e uma maior disponibilidade das informaes concernentes as habilitaes literrias, aptides laborais dos mesmos, informaes adicionais que serviro de catalizadores para propostas de novos desafios profissionais e sadas de capacitaes para os mesmos. Na elaborao de qualquer projecto dificuldades vo surgindo e este projecto no foi excepo. Uma das grandes dificuldades esteve no facto da no disponibilidade das informaes associadas ao mesmo por parte do rgo reitor (DRH-Reitoria), os processos burocrticos existentes em alguns sectores do pas, retardam a concluso dos projectos pois as informaes no so entregues ou no so entregues na totalidade aos interessados. O ainda elevado custo de vida no nosso pas tambm um factor determinante no tempo de concluso dos projectos, ainda no h a possibilidade de compra de bons computadores a baixo custo, os problemas com a rede de distribuio de energia elctrica e outros, so alguns dos problemas encontrados na realizao deste projecto.

6.3 - Recomendaes
A vida dinmica. Seguindo esta senda de ideia urge a necessidade da elaborao de sistemas dinmicos no tempo. Estes sistemas so difceis de se desenvolver da a necessidade de um bom desenho do projecto para colmatar estas debilidades que surgem com o passar do tempo. Visto a Internet ter sido revolucionada nos ltimos tempos e as aplicaes voltadas para a web estarem a evidenciar-se recomendo o seguinte: 1. Os projectos de desenvolvimento de softwares devero ser implementados seguindo esta nova filosofia (aplicaes voltadas a WEB) que em breve ser dominante no mundo. 2. Existir um DBA SQL a nvel de cada Unidade Orgnica da UAN para dar suporte aos aplicativos que sero desenvolvidos para as distintas seces existentes na UAN e suas respectivas Unidades Orgnicas. Desta maneira visa-se dar uma independncia a UAN em termos de modificaes futuras no sistema com relao aos desenvolvedores do sistema.
Carlos Jorge Lima David

130

Sistema Informtico para a Gesto de Recursos Humanos - UAN

3. Criao de um Portal WEB da UAN com facilidades de acesso aos portais dos aplicativos (Softwares) associados a mesma, de modo a termos um sistema integrado de aplicativos para a gesto das distintas reas existentes na UAN. 4. Politicas de incentivo para o desenvolvimento de projecto fiveis a nvel da FE-UAN, que serviro de fontes de receitas, reconhecimento no mercado e notabilidade com relao as mais directas concorrentes. 5. Consciente de que os sistemas nunca esto concludos, recomendo a realizao de estudos futuros do referido projecto e possveis melhorias por parte dos outros grupos que pelo Departamento de Informtica passarem, para a sua efectiva implementao. 6. A anlise da incluso na cadeira de Base de Dados do DBMS SQL Server que uma das ferramentas de base para gesto de DBs para todos os Estudantes no ramo da Engenharia Informtica.

Carlos Jorge Lima David

131

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Bibliografia
[1]. Mauro Nunes e Henrique ONeill, Fundamento de UML, FCA, 2001. [2]. Deitel & Deitel, Java How do Program, Prentice Hall, 2002. [3]. [C.J.D. 1996] C.J.Date Introduo a Sistemas de Bancos de dados, 4 Edio, Campus, 1996; [4]. [J. L. P. 1997] Jos Lus Pereira Tecnologia de Bases de Dados, 1 Edio, FCA, 1997; [5]. Gael Harry e Adlio Andr Dias, Anlise de Sistemas I, 2002. [6]. Jacobson, I., Booch, G., Rumbaugh, J. Unified Software Development Process. Addison Wesley, 1999. [7]. http://www.monografias.com/trabajos16/sistemas-distribuidos/sistemas-distribuidos.shtml [8]. http://www.serpro.gov.br/publicacao/tematec/1993/ttec13 [9] .http://www.sqlmagazine.com.br/Colunistas/Vagner/02_FerramentasCase.asp [10]. http://dinf.unicruz.edu.br/~pillatt/cursos/2003_2/linguagens/oo.pdf [11]. http://www.bonde.com.br/colunistas/colunistasd.php?id_artigo=1646 [12]. http://www.dei.isep.ipp.pt/~alex/publico/ada [13]. http://docs.kde.org/development/pt/kdesdk/umbrello/uml-elements.html [14]. http://www.dga.unicamp.br/treinamento/apostilas/apostila_uml.pdf [15] www.java.sun.com [16] http://www.inf.ufrgs.br/

Carlos Jorge Lima David

132

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexos
Anexo A - Base de Dados (Modelo Fsico dos Dados)
Agregados Familiares

Capacitaes

Cargos

Carlos Jorge Lima David

133

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Cargos Ocupados

Classificaes

Cursos Feitos

Distines e louvores

Carlos Jorge Lima David

134

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Docentes

Documentos Adicionais

Estudos Realizados

Faltas

Carlos Jorge Lima David

135

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Ferias

Idiomas

Licenas

Locais trabalhos Anteriores

Carlos Jorge Lima David

136

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Funcionrios

Carlos Jorge Lima David

137

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Subsidio

Processos disciplinares

Situaes medicas

Transferncias

Carlos Jorge Lima David

138

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Utilizadores

Carlos Jorge Lima David

139

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexo B - Interface com o utilizador


Pgina Inicial ndex.jsp

Carlos Jorge Lima David

140

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface do Administrador

Carlos Jorge Lima David

141

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface Registo de um Funcionrio

Carlos Jorge Lima David

142

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface dos Dados Gerais

Carlos Jorge Lima David

143

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface dos Dados Acadmicos

Carlos Jorge Lima David

144

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface dos Dados Laborais

Carlos Jorge Lima David

145

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface dos Dados Adicionais

Carlos Jorge Lima David

146

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface Registar Movimentos

Carlos Jorge Lima David

147

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface Registar Avaliaes

Carlos Jorge Lima David

148

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface Registar Ausncias

Carlos Jorge Lima David

149

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Interface Alterar Dados Gerais

Carlos Jorge Lima David

150

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Dados Acadmicos

Carlos Jorge Lima David

151

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Dados Laborais

Carlos Jorge Lima David

152

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Dados Adicionais

Carlos Jorge Lima David

153

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Movimentos

Carlos Jorge Lima David

154

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Avaliaes

Carlos Jorge Lima David

155

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Alterar Ausncias

Carlos Jorge Lima David

156

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexo C - Script de Criao da Base de Dados


#======================================================================== Criao da Base de Dados #======================================================================== IF NOTEXIST DATABASE SIGRH_UAN CREATE DATABASE SIGRH_UAN #======================================================================== Criao das Tabelas #======================================================================== CREATE TABLE Cargos ( idCargos INTEGER(10) NOT NULL AUTO_INCREMENT, codCargo VARCHAR(100) NOT NULL, desCargo VARCHAR(100) NOT NULL, PRIMARY KEY (idCargos), UNIQUE (codCargo), UNIQUE KEY IDX_Cargos1(codCargo), UNIQUE KEY IDX_Cargos2(idCargos) ); CREATE TABLE TiposSubsidios ( idTipoSubsidio INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoSubsidio VARCHAR(100) NOT NULL, valor REAL(50,2) UNSIGNED, PRIMARY KEY (idTipoSubsidio), UNIQUE KEY IDX_TiposSubsidios1(idTipoSubsidio) ); CREATE TABLE GruposSalarias ( idGrupoSalarial INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desGrupoSalarial VARCHAR(100) NOT NULL, Salario NUMERIC(30) UNSIGNED, PRIMARY KEY (idGrupoSalarial), UNIQUE KEY IDX_GruposSalarias1(idGrupoSalarial) ); CREATE TABLE EstadosCivis ( idEstadoCivil INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desEstadoCivil VARCHAR(100) NOT NULL, PRIMARY KEY (idEstadoCivil), UNIQUE KEY IDX_EstadosCivis1(idEstadoCivil)
Carlos Jorge Lima David

157

Sistema Informtico para a Gesto de Recursos Humanos - UAN

); CREATE TABLE Profissoes ( idProfisso INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desProfissao VARCHAR(100) NOT NULL, PRIMARY KEY (idProfisso), UNIQUE KEY IDX_Profissoes1(idProfisso) ); CREATE TABLE LocaisTrabalhos ( idLocalTrabalho INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desLocalTrabalho VARCHAR(100) NOT NULL, PRIMARY KEY (idLocalTrabalho), UNIQUE KEY IDX_LocaisTrabalhos1(idLocalTrabalho) ); CREATE TABLE TiposTrabalhadores ( idTipoTrabalhador INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoTrabalhador VARCHAR(100) NOT NULL, PRIMARY KEY (idTipoTrabalhador), UNIQUE KEY IDX_TiposTrabalhadores1(idTipoTrabalhador) ); CREATE TABLE Regimes ( idRegime INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desRegime VARCHAR(100) NOT NULL, PRIMARY KEY (idRegime), UNIQUE KEY IDX_Regimes1(idRegime) ); CREATE TABLE UnidadesOrganicas ( idUnidadeOrganica INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desUnidadeOrganica CHAR(100) NOT NULL, PRIMARY KEY (idUnidadeOrganica) ); CREATE TABLE TiposUsuarios ( idTipoUsuario INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoUsuario VARCHAR(100) NOT NULL, PRIMARY KEY (idTipoUsuario), UNIQUE KEY IDX_TiposUsuarios1(idTipoUsuario) ); CREATE TABLE Usuarios
Carlos Jorge Lima David

158

Sistema Informtico para a Gesto de Recursos Humanos - UAN

( idUsuario INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desUsuario VARCHAR(100) NOT NULL, tipoUsuario INTEGER(10) NOT NULL, PRIMARY KEY (idUsuario), KEY IDX_Usuarios1(tipoUsuario) ); CREATE TABLE Sexos ( idSexo INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desSexo VARCHAR(100) NOT NULL, PRIMARY KEY (idSexo), UNIQUE KEY IDX_Sexos1(idSexo) ); CREATE TABLE Racas ( idRaca INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desRaca VARCHAR(100) NOT NULL, PRIMARY KEY (idRaca), UNIQUE KEY IDX_Racas1(idRaca) ); CREATE TABLE SituacoesMilitares ( idSituacaoMilitar INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desSituacaoMilitar VARCHAR(100) NOT NULL, PRIMARY KEY (idSituacaoMilitar), UNIQUE KEY IDX_SituacoesMilitares1(idSituacaoMilitar) ); CREATE TABLE DadosGerais ( idDadoGeral INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, nomeCompleto VARCHAR(100) NOT NULL, dataNascimento DATE, sexo INTEGER(10) NOT NULL, dataAdmissao DATE NOT NULL, nacionalidade INTEGER(10), localNascimento VARCHAR(100), raca INTEGER(10), municipio VARCHAR(100), residencia VARCHAR(100), provinciapais VARCHAR(100), grupoSalarial INTEGER(10), situacaoMilitar INTEGER(10), estadoCivil INTEGER(10), nomeConjuge VARCHAR(100),
Carlos Jorge Lima David

159

Sistema Informtico para a Gesto de Recursos Humanos - UAN

dataNascimentoConjuge DATE, numeroBI VARCHAR(100), localEmissao VARCHAR(100), dataEmissao DATE, profissao INTEGER(10), localTrabalho INTEGER(10), telefone VARCHAR(10), regime INTEGER(10), EstadoActual INTEGER(10), tipoTrabalhador INTEGER(10), PRIMARY KEY (idDadoGeral), UNIQUE (numeroRegisto), KEY IDX_DadosGerais1(sexo), KEY IDX_DadosGerais2(localTrabalho), KEY IDX_DadosGerais3(situacaoMilitar), KEY IDX_DadosGerais4(profissao), KEY IDX_DadosGerais5(regime), KEY IDX_DadosGerais6(grupoSalarial), KEY IDX_DadosGerais7(raca), UNIQUE KEY IDX_DadosGerais8(numeroRegisto), KEY IDX_DadosGerais9(estadoCivil), KEY IDX_DadosGerais10(tipoTrabalhador), UNIQUE KEY IDX_DadosGerais11(idDadoGeral) ); CREATE TABLE CategoriasDocentes ( idCategoriaDocente INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desCategoriaDocente VARCHAR(100) NOT NULL, PRIMARY KEY (idCategoriaDocente), UNIQUE KEY IDX_CategoriasDocentes1(idCategoriaDocente) ); CREATE TABLE CategoriasCientificas ( idCategoriaCientifica INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desCategoriaCientifica VARCHAR(100) NOT NULL, PRIMARY KEY (idCategoriaCientifica), UNIQUE KEY IDX_CategoriasCientificas1(idCategoriaCientifica) ); CREATE TABLE Docentes ( idDocente INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, CategoriaDocente INTEGER(10) NOT NULL, CategoriaCientifica INTEGER(10) NOT NULL, PRIMARY KEY (idDocente), UNIQUE (numeroRegisto), KEY IDX_Docentes1(CategoriaDocente),
Carlos Jorge Lima David

160

Sistema Informtico para a Gesto de Recursos Humanos - UAN

KEY IDX_Docentes2(CategoriaCientifica), KEY IDX_Docentes3(numeroRegisto) ); CREATE TABLE Subsidios ( idTipoSubsidio INTEGER(10) UNSIGNED NOT NULL, numeroRegisto VARCHAR(100) NOT NULL, mes VARCHAR(100) NOT NULL, ano YEAR NOT NULL, desSubsidio VARCHAR(100) NOT NULL, valor REAL(50,2), PRIMARY KEY (idTipoSubsidio, mes, ano, desSubsidio), KEY IDX_Subsidios1(idTipoSubsidio), KEY IDX_Subsidios2(numeroRegisto) ); CREATE TABLE TiposEstudos ( idTipoEstudo INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoEstudo VARCHAR(100) NOT NULL, PRIMARY KEY (idTipoEstudo), UNIQUE KEY IDX_TiposEstudos1(idTipoEstudo) ); CREATE TABLE EstudosRealizados ( idEstudoRealizado INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, ano YEAR, idTipoEstudo INTEGER(10) UNSIGNED NOT NULL, PRIMARY KEY (idEstudoRealizado, numeroRegisto, idTipoEstudo), KEY IDX_EstudosRealizados1(numeroRegisto), KEY IDX_EstudosRealizados2(idTipoEstudo), UNIQUE KEY IDX_EstudosRealizados3(idEstudoRealizado, numeroRegisto, idTipoEstudo) ); CREATE TABLE Niveis ( idNivel INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desNivel VARCHAR(100) NOT NULL, PRIMARY KEY (idNivel), UNIQUE KEY IDX_Niveis1(idNivel) ); CREATE TABLE Idiomas ( idIdioma INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, numeroIdiomas NUMERIC(30) UNSIGNED,
Carlos Jorge Lima David

161

Sistema Informtico para a Gesto de Recursos Humanos - UAN

idioma VARCHAR(100), nivel INTEGER(10) UNSIGNED NOT NULL, PRIMARY KEY (idIdioma, numeroRegisto, nivel), KEY IDX_Idiomas1(nivel), KEY IDX_Idiomas2(numeroRegisto), UNIQUE KEY IDX_Idiomas3(idIdioma) ); CREATE TABLE Cursos ( idCurso INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desCurso VARCHAR(100) NOT NULL, PRIMARY KEY (idCurso), UNIQUE (desCurso), UNIQUE KEY IDX_Cursos1(idCurso) ); CREATE TABLE CursosFeitos ( idCursoFeito INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, curso INTEGER(10) UNSIGNED NOT NULL, localRealizacaoCurso VARCHAR(100), ano YEAR, PRIMARY KEY (idCursoFeito, numeroRegisto, curso), KEY IDX_CursosFeitos1(curso), KEY IDX_CursosFeitos2(numeroRegisto), UNIQUE KEY IDX_CursosFeitos3(idCursoFeito) ); CREATE TABLE LocaisTrabalhoAnteriores ( idLocalTrabalhoAnterior INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, dataInicio DATE, dataTermino DATE, profissao VARCHAR(100), PRIMARY KEY (idLocalTrabalhoAnterior, numeroRegisto), KEY IDX_LocaisTrabalhoAnteriores1(numeroRegisto), UNIQUE KEY IDX_LocaisTrabalhoAnteriores2(idLocalTrabalhoAnterior) ); CREATE TABLE Capacitacoes ( idCapacitacao INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, tipoCapacitacao VARCHAR(100), dataInicio DATE, dataTermino DATE, PRIMARY KEY (idCapacitacao, numeroRegisto),
Carlos Jorge Lima David

162

Sistema Informtico para a Gesto de Recursos Humanos - UAN

KEY IDX_Capacitacoes1(numeroRegisto), UNIQUE KEY IDX_Capacitacoes2(idCapacitacao) ); CREATE TABLE AgregadosFamiliares ( idAgregadoFamiliar INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, codigoFamiliar VARCHAR(100) NOT NULL, nomeFamiliar VARCHAR(100) NOT NULL, grauParentesco VARCHAR(100), dataNascimento DATE, sexo INTEGER(10), estadoCivil INTEGER(10), profissao VARCHAR(100), localTrabalho VARCHAR(100), PRIMARY KEY (idAgregadoFamiliar, codigoFamiliar), KEY IDX_AgregadosFamiliares1(numeroRegisto), KEY IDX_AgregadosFamiliares2(sexo), KEY IDX_AgregadosFamiliares3(estadoCivil), UNIQUE KEY IDX_AgregadosFamiliares4(idAgregadoFamiliar) ); CREATE TABLE situacoesMedicas ( idSituacaoMedica INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, nomeDoador VARCHAR(100), defeitoFisico VARCHAR(100), doencasAlergias VARCHAR(100), idGrupoSanguineo INTEGER(10) UNSIGNED NOT NULL, PRIMARY KEY (idSituacaoMedica, idGrupoSanguineo), KEY IDX_situacoesMedicas1(numeroRegisto), KEY IDX_situacoesMedicas2(idGrupoSanguineo), UNIQUE KEY IDX_situacoesMedicas3(idSituacaoMedica) ); CREATE TABLE GrupoSanguineo ( idGrupoSanguineo INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desGrupoSanguineo VARCHAR(100), PRIMARY KEY (idGrupoSanguineo), UNIQUE KEY IDX_GrupoSanguineo1(idGrupoSanguineo) ); CREATE TABLE DocumentosAdicionais ( idDocumentoAdicional INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, numeroDocumentos INTEGER(10) UNSIGNED NOT NULL,
Carlos Jorge Lima David

163

Sistema Informtico para a Gesto de Recursos Humanos - UAN

tipoDocumento VARCHAR(100), dataEmissao DATE, localEmissao VARCHAR(100), PRIMARY KEY (idDocumentoAdicional, numeroRegisto, numeroDocumentos), KEY IDX_DocumentosAdicionais1(numeroRegisto), UNIQUE KEY IDX_DocumentosAdicionais2(idDocumentoAdicional) ); CREATE TABLE CargosOcupados ( idCargoOcupado INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, cargo VARCHAR(100) NOT NULL, dataInicio DATE NOT NULL, numeroDespacho VARCHAR(100), PRIMARY KEY (idCargoOcupado, numeroRegisto, cargo, dataInicio), KEY IDX_CargosOcupados1(cargo), KEY IDX_CargosOcupados2(numeroRegisto) ); CREATE TABLE Transferencias ( idTransferencia INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, dataTransferencia DATE NOT NULL, areaTrabalhoAnterior VARCHAR(100) NOT NULL, transferidoPara VARCHAR(100) NOT NULL, PRIMARY KEY (idTransferencia, numeroRegisto, dataTransferencia), KEY IDX_Transferencias1(numeroRegisto) ); CREATE TABLE Ferias ( idFerias INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, dataInicio DATE, dataFim DATE, PRIMARY KEY (idFerias), KEY IDX_Ferias1(numeroRegisto) ); CREATE TABLE Faltas ( idFalta INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, dataFalta DATE NOT NULL, justificacao VARCHAR(100), PRIMARY KEY (idFalta), KEY IDX_Faltas1(numeroRegisto) );
Carlos Jorge Lima David

164

Sistema Informtico para a Gesto de Recursos Humanos - UAN

CREATE TABLE tipoLicencas ( idTipoLicenca INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoLicenca VARCHAR(100) NOT NULL, PRIMARY KEY (idTipoLicenca), UNIQUE KEY IDX_tipoLicencas1(idTipoLicenca) ); CREATE TABLE Licencas ( idLicenca INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, dataInicio DATE NOT NULL, dataFim DATE NOT NULL, idTipoLicenca INTEGER(10) UNSIGNED NOT NULL, PRIMARY KEY (idLicenca, idTipoLicenca), KEY IDX_Licencas1(idTipoLicenca), KEY IDX_Licencas2(numeroRegisto) ); CREATE TABLE TiposClassificacoes ( idTipoClassificacao INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, desTipoClassificacao VARCHAR(100) NOT NULL, PRIMARY KEY (idTipoClassificacao), UNIQUE KEY IDX_TiposClassificacoes1(idTipoClassificacao) ); CREATE TABLE Classificacoes ( idClassificacoes INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, idCargos INTEGER(10), dataClassificacao DATE NOT NULL, nomeAvaliador VARCHAR(100) NOT NULL, idTipoClassificacao INTEGER(10) UNSIGNED NOT NULL, PRIMARY KEY (idClassificacoes), KEY IDX_Classificacoes1(numeroRegisto), KEY IDX_Classificacoes2(idTipoClassificacao), KEY IDX_Classificacoes3(idCargos) ); CREATE TABLE ProcessosDisciplinares ( idProcessoDisciplinar INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, tipoInfraccao VARCHAR(100) NOT NULL, sancaoAplicada VARCHAR(100) NOT NULL, dataSancao DATE NOT NULL,
Carlos Jorge Lima David

165

Sistema Informtico para a Gesto de Recursos Humanos - UAN

PRIMARY KEY (idProcessoDisciplinar), KEY IDX_ProcessosDisciplinares1(numeroRegisto) ); CREATE TABLE DistincoesLouvores ( idDistincaoLouvor INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, numeroRegisto VARCHAR(100) NOT NULL, tipoDistincao VARCHAR(100) NOT NULL, dataDistincao DATE NOT NULL, PRIMARY KEY (idDistincaoLouvor), KEY IDX_DistincoesLouvores1(numeroRegisto) ); CREATE TABLE DadosPessoais ( idDadoPessoal INTEGER(10) UNSIGNED NOT NULL AUTO_INCREMENT, idDadoGeral INTEGER(10) UNSIGNED, idEstudoRealizado INTEGER(10) UNSIGNED, idCursoFeito INTEGER(10) UNSIGNED, idIdioma INTEGER(10) UNSIGNED, idLocalTrabalhoAnterior INTEGER(10) UNSIGNED, idCapacitacao INTEGER(10) UNSIGNED, idAgregadoFamiliar INTEGER(10) UNSIGNED, idSituacaoMedica INTEGER(10) UNSIGNED, idDocumentoAdicional INTEGER(10) UNSIGNED, numeroRegisto VARCHAR(100), idTipoEstudo INTEGER(10) UNSIGNED, PRIMARY KEY (idDadoPessoal), KEY IDX_DadosPessoais1(idAgregadoFamiliar), KEY IDX_DadosPessoais2(idCapacitacao), KEY IDX_DadosPessoais3(idCursoFeito), KEY IDX_DadosPessoais4(idDadoGeral), KEY IDX_DadosPessoais5(idIdioma), KEY IDX_DadosPessoais6(idDocumentoAdicional), KEY IDX_DadosPessoais7(idSituacaoMedica), KEY IDX_DadosPessoais8(idEstudoRealizado, numeroRegisto, idTipoEstudo), KEY IDX_DadosPessoais9(idLocalTrabalhoAnterior) ); #======================================================================== Foreign Keys #======================================================================== ALTER TABLE Usuarios ADD FOREIGN KEY (tipoUsuario) REFERENCES TiposUsuarios (idTipoUsuario); ALTER TABLE DadosGerais ADD FOREIGN KEY (sexo) REFERENCES Sexos (idSexo);

Carlos Jorge Lima David

166

Sistema Informtico para a Gesto de Recursos Humanos - UAN

ALTER TABLE DadosGerais ADD FOREIGN KEY (localTrabalho) REFERENCES LocaisTrabalhos (idLocalTrabalho); ALTER TABLE DadosGerais ADD FOREIGN KEY (situacaoMilitar) REFERENCES SituacoesMilitares (idSituacaoMilitar); ALTER TABLE DadosGerais ADD FOREIGN KEY (profissao) REFERENCES Profissoes (idProfisso); ALTER TABLE DadosGerais ADD FOREIGN KEY (regime) REFERENCES Regimes (idRegime); ALTER TABLE DadosGerais ADD FOREIGN KEY (grupoSalarial) REFERENCES GruposSalarias (idGrupoSalarial); ALTER TABLE DadosGerais ADD FOREIGN KEY (raca) REFERENCES Racas (idRaca); ALTER TABLE DadosGerais ADD FOREIGN KEY (estadoCivil) REFERENCES EstadosCivis (idEstadoCivil); ALTER TABLE DadosGerais ADD FOREIGN KEY (tipoTrabalhador) REFERENCES TiposTrabalhadores (idTipoTrabalhador); ALTER TABLE Docentes ADD FOREIGN KEY (CategoriaDocente) REFERENCES CategoriasDocentes (idCategoriaDocente); ALTER TABLE Docentes ADD FOREIGN KEY (CategoriaCientifica) REFERENCES CategoriasCientificas (idCategoriaCientifica); ALTER TABLE Docentes ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Subsidios ADD FOREIGN KEY (idTipoSubsidio) REFERENCES TiposSubsidios (idTipoSubsidio); ALTER TABLE Subsidios ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE EstudosRealizados ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE EstudosRealizados ADD FOREIGN KEY (idTipoEstudo) REFERENCES TiposEstudos (idTipoEstudo); ALTER TABLE Idiomas ADD FOREIGN KEY (nivel) REFERENCES Niveis (idNivel);

Carlos Jorge Lima David

167

Sistema Informtico para a Gesto de Recursos Humanos - UAN

ALTER TABLE Idiomas ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE CursosFeitos ADD FOREIGN KEY (curso) REFERENCES Cursos (idCurso); ALTER TABLE CursosFeitos ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE LocaisTrabalhoAnteriores ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Capacitacoes ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE AgregadosFamiliares ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE AgregadosFamiliares ADD FOREIGN KEY (sexo) REFERENCES Sexos (idSexo); ALTER TABLE AgregadosFamiliares ADD FOREIGN KEY (estadoCivil) REFERENCES EstadosCivis (idEstadoCivil); ALTER TABLE situacoesMedicas ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE situacoesMedicas ADD FOREIGN KEY (idGrupoSanguineo) REFERENCES GrupoSanguineo (idGrupoSanguineo); ALTER TABLE DocumentosAdicionais ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE CargosOcupados ADD FOREIGN KEY (cargo) REFERENCES Cargos (codCargo); ALTER TABLE CargosOcupados ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Transferencias ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Ferias ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Faltas ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Licencas ADD FOREIGN KEY (idTipoLicenca) REFERENCES tipoLicencas (idTipoLicenca);
Carlos Jorge Lima David

168

Sistema Informtico para a Gesto de Recursos Humanos - UAN

ALTER TABLE Licencas ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Classificacoes ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE Classificacoes ADD FOREIGN KEY (idTipoClassificacao) REFERENCES TiposClassificacoes (idTipoClassificacao); ALTER TABLE Classificacoes ADD FOREIGN KEY (idCargos) REFERENCES Cargos (idCargos); ALTER TABLE ProcessosDisciplinares ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE DistincoesLouvores ADD FOREIGN KEY (numeroRegisto) REFERENCES DadosGerais (numeroRegisto); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idAgregadoFamiliar) REFERENCES AgregadosFamiliares (idAgregadoFamiliar); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idCapacitacao) REFERENCES Capacitacoes (idCapacitacao); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idCursoFeito) REFERENCES CursosFeitos (idCursoFeito); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idDadoGeral) REFERENCES DadosGerais (idDadoGeral); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idIdioma) REFERENCES Idiomas (idIdioma); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idDocumentoAdicional) REFERENCES DocumentosAdicionais (idDocumentoAdicional); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idSituacaoMedica) REFERENCES situacoesMedicas (idSituacaoMedica); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idEstudoRealizado,numeroRegisto,idTipoEstudo) REFERENCES EstudosRealizados (idEstudoRealizado, numeroRegisto, idTipoEstudo); ALTER TABLE DadosPessoais ADD FOREIGN KEY (idLocalTrabalhoAnterior) REFERENCES LocaisTrabalhoAnteriores (idLocalTrabalhoAnterior);
Carlos Jorge Lima David

169

Sistema Informtico para a Gesto de Recursos Humanos - UAN

#======================================================================== Insero de Dados nas Tabelas (Restries) #======================================================================== ============ Tabela de Sexos ============ INSERT INTO Sexos Values(, Feminino); INSERT INTO Sexos Values(, Masculino); ================= Tabela de Estados Civis ================= INSERT INTO EstadosCivis Values(, Solteiro); INSERT INTO EstadosCivis Values(, Casado); INSERT INTO EstadosCivis Values(, Divorciado); ============ Tabela de Raas ============ INSERT INTO Racas Values(, Amarela); INSERT INTO Racas Values(, Branca); INSERT INTO Racas Values(, Negra); INSERT INTO Racas Values(, Vermelha); ================= Tabela de Niveis ================= INSERT INTO Niveis Values(, Intermedio); INSERT INTO Niveis Values(, Avanado); INSERT INTO Niveis Values(, Iniciante); ================= Tabela de Tipos de Utilizadores ================= INSERT INTO TiposUtilizadores Values(, Administrador); INSERT INTO TiposUtilizadores Values(, Usurio Normal); INSERT INTO TiposUtilizadores Values(, Usurio Avanado);

Carlos Jorge Lima David

170

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexo D - Configurao das Variveis de ambiente


Para que o servidor Tomcat funcione e para que haja comunicao entre o portal e a base de dados algumas variveis de ambiente devem ser declaradas. As variveis de ambientes e os seus respectivos valores so: Nome da Varivel JAVA_HOME TOMCAT_HOME CLASS_PATH Valor c:\jsdk 1.4.2-07\bin c:\tomcat 5.0.28 c:\j2sdk1.4.2-07\jre\lib\ext\mysql-connector-java-3.1.0-alpha-bin.jar

Obs: O mysql-connector-java-3.1.0-alpha-bin.jar o drive de ponte entre o mysql e o java e est disponvel no disco do SIGRH_UAN no directrio drive de ponte mysql Java.

Carlos Jorge Lima David

171

Sistema Informtico para a Gesto de Recursos Humanos - UAN

Anexo E - Componentes dos Diagramas de UML


Este componente representa um actor que uma entidade externa de qualquer tipo que interage com o sistema.
At r co 2

P c te ao

Este componente descreve um pacote que um mecanismo utilizado para agrupar elementos de modelao, geralmente classes ou componentes.

Componente que descreve o estado inicial de um processo. Componente que descreve o estado final de um processo.
Estado1

Componente que descreve um estado do processo. Descreve uma situao durante a vida de um objecto durante a qual satisfaz uma condio, realiza uma actividade ou espera por um evento. Componente que permite definir comportamentos condicionais. Componente que descreve um estado do processo.

EstadoFluxoObjecto1

Sistema
Componente para especificar os pacotes do sistema.

Objecto1

Componente dos diagramas de colaborao que permitem especificar um objecto de uma determinada classe.

Componente 1

Componente dos diagramas de pacotes que permite especificar as relaes entre os componentes do sistema.

Carlos Jorge Lima David

172