conceitos gerenciamento de projeots - trab pti 5sem

46
 YJMUOG TAHTJLSCY HO YJMUO YJYXCKO HC CGYJGA ^TCYCGIJOM IAGCIXOHA ISTYA YS^CTJAT HC XCIGAMALJO CK OGÏMJYC C ^TAHSÌÉA XCRXSOM JGXCTHJYIJ^MJGOT JGHJUJHSOM

Upload: silvansilva

Post on 16-Oct-2015

52 views

Category:

Documents


0 download

TRANSCRIPT

Sistema de Ensino Presencial ConectadoCurso superior de tecnologia em anlise e desenvolvimento de sistemas

Silvan rodrigues da silva

Produo textual interdisciplinar individual

Guarulhos2014

SILVAN RODRIGUES DA SILVAProduo textual interdisciplinar individual

Trabalho de Produo Textual Interdisciplinar - Individual baseado nos assuntos abordados envolvendo todas as disciplinas do semestre. Ser apresentado Universidade Norte do Paran - UNOPAR, como requisito parcial para a obteno de mdia bimestral nas disciplinas de Anlise de Programao WEB I, Projeto de Sistemas, Interface Homem-Computador.Orientador: Profs.: Veronice de Freitas, Marco Ikuro Hisatomi, Adriane Aparecida Loper.

]

Guarulhos2012

SUMRIOLISTA DE FIGURAS.042 INTRODUO063 OBEJTIVOS074 DESENVOLVIMENTO084.1. UM GERENTE DE PROJETOS E SUA APLICABILIDADE DE TCNICAS084.1.a. DEFINIO DOS REQUISITOS094.1.b. ESTUDO DE CASOS DE USO134.1.c. PLATAFORMA WEB154.1.d.OPERAES VIA E-MAIL164.1.I. CICLO DE VIDA E SUA JUSTIFICATIVA184.1.II.WBS DO PROJETO214.1.III CRONOGRAMA DO PROJETO..............................................234.1.IV ASPECTO DE USABILIDADE EM IHC PARA O AMBIENTE WEB...324.1.V ASPECTO DE SEGURANA NA PROGRAMAO WEB................345 CONCLUSO..43 6 REFERNCIA.44

LISTA DE FIGURASQuadro 01- Requisitos: Cadastro Acesso Ambiente Restrito.........................................10Quadro 02 Requisitos: Cadastro do Carro..................................................................10Quadro 03 Requisitos: Locao do Carro para Reservas...........................................10Quadro 04 Requisitos: Locao Imediata Sem Reservas...........................................11Quadro 05 - Requisitos: Entrega do Carro....................................................................11Quadro 06 Requisitos Cadastro do Cliente ou Locatrio............................................12Quadro 07 Requisitos: Desistncias............................................................................12Quadro 08 Requisitos: Retorno do Carro (Antecipados e Atrasados) ........................12Quadro 09 - Tabela de Ameaas por Categoria de Vulnerabilidade da aplicao.........39Figura 01 Caso de Uso (Introdutria ao Assunto )......................................................13Figura 02 MSP WBS Voc Aluga.............................................................................21Figura 03 Modelo WBS ou EAP.....................................................................................22Figura 04 - MSPT01 Cronograma Voc Aluga............................................................23Figura 05 - MSPT02 Cronograma Voc Aluga............................................................24Figura 06 - MSPT03 Cronograma Voc Aluga............................................................24Figura 07 - MSPT04 Cronograma Voc Aluga............................................................25Figura 08 - MSPT 05 Cronograma Voc Aluga...........................................................25Figura 09 - MSPT 06 Cronograma Voc Aluga...........................................................26Figura 10 - MSPT 07 Cronograma Voc Aluga...........................................................26Figura 11 - MSPT 08 Cronograma Voc Aluga...........................................................27Figura 12 Project Details.............................................................................................29Figura 13 JX Project....................................................................................................29Figura 14 - Project Engine Personal...............................................................................30

Figura 15 GanttProject.................................................................................................31Figura 16 OpenProj.....................................................................................................31Figura 17 - Project Planner.............................................................................................32INTRODUO

Dentro dum projeto, este trabalho permitir conhecer os custos, as priorizaes, as identificaes, as inconsistncias, as mudanas, as aderncias, as redues e as necessidades do cliente a serem realizadas. Ainda, com relao pesquisa de um projeto, sentiremos o gosto de participarmos contribuindo diretamente pra evoluo e desenvolvimento de algumas atividades prticas concernentes a gerncia, administrao ou coordenao do projeto aplicando tcnicas e conhecimentos adquiridos ao longo do perodo dos semestres anteriores.Nos mostrar, dentro do conjunto de dificuldades e dvidas conhecidas, como lidar com todas. Nos projetar a buscar os mais diferentes meios de consultas levando-nos a fazer a melhor escolha ou a mais plausvel. Dentro deste simulado de desenvolvimento de uma aplicao baseada na plataforma WEB, com regras de negcios especficas e detalhadas visando um aproveitamento futuro, nos colocar diante da verdadeira prtica dos conceitos, at ento, sabidos, mas nunca colocados em evidncia numa nica vez. Depois, com a deciso de escolha do ciclo de vida mais adequado, notamos que no subestimamos e to pouco negligenciamos nossos estudos.

Obejtivos

Naturalmente, o objetivo deste trabalho intensificar o conhecimento na rea como um todo. Clara e objetivamente, atravs dos conceitos existentes sero apresentadas algumas ferramentas disponveis no mercado que possibilitaro desempenho e flexibilidade no momento do controle do projeto.Este trabalho tambm objetiva especificar e decidir com qual ferramenta poderemos nos apoiar para uma documentao que nos orientar cronologicamente dentro dum projeto. Alm do mais, os pontos de pesquisas solicitados, dentro do eixo temtico, projeto de sistema de informao, colocar os principais artefatos de requisitos de software em seu senrio adequado. Particularmente, acredito que o objetivo central, levar-nos a independncia nas decises relacionadas segurana, ao IHC, as novas tecnologias e ao gerenciamento de um projeto.

4. desenvolvimento

4.1. UM GERENTE DE PROJETOS E SUA APLICABILIDADE DE TCNICA

ProjetosNo me importa saber se o dicionrio est repleto de palavras com seus conceitos e dizeres, tecnicamente falando. Seria o correto busc-los. Mas, convenhamos Temos que nos ater ao que de fato nos interessa: Projetos de Softwares com o desenvolvimento voltado a aplicaes WEB. Onde, neste caso, os prazos de implantao dos sistemas so curtssimos e pr-definidos pelo cliente. Ento, neste momento, os conceitos e palavras do dicionrio no definiro o escopo e os requisitos pertinentes para assegurar a qualidade, afirmar as regras de negcios e manter a expectativa em relao ao produto a ser entregue. Outrossim, o projeto so os custos, as priorizaes, as identificaes, as inconsistncias, as mudanas, as aderncias, as redues e as necessidades do cliente realizadas. Gerente de ProjetosPura e simplesmente, o cara que vai gerenciar, administrar, coordenar, aplicar tcnicas, conhecimentos e habilidades para garantir que um projeto tenha sucesso. Gerenciar um projeto abraar o planejamento, a execuo e atividades de controle desde inicio at final, atender e passar por todas etapas que constitui o projeto. Aplicando Gerenciamento (Recursos e Tcnicas)Na aplicao do gerenciamento possvel que um projeto seja gerenciado utilizando-se o bom senso, boas prticas de colegas, algumas ferramentas como o Project Planner, Microsoft Project, ect. e tambm empregando-se tcnicas compatveis com cada uma das fases do ciclo de vida do projeto. Na fase inicial do projeto, as incertezas, identificaes e inconsistncias so pontos problemticos que merecem uma ateno especial ( claro, observando os custos) com o amparo de mtodos e tcnicas que levem a uma deliberao transparente e especfica no escopo dum projeto. Com este cuidado, acredito que nos permitir assegurar a qualidade do produto final com custos e retrabalhos reduzidos. Alis, numa aplicao WEB, como a que foi demandada, temos a responsabilidade de, alm de nos preocuparmos, tcnica e sofisticadamente, com os requisistos inovadores, teremos que faz-los funcionar e que tragam proveito e auxlio aos usurios e clientes no enfoque do empreendimento. Ou seja, devemos suprir todas as expectativas. cabvel tambm, analisarmos os detalhes de implantao como a linguagem a ser utilizada, o sistema que gerenciar o banco de dados, as classes de domnio do problema e suas relaes, os casos de uso e, por fim, comunicarmos com questes e checagens com todos os envolvidos, atravs duma lista de tarefas e testes almejando atacar dentro dos pontos reais do estgio no projeto. Com isso, saberemos se estaremos de acordo ou se no fugimos do solicitado evitando assim prorrogaes no prazo de entrega.

