Vous êtes sur la page 1sur 131

Processos de apoio ao desenvolvimento

de aplicaes Web


Osnete Ribeiro de Souza










Processos de Apoio ao Desenvolvimento
de Aplicaes Web



Osnete Ribeiro de Souza


Orientadora: Profa. Dra. Rosely Sanches





Dissertao apresentada ao Instituto de Cincias
Matemticas e de Computao ICMC USP, como parte
dos requisitos para obteno do ttulo de Mestre em
Cincias de Computao e Matemtica Computacional.





USP So Carlos
Maro de 2005
SERVIO DE PS GRADUAO DO ICMC-USP

Data de Depsito: 14.03.2005

Assinatura: _____________________________________

Agradecimentos
A Deus, que orienta os meus passos.

minha orientadora, Profa. Dra. Rosely Sanches, pelo incentivo, pela confiana, pela
amizade e pela compreenso. Exemplo de profissional e de mulher.

Ao meu grande amor, Andr Figueiredo, por fazer parte da minha vida, complet-la e
aceitar a andar juntos, lado a lado, o mesmo caminho.

Aos meus pais, pelo exemplo de dedicao, amor, persistncia e que me ensinou a lutar
pelas conquistas e aprender com as derrotas.

Aos meus irmos, pelo companheirismo, amizade, amor e por compartilhar as alegrias e os
dissabores desta vida.

Aos meus sobrinhos, pelo amor, por alegrar os meus dias com seus sorrisos e me mostrar a
felicidade nas pequenas coisas.

Aos meus amigos, pelo carinho, pelo companheirismo, e por entender a falta de tempo
para as conversas.

equipe da Lcida, pela transparncia e colaborao na definio do trabalho.

Ao CNPq, pelo apoio financeiro.

Ao ICMC e aos professores, pelo conhecimento adquirido.

A todos aqueles que contriburam, direta e indiretamente, para a concretizao do meu
sonho.




Resumo


Num curto perodo de tempo, a Web tornou-se o aspecto central de muitas aplicaes em
diferentes reas. Rapidamente, cresceu e diversificou seu uso, e diversos setores de negcio
realizam suas operaes no ambiente da Web. Entretanto, medida que cresce a extenso de
uso de aplicaes Web, que se tornam mais complexas, aumenta a preocupao com a
maneira como as aplicaes so desenvolvidas. Freqentemente, a abordagem de
desenvolvimento ad hoc, desprovida de tcnicas sistemticas e de metodologias slidas,
resultando em aplicaes de baixa qualidade. A fim de alcanar aplicaes Web bem
sucedidas, h a necessidade de melhores princpios de desenvolvimento que devem considerar
as caractersticas especiais dessas aplicaes.

Dessa forma, o objetivo do trabalho propor Processos de Apoio ao desenvolvimento das
aplicaes Web, baseando-se nas caractersticas dessas aplicaes e nos Processos de Apoio
da ISO/IEC 12207. Os processos de Apoio visam auxiliar outros processos do ciclo de vida da
aplicao a alcanar produtos de qualidade e o sucesso do projeto.
















Abstract


Within a short period, the Web has become the central aspect of many applications in
different areas. Rapidly, it has grown and diversified in its scope and use. Diverse business
sectors improve their operations in Web environment. The Web application has become more
complex and it has increased the concern with the way the application is developed.
Frequently, the development is ad hoc, unprovide of systematic methods and methodologies,
resulting in poor quality applications. In order to have successful Web applications, it is
necessary better principles of development that have to consider the characteristics of these
applications.

The objective of this work is to propose Supporting Process for development Web
applications, based on the characteristics of these applications and the Supporting Process of
ISO/IEC 12207. The Supporting processes aim to assist other processes of the cycle of life of
the application to reach quality products and successful projects.

i
ndice Geral


CAPTULO 1: INTRODUO...........................................................................................1
1.1 CONTEXTO ....................................................................................................................1
1.2 OBJETIVO ......................................................................................................................4
1.3 ORGANIZAO DO TRABALHO .......................................................................................5
CAPTULO 2: APLICAES WEB..................................................................................6
2.1 CONSIDERAES INICIAIS ..............................................................................................6
2.2 DEFINIO ....................................................................................................................7
2.3 ENGENHARIA DE WEB..................................................................................................10
2.4 PERSPECTIVAS NO DESENVOLVIMENTO DE APLICAES WEB .......................................12
2.4.1 Processo de Desenvolvimento ..............................................................................12
2.4.2 A Equipe ..............................................................................................................18
2.4.3 Atributos de Qualidade ........................................................................................19
2.5 CONSIDERAES FINAIS...............................................................................................24
CAPTULO 3: ISO/IEC 12207 PROCESSOS DO CICLO DE VIDA DO SOFTWARE
.............................................................................................................................................25
3.1 CONSIDERAES INICIAIS ............................................................................................25
3.2 VISO GERAL ..............................................................................................................26
3.3 ISO/IEC 12207 - PROCESSOS DE APOIO........................................................................29
3.3.1 Documentao .....................................................................................................29
3.3.2 Gerenciamento de Configurao de Software.......................................................32
3.3.3 Garantia de Qualidade.........................................................................................36
3.3.4 Verificao ..........................................................................................................39
3.3.5 Validao.............................................................................................................41
3.3.6 Reviso Conjunta.................................................................................................43
3.3.7 Auditoria..............................................................................................................45
3.3.8 Resoluo de Problemas ......................................................................................46
3.4 CONSIDERAES FINAIS...............................................................................................47
CAPTULO 4: PROCESSOS DE APOIO AO DESENVOLVIMENTO DE
APLICAES WEB..........................................................................................................48
4.1 CONSIDERAES INICIAIS ............................................................................................48
4.2 PROCESSOS DE APOIO AO DESENVOLVIMENTO DE APLICAES WEB.............................49
4.2.1 As Atividades dos Processos.................................................................................51
4.2.2 Princpios bsicos dos Processos .........................................................................53
4.2.3 Papis..................................................................................................................54
4.2.4 Garantia de Qualidade.........................................................................................56
4.2.5 Documentao .....................................................................................................63
4.2.6 Verificao ..........................................................................................................68
4.2.7 Validao.............................................................................................................74
4.2.8 Garantia da Usabilidade......................................................................................80
4.2.9 Gerenciamento de Configurao..........................................................................85
4.2.10 Resoluo de Problemas ....................................................................................93
4.2.11 Acompanhamento de Projeto..............................................................................97
ii
4.1 CONSIDERAES FINAIS.............................................................................................101
CAPTULO 5: APLICABILIDADE DOS PROCESSOS DE APOIO...........................102
5.1 CONSIDERAES INICIAIS ..........................................................................................102
5.2 ESTUDO DE CASO.......................................................................................................103
5.2.1 A Empresa .........................................................................................................104
5.2.2 Metodologia da Empresa ...................................................................................104
5.2.3 Projeto...............................................................................................................106
5.2.4 Processos de Apoio............................................................................................109
5.2.5 Concluso do Estudo de Caso............................................................................110
5.3 CONSIDERAES FINAIS.............................................................................................111
CAPTULO 6: CONCLUSES E TRABALHOS FUTUROS.......................................113
6.1 CONCLUSES.............................................................................................................113
6.2 TRABALHOS FUTUROS................................................................................................115
REFERNCIAS BIBLIOGRFICAS ............................................................................116

iii
Lista de Quadros

Quadro 1: Categorias de Aplicaes Web. ..............................................................................8
Quadro 2: Configurao de Software: Classes de Informao...............................................34
Quadro 3:Template de tarefas das atividades ........................................................................52
Quadro 4: Tarefas de Planejamento de Qualidade.................................................................59
Quadro 5: Tarefas de Garantia de Produto ............................................................................61
Quadro 6: Tarefas de Garantia de Processo...........................................................................63
Quadro 7: Tarefas de Planejamento da Documentao..........................................................66
Quadro 8: Tarefas da Documentao ....................................................................................68
Quadro 9: Tarefas de Verificao .........................................................................................70
Quadro 10: Tarefas de Verificao .......................................................................................73
Quadro 11: Tarefas de Planejamento de Validao ...............................................................76
Quadro 12:Tarefas de Validao...........................................................................................79
Quadro 13: Tarefas de Planejamento de Usabilidade ............................................................82
Quadro 14: Tarefas de Garantia de Usabilidade ....................................................................84
Quadro 15: Tarefas de Planejamento de Configurao..........................................................88
Quadro 16: Tarefas de Identificao de Configurao...........................................................89
Quadro 17: Tarefas de Controle de Configurao .................................................................91
Quadro 18: Tarefas de Relato da Situao da Configurao..................................................93
Quadro 19: Tarefas de Planejamento de Resoluo de Problemas .........................................95
Qaudro 20: Tarefas de Resoluo de Problemas....................................................................97
Quadro 21: Tarefas de Planejamento de Acompanhamento de Projeto..................................99
Quadro 22: Tarefas de Acompanhamento de Projeto ..........................................................101











iv
Lista de Figuras



Figura 1: Atributos de Qualidade..........................................................................................20
Figura 2: Processo de Engenharia de Usabilidade definido na ISO 13407.............................22
Figura 3: Processos do Ciclo de Vida do Software................................................................28
Figura 4: Processos de Apoio ...............................................................................................50
Figura 5: Template de Processos...........................................................................................51
Figura 6 Template da Atividade: Artefatos de Entrada e Sada e Responsveis. ....................52
Figura 7 Atividades de Garantia de Qualidade ......................................................................57
Figura 8: Planejamento de Qualidade: artefatos e responsveis. ............................................57
Figura 9: Garantia do Produto: artefatos e responsveis. .......................................................60
Figura 10: Garantia do Processo: artefatos e responsveis.....................................................62
Figura 11: Atividades de Documentao...............................................................................64
Figura 12: Planejamento de Documentao: artefatos e responsveis....................................65
Figura 13: Produo da Documentao: artefatos e responsveis ..........................................67
Figura 14: Atividades de Verificao....................................................................................69
Figura 15: Planejamento de Verificao: artefatos e responsveis.........................................69
Figura 16: Verificao: artefatos e sadas..............................................................................72
Figura 17: Atividades de Validao......................................................................................75
Figura 18: Planejamento de Validao: artefatos e responsveis. ..........................................75
Figura 19: Validao: artefatos e responsveis......................................................................78
Figura 20: Atividades de Garantia de Usabilidade.................................................................80
Figura 21:Planejamento de Usabilidade: artefatos e responsveis .........................................81
Figura 22: Usabilidade: artefatos e responsveis...................................................................83
Figura 23: Atividades de Gerenciamento de Configurao....................................................86
Figura 24: Planejamento de Configurao: artefatos e responsveis......................................87
Figura 25: Identificao de Configurao: artefatos e responsveis. ......................................88
Figura 26: Controle de Configurao: artefatos e sadas........................................................90
Figura 27: Relato da Situao da Configurao: artefatos e responsveis ..............................92
Figura 28: Atividades de Resoluo de Problema .................................................................94
Figura 29: Planejamento da Resoluo de Problemas: artefatos e responsveis .....................94
Figura 30: Resoluo de Problemas: artefatos e responsveis................................................96
v
Figura 31: Atividades de Acompanhamento de Projeto.........................................................98
Figura 32: Planejamento de Acompanhamento de Projeto: artefatos e responsveis ..............98
Figura 33: Acompanhamento de Projeto: artefatos e responsveis ......................................100
Figura 34: Modelo de Dados da Funcionalidade Questionrio.............................................108
1

Captulo 1: Introduo
1.1 Contexto

Nos ltimos anos, a World Wide Web (Web) tornou-se presente em muitas situaes
da vida de milhares de pessoas em todo o mundo, ultrapassando todos os outros
desenvolvimentos tecnolgicos da histria [Ginige & Murugesan, 2001a]. Rapidamente,
cresceu e diversificou seu uso, afetando significativamente diversos aspectos da vida
cotidiana.

O extraordinrio crescimento da Internet e da Web teve um impacto significante nos
negcios, comrcio, indstria, banco, finanas, educao, governo, setores de entretenimento,
na vida pessoal e profissional. A Web tornou-se o aspecto central de muitas aplicaes em
diferentes reas. Hoje, diversos setores de negcio realizam suas operaes no ambiente da
Internet, muitos sistemas de informao legados e de banco de dados esto migrando para os
ambientes de Internet. Uma vasta abrangncia de novos e complexos sistemas comerciais e
corporativos est emergindo no ambiente de Web [Li et al, 2000].

Dois fatores principais contriburam para a expanso do uso da Web como base para a
soluo de diversas necessidades. O primeiro a percepo das vantagens alcanadas com a
Web como um meio de negcio. A Web permite novas possibilidades de criao de produtos,
de comunicao e de diminuio de custos. O segundo fator o surgimento de novas e
variadas tecnologias e ferramentas para o desenvolvimento e emprego das aplicaes
2
[Chaubey & Suresh, 2001], com destaque para as tecnologias de segurana que permitiram
aplicaes mais confiveis.

A Web como um paradigma da computao introduziu fundamentalmente novas
possibilidades para a criao, direo e diferenciao nos domnios de negcio [Chaubey &
Suresh, 2001]. Devido aos grandes benefcios da Web, em qualquer tempo em qualquer lugar
[Chung & Lee, 2002], atualmente, a Web extensivamente usada como principal meio de
comunicao com o mundo externo, assim como, dentro de uma organizao e tambm como
ferramenta para execuo dos processos de uma maneira mais efetiva. Web sites que
simplesmente exibiam informaes para os visitantes tornaram-se sistemas interativos e
altamente funcionais que permitem que muitos e variados tipos de usurios interajam com
muitos e diferentes tipos de aplicaes [Offutt, 2002].

Com isso, o desenvolvimento de aplicaes no contexto da Internet essencialmente
caracterizado pela necessidade da otimizao do tempo num ambiente onde a competio
depende de quo rpido se atende s necessidades do usurio e da integrao de todos
os aspectos de negcio [Gilder, 1998]. Isso significa evoluo contnua e rpida da aplicao
e resoluo imediata de problemas. Aplicaes Web so sistemas vivos [Ginige &
Murugesan, 2001a]. Suas funcionalidades e contedos mudam e crescem rapidamente durante
o ciclo de vida, muito mais do que normalmente se encontra nos sistemas tradicionais. Esses
dois fatores mudana contnua e imediatismo so caractersticas centrais dessas
aplicaes.

Alm disso, as aplicaes Web suportam um conjunto complexo de informaes e
funcionalidades, so implementadas em mltiplas linguagens e estilos, incorporam reuso de
diversos componentes, e realizam intensamente interao com usurios, outras aplicaes e
bases de dados e empregam uma equipe de desenvolvimento com habilidades das mais
variadas reas [Offutt, 2002].

Por essas razes, um grande nmero de livros, artigos e conferncias defendem que a
viso dos processos de desenvolvimento Web diferente dos sistemas tradicionais: requer
novos mtodos, novas ferramentas, novos papis e novas prticas de trabalho:

Desenvolvimento de sistemas Web significantemente diferente do desenvolvimento
de software tradicional e prope muitos desafios adicionais. Existem diferenas sutis na
3
natureza e no ciclo de vida de sistemas e softwares baseados na Web e na maneira pela qual
eles so desenvolvidos e mantidos. [Ginige & Murugesan, 2001a].

Por outro lado, apesar da Web ser uma nova tecnologia, as velhas virtudes e
mtodos da Engenharia de Software e desenvolvimento de sistemas continuam necessrios e
aplicveis [Holck, 2003]. A construo de uma aplicao Web um processo de muitos
passos que so interativos e que influenciam um ao outro. Dessa forma, para entregar
aplicaes Web com alta qualidade dentro do limite de tempo e custo, desenvolvedores
devem seguir um processo de desenvolvimento sistemtico, possivelmente apoiado por
ferramentas adequadas e metodologias slidas [Coda et al, 1998]. Os benefcios de um
processo de software bem definido so bem conhecidos [Ghezzi, 1997], assim como, sabe-se
que a qualidade dos produtos de software est fortemente relacionada qualidade do processo
de software [Fuggetta, 2000]. Dessa forma, abordagens importantes como a ISO/IEC 12207
[ISO/IEC 12207,1995] sugerem que melhorando o processo de desenvolvimento, pode-se
melhorar a qualidade dos produtos de software [Pfleeger, 1998].

A ISO/IEC 12207 consiste de um conjunto bem definido de processos, atividades e
tarefas que so aplicados para a aquisio, fornecimento, desenvolvimento e manuteno do
software e cobre todo o ciclo de vida de software. Os processos podem ser adaptados de
acordo com as caractersticas dos projetos de software e so agrupados nas seguintes
categorias: processos fundamentais, que iniciam e executam o desenvolvimento, operao e
manuteno dos produtos de software; processos organizacionais, que estabelecem e
implementam uma estrutura constituda dos processos de ciclo de vida e pelo pessoal
envolvido no desenvolvimento de software; processos de apoio, que tm como objetivo
auxiliar outros processos, visando principalmente a qualidade e o sucesso do projeto.

A ISO/IEC 12207 usada como referncia em muitos pases. Tem como objetivo
principal fornecer uma arquitetura consistente para que os profissionais envolvidos com a
produo de software utilizem uma linguagem comum, auxiliando-os a definir os seus papis
e assim proporcionar s organizaes um meio de alcanar produtos de software com melhor
produtividade e qualidade.

4
1.2 Objetivo

A qualidade das aplicaes Web um fator de grande preocupao, pois medida que
aumenta o uso e a diversificao das aplicaes Web, elas tornam-se mais complexas.
[Murugesan & Deshpande, 2002]. Com a evoluo, aumentou significativamente a
complexidade do projeto, desenvolvimento, manuteno e gerenciamento desses sistemas.

A fim de alcanar aplicaes Web bem sucedidas e com qualidade, uma estrutura
slida deve ser estabelecida para suportar o crescimento de uma aplicao Web de uma
maneira controlada, porm, flexvel e consistente. H uma crescente necessidade de bons
princpios de gerenciamento, utilizando-se de abordagens disciplinadas, mtodos e
ferramentas adequados, que considerem as caractersticas especiais dessas aplicaes, assim
como o meio, o ambiente e os cenrios operacionais [Pressman, 2002].

Na literatura, est crescendo a publicao de estudos sobre processos de
desenvolvimento de aplicaes Web, para atender as caractersticas especiais dessas
aplicaes. Porm, h ainda uma carncia de estudo sobre Processos de Apoio sendo esses
compostos, de acordo com a Norma ISO/IEC 12207, pelos processos de Documentao,
Gerenciamento de Configurao, Garantia de Qualidade, Verificao, Validao, Reviso
Conjunta, Resoluo de Problema e Auditoria, que visam auxiliar na produo dessas
aplicaes.

Dessa forma, o propsito principal deste trabalho propor Processos de Apoio ao
desenvolvimento das aplicaes Web, adaptados natureza dessas aplicaes e tomando
como base os aspectos observados na literatura sobre as caractersticas dessas aplicaes e
nos Processos de Apoio da Norma Internacional ISO/IEC 12207.





5
1.3 Organizao do Trabalho

A organizao deste documento apresenta-se conforme segue.

No Captulo 2 - Aplicaes de Web so descritas as caractersticas principais das
aplicaes Web. No captulo seguinte, Captulo 3 Norma ISO/IEC 12207 Processos de
Ciclo de Vida do Software, apresenta-se uma viso geral da Norma e uma descrio mais
detalhada dos Processos de Apoio que a compem.

O trabalho desenvolvido apresentado no captulo seguinte, Captulo 4 Processos
de Apoio ao desenvolvimento de aplicaes Web. E no Captulo 5 Aplicabilidade dos
Processos de Apoio apresentado um estudo de caso. Por fim, os captulos de Concluso e
Referncias Bibliogrficas encerram o documento.
6
Captulo 2: Aplicaes Web

2.1 Consideraes Iniciais
Originalmente, a Web foi concebida com o propsito de compartilhar informaes
cientficas entre poucos pesquisadores [Ginige & Murugesan, 2001a]. Atualmente, o seu uso
muito diferente. Pode-se comprar aes, passagens areas, suprimentos, fazer transaes
bancrias, reservas de hotel, pesquisa, conhecer pessoas e outras atividades.

As aplicaes Web tornaram-se complexas e o seu desenvolvimento abrange os
conhecimentos de diversas disciplinas [Ginige & Murugesan, 2001a, 2001b; Deshpande &
Hansen, 2001], sendo diferentes de muitas outras categorias de software.

Dessa forma, neste captulo so apresentadas as caractersticas principais das
aplicaes Web que justificam abordagens de desenvolvimento mais direcionadas para essas
aplicaes.




7
2.2 Definio

As aplicaes Web produzem uma complexa combinao de contedos e
funcionalidades para uma ampla populao de usurios [Pressman, 2002]. Segundo Powell
[1998] envolvem uma mistura entre publicao impressa e desenvolvimento de software,
entre marketing e computao, comunicaes internas e relaes externas, e entre arte e
tecnologia.

Aplicaes Web so compostas de pginas Web com as quaisos usurios interagem
atravs de browsers
1
. As pginas Web so ligadas com muitas outras pginas ou aplicaes
externas atravs de links. Uma pgina Web definida como a composio de objetos. Um
objeto pode ser um link, um boto de comando, uma mensagem, uma imagem, um arquivo,
udio ou uma aplicao. Dessa forma, uma aplicao Web definida em termos de pginas
Web que por sua vez so definidas recursivamente em termos de objetos.

De maneira geral, as aplicaes Web podem ser descritas como um hbrido de
hipermdia [Nielsen, 1995] e sistemas de informao. Como na hipermdia, a informao
acessada de uma maneira mais exploratria do que atravs de interfaces direcionadas, e a
maneira pela qual ela navegada e apresentada de grande importncia. Similar aos sistemas
de informao, o tamanho e a volatilidade dos dados e a distribuio das aplicaes requerem
solues arquiteturais consolidadas baseadas em tecnologias como as de gerenciamento de
banco de dados e de computao cliente-servidor [Fratenali, 1999].

Podem ser agrupadas em sete categorias [Ginige & Murugesan, 2001a], como
mostrado no Quadro 1, embora uma determinada aplicao possa pertencer a mais de uma
categoria.








1
Browsers so aplicaes usadas para navegao em hipertexto.
8



Quadro 1: Categorias de Aplicaes Web.
Categoria Exemplos
Informativo Jornais Online, catlogos de produto, manuais de
servios, classificados, livros eletrnicos
Interativo Formulrio de Registro, jogos online, apresentao
de informao customizada
Transacional Compras eletrnicas, servios de bancos
Workflow Sistemas de Planejamento, gerenciamento de
inventrio, monitoria de status
Ambientes de Trabalho
Corporativo
Sistemas de autorizao distribudos, ferramentas de
projeto colaborativo
Comunidades Online Chat, sistemas que recomendam produtos ou
servios
Portais Web A aplicao direciona o usurio para outro contedo
ou servio Web fora do domnio da aplicao do
portal


Determinadas caractersticas so geralmente citadas para descrever as aplicaes Web,
entre elas, as principais so: evoluo contnua, presso de tempo (urgncia de entrega,
imediatismo), impulsionadas pelo contedo, usurios remotos e diversificado.

Evoluo Contnua.
A caracterstica central do desenvolvimento Web sua natureza orgnica. As
aplicaes Web evoluem continuamente, mudam e crescem rapidamente em seus
requisitos, contedos e funcionalidades durante todo o seu ciclo de vida [Ginige &
Murugesan, 2001a]. Diferentemente das aplicaes convencionais que evoluem ao
longo de uma srie de verses planejadas e cronologicamente definidas e espaadas
[Pressman, 2003]. Portanto, o seu desenvolvimento uma atividade contnua, como
o cultivo de um jardim ele continua a evoluir e a crescer [Holck, 2003]. As
mudanas contnuas ocorrem devido a alta competio no mercado. As aplicaes
Web sofrem mudanas, principalmente, para atender as necessidades de negcio em
9
oferecer inovaes para os usurios. E tambm, ocorre devido a indefinio de se
estabelecer os requisitos por parte do cliente, que muitas vezes no conhece, no inicio
do projeto, as possibilidades que a Web oferece.


