Análise Orientada a Objetos - facom.ufu.br bacala/DAW/Aula01-1 - Introdução.pdf · •Engenharia…

Download Análise Orientada a Objetos - facom.ufu.br bacala/DAW/Aula01-1 - Introdução.pdf · •Engenharia…

Post on 08-Nov-2018

214 views

Category:

Documents

0 download

TRANSCRIPT

  • MDULO

    Anlise Orientada a Objetos

    Introduo

    Prof. M.Sc. Slvio Bacal Jnior

  • OBJETIVO DO

    MDULO

    Apresentao da disciplina

    Contedo Programtico

    Sistema de Avaliao

    Bibliografia

    DAW4 2

  • CURRCULO DO

    PROFESSOR Formado em Engenharia Eltrica pela UFU

    Ps graduado em Tecnologia da Informao pela UFPE

    Mestre em Engenharia de Software pela UFU

    Atuou como Analista de Sistemas, Gerente de Diviso e, atualmente, professor 20 hs na UFU

    Atua com Analista Tributrio na RFB Foi um dos criadores da verso Windows e Java do

    programa IRPF, assumindo papis de Arquiteto, Projetista, Desenvolvedor e Supervisor Tcnico.

    DAW4 3

  • CONTEDO

    PROGRAMTICO

    Introduo

    Processo de Desenvolvimento de Sistemas

    Sistemas Web

    Engenharia de Software para Web

    Elicitao de Requisitos

    Anlise dos Requisitos

    Projeto Web

    DAW4 4

  • SISTEMA DE

    AVALIAO

    DAW4 5

    Trabalhos ao longo das aulas

    Prova final na ltima aula (metade da aula)

  • REFERNCIAS

    BIBLIOGRFICAS

    UML Users Guide. Rumbaugh, Jacobson, Booch

    RUP. Rumbaugh, Jacobson, Booch

    Engenharia de Software. Sommerville

    DAW4 6

  • Evoluo do Computador

    DAW4 7

    Imagine a vida sem computadores. Sem Web!

  • A Evoluo da Web Tempo levado para chegar a 30% da

    populao americana (em anos)

    4

    19

    20

    26

    35

    40

    Internet

    Computador

    Videocassete

    Televiso

    Rdio

    Telefone

    DAW4 8

  • No incio:

    DAW4 9

    Contedo esttico e textual

    Interao limitada

    Navegabilidade fcil

    Desempenho no era essencial

    Sites desenvolvidos apenas por uma pessoa ou por um pequeno grupo

  • Atualmente:

    DAW4 10

    Escopo e complexidade vm aumentando

    Sons, imagens, animaes, etc.

    Navegabilidade complexa

    Desempenho essencial

  • Alguns dados...

    DAW4 11

    84% dos sistemas entregues no atendem as necessidades do cliente

    79% dos projetos sofrem com atrasos

    63% tem custo maior que o previsto

    50% dos sistemas prontos tem problemas: so de baixa qualidade e faltam funcionalidades necessrias

  • O cenrio atual

    DAW4 12

    Sites feitos com pouca disciplina, sem preocupao com tcnicas e mtodos padronizados ou maneiras de controlar a qualidade

    Muitos desenvolvedores acham que o desenvolvimento para a Web apenas criao de pginas usando HTML, Frontpage ou Dreamweaver

    Muitos livros e revistas tambm tratam o desenvolvimento para a Web desta maneira

  • A convergncia da

    tecnologia de redes

    Servidor Web

    2

    Internet

    6

    99

    Usurio Web

    2 modemmodem

    Servidor Web

    Qualquer

    dispositivo

    Qualquer

    meio

    Internet Qualquer

    meio

    Usurio Web

    A representao tradicional do acesso a rede Internet

    Uma representao atualizada do acesso a rede Internet

  • O crescimento da rede Web

    Fonte: Nua Surveys

  • Caractersticas de

    Aplicativos Web

    DAW4 15

    Uso intenso de recursos de rede

    Dirigido a contedo

    Evoluo contnua

  • Analogia da ponte

    DAW4 16

  • Analogia do jardim

    DAW4 17

  • Desenvolvimento de

    software

    DAW4 18

    Como feito

    Anlise de um problema/processo/sistema

    Desenvolvimento de uma soluo

    Software + no-software

    Testes/validao

    Uma srie de problemas!!

  • Como deveria ser

    DAW4 19

  • A realidade

    DAW4 20

  • A realidade

    DAW4 21

    Modelagem algo positivo...

    Arquitetos (algumas vezes) usam UML para criar modelos de alto nvel So usados em um primeiro momento

    Discusses, idias, etc (anlise)

    Porm logo so inteis Programadores criam cdigo manualmente

    Manuteno feita diretamente no cdigo

    Modelos perdem a consistncia

    Mesmo com engenharia reversa, acaba sendo um artefato desnecessrio

  • Problemas a serem

    resolvidos

    DAW4 22

    Reduzir o fardo da modelagem

    Dificuldades da linguagem (UML)

    Inconsistncias entre modelo-cdigo

    Necessidade de ferramentas

    Achar que modelo algo desnecessrio

  • Reutilizao

    DAW4 23

    Conhecimento fica criptografado no cdigo

  • Reutilizao de

    conhecimento

    DAW4 24

  • Reutilizao de

    conhecimento

    DAW4 25

    E se mudar o cdigo?

  • Reutilizao de

    conhecimento

    DAW4 26

    E se mudar o cdigo?

  • Problemas a serem

    resolvidos

    DAW4 27

    Reduzir o fardo da modelagem

    Facilitar o reuso do conhecimento

    Formas mais eficientes para representar o conhecimento

    Menos dependentes do cdigo final

    Mais prximas do domnio do problema

    Diferente da documentao

  • Produtividade

    DAW4 28

    Um elemento conceitual corresponde a vrios elementos do cdigo

    Diferena no nvel de abstrao

    Mapeamento problema / soluo

  • Produtividade

    DAW4 29

  • Produtividade

    DAW4 30

  • Produtividade

    DAW4 31

    Muitas tarefas de implementao so repetitivas e exaustivas

    EJB 2.0

    CORBA

    Struts

    Hibernate

    Perde-se tempo precioso em trabalho braal

    Poderia ser usado em tarefas mais conceituais

  • Problemas a serem

    resolvidos

    DAW4 32

    Reduzir o fardo da modelagem

    Facilitar o reuso do conhecimento

    Aproveitar o trabalho de forma mais produtiva Foco em tarefas conceituais

    Evitar tarefas repetitivas

  • Manutenibilidade

    DAW4 33

    Correes

    Erros

    Melhorias

    Evoluo

    Novas funcionalidades

    Exigem nova anlise, projeto, implementao, testes, etc...

    Normalmente o tempo curto

  • Engenharia para a Web

    DAW4 34

    Processo utilizado para criar aplicativos Web de alta qualidade

    No igual a Engenharia de Software tradicional, mas compartilham muitos conceitos e princpios fundamentais

    Incorpora novas abordagens, metodologias, ferramentas, tcnicas e normas para atender os requisitos exclusivos dos sistemas para a Web

    Desenvolvimento para a Web uma mistura de publicaes impressas e desenvolvimento de software, entre marketing e computao, entre comunicaes internas e relaes externas, e entre arte e tecnologia

  • Manuteno a realidade

    DAW4 35

  • Manutenibilidade

    DAW4 36

  • Manutenibilidade

    DAW4 37

  • Exemplo de manuteno

    DAW4 38

    Modificar um campo de um registro em uma aplicao baseada em Struts

    Tabela, ndices, vises, consultas, etc. (SQL) Ao (classe Java) Mapeamento (XML) Formulrio (XML) Bean de dados (Java/XML) DAO - Data Access Objects (Java) Pgina (HTML) Regras de validao (Javascript) Arquivo de mensagens (.properties) etc.

  • Manutenibilidade

    DAW4 39

    Trabalho braal para construir

    Re-trabalho braal para modificar

    Rastreabilidade

    Um elemento conceitual

    Diversos artefatos de implementao

    Consistncia das mudanas

    Entre os diversos artefatos

  • Manutenibilidade

    DAW4 40

    Erros de programao podem ser facilmente encontrados

    Compilador / IDE

    Checagens simples (mtodo privado nunca chamado, etc.)

    Erros conceituais

    Difceis de identificar no cdigo

    Conhecimento est criptografado

  • Manutenibilidade

    DAW4 41

  • Manutenibilidade

    DAW4 42

  • Manutenibilidade

    DAW4 43

  • Manutenibilidade

    DAW4 44

    Uma vez realizada a alterao

    Atualizar os modelos

    (Quase) nunca acontece

    Uma vez que os desenvolvedores tenham um modelo mental...

    ... comeam a descartar o modelo fsico (documentao)

    Resultado = modelos desatualizados

    Faz parte do fardo da modelagem

  • Problemas a serem

    resolvidos

    DAW4 45

    Reduzir o fardo da modelagem

    Facilitar o reuso do conhecimento

    Aproveitar o trabalho de forma mais produtiva

    Facilitar a manuteno Aproveitar o retrabalho de forma mais produtiva

    Possibilitar que mudanas sejam realizadas no nvel conceitual

    Facilitar a localizao de erros e falhas

    Manter a consistncia entre modelo e cdigo

  • Validao

    DAW4 46

    Verificaes automticas de restries de alto nvel

    Difceis de se realizar diretamente no cdigo

    Exemplos (mquina de estados):

    Estados inalcanveis

    Transies infinitas

    Estados mortos

    Facilita manuteno

    Evitando introduo de erros

  • Validao

    DAW4 47

  • Otimizao

    DAW4 48

    Nvel de cdigo

    Pr-calcular expresses

    Utilizao de macros

    Remoo de expresses redundantes

    Em nvel mais alto no possvel sem a existncia de um modelo

    Remover estados redundantes

    Normalizar base de dados

    Indexar tabelas de acordo com as consultas existentes

  • Problemas a serem

    resolvidos

    DAW4 49

    Reduzir o fardo da modelagem

    Facilitar o reuso do conhecimento

    Aproveitar o trabalho de forma mais produtiva

    Facilitar a manuteno

    Validao / otimizao Fazer uso de checagem automtica

    Utilizar o conhecimento de especialistas do domnio

  • Portabilidade

    DAW4 50

    Acompanhar a evoluo das plataformas de hardware/software

    Novas tecnologias surgem

    Aumenta a presso para a migrao

    Custo do porte:

    Esforo gasto em tarefas especficas da plataforma

  • Portabilidade

    DAW4 51

    Requisitos Modelos Regras de negcio Otimizaes

    Cdigo Arquivos de configurao Scripts (sql, make, etc) Cdigo especfico da plataforma Bibliotecas da plataforma

    Software dependente da plataforma

    Software independente da

    plataforma

    1 mes

    6 meses

  • Portabilidade

    DAW4 52

    Requisitos

    Modelos

    Regras de negcio

    Otimizaes

    Cdigo

    Arquivos de configurao

    Scripts (sql, make, etc)

    Cdigo especfico da plataforma

    Bibliotecas da plataforma

    Software dependente da plataforma

    Software independente da

    plataforma

    3 meses

    3 meses

  • Problemas a serem

    resolvidos

    DAW4 53

    Reduzir o fardo da modelagem

    Facilitar o reuso do conhecimento

    Aproveitar o trabalho de forma mais produtiva

    Facilitar a manuteno

    Validao / otimizao

    Portabilidade Reduzir o esforo especfico de plataforma

    Concentrar no trabalho conceitual

  • Alta complexidade do

    software atualmente

    DAW4 54

    Exemplo:

    LBS Location-Based Systems

    GIS Geographical Information Systems

    Mltiplas plataformas

    Mltiplas interfaces

    Diversas fontes de dados

    Interoperabilidade

    Usurio final leigo

  • DAW4 55

    Rastreamento (radiofrequncia, GPRS)

    Visualizao (Java SWING, Web, JME, Palm)

    Localizao Roteamento Telemetria Acionamento

    remoto

  • Tecnologias envolvidas

    DAW4 56

    Hardware dedicado (veculos) GPS, sensores, atuadores

    Software embarcado (C) Geoposicionamento Leitura/escrita sinais Protocolo de comunicao Transmisso Criptografia

    Central (C++) Armazenamento dos dados Autenticao

  • Tecnologias envolvidas

    DAW4 57

    Monitoramento/rotas (Java/SWING) Visualizao dos veculos Sobreposio no mapa Clculo de rotas

    Servidor de mapas (Java) http://geoserver.org Visualizao em camadas Caching

    Base de dados PostgreSQL + PostGIS Funes de consulta / geometria Diferentes fornecedores de mapas

  • Tecnologias envolvidas

    DAW4 58

    Dispositivos mveis Celular (JME) PND Personal Navigation Device (C# / .NET) Android IOS

    Visualizao Web Portal de mapas (Javascript) http://openlayers.org

    Edio de mapas (Java/SWING) Nomes de ruas Sentido/mo de direo

  • Problemas a serem

    resolvidos

    DAW4 59

    Reduzir o fardo da modelagem Facilitar o reuso do conhecimento Aproveitar o trabalho de forma mais produtiva Facilitar a manuteno Validao / otimizao Portabilidade Lidar com a alta complexidade do software atual

    Diferentes especialistas (TI vs domnio) Necessidade de integrao / interoperabilidade

  • Resultado

    DAW4 60

    Complexidade exige Diversos profissionais Diversos especialistas Comunicao crtica

    Especialistas em TI x Especialistas no domnio Cada um em seu territrio!

    Porm, com a alta complexidade Torna-se uma tarefa difcil

    Alm disso Constantes mudanas nas plataformas/requisitos/tecnologias

    disponveis

  • Soluo

    DAW4 61

    Modelagem

    Reutilizao

    Produtividade

    Manutenibilidade

    Validao / otimizao

    Portabilidade

    Alta complexidade

    Desenvolvimento usando Modelos

    Processo de Software

  • PROCESSOS DE SOFTWARE

    DAW4 62

  • reas envolvidas:

    DAW4 63

    Anlise de sistemas e projetos Engenharia de software Engenharia de hipermdia e hipertexto Engenharia de requisitos Interao humano-computador Desenvolvimento de interface de usurio Engenharia de informao Indexao e recuperao de informaes Teste Modelagem e simulao Gerenciamento de projetos Projeto grfico e apresentao

  • Desenvolvimento para a

    Web X Desenvolvimento

    tradicional

    DAW4 64

    Imediatismo: o tempo em que um site completo precisa ficar pronto pode ser apenas alguns poucos dias ou semanas

    Segurana: aplicativos para a Web esto disponveis via rede, difcil ou at mesmo impossvel limitar a populao de usurios que iro acessar o aplicativo

    Esttica: inegvel que boa parte do apelo dos aplicativos para a Web o seu visual

  • Tipos de aplicativos Web

    DAW4 65

    Informacional. Contedo apenas para leitura fornecido com navegao simples e

    links.

    Download. Um usurio faz o download de informaes dos servidores apropriados

    Personalizvel. O usurio personaliza o contedo para suas necessidades especficas

    Interao. Comunicao entre uma comunidade de usurios ocorre em salas de

    bate-papo, fruns ou mensagens instantneas.

    Entrada de Usurio. Entradas baseadas em formulrios so os mecanismos primrios para a

    comunicao necessria.

  • Tipos de aplicativos Web

    DAW4 66

    Orientado a transaes. O usurio faz um pedido que atendido pelo aplicativo

    Orientado a servios. O aplicativo fornece um servio para o usurio.

    Portal. O aplicativo direciona o usurio para outros contedos ou servios fora

    do domnio do portal do aplicativo.

    Acesso a Banco de Dados. O usurio faz uma consulta em um grande banco de dados e extrai

    informaes.

    Data warehousing. O usurio consulta uma coleo de grandes bancos de dados e extrai

    informaes.

  • Modelo de Processo

    DAW4 67

  • Atividades do Modelo de

    Processo

    DAW4 68

    Formulao: atividade que identifica as metas e objetivos do aplicativo e determina um escopo para o primeiro incremento

    Planejamento: estima os custos do projeto, avalia riscos associados com o desenvolvimento, e define um cronograma bem definido para o primeiro incremento, e um menos definido para os demais

    Anlise: so estabelecidos os requisitos tcnicos e identificados os itens de contedo que sero incorporados. Requisitos para projeto grfico (esttica) tambm so definidos.

  • Atividades do Modelo de

    Processo

    DAW4 69

    Engenharia:

    Projeto de Contedo e Produo: projetar, produzir e/ou obter todos os textos, grficos, contedo de udio e vdeo que sero integrados ao aplicativo.

    Gerao de Pginas: contedo definido na atividade de engenharia fundido com os projetos de arquitetura, navegao e interface para produzir pginas

  • Atividades do Modelo de

    Processo

    DAW4 70

    Teste: tenta descobrir erros em applets, scripts e formulrios; e ajuda a garantir que o aplicativo ir funcionar corretamente em diferentes ambientes

    Avaliao do Cliente: mudanas so pedidas e sero integradas ao sistema no prximo ciclo do processo incremental.

  • Problemas que

    normalmente ocorrem:

    DAW4 71

    Inconsistncia das informaes;

    Manuteno normalmente utiliza muitos recursos e tempo;

    Falta de escalabilidade;

    Necessidade de um visual comum;

    No incio, requisitos so muito vagos;

    Os requisitos iro mudar consideravelmente durante o desenvolvimento e especialmente quando o aplicativo j estiver em uso;

    A tecnologia tambm vem mudando muito rapidamente.

  • Cenrio atual

    DAW4 72

    Grande parte dos desenvolvedores para a Web no utilizam um processo de desenvolvimento bem definido e documentado

    Dos poucos que esto utilizando processos bem definidos e documentados, apenas alguns esto utilizando modelos padronizados pela indstria de software

    Na maioria dos casos o processo se foca na Implementao. Anlise de Requisitos e Projeto normalmente esto combinadas no comeo do projeto, e as atividades de Teste so conduzidas em conjunto com a implementao.

  • Formulao

    DAW4 73

    As seguintes perguntas devem ser feitas:

    Qual o principal motivo para desenvolvermos este aplicativo?

    Por que este aplicativo necessrio?

    Quem vai usar este aplicativo?

  • Formulao

    DAW4 74

    As respostas destas perguntas serviro para definir:

    Metas de informao: Indicam a inteno de fornecer contedo especfico e/ou informao para o usurio

    Metas de aplicativo: Indicam a habilidade de executar tarefas do aplicativo

  • Formulao

    DAW4 75

    Quando todas as metas de ambos os tipos forem identificadas, um perfil de usurio desenvolvido

    Quando todas as metas e perfis de usurios estiverem desenvolvidos, a atividade de formulao ir focar a declarao de escopo do aplicativo para a Web

  • Anlise

    DAW4 76

    Anlise de Contedo: todo o contedo a ser fornecido pelo aplicativo identificado

    Anlise de Interao: a maneira pela qual o usurio interage com o aplicativo descrita em detalhes

    Anlise Funcional: os cenrios de uso criados na anlise de interao iro definir operaes que iro ser utilizadas no aplicativo, que implicam outras funes de processamento

    Anlise de Configurao: O ambiente e a infra-estrutura na qual o aplicado reside so descritos em detalhe

  • Anlise: cenrio atual

    DAW4 77

    especificao detalhada de requisitos raramente feita

    argumentao mais comum que a evoluo contnua dos aplicativos para a Web torna os documentos de requisitos obsoletos antes mesmo de completar o desenvolvimento

  • Projeto

    DAW4 78

    O dilema do projetista:

    O projeto deve resolver os problemas imediatos

    preciso criar uma arquitetura que comporte uma evoluo rpida

  • Elementos tcnicos para

    um projeto efetivo:

    DAW4 79

    Mtodos e Princpios de Projeto: Modularidade eficiente (alta coeso e baixo acoplamento) e outras heursticas da construo de software devem ser utilizadas tambm para a Web. Pode-se utilizar inclusive os mtodos de projetos para sistemas orientados a objetos, pois a hipermdia define objetos que interagem atravs de um protocolo de comunicao que bem parecido com o utilizado na orientao a objetos.

    Regras de Ouro (Golden Rules): Sistemas para a Web j vm sendo construdos h uma dcada. Neste tempo, os projetistas desenvolveram um conjunto de heursticas que podem ser reaplicadas durante o projeto de novos aplicativos.

  • Elementos tcnicos para

    um projeto efetivo:

    DAW4 80

    Padres de Projetos (Design Patterns): So abordagens genricas utilizadas para resolver problemas genricos que podem ser adaptadas para resolverem uma grande variedade de problemas mais especficos.

    Modelos (Templates): um modelo pode ser utilizado para fornecer um esqueleto para qualquer tipo de padro de projeto que ser utilizado no aplicativo.

  • Projeto de Arquitetura

    DAW4 81

    Tem foco na definio da estrutura hipermdia do aplicativo, na aplicao de padres e na construo de modelos (templates) para montar a estrutura e permitir reuso

    A atividade paralela chamada de Projeto de Contedo, deriva a estrutura geral e o esboo detalhado do contedo que ser apresentado no aplicativo

    Nesta etapa definida a estrutura que ser utilizada

  • Estrutura Linear

    DAW4 82

  • Estrutura de Grade

    DAW4 83

  • Estrutura Hierrquica

    DAW4 84

  • Estrutura de Rede (Pure

    Web)

    DAW4 85

  • Projeto de Navegao

    DAW4 86

    Objetivo:

    definir caminhos que permitam ao usurio acessar contedos e servios

    identificar as semnticas de navegao para diferentes usurios e definir os mecanismos para realizar a navegao

  • Tarefas do Projeto de

    Navegao

    DAW4 87

    Definir tipos de usurios

    Criar uma unidade semntica de navegao (semantic navigation unit SNU) para cada objetivo associado a cada tipo de usurio SNU composta de um conjunto de sub-estruturas navegveis

    que podemos chamar de caminhos (ways of navigating WoN)

    Cada um desses caminhos representar a melhor maneira de navegar para que um determinado usurio atinja sua meta ou sub-meta.

    Escolher como os links sero identificados. Dentre as opes esto: textos, cones, botes, etc

  • Projeto de Interface

    DAW4 88

    Mtodos utilizados na Engenharia de Software podem ser utilizados, porm so necessrias algumas consideraes adicionais

    Na Web a interface tem um papel fundamental

  • Recomendaes para

    construo de uma boa

    interface:

    DAW4 89

    Erros no servidor, mesmo os menores, podem fazer com que um usurio deixe o site e procure a informao ou servio que deseja em outro lugar;

    No se deve forar o usurio a ler grandes quantidades de texto, principalmente se for texto explicando como operar o aplicativo ou navegar por ele;

    Avisos de Em Construo devem ser evitados, so links desnecessrios que causam uma expectativa do usurio que com certeza ir se desapontar;

  • Recomendaes para

    construo de uma boa

    interface:

    DAW4 90

    Usurios no gostam de rolar a tela, informaes importantes devem ser colocadas no topo, de forma que aparea logo que a pgina carregada;

    Menus e barras de navegao devem ser projetados de forma consistente, e devem estar disponveis em todas as pginas que o usurio ir navegar. No se deve contar com as funcionalidades do browser;

    Opes de navegao devem ser bvias, mesmo para o usurio casual. O usurio no pode ficar procurando pela tela at encontrar o que deseja.

  • Consideraes

    DAW4 91

    Pessoas gastam horas clicando em um site para encontrar uma simples informao.

    Surfar na Web muito mais difcil do que parece.

    Os usurios (potenciais clientes) esto conseguindo navegar no seu site?

    Por que os humanos tm que se adaptar a tecnologia? Por que a tecnologia no se adapta aos humanos?

    Sua empresa no o pblico-alvo.

    Voc deve escrever seu site em uma linguagem que seus usurios compreendam.

  • Consideraes

    DAW4 92

    Grandes erros continuam acontecendo na Web: links quebrados, cores no padronizadas, URLs que mudam e fazem com que links externos para seu site fiquem quebrados.

    Na Internet, sobrevive o mais fcil de usar.

    Se o usurio no consegue achar o produto, ele no ir compr-lo.

    Ateno com a usabilidade aumenta a porcentagem de visitantes que se tornam clientes.

  • Testes

    DAW4 93

    Assim como na Engenharia de Software, na Engenharia para a Web as atividades de teste tambm visam encontrar erros

    Na Web o desafio ainda maior, pois os aplicativos podem ser acessados utilizando diferentes browsers, sistemas operacionais, plataformas de hardware, etc

  • Testes

    DAW4 94

    O modelo de contedo revisto para descobrir erros

    O modelo de projeto revisto para descobrir erros de navegao

    Componentes selecionados passam por um processo de teste de unidade

    A arquitetura construda e testes de integrao so conduzidos

  • Testes

    DAW4 95

    O aplicativo j integrado testado em sua funcionalidade geral e contedo fornecido

    O aplicativo implementado em diferentes configuraes de ambientes e testado em sua compatibilidade com cada configurao

    O aplicativo testado por uma populao controlada de usurios

  • Gerenciamento

    DAW4 96

    Muitos desenvolvedores acabam optando por pouco ou nenhum gerenciamento por causa do curto perodo de desenvolvimento e da constante evoluo de aplicativos para a Web

    A combinao de tarefas tcnicas e no tcnicas que ocorrem so um desafio para qualquer grupo de profissionais

    Para evitar confuses, frustraes e falhas, um planejamento precisa ocorrer, riscos precisam ser considerados, um cronograma precisa ser estabelecido e acompanhado, e mecanismos de controle precisam ser definidos

  • Equipe de

    Desenvolvimento

    DAW4 97

    normalmente menores que as equipes de desenvolvimento de software tradicional

    no desenvolvimento de software tradicional

    as equipes divididas em unidades menores para resolver diferentes problemas e executar diferentes tarefas

    no desenvolvimento para a Web,

    as equipes divididas em grupos multidisciplinares, que construiro diferentes sees do aplicativo para a Web, mas em geral iro trabalhar em problemas similares

  • Equipe de Desenvolvimento

    Papis

    DAW4 98

    Desenvolvedores e Provedores de Contedo: coleta e gerao de contedo, vem de diversas reas no relacionadas com software

    Web Publisher: organiza contedo, faz a conexo entre o pessoal tcnico que constri o aplicativo e o pessoal no-tcnico que desenvolve o contedo

    Web Engineer: se envolve em vrias atividades durante o desenvolvimento (levantamento de requisitos; anlise; projeto arquitetural, de navegao e de interface; implementao; e teste)

  • Equipe de Desenvolvimento

    Papis

    DAW4 99

    Especialista de Suporte: sero responsveis por dar continuidade no suporte ao aplicativo para a Web, responsvel pelas correes, adaptaes e melhorias no site

    Administrador (WebMaster): responsvel pela operao do site no dia-a-dia, incluindo desenvolvimento e implementao de regras para operao do aplicativo; fixao de procedimentos de suporte; implementao de procedimentos de segurana e direitos de acesso; medio e anlise de trfego; coordenao de mudanas de procedimentos; coordenao de especialistas de suporte

  • Gerenciamento de

    Projeto

    DAW4 100

    O desenvolvimento de aplicativos para a Web uma rea relativamente nova e h poucos dados histricos que podem ser utilizados para fazer estimativa

    Nenhum tipo de mtrica publicado e h pouca discusso de como elas devem ser

    Estimativas baseadas apenas em experincias com projetos similares

    Quase todo aplicativo para a Web quer inovar em alguma coisa, isto acaba fazendo com que estimativas baseadas em experincia com outros projetos, apesar de teis, estejam sujeitas a uma alta margem de erro.

    Grande parte dos aplicativos na Web construda por terceiros, especializados neste tipo de desenvolvimento

  • Tarefas da empresa

    contratante

    DAW4 101

    Muitas das atividades de anlise devem ser feitas internamente, a definio do pblico-alvo; dos objetivos; das informaes e servios a serem fornecidos; e das medidas quantitativas e qualitativas que sero utilizadas para medir

    o sucesso.

    Um esboo do projeto deve ser criado economizar tempo e custo para o desenvolvedor, permite uma ideia melhor de como dever ser o aplicativo.

    Um esboo do cronograma deve ser definido e acompanhado. Os nveis de interao entre o contratante e o contratado devem ser

    identificados definindo as responsabilidades de cada um.

  • Gerenciamento de

    Configurao

    DAW4 102

    estratgias utilizadas na Engenharia de Software so aplicveis, porm tticas e ferramentas devem ser adaptadas para as caractersticas dos aplicativos para a Web

  • Limitaes a serem

    consideradas:

    DAW4 103

    Contedo: um aplicativo para a Web tpico possui bastante contedo. O desafio organiz-lo em um conjunto racional de objetos e ento estabelecer mecanismos de controle de configurao apropriados.

    Pessoas: como o desenvolvimento do aplicativo para a Web contnuo, qualquer pessoa pode criar contedo, muitas delas no tm conhecimentos em engenharia de software e desconhecem as necessidades de gerenciamento de configurao.

  • Limitaes a serem

    consideradas:

    DAW4 104

    Escalabilidade: as tcnicas e controles aplicados a aplicativos para a Web pequenos no so bem escalveis, comum ver aplicativos crescendo em tamanho e complexidade, e com isso pequenas mudanas acabam tendo efeitos inesperados e problemticos.

    Poltica. Quem o dono do aplicativo? Esta questo bastante discutida em grandes e pequenas companhias, e a resposta tem impacto significativo nas atividades de gerenciamento e controle.

  • Concluso

    DAW4 105

    A maneira desordenada com que a maior parte dos aplicativos para a Web so construdos preocupante, principalmente quando analisamos as pesquisas que mostram que a grande maioria dos sites tem problemas de funcionalidade e/ou usabilidade

    As tcnicas criadas e j consolidadas na Engenharia de Software podem ser utilizadas e isto uma vantagem. Porm, preciso fazer algumas adaptaes, tendo muito cuidado com todas as caractersticas especficas de sistemas para a Web

  • Concluso

    DAW4 106

    Poucos desenvolvedores utilizam as tcnicas de engenharia, normalmente, de forma restrita ou errnea.

    Problema que tambm ocorre na Engenharia de Software, mas na Engenharia para a Web a incidncia ainda maior

    Os problemas ocorrem principalmente nas reas de Anlise, Requisitos, Testes, Validao e Manuteno, que so reas importantes que ainda no recebem a ateno necessria, pois a maior parte dos desenvolvedores concentram-se apenas na fase de Implementao

  • Concluso

    DAW4 107

    Os estudos mostram que o uso de tcnicas de engenharia eficaz e eficiente, portanto os esforos devem ser concentrados nesta adaptao das tcnicas utilizadas na Engenharia de Software, incluindo o desenvolvimento de mtricas e tcnicas para o gerenciamento de projeto.

    Paralelamente precisa haver um trabalho para conscientizar desenvolvedores da importncia do uso destas tcnicas, mostrando como as mesmas poderiam tornar seu trabalho mais eficiente, trazendo tambm melhores resultados

  • REFERNCIAS

    BIBLIOGRFICAS

    DAW4 108

    [BIE98] BIEBER, Michael. Web Engineering. New Jersey Institute of Technology, 1998.

    [GIN01] GINIGE, Athula e MURUGESAN, San. Web Engineering: An Introduction. IEEE Multimedia. Janeiro-Maro 2001.

    [GIN01b] GINIGE, Athula. Engineering A Better Website. University Of Western Sydney. Austrlia, Outubro de 2000.

    [GIN01c] GINIGE, Athula. Web Engineering in Action. University Of Western Sydney. Austrlia, Outubro de 2000

    [MCD01] MCDONALD, Andrew e WELLAND, Ray. The University, Glasgow G12 8QQ, Scotland. 2001.

    [MUR00] MURUGESAN, San. Web Engineering For Sucessful Web Application Development. University Of Western Sydney. Austrlia, Outubro de 2000.

    [NIE00] NIELSEN, Jakob. Designing Web Usability. New Riders Publishing, 2000.

    [PRE01] PRESSMAN, Roger S. Software Engineering: A Practioners Approach. McGraw-Hill. 5 edio. 2001.

Recommended

View more >