4.1.a. DEFINIO DOS REQUISITOS

Para consolidarmos os requisitos de um software, primeiramente teremos que nos inteirarmos sobre as funcionalidades das regras de negcio, pois estes atendem rigorosamente as necessidades do cliente. igualmente importante tambm que observemos a infra-estrutura de hardware, software, comunicao e segurana.Ser feito da seguinte maneira, aps termos levantado as necessidades da empresa, juntamos todos os documentos feitos manualmente na empresa, todos os sistemas que so utilizados, incluindo planilhas do excel, documentos do word e, por fim, entrevista todos os funcionrios que utilizam este sistema ou que preencha esses documentos manualmente ou ainda, que possam a vir utiliz-lo, este ou o futuro. Na verdade, as necessidades so, futuramente, os nossos requisitos. Requisitos funcionais expressam o comportamento de um software. As informaes de entrada, o processamento e a sada emitida por uma funcionalidade so informaes necessrias para especificar o requisito do referido grupo.Requisitos no funcionais mapeiam os aspectos qualitativos de um software, por exemplo: performance (tempo de resposta); segurana (restries de acesso, privilgios); perspectiva do usurio (padro das cores, disposio dos objetivos na tela); comunicabilidade (e-mail, VoIP, Browser); usabilidade e portabilidade (a aplicao deve rodar em vrios tipos de aplicativos: mveis, desktop, note). Este grupo de suma importncia e no deve ser desprezado durante o processo de produo de software. Como qualquer outro tipo de requisito, ele deve ser levantado, analisado, especificado e validado.Locao de Carros Requisitos: Cadastro Acesso Ambiente Restrito RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle Acesso Restrito Cadastro (Dever Inserir Usurio e Senha) + Visualizao da Interface com Boto Submit Funcional

2Manter o Controle de Acesso a Determinadas Funiconalidades (privilgios, comunicabilidade, usabilidade e portabilidade) A identificao no Sistema IndividualNo Funcional

Quadro 01- Requisitos: Cadastro Acesso Ambiente Restrito

Locao de Carros Requisitos: Cadastro do Carro RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle dos Carros CRUD + Visualizao e Disponibilidade Funcional

2Manter o Controle de Acesso a Determinadas Funiconalidades (privilgios, comunicabilidade, usabilidade e portabilidade) de acordo com o perfil do UsurioNo Funcional

Quadro 02 Requisitos: Cadastro do Carro

Locao de Carros Requisitos: Locao do Carro para ReservasRequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle de Reservas CRUD + VisualizaoFuncional

2Manter Controle dos Carros Presentes na Filial RUD + Visualizao da Disponibilidade.Funcional

3Manter o Controle de Acesso a Determinadas Funiconalidades (privilgios, comunicabilidade, usabilidade e portabilidade) de acordo com o perfil do UsurioNo Funcional

Quadro 03 Requisitos: Locao do Carro para Reservas

Locao de Carros Requisitos: Locao Imediata Sem Reserva RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle do Aluguel Imediato na Filial CRUD + Visualizao e Disponibiidade.Funcional

2Controle do Cliente/Locatrio RUD + Impresso. Importao do usurio. O usurio dever estar apto s regras da FilialFuncional

3Controle Carto de Crdito CRUD + Emisso da Reserva de Crdito. O CC dever pertencer a um dos motoristas autorizados que assinar o contrato.Funcional

4Controle do Contrato CRUD + Emisso ou Impresso; Alm das clusulas bsicas do contrato, dever importar chek list do carro e condies fsicas e mentais do motorista.Funcional

Quadro 04 Requisitos: Locao Imediata Sem Reservas

Locao de Carros Requisitos: Entrega do Carro RequisitoDescrio dos RequisitosTipo do Requisito

1Controle da Entrega na Filial CRUD + Visualizao e Disponibiidade.Funcional

2Controle do Cliente/Locatrio RUD + Importar dados do Locatrio caso seja de outro Estado + Impresso. Alm da oprao bsica dever importar dados do usurio, sendo que ele dever estar apto s regras da FilialFuncional

3Controle Carto de Crdito RUD + Emisso da Reserva de Crdito. O CC dever pertencer a um dos motoristas autorizados que assinar o contrato.Funcional

4Controle do Contrato CRUD + Emisso ou Impresso; Alm das clusulas bsicas do contrato, dever importar chek list: do carro e condies e das condies fsicas e mentais do motorista.Funcional

Quadro 05 - Requisitos: Entrega do Carro

Locao de Carros Requisitos: Cadastro do Cliente ou Locatrio RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle Cliente/Locatrio CRUD + Confirmar Cadastro Automtico na Filial + Exibir Filial e Dados de Cadastro do Locatrio + Coparar Endereos Locatrio/Filial +Visualizao do histrico do cliente como pagamentos, multas, acidentesFuncional

2Manter Controle Carto de Crdito CRUDFuncional

3Manter Controle de Cadastro de Acidentes e Multas CRUD + Impresso; Disponibilizar Relatrio dos incidentes.Funcional

Quadro 06 Requisitos Cadastro do Cliente ou Locatrio

Locao de Carros Requisitos: Desistncias RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle Cliente/Locatrio RUD + Visualizao dos Dados do Cliente Funcional

2Manter Controle de Reservas RUD + Visualizao dos Dados; Usar condies de cancelamento caso no estiver condicionada ao CC. Funcional

3**Manter Controle do Carto de Crdtio RUD + Executar Condies de acordo garantia da reserva **FERIFICARFuncional

4Manter Controle dos Carros RUD + Visualizao e Disponibilidade, Retornar o Carro como DisponvelFuncional

Quadro 07 Requisitos: Desistncias

Locao de Carros Requisitos: Retorno do Carro (Antecipados e Atrasados)RequisitoDescrio dos RequisitosTipo do Requisito

1Manter Controle de Retornos do Carro RUD + Visualizao, Disponibilidade = Retornar CarroFuncional

2Manter Contorle de Retorno (Antecipados e Atrasados) CRUD + Impresso, Relatrio de Clculos Condicionais das Tarifas de PagamentoFuncional

3Manter Controle Cliente/Locatrio RUD + Visualizao dos Dados do Cliente, Abrir dados de Recebimento, Verificar dados de Cobrana (Condies:Usar Tarifa de Antecipado ou Usar Tarifa de Atrasado) Confirmar modalidade de Recebimento (Dinheiro, Carto de Crdito),Funcional

Quadro 08 Requisitos: Retorno do Carro (Antecipados e Atrasados)

4.1.b. ESTUDO DE CASOS DE USO

Figura 01 Caso de Uso (Introdutria ao Assunto)