Presso de tempo
Uma outra pecularidade do desenvolvimento Web a grande presso de tempo,
tambm referenciada como desenvolvimento no Web time, Internet time ou time-
to-market [Holck,2003]. Aplicaes de Web tm um imediatismo que no
encontrado em nenhum outro tipo de software [Pressman, 2002]. A resoluo rpida
de problemas, a entrega imediata de novas funcionalidades ou de um Web site
completo so ditados pela presso do domnio do negcio. O sucesso de um projeto de
Web, entre outros fatores, depende de quo rpido se atende s necessidades do
usurio e do negcio.

Contedo
As aplicaes fornecem um complexo conjunto de contedo e funcionalidades para os
usurios. A apresentao de informaes e a interao da aplicao com o usurio so
feitas atravs de textos, grficos, udio, vdeo, ou seja, atravs da hipermdia e do
hipertexto. Como, geralmente, uma aplicao projetada para o mercado, para vender
produtos ou idias, a esttica muito importante e tem tanto a ver com sucesso da
aplicao quanto o projeto tcnico [Pressman, 2002]. Como os usurios possuem
inmeras alternativas de solues, eles no se satisfazem com interfaces meramente
funcionais. Ento, a criao de aplicaes Web esteticamente agradveis tornou-se
aspecto primordial do processo de desenvolvimento.


Usurios remotos e diversificados
Por sua natureza, uma aplicao Web uma estrutura que reside numa rede e serve s
necessidades de uma comunidade diversificada de usurios, que vo alm dos
confinamentos de departamentos, divises ou organizaes. Uma das conseqncias
que os desenvolvedores, em geral, no conhecem quem so os usurios, o que torna a
caracterizao mais difcil. O acesso universal por indivduos com habilidade
limitada ou nenhuma no uso de aplicaes de computador, o que introduz a
necessidade de novas interfaces homem-mquina capazes de capturar a ateno do
10
usurio e facilitar o acesso informao. Para projetar interfaces, a organizao deve
considerar usurios no conhecidos, atuais e futuros, e competir com interfaces que os
concorrentes criam. Os usurios no esto presos em uma aplicao Web como
poderiam estar numa aplicao tradicional ou num produto que tenham comprado. Na
menor dificuldade, o usurio tende mover-se para outra aplicao, e provavelmente
no mais retornar.

Devido a sua natureza, o desenvolvimento de uma aplicao Web lida com requisitos
diversificados, tais como a necessidade de manusear dados estruturados (ex. registros de
database) e no-estruturados (itens multimdia); suporte de acesso exploratrio atravs de
interfaces de navegao; nvel alto de qualidade grfica; customizao e possibilidade de
adaptao dinmica da estrutura de contedo, de navegao e de estilo de apresentao
[Fratenali, 1999]. Esses requisitos adicionam e tipicamente competem com questes tcnicas
e de gerenciamento como de toda aplicao de software e de uso intensivo de dados, como
por exemplo: segurana, escalabilidade, interoperabilidade com sistemas legados e dados e
facilidade de evoluo e manuteno.

Em virtude das particularidades do desenvolvimento de aplicaes Web, tem crescido
o interesse de diversos pesquisadores em consolidar uma disciplina especfica para estudar
essas aplicaes: a Engenharia de Web. No prximo tpico, a Engenharia de Web descrita,
assim como nos posteriores, so descritas as perspectivas do desenvolvimento dessas
aplicaes.


2.3 Engenharia de Web

Em 1997, os membros de um grupo de pesquisa da Universidade de Western Sydney,
Austrlia, chamado WebISM (Web-based Information Systems and Methodologies)
conduziram os esforos para identificar e desenvolver o campo da Engenharia de Web. O
primeiro workshop de Engenharia de Web aconteceu na conferncia World Wide Web em
Brisbane, Austrlia, em 1998. A partir de ento outros similares workshops aconteceram nesta
rea. E em 1998, a Engenharia de Web foi estabelecida como uma nova disciplina na
Universidade de Western Sydney. Desde ento, tem ganhado ateno da comunidade de
11
software e atrado profissionais de outras disciplinas relacionadas. O interesse por esta rea
tem crescido medida que os sistemas Web se tornaram elementos crticos para um grande
nmero de aplicaes e com o crescimento do uso da Web como ferramenta de negcio
[Ginige e Murugesan, 2001a; Ginige, 2002].

Os pesquisadores que primeiro propuseram a necessidade de uma abordagem de
Engenharia para o desenvolvimento de aplicaes Web definem a Engenharia de Web como
segue:

Engenharia de Web lida com o estabelecimento e uso de princpios cientficos,
da engenharia e de gerenciamento, de abordagens sistemticas e
disciplinadas para que sejam bem sucedidos o desenvolvimento, entrega e
manuteno de aplicaes de alta qualidade.

A Engenharia de Web lida com todos os aspectos do desenvolvimento de sistemas
Web, desde a concepo e seu desenvolvimento at a implementao, avaliao e sua
evoluo. Sua essncia gerenciar a diversidade e a complexidade do desenvolvimento das
aplicaes Web e, assim, evitar falhas no projeto que possam causar grandes implicaes
[Ginige & Murugesan, 2001b].

Engenharia de Web abrange diversos princpios da Engenharia de Software, mas no
uma cpia desta. Ela incorpora novas abordagens, metodologias, tcnicas e diretrizes para
adequar-se aos requisitos dos sistemas Web. O desenvolvimento de sistemas Web impe
desafios adicionais aqueles encontrados no desenvolvimento de softwares tradicionais. H
diferenas na natureza do ciclo de vida, na maneira pela qual so desenvolvidos e mantidos.

Entre as reas relacionadas com o desenvolvimento de aplicaes Web, esto includas
[Ginige et al, 1998]:

Especificao e anlise de requisitos;
Anlise e projeto de sistemas;
Metodologias e tcnicas para o desenvolvimento de sistemas;
Integrao com sistemas legados; migrao de sistemas legados para a Web
Desenvolvimento de aplicaes em tempo real;
Tcnicas e ferramentas de teste, verificao e validao;
12
Garantia, controle e avaliao da qualidade;
Gerenciamento de configurao;
Mtricas para a Web mtricas para estimao dos esforos de
desenvolvimento;
Especificao e avaliao de performance;
Atualizao e manuteno;
Questes de segurana, de privacidade, legal, social e outras questes no
tcnicas;
Personalizao da Web;
Equipes de desenvolvimento;
Gerenciamento de projeto Web;
Aspectos culturais e humanos;
Desenvolvimento centrado no usurio;
Educao e treinamento;


2.4 Perspectivas no Desenvolvimento de
Aplicaes Web

2.4.1 Processo de Desenvolvimento 2.4.1 Processo de Desenvolvimento 2.4.1 Processo de Desenvolvimento 2.4.1 Processo de Desenvolvimento

As aplicaes Web desenvolveram-se dentro de sistemas complexos e crticos, o que
significa que precisam ser tratados como tal [Li et al, 2000]. Algumas caractersticas das
aplicaes Web tornam seu desenvolvimento difcil e unicamente desafiante e incluem
sua interao em tempo real, complexidade, mudanas constantes e a necessidade de fornecer
informao personalizada [Ginige & Murugesan, 2001b]. A aplicao Web fornece acesso
estruturado a um grande nmero de informao, possivelmente sob diferentes vises e atravs
de diferentes contextos.

A melhor forma de gerenciar o projeto e o desenvolvimento de uma aplicao Web,
assim como de qualquer outro sistema, atravs de uma maneira sistemtica e repetvel.
Dessa forma, necessrio um processo que descreva as vrias fases, passos e atividades do
13
desenvolvimento da aplicao. Um processo slido ajuda os desenvolvedores a tratar a
complexidade da aplicao, minimizar os riscos do desenvolvimento, lidar com a
probabilidade de mudana, e a entrega das aplicaes no prazo, ao mesmo tempo fornece
avaliao prvia para o gerenciamento enquanto o projeto continua [Ginige & Murugesan,
2001b].

Os dois atributos chaves do sistema Web que distinguem seu desenvolvimento do
tradicional desenvolvimento de software so o crescimento de seus requisitos e a contnua
mudana no contedo da informao. Na maioria dos casos, no possvel especificar
totalmente no incio do desenvolvimento o que uma aplicao Web ir conter, porque sua
estrutura e funcionalidades evoluem com o tempo. Alm disso, a informao apresentada pela
aplicao tambm mudar. A habilidade de gerenciar a informao e de escalar a estrutura da
aplicao so dois grandes fatores que devem ser considerados quando se desenvolve uma
aplicao Web [Ginige, 2001b].

Sendo assim, o processo de desenvolvimento deve ser interativo e incremental para
atender a natureza evolutiva das aplicaes Web. O processo deve facilitar o contnuo
refinamento e evoluo das aplicaes baseado no feedback dos usurios e clientes [Ginige &
Murugesan, 2001b].

Contudo, segundo Pressman em [Pressman, 2002] a natureza imediatista das
aplicaes Web associada com a presso de evoluo contnua impe o estabelecimento de
um projeto de desenvolvimento com a capacidade de resolver de imediato o problema de
negcio, e ao mesmo tempo definir uma arquitetura que tenha a habilidade de evoluir
rapidamente. Porm, a maneira com que o problema resolvido imediatamente, pode afetar a
capacidade da aplicao de evoluir ao longo do tempo.

O projeto de uma aplicao Web demanda balano entre o contedo da informao,
esttica, performance e sistemas de computao, o que envolve o conhecimento de diversas
disciplinas e requer uma equipe com habilidades em diferentes reas.

Assim, necessrio um processo para a construo de aplicaes Web que [Ginige,
2002]:

14
Seja eficiente para capturar a mudana de requisitos e para o gerenciamento da
complexidade do processo de desenvolvimento.
Permita a integrao do conhecimento de vrias disciplinas.
Facilite a comunicao entre os vrios membros envolvidos no
desenvolvimento da aplicao a equipe de desenvolvimento, os usurios
finais, clientes e outros.
Suporte a evoluo contnua, a manuteno e o gerenciamento do contedo.


Apesar de no existir um consenso sobre um modelo geral de ciclo de vida de uma
aplicao Web o ponto em comum ser evolutivo e incremental algumas atividades
tpicas envolvidas na construo da aplicao so consideradas na maioria dos modelos:
anlise de requisitos, conceitualizao, prototipao, projeto, implementao e evoluo ou
manuteno.

Anlise de Requisitos

Durante a anlise de requisitos o desenvolvedor coleta as necessidades em termos de
contedo, estruturao, acesso e esttica. Requisitos de contedo definem a informao do
domnio especfico que deve estar disponvel atravs da aplicao. Requisitos de estruturao
especificam como o contedo deve ser organizado. Requisitos de acesso definem o estilo de
acesso da informao que deve ser providenciada, o que inclui prioridades na apresentao da
informao, indexao dos contedos, facilidades de pesquisas e suporte. Requisitos de
esttica definem as propriedades da aparncia em geral [Coda et al, 1998].

A misso da aplicao estabelecida pela identificao dos usurios, pela definio da
natureza da informao e objetivos. Em adio aos requisitos freqentes, as aplicaes Web,
projetadas para acesso universal, requererem ateno especial na identificao dos requisitos
de interao usurio-computador, para estabelecer o modo de interao mais apropriado para
cada categoria esperada de usurios, e para cada tipo de dispositivo de sada que se espera que
o usurio use para conectar-se com a aplicao (desde aparelhos pessoais de mo at telas de
alta definio] [Fratenali, 1999].

15
Um grande desafio no desenvolvimento das aplicaes Web a traduo das
perspectivas dinmicas dos requisitos dos usurios em um projeto lgico de um sistema
funcional, especialmente na situao onde o projeto e a implementao da soluo so
baseados numa idia central a qual seus requisitos mudam rapidamente [Chaubey & Suresh,
2001]. A dificuldade cresce da necessidade de integrar novos servios s funcionalidades
bsicas a cada nova interao do desenvolvimento da soluo.

Conceitualizao

A aplicao representada atravs de um conjunto de modelos abstratos que
conduzem aos componentes principais da soluo. No contexto da Web, o foco da
conceitualizao est na captura de objetos e relacionamentos de como iro aparecer para o
usurio, mais do que como sero representados dentro do sistema. O esquema resultante da
conceitualizao da aplicao Web difere-se de uma aplicao de banco de dados. A diferena
est na interpretao dos relacionamentos, na qual a modelagem do banco de dados representa
associaes semnticas que so constantemente gravadas enquanto que na modelagem Web
uma possibilidade de navegao est implcita [Fratenali, 1999].

Prototipao

Verses simplificadas das aplicaes so entregues para os clientes para uma
avaliao prvia. A importncia da prototipao particularmente enfatizada no contexto da
Web. Tipicamente, prottipos so construdos numa arquitetura simplificada. Um conjunto de
pginas so implementadas manualmente contendo amostras do contedo da aplicao e da
esttica, simula o desejo da aparncia e comportamento.

Projeto

Baseado nos requisitos, a fase de projeto define a estrutura de um Web site,
descrevendo como a informao pode ser organizada e como os usurios podem navegar
atravs dela. As atividades de projeto devem destacar as constituies fundamentais de um
site, abstraindo-se dos detalhes de implementao de baixo nvel, e permitir ao projetista
identificar estruturas recorrentes e padres de navegao para serem reusados. Um bom
projeto sobrevive s mudanas freqentes na implementao.
16

A aplicao Web caracterizada por trs grandes projetos:

Arquitetural ou estrutural. Descreve a organizao da informao gerenciada
pela aplicao, em termos de partes de contedo que constituem a base de
informao e do relacionamento semntico. A estrutura arquitetural ligada s
metas estabelecidas para a aplicao, ao contedo a ser apresentado, aos
usurios e navegao que for estabelecida [Pressman, 2003].

Navegacional. O projetista deve definir caminhos de navegao que permitam
ao usurio ter acesso ao contedo e aos servios da aplicao. Nesta etapa,
preocupa-se com as facilidades para acessar a informao e para se mover
atravs do contedo da aplicao. Para tanto, o projetista precisa identificar a
semntica de navegao para diferentes usurios e definir a mecnica para
realizar a navegao. Para cada objetivo associado s caractersticas do usurio
criado o melhor modo ou caminho de navegao [Pressman, 2003].

Apresentao. Afeta a maneira pela qual o contedo da aplicao e os
comandos de navegao so apresentados para o usurio. [Fratenali, 1999].
Uma interface bem projetada melhora a percepo do usurio em relao aos
servios fornecidos pela aplicao.


Implementao

A fase de implementao cria a aplicao a partir do projeto. Os elementos e
relacionamentos destacados durante o projeto so mapeados na construo com a tecnologia
de implementao escolhida. Entidades, componentes, links e estruturas de acesso so
associados com outros elementos fornecidos pela tecnologia hipermdia. O site povoado,
ou seja, a informao corrente inserida pela instanciao das estruturas definidas. O banco
de dados preenchido com o novo contedo preparado por especialistas no assunto e/ou com
os dados armazenados nos sistemas legados; as pginas so construdas pela combinao do
contedo do banco de dados e comandos navegacionais dentro de um estilo de apresentao.
O mapeamento do projeto para a implementao requer a escolha de uma linguagem de rede
17
na qual a aplicao entregue. Por ltimo o sistema entregue. O site implementado deve ser
acessvel usando padres de Internet que interagem com servidores.


Evoluo e manuteno

Depois de entregue, mudanas nos requisitos ou o conserto de erros podem requerer a
reviso da estrutura, navegao, apresentao ou contedo. As mudanas so aplicadas no
nvel mais alto possvel no ciclo de desenvolvimento e propagadas at o nvel de
implementao [Fratenali, 1999].

Ginige em [Ginige&Murugesan, 2001b], baseado em pesquisas e na experincia na
construo de aplicaes Web, recomenda dez passos chaves para o sucesso no
desenvolvimento dessas aplicaes:

1. Entender todas as funes do sistema e o ambiente operacional, inclusive os
requisitos e objetivos do negcio.
2. Claramente identificar os principais usurios do sistema, a organizao que
precisa do sistema e os que financiam o desenvolvimento do sistema.
3. Especificar os requisitos tcnicos e no tcnicos.
4. Desenvolver a arquitetura do sistema Web que atenda os requisitos tcnicos e
no tcnicos.
5. Identificar subprocessos ou subprojetos para implementar a arquitetura. Se os
subprocessos so muito complexos para gerenciar, dividi-los novamente at
que se tornem um conjunto de tarefas gerenciveis.
6. Desenvolver e implementar subprojetos.
7. Incorporar mecanismos para gerenciar a evoluo e mudana/manuteno do
sistema. Enquanto o sistema desenvolvido, todo o processo ou parte dele
pode ser repetido quando requisitado.
8. Tratar questes no tcnicas tais como processos de negcio; polticas
organizacionais e de gerenciamento, recursos humanos; aspectos legal, social e
cultural.
9. Medir a performance do sistema.
10. Refinar e atualizar o sistema.
18


2.4.2 A Equipe 2.4.2 A Equipe 2.4.2 A Equipe 2.4.2 A Equipe


A organizao das equipes das aplicaes Web tem semelhanas com a das equipes de
sistemas tradicionais, sendo que alguns papis so os mesmos, como programadores,
arquitetos de software, analista de sistema, gerente de projeto, analista de requisitos e outros.
Porm, os profissionais devem ter habilidades que convergem o conhecimento tcnico e no
tcnico [Pressman, 2002].

Para o desenvolvimento de aplicaes Web so necessrios conhecimentos e
habilidades de diferentes disciplinas, requer uma equipe de diversas pessoas com
especialidades em diferentes reas [Ginige & Murugesan, 2001b]. Precisa-se de projetistas
grficos para desenvolver a aparncia; de pessoas para organizar a informao, desenvolver a
navegao e os mecanismos de buscas; projetistas de banco de dados para desenvolver a
maneira pela qual a informao armazenada e acessada; programadores; especialistas em
segurana de rede; especialistas para decidir qual a melhor arquitetura de hardware; e pessoas
com o conhecimento para planejar o projeto de desenvolvimento e gerenci-lo [Ginige, 2002].

Segundo Pressman em [Pressman, 2002], os seguintes papis podem ser distribudos
entre os membros da equipe de desenvolvimento de aplicaes Web:

Provedor de contedo. Seu papel voltado para a gerao ou coleta de
contedo. Estes profissionais so oriundos de diversas reas. Por exemplo,
redatores podem fornecer texto, produtores de mdia podem fornecer vdeo e
udio e o pessoal de venda e de marketing podem fornecer informaes sobre o
produto.

Editor de Web. Seu papel organizar a incluso do contedo e age como
ligao entre a equipe tcnica que constri as aplicaes e os desenvolvedores
e provedores de contedo no-tcnico.


Engenheiro de Web. Envolve-se em diversas atividades: modelagem e anlise
de dados, projeto arquitetural, navegacional e de interface; implementao e
19
teste. Ele deve ter conhecimentos em tecnologias de componentes, arquiteturas
cliente/servidor, linguagens de marcao (html e XML) base de dados,
multimdia e segurana de rede.

Especialista de suporte. Pessoa responsvel em dar continuidade ao suporte da
aplicao. responsvel por correes, adaptaes e aperfeioamentos do site,
o que inclui modificaes de contedo, de navegao, e implementao de
novos procedimentos.

Administrador (Web Master). responsvel pela operao do dia-a-dia da
aplicao: medio do trfego na aplicao; coordenao de procedimentos
para modificaes; coordenao dos especialistas de suporte; implementao
de procedimentos de segurana e direitos de acesso e desenvolvimento de
polticas de operao da aplicao.

O papel de Engenheiro de Web pode ser dividido em outros papis mais especficos,
como: arquiteto de informao, que responsvel pela organizao das informaes nas
pginas, Web designer, que responsvel pelo desenho esttico, programador html que
implementa as pginas e engenheiros de segurana de informao, que definem mtodos para
garantir a segurana de acesso e distribuio das informaes.

Uma equipe to multidisciplinar constitui um novo desafio para diversas atividades do
gerenciamento do desenvolvimento das aplicaes: o gerenciamento do projeto deve abranger
no s atividades tcnicas, mas as no-tcnicas tambm; a comunicao mais complicada e
o gerente deve garantir o bom entendimento; os documentos gerados devem englobar as
diferentes linguagens utilizadas pelos diferentes perfis de profissionais em um padro que
garanta o bom entendimento de todos.


2.4.3 Atributos de Qualidade 2.4.3 Atributos de Qualidade 2.4.3 Atributos de Qualidade 2.4.3 Atributos de Qualidade

A Web um ambiente complexo e, conseqentemente, a avaliao de produtos de
software uma tarefa difcil dado o conjunto de caractersticas e particularidades envolvidas
[Rocha et al, 2001]. Exige um processo de garantia de qualidade que considere diferentes
20
aspectos que abrangem desde a qualidade da interface no que se refere ao uso de recursos
grficos e cores at a necessidade de garantir a correo do contedo disponibilizado e a
segurana de informaes e de acesso.

Em geral, todos os atributos de qualidade de software se aplicam aos sistemas
baseados na Web. No entanto, h os mais relevantes que fornecem uma base til para avaliar
a qualidade. Em [Pressman, 2002] apresentado uma rvore de requisitos de qualidade, ver
Figura 1, que identifica um conjunto de atributos que levam alta qualidade de aplicaes
Web considerando as seis caractersticas da ISO/IEC 9126 [ISO/IEC 9126,1991] .




























Figura 1: Atributos de Qualidade

Usabilidade

Funcionalidade

Confiabilidade

Compreensibilidade global do site
Caractersticas de realimentao e ajuda on-line
Caracterstica de interface e esttica
Caractersticas especiais
Capacidade de busca e recuperao
Caractersticas de navegao e busca
Caractersticas relacionadas ao domnio de
aplicao
Processamento correto de links
Recuperao de erros
Validao e recuperao de entrada do usurio
Eficincia

Desempenho em tempo de resposta
Velocidade de gerao de pgina
Velocidade de gerao de grficos
Mantenabilidade

Facilidade de correo
Adaptabilidade
Estensabilidade
21
Vrios outros trabalhos tm sido apresentados na literatura sobre o que e como avaliar
as aplicaes Web [Bevan,1997; Borges,1996; Olsina,1999; Lowe,1999; Lima et al,2000].
Um outro conjunto de atributos pode ser visto em Lima et al [2000], que abrange aspectos
referentes ao uso da tecnologia e ao contedo disponibilizado.

Lynch et al [1999] descreve as caractersticas desejveis para sites Web, considerando
que os usurios de documentos da Web no buscam apenas informao, mas interagem com
esses documentos de uma nova forma. O autor recomenda que o projeto seja centrado nos
usurios em potencial, buscando atender s suas expectativas. Para isso a aplicao deve ter as
seguintes caractersticas:

Apoio navegao, fornecendo confiana de que o usurio pode encontrar o
que est procurando sem perda de tempo;
Acesso direto para que o usurio encontre as informaes rapidamente;
Eficincia de tempo de resposta;
Simplicidade e consistncia nas metforas;
Organizao lgica do site;
Mtodos consistentes para disponibilizar informaes que permitam ao usurio
passar, com facilidade, de pginas familiares a pginas no familiares;
Funcionalidade adequada, com hierarquia de menus e pginas que seja natural
ao usurio.

Entre outros fatores, a escalabilidade e mantenabilidade so determinantes no sucesso
na implementao e manuteno dos sistemas Web. J que, como foi dito, o contedo da
informao e as funes tendem a serem aprimorados/evoludos durante o ciclo de vida.
Esses atributos dificilmente podem ser adicionados mais tarde [Ginige, 2002].

Um fator importantssimo a usabilidade. A usabilidade ou a experincia do usurio
so determinantes crticos para o sucesso de aplicaes Web. Interfaces mal projetadas
aumentam a chance de erros por parte do usurio. Jakob Nielsen [Constantine & Lockwood,
2002], especialista em usabilidade de Web, estima que bilhes de dlares sejam perdidos em
vendas pela Web por problemas de usabilidade.

Custos de suporte ao usurio e tcnicos em todas as reas de negcio esto cada vez
mais altos. Problemas com usabilidade no site ou numa aplicao desencadeiam uma chamada
22
telefnica ou mensagem via e-mail para o atendimento ao cliente, uma sesso de Web
barata torna-se uma ocorrncia de atendimento cara. Em intranets, aplicaes difceis de
usar requerem extensivo treinamento ou tornam-se completamente sem uso [Constantine &
Lockwood, 2002].

Usabilidade uma das mais importantes caractersticas de qualidade de produtos e
sistemas de software. Um sistema com alta qualidade de usabilidade fcil de aprender,
eficiente para o uso, no tende a erros e satisfatrio ao uso [Nielsen,1995]. Usabilidade traz
muitos benefcios, que incluem aumento de produtividade, melhoria de qualidade no trabalho,
melhoria da satisfao do usurio, reduo de suporte e custo de treinamento, e melhoria da
satisfao do usurio [ISO/IEC 13407, 1999]. O paradigma que prevalece para o
desenvolvimento de produtos e sistemas com interao com o usurio a Engenharia de
Usabilidade, tambm chamado projeto user-centered (centralizado no usurio, em portugus)
ou human-centered (centralizado no homem) [Jokela, 2002].

Um tpico conjunto de atividades de usabilidade definido na ISO13407 [ISO/IEC
13407, 1999]. O padro identifica quatro atividades ilustradas na Figura 2.




























Figura 2: Processo de Engenharia de Usabilidade definido na ISO 13407

entender e
especificar o
contexto do uso
especificar os
requisitos do usurio
e da organizao
produzir projeto
avaliar o projeto em
relao aos
requisitos
Identificar necessidades do
projeto de usabilidade
23

O valor da usabilidade amplamente conhecido, diversos pesquisadores tm descrito
seu valor em benefcio do usurio, desenvolvedor e da organizao como um
todo[Schneiderman, 1998; Constantine & Lockwood,1999]. Apesar de frequentemente
considerarem a aparncia de uma interface grfica como a essncia da usabilidade, a
usabilidade engloba muito mais, principalmente em relao s aplicaes Web. Juristo et al
[2001] explica que usabilidade de um sistema no apenas lida com a interface do usurio, est
tambm relacionado com toda a estrutura do software e com o conceito na qual todo o sistema
baseado. O que necessrio garantir que a usabilidade faa parte do processo de
desenvolvimento da aplicao [ Becker & Berkermeyer,2002].

Os desenvolvedores devem alinhar os objetivos de usabilidade como o
desenvolvimento Web e como os objetivos do usurio, assim, importante definir o perfil de
usurio para entender a usabilidade da sua perspectiva. O usurio pode ter o perfil definido
em termos de idade, sexo, localizao geogrfica, cultura, religio, nvel de renda, grau de
instruo e habilidades cognitivas, visuais e fsicas [ Becker & Berkermeyer, 2002]. Cada
uma dessas caractersticas tem uma influncia nas percepes do usurio da aplicao Web. O
ambiente do usurio tambm afeta a percepo de usabilidade. Tipo de browser, tamanho do
monitor, velocidade de acesso a rede so exemplos de tecnologias que impactam a
experincia do usurio [Neurkar, 2001].

A usabilidade , significantemente, associada a cinco elementos bsicos de um projeto
Web: navegao, tempo de resposta, contedo, interatividade e compreenso
(responsiveness). Uma boa estrutura navegacional apia o usurio em adquirir a informao
que est procurando eficiente e rapidamente. Os usurios demandam que as pginas de uma
aplicao carreguem rapidamente. Eles comeam a perder a pacincia dentro de poucos
segundos. Quanto mais tempo usurios gastam dentro de uma aplicao, menos tolerncia
eles tm.

Os aspectos do projeto esttico tambm figuram na experincia do usurio. Agora que
os usurios de aplicaes Web possuem alternativas, eles no se satisfazem com interfaces
meramente funcionais. As consideraes de projeto grfico e da esttica so estabelecidas a
priori e dirigem o processo de desenvolvimento [Constantine & Lockwood, 2002].


24
2.5 Consideraes Finais

As aplicaes Web so definidas por um conjunto de caractersticas que as tornam
diferentes das aplicaes tradicionais da tecnologia da informao. Por isso, neste captulo
fez-se necessrio a apresentao de tais caractersticas, para que o trabalho fosse embasado
em aspectos notrios ao desenvolvimento dessas aplicaes.

Em virtude das particularidades das aplicaes Web, novas metodologias direcionadas
para o desenvolvimento so necessrias, porm, mtodos consagrados na Engenharia de
Software continuam aplicveis.

Sendo assim, no prximo captulo a norma ISO/IEC 12207 apresentada, j que essa
a base principal dos Processos de Apoio ao desenvolvimento Web propostos neste trabalho.
25
Captulo 3: ISO/IEC 12207
Processos do Ciclo de Vida do
Software
3.1 Consideraes Iniciais

Para o desenvolvimento e manuteno de software existe uma proliferao de padres,
procedimentos, mtodos, ferramentas e ambientes. que tem criado dificuldades na engenharia
e manuteno do software, especialmente na integrao de produtos e servios. A disciplina
de software precisa migrar de uma proliferao para uma arquitetura comum que possa ser
usada pelos profissionais de software para criar e gerenciar o software atravs de uma
linguagem comum [IEEE/EIA 12207, 1996]. A Norma Internacional 12207 fornece tal
arquitetura.

A ISO/IEC 12207 a primeira norma internacional que descreve em detalhes
processos, atividades e tarefas que so aplicados para a aquisio, fornecimento,
desenvolvimento e manuteno do software. Publicada em Agosto de 1995, ela serve como
referncia para outros padres, sendo citada em diversos trabalhos relacionados com
Engenharia de Software.

A Norma cobre todo o ciclo de vida de software e consiste de um conjunto de
processos, atividades e tarefas bem definidas.
26

Neste Captulo, alm de uma viso geral da Norma, sero apresentados em maiores
detalhes os Processos de Apoio, uma vez que tal assunto o foco do trabalho a ser proposto.

Este captulo fortemente baseado em [ISO/IEC 12207, 1995].

3.2 Viso Geral

A ISO/IEC 12207 estabelece uma arquitetura de alto nvel para os processos de ciclo
de vida do software, com terminologia bem definida, que serve como referncia indstria de
software. O ciclo de vida comea com uma idia ou necessidade que pode ser satisfeita total
ou parcialmente por um software e termina com a descontinuidade do mesmo. Contem
processos, atividades, e tarefas que so aplicados durante a aquisio, fornecimento,
desenvolvimento, operao, e manuteno dos produtos de software [ISO/IEC 12207, 1995].

Por meio de processos bem definidos, a Norma 12207 auxilia os envolvidos na
produo de software a definir seus papis e, conseqentemente, proporciona s organizaes
que a utilizam, um melhor entendimento das atividades que envolvem, de alguma forma o
software. [Rocha et al, 2001].

A estrutura da norma foi concebida de maneira a ser flexvel, modular e adaptvel s
necessidades de quem a utiliza. O modelo construdo com um conjunto de processos chaves
e o inter-relacionamento entre eles e baseado em dois princpios bsicos: modularidade e
responsabilidade [IEEE/EIA 12207,1996]:

Modularidade. Os processos so modulares, isto , eles tm alta coeso e
baixo acoplamento. Os processos so fortemente relacionados com um mnimo de
interfaces. Um processo individual dedicado a uma nica funo. Se uma funo
invocada por mais de um processo, ento a funo torna-se um processo. Cada
processo possui uma estrutura interna refinada o suficiente para ser executada.

Responsabilidade. Um processo de responsabilidade de uma organizao ou
parte dela durante o ciclo de vida do software, apesar da execuo de tarefas
27
individuais poderem ser realizadas por pessoas diferentes. A responsabilidade
determinada na norma facilita a adaptao e aplicao em projetos de diferentes tipos,
produtos e tamanho.

Os processos, aplicveis atravs do ciclo de vida do produto, podem ser interpretados,
implementados e usados de modos diferentes por diferentes organizaes e partes
organizacionais, todos com diferentes vises, necessidades, percepes e objetivos. A Norma
define as vises das seguintes funes:

a. contratao: o adquirente e o fornecedor negociam e estabelecem um contrato.
b. gerenciamento: o adquirente, fornecedor, desenvolvedor, operador, mantenedor e
outras partes gerenciam seus processos particulares.
c. operao: fornece servios para os usurios.
d. engenharia:o desenvolvedor e mantenedor conduz suas tarefas para produzir um
produto.
e. suporte: fornecem suporte a outras partes na execuo de suas tarefas especficas.
f. gerenciamento de qualidade: um subconjunto de suporte empregado para
gerenciar questes relacionadas com qualidade atravs de todo o ciclo de vida.

A ISO/IEC 12207 modelada numa hierarquia com processos de alto nvel. Cada
processo projetado em termos de suas prprias atividades, que por sua vez, so projetadas
em termos de suas tarefas. Os processos so agrupados nas seguintes classes que representam
sua natureza:

1) Processos Fundamentais: iniciam e executam o desenvolvimento, operao e
manuteno dos produtos de software;
2) Processos de Apoio: tm como objetivo auxiliar outros processos, visando
principalmente a qualidade e o sucesso do projeto;
3) Processos Organizacionais: estabelecem e implementam uma estrutura constituda
dos processos de ciclo de vida e pelo pessoal envolvido no desenvolvimento de
software.
4) Processos de Adaptao: definem as atividades necessrias para adaptar a norma
para a sua aplicao na organizao ou em projetos.


28

Os processos de cada classe so mostrados na Figura 3.


Figura 3: Processos do Ciclo de Vida do Software




Como o objetivo deste trabalho envolve, principalmente, os Processos de Apoio da
Norma, a seguir eles so descritos mais detalhadamente.







29
3.3 ISO/IEC 12207 - Processos de Apoio


Um processo de apoio d suporte a outro processo como parte integral deste, mas
com um propsito distinto. A classe dos Processos de Apoio consiste de oito processos:

1) Documentao;
2) Gerenciamento de Configurao de Software;
3) Garantia de Qualidade de Software;
4) Verificao;
5) Validao;
6) Reviso Conjunta;
7) Auditoria;
8) Resoluo de Problemas.

Nas prximas sees, esses processos so detalhados.


3.3.1 Documentao 3.3.1 Documentao 3.3.1 Documentao 3.3.1 Documentao

De acordo com a Norma ISO/IEC 12207, o processo de Documentao tem o objetivo
de registrar as informaes produzidas pelos processos ou atividades durante ciclo de vida do
software. O conjunto de atividades do processo planeja, projeta, desenvolve, produz, edita,
distribui e mantm os documentos necessrios todos os interessados, tais como, gerentes,
engenheiros, e usurios do sistema ou do produto de software.

A documentao de software fundamental no processo de desenvolvimento de
software. Cabe a documentao registrar a evoluo do software para criar as condies
necessrias para que a utilizao, avaliao e manuteno do software sejam realizadas sem
transtornos [Rocha et al, 2001].

Uma documentao bem elaborada alm de proporcionar grandes benefcios para as
atividades de avaliao e modificao de software, reduz tempo e esforo despendidos no
desenvolvimento do software; facilita o manuseio do software por parte dos usurios; facilita
30
a localizao das informaes e garante uma melhor compreenso das estruturas do software
[Phoha, 1997].

O processo de Documentao consiste de quatro classes principais de atividades:

1) Implementao do Processo;
2) Projeto e Desenvolvimento;
3) Produo;
4) Manuteno.


Implementao de Processo

A atividade de Implementao do Processo consiste nas tarefas de desenvolver,
documentar e implementar um plano que identifique os documentos a serem produzidos
durante o ciclo de vida do produto de software. Neste plano, alm do tipo de documento a ser
desenvolvido, so estabelecidos: a tecnologia a ser usada, a seqncia de operaes para a
produo e a distribuio dos mesmos, a definio da linguagem do documento e a linguagem
que ser usada na indexao e referncia do documento.

Para cada documento identificado, devem constar:

seu ttulo ou nome;
propsito a que se destina;
a audincia pretendida;
procedimentos e responsabilidades para entradas, desenvolvimento, reviso,
modificao, aprovao, produo, armazenamento, distribuio, manuteno
e gerenciamento de configurao;
cronograma para verses intermedirias e finais.




31
Projeto e Desenvolvimento

Os diversos aspectos exigidos para a produo do documento so descritos, o que
envolve desde a estrutura interna at as caractersticas de sua apresentao para o usurio
final.

Nesta atividade, as seguintes tarefas devem ser consideradas:

Cada documento identificado deve ser projetado de acordo com os padres de
documentao definidos para o formato, descrio de contedo, numerao de
pgina, colocao de figura/tabela, marca de propriedade/segurana e outros itens
de apresentao.
Devem ser confirmadas a fonte e a adequao dos dados de entrada para os
documentos.
O contedo tcnico e o estilo da apresentao dos documentos preparados devem
ser revisados e editados de acordo com os padres de documentao. Os
documentos devem ser aprovados pelo pessoal autorizado que verifica se eles
esto adequados ao especificado.


Produo

O objetivo desta atividade produzir os documentos de acordo com o plano de
documentao. As informaes produzidas durante as atividades do ciclo de vida so
registradas nos documentos que servem como ponto de partida para as demais atividades do
projeto.

Os documentos principais devem ser armazenados de acordo com os requisitos de
reteno, segurana, manuteno e backup. E os controles devem ser estabelecidos de acordo
com o Processo de Gerenciamento de Configurao.




32
Manuteno

Nesta atividade so desenvolvidas as tarefas relacionadas s alteraes controladas dos
documentos, destruio dos documentos considerados obsoletos e ao armazenamento dos
documentos.

As alteraes dos documentos que esto sob o controle de configurao devem ser
gerenciadas de acordo com o processo de Gerenciamento de Configurao de Software.






3.3.2 Gerenciamento de Configurao de Software 3.3.2 Gerenciamento de Configurao de Software 3.3.2 Gerenciamento de Configurao de Software 3.3.2 Gerenciamento de Configurao de Software


Durante o desenvolvimento de software, diversos itens de informao so produzidos.
E estes itens podem sofrer alteraes ao longo do ciclo de vida do software. Para que no
existam inconsistncias nos itens considerados importantes para o projeto, necessrio que as
alteraes sejam controladas. O processo de Gerenciamento de Configurao de Software
administra as alteraes ocorridas.

O processo de Gerenciamento de Configurao de Software visa: identificar e definir
os itens considerados relevantes ao projeto; controlar as modificaes dos itens; registrar e
reportar a situao dos itens e das requisies das alteraes; garantir a integridade e
consistncia dos itens; e controlar o armazenamento, manipulao, liberao e entrega dos
itens [ISO/IEC 12207,1995].

Um conceito importante o de item de configurao. Um item de configurao de
software pode ser um produto de software informaes designadas para serem entregues a
um cliente ou usurio, tais como programas de computador, procedimentos, documentao e
etc ou um produto do desenvolvimento de software informaes que podem ou no ter a
finalidade de ser entregue a um cliente ou usurio final, como descrio de processos, planos,
procedimentos e etc que so escolhidos para fazerem parte da configurao de software, ou
seja, a qual ser realizado o controle de suas alteraes.

33
Um outro conceito fundamental: linhas de referncias (baselines). As linhas de
referncia estabelecem pontos bem definidos dentro do processo de desenvolvimento onde os
itens de configurao devem ser identificados, analisados, corrigidos, aprovados e
armazenados num repositrio de itens de configurao.

Um repositrio de itens de configurao um banco de dados sob controle de acesso
onde so armazenados os itens de configurao depois de liberados por uma linha de
referncia.. O mtodo utilizado para trabalhar com itens de configurao que j esto no
repositrio chamado de check-in/check-out [Bersoff, 1979; Harter, 1989], ou seja,
conferncia na entrada e na sada.

No processo de Gerenciamento de Configurao, as seguintes principais atividades
devem ser realizadas:

1) Implementao do Processo;
2) Identificao da Configurao;
3) Controle da Configurao;
4) Relatar a Situao da Configurao;
5) Avaliao da Configurao;
6) Gerenciamento de Liberao e Entrega.

Implementao do Processo

Um plano para o Gerenciamento de Configurao dever ser desenvolvido,
documentado e implementado. Este plano dever descrever as atividades relacionadas
implantao e administrao do processo. Tambm devem ser descritos os procedimentos,
prazos, recursos necessrios e a organizao responsvel para executar essas atividades.

Existem vrios padres internacionais de planos de gerncia de configurao.
Recomenda-se que estes planos sejam estudados e que seja escolhido como base naquele que
tenha maior compatibilidade com o projeto para o qual o plano esteja sendo elaborado
[Buckley, 1993]. Um exemplo pode ser encontrado no Padro 828 da IEEE [IEEE Std
828,1998] que sugere que o plano seja dividido em seis classes de informao, como
mostrado no Quadro 3.1.
34



Quadro 2: Configurao de Software: Classes de Informao
Classe de Informao Descrio
Introduo Descreve o propsito do plano, escopo da aplicao,
termos chaves e referncias.
GCS Gerenciamento (Quem?) Identifica as responsabilidades e autoridades
para realizar as atividades planejadas.
GCS Atividades (O que?) Identifica todas as atividades para serem
executadas na aplicao do projeto.
GSC Prazos (Quando?) Identifica a coordenao necessria das
atividades do GCS com as outras atividades no projeto.
GSC Recursos (Como?) Identifica ferramentas e recursos fsicos e
humanos para a execuo do plano.
GSC Manuteno do Plano Identifica como o plano ser mantido atualizado.


Identificao da Configurao

Durante esta atividade, um esquema estabelecido para a identificao dos itens e as
suas verses a serem controlados. estabelecida a maneira como os itens so selecionados e a
maneira como sero arquivados e recuperados do repositrio.

Geralmente, esto sob o gerenciamento de configurao os itens mais utilizados no
ciclo de vida, os mais genricos, mais importantes para a segurana, os projetados para reuso
e os que podem ser modificados por vrios desenvolvedores ao mesmo tempo [Berlack,
1992].

Para cada item de configurao de software e suas verses, devero ser identificados: a
documentao que estabelece as linhas de referncia; as referncias de verso e outros
detalhes de identificao.



35
Controle de Configurao

O controle de configurao abrange: a identificao e registro das requisies de
alteraes; as anlises e avaliaes das alteraes; a aprovao ou desaprovao das
requisies; a implementao, verificao, e entrega do item de software modificado; o
controle e auditoria de todos os acessos aos itens de configurao que lidam com funes de
segurana crtica.

Relato da Situao da Configurao

O objetivo relatar a todas as pessoas envolvidas no desenvolvimento e manuteno
do software informaes sobre as alteraes na configurao do software.

Registros de gerenciamento e relatrios que apontam a situao e o histrico de
controle de itens de software incluindo as linhas de referncia devem ser preparados. E
devem incluir: o nmero de mudanas de um projeto, o responsvel pelas alteraes, o que e
quando aconteceu, e o que ser afetado; as ltimas verses do item de software,
identificadores de liberao, nmero de liberaes, e comparao entre as liberaes.

Avaliao da Configurao

Deve ser determinado e garantido a integridade funcional, de acordo com os seus
requisitos, e a integridade fsica dos itens de configurao.

Para assegurar que alteraes foram implementadas de maneira apropriada h o
suporte de dois tipos de avaliaes: avaliao funcional que compreende uma verificao
tcnica formal na configurao do software e a avaliao fsica que consiste em verificar se a
configurao est composta da verso mais recente dos itens de configurao determinados
para a fase especfica do ciclo de vida.



36
Gerenciamento de Liberao e Entrega

Devem ser formalmente controladas a liberao e a entrega dos produtos de software e
a documentao. Cpias principais de cdigo e documentao devem ser mantidas por toda a
vida do produto, e se conterem funes crticas de segurana, devem ser armazenados,
empacotados e liberados de acordo com as polticas das organizaes envolvidas.



3.3.3 Garantia de Qualidade 3.3.3 Garantia de Qualidade 3.3.3 Garantia de Qualidade 3.3.3 Garantia de Qualidade


Segundo a Norma ISO/IEC 12207, o processo de Garantia de Qualidade de Software
um processo para fornecer garantia adequada de que os produtos de software e os processos
do ciclo de vida estejam de acordo com os requisitos especificados e com os planos
estabelecidos.

A Garantia de Qualidade de Software necessita de liberdade organizacional e
autoridade das pessoas diretamente responsveis pelo desenvolvimento do produto de
software ou pela execuo do processo no projeto. Garantia de Qualidade pode ser interna ou
externa, dependendo das evidncias de qualidade do processo e/ou do produto demonstrada
pelo fornecedor ou o adquirente. Faz uso de resultados de outros processos de apoio, tais
como Verificao, Validao, Revises, Auditorias e Resoluo de Problema.

Desde o incio do projeto de software, necessrio um grupo especializado em
garantia de qualidade para estabelecer planos, padres e procedimentos que iro satisfazer as
restries do projeto e as polticas da organizao. O grupo de garantia de qualidade apia as
atividades relacionadas a garantir que tais planos, procedimentos e padres sejam adequados
s necessidades do projeto.

Este processo compreende a seguintes de atividades:

1) Implementao do Processo;
2) Garantia do Produto;
3) Garantia do Processo;
4) Garantia dos Sistemas de Qualidade.
37
Implementao do Processo

Nesta atividade estabelecido um processo de garantia de qualidade adequado ao
projeto que tem o objetivo de assegurar que os produtos de software e os processos estejam de
acordo com os requisitos e aderentes aos planos estabelecidos.

Tambm necessrio desenvolver um plano para conduzir as atividades e tarefas
envolvidas no processo de garantia. O plano deve ser documentado, implementado e mantido
durante a vigncia do contrato e incluir:

padres de qualidade, metodologias, procedimentos e ferramentas para a
realizao das atividades de garantia de qualidade;
procedimentos para revises contratuais e a forma de coordenao de tais
procedimentos;
procedimentos para identificao, coleta, preenchimento, manuteno e
disposio de registros de qualidade;
recursos, cronogramas e responsabilidades para conduo das atividades de
qualidade;
atividades e tarefas selecionadas dos processos de apoio, tais como verificao,
validao, revises, auditorias e resoluo de problemas.

O Plano desenvolvido para conduzir as atividades de Garantia de Qualidade deve
garantir cobertura adequada para o desenvolvimento de qualquer item de software. Como
preparar um plano de Garantia de Qualidade de Software pode ser encontrado no Padro 730
da IEEE [IEEE Std 730, 2002].


Garantia do Produto

Consiste nas seguintes tarefas:

Assegurar que todos os planos requeridos pelo contrato sejam documentados, de
acordo com o especificado, mutuamente consistentes e sejam executados como
previsto;
38
Assegurar que os produtos de software e a documentao relacionada estejam de
acordo com o contrato e com os planos;
Na preparao para a entrega dos produtos de software, garantir que eles
satisfaam, plenamente, os requisitos contratuais e sejam aceitos pelo adquirente.



Garantia do Processo


Esta atividade deve garantir que:

Os processos do ciclo de vida do software (fornecimento, desenvolvimento,
operao, manuteno, e os processos de apoio, incluindo o de garantia de
qualidade) empregados no projeto estejam de acordo com o contrato e aderente aos
planos;
As prticas internas de Engenharia de Software, o ambiente de desenvolvimento e
de teste, e as bibliotecas utilizadas tambm estejam de acordo com o contrato;
No caso de subcontratao, os requisitos sejam passados ao subcontratado e que os
produtos produzidos pela subcontratao satisfaam os requisitos do contrato
original;
O adquirente e as outras partes tenham suporte e cooperao necessrios;
As medies do produto e do processo de software estejam de acordo com padres
e procedimentos estabelecidos;
A equipe designada para o projeto tenha habilidade e conhecimento necessrios
para entender e satisfazer os requisitos do projeto.


Garantia dos Sistemas de Qualidade

Segundo a Norma as atividades adicionais de gerenciamento de qualidade devem estar
de acordo com as clusulas da ISO 9001.





39

3.3.4 Verificao 3.3.4 Verificao 3.3.4 Verificao 3.3.4 Verificao

De acordo com a Norma, o objetivo do Processo de Verificao determinar se os
produtos de uma atividade satisfazem os requisitos ou condies impostas eles. O objetivo
assegurar que o software esteja sendo implementado corretamente.

Para diminuir custo e melhorar performance, o Processo de Verificao deve ser
integrado aos processos que o utilizam (como fornecimento, desenvolvimento, operao, ou
manuteno) o mais cedo possvel. Este processo pode incluir anlise, reviso e teste.

No caso em que o processo executado por uma organizao independente do
fornecedor, desenvolvedor, operador ou manutenedor, o processo chamado de Processo de
Verificao Independente.

No processo so realizadas as seguintes atividades:

1) Implementao do Processo
2) Verificao

Implementao do Processo

Esta atividade aborda os aspectos relativos a implementar, documentar e executar um
plano de Verificao. O plano deve tratar cada tarefa de verificao e relacionar recursos,
responsabilidades e prazos.

Se um projeto justifica um esforo de verificao, os requisitos do projeto devem ser
analisados em termos de:
Potencial de um erro no detectado no sistema ou num requisito de software de
causar morte ou dano pessoal, falha na misso, perda de equipamento ou
prejuzo financeiro;
Maturidade dos riscos associados com a tecnologia em uso;
Disponibilidade de fundos e recursos.

40
No caso de uma verificao independente, deve ser garantido organizao
responsvel pela conduo do processo, independncia e autoridade para realizar as
atividades.

Os problemas e no conformidades detectados na Verificao devem ser tratados no
Processo de Resoluo de Problemas. E os resultados das atividades devem ser
disponibilizados para o adquirente e para as outras organizaes envolvidas.


Verificao

Esta atividade relativa verificao propriamente dita. Consiste nas tarefas de
verificao de alguns elementos. Cada um deve ser verificado de acordo com determinados
critrios:

Contrato. Verifica se o fornecedor tem capacidade em satisfazer os requisitos; se os
requisitos so consistentes e cobrem as necessidades dos usurios; se os
procedimentos so adequados para manipular com mudanas de requisitos; e se os
critrios e procedimentos de aceite esto de acordo com os requisitos.

Processo. Verifica se os requisitos de planejamento e o prazo do projeto esto
adequados; se os processos selecionados para o projeto esto sendo implementados,
executados como planejado e esto de acordo com o contrato; se os padres,
procedimentos e o ambiente para os processos so adequados; se o projeto
gerenciado e se os envolvidos possuem treinamento adequado.

Requisitos. Verifica se os requisitos do sistema so consistentes, factveis e testveis;
se a alocao dos requisitos para itens de hardware, de software, e de operaes
apropriada e de acordo com o critrio de projeto e do contrato;

Projeto. Verifica se o projeto est correto e coerente com os requisitos; se ele
implementa corretamente as sequncias de eventos, entradas, sadas, interfaces, fluxo
lgico, alocao de prazo e custo; e se o projeto implementa requisitos de segurana
com mtodos rigorosos.
41

Cdigo. Verifica se o cdigo est de acordo com os requisitos do projeto; se testvel
e est correto, e de acordo com os requisitos e os padres de codificao; se o cdigo
implementa corretamente as sequncias de eventos, entradas, sadas, interfaces, fluxo
lgico, alocao apropriada de prazo e custo; se o cdigo selecionado pode ser
derivado do projeto ou dos requisitos; se o cdigo implementa requisitos de segurana
exigidos por mtodos rigorosos.

Integrao. Verifica se os componentes e as unidades de software de cada item de
software foram completa e corretamente integrados; se os itens de software, os itens de
hardware e as operaes manuais no sistema foram completa e corretamente
integrados no sistema; e se as tarefas de integrao so executadas de acordo com o
plano de integrao.

Documentao. Verifica se a documentao est adequada, completa e consistente; se
sua preparao est no prazo; e se o gerenciamento de configurao dos documentos
segue os procedimentos especificados.


3.3.5 Validao 3.3.5 Validao 3.3.5 Validao 3.3.5 Validao

De acordo com a Norma, Validao um processo para determinar se os requisitos e o
produto final, sistema ou software, atendem ao uso especfico proposto. O objetivo
assegurar que o software que est sendo desenvolvido o software correto de acordo com os
requisitos do usurio.

Este processo pode ser executado com vrios graus de independncia. Se o processo
executado por uma organizao independente do fornecedor, desenvolvedor, operador, ou
manutenedor, chamado de Processo de Validao Independente [ISO/IEC 12207, 1995].

Das atividades de Validao, a atividade de Teste considerada essencial para garantir
qualidade ao software. O Teste relevante para identificao e eliminao de erros, sendo
usado para fornecer evidncias da confiabilidade do software em complemento a outras
atividades, como uso de reviso e verificao [Maldonado, 1991]. O Teste pode e deve ser
aplicado desde as atividades iniciais do processo de desenvolvimento de software.
42

O processo implica nas seguintes atividades:

1) Processo de Implementao.
2) Validao

Processo de Implementao

Esta atividade aborda aspectos relativos a implementar, documentar e executar o plano
de Validao. O plano deve incluir: os itens de validao; tarefas de validao; recursos,
responsabilidades e prazo; procedimentos para criar relatrios de validao para o adquirente
e outras partes.


No caso de um esforo independente, deve ser assegurado organizao responsvel
por conduzir a Validao independncia e autoridade para realizar as tarefas.

Os problemas e no conformidades detectados pela Validao devem ser tratados no
Processo de Resoluo de Problemas. Os resultados das atividades devem ser disponveis
para o adquirente e outras organizaes envolvidas.

Validao

Esta atividade relativa validao propriamente dita, e consiste nas seguintes
tarefas:

Preparar e selecionar requisitos de teste, casos de teste e especificaes de teste
para analisar os resultados do teste;
Conduzir os testes;
Validar se o produto de software satisfaz seu uso pretendido;
Testar o produto de software de forma apropriada em reas reservadas do ambiente
de uso.


43
3.3.6 Reviso Conjunta 3.3.6 Reviso Conjunta 3.3.6 Reviso Conjunta 3.3.6 Reviso Conjunta


Reviso Conjunta um processo para avaliar se a situao e os produtos de uma
atividade de um projeto so apropriados. O objetivo assegurar que o produto produzido
possui qualidade suficiente para ser utilizado pelo seu usurio. As revises so tanto no nvel
tcnico quanto no nvel de gerenciamento de projeto.

Consiste das seguintes atividades:

1) Implementao do Processo;
2) Revises de Gerenciamento de Projeto;
3) Revises Tcnicas

Implementao do Processo

As seguintes tarefas compem a atividade:

Qualquer parte pode solicitar revises ad hoc. Revises peridicas podem ser
mantidas, se for especificado no plano de projeto.
Os recursos requeridos pela reviso, tais como, pessoas, ambiente, facilidades,
hardware, software e ferramentas, devem ser acordadas pelas partes. Assim como
os itens de cada reviso: agenda de reunies, produtos de software (resultados de
uma atividade) e problemas a serem revisados; escopo e procedimentos; e critrios
de entrada e sada para a reviso.
Os resultados so documentados e distribudos. Os problemas detectados durante
as revises so registrados e tratados no processo de Resoluo de Problemas. As
partes devem concordar com os resultados da reviso e com quaisquer
responsabilidades e critrios.

Reviso de Gerenciamento de Projeto

A reviso de gerenciamento uma avaliao formal de um plano ou situao do
projeto. A situao do projeto avaliada em relao aos planos, prazos e padres.
44

O resultado da reviso de gerenciamento deve ser usado para:

Que o progresso das atividades estejam de acordo com os planos, baseando-se
numa avaliao do produto e da atividade;
A manuteno do controle global do projeto atravs de alocao adequada de
recursos;
A mudana na direo do projeto ou a determinao da necessidade de um
planejamento alternativo;
A avaliao e gerenciamento de questes de risco.

A necessidade para conduzir uma determinada reviso de gerenciamento
estabelecida num apropriado documento de planejamento de projeto ( por exemplo Plano de
Garantia de Qualidade, Plano de Desenvolvimento de Software, Plano de Validao ou
Verificao). A concluso de um elemento especfico de software (por exemplo, Documentos
de Planejamento, Especificao de Requisitos, Documento de Projeto ou Especificao de
Cdigo) pode ser o ponto de partida para uma reviso de gerenciamento [IEEE Std 1028,
1988].


Revises Tcnicas

A reviso tcnica uma avaliao formal de produtos ou servios de software.

Fornece evidncias que produtos e servios em considerao esto: completos, no
prazo, de acordo com seus padres e especificaes e prontos para prxima atividade; as
mudanas foram implementadas corretamente e afetam apenas aquelas reas identificadas no
processo de Gerenciamento de Configurao; e que o desenvolvimento, operao ou
manuteno esto sendo conduzidos de acordo com os planos, padres e diretrizes do projeto.

Uma reviso tcnica estar completa quando todas as questes identificadas na
declarao dos objetivos da reviso forem tratadas e os relatrios das revises forem
emitidos.

45

3.3.7 Auditoria 3.3.7 Auditoria 3.3.7 Auditoria 3.3.7 Auditoria

O objetivo da Auditoria fornecer uma confirmao objetiva da conformidade dos
produtos e processos aos planos, requisitos e contrato. empregado por duas partes, onde
uma (parte de auditoria) audita os produtos de software ou atividades de outra parte (parte
auditada).

Auditorias so executadas de acordo com planos e procedimentos. Um plano de
auditoria estabelece um procedimento para conduzir a auditoria e as aes a serem tomadas
dependendo dos resultados [IEEE Std 1028, 1988]. Os auditores avaliam os produtos de
software e os processos em relao aos critrios de auditoria, tais como contratos,
especificaes, procedimentos e padres.

O processo definido pelas seguintes atividades:

1) Implementao do Processo
2) Auditoria

Implementao do Processo

As seguintes tarefas so realizadas nesta atividade:

A auditoria deve ser mantida at o momento pr-determinado no plano de projeto.
Os auditores no devem ter nenhuma responsabilidade direta pelos produtos ou
atividades a qual auditam.
Os recursos necessrios para conduzir a auditoria devem acordados pelas partes. O
que inclui pessoal de suporte, locao, facilidades, hardware, software e
ferramentas. As partes tambm devem concordar com os itens de cada auditoria:
agenda; produtos e resultados de atividades a serem revisados; escopo e
procedimentos; e critrio de entrada e sada para auditoria.
Os resultados da auditoria so documentados e fornecidos parte auditada que
reconhece (se for o caso) os problemas encontrados, os registra e relata para o
Processo de Resoluo de Problemas.
46
Auditoria

Nesta atividade a auditoria conduzida. Seu objetivo garantir que: os produtos de
software reflitam a documentao do projeto; a reviso e requisitos de teste prescritos pela
documentao so adequados para o aceite dos produtos de software; os dados de teste esto
de acordo com a especificao; os produtos de software foram sucessivamente testados e
esto de acordo com suas especificaes; os relatrios de teste esto corretos e as
discrepncias entre o resultado atual e o esperado foram resolvidos; as atividades foram
conduzidas de acordo com requisitos, planos e contrato; e os custos e prazos esto de acordo
com o plano estabelecido.



3. 3. 3. 3.3.8 Resoluo de Problemas 3.8 Resoluo de Problemas 3.8 Resoluo de Problemas 3.8 Resoluo de Problemas

De acordo com a Norma, este processo tem o objetivo de analisar e resolver os
problemas, qualquer que seja a natureza e fonte, que so encontrados durante o
desenvolvimento, operao, manuteno ou outros processos, enfim durante todo o ciclo de
vida do software. Prov prazos, responsabilidades e meios documentados para garantir que
todos os problemas sejam analisados e resolvidos, e tendncias dos problemas sejam
reconhecidas e analisadas.

As seguintes atividades so necessrias:

1) Implementao do Processo;
2) Resoluo de Problemas.

Implementao do Processo


O processo de Resoluo de Problemas deve ser estabelecido para tratar todos os
problemas detectados nos produtos de software e nas atividades. O processo deve estar de
acordo com os seguintes requisitos:

a) Os problemas detectados devem ser prontamente relatados para o processo de Resoluo
de Problemas. A ao iniciada, as partes relevantes so avisadas; as causas so
47
identificadas, analisadas e, se possvel, eliminadas; a resoluo arquivada e os registros
dos problemas so mantidos.

b) Cada problema deve ser classificado por categoria e prioridade para facilitar as anlises e
a resoluo do problema. Assim, necessrio um esquema para categorizao e
priorizao de problemas.

c) As resolues tomadas para os problemas encontrados tambm devem ser avaliadas.
Verifica se os problemas foram resolvidos, se as tendncias dos problemas foram
revertidas e se as mudanas foram implementadas nos produtos e atividades apropriados.
Determina se problemas adicionais tenham sido introduzidos durante a resoluo dos
problemas.


Resoluo de Problema

Quando problemas forem encontrados num produto ou numa atividade, um relatrio
dever ser feito para descrever os problemas detectados. As resolues so tomadas de acordo
com os requisitos acima descritos: da deteco do problema, passando pela investigao e
anlise at a resoluo do problema e de suas causas.





3.4 Consideraes Finais

A estrutura da Norma foi concebida de maneira a ser flexvel, modular e adaptvel
para uma organizao, projeto ou aplicao. Uma organizao, dependendo do seu propsito,
pode selecionar e adaptar os processos s suas necessidades.

Neste captulo foram apresentados os Processos de Apoio da Norma que serviro
como base para a elaborao do trabalho proposto.
48
Captulo 4: Processos de Apoio
ao Desenvolvimento de
Aplicaes Web

4.1 Consideraes Iniciais

A relevncia econmica das aplicaes Web aumentou a necessidade de controlar e
melhorar sua qualidade. Como consequncia, h uma grande demanda por mtodos e
ferramentas que garantam a qualidade das aplicaes Web, principalmente aqueles que
auxiliam os processos fundamentais de produo. Dessa forma, neste captulo, so
apresentados Processos de Apoio ao desenvolvimento de aplicaes Web, adaptados
natureza dessas aplicaes.

Tratam-se de verses iniciais de processos, a serem evoludas ou instanciadas de
acordo com o uso dos processos, os quais podem ser alterados devido adequao a projetos
especficos e/ou realidade das pequenas empresas produtoras de softwares Web.

Os processos influenciam na qualidade do produto de software. Neste trabalho, o
termo produto tem o significado estendido para abranger quaisquer artefatos que sejam
sadas de quaisquer processos usados para construir o produto final de software. Exemplos de
produtos incluem especificao da aplicao, especificao de requisitos para componentes,
49
cdigo fonte, relatrios de testes, etc. Prticas slidas de Engenharia de Software requerem
que produtos intermedirios relevantes para a qualidade sejam checados durante o
desenvolvimento e na sua evoluo.



4.2 Processos de Apoio ao Desenvolvimento de
Aplicaes Web


Os Processos de Apoio ao desenvolvimento de aplicaes Web tem como objetivo
principal garantir a qualidade dessas aplicaes que ser melhorada atravs do uso iterativo
desses processos. Os processos esto definidos numa estrutura a ser seguida pelas empresas
para pr em prtica as atividades necessrias para dar suporte ao desenvolvimento das
aplicaes.

Os processos foram concebidos observando as caractersticas das aplicaes Web e
suas influncias sobre os processos apresentados pela Norma 12207. Caractersticas
marcantes dessas aplicaes, como evoluo constante, relevncia da apresentao esttica,
habilidades tcnicas diversificadas da equipe de desenvolvimento e participao efetiva do
cliente, foram levadas em considerao na gerao dos processos.

A estrutura dos processos segue utilizada pela Norma ISO/IEC 12207 que define os
processos de apoio como aqueles que so executados ao longo da realizao dos processos
fundamentais e so responsveis pelo sucesso do projeto.

A Norma apresenta oito processos de apoio. Neste trabalho, dois deles no foram
considerados e dois novos processos foram introduzidos, visto que consideram-se
particularidades do desenvolvimento de aplicaes Web e que os processos so destinados s
empresas de pequeno porte. A seguir so listadas as alteraes realizadas para que se
adequasse aos requisitos exigidos por este trabalho:

50
O processo de Auditoria e Reviso no foram considerados visto que os
processos aqui definidos so destinados a pequenas empresas que no contam
com todos os papis necessrios. As atividades definidas no processo de
Auditoria e Reviso so asseguradas pelos processos de Garantia de
Qualidade, Verificao e Validao.

Foi acrescentado o processo Usabilidade. O objetivo assegurar a qualidade
da experincia do usurio com as aplicaes Web.

Foi acrescentado o processo de Acompanhamento, que visa controlar o
progresso das atividades e produtos.

A estrutura dos processos de apoio ao desenvolvimento de aplicaes Web
considerados neste trabalho so apresentados na Figura 4.



Figura 4: Processos de Apoio


Esses processos interagem tanto mutuamente quanto com os outros processos do ciclo
de desenvolvimento necessrios para a produo de aplicaes Web. Cada processo pode
envolver o esforo de um ou mais indivduos ou grupo de indivduos, que representam um
papel ou vrios papis, dependendo das necessidades do projeto. De maneira geral, os
processos ocorrem pelo menos uma vez em cada fase do desenvolvimento do projeto.

51
Embora, os processos sejam apresentados com interfaces bem definidas, na prtica
eles podem sobrepor-se e interagir de formas no especificadas neste trabalho.

4.2.1 As Atividades dos Processos 4.2.1 As Atividades dos Processos 4.2.1 As Atividades dos Processos 4.2.1 As Atividades dos Processos

Cada processo composto por um conjunto de atividades que por sua vez composta
de tarefas. Uma tarefa representa a menor unidade que deve ser efetuada para a realizao do
processo do qual faa parte. Para algumas tarefas so apresentadas consideraes que so
utilizadas para explicar ou exemplificar necessidades especficas dos projetos Web.

Para facilitar a compreenso das atividades foi definida, atravs de trs templates,
uma estrutura bsica padro de apresentao das informaes que comum aos processos
propostos e que permite que os aspectos relevantes das atividades sejam exibidos de forma
semelhante. E tambm o primeiro pargrafo de cada tpico que descreve um processo ou
atividade apresenta a definio do respectivo processo ou da atividade.

Os templates so apresentados em Figura 5, Figura 6 e no Quadro 3.









Figura 5: Template de Processos

Esse template utilizado para apresentar as atividades que compem o processo.




Processo
Atividade 2 Atividade 1 Atividade n
52









Figura 6 Template da Atividade: Artefatos de Entrada e Sada e Responsveis.


No campo Responsveis so descritos os papis envolvidos na execuo da atividade
em questo. No campo Entradas so apresentados os produtos necessrios para a execuo
da atividade e no campo Sadas os produtos produzidos na atividade e que podem servir de
entrada para outras atividades.

Quadro 3:Template de tarefas das atividades
Atividade
Meta

Tarefas



De acordo com o Quadro 3, o campo Atividade indica o nome da atividade a ser
executada, o campo Meta apresenta a finalidade da atividade e o campo Tarefas indica as
tarefas necessrias para a completa execuo da atividade. Quando necessrio, para maiores
explicaes, so apresentadas Consideraes para a tarefa. As consideraes podem ser
exemplos, restries, questes especficas no projeto Web no abordados nos sistemas
tradicionais, ou seja, algum detalhamento que ilustre a tarefa.









Entradas Responsveis Sadas
53
As tarefas so apresentadas segundo uma ordem considerada ideal para a conduo da
atividade, mas no uma obrigao. As empresas podem alter-las de acordo com a
necessidade do momento e da fase em que se encontra o projeto, assim como deixar de
realizar algumas que no so consideradas pertinentes a situao.



4.2.2 Princpios bsicos dos Processos 4.2.2 Princpios bsicos dos Processos 4.2.2 Princpios bsicos dos Processos 4.2.2 Princpios bsicos dos Processos

Os processos foram concebidos de maneira a serem flexveis e adaptveis s
necessidades da empresa que os utilizam. Os processos se inter-relacionam e so baseados
nos seguintes princpios bsicos:

Modularidade. Um processo dedicado a uma especfica funo. Os
processos so fortemente relacionados com um mnimo de interfaces. Cada
processo possui um conjunto de atividades e tarefas, refinadas o suficiente para
serem executadas independentemente.
Responsabilidade: Um processo de responsabilidade de uma organizao ou
parte dela, sendo que se pode considerar como organizao um indivduo ou
um grupo de indivduos que representam os papis. A determinao de
responsabilidade assegura melhor aplicabilidade dos processos e diminui o
risco de ocorrerem problemas.
Evoluo. Os processos possuem a qualidade de serem evolutivos, ou seja,
foram concebidos de uma forma que a cada interao/execuo eles sejam
alterados e adaptados s necessidades de cada empresa ou projeto Web. Pode-
se ocorrer definio de outras atividades e tarefas, eliminao de algumas e at
mesmo alterao na forma de utilizao. Isso assegura melhoria contnua dos
processos.
Flexibilidade. Os processos so destinados ao desenvolvimento de aplicaes
Web para quaisquer projetos dessa natureza produzidos por uma pequena
empresa. Assim, os processos so especializados nas caractersticas dessas
aplicaes, mas so flexveis para serem adaptados, sem restries e maiores
transtornos, de acordo com as particularidades de cada projeto Web. Durante a
54
utilizao dos processos caractersticas especficas do projeto e da organizao
devem ser levados em conta.
Independncia. A utilizao dos processos independente do modelo de
desenvolvimento de software adotado pela empresa. Os processos so baseados
em fases genricas do desenvolvimento de aplicaes Web.
Atividades de Planejamento. Cada processo tem como primeira atividade o
seu planejamento. Geralmente, o planejamento realizado uma vez para
estabeceler a estrutura organizacional do processo, sendo alterado de acordo
com as necessidades especficas de cada projeto. Os planos, gerados nas
respectivas atividades de planejamento de cada projeto, podem ser formal ou
informal, servem como diretrizes para a execuo do processo.



4.2.3 Papis 4.2.3 Papis 4.2.3 Papis 4.2.3 Papis

Para pr em prtica as atividades e tarefas dos Processos de Apoio ao
desenvolvimento de aplicaes Web definidos neste trabalho, um conjunto de papis so
considerados. Um papel uma funo ou conjunto de funes desempenhadas por um
indivduo com um determinado objetivo e que produz um resultado dentro de um projeto. Um
papel define responsabilidades assumidas no processo, estando relacionado a atividades e
produtos. Um papel pode ser desempenhado por um indivduo ou um grupo de indivduos, e o
mesmo indivduo pode desempenhar mais de um papel no mesmo projeto ou em projetos
diferentes.

De acordo com este trabalho, os profissionais necessrios para os processos de apoio
ao desenvolvimento de aplicaes Web esto associados aos seguintes papis:

Gerente do projeto: gerencia os processos, as pessoas e lida com o cliente num
determinado projeto. Suas responsabilidades envolvem o planejamento,
distribuio das tarefas, acompanhamento dos processos e pessoas. Para os
55
projetos Web so necessrios conhecimentos nas reas de tecnologia, criao
visual e hipermdia.