Notao da UMLVises: Mostram os diferentes aspectos do sistema, dando enfoque aos ngulos e nveis de abstraes diferentes, construindo uma viso completa do sistema a ser desenvolvido. Vises de Projeto, de Implementao, de Processo, de Implantao e Viso de Caso de Uso.Viso de Caso de Uso: O caso de uso deve ser transparente pra todos os envolvidos na construo e evidencia os comportamentos de um sistema. Diagramas utilizados: Casos de Uso, de Interao, de Atividades e de Grficos de Estado.Viso de Projeto: Salienta a estrutura do sistema. Mostra as classes, colaboradores e as interfaces do sistema. Diagramas utilizados: Diagramas de Classes, de Objetos, de Interao, de Atividades e Grficos de Estado.Viso de Processo: Destaca as questes de desempenho, escalabilidade, mecanismos de concorrncia e mecanismos de sincronizao. Diagramas utilizados: Diagramas de Classes, de Objetos, de Interao, de Atividades e de Grficos de Estado.Viso de Implementao: Evidencia os artefatos fsicos pra efetiva montagem do sistema, onde so abordados os componentes e outros arquivos que servem pra montagem do sistema. Diagramas utilizados: Diagramas de Componentes, de Interao, de Atividades e de Grficos de Estado.Viso de Implantao: Reala os ns que formam a topologia de hardware em que o sistema ser executado. Diagramas utilizados: Diagramas de Implantao, de Interao, de Atividades e de Grficos de Estado.Modelos de Elementos: So os conceitos utilizados nos diagramas. Representam definies comuns da OO.Mecanismos Gerais: Provm comentrios suplementares, informaes ou semntica sobre os elementos dos modelos.Diagramas: So grficos que descrevem o contedo em uma viso. A UML possui vrios tipos de diagramas que, combinados, formam todas as vises do sistema. Papel dos Casos de Uso na Anlise de RequisitosCasos de uso representam funcionalidades completas para o usurio e no, funcionalidades internas do sistema. Outro ponto importante que o diagrama de casos de uso um artefato de comunicao entre cliente, usurios e desenvolvedores. Por ser extremamente simples e, consequentemente, de fcil compreenso, incentiva a participao do cliente e usurios no processo de desenvolvimento. Tambm serve como um contrato entre a equipe/empresa desenvolvedora e o cliente. Casos de Uso A coleo de casos de uso representa todos os modos pelos quais o sistema pode ser utilizado pelos atores envolvidos. Um caso de uso uma seqncia de aes realizadas colaborativamente pelos atores envolvidos e pelo sistema que produz um resultado significativo (com valor) para os atores. Um ator pode ser um usurio ou outro sistema. 4.1.c. PLATAFORMA WEB

A plataforma web fica centralizada, isto , hospedado no servidor web que pode ser acessado pelo browser instalado no computador. Hoje com vrios browsers a disposio para download, entre os mais famosos: Internet Explorer,Safari, Firefox,Chromee Opera. Qualquer sistema operacional que tenha um browser instalado pode acessar o aplicativo web, por exemplo: mesmo sendo feito em C#.NET (Windows 7), pode ser acessado pelo browser doMacOsXou Linux.O que ocorre no desenvolvimento web que, uma linguagem no suficiente para criar um sistema. necessrio saber HTML, CSS,JavaScripte a linguagem C#.NET. Est certo que as outras linguagens como HTML, CSS eJavaScript; so linguagens interpretadas. Mesmo assim, necessrio entend-las.Na plataforma web, existem vantagens no desenvolvimento devido facilidade de uso sem instalar qualquer programa. A onda Web 2.0 ou Web 3.0 no toa. Como todos j sabem, basta acessar o endereo e pronto.O que a plataforma web no faz? Bom, essa parte interessante porque a plataforma web no acessa localmente o computador do usurio para gravar dados, no consegue buscar a configurao da mquina do usurio totalmente sem instalar plugins especficos. Ospluginsespecficos nasceram para minimizar este problema de acesso a mquina local do usurio, isto , aquele que acessa o sistema pelo browser. S que, necessrio aprender tambm a linguagem dessesplugins, dentre os mais famosos so:Silverlighte o Adobe Flash.Plataforma WindowsFormsA vantagem de usar o WindowsForms que, tudo programado para acessar diretamente do computador pessoal do usurio. Os dados especficos como, nmero da placa de rede, nmero do HD e outros podem ser acessados de forma simples e direta. Acessar um scanner, por exemplo, fica fcil usando WindowsForms; j na plataforma Web isso j no pode ser feito; a no ser que coloque um controle Windows dentro da plataforma Web.Outra vantagem que vejo, na linguagem de programao. Basta aprender uma linguagem para programar, por exemplo: C#.NET, VB.NET ou F#.NET. Na escolha de uma dessas, possvel desenvolver o aplicativo para WindowsForms. Diferente da Web, que precisa entender sobre outras linguagens.A centralizao pode ser feita usando WindowsForms, a Microsoft disponibilizou junto a ferramenta VisualStudio .NET, o ClickOnce. Essa centralizao funciona perfeitamente, basta colocar os instaladores em um endereo de internet ou intranet para que o aplicativo seja atualizado e instalado; sem a necessidade de ir mquina por mquina. Se houver alguma atualizao no aplicativo, no momento que o usurio clicar para abrir o mesmo, ser feita uma atualizao automtica. A busca feita automaticamente pelo prprio software. Qual o problema de programar em WindowsForms? O nico problema que vejo hoje a falta da multi-plataforma. No caso da programao WindowsForms, o mesmo s pode ser acessado pelo Windows e suas verses. O Linux ou oMacOsXno consegue executar o aplicativo; isso j corta um pouco amulti-plataformaque existe no mundo todo.ResumoEm geral, bom analisar os dados do seu aplicativo antes de comear a fazer. Se o objetivo for colocar emmulti-plataforma, ento faa na plataforma Web; seno faa WindowsForms. Existem vrios aplicativos que precisam utilizar dados ou scanners da mquina, ento use WindowsForms, mas para a visualizao utilize Web; isto ; usando as duas plataformas para o funcionamento ideal do aplicativo.4.1.d.OPERAES VIA E-MAIL

E-Mail uma aplicao via rede como entre muitas. O e-mail tambm conhecido como Correio Eletrnico que um tipo de software que tipicamente est associado ao uso de redes locais. Valendo-se de um software de correio eletrnico pode-se postar memorandos e outros tipos de mensagens pra um ou vrios usurios ligados rede. As mensagens so transmitidas eletronicamente pela rede e quem as recebe pode, alm de l-las na tela, salv-las em disco e respond-las, tambm via rede. Tudo isto de forma rpida e sem gerao de cpias em papel. Para utilizar o correio eletrnico, o usurio da Internet deve obter um e-mail ou endereo eletrnico com o qual ele poder enviar e receber mensagens. Os e-mails seguem um formato padro: uma sequncia de caracteres iniciais definidos pelo usurio, que deve identific-lo de forma nica na rede onde ele est cadastrado; mais o smbolo @ (arroba), que se l at , em ingls, e em, em portugus; seguidos do nome da rede e domnio. Exemplo : O e-mail do americano Bill Gates [email protected] , onde billg a abreviatura de seu nome, Microsoft o nome da rede local e com o domnio.Web (Word Wide Web)WWW ou simplesmente Web um Sistema de hipertexto e hipermdia implementado na internet. Os programas clientes pra acess-la so os navegadores (browsers), dos quais os mais conhecidos so o Netscape, Internet Explorer e Google. Os navegadores atuam sobre o banco de dados de informaes relacionadas. A unidade bsica de consulta a pgina (implementado como um ou mais arquivos). Ao adicionar um desses programas o usurio depara com uma pgina contendo texto, ilustraes ou fotos.URLCada pgina na Web tem seu prprio e nico endereo, URL (Uniform Resource Locator), que especifica onde exatamente ela se encontra na Internet. Exemplo de URL:http://www.inf.ufrgs.br/~alvares/INF01040/ApostilaConceitosBasicos.pdf Partes de um URLProtocolo: utilizado pra acessar o document, seguido de dois ponto (:) e duas barras (//). O protocolo pra acessar pginas Web o http (Hypertext Transfer Protocol). Na maioria dos navegadores pode-se omitir o http:// pra os endereos de pginas Web. Servidor: nome do domnio do servidor Web onde est localizada a pgina. No exemplo acima: http://www.inf.ufrgs.br/Caminho: localizao do document internet. Inclui nomes de subpastas da mquina onde est a pgina. No exemplo acima: ~alvares/INF01040 Nome do arquivo: Na ltima parte do endereo, aps a ltima barra, aparece o nome do arquivo que est sendo acessado. No exemplo acima: ApostilaConceitosBasicos.pdf 4.1.I. CICLO DE VIDA E SUA JUSTIFICATIVA