Arquiteto de software: responsvel pela soluo tcnica do software.
Estabelece a arquitetura e os componentes a serem utilizados. Assim como
define e aplica as normas de software.

Diretor de criao: responsvel pela rea de criao visual e usabilidade, ou
seja, pela experincia do usurio com a aplicao.

Engenheiro de Qualidade Web: responsvel em definir, executar e verificar as
atividades relacionadas com o controle de qualidade do produto e dos
processos.

Gerente de Configurao: controla os itens que esto sob Gerenciamento de
Configurao.

Arquiteto da informao: responsvel pela organizao da informao nas
pginas da aplicao Web, de forma que os usurios a encontrem de forma
fcil e eficiente.

Web designer: responsvel pelo projeto da identidade visual da aplicao.

Testador: responsvel pelos testes da aplicao, o que inclui os aspectos
funcionais, de integrao, de desempenho e de navegabilidade.

Outros papis so desempenhados durante o ciclo de desenvolvimento do projeto,
como redatores, Web master, editores, programadores, engenheiro de requisitos, analista de
sistemas, etc. Porm, foram apresentados, somente, aqueles necessrios nos Processos de
Apoio aqui definidos.


56
4.2.4 Garantia de Qualidade 4.2.4 Garantia de Qualidade 4.2.4 Garantia de Qualidade 4.2.4 Garantia de Qualidade

Definio: Garantia de Qualidade o processo que inclui as atividades necessrias
para garantir que os produtos e os processos num projeto estejam de acordo com os
requisitos especificados.

Existem vrias razes para tratar da qualidade de uma aplicao Web. O crescimento
do comrcio eletrnico, por exemplo, tem tornado o sucesso de uma empresa mais dependente
da qualidade desse tipo de aplicao. Para cada aplicao Web, no obstante a sua misso e
objetivo, o competidor est a um link prximo, por isso atrair e manter o usurio tornou-se
essencial [Mich et al, 2003].

A ISO define qualidade de um dado produto como a totalidade das caractersticas de
uma entidade produtos ou servios que exercem suas habilidades para satisfazer as
necessidades declaradas ou implcitas [ISO 8402,1994]. De acordo com essa definio,
qualidade est relacionada com a conformidade dos requisitos. Dessa forma, o primeiro tpico
de um processo de garantia de qualidade a descrio da qualidade do produto requerida e as
caractersticas relacionadas a ela. Assim, uma aplicao Web com alta qualidade aquela que
atende aos requisitos de qualidade do usurio e aos requisitos de qualidade do cliente.

A noo de qualidade no simples, existem muitos atributos
2
de qualidade relevantes
a um projeto particular. Por isso, preciso antes de tudo determinar o real propsito da
aplicao, mantendo um ponto bsico em mente: as necessidades do cliente e do usurio
devem ser consideradas primeiramente, e incluem diversas caractersticas de qualidade, no
apenas a funcionalidade, mas, principalmente, as que combinam aspectos artsticos e grficos
com funcionalidades do produto. Esses aspectos so difceis de medir e especificar, tais como
qualidade visual, esttica da marca da empresa, apresentao de contedo, organizao da
informao, etc.

Ressalta-se que este processo no lida com modelos e critrios que avaliam as
capacidades das empresas em produzir Aplicaes Web, ou seja, no tem a inteno de
certificao da empresa em relao a qualidade dos processos.



2
A definio de atributo utilizada a mesma que se refere a Norma 9126
57
A Figura 7 apresenta as atividades do processo.









Figura 7 Atividades de Garantia de Qualidade

Planejamento da Qualidade

Definio: Nesta atividade, estabelecido o processo, atravs da identificao de
atividades e padres que so relevantes para a qualidade do projeto e determina-se
como satisfaz-los.

uma atividade chave que deve ser executada de forma regular e em paralelo com as
atividades de planejamento de projeto, pois a qualidade desejada pode exigir uma anlise mais
detalhada do projeto e do risco de um problema identificado. A equipe do projeto deve estar
ciente a um dos princpios fundamentais da garantia de qualidade: a qualidade planejada,
no inspecionada.

A Figura 8 apresenta as entradas, responsveis e sadas da atividade.










Figura 8: Planejamento de Qualidade: artefatos e responsveis.
Polticas de qualidade
Requisitos do projeto
Sadas de outros processos

Engenheiro de qualidade
Web
Gerente de projeto


Plano de garantia de
qualidade
Checklists
Entrada para outros
processos



Entradas

Responsveis

Sadas

Garantia de
Qualidade
Garantia do Produto Planejamento da Qualidade Garantia do Processo
58
Entradas para o Planejamento de Qualidade:
Polticas e padres de Qualidade: so as intenes ou procedimentos globais
da organizao em relao qualidade. Se faltarem polticas formais de
qualidade na empresa, a equipe de gerenciamento do projeto e de qualidade
devem desenvolver suas prprias polticas de qualidade;
Requisitos do projeto ou escopo do projeto: documentam os objetivos do
projeto, a descrio do produto e os principais subprodutos que servem para
definir importantes requisitos de qualidade, questes tcnicas e outros
aspectos;
Sadas de outros processos: processos de outras reas podem produzir sadas
que devem ser consideradas no planejamento de qualidade. Por exemplo:
algum processo que gerencia a terceirizao de servio.

Responsveis:
Engenheiro de Qualidade Web: possui o conhecimento de procedimentos e
atividades da organizao para assegurar a garantia de qualidade do projeto
Web, assim como as necessidades especficas para esse tipo de aplicao.
Gerente do Projeto: identifica os atributos de qualidade necessrios para
cumprir os requisitos impostos pelo projeto. Atua com o Engenheiro de
Qualidade Web para identificar as relaes existentes entre as atividades
envolvidas para a garantia de qualidade e as atividades planejadas para o
desenvolvimento da aplicao Web.

Sadas do Planejamento de Qualidade:
Plano de Garantia de Qualidade: desenvolvido para conduzir as atividades e
tarefas envolvidas no processo. Descreve responsabilidades, procedimentos,
processos e recursos necessrios para implementar o processo de garantia de
qualidade.
Checklist: contm itens para verificar se um conjunto de passos necessrios
est sendo executado. So importantes para garantir consistncia nas
atividades mais utilizadas.
Entradas para outros processos: pode identificar a necessidade de atividades
adicionais em outros processos.

O Quadro 4 apresenta as tarefas relacionadas a esta atividade.
59
Quadro 4: Tarefas de Planejamento de Qualidade
Atividades Planejamento de Qualidade
Meta

Estabelecer uma estrutura organizacional para realizar atividades que garantam
a conformidade dos produtos e processos com os planos estabelecidos.

Tarefas

1.Identificar atributos e padres de qualidade da aplicao
Os atributos e os padres identificados esto associados a um custo
que deve estar explcito ao cliente. Por exemplo, a segurana da
informao, de acesso, de servidores, etc podem ser definidas em
vrios nveis de menor a maior risco. Os atributos esto relacionados
com as seguintes importantes caractersticas para aplicaes Web:
usabilidade, funcionalidade, confiabilidade, eficincia e
mantenabilidade.
2.Documentar polticas de qualidade da empresa desenvolvedora.
3.Identificar normas de qualidade do cliente.
Toda aplicao Web possui uma marca (brand, em ingls) que a
identifica, a maioria das marcas esto associadas s empresas
clientes, que so utilizadas em outras mdias. Por exemplo, bancos,
lojas de departamento e aplicaes institucionais. Assim, deve seguir
as polticas definidas pelo cliente para a utilizao da marca. Do
mesmo modo, para o tipo de linguagem, cores e imagens e outras
normas.
4.Definir atributos de qualidade de terceiros e a responsabilidade.
O desenvolvimento de aplicaes Web, muitas vezes, envolve terceiros,
como provedores de acesso, provedores de conectividade, Web
services
3
, vdeos e outros componentes.
5.Validar os atributos de qualidade com o cliente.
O desenvolvimento de aplicaes Web voltado ao cliente, que parte
integrante do processo.
6.Definir procedimentos para revises contratuais.
7.Selecionar atividades dos Processos de Verificao, Validao e Usabilidade
utilizados no processo.
8.Definir procedimentos e ferramentas para a realizao das atividades.
9.Com as definies acima, gerar um plano de Garantia de Qualidade que deve
ser aprovado pelo gerente e distribudo para os envolvidos.


Garantia do Produto

Definio: Assegura que os produtos gerados durante o ciclo de vida da aplicao
estejam de acordo com os planos estabelecidos e satisfaam os requisitos.


3
Web services: so aplicaes de Internet baseadas em padres abertos que permitem sua utilizao por outras
aplicaes. No foram considerados como uma aplicao Web, definido neste trabalho, pois, geramente, no
envolvem interao com usurios.
60

Os procedimentos definidos no plano de garantia de qualidade devem ser realizados ao
longo do ciclo de desenvolvimento do projeto.

A Figura 9 apresenta as entradas, responsveis e sadas pela atividade.











Figura 9: Garantia do Produto: artefatos e responsveis.


Entradas para garantia de qualidade do produto:
Plano de garantia de Qualidade: as polticas e procedimentos definidos para
alcanar os requistos contratuais so implementados pela equipe durante o
desenvolvimento.

Responsveis:
Engenheiro de Qualidade Web: atua na verificao de que os procedimentos
de qualidade estejam sendo realizados e definem melhorias de qualidade
Gerente de Projeto: assegura que o plano seja seguido pela equipe.
Equipe: realizam as suas atividades de acordo com as definies do plano de
garantia de qualidade para garantir qualidade de produto.

Sadas de garantia de qualidade de produto:
Melhoria de qualidade do produto: aponta as falhas de qualidade do produto
que no estejam de acordo com os requisitos contratuais. Inclui a tomada de
aes para aumentar a efetividade do produto e a eficincia do projeto.
Plano de garantia de
qualidade
Engenheiro de qualidade
Web
Gerente de projeto
Equipe
Melhoria de Qualidade do
Produto


Entradas Responsveis

Sadas

61

O Quadro 5 apresenta as tarefas de Garantia de Produto.


Quadro 5: Tarefas de Garantia de Produto
Atividade Garantia do Produto
Meta

Os produtos gerados estejam de acordo com os padres de qualidade
estabelecidos.

Tarefas

1.Assegurar que os planos requeridos pelo contrato estejam documentados e
consistentes.
Questes como tratamento de imagem, edio de contedo, redao,
criao de logotipos, criao de vdeos, browsers compatveis,
linguagens, etc devem, tambm, serem especificadas nos planos, para
no causarem dvidas de contratao.
2.Assegurar que os produtos e os documentos estejam de acordo com o contrato
e os planos.
As atividades dos processos de Verificao, Validao e Usabilidade
apoiam essa atividade.
3.Garantir que os produtos satisfaam os requisitos contratuais.
Alm de funcionalidades, atributos relacionados com a experincia do
usurio com a aplicao, tambm, devem ter a devida ateno.
4.Assegurar que a aplicao seja aceita pelo cliente.
No caso de desenvolvimento de prottipos, para esse tambm deve
existir um termo de aceite.



Garantia do Processo

Definio: Assegura que os processos utilizados durante o ciclo de vida da aplicao
estejam de acordo com os planos estabelecidos, assim como o ambiente de
desenvolvimento e teste. E que a equipe do projeto tenha habilidades necessrias para
satisfazer os requisitos.

Como dito, o processo de garantia de qualidade no tem o objetivo de avaliar a
capacitao da empresa em realizar os processos, essa atividade preocupa-se com a execuo
de acordo com o que foi definido para cada processo.

A Figura 10 apresenta as entradas, responsveis e sadas da atividade.
62










Figura 10: Garantia do Processo: artefatos e responsveis



Entradas para garantia do processo:
Plano de garantia de Qualidade: descreve como a equipe do projeto deve
realizar suas atividades de acordo com as normas de qualidade definidas.
Checklist: os itens definidos no planejamento de qualidade so realizados.

Responsveis:
Engenheiro de Qualidade Web: atua na verificao de que as atividades esto
sendo realizadas de acordo com os planos e definem melhorias de qualidade.
Gerente de Projeto: assegura que as atividades definidas sejam realizadas pela
equipe.
Equipe: realizam as suas atividades de acordo com as definies do plano de
garantia de qualidade para garantir qualidade do processo.

Sadas de garantia de qualidade de processo:
Melhoria de qualidade do processo: aponta as falhas de execuo dos
processos. Os ajustes nos processos incluem a tomada de aes corretivas ou
preventivas.
Checklists concludas: os checlists preenchidos devem fazer parte dos registros
do projeto.


O Quadro 6 apresenta as tarefas de garantia de processo.
Plano de garantia de
qualidade
Checklists
Engenheiro de qualidade
Web
Gerente de projeto
Equipe
Melhoria de Qualidade dos
Processos
Checklists concludas


Entradas Responsveis Sadas
63

Quadro 6: Tarefas de Garantia de Processo
Atividade Garantia do Processo
Meta

Os processos do ciclo de vida estejam de acordo com os planos estabelecidos.

Tarefas

1.Assegurar que os processos empregados no desenvolvimento e manuteno
do projeto estejam aderentes aos planos.
As atividades dos processos de Verificao apiam essa tarefa.
2.Assegurar que o ambiente de desenvolvimento e teste, bibliotecas utilizadas e
prticas internas de Engenharia de Web estejam de acordo com os planos.
3.Assegurar que a equipe tenha os conhecimentos necessrios para entender e
satisfazer os requisitos de projeto.
necessria uma equipe com habilidades em diversas reas tcnicas
e no tcnicas software, hardware, conectividade, artes grficas e
marketing. Dependendo do momento e do tipo de projeto web, uma
especialidade mais requisitada que a outra.
4.Assegurar que as medies do produto e processo estejam de acordo com os
padres estabelecidos.
A evoluo contnua e a entrega imediata de funes exigem que os
processos sejam geis e flexveis para garantir qualidade e rapidez. Por
isso, deve ser medido, tambm, o impacto que causam no projeto em
relao ao tempo que necessrio para execut-los. Processos
onerosos devem ser redefinidos.



4.2.5 Documen 4.2.5 Documen 4.2.5 Documen 4.2.5 Documentao tao tao tao


Definio: Documentao o processo que planeja, projeta, produz, edita, distribui e
mantm os documentos necessrios no projeto.

Caractersticas das aplicaes Web como evoluo contnua, urgncia de entrega de
funes e equipes multidisciplinares influenciam diretamente a documentao. Com
mudanas constantes e rpidas nos requisitos da aplicao, a organizao deve documentar
essas alteraes de forma consistente, porm de forma gil para no prejudicar os prazos de
desenvolvimento que so curtos, com mnimo de informaes, mas o suficiente para o
entendimento de toda equipe.
64
Os documentos produzidos durante o desenvolvimento de aplicaes Web incluem
scripts, udio, imagens e vdeo. Deve-se utilizar ferramentas adequadas para a documentao
desse tipos de mdia. Novos tipos de documentos so produzidos, por exemplo, mapa
navegacional que apresenta a hierarquia entre as pginas de forma esttica; mapa relacional
que alm de apresentar a hierarquia entre as pginas vincula a documentao de toda a equipe
e uma referncia de layout, de contedo e dos sistemas embutidos nas pginas; wireframes
que um esboo da interface das pginas.
Como a equipe multidisciplinar, os documentos devem englobar as diferentes
linguagens utilizadas pelos diferentes perfis de profissionais em um padro que garanta o bom
entendimento de todos os membros da equipe.

A Figura 10 apresenta as atividades do processo de Documentao.









Figura 11: Atividades de Documentao

Planejamento da Documentao

Definio: consiste em desenvolver um plano que identifique os documentos que
sero produzidos durante o ciclo de vida e que estabelea os padres para a produo e
distribuio dos mesmos.

Os aspectos exigidos para a produo dos documentos so descritos, desde a estrutura
interna at a apresentao para o usurio final. Cada documento deve ser projetado de acordo
com os padres estabelecidos.

A Figura 12 apresenta as entradas, responsveis e sadas da atividade.
Documentao
Planejamento da
Documentao
Produo da
Documentao
65










Figura 12: Planejamento de Documentao: artefatos e responsveis


Entradas para o planejamento da documentao:
Padres e mtodos de documentao: a empresa pode utilizar padres e
mtodos de documentao existentes no mercado ou criar seus prprios de
acordo com as suas necessidades.
Ferramentas de documentao: devem ser documentadas quais ferramentas
sero utilizadas para a produo de cada documento.
Tipos de linguagens: deve ser especificado a linguagem de cada documento,
como linguagens de programao para os cdigos fontes, linguagem do
modelo de dados, etc.

Responsveis:
Gerente de Projeto: identifica os documentos a serem produzidos, quais sero
apresentados ao cliente e estabelece o cronograma para verses intermedirias
e finais.
Arquiteto de software: identifica os documentos tcnicos que sero produzidos
e as linguagens utilizadas; e estabelece a forma de desenvolv-los e apresent-
los.

Diretor de criao: identifica os documentos de criao visual que sero
desenvolvidos mapas do site, mapa relacional, mapa navegacional, layout,
desenhos, etc e estabelece os padres de como desenvolv-los.

Padres e mtodos de
documentao
Ferramentas de
documentao
Tipos de linguagens
Gerente de Projeto
Arquiteto de Software
Diretor de Criao

Plano de documentao



Entradas Responsveis Sadas
66
Sadas do planejamento de documentao
Plano ou diretrizes de documentao: criado um plano de documentao com
os aspectos estabelecidos para a produo e distribuio dos documentos.

O Quadro 7 apresenta as tarefas da atividade.

Quadro 7: Tarefas de Planejamento da Documentao
Atividades Planejamento da Documentao
Meta

Gerar um plano de documentao para a produo de documentos.

Tarefas
1.Identificar os documentos que sero produzidos.
Alm de documentos tcnicos, so identificados os documentos no
tcnicos, como apresentao grfica, mapas do site, imagens,
animao grfica, etc
2.Definir responsabilidades, procedimentos e ferramentas para o
desenvolvimento e manuteno dos documentos.
3.Definir o relacionamento com as atividades do processo de Gerenciamento
de Configurao.
4.Definir quais documentos sero apresentados para o cliente e como.
Os documentos apresentados para o cliente devem ter a linguagem,
estilo de apresentao e o nvel de detalhes de acordo com a audincia
pretendida. Os principais documentados apresentados ao cliente esto
relacionados com a aprovao do levantamento dos requisitos, que
envolve alm das funcionalidades a apresentao visual.
5.Definir o relacionamento com as atividades de evoluo/manuteno da
aplicao.
6. Com as definies acima, gerar diretrizes de documentao.


Produo da Documentao

Definio: consiste em produzir e manter os documentos de acordo com o plano de
documentao estabelecido.

Durante o desenvolvimento da aplicao Web so produzidas informaes que
dependendo de suas implicaes no projeto, devem ser registradas pois servem de partida
para as atividades dos processos. Os documentos principais so armazenados de acordo com
os controles de Gerenciamento de Configurao.

A Figura 13 apresenta as entradas, responsveis e sadas da atividade.
67











Figura 13: Produo da Documentao: artefatos e responsveis

Entradas para a produo de documentao
Plano de documentao: a produo dos documentos realizada de acordo
com os planos estabelecidos.
Documentos projetados: os documentos projetados so a base para a produo
dos mesmos e servem como modelos para outros projetos.
Informaes para a documentao: as informaes que sero editadas nos
documentos so produzidas durante todo o ciclo de vida da aplicao.

Responsveis:
Equipe: todos da equipe que produzem documentos.

Sadas:
Documentos produzidos: documentos produzidos de acordo com o plano
estabelecido, os documentos projetados e as informaes para a sua edio.


O Quadro 8 apresenta as tarefas da atividade.





Plano de documentao
Documentos projetados
Informaes para a
documentao
Equipe

Documentos produzidos



Entradas Responsveis Sadas
68
Quadro 8: Tarefas da Produo da Documentao

Atividades Produo da Documentao
Meta

Produzir e manter os documentos de acordo com os planos estabelecidos.

Tarefas

1. Produzir o documento de acordo com os padres estabelecidos.
2.Distribuir o documento produzido.
Para facilitar a distribuio os documentos devem estar num
repositrio nico com acesso controlado aos envolvidos atravs de
uma ferramenta. Essa ferramenta pode estar numa intranet para
documentos internos e extranet para a visualizao do cliente.
3.Armazenar o documento elegvel ao gerenciamento de configurao de
acordo com as atividades desse processo.
4.Destruir os documentos obsoletos.


4.2.6 Verificao 4.2.6 Verificao 4.2.6 Verificao 4.2.6 Verificao

Definio: Verificao o processo que determina se os produtos de uma atividade
satisfazem os requisitos ou condies impostas a eles.

A rpida difuso da Internet e novos padres de tecnologia produziram um significante
crescimento da demanda por aplicaes Web e por mais e mais requisitos de usabilidade,
funcionalidade e confiabilidade. A rpida expanso induziu a necessidade de metodologias e
processos para o desenvolvimento de aplicaes que fossem adequados a satisfazer os
requisitos de qualidade desejados. Um dos processos que impactam significantemente a
qualidade de uma aplicao Web o processo de Verificao.

O objetivo do processo assegurar que o produto esteja sendo implementado
corretamente. O processo de Verificao deve ser integrado aos outros processos que o
utilizam o mais rpido possvel para melhorar performance.

A Figura 14 apresenta as atividades do processo.




69









Figura 14: Atividades de Verificao

Planejamento da Verificao

Definio: a atividade de planejamento responsvel em estabelecer uma estrutura
organizacional adequada para a realizao do processo de Verificao.

Nesta atividade so definidos os aspectos para implementar e executar diretrizes que
tratam cada tarefa de verificao, relacionam recursos, prazos e responsabilidades.

A Figura 15 apresenta as entradas, responsveis e sadas da atividade.
















Figura 15: Planejamento de Verificao: artefatos e responsveis



Especificao dos
Requisitos
Planejamento do projeto
Procedimentos e Normas
de Qualidade
Sadas de outros processos
Gerente de Projeto
Engenheiro de Qualidade
Web

Plano de Verificao



Entradas Responsveis Sadas
Verificao
Planejamento da Verificao Verificao
70
Entradas para o Planejamento da Verificao:
Requisitos do projeto ou escopo do projeto: de acordo com os requisitos e
escopo do projeto so definidos os produtos que sero verificados e sob quais
aspectos.
Planejamento do projeto: no planejamento de projeto definido como os
produtos e o projeto sero desenvolvidos. Assim, baseando-se no
planejamento, tambm so definidos critrios de verificao.
Procedimentos e Normas de Qualidade: de acordo com os procedimentos e
normas de qualidade, so definidos critrios para verificao de produtos e
processos;
Sadas de outros processos: processos de outras reas podem produzir sadas
que devem ser consideradas no planejamento de verificao.

Responsveis:
Engenheiro de Qualidade Web: auxilia na definio dos critrios de verificao
dos produtos e processos.
Gerente do projeto: identifica os produtos que sero verificados.

Sadas do Planejamento de Verificao:
Diretrizes de verificao: desenvolvidas para conduzir as atividades e tarefas
envolvidas no processo. Descrevem responsabilidades, procedimentos, tarefas
e recursos necessrios para implementar e executar o processo de Verificao.


O Quadro 9 apresenta as tarefas de Planejamento de Verificao.


Quadro 9: Tarefas de Planejamento de Verificao
Atividades Planejamento de Verificao
Meta

Criar um plano de verificao e uma estrutura organizacional adequada para a
realizao do processo de Verificao.

Tarefas