Escolha do Ciclo de Vida (Arquitetura em Trs Camadas)Percebi de que no existe uma determinao para um ciclo de vida padro em que podemos considerar, efetivamente, para um desenvolvimento de sistema. Existem sim, estudos diversos de inmeros autores que podemos usar e t-lo como modelo de um ciclo para satisfazer o nosso trabalho e, consequentemente, atender as necessidades do mercado. E, para uma escolha adequada no gerenciamento de um projeto, devemo-nos restringir em alguns elementos a serem analisados, seja em qual for o contedo em que nos baseamos, teremos que ter habilidade pra analisar os conhecimentos tcnicos da equipe e da empresa contratante; devemos ter a viso nos conhecimentos das necessidades e domnio do problema a ser informatizado; ter a certeza de que no est correndo contra o tempo, ao contrrio, que ele seja um aliado disponvel e suficiente tanto pra o desenvolvimento, quanto pra implantao; teremos que ter recursos de materiais e equipamentos, financeiros e humanos acessveis.Programao em Camadas A programao em camadas, acredito eu, a resoluo para atingir os objetivos com eficincia, reutilizao e facilidade de manuteno da aplicao neste projeto. Visto que, dentro da proposta e dos requisitos solicitados, esta programao em Camadas atender substancialmente e com padres utilizados pelo mercado. Sei que desafiante para as equipes de desenvolvimento de softwares ou aplicativos produzirem artefatos com os adjetivos acima e, ademais, protegidos e com prazos reduzidos.Consoante minhas pesquisas, existe uma tendncia que indica que esta arquitetura est presente nas organizaes (micro, pequenas, mdias ou de grandes portes) com produes de softwares ou aplicaes, levando em considerao a significncia do termo Camadas como a respeito da separao das incumbncias fsicas ou lgicas, que evoluem e solucionam.

Aplicaes de Uma Camada ou MonolticasPodemos definir este tipo de aplicao como, ainda hoje, no paradigma ou via de regra, aplicativos que contm suas funcionalidades num nico mdulo que foi concebido atravs dum volume gigantesco de linhas de cdigos, cujo gerenciamento e manuteno so rduos e custosos. Pois, a entrada do usurio, a verificao, a lgica de negcios e o acesso ao banco de dados estavam presentes num mesmo lugar.Aplicaes em Duas CamadasNeste modelo, uma aplicao desenvolvida num ambiente Java, C#, Delphi ou Power Builder ser instalada no Cliente, programa esse que far acesso a um Banco de dados que fica residente no Servidor de Banco de dados. Normalmente, a mquina do Cliente um PC com o Windows e a aplicao do Cliente ser desenvolvida utilizando um dos ambientes conhecidos, conforme mencionados acima. Sendo a aplicao Cliente, um programa para Windows, este dever ser instalado em cada um dos computadores da rede, os quais faro uso desta aplicao ou programa. O Cdigo que gera a Interface do programa, utilizada pelo usurio para acessar a aplicao, faz parte da aplicao Cliente. Todos os formulrios, menus e demais elementos visuais, esto contidos no cdigo da aplicao Cliente. Caso seja necessrio efetuar alguma alterao na interface do programa, ser necessrio gerar uma nova verso do programa. Digo, para todas as mquinas (computadores) que detm a verso anterior, receber a nova verso. Somente desta forma que os usurio acessaro as alteraes da interface (ponto negativo, mas...). Aplicaes em trs camadasO modelo de 3 camadas tornou-se a arquitetura padro para sistemas corporativos com base na Web. Para tanto, houve um movimento em que separaram a lgica de negcio da interface com o usurio. A ideia que os usurios da WEB possam acessar as mesmas aplicaes sem ter que instal-las em suas mquinas locaisNeste modelo o aplicativo movido para o Servidor e um navegador WEB usado como um cliente (thin) magro. O aplicativo executado em servidores WEB com os quais o navegador WEB se comunica e gera o cdigo HTML para ser exibido no cliente.Neste modelo a lgica de apresentao est separada em sua prpria camada lgica e fsica. A separao em camadas lgicas torna o sistema mais flexvel permitindo que as partes possam ser alteradas independentemente. As funcionalidades da camada de negcio podem ser divididas em classes e estas podem ser agrupadas em pacotes ou itens reduzindo, desta forma, as dependncias entre as classes e pacotes. Podem ser reutilizadas por diferentes partes do aplicativo e at por aplicativos diferentes. A modelagem orientada a objetos ajuda promover a modulao pois os objetos encapsulam seus dados (propriedades, estados) e oferecem funcionalidades atravs de seus mtodos. Projetando-os adequadamente, os objetos passam a ter reduo s dependncias entre si, ficando assim fracamente acoplados, ser fcil revis-los.MVC MVC composto por trs tipos de objetos. O modelo o objeto de aplicao, a viso a apresentao na tela e o controlador define a maneira como a interface do usurio reage s entradas do mesmo. Antes do MVC, os projetos de interface para o usurio tendiam em agrupar esses objetos. MVC para aumentar a flexibilidade e a reutilizao. (GAMMA et al. 2000, p. 20).Ela tambm conhecida como MVC (Model View Controller) que um conceito de desenvolvimento criado devido ao aumento da multiplicidade das aplicaes desenvolvidas. Basicamente, h uma diviso entre a programao e a apresentao visual ou layout (interface) do aplicativo atravs de um controlador que serve como comunicador entre as partes. O programador s se preocuparia em programar e no teria que tratar nada na rea visual da aplicao, para tanto, um designer veria apenas o visual e nada da programao, concentrando-se apenas na esttica da aplicao. Ou seja, normalmente a programao e os aspectos visuais de uma aplicao esto misturados em um mesmo arquivo. Utilizando o modelo MVC (camadas), separamos a programao num arquivo e os aspectos visuais noutro, sendo que o programador v apenas a parte programvel e o designer apenas a parte visual, especificamente. O controlador , simplesmente, um algoritmo que junta esses dois aspectos novamente em um nico arquivo e mostra para o usurio.

4.1.II.WBS DO PROJETO

WBS (Work Breakdown Structure) - traduzido como Estrutura Analtica do Projeto EAP, um tipo de diagrama que exibe um projeto de forma top-down. uma ferramenta visual que permite a estruturao de um projeto de forma simples e contm todo o trabalho necessrio para concluso do projeto. Ela se parece com um organograma empresarial, mas seu objetivo identificar que partes compe um projeto. Ele mostra a estrutura de um projeto organizada em vrios resumos (fases) e nveis de tarefas (detalhes).

No recomendo fazer a EAP ou WBS com o OpenProj. Apesar de ter a opo de EAP ou WBS, o OpenProj um software recomendado para o Gerenciamento de Tempo, no de Escopo. Lembrando que uma EAP ou WBS uma decomposio de deliverables e um cronograma reflete todas as atividades ou tarefas de um projeto so coisas diferentes. O contedo de um WBS no pode ser idntico ao de um cronograma!!

Figura 02 MSP WBS Voc Aluga

A EAP normalmente concebida aps o Termo de Abertura do projeto, na fase de Planejamento. Pode ser includa na Declarao de Escopo. Para que serve e suas principais utilidades so:Delimitar e elicitar o Escopo do Projeto;Facilitar a Identificao das Fases do projeto;Facilitar a Identificao dos responsveis;Orientar a identificao e descrio detalhada das Entregas do projeto;Identificar as atividades do projeto;Facilitar a Estimativa de Esforo, Durao e Custo;Facilitar a Identificao de Riscos.Cada fase ou componente do projeto definida em nveis subseqentes at que o nvel de detalhe apropriado seja alcanado. Cdigos WBS so usados para rotular e identificar os diferentes nveis da hierarquia. Usualmente o nvel mais alto (Resumo) rotulado como 1, o segundo nvel 1.1, 1.2, 1.3, o terceiro nvel 1.1.1, 1.1.2, e assim por diante. O seguinte diagrama um exemplo do uso de cdigos no WBS.

Fonte: Xavier, Carlos Magno da Silva 2009

Figura 03 Modelo WBS ou EAP

4.1.III CRONOGRAMA DO PROJETO

Cronograma do Projeto: um documento na forma grfica ou tabular com as datas planejadas para o incio e a concluso das tarefas do projeto, podendo conter marcos (pontos de controle, normalmente as concluses/entregas de subprodutos);Para o cronograma precisamos da forma em lista. Comeamos numerando o nome do projeto (1 nvel) como 1. No segundo nvel numeramos como 1.1, 1.2, 1.3 e assim por diante. Por exemplo, teramos: 1 Projeto "Treinamento Gerenciamento de Projetos" 1.1 Gerenciamento do Projeto 1.1.1 Reunio de Partida do Projeto (Kick off) 1.1.2 Plano do Projeto 1.4 Fechamento do Projeto

Figura 04 - MSPT01 Cronograma Voc Aluga

Figura 05 - MSPT02 Cronograma Voc Aluga

Figura 06 - MSPT03 Cronograma Voc Aluga

Figura 07 - MSPT04 Cronograma Voc Aluga

Figura 08 - MSPT 05 Cronograma Voc Aluga

Figura 09 - MSPT 06 Cronograma Voc Aluga

Figura 10 - MSPT 07 Cronograma Voc Aluga

Figura 11 - MSPT 08 Cronograma Voc Aluga

O desenvolver de um cronograma um processo iterativo que determina datas de incio e trmino planejadas das atividades. Pode exigir que as estimativas de durao e as estimativas de recursos sejam reexaminadas e revisadas para criar um cronograma aprovado.O desenvolvimento do cronograma continua durante todo o projeto conforme o trabalho se desenvolve, o plano de gerenciamento do projeto se modifica os eventos de risco esperados ocorrem ou desaparecem e novos riscos so identificados.As entradas deste processo soas listas de atividades, os atributos das atividades, os diagramas de rede do cronograma do projeto, os requisitos de recursos das atividades, as declarao de escopo do projeto, os fatores ambientais da empresa, os ativos de processos organizacionais.As ferramentas e tcnicas deste processo so as anlises de redes do cronograma, os mtodos dos caminhos crticos, os mtodos das cadeias crticas, o nivelamento de recursos, a anlise E-se, a aplicao de antecipaes e esperas, a compresso do cronograma, as ferramenta para desenvolvimento do cronograma. Recomendaes prticas sobre uso do cronograma: Mesmo nos projetos mais simples, identifique o caminho crtico;Cronograma desatualizado no serve para nada; O cronograma deve ser distribudo s equipes do projeto, seno no sabero que atividade fazer na sequncia; Atividades no devem ser maiores que 40 horas, nem menores que 4 horas; Use um padro de atualizao como 20-50-100, 20-50-80-10, 50-100 ou 0-100. Geralmente no relevante encontrar o percentual exato de completude de uma atividade; O cronograma por si s no garante entregas no prazo, para isso dependemos das pessoas; Use uma ferramenta de apoio para gerao e controle de cronograma, fazer no Excel geralmente no compensa o trabalho.

Ferramentas para Gerenciar ProjetosUma caracterstica necessria nos profissionais dos nossos dias o dinamismo, a sua capacidade delidar commltiplas tarefas e sem deixar nada passar despercebido. Muitas vezes organizar datas e contedo de uma nica tarefa a ser realizadaa longo prazoj complicado, o que dizer ento de quando existe a necessidade de gerenciar diversos projetos simultaneamente?Para resolver (ou pelo menos tentar resolver) este problema, surgem na web diversas ferramentas, tanto de desktop quanto online, que oferecem recursos para a organizao de suas tarefas, estipulando metas e, em alguns casos, com suportepara trabalhosem equipe. O Baixaki possui inmeros softwares e sites do gnero cadastrado em seubanco de dadose eu fiz uma seleo com seis destes aplicativos:DeskAway- Este site oferece um servio de gerenciamento de projetos em que voc cria um cadastro e, nele, pode inserir prazos e caractersticas de uma tarefa a ser realizada. A grande vantagem do DeskAway por ser online, onde possibilita acesso de todos os colaboradores do projeto de qualquer lugar. Ademais, depois de cadastrado, voc ganha um domnio que pode conter o nome de sua empresa. Por exemplo, como http://suaempresa.deskaway.com. Ao acess-lo, surgir na tela os campos para login. Voc e seus colaboradores devero fazer isso para acessar a pgina com seus projetos.

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 12 Project DetailsjxProject Um software de cdigo aberto, ojxProjectprovferramentas simplese eficientes para o gerenciamento de seus projetos. Aqui voc insere tarefas em cada linha, define suas caractersticas como porcentagem j concluda do projeto, horas trabalhadas, dias totais de durao e, inclusive, traar no calendrio, com o mouse, uma linha que ir vincular seus projetos. O recurso de vinculao de diversos projetos serve para deix-los atualizados de maneira simultnea. Atravs do jxProject voc tambm poderimprimir mapase tabelas com ajustes de escalas, etc., facilitando ainda mais a sua anlise sobre o projeto realizado

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 13 JX ProjectProject Engine Personal - Com mais recursos que o programa anterior, oProject Engine Personalpossui inmeras ferramentas para o gerenciamento de suas tarefas e projetos, com menus em rvore de um lado e listas de tarefas a serem realizadas do outro. A interface do programa se assemelha a de um cliente de email. Apesar de no funcionar online, este programa tambm suporta colaborao mltipla. possvel proteg-lo com senha, evitando que pessoas no autorizadas faam qualquer modificao. Aps definir suas tarefas, d incio a elas e ento o seu cone, que era vermelho, passar a ser amarelo. Facilitando a visualizao das tarefas realizadas.

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 14 - Project Engine PersonalGanttProject- Apresenta suporte ao idioma portugus (Brasil), oGanttProject com sua interface bem organizada e limpa, o programa permite a adio de tarefas com data de incio e fim. Alm disso, possvel cadastrar pessoas envolvidas no desenvolvimento das tarefas de modo que facilita o controle das mesmas. Como o nome do programa sugere, ele capaz de gerar grficos de Gantt para facilitar a compreenso da evoluo de seu projeto. Grficos de Gantt so diagramas desenvolvidos pelo engenheiro social Henry Gantt, em 1917 e servem justamente para exibir o avano de diversas etapas de um mesmo projeto.

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 15 - GanttProjectOpenProj - Tambm com suporte ao nosso idioma, oOpenProjGerenciadores de Projeto tem uma interface que lembra muito a de outros programas do gnero, entretanto, com barra de ferramenta esquerda facilitando o acesso a diversos recursos disponveis no programa, como a gerao de grficos de Gantt. Outros recursos que valem a pena ser citados so os filtros de busca, a capacidade de fazer ligaes entre dois projetos e, principalmente, a facilidade com que se insere projetos atravs de um passo-a-passo simples de ser interpretado e seguido.

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 16 - OpenProjProject Planner - Um programa com visual diferente de todos os citados acima, ele possui inmeros modelos de projetos prontos, onde voc apenas edita-o de modo a adquar-se sua necessidade. De mais a mais, ele possui suporte ao cadastramento de pessoas envolvidas num projeto de acordo ca atividade a ser desenvolvida. Como presente em todos os aplicativos do gnero, o Project Planner tambm possui um calendrio no qual possvel visualizar e inserir tarefas a serem realizadas. Este software tambm capaz de gerar grficos de Gantt e diagramas. Pode-se ainda cadastrar outros colaboradores que sero capazes de editar os projetos.

Fonte: Douglas Ciriaco em 13 de Abril de 2009Figura 17 - Project Planner

4.1.IV ASPECTO DE USABILIDADE EM IHC PARA O AMBIENTE WEB