1.Identificar Procedimentos e Normas de Qualidade aplicveis no processo de
Verificao.
A partir dos procedimentos e normas so definidos os critrios de
verificao tanto para o produto quanto para os processos.
2.Identificar as relaes com as atividade do processo de Garantia de
Qualidade.
3.Analisar os requisitos do projeto para estabelecer procedimentos, produtos e
71
Atividades Planejamento de Verificao
responsabilidades para a verificao.
Alguns itens para todos os projetos Web so definidos a priori para a
verificao se esto sendo implementados corretamente, como
contedo, navegao, arquitetura da informao,arquitetura do
software, compatibilidade de browsers, aplicao de cores e imagens,
integrao de componentes e camadas da soluo e questes de
segurana. Outros so definidos de acordo com o projeto.
4. Verificar as restries de tecnologias a serem utilizadas e a disponibilidade
de recursos necessrios
Nesta tarefa so verificados servidores para hospedagem da
aplicao, protocolos de comunicao, capacidade de conectividade e
instalaes de softwares.
5. Identificar necessidades do cliente para incluir no processo de Verificao
Padres de qualidade especficos do cliente (empresa e no o projeto)
so identificados e avaliada a necessidade de verificao. Por
exemplo, utilizao de padres estticos em conformidade com
projetos de outros tipos de mdia. Aplicao da marca, estilo de
redao, fontes, questes de segurana, regras de deciso para obter
informaes no site, restries de acesso, so alguns exemplos.
6. Elaborar as diretrizes de verificao, identificando as tarefas e as
responsabilidades. As diretrizes so aprovadas pelo gerente do projeto.


Verificao

Definio: tem o objetivo de determinar se o produto de uma dada fase do
desenvolvimento satisfaz s condies impostas no incio dessa fase.

Nesta atividade so realizadas as tarefas propriamente ditas de verificao. Determina
se os produtos de uma determinada fase do projeto executam os requisitos estabelecidos
previamente e se os processos esto de acordo com os requisitos especificados.

A Figura 16 apresenta as entradas, sadas e responsveis pela atividade.











72


















Figura 16: Verificao: artefatos e sadas


Entradas para a Verificao:
Diretrizes de verificao: a verificao conduzida de acordo com as diretrizes
determinadas para o processo.
Produtos e processos: os produtos, processos e outros itens determinados so
verificados.

Responsveis:
Gerente do projeto, Arquiteto de Software e Diretor de Criao: verificam se
os produtos e processos esto sendo implementados de acordo com os
requisitos impostos a eles.

Sadas da Verificao:
Resultados da verificao: aps as verificaes so documentados os
resultados. Problemas e no conformidades encontrados devem ser tratados no
prprio processo. No caso de problemas de alto risco ou que afetam outros
processos ou que no possam resolvidos durante a verificao, eles devem ser
encaminhados ao processo de Resoluo de Problemas.

O Quadro 10 apresenta as tarefas da atividade.



Plano de Verificao
Produtos e processos a
serem verificados

Gerente de Projeto
Arquiteto de Software
Diretor de criao

Resultados de verificao

Entradas Responsveis Sadas
73

Quadro 10: Tarefas de Verificao
Atividades Verificao
Meta

Avaliar se os produtos e processos esto sendo implementados corretamente

Tarefas

1.Verificar contrato
Verificar se os termos de custos, prazos, responsabilidades e requisitos
so factveis e esto de acordo com o planejamento do projeto.
Verificar questes legais e sociais da divulgao de informaes so
apropriadas na aplicao Web. Enfatizar responsabilidades que
podem causar dvidas, exemplos: edio de contedo, tratamento de
imagens e de vdeos, atualizao de informaes, alteraes da
aplicao, termos de aceite do projeto visual (apresentao),
hospedagem da aplicao, direitos autorais de imagens, textos e
animaes.
2.Verificar requisitos
Verificar se os requisitos so consistentes, factveis e testveis; se
alocao de requisitos para funcionalidades, projeto visual, projeto
navegacional, servidores da aplicao e base de dados e conectividade
so apropriados e esto definidos no contrato.
3.Verificar projeto.
Verificar se o projeto est correto e coerente com os requisitos e se
implementa corretamente as sequncias de eventos, entradas, sadas,
interfaces, alocao de prazo e custo. Verificar se o projeto de
apresentao est de acordo com o prottipo aprovado. Verificar se
os projetos arquitetural, navegacional e de apresentao esto sendo
implementados corretamente.
4. Verificar cdigo
Verificar se o cdigo est de acordo com os requisitos e padres de
codificao Web, se testvel e est correto; se o cdigo dos
programas implementam corretamente as sequncias de eventos,
entradas, sadas, interfaces e fluxo lgico; se funes, scripts e tags
utilizados nos cdigos de implementao das pginas so compatveis
com os browsers definidos a serem suportados pela aplicao.
5. Verificar contedo
Verificar se os textos esto de acordo com o estilo definido e com a
linguagem apropriada; se as imagens, cores, marca e fontes utilizadas
nas pginas esto de acordo com o especificado.
6. Verificar organizao da informao
Verificar se as pginas esto sendo implementadas de acordo com a
estrutura e os aspectos de navegao definidos.
7. Verificar integrao
Verificar se os componentes da aplicao esto corretamente
integrados; se as camadas da soluo foram integradas corretamente;
se todos os itens de software e de hardware foram completa e
corretamente integrados;
8. Verificar documentao
Verificar se a documentao esta adequada, completa, consistente e
sua preparao est no prazo; se o gerenciamento de configurao dos
documentos segue os procedimentos especificados.
74
Atividades Verificao
9. Verificar processo
Verificar se os processos selecionados para o projeto esto sendo
implementados e executados como planejados; se os padres,
procedimentos e o ambiente so adequados; se o projeto gerenciado
e os envolvidos possuem habilidades e treinamento adequados; se os
processos no so onerosos e esto impactando os prazos de entrega.
10.Documentar resultados e encaminhar problemas e no conformidades ao
processo de Resoluo de Problemas.






4.2.7 Validao 4.2.7 Validao 4.2.7 Validao 4.2.7 Validao


Definio: Validao o processo que determina se os requisitos especficos para um
uso pretendido so atendidos.

A qualidade de uma aplicao Web deve ser mantida e monitorada periodicamente
para garantir a qualidade permanente. Qualidade pobre implica que o usurio no mais
visitar a aplicao e como conseqncia, a organizao pode perder negcios. As questes
que afetam a qualidade so, por exemplo, quebra de links , falhas de imagem, mensagens de
erros no amigveis, combinaes de cores complexas, links errados, demora de resposta,
respostas erradas, etc. Um dos meios de garantir qualidade atravs de um processo
sistemtico de validao. O objetivo da Validao assegurar que a aplicao que est sendo
desenvolvida a correta de acordo com os requisitos do usurio.

Entre as vrias etapas da Validao, a atividade de teste considerada essencial. O
teste importante para identificao e eliminao de erros, e fornece evidncias da
confiabilidade da aplicao em complemento a outras atividades.

A Figura 17 apresenta as atividades do processo.



75











Figura 17: Atividades de Validao

Planejamento da Validao

Definio: esta atividade estabelece uma estrutura organizacional adequada para a
implementao e execuo do processo de Validao.

Aborda os aspectos relativos a implementar e documentar um plano para a execuo
da validao. O plano deve incluir: os itens de validao, tarefas, recursos, responsabilidades
e prazo. A Figura 18 apresenta os artefatos de entrada produzidos e os responsveis pela
atividade.
















Figura 18: Planejamento de Validao: artefatos e responsveis.



Entradas para o Planejamento da Validao:
Especificao dos
Requisitos
Procedimentos e normas de
qualidade

Gerente de Projeto
Engenheiro de Qualidade
Web
Arquiteto de software
Diretor de criao

Plano de Validao



Entradas Responsveis Sadas
Validao
Planejamento da Validao Validao
76
Requisitos do projeto ou escopo do projeto: de acordo com os requisitos e
escopo do projeto so definidos os itens que sero validados.
Procedimentos e Normas de Qualidade: de acordo com os procedimentos e
normas de qualidade, so definidos critrios para validao dos produtos
intermedirios e da aplicao.

Responsveis:
Engenheiro de Qualidade Web: auxilia na definio dos critrios de validao
de acordo com os procedimentos e normas de qualidade.
Gerente do projeto: identifica os itens que sero validados, define recursos,
responsabilidades e prazos.
Arquiteto de software: identifica os itens de software a serem validados, define
mtodos, ferramentas, ambiente e outros recursos utilizados.
Diretor de criao: identifica os itens de apresentao, estrutural e de
navegao a serem validados, define mtodos, ferramentas, ambiente e outros
recursos utilizados.

Sadas do Planejamento da Validao:
Diretrizes de validao: desenvolvidas para conduzir as atividades e tarefas
envolvidas no processo. Descrevem responsabilidades, procedimentos,
ambiente, tarefas e recursos necessrios para implementar e executar o
processo de Validao.

O Quadro 11 apresenta as tarefas da atividade.

Quadro 11: Tarefas de Planejamento de Validao
Atividades Planejamento de Validao
Meta

Criar uma estrutura organizacional adequada para a realizao do processo de
Validao.

77
Atividades Planejamento de Validao
Tarefas

1.Identificar Procedimentos e Normas de Qualidade aplicveis no processo de
Validao.
A partir dos procedimentos e normas so definidos alguns critrios de
validao.
2.Identificar as relaes com as atividades do processo de Garantia de
Qualidade.
3.Analisar os requisitos do projeto para estabelecer procedimentos, produtos e
responsabilidades para a validao.
Definir os nveis de teste; elaborar estratgias para validao de
funcionalidades, da apresentao, contedo, navegao, performance
e infra-estrutura (servidores e conectividade); definir mtodos de teste
para cada item; estabecer quando e quem executaria os testes; e
definir quanto de esforo ser utilizado. Utilizar testes automatizados.
4. Preparar o ambiente de teste .
Preparar o ambiente de teste de acordo com as especificaes
necessrias para reproduzir o ambiente real.
5. Determinar como o cliente realizar os testes de aceite da aplicao.
6. Elaborar as diretrizes de validao, identificando as tarefas, recursos e as
responsabilidades. As diretrizes so aprovadas pelo gerente do projeto.


Validao

Definio: consiste na validao dos produtos atravs do plano definido para o
processo.


Esta atividade relativa validao propriamente dita. As aplicaes Web variam
muito em funcionalidades, apresentao e questes dos usurios. As aplicaes so dinmicas
em sua natureza e requerem uma robusta metodologia de teste.

A produo de produtos intermedirios no desenvolvimento de aplicaes Web
grande e diversificado, o que aumenta o nmero de elementos a serem validados, assim como
aumenta o nmero de possibilidades de erro.

A Figura 19 apresenta os artefatos de entrada e sada, e os responsveis pela atividade.



78














Figura 19: Validao: artefatos e responsveis


Entradas para a Validao:
Plano de validao: a validao conduzida de acordo com as diretrizes
determinadas para o processo.
Produtos: os produtos e seus requisitos que sero validados.

Responsveis:
Gerente do projeto: acompanha a realizao dos testes e toma as providncias
nos casos de no conformidades e erros.
Testador: realiza os testes da aplicao.
Cliente: a cada entrega de novas funcionalidades ou novas verses, o cliente
responsvel em test-las e aceit-las ou no, no caso de erros ou falhas.

Sadas da Validao:
Resultados da validao: aps as validaes, os resultados so documentados.
Problemas e no conformidades encontrados devem ser encaminhados
inicialmente ao responsvel pelo produto testado. Porm, se os erros no forem
consertados, ou problemas forem de alto risco, ou afetarem outros produtos
devem ser encaminhados ao processo de Resoluo de Problemas.

O Quadro 12 apresenta as tarefas da atividade.

Plano de Validao
Produtos e processos a
serem validados

Gerente de Projeto
Testador
Cliente

Resultados da validao

Entradas Responsveis Sadas
79

Quadro 12:Tarefas de Validao
Atividades Validao
Meta

Determinar se o produto satisfaz o uso pretendido.


Tarefas
1.Selecionar os requisitos de teste, preparar os casos de teste e especificaes
para analisar os resultados do teste.
2.Dividir a aplicao em unidades testveis
Essas unidades refletem o comportamento da aplicao. O
comportamento dividido em um conjunto de sub-comportamentos
representado por vrios objetos integrados.
3. A aplicao testada para todas as funcionalidades e entrega de contedo.
A validao foca nas aes dos usurios e nas sadas aceitveis.
Casos de uso apiam a derivao dos testes de validao.
4. As pginas e seus componentes so testados.
Cada pgina contm contedo, links e elementos de processamento
(formulrios e scripts). O foco de teste dirigido pelo contedo.
5. O modelo de projeto revisado para descobrir erros de navegao.
Casos de uso permitem exercitar cada cenrio contra o projeto
arquitetural e navegacional. A utilizao de ferramentas agiliza o
processo e garante consistncia nos testes.
6. O contedo validado.
Necessrio para identificar erros de inconsistncia de contedo, de
representao e de erros gramaticais.
7. A aplicao testada sob diferentes configuraes.
Testes so realizados com cada possibilidade definida para sistemas
operacionais, tipos de browsers, protocolos de comunicao e
plataformas de hardware.
8. Realizar teste de performance.
Pretende-se identificar tempo de resposta, nmero mximo de usurios
concorrentes que a aplicao pode suportar sem causar falha no
sistema, tempo de carga do contedo da aplicao e gargalos na
arquitetura.
9. A aplicao testada por uma populao que representa o perfil dos
usurios finais.
O resultado da interao com a aplicao avaliado.
10. O cliente realiza os testes
A aplicao implantada para testes no ambiente do cliente ou ela
testada remotamente. Aps os testes, o cliente aprova o produto/
aplicao final ou rejeita e solicita correes.
11.Documentar resultados e encaminhar erros e no conformidades ao
processo de Resoluo de Problemas.





80
4.2.8 Garantia da Usabilidade 4.2.8 Garantia da Usabilidade 4.2.8 Garantia da Usabilidade 4.2.8 Garantia da Usabilidade

Definio: Usabilidade o processo para garantir os interesses e necessidades do
usurio e da organizao, melhorando a produtividade e a qualidade de uso da
aplicao Web e reduzindo as chances de rejeio do usurio com a aplicao.


Uma caracterstica de qualidade de grande importncia para o sucesso de uma
aplicao Web a usabilidade. O valor da usabilidade amplamente conhecido, diversos
pesquisadores tm descrito seu benefcio para o usurio, para o desenvolvedor e para a
organizao. A usabilidade de uma aplicao no apenas lida com a interface do usurio, est
tambm relacionada com toda a estrutura do software e com os conceitos na qual a aplicao
baseada.

Dessa forma, os desenvolvedores devem alinhar os objetivos de usabilidade com o
desenvolvimento Web. Por isso, aqui apresentado um processo para apoiar a integrao
com o desenvolvimento e garantir a alta qualidade da experincia do usurio com a aplicao.

A Figura 20 apresenta as atividades do processo.








Figura 20: Atividades de Garantia de Usabilidade




Garantia de
Usabilidade
Planejamento da
Usabilidade
Usabilidade
81
Planejamento da Usabilidade

Definio: esta atividade planeja as tarefas do processo de Usabilidade. Especifica
como as atividades so integradas com os outros processos do ciclo de vida da
aplicao.

Os procedimentos definidos no plano de usabilidade devem ser realizados ao longo do
ciclo de desenvolvimento do projeto.

A Figura 21 apresenta as entradas, responsveis e sadas da atividade.










Figura 21:Planejamento de Usabilidade: artefatos e responsveis


Entradas para o Planejamento da Usabilidade:
Requisitos do projeto: de acordo com os requisitos so identificadas as
funcionalidades, os atributos de qualidade, o perfil do usurio e o ambiente,
nos quais so baseados para a definio das tarefas para o processo.
Requisitos organizacionais: determina os critrios de sucesso de usabilidade
para a aplicao em termos de tarefas dos usurios. Determina restries e
algumas diretrizes para o projeto.

Responsveis:
Gerente do projeto: planeja as atividades de Usabilidade e define a integrao
das atividades do processo de Usabilidade dentro de todo o desenvolvimento.
Diretor de Criao, arquiteto de informao e Web designer: planejam as
atividades de Usabilidade, definem tcnicas e mtodos de desenvolvimento
Requisitos do projeto
Requisitos organizacionais


Gerente de Projeto
Diretor de criao
Arquiteto de informao
Web Designer

Plano de Usabilidade

Entradas Responsveis Sadas
82
centralizado no usurio, analisas o perfil dos usurios e identificam seus
atributos.

Sadas do Planejamento de Usabilidade:
Plano de Usabilidade: desenvolvido para conduzir as atividades e tarefas
envolvidas no processo. Descrevem responsabilidades, procedimentos,
ambiente, tarefas e recursos necessrios para implementar e executar o
processo de Usabilidade.

O Quadro 13 apresenta as tarefas da atividade.

Quadro 13: Tarefas de Planejamento de Usabilidade
Atividades Planejamento da Usabilidade
Meta

Criar um plano e uma estrutura organizacional adequada para a realizao do
processo de Usabilidade.

Tarefas

1. Selecionar os mtodos e tcnicas de desenvolvimento centralizados nos
usurios.
2. Planejar as atividades de Usabilidade.
So analisados os requisitos do projeto e organizacionais, para
identificar os atributos e objetivos de Usabilidade e definir atividades
para garantia desses atributos.
3. Estabelecer a integrao das atividades de Usabilidade nos processos de
desenvolvimento da aplicao.
O desenvolvimento deve ser direcionado de acordo com as
necessidades de Usabilidade.
4. Estabelecer e garantir o gerenciamento das atividades de Usabilidade e
definir responsabilidades.
5. Gerar um plano de Usabilidade, que deve ser aprovado pelo gerente e
distribudo a toda a equipe.


Usabilidade

Definio: a atividade garante a execuo do plano definido para o processo e executa
tarefas para alcanar a qualidade esperada da experincia dos usurios com a
aplicao.

83
Para o sucesso do projeto, necessrio que os atributos de Usabilidade estejam
definidos e garantidos em todas as atividades do ciclo de desenvolvimento.

A Figura 22 apresenta as entradas, responsveis e sadas da atividade.











Figura 22: Usabilidade: artefatos e responsveis

Entradas para Usabilidade:
Plano de usabilidade: de acordo com as atividades e responsabilidades
definidas no plano de Usabilidade a atividade executada.
Requisitos do projeto: de acordo com os requisitos so identifadas as
funcionalidades, os atributos de qualidade, o perfil do usurio, o ambiente de
uso e para que o produto ser utilizado. E dessa forma os projetos arquitetural,
navegacional e de contedo so criados.
Requisitos organizacionais: determina os critrios de sucesso de usabilidade
para a aplicao em termos de tarefas dos usurios. Determina restries e
algumas diretrizes para o projeto.

Responsveis:
Gerente do projeto: garante e gerencia a execuo das tarefas de Usabilidade
definidas para o projeto.
Diretor de Criao: coordena e desenvolve os projetos arquitetural,
navegacional e de contedo, identifica perfil do usurio e estabelece as
diretrizes para a criao da identificao visual e cognitiva da aplicao.
Arquiteto de Informao: estabelece a organizao da informao dentro de
cada pgina da aplicao e desenvolve os projetos arquitetural e navegacional.
Plano de usabilidade
Requisitos do projeto



Gerente de Projeto
Diretor de criao
Arquiteto de informao
Web Designer

Entradas para outros
processos
Problemas e no
conformidades

Entradas Responsveis Sadas
84
Web designer: cria as pginas de acordo com as definies de componentes
estabelecidos..

Sadas de Usabilidade:
Entradas para outros processos: a atividade de garantia de Usabilidade, gera
produtos que so utilizados por outros processos. Por exemplo, requisitos para
o projeto da arquitetura do software.
Problemas e no conformidades: se durante a execuo das tarefas de
Usabilidade, forem encontrados problemas ou no-conformidades, esses
devem ser reportados ao processo de Resoluo de Problemas.

O Quadro 14 apresenta as tarefas de Garantia de Usabilidade.
Quadro 14: Tarefas de Usabilidade
Atividades Usabilidade
Meta

Garantir a alta qualidade da usabilidade da aplicao Web.


Tarefas

1. Entender e especificar o contexto do uso da aplicao e estabelecer seu
objetivo.
2. Analisar as especificaes de requisitos da aplicao e organizacionais.
3. Estabelecer o perfil dos usurios
Quando a aplicao Web para residir numa intranet ou extranet, a
identificao do perfil dos usurios mais fcil, pois os usurios so
definidos. No caso de aplicaes que esto na rede mundial, o perfil
mais complexo e deve ser definido baseado em questes que podem
mais caracteriz-los de acordo com os objetivos da aplicao.
Exemplos, aplicaes de instituies bancrias, perfil dos correntistas;
portais para crianas, idade; aplicaes para revistas femininas, sexo
e idade.
4. Desenhar layouts, criar apresentaes estticas de pginas e desenhar
contedos. Apresent-los para o cliente e aprov-los.
5. Criar um prottipo, apresentar para o cliente e valid-lo.
O prottipo criado numa arquitetura simplificada. Somente um
conjunto de pginas so implementadas manualmente contendo
amostras do contedo da aplicao e da esttica, simula o desejo da
aparncia e comportamento.
6. Desenvolver os projetos arquitetural, navegacional e de contedo e avali-
los se esto de acordo com os requisitos.
7. Aplicar testes para avaliar performance, consistncia do projeto, contedo
da informao e estrutural, de acordo com as atividades de Validao.
8. Encaminhar problemas ou no conformidades ao processo de Resoluo de
Problemas.

85

4.2.9 Gerenciamento de Configurao 4.2.9 Gerenciamento de Configurao 4.2.9 Gerenciamento de Configurao 4.2.9 Gerenciamento de Configurao

Definio: o processo de Gerenciamento de Configurao visa identificar e controlar
as modificaes de itens do projeto e recuper-los do respositrio, garantir que a
mudana est sendo realizada da maneira apropriada e reportar as mudanas para os
interessados.
Gerenciamento de Configurao um processo fundamental para o desenvolvimento
de aplicaes Web. Mudanas imprprias e sem controle causam problemas no s
localmente, mas propaga o erro por diversas aplicaes e afeta o trabalho de toda a equipe,
assim como, de milhares de usurios.
Como dito, as aplicaes Web so baseadas em contedo multimdia. O desafio
organiz-lo de maneira racional num conjunto de objetos de configurao e estabelecer
mecanismos apropriados de controle para esses objetos.
As ferramentas de apoio ao gerenciamento de configurao tm que lidar com o
controle de verses de imagens, som e udio, sabendo-se que muito complexo mostrar
diferenas entre esses elementos.
muito importante tambm o controle de verso da infra-estrutura definida na
aplicao, pois ela solicitada por diversas aplicaes associadas com diferentes sistemas
operacionais, browsers e plataformas. Ento, para quaisquer problemas na qual se deseje
voltar alguma verso da aplicao, o controle de configurao da infra-estrutura deve estar
assegurado.
A Figura 23 apresenta as atividades do processo.







86
















Figura 23: Atividades de Gerenciamento de Configurao

Planejamento da Configurao

Definio: a atividade de planejamento responsvel em estabelecer uma estrutura
organizacional adequada para a realizao do processo de Gerenciamento de
Configurao.
A Figura 24 apresenta as entradas, responsveis e sadas.




Gerenciamento de
Configurao
Planejamento da
Configurao
Identificao da
Configurao
Controle da Configurao Relato da Situao da
Configurao
87

















Figura 24: Planejamento de Configurao: artefatos e responsveis


Entradas para o Planejamento da Configurao:
Plano de projeto: descreve todo o planejamento do projeto, as tarefas
envolvidas, os produtos produzidos, papis e prazos. De acordo com os
produtos produzidos e os prazos so estabelecidos os procedimentos do
gerenciamento de configurao.

Responsveis:
Gerente do projeto: descreve o escopo do projeto, identifica as
responsabilidades e autoridades para realizar as atividades de gerenciamento de
configurao.
Engenheiro de Configurao: identifica ferramentas, recursos e as atividades a
serem executadas no processo.