A interface considerada um problema de usabilidade se um determinado usurio ou um grupo de usurios encontra dificuldades para realizar uma tarefa com a interface. Tais dificuldades podem ter origens variadas e ocasionar perda de dados, diminuio da produtividade e mesmo a total rejeio do software por parte dos usurios.Uma grande parte dos problemas relacionados interfaces Web diz respeito a navegao, ou seja, os usurios tm dificuldade para encontrar a informao desejada no site ou no sabem como retornar a uma pgina anteriormente visitada. Outros problemas so ocasionados pelo uso de recursos multimdia de maneira inadequada como, por exemplo o uso abusivo de muitas cores numa mesma pgina, ou seja, interface que utiliza inadequadamente diversas cores, frames e textos em destaque. A usabilidade considerada tanto como uma campo de estudo como tambm um atributo usado para definir a facilidade de uso de um Sistema de Interao Humano-Computador. Para um sistema de IHC, fundamental que bons nveis de usabilidade sejam atingidos, considerando primeiramente a utilidade do produto. Portanto, a participao do usurio no desenvolvimento deste produto torna-se essencial, no sentido de se buscar o que ele deseja avaliar e mensurar os componentes e fatores que faciltaro a sua interao com o sistema.Aplicaes em Ambiente WebPodemos definir uma aplicao Web como uma aplicao de software que utiliza a Web como ambiente de execuo. Aplicaes Web envolvem Sites Web ou sistemas Web (Conallem, 2000). Sites Web a forma original de sistema hipermdia distribudo, criado por Tim Bernes-Lee, com o propsito de permitir pesquisa e acesso direto a documentos e informaes publicadas em vrios computadores que formam a Internet. Documentos, arquivos armazenados em um computador servidor, so acessados e visualizados atravs de um software chamado browser, instalado no computador cliente, utilizando-se da infra estrutura da internet, atravs do protocolo HTTP (Hyper TextTransfer Protocol).UsabilidadeNo incio do uso de computadores, o termo utilizado pra abaliao de um sistema era amigvel (user friendly). NIELSEN (1993) considera esse termo inapropriado por dois motivos: primeiro, porque os usurios no precisam de mquinas que sejam amigveis com eles, eles apenas necessitam de mquinas que no atrapalhem a realizao de uma tarefa; segundo, essa classificao simplista implica que as necessidades do usurio podem ser descritas ao longo de uma nica dimenso por sistemas que so mais ou menos amigveis. Na verdade, usurios diferentes possuem necessidades diferentes e um sistema que seja amigvel com um pode ser muito tedioso pra outro.IHCA Interao Humano-Computador - HCI comeou-se a se desenvolver a partir da incluso web na sociedade da informao (populao includas e beneficiadas de suas tecnologias: como a educao a distncia, o comrcio on-line etc). O nmero de usurio aumentou tornando assim a questo Humano-Computador (HCI) objeto de pesquisas no mundo acadmico carecendo de dados empricos pelo fato de ser uma tarefa nova. A falta de dados empricos impossibilita na concluso de hipteses. O estudo de IHC melhora este returno de dados e salienta bem que quer e precisa no seu cyber espao.

4.1.V ASPECTO DE SEGURANA NA PROGRAMAO WEB

Ao meu ver, um dos aspectos fundamentais est exatamente quando se concluir a reserva, o cliente ter que compartilhar suas informaes com determinados locais que so de propriedades e operadas cobertas e licenciadas de forma independente ("Licenciados"). Estes Licenciados no so controlados por ns. Somos obrigados a identificarmos atravs de transaes. Os Licenciados so controladores de dados independentes e mantm sua prpria Poltica de Privacidade em relao aos dados oferecidos pelos clientes. Portanto, devemos verificar a Poltica de Privacidade do Licenciado para sabermos se aplicvel transao de aluguel de carros ou veculos.Ao usar o nosso aplicativo ou website, os clientes permitiro que se faa uma coleta, o uso e a divulgao da informao, conforme descrito na Poltica de Privacidade. INFORMAES COLETADASAs Informaes Pessoais, como regra geral, sempre tenta-se coletar uma quantidade mnima necessria para facilitar as transaes com o cliente. Entretanto, estas informaoes so vitais e preocupantes: Nome, endereo, nmeros de telefones, emails, nmero da carteira de habilitao e data de validade, nmeros de cpf, data de nascimento, nmeros de carto de crdito, nome de usurio e senha.PROCEDIMENTOS DE SEGURANAAcredito que devemos estar atentos as transmisses das informaes de identificao pessoal, pois devemos oferecer aos nossos clientes aos deles transmisses seguras de toda informao cadastrada no computador para os servidores. Fala-se muito, para determinadas transaes em websites, a tecnologia SSL (Secured Sockets Layer) para garantir a transferncia da informao. Infelizmente, nenhuma transmisso de dados pela Internet pode ser garantida como absolutamente segura. Entretanto, devemos orientar e buscarmos meios pra recebermos as informao tomando medidas que acreditamos serem razoavelmente adequadas de proteo, segurana, interna ou externa, de perda, m utilizao, acesso no autorizado, divulgao, alterao e destruio para garantir a integridade dos dados coletados. Deve ser usado toda sorte de combinaes de mtodos tecnolgicos, fsicos, administrativos e polticos, assim como controles organizacionais e contratos de confidencialidade e no divulgao, que poderemos considerar adequados para proteger estes dados.Segurana na WEBNeste assunto de analisar a segurana de aplicaes web a partir de aspectos ou perspectivas das ameaas, das vulnerabilidades, dos ataques, etc. Deve-se identificar um conjunto de ameaas comuns no nvel da aplicao ou da sua programao para a WEB, do HOST e da REDE, e as contramedidas recomendadas para lidar com cada uma delas. Leva-se em conta, a incorporao de recursos de segurana no design, na implementao, e na implantao de sua aplicao que ajudar a compreender o raciocnio dos invasores. Ao pensar como eles e estar consciente de suas possveis tticas, voc poder aplicar as contramedidas de forma mais eficaz. Conhecendo as abordagens comuns usadas pelos invasores para atingir sua aplicao Web, voc estar mais bem preparado para tomar medidas defensivas porque saber com o que est lidando. As Etapas Bsicas da Metodologia de um Invasor esto resumidas abaixo: - Pesquisar e avaliar;- Explorar e penetrar;- Escalar privilgios;- Manter acesso;- Negar servio;Apresentao das Metodologias comulmente usadas pelos Invasores para comprometer aplicaes web:- O primeiro passo dado por um invasor geralmente a pesquisa do alvo em potencial para identificar e avalizar suas caractersticas. Estas caractersticas podem incluir seus servios e protocolos suportados com vulnerabilidades em potencial e pontos de entrada. O invasor usa estas informaes recolhidas na pesquisa e avaliao para planejar um ataque inicial. Por exemplo, um invasor pode detectar uma vulnerabilidade de scripting entre sites (cross-site scripting - XSS) testando para ver se qualquer controle numa pgina da web ecoa de volta um output.- Aps conseguirem comprometer uma aplicao ou rede, talvez injetando cdigos numa aplicao ou criando uma sesso autenticada com o sistema operacional Microsoft Windows 2000, os invasores imediatamente tentaro escalar os privilgios. Especificamente, eles procuram por privilgios administrativos fornecidos por contas pertencentes a um grupo de Administradores. Eles tambm buscam o alto nvel de privilgios oferecidos pela conta do sistema local.- Aps ganhar acesso a um sistema, os prximos passos dados por um invasor so buscar do acesso fcil no futuro e apagar os seus rastros. As abordagens mais comuns para facilitar o acesso futuro incluem programas de instalao de um back-door ou o uso de uma conta existente que est menos protegida. Apagar os rastros geralmente envolve limpar logs e esconder ferramentas. Desta forma, logs de auditoria so alvos primordiais para o invasor. Arquivos registrados devem ser protegidos, e devem ser analisados regularmente. A anlise dos arquivos registrados podem, muitas vezes, revelar sinais de uma tentativa de entrada forada antes que ocorra algum prejuzo.- Os invasores que no conseguem ganhar acesso, por tantas vezes, armam um ataque para negar servio e, assim, evitar que outras pessoas utilizem a aplicao. Para outros invasores, a opo de negar servio o principal objetivo desde o princpio. Um exemplo o ataque de inundao (flooding) SYN, onde o invasor usa um programa para enviar uma inundao de solicitaes TCP SYN para encher a fila de conexo pendente no servidor. Isto faz com que outros usurios no possam estabelecer conexes de rede.Apesar de existirem muitas variaes de ataques especficos e de tcnicas de ataque, til pensar nestas ameaas buscando saber o que o invasor est tentando alcanar. Isto tira o eixo (ponto central) da identificao de todo e qualquer ataque especfico - o que realmente apenas um meio para um fim - e coloca o ponto (foco) nos resultados finais de possveis ataques.

Mtodo contra Ameaas ou Ataques de Invasores:STRIDE so as iniciais usadas na Microsoft para categorizar diferentes tipos de ameaas. O STRIDE, este mtodo sugere e fornece as informaes essenciais para o processo de elaborao de um modelo de ameaa que categorizado e especificado para o seu cenrio em particular, e o priorizar com base no grau de risco oferecido ao seu sistema. Cada categoria de ameaa descrita no STRIDE possui um conjunto de tcnicas de contramedidas que devem ser usadas para reduzir riscos. A contramedida apropriada depende do ataque especfico. Vale a pena salientar, de que outras ameaas, ataques e contramedidas que se aplicam rede, ao host e s aplicaes existem e, portanto, devero, posteriormente, serem estudadas, apresentadas e eliminadas.STRIDE significa: Spoofing.Spoofing(falsificao) a tentativa de ganhar acesso a um sistema usando uma identidade falsa. Isto pode ser feito usando credenciais roubadas ou um endereo falso de IP. Aps o invasor ter conseguido ganhar acesso como um usurio legtimo ou host, a elevao ou o abuso de privilgios usando a autorizao pode comear. Tampering.Tampering(manipulao) a modificao no autorizada dos dados, por exemplo, conforme fluem atravs da rede entre dois computadores. Repudiation.Repudiation(repdio) a habilidade de usurios (legtimos ou no) de negar que tenham executado aes ou transaes especficas. Sem a auditoria adequada, ataques de repudiation so difceis de serem provados. Information disclosure.Information disclosure(revelao de informaes) a exposio no autorizada de dados privados. Por exemplo, um usurio visualiza o contedo de uma tabela ou arquivo no autorizado, ou monitora dados transmitidos em texto puro atravs de uma rede. Alguns exemplos de vulnerabilidades deinformation disclosureincluem o uso de campos escondidos, comentrios incorporados em pginas da web que contm strings (seqncias) de conexo com um banco de dados e detalhes da conexo, e uma manipulao fraca de excees que pode fazer com que detalhes do sistema interno sejam revelados ao cliente. Qualquer uma destas informaes pode ser muito til para o invasor. Denial of service.Denial of service(negao de servio) o processo que torna um sistema ou aplicao indisponvel. Por exemplo, um ataque de negao de servio pode ser feito com o bombardeamento de solicitaes que consomem todos os recursos disponveis do sistema ou com a transmisso de dados de entrada defeituosos que podem acabar com o processo de uma aplicao. Elevation of privilege.Elevation of privilege(elevao de privilgio) ocorre quando um usurio com privilgios limitados assume a identidade de um usurio privilegiado para ganhar acesso a uma aplicao. Por exemplo, um invasor com privilgios limitados pode elevar seu nvel de privilgio para comprometer e tomar o controle de uma conta ou processo altamente privilegiado.Ameaas e Contramedidas na RedeOs principais componentes que compe sua infra-estrutura de rede so os roteadores, os firewalls, e os switches. Eles agem como guardies protegendo seus servidores e suas aplicaes contra ataques e invases. Um invasor pode explorar dispositivos de rede mal configurados. Vulnerabilidades comuns incluem configuraes fracas de instalao padro, controles de acesso totalmente abertos, e dispositivos sem os ltimos patches (atualizaes) de segurana. Estas so as principais ameaas de rede: Acmulo de Informaes, Sniffing; Spoofing; Seqestro de Sesses; Negao de servio.Ameaas e Contramedidas no HostAs ameaas no host so direcionadas ao sistema de software sobre o qual suas aplicaes so construdas. Isto inclui o Windows 2000, o Internet Information Services (IIS), o .NET Framework, e o SQL Server 2000, dependendo da funo especfica do servidor. As principais ameaas no nvel do host so: Vrus, Cavalos de Tria e Worms; Footprinting (rastro); Profiling (elaborao de perfil); Quebra de senha; Negao de servio; Execuo de cdigos arbitrrios; Acesso no autorizado.Contramedidas e Ameaas na AplicaoUma boa maneira de analisar ameaas no nvel da aplicao organiz-las em categorias de vulnerabilidade.

Tabela de Ameaas por Categoria de Vulnerabilidade da aplicao.CategoriasAmeaas

Validao da EntradaEstouro do buffer; scripting entre sites; injeo SQL; canonicalizao.

AutenticaoEscuta na rede, ataques de fora bruta, ataques de dicionrios, replay de cookies, roubo de credenciais.

AutorizaoElevao de privilgio; revelao de dados confidenciais; manipulao de dados; ataques enganadores.

Gerenciamento da ConfiguraoInterfaces de acesso no autorizadas administrao, acesso no autorizado aos depsitos de configuraes; busca de dados de configurao em texto claro; falta de responsabilidade individual; contas ultraprivilegiadas de servio e processo.

Dados ConfidenciaisAcesso a dados confidenciais armazenados; escuta na rede; manipulao de dados.

Gerenciamento de sessoSequestro de sesso, replay de sesso, ataque man in the middle

CriptografiaGerao ou gerenciamento falho de chaves; encriptao fraca ou customizada.

Manipulao de ParmetrosManipulao de string de consulta; manipulao de campo de formulrio; manipulao de cabealho http.

Gerenciamento de ExceesRevelao de informaes, negao de servio.

Auditoria e Regis-troUsurio nega ter executado uma operao; invasor explora uma aplicao sem deixar rastros; invasor esconde seus rastros.