Sadas do Planejamento de Configurao:
Plano de Gerenciamento de Configurao: descreve os procedimentos, prazos,
responsabilidades e atividades relacionadas a implantao e administrao do
processo.

O Quadro 15 apresenta as tarefas da atividade.


Plano de projeto


Gerente de Projeto
Engenheiro de
Configurao

Plano de gerenciamento de
configurao

Entradas Responsveis Sadas
88
Quadro 15: Tarefas de Planejamento de Configurao
Atividades Planejamento do Gerenciamento de Configurao
Meta

Gerar um plano de gerenciamento de configurao.
Tarefas

1. Descrever o escopo da aplicao.
2.Estabelecer as atividades e procedimentos a serem executados no processo
de Gerenciamento de Configurao.
3.. Identificar as responsabilidades e autoridades para realizar as atividades.
4. Identificar a coordenao necessria das atividades deste processo com as
outras atividades do projeto.
5. Identificar ferramentas e recursos fsicos para a execuo das atividades.
A dificuldade est em estabelecer ferramentas e mecanismos
apropriados para o controle de itens que envolvem contedo
multimdia.
7. Gerar um plano de Gerenciamento de Configurao, que deve ser aprovado
pelo gerente do projeto.


Identificao da Configurao

Definio: estabelecido um esquema para a identificao dos itens e de suas verses a
serem controlados.
A Figura 25 apresenta as entradas, responsveis e sadas.









Figura 25: Identificao de Configurao: artefatos e responsveis.



Plano de Gerenciamento de
Configurao
Plano de Projeto


Gerente de Projeto


Lista de itens a serem
controlados.

Entradas Responsveis Sadas
89
Entradas para Identificao da Configurao:
Plano de Gerenciamento de Configurao: de acordo com o Plano de
Gerenciamento de Configurao, so executadas as atividades.
Plano de projeto: de acordo com os produtos produzidos so estabelecidos os
itens a serem gerenciados no processo.

Responsveis:
Gerente do projeto: identifica os itens a serem gerenciados no processo.

Sadas:
Lista de Itens: os itens de configurao so listados e divulgados para que
assim que ultrapassar uma baseline, os itens sejam colocados sob
gerenciamento de configurao.

O Quadro 16 apresenta as tarefas da atividade

Quadro 16: Tarefas de Identificao de Configurao
Atividades Identificao da Configurao
Meta Definir os itens de software que sero controlados durante o projeto.
Tarefas

1. Definir os itens de configurao que sero colocados sob controle de
configurao.
Os itens podem ser cdigos fontes, documentos de projeto, tipos de
browsers suportados pela aplicao, verses de componentes,
contedos, verses de mdias, etc.
2. Estabelecer um esquema para identificar unicamente cada item sob controle
de configurao, assim como o relacionamento entre os itens.
3. Estabelecer as baselines (linhas de referncia).
4. Descrever como cada item ser arquivado e recuperado.

Controle da Configurao

Definio: abrange o controle das requisies de alteraes dos itens sob controle de
configurao e avaliaes dessas alteraes.
A Figura 26 apresenta as entradas, responsveis e sadas da atividade.

90












Figura 26: Controle de Configurao: artefatos e sadas


Entradas para Controle da Configurao:
Plano de Gerenciamento de Configurao: de acordo com esse plano, so
executadas as atividades.
Pedido de alterao de um item: pedido de alterao de um item que j passou
pela linha de referncia.

Responsveis:
Gerente do projeto: aprova ou rejeita o pedido de alterao e avalia o item
modificado.
Gerente de configurao: gerencia a permisso para retirar os itens de
configurao necessrios do repositrio e o disponibiliza.

Sadas:
Deciso sobre o pedido de alterao: o gerente de projeto analisa o pedido e
toma a deciso sobre esse pedido.
Item que ser alterado: itens so retirados aps aprovao do Gerente.
Problemas e no-conformidades: problemas encontrados durante a deciso do
pedido ou alteraes erradas, por exemplo, alteraes de alto risco, devem ser
encaminhados ao processo de Resoluo de Problemas.
Plano de Gerenciamento de
Configurao
Pedido de alterao de um
item


Gerente de Projeto
Gerente de Configurao


Deciso sobre o pedido de
alterao
Item a ser modificado
Problemas e no
conformidades encontradas
Entradas Responsveis Sadas
91

O Quadro 17 apresenta as tarefas do processo.

Quadro 17: Tarefas de Controle de Configurao
Atividades Controle da Configurao
Meta
Avaliar os pedidos de mudana, de acordo com os procedimentos definidos, e
disponibilizar o item para modificao.
Tarefas

1. Avaliar o pedido de alterao e relatar os resultados da avaliao.
A alterao deve ser avaliada em relao as necessidades reais de
mudanas no item, ao risco de alteraes e impacto no projeto. O
pedido s necessrio no caso dos itens que j passaram por uma
baseline, antes os documentos so alterados livremente de acordo com
a autoridade sobre o documento.
2. Tomar a deciso sobre o pedido de alterao.
3. Se o pedido for aceito
Definir prioridade de execuo do pedido;
Disponibilizar o item na rea de trabalho (check out);
Realizar as alteraes de acordo com a aprovao do gerente do
projeto;
Avaliar os aspectos modificados de cada item de acordo com o
processo de Verificao;
3. Verificar se o projeto e a documentao esto atualizados.
4. Encaminhar problemas e no conformidades ao processo de Resoluo de
Problemas.


Relato da Situao da Configurao

Definio: o objetivo relatar a todas as pessoas envolvidas no desenvolvimento e
manuteno da aplicao Web informaes sobre as alteraes na configurao.

A Figura 27 apresenta as entradas, responsveis e sadas da atividade.



92















Figura 27: Relato da Situao da Configurao: artefatos e responsveis

Entradas para Relato da Situao da Configurao:
Plano de Gerenciamento de Configurao: de acordo com esse plano, so
executadas as atividades.
Item alterado: o item alterado, que j passou por uma baseline, armazenado
no repositrio.

Responsveis:
Gerente de Configurao: armazena o item alterado e faz os relatrios sobre a
configurao do projeto.

Sadas:
Item alterado: a verso atualizada do item enviada aos envolvidos com o
item.
Relatrios sobre a situao da configurao do projeto: deve incluir o nmero
de mudanas de um projeto, o responsvel pelas alteraes, o que e quando
ocorreu, o que ser afetado e as ltimas verses dos itens.

O Quadro 18 apresenta as tarefas da atividade.




Plano de Gerenciamento de
Configurao
Item alterado


Gerente de Configurao


Item alterado
Relatrio da situao da
configurao do projeto
Entradas Responsveis Sadas
93
Quadro 18: Tarefas de Relato da Situao da Configurao
Atividades Relato da Situao da Configurao
Meta

Armazenar o item alterado e gerar um relatrio com as alteraes dos itens de
configurao.


Tarefas

1. Aps a aprovao da verificao da alterao do item, armazenar os itens de
configurao alterados no repositrio (check in).
2. Gerar um relatrio sobre as alteraes ocorridas.
Descrever o responsvel pelas alteraes, o que e quando ocorreu, o
que ser afetado e as ltimas verses dos itens.
3. Divulgar o relatrio aos interessados e aos responsveis pela atividade que
executa tarefas sobre os itens que foram modificados.


4.2.10 Resoluo de Problemas 4.2.10 Resoluo de Problemas 4.2.10 Resoluo de Problemas 4.2.10 Resoluo de Problemas

Definio: este processo tem o objetivo de analisar e resolver os problemas, qualquer que
seja sua origem e natureza, que so encontrados durante o ciclo de vida da aplicao.

A produo de produtos intermedirios no desenvolvimento de aplicaes Web
grande e diversificado, o que aumenta o nmero de elementos a serem verificados e
validados, assim como aumenta o nmero de possibilidades de erro.
Como as aplicaes Web interagem com diferentes sistemas operacionais, browsers,
hardware, plataformas, e protocolos de comunicao, a busca pela origem e motivos dos erros
representa um desafio.
Nas aplicaes Web, mais difcil de isolar o erro devido ao sistema ser multi-
camadas e tambm de se resolver, pois, geralmente, a propagao de um erro atravs das
camadas e dos elementos de processamento grande devido ao inter-relacionamento entre
eles.
Como as aplicaes so acessadas por milhares de usurios, se o erro no for
identificado antes da entrega da aplicao final, o problema pode ser grave. Por exemplo, o
94
clculo errado de um produto vendido numa aplicao de comrcio eletrnico, causa grandes
prejuzos financeiros. Erros que atingem o usurio final causam desgastes da imagem da
organizao, alm de questes legais e sociais.
A Figura 28 apresenta as atividades do processo.





Figura 28: Atividades de Resoluo de Problema

Planejamento de Resoluo de Problemas

Definio: a atividade de planejamento responsvel em estabelecer uma estrutura
organizacional adequada para a realizao do processo de Resoluo de Problemas.
A Figura 29 apresenta as entradas, responsveis e sadas da atividade.









Figura 29: Planejamento da Resoluo de Problemas: artefatos e responsveis

Normas, mtodos, padres
e procedimentos da
empresa.


Gerente de Qualidade
Gerente de Projeto


Plano de Resoluo de
Problemas
Entradas Responsveis Sadas
Resoluo de
Problemas
Planejamento da Resoluo
de Problemas
Resoluo de Problemas
95



Entradas para Planejamento de Resoluo de Problemas:
Normas, mtodos, padres e procedimentos da empresa: as tarefas definidas
para o processo de Resoluo de Problemas, so criadas respeitando as normas
e procedimentos da empresa frente a um problema.

Responsveis:
Gerente de Qualidade Web: auxilia na definio de tarefas visando tratar tanto
problemas de produto quanto de processos.
Gerente de Projeto: determina prazos e meios para garantir que os problemas
sejam analisados e resolvidos.

Sadas:
Plano de Resoluo de Problemas: estabelece procedimentos,
responsabilidades e prazos para a anlise e soluo dos problemas.

O Quadro 19 apresenta as tarefas da atividade.
Quadro 19: Tarefas de Planejamento de Resoluo de Problemas
Atividades Planejamento de Resoluo de Problemas
Meta

Gerar um plano para a execuo do processo de Resoluo de Problemas.


Tarefas

1..Estabelecer as atividades e procedimentos a serem executados no processo
de Resoluo de Problemas.
2. Definir um esquema para categorizar e priorizar os problemas.
3. Estabelecer o relacionamento das atividades de Resoluo de Problemas
com as atividades de outros processos.
4. Determinar para quais tipos de problema e qual o momento de envolver o
cliente.
5. Garantir que aps a deteco de um problema, ele seja rapidamente
notificado, as causas detectadas e se possvel eliminadas.
6. Gerar um plano de Resoluo de Problemas aprovado pelo gerente.



96
Resoluo de Problemas

Definio: atividade que garante a investigao, anlise e identificao, e se possvel, a
eliminao de um problema.
A Figura 30 apresenta as entradas, responsveis e sadas da atividade.










Figura 30: Resoluo de Problemas: artefatos e responsveis



Entradas para Resoluo de Problemas:
Plano de Resoluo de Problema: de acordo com o plano, a atividade
executada.
Problema e no conformidade: problema encontrado em alguma fase do
projeto que no tenha sido resolvido dentro do prprio processo que o
identificou.

Responsveis:
Gerente de Projeto: identifica o problema e define as aes a serem tomadas e
os profissionais que sero envolvidos.

Sadas:
Relatrio sobre o problema: registrar o problema, sua causa, os riscos, quais
produtos ou processos afetados e qual a soluo tomada.
Plano de Resoluo de
Problemas
Problema ou no
conformidade


Gerente de Projeto


Relatrio sobre o problema
Entradas Responsveis Sadas
97

O Quadro 20 apresenta as tarefas de Resoluo de Problemas.

Qaudro 20: Tarefas de Resoluo de Problemas

Atividades Resoluo de Problemas
Meta

Identificar, avaliar e resolver um problema.


Tarefas

1. Analisar o problema para identificar os danos e riscos causados.
2. Categorizar e priorizar a investigao do problema, de acordo com o
esquema definido.
3. Investigar as causas do problema e avaliar quais produtos ou processos so
afetados.
Avaliar em qual camada (negcio, de contedo ou de fonte de dados)
da aplicao o processo originado e verificar se propaga para outras
camadas. Verificar se o erro de contedo, de navegabilidade,
funcionalidade, de projeto, ou seja, onde os requisitos no esto sendo
atendidos.
Se o problema for detectado com a aplicao j em uso, avaliar
questes legais e sociais sobre os danos causados. Avaliar riscos para
os usurios.
4. Planejar a soluo do problema, avaliando custos, riscos de alteraes e
impactos no projeto.
5. Solucionar o problema ou no conformidade.
6. Rever o planejamento do projeto.
7. Gerar um relatrio sobre o problema e aes tomadas e encaminh-lo ao
responsvel que o relatou.






4.2.11 Acompanhamento de Projeto 4.2.11 Acompanhamento de Projeto 4.2.11 Acompanhamento de Projeto 4.2.11 Acompanhamento de Projeto

Definio: tem o objetivo de acompanhar o projeto para fornecer visibilidade adequada do
progresso das atividades para tomar medidas efetivas se no estiverem de acordo com os
palnos estabelecidos.

O gerenciamento de projetos Web complexo, pois envolve a gesto de equipe
multifuncionais, o desenvolvimento de diversos produtos intermedirios, concilia diversas
98
fontes de necessidades, geralmente envolve terceirizao, e principalmente muitas iteraes
com o cliente.
Por isso, o processo de acompanhamento muito importante para obter controle
global do projeto e, em caso de problemas, a mudana adequada da direo do projeto ou de
um planejamento alternativo.

A Figura 31 apresenta as atividades do processo.









Figura 31: Atividades de Acompanhamento de Projeto

Planejamento de Acompanhamento de Projeto

Definio: tem o objetivo de estabelecer uma estrutura organizacional adequada para
implementar o processo de Acompanhamento de Projeto.
A Figura 32 apresenta as entradas, responsveis e sadas da atividade.










Figura 32: Planejamento de Acompanhamento de Projeto: artefatos e responsveis
Planejamento de projeto
Planos gerados para os
processos


Gerente de projeto


Plano de Acompanhamento
de projeto
Entradas Responsveis Sadas
Acompanhamento
de Projeto
Planejamento de
Acompanhamento de Projeto
Acompanhamento de
Projeto
99

Entradas para Planejamento de Acompanhamento de Projeto:
Planejamento de projeto: analisado para identificar as atividades adequadas
para o acompanhamento de projeto e estabelecer responsabilidades e prazos
para o acompanhamento.
Planos gerados para os processos: os planos de processos, gerados nas
atividades de planejamento de cada processo, so analisados para estabelecer
atividades que devem ser checadas em relao a cumprimento de execuo e
prazos.

Responsveis:
Gerente de projeto: estabelece as tarefas, procedimentos, responsabilidades e
prazos para o processo.

Sadas:
Plano de acompanhamento de projeto: desenvolvido para conduzir as
atividades e tarefas envolvidas no processo. Descreve responsabilidades,
procedimentos e recursos necessrios para implementar o processo.

O Quadro 21 apresenta as tarefas da atividade.
Quadro 21: Tarefas de Planejamento de Acompanhamento de Projeto
Atividades Planejamento de Acompanhamento de Projeto
Meta

Gerar um plano para a implementao e execuo do processo de
Acompanhamento de Projeto.

Tarefas

1.Analisar os planos dos processos e planejamento de projeto para estabelecer
as tarefas iniciais do processo.
2.Definir responsabilidades, procedimentos e ferramentas para o
implementao e execuo do processo.
3.Estabelecer a periodicidade de reunies com o cliente.
4.Estabelecer a periodicidade de reunies de acompanhamento de projeto com
a equipe de desenvolvimento e outros que afetam o projeto.
5.Estabelecer produtos e marcos no projeto para reviso.
6. Com as definies acima, gerar um plano de acompanhamento de projeto.



100
Acompanhamento de Projeto

Definio: realiza o acompanhamento de projeto, verificando atividades e produtos se
esto no prazo e de acordo com o estabelecido.
A Figura 33 apresenta as entradas, responsveis e sadas da atividade.











Figura 33: Acompanhamento de Projeto: artefatos e responsveis

Entradas para Acompanhamento de Projeto:
Plano de Acompanhamento: o acompanhamento realizado de acordo com o
estabelecido no plano.
Planejamento de projeto: as atividades, recursos e prazos do planejamento de
projeto so controlados para alcanar os resultados esperados.

Responsveis:
Gerente de projeto: realiza o acompanhamento de projeto avaliando atividade,
produtos, pessoas e outros recursos.

Sadas:
Relato da situao do projeto: informe sobre o progresso das atividades e a
adequao dos produtos aos requisitos.
Novo planejamento de projeto: no caso de problemas ou mudanas no projeto,
um novo planejamento de projeto criado.

O Quadro apresenta as tarefas da atividade.
Plano de Acompanhamento
de projeto.
Planejamento de projeto


Gerente de projeto.


Relato da situao do
projeto.
Novo planejamento de
projeto (se necessrio).
Entradas Responsveis Sadas
101
Quadro 22: Tarefas de Acompanhamento de Projeto
Atividades Planejamento de Acompanhamento de Projeto
Meta
Controlar o projeto para identificar problemas no progresso das atividades e
produtos.

Tarefas

1.Realizar reunies peridicas com a equipe, cliente e envolvidos no projeto
para determinar a situao do projeto, identificar problemas e alteraes.
2. Avaliar se o progresso das atividades est de acordo com os prazos
estabelecidos.
3. Avaliar se os recursos esto de acordo com as habilidades necessrias e
alocados adequadamente.
4.Avaliar questes de risco no projeto.
5. A cada ciclo de desenvolvimento validar os requisitos do projeto.
Como o desenvolvimento de aplicaes Web segue um modelo
interativo e incremental, a cada ciclo necessrio validar os requisitos
que foram levantados e no executados no ciclo anterior, pois com a
evoluo da aplicao, os requisitos mudam e os anteriores podem no
mais serem necessrios.
6. Identificar a necessidade alteraes no planejamento de projeto.

4.1 Consideraes Finais
Neste captulo foram apresentados os Processos de Apoio propostos no trabalho. Os
Processos foram baseados nos Processos da Norma ISO/IEC 12207.

Para verificar a aplicabilidade dos Processos propostos, no prximo captulo
apresentado um estudo de caso.
102
Captulo 5: Aplicabilidade dos
Processos de Apoio
5.1 Consideraes Iniciais


Neste captulo, apresentado o estudo de caso conduzido para a verificao da
aplicabilidade dos Processos de Apoio definidos no trabalho.

Para tanto, escolheu-se uma empresa de pequeno porte, com cerca de 30 funcionrios,
desenvolvedora de software com projetos Web para clientes com variados tipos de negcios.
A empresa demonstrou bastante interesse no estudo, pois estava engajada na definio e
melhoria de seus processos de desenvolvimento de aplicaes Web, principalmente os de
Apoio.

Ressalta-se que o principal objetivo do Estudo de Caso verificar a adequao dos
processos ao desenvolvimento das aplicaes Web, ou seja, se podem ser utilizados num
ambiente real e se servem como guia para a definio de melhores processos de apoio ao
desenvolvimento das aplicaes. No o intuito fazer uma avaliao completa com medies,
comparaes com outros processos de mesma natureza ou avaliaes de performance e
produtividade.


103
5.2 Estudo de Caso

O objetivo do estudo de caso verificar se os Processos de Apoio propostos, baseados
em conceitos tericos, poderiam ser aplicados numa situao prtica e se, realmente, dariam
apoio ao desenvolvimento de aplicaes Web num ambiente real de uma pequena empresa
para alcanar produtos com qualidade.

Sendo assim, os processos foram utilizados na empresa escolhida durante o
desenvolvimento de uma das funcionalidades de um grande projeto.

A seguir, so descritos os passos que foram necessrios na conduo do estudo de
caso:

Passo 1: Empresa. Escolher a empresa para o estudo de caso.

Passo 2: Metodologia da Empresa. Entrevistas informais com os diretores da
empresa, para conhecer a organizao, entender o negcio, sua metodologia e
papis de desenvolvimento.

Passo 3: Projeto. Escolher um projeto a ser desenvolvido que possusse as
caractersticas necessrias para que os Processos de Apoio definidos pudessem
ser utilizados e verificados.

Passo 4: Processos de Apoio. Apresentar para os integrantes da equipe de
desenvolvimento do projeto os Processos de Apoio definidos e aplic-los no
projeto.

Passo 5: Anlise dos Processos de Apoio. Entrevistar, informalmente, os
envolvidos com o estudo de caso, para colher depoimentos sobre os Processos
de Apoio propostos.



104
5.2.1 A Empresa 5.2.1 A Empresa 5.2.1 A Empresa 5.2.1 A Empresa

A empresa na qual foi feito o estudo de caso a Lcida. A Lcida uma provedora de
soluo em Web, oferecendo experincia e conhecimento no uso operacional, gerencial e
estratgico da Internet como ferramenta de negcios e relacionamento. Possui equipe para
atuar desde a concepo estratgica do produto at a sua contnua evoluo.

Localizada na cidade de So Paulo, a empresa apresenta relacionamentos comerciais
com clientes nacionais e internacionais de diversos tipos de negcios: telecomunicao
(telefonia fixa e de celular), segmento de cosmticos, de gneros alimentcios, uma rede de
hotis, portal de contedo de Web, uma grande indstria nacional de celulose e papel, entre
outras.

A Lcida dividida em quatro unidades de negcio independentes e especializadas.
Essas unidades atuam atravs de um processo metodolgico, adaptado s necessidades de
cada projeto.

As unidades de negcio da empresa so:

Grupo Lcida: possui a capacidade gerencial e estratgica para garantir o
sucesso de projetos de Internet.
Lcida Studio: trata-se da agncia interativa do grupo, com capacidades de
comunicao digital, marketing de relacionamento e identidade visual de
aplicaes Web.
Lcida Tecnologia: unidade focada no conhecimento tecnolgico das solues
Web. Possui especialistas em Web Services, Java,Net, bancos de dados, infra-
estrutura e integrao de sistemas.
Lcida Software: produz produtos, solues e componentes de negcio para
acelerar e otimizar projetos de Internet.


5.2.2 Metodologia da Empresa 5.2.2 Metodologia da Empresa 5.2.2 Metodologia da Empresa 5.2.2 Metodologia da Empresa

Apesar dos Processos de Apoio definidos serem independentes do modelo de
desenvolvimento utilizado pela empresa, necessrio conhecer a metodologia empregada
105
para que os Processos de Apoio sejam aplicados de forma consistente e adequados realidade
da empresa e para que quaisquer influncias de outros processos possam ser analisadas.

A metodologia utilizada pela Lcida para desenvolvimento de projetos resultado de
anlises e customizaes de algumas metodologias e frameworks de processo existentes, entre
eles: CMM, PMI, Agile Alliance, RUP e UML.

Existem trs grupos principais para classificao de qualquer atividade realizada ao
longo dos processos que compem a metodologia: Studio, Tecnologia e Gerncia.

O grupo Studio compreende as atividades relacionadas : usabilidade,
arquitetura de informao, marketing de relacionamento, criao, arte, redao
e desenvolvimento de interfaces.

O grupo Tecnologia compreende as atividades relacionadas ao
desenvolvimento de software em geral, incluindo: requisitos, anlise, projeto,
codificao, testes e deployment (entrega e implantao).

O grupo Gerncia compreende as atividades relacionadas gerncia de
projetos e de outras reas gerenciais referenciadas: gerenciamento de escopo,
gerenciamento de prazos, gerenciamento de custo, gerenciamento de recursos
e gerenciamento de subcontratao.


O que orienta a forma como a metodologia est estruturada a existncia dos ciclos de
desenvolvimento. Cada ciclo de desenvolvimento composto de iteraes, cada iterao
contempla um conjunto de requisitos e produz como resultado um sistema pronto para
aplicao.

Antes do incio de cada iterao do projeto, o planejamento feito no incio da iterao
anterior avaliado. Com base nos resultados desta avaliao feito o (re)planejamento da
iterao atual e o planejamento da prxima iterao.

A metodologia subdividia em dois grupos:

106
O subconjunto da metodologia, utilizada pelo grupo Studio, chamado de
CDD (Content-Driven Development), no qual os contedos do projeto
direcionam a execuo das tarefas.

O subconjunto da metodologia, utilizada pelo grupo Tecnologia, chamado de
FDD (Feature-Driven Development), onde as funcionalidades direcionam a
execuo das tarefas.

Os papis mapeados e utilizados nos processos que compem a metodologia da Lcida
so:

Arquiteto de Informao;
Arquiteto de Interface;
Arquiteto de Software;
Desenvolvedor de Interface;
Desenvolvedor de Tecnologia de Informao;
Diretor de Arte;
Diretor de Criao;
Diretoria de Projeto;
Engenheiro de Infraestrutura;
Gerente de Negcios;
Gerente de Projetos;
Gerente de Qualidade;
Gerente de Relacionamento;
Redator;


5.2.3 Projeto 5.2.3 Projeto 5.2.3 Projeto 5.2.3 Projeto

O estudo de caso foi realizado em um projeto, no qual o cliente era uma das maiores
empresas mundiais de Consultoria de Recuros Humanos (RH) e que necessitava da
automatizao de vrias funes de um dos seus departamentos.

Para determinar a escolha do projeto, os seguintes requisitos foram respeitados:
107

O produto final uma aplicao Web;

Todos os processos de apoio definidos poderiam ser utilizados durante o ciclo
de desenvolvimento do projeto;

Disponibilidade da equipe de desenvolvimento para utilizar os processos, o que
envolvia treinamento e entrevistas de acompanhamento;

A aplicao dos processos e a divulgao estavam de acordo com as polticas
de segurana de informao da empresa;

O prazo previsto para o projeto foi estimado em 12 meses, o que envolvia o
desenvolvimento de cerca de 20 funcionalidades. Porm, o estudo de caso foi aplicado,
somente, em uma delas com durao de 2 meses.

A funcionalidade, na qual o estudo de caso foi aplicado, deveria permitir a entrada de
informaes atravs de questionrios na Web. Esses questionrios seriam respondidos,
remotamente, por funcionrios da prpria empresa de Consultoria de RH e dos funcionrios
das empresas clientes dessa consultoria. Os questionrios so pesquisas que a Consultoria
realiza para posicionar as suas empresas clientes no mercado, em relao a dois assuntos:
cargos e salrios, polticas e benefcios dos funcionrios.

Os questionrios deveriam ser fceis de responder e impedir erros por parte do
usurio, e por isso possuam diversas regras de validao, que conduziam as respostas de
forma consistente. Alm das validaes de campos de moeda, intervalos de valores, campos
alfanumricos vlidos, dependncias entre perguntas e dependncias entre questionrios.

As perguntas dos questionrios deveriam ser organizadas e apresentadas nas pginas
da aplicao de maneira clara e concisa. Muitas perguntas eram relacionadas umas com as
outras e s apareciam nos questionrios de acordo com a resposta de perguntas anteriores.
Isso, implicou num grande esforo para garantir qualidade de apresentao de contedo.

Para melhor contextualizao, a Figura 34 ilustra o Modelo de Dados criado para a
funcionalidade dos Questionrios.
108

Figura 34: Modelo de Dados da Funcionalidade Questionrio.
109


5.2.4 Processos de Apoio 5.2.4 Processos de Apoio 5.2.4 Processos de Apoio 5.2.4 Processos de Apoio

No incio do estudo de caso, foram realizadas duas palestras explicando os conceitos
gerais da Norma ISO/IEC12207 para todos os funcionrios. Para no prejudicar o andamento
dos projetos da empresa, as palestras foram realizadas em dias no consecutivos na semana,
dividindo os funcionrios em dois grupos.

Tambm foram feitas entrevistas informais com os gerentes de projeto da empresa
para conhecer quais processos ou atividades de apoio j eram realizadas. Isso foi importante
para situar o conhecimento dos funcionrios em relao aos conceitos propostos no estudo.
No havia o intuito em relatar e comparar as atividades j aplicadas e as novas propostas, uma
vez que a avaliao de processos complexa e no era esse o objetivo. A Empresa j aplicava
algumas atividades de apoio, porm essas atividades no eram agrupadas num processo
definido e documentado, assim como, no eram claras as responsabilidades de cada papel na
execuo dessas atividades.

As atividades de apoio j realizadas estavam relacionadas com os processos de:
Validao, testes de funcionalidade, de integrao de arquiteturas, de navegao e de
contedo; Documentao, haviam alguns exemplos de documentos que eram seguidos pela
equipe: contrato, propostas de projeto, mapa de relacionamento entre as pginas, modelo de
dados, termos de aceite e WBS (work breakdown structure ou estrutura hierquica do
trabalho); e Usabilidade, arquitetura da informao, projeto das pginas, implementao
esttica das pginas, testes e atividades de aprovao de interfaces.

Aps a escolha do projeto, durante a fase de planejamento desse projeto e tendo
definido os integrantes da equipe, foram apresentados os conceitos referentes aos Processos
de Apoio propostos. Essa etapa, serviu para alinhar o conhecimento de todos aqueles que
seriam envolvidos e para concientiz-los da importncia de Processos de Apoio no
desenvolvimento de aplicaes Web.

Para a realizao dos Processos de Apoio propostos, o gerente do projeto, em reunies
dirias com a equipe, definia as atividades de apoio que seriam executadas em cada fase do
110
projeto. Nessas reunies dirias, tambm era questionado se as atividades estavam sendo
realizadas e se havia algum problema identificado.

De maneira geral todas as atividades foram realizadas, porm no foram gerados os
planos de planejamento de cada processo formalmente e foram criados alguns relatrios sobre
a execuo das atividades. Isso porque no houve tempo hbil para a documentao durante o
desenvolvimento do projeto e tambm o objetivo do estudo de caso era verificar a
aplicabilidade dos processos, como dito, no havia intuito de medies formais. Portanto, as
atividades foram seguidas como diretrizes e foram checadas informalmente pelo gerente.


5.2.5 Concluso do Estudo de Caso 5.2.5 Concluso do Estudo de Caso 5.2.5 Concluso do Estudo de Caso 5.2.5 Concluso do Estudo de Caso

A realizao do Estudo de Caso foi importante para verificar a aplicabilidade dos
Processos de Apoio propostos no trabalho, num ambiente real de uma pequena empresa.

A seguir, so apresentados os pontos fortes e pontos fracos sugeridos pela empresa
sobre aos Processos propostos. Ressalta-se que a determinao desses pontos, est relacionada
com a experincia dos profissionais tanto com os processos, quanto com a capacidade de
avaliao dos mesmos.

Pontos Fortes:

Os processos esto organizados de forma clara e concisa, fcil de entender e
seguir;
As atividades dos processos cobrem as etapas principais e importantes para
apoio ao desenvolvimento de projeto de aplicaes Web;
Os processos ajudam a definir papis e responsabilidades;
Os processos tornaram claros os objetivos a serem alcanados nas suas
execues e quais as atividades necessrias;
Os processos de Usabilidade, Validao e Acompanhamento de Projeto
foram essenciais para o projeto;
So um guia importante, principalmente, para as empresas que esto iniciando
a definio de seus processos;
111
Foi observado uma melhoria na documentao das etapas do projeto do
estudo de caso, comparado com outros projetos que no participaram do
estudo;


Pontos Fracos

Em algumas atividades, deveria apresentar mais detalhes, ou seja, aprofundar
os processos mais especificamente para os projetos Web. Principalmente para
os processos de Gerenciamento de Configurao, Resoluo de Problemas e
Documentao.
O processo de Gerenciamento de Configurao foi considerado complexo.
Os conceitos sobre os processos de Verificao e Validao deveriam ser
exemplificados, pois os dois so os que causam mais dvidas, pois so
entendidos como se fossem os mesmos.
No apresenta os relacionamentos, diretamente, com os outros processos de
desenvolvimento envolvidos no projeto;
Poderia sugerir ferramentas importantes para serem utilizadas durante os
processos e no seu acompanhamento;
Falta de mtricas de validao dos processos;
No utiliza outras referncias importantes de mercado como base para o
trabalho.




5.3 Consideraes Finais

Neste captulo, foram apresentados os resultados obtidos com o estudo de caso, que
pretendia verificar se o que foi definido exclusivamente sobre uma base terica, conteria as
condies para ser utilizado em uma situao prtica.

112
Alguns dos conceitos e das noes exigidas j estavam claros para os profissionais que
participaram do projeto, o que contribuiu tanto para a utilizao dos processos como para a
avaliao dos mesmos. Os profissionais mostraram-se comprometidos e engajados para
assimilarem novos conceitos que pudessem melhorar suas atividades. A empresa estava
empenhada em melhorar seus processos de desenvolvimento, e os Processos de Apoio seriam
parte integrante dessa melhoria.

O estudo demonstrou que os Processos de Apoio propostos contribuem com a
melhoria do desenvolvimento de aplicaes Web, apesar de que alguns pontos devem ser
aperfeioados e revistos. Portanto, os Processos de Apoio propostos podem auxiliar as
pequenas empresas a alcanar produtos com qualidade.
113
Captulo 6: Concluses e
Trabalhos Futuros

6.1 Concluses

A complexidade das aplicaes Web tem crescido consideravelmente. No inicio
concebidas para simples tarefas, tornaram-se um meio para criar sistemas complexos e
crticos. Aplicaes de comrcio eletrnico, aplicaes cientficas ou mdicas, so alguns
exemplos.

A relevncia econmica das aplicaes Web aumenta, significativamente, a presso
pela entrega de resultados rpidos. Com isso, os princpios de Engenharia de Software so
normalmente negligenciados pelos desenvolvedores de aplicaes Web que, geralmente,
utilizam tcnicas similares quelas ad hoc usadas pelos seus predecessores nos anos sessenta e
setenta, resultando em sistemas de baixa qualidade. Como consequncia, est crescendo a
demanda por metodologias e ferramentas de garantia de qualidade de aplicaes Web. Os
profissionais desta rea de conhecimento esto reconhecendo a necessidade em adaptar
princpios da Engenharia de Software para apoiar o desenvolvimento dessas aplicaes.

Dessa forma, neste trabalho, foram desenvolvidos processos para serem utilizados na
produo de aplicao Web, adaptados sua natureza evolutiva. Os processos propostos so
114
de apoio ao desenvolvimento dessas aplicaes, criando meios para auxiliar os profissionais a
definir seus papis e proporcionar s organizaes melhores entendimentos das atividades
envolvidas. Os processos propostos que integram pessoas, tarefas e mtodos provem a base
para garantir a qualidade da aplicao final.

Em relao ao desenvolvimento dos processos propostos, vale ressaltar que, sendo
baseados no princpio da evoluo, devem ser assim, entendidos como a primeira verso de
uma abordagem para apoiar a produo de aplicaes Web, por uma organizao de pequeno
porte. Sendo assim, os processos podem e devem ser melhorados, j que dependendo dos
projetos e da organizao produtora da aplicao, esses devem ser adaptados de acordo com
as suas necessidades. Alm do que, os processos propostos no englobam todas as tarefas ou
atividades e papis que so necessrios para garantir total cobertura de apoio ao
desenvolvimento das aplicaes Web, apesar do esforo empreendido neste trabalho, visto
que, como ressaltado, uma verso inicial.

O primeiro passo em direo s melhorias dos Processos de Apoio propostos foi a
realizao de um estudo de caso. O estudo de caso tinha como objetivo primordial verificar se
os processos, baseados em conceitos tericos, poderiam ser aplicados num ambiente real de
uma pequena empresa.

Com o estudo de caso, concluiu-se que as atividades dos processos propostos cobrem
as etapas principais e primordiais para o apoio ao desenvolvimento de projetos de aplicaes
Web, provando ser aplicvel em uma situao prtica. Porm, h falhas que devem ser
corrigidas. Os processos de Gerenciamento de Configurao, Documentao e Resoluo de
Problemas deveriam conter mais tarefas especficas para os projetos Web, os processos de
Validao e Verificao deveriam ter sido melhor exemplificados e faltaram sugestes de
ferramentas e mtricas para cada processo.

De maneira geral, os processos de apoio propostos auxiliam, como parte integrante de
melhorias contnuas, as pequenas empresas na definio de papis e responsabilidades, de
tarefas e atividades e na criao de uma estrutura organizacional para alcanar produtos Web
com qualidade.


115
6.2 Trabalhos Futuros
Para a melhoria dos processos de apoio desenvolvidos neste trabalho, sugerida a
continuao de pesquisas relacionadas com a qualidade desses processos, atravs dos
seguintes trabalhos:

Os processos propostos no apresentam nenhuma mtrica para medio dos
processos. Durante o estudo de caso, a nica mtrica utilizada foi o tempo gasto
em cada planejamento e execuo das atividades, para controle da empresa.
Porm, para a avaliao e melhoria de processos so necessrias mtricas
consistentes e que forneam resultados para validar se a meta de cada atividade foi
alcanada.

Existem diversas ferramentas para auxiliar a construo de aplicaes Web. Essas
ferramentas poderiam ser divididas em categorias de acordo com os seus objetivos.
E mesmo entre as ferramentas de mesma categoria, h diferenas entre elas. Um
trabalho sugerido, ento, seria a descrio, anlise do uso e benefcios que cada
ferramenta poderia trazer para o desenvolvimento das aplicaes Web.

Os processos de apoio propostos poderiam ser estruturados para abranger
processos de apoio ao desenvolvimento de aplicaes Web baseados em outras
referncias como, por exemplo, CMM [Paulk et al, 1995] e ISO 15504 [ISO
15504, 1998].

O trabalho poderia ser estendido para abranger a adaptao dos outros processos
definidos na Norma ISO/IEC 12207 processos fundamentais, processos
organizacionais e de adaptao para a realidade de projetos Web.

Modelos de melhoria contnua e avaliao dos processos de desenvolvimento de
aplicaes Web poderiam ser sugeridos, adaptados s situaes desse tipo de
aplicao. Esses modelos poderiam ser baseados naqueles j consagrados pela
Engenharia de Software, como CAF (CMM) e Parte 8 da ISO 15504 para
avaliao dos processos, e IDEAL (CMM) e Parte 7 da ISO 15504 para a
melhoria.
116
Referncias Bibliogrficas

[Becker & Berkemeyer, 2002] Becker,S.A.;Berkemeyer,A. Rapid application design and
testing of Web usability. Multimedia, IEEE , Volume: 9 , Issue: 4 , Oct.-Dec. 2002
Pages:38 46

[Berlack,1992] Berlack, H. R. Software Configuration Management. 1 Edio. Nova York.
John Wiley & Sons, 1992.

[Bersoff,1979] Bersoff, E. H.; Henderson, V.D. e Siegel, S.G. Software Configuration
Management: A tutorial. Los Alamos, Califrnia. IEEE Computer. Volume:12, n.1,
1979.
[Bevan, 1997] Bevan, N. Usability issues in Web site design. Proceedings of HCI97. 1997.

[Borges, 1996] Borges, C.B; Morales, I; Rodriguez, N.J; Guidelines for designing usable
World Wide Web pages. 1996.

[Buckley,1993] Buckley, F.J. Implementing a Software Configuration Management
Enviroment. Los Alamos, California, IEEE Computer Society, v.27, n.2, 1993.

[Chaubey & Suresh, 2001] Chaubey, Rahul; Suresh, J.K. Integration vs Development: an
Engineering Approach to Building Web Applications. Proceedings 2001. Austrlia
2001. Pginas 171-181.

117
[Coda et al, 1998] Coda, F.; Ghezzi, C.; Vigna, G.; Garzotto, F.; Towards a software
engineering approach to Web site development Software Specification and Design,
1998. Proceedings. Ninth International Workshop on , 16-18 April 1998.

[Constantine & Lockwood,1999] L. Constantine and L.Lockwood. Software for Use: A
Practical Guide to the Models and Methods of Usage-Centered Design, Addison
Wesley Longman. Reading, Mass.1999.

[Deshpande & Hansen, 2001] Deshpande Y.; Hansen, S. Web Engineering: Creating a
Discipline among Disciplines. IEEE Multimidia. Volume: 8. Issue: 2. Abril-Junho
2001. Pginas: 82-87.

[Fayad & Cline] Fayad, M; Cline M.P. Aspects of Software Adaptability. Comunications of
the ACM. Outubro 1996. Pginas: 58-59

[Fraternali, 1999] Piero Fraternali, Tools and Approaches for Data Intensive Web
Application Development: a Survey, in ACM Computing Surveys 31[3]; 227-263
1999.

[Fuggetta, 2000] Fuggetta, A. Software Process: a Rodmap. In: The Future of Software
Engineering. A. Finkelstein [ed], 2000.

[Ghezzi, 1997] Ghezzi,C. Software engineering issues for network computing
Software Maintenance, 1997. Proceedings., International Conference on, 1-3Oct.1997
Pages:2 2.

[Gilder, 1998] Gilder George, The Knowledge Enterprise and the New World of Techology,
Keynote address, Knowledge Inc.s Annual Strategic Forum on Knowledge, Profit and
Potencial, theme: Capitalizing on Knowledge, Oct 26,1998.

[Ginige, 2002] Ginige, A.; Web Engineering: Managing the Complexity of Web Systems
Developement. IEEE Multimidia. Volume: 8. Issue: 1. Jan-Mar 2001. Pginas:
14-18.

118
[Ginige & Murugesan, 2001a] Ginige, A.; Murugesan, S. Web Engineering: An
Introduction. IEEE Multimidia. Volume: 8. Issue: 1. Jan-Mar 2001. Pginas: 14-
18.

[Ginige & Murugesan, 2001b] Ginige, A.; Murugesan, S. The Essence of Web Engineering.
IEEE Multimidia. Volume: 8. Issue: 2. Abril-Junho 2001. Pginas: 22-25.

[Ginige et al, 1998] Ginige et al. WebE [Web Engineering]
http://aeims.uws.edu.au/WebEhome/

[Hansen, 1999] Hansen, S., Deshpande; Y.; Murugesan, S. A Skills Hierarchy for Web
Information System Development. Proc. First ICSE Workshop on Web Engineering.
ACM. Los Angeles. Maio de 1999.

[Holck, 2003] Holck, J. 4 Perspectives on Web Information Systems. 36th HICSS Hawaii
International Conference on System Sciences. 2003.

[IEEE/EIA 12207.0,1996] IEEE/EIA 12207.0-1996. Industry Implementation of
International standard ISO/IEC 12207: 1995.

[IEEE Std 828,1998] IEEE for Software Configuration Management Plans. 1998

[IEEE Std 730,2002] IEEE Standard for Software Quality Assurance Plans. 2002

[IEEE Std 1028, 1988] IEEE Standard for Software Reviews and Audits. 1988.

[ISO 8402, 1994] ISO 8402, Quality Management and Quality AssuranceVocabulary, Intl
Org. for Standardization,1994.

[ISO/IEC 9126, 1991] ISO/IEC 9126. Information Technology Software Product
Evaluation Quality Characteristics and Guidelines for their use.. International
Standard Organization. 1991.

[ISO/IEC 12207, 1995] ISO/IEC 12207. Information Technology Software Life Cycle
Process. International Standard Organization. 1995.
119

[ISO/IEC 13407, 1999] ISO 13407: Human-centred design processes for interactive systems.
1999.

[ISO/IEC TR 15504] ISO/IEC TR 15504 International standard for Software Process
Assessment. 1998.

[Jokela, 2002] Jokela, T., Assesment of Usability Engineering Process: Experiences from
Experiments. Proceedings of the 36th Hawaii International Conference on System
Sciences [HICSS03]. 2002.

[Juristo et al, 2001] Juristo, N.;Windl, H.; Constantine,L.; Introducing usability Software,
IEEE , Volume: 18 , Issue: 1 , Jan.-Feb.2001 Pages:20 21.

[Lee, 2002] Kar Tin Lee. Designing enhanced learning environments on the web - the
challenge.Computers. in Education, 2002. Proceedings. International Conference on
, 3-6Dec.2002 Pages:1534 - 1535 vol.2.

[Li et al, 2000] Li Hongsheng; Shi Tielin; Yang Shuzi. An approach of sampling computing
for wavelet analysis and its Web-based implementation.
Signal Processing Proceedings, 2000. WCCC-ICSP 2000. 5th International
Conference on, 21-25 Aug.2000 Pages:395 - 398 vol.1.

[Lima et al, 2000] Lima R et al. Evaluation Web sites for an educational environment target
for cardiology. Madri, Espanha, Fesma 2000.

[Lynch, 1999] Lynch, M; Watt, J.H.. Using the Internet for audience and customer research.
Professional Communication Conference, 1999. IPCC 99. Communication Jazz:
Improvising the New International Communication Culture. Proceedings. 1999 IEEE
International, 7-10Sept.1999 Pages:121 - 130

[Lowe, 1999] Lowe, D. Web site evaluation. WebNet Journal . Outubro 1999.


120
[Maldonado, 1991] Maldonado, J. C. Critrios Potenciais Usos: Uma Contribuio ao
Teste Estrutural de Software. Campinas, SP, Tese de doutorado,
DCA/FEE/UNICAMP, Jul. 1991.

[Marugesan & Deshpande, 2002] Marugesan, S.; Deshpande, Y. Meeting the Challenges of
Web Application Developement: The Web Engineering Approach. ICSC02. Orlando,
Flrida. Maio de 2002.

[Mich et al, 2003] Mich, L.; Franch, M.; Gaio, Evaluating and designing Web site quality;
Multimedia,IEEE, Volume:10, Issue:1, Jan.-March2003 Pages:34 - 43

[Nielsen, 1995]. Nielsen,J. Applying discount usability engineering.;Software, IEEE
.Volume:12, Issue:1, Jan.1995 Pages:98 100.

[Offutt, 2002] Offutt, J. Quality Attributes of Web. Software Applications. IEEE Software.
Volume: 19. Issue: 2. Maro-Abril 2002. Pginas: 25-32.

[Olsina,1999] Olsina, L ; Rossi,L; Toward web-site quantitative evaluation: defining quality
characteristics and attributes. WebNet99. 1999.

[Paulk et al, 1995] Paulk, C. et al The capability maturity model : guidelines for improving
the software process . Reading, Mass. : Addison-Wesley Pub. Co., c1995.

[Phoha, 1997] Phoha, V.A. Standard for Software Documentation. Los Alamos, California,
IEEE Computer Society, v.30, n.10, 1997.

[Pfleeger, 1998] Pfleger, S.L. Software Engineering Theory and Practice. Nova Jersey,
Prentice-Hall Inc., 1998.

[Powell, 1998] Powell, T. A. Web Site Engineering. Prentice-Hall. 1998.

[Pressman, 2002] Pressman, R. S. Engenharia de Software. Mc Graw Hill. 5a. Edio. 2002.

[Rocha et al, 2001] Rocha, A R. et al . Qualidade de Software. Teoria e Prtica. Prentice
Hall. 1
a
. edio. 2001.
121

[Schneiderman,1993] B. Scheiderman, Designing the User interface: Strategies for Effective
Human-Computer Interaction. Addison Wesley Longman, Reading, Mass. 1998.

[Uden, 2002] Uden, Lorna. Design Process for Web Applications. IEEE Multimidia. Volume:
9. Issue: 4. Outubro-dezembro 2002. Pginas: 47-55.

Vous aimerez peut-être aussi