Fonte: Microsoft Corporation Janeiro 2004Quadro 09 - Tabela de Ameaas por Categoria de Vulnerabilidade da aplicao. Algumas Ferramentas de Segurana pra Sistemas em Rede Os mais populares Ataque ou Defesa? Ethereal: Cheirando a cola que aguenta a InternetO Ethereal uma ferramenta pblica de anlise de protocolos para sistemas Unix e Windows. Permite a observao de dados capturados da rede em tempo real ou previamente capturados e guardados num ficheiro ou disco. Pode-se navegar interactivamente nos dados capturados, observando resumos ou informao pormenorizada de cada datagrama. O Ethereal possui diversas facilidades poderosas, nomeadamente uma linguagem rica para filtragem dos dados apresentados e a possibilidade de observar o fluxo de dados de uma sesso TCP reconstruda. Possui uma verso textual, no-grfica, chamada tethereal.Nessus: A melhor ferramenta de inventariao de vulnerabilidades com cdigo fonte disponvel. O Nessus uma ferramenta de inventariao remota de vulnerabilidades para sistemas Linux, BSD, Solaris e outros Unixes. O seu funcionamento baseado em plugins, possui uma interface GTK e efectua mais de 1200 verificaes remotas de segurana. Produz relatrios em HTML, XML, LaTeX e texto simples que indicam as vulnerabilidades detectadas e os passos que devem ser seguidos para as eliminar.Netcat: O canivete Suo da rede. Um utilitrio simples para Unix que l e escreve dados de e para uma rede usando os protocolos TCP e UDP. Foi concebido para ser uma ferramenta terminal fivel para ser usada directamente ou indirectamente por outros programas ou scripts. ainda uma ferramenta poderosa para analisar problemas ou explorar uma rede, uma vez que permite criar praticamente qualquer tipo de ligao que seja necessria e possui diversas capacidades intrnsecas interessantes.TCPDump / WinDump: A ferramenta clssica de captura de dados em redes para monitorizao e aquisio de trfego.O Tcpdump uma ferramenta no grfica bem conhecida e muito apreciada para anlise de trfego em redes. Pode ser usada para apresentar os cabealhos dos datagramas que passam por uma interface de rede e que validam uma regra imposta. Esta ferramenta pode ser usada para detectar problemas de rede ou para monitorizar a actividade na rede. Existe uma verso prpria para Windows chamado WinDump. TCPDump ainda o cdigo fonte da biblioteca Libpcap/biblioteca WinPcap de captura de datagramas, que usada pelo Nmap entre outros utilitrios. Note-se que muito utentes preferem o Ethereal, uma ferramenta de captura mais actual.DSniff: Uma srie de ferramentas poderosas para auditoria de redes e testes de penetrao. Esta coleco, bem concebida por Dug Song e muito popular, possui muitas ferramentas. As ferramentas dsniff, filesnarf, mailsnarf, msgsnarf, urlsnarf e webspy permitem monitorizar uma rede de forma passiva em busca de contedos interessantes (senhas, e-mail, ficheiros, etc.). As ferramentas arpspoof, dnsspoof, e macof facilitam a intercepo de trfego de rede normalmente inacessvel a um atacante (v.g., por causa da comutao de nvel 2). As ferramentas sshmitm and webmitm realizam ataques activos de brincalho-no-meio, contra sesses SSH ou HTTPS redireccionadas, explorando validaes fracas inerentes ao uso de PKI ad-hoc. Um transporte parcial para Windows, suportado separadamente.Whisker/Libwhisker: A biblioteca e o inventariador de vulnerabilidades em CGI do Rain.Forest.Puppy.O Whisker ferramenta de inspeco de servidores HTTP que permite detectar muitos problemas de segurana, nomeadamente a presena de CGI perigosos. Libwhisker uma biblioteca de perl (usada pelo Whisker) que permite a criao de inspectores de HTTP especficos. Se pretende auditar mais do que servidores HTTP veja o Nessus.John the Ripper: Um prospector de senhas sumariadas extraordinariamente eficaz, flexvel e eficiente para mltiplas plataformas John the Ripper um prospector de senhas eficiente, actualmente disponvel para muitas verses de Unix (11 so suportadas oficialmente, sem distinguir arquitecturas), DOS, Win32, BeOS e OpenVMS. A sua finalidade primeira descobrir senhas Unix fracas. Suporta diversos tipos de sumrios de senhas crypt(3) que so usuais nas vrias verses de Unix, bem como sumrios usados no Kerberos do AFS e sumrios LM do Windows NT/2000/XP. Vrias outras formas de sumariar senhas podem ser acrescentadas com a contribuio de melhoramentos.OpenSSH / SSH: Um modo seguro de acessar remotamente computadores.O Ssh (Secure Shell) um programa para iniciar sesses em computadores remotos e neles executar comandos. Fornece um canal de comunicao seguro (cifrado) sobre uma rede insegura entre duas mquinas sem confiana mtua. Ligaes X11 e demais trfego para portos arbitrrios TCP/IP podem ser redireccionados para o canal seguro. Foi tambm concebido para substituir o rlogin, rsh e rcp e pode ser usado para fornecer rdist e rsync com um canal de comunicao seguro. OpenSSH parte do projecto OpenBSD, muito embora uma verso transportvel execute na maioria dos sistemas UNIX. Note que o link SSH.Com acima no gratuito para alguns fins, enquanto o OpenSSH sempre gratuito. Os utentes com Windows podem experimentar a verso pblica PuTTY SSH Client ou a verso agradvel para consolas do OpenSSH que vem com o Cygwin. H dezenas de outros clientes (gratuitos ou pagos) disponveis para a maioria dos sistemas. L0phtCrack 4 (actualmente "LC4"): Auditor e recuperador de senhas para Windows.O L0phtCrack tenta descobrir senhas em sistemas Windows a partir de snteses que consegue obter de mquinas Windows NT/2000 isoladas, servidores em rede, controladores primrios de domnios ou mquinas com Active Directory (desde que s mesmas se tenha acesso). Em alguns casos consegue capturar as snteses do trfego de rede. Possui tambm vrias formas de adivinhar senhas (com dicionrios, por fora bruta, etc.). O L0phtCrack custa atualmente 350 USD/mquina e no fornecido cdigo fonte. Empresas com um oramento apertado podem optar por experimentar as ferramentas John the Ripper, Cain & Abel e pwdump3.

5. concluso

Esperarei que trabalho realizado reforce, de maneira aproveitvel, com os elementos do projeto e, principalmente da escolha do ciclo de vida utilizando a arquitetura em trs camadas. Torcerei e acreditarei que no seja complexo e que poder muito bem ser aplicado em sistemas de pequeno porte e que sua utilizao proporcionar muitas vantagens, sendo a principal delas a separao entre interface e regra de negcio.Anseio que supere todos os objetivos solicitados ou planejados foram atendidos, principalmente ao que diz respeito ao levantamento, organizao e documentao dos requisitos, casos de uso e cronogramas do projeto. Ademais, almejarei tambm que possibilite um melhor entendimento nos aspectos de segurana, usabilidade em IHC e WBS. A bem da verdade, particularmente, em minhas anotaes, analisei tudo como algo novo, verdadeiramente. Pois, em meus levantamentos deparei-me com um quadro de inovaes j sabidas por muitos e onde sentir-me, literalmente, uma vtima com todos os predicados peculiar a um Analista. Poderia sim, ser mais extenso, uma vez que, nesta rea da tecnologia, tudo fascinante e demanda tempo de dedicao em segundos, minutos, horas, dias... Cronologicamente falando! Posso no ter atendido as expectativas aos mais experientes. Mas... Sei que continuarei firme. Forte e Veemente!

6. REFERNCIAS

BATTISTI, Jlio Criando Aplicaes em 3, 4 ou n Camadas Disponvel em: http://juliobattisti.com.br/artigos/ti/ncamadas.asp - Acessado em 16/04/2014

BRITTO, Ricardo. E.de Software II: Criando o Cronograma do Projeto. Disponvel em:http://www.ufpi.br/subsiteFiles/pasn/arquivos/files/Aula08_Criando%20o%20Cronograma.pdf - Acesso em 11/04/2014

CIRIACO, Douglas. Ferramentas pra Gerenciar Projetos Disponvel em: http://www.tecmundo.com.br/educacao/1927-ferramentas-para-gerenciar-projetos.htm - Acessado em: 11/04/2014

CORPORATION, Microsoft. Ameaas e Contramedidas de Segurana na Web. Janeiro 2004.Disponvel em: http://technet.microsoft.com/pt-br/library/dd569900.aspx. Acessado em: 13/04/2014

FABRI, Jos Augusto, Os Requisitos No Funcionais em um Projeto de Software. Disponvel em: http://engenhariasoftware.wordpress.com/2010/03/03/os-requisitos-nfuncionais-em-um-projeto-de-software/ Acessado em: 18/04/2014

GAMMA, Erich et al. Padres de Projeto: Solues reutilizveis de software Orientado a Objetos. Porto Alegre: Bookman, 2000.

JUNIOR, Maurcio. Plataforma Web ou Windows Forms. Disponvel em: http://www.linhadecodigo.com.br/artigo/3197/plataforma-web-ou-window-forms.aspx Acessado em: 18/04/2014

LIVI e SILVEIRA, Maria A. Castro; Jos C. Scarpellini; Apostila de Conceitos Bsicos Disponvel em: http://www.inf.ufrgs.br/~alvares/INF01040/ApostilaConceitosBasicos.pdfAcessado em: 19/04/2014

NIELSEN, Jakob. Usability 101: Introduction to Usability. August 2003. Useit.com. Disponvel em: http://www.useit.com/alertbox/20030414.html. Acesso em 12/04/2014.

ORG. Insecure; As 75 Melhores Ferramentas de Segurana para Sistemas em Rede Disponvel em: http://insecure.org/tools/tools-pt.html. Acessado em: 13/04/2014.

RODRIGUES, Eli Gesto de Projetos na Prtica- Cronograma Disponvel em: http://www.elirodrigues.com/gestao-de-projetos/serie-como-fazer-um-cronograma/como -fazer-um-cronograma-parte-1/ Acesso em: 11/04/2014

WBS, Chart Pro. Manual do WBS Chart Pro. Disponvel em: http://www.escritoriodeprojeto.mg.gov.br/index.php/visao-da-evolucao-de-projetos#a Acesso em 11/04/2014

XAVIER, Carlos Magno. Gerenciamento de Aquisies em Projetos. Disponvel em: http://www.ogerente.com.br/novo/secao_livros_ver.php?id=212 (M. Sc., PMP) [email protected] - Acessado em: 10/04/2014