Home
EVOLUÇÃO DE CENÁRIOS
Contents
1. Figura 3 4 Entrada do l xico A grande contribui o da baseline de requisitos reside em fornecer um meio independente de realizar o rastreamento da informa o A baseline ortogonal ao processo de desenvolvimento de modo que n o influenciada pelos m todos t cnicas e ferramentas utilizadas durante o processo Lembramos que Gotel e 40 Finkelstein apontaram como fator de redu o da qualidade do processo de rastreamento a excessiva depend ncia das ferramentas em m todos e t cnicas espec ficas Gotel95 A utiliza o de linguagem natural nas senten as facilita a valida o junto a clientes Exemplos deste tipo de senten as s o express es que descrevem alguma das entidades do modelo i e clientes a es eventos externos est mulos temporais e externos ou sa das A senten a no final do m s o setor solicitante precisa de relat rio de custos um exemplo de est mulo temporal enquanto que o setor financeiro fica no pr dio central descreve um cliente 1 e pode ser respons vel por alguma a o A baseline foi subsequentemente estendida de modo a incorporar uma vis o de cen rios Leite97 A id ia era acrescentar a nova vis o as outras restantes Segundo os autores atrav s da adi o desta vis o uma s rie de aspectos que estavam obscuros puderam ser trazidos a tona Entre eles se encontram estender a amplitude est tica da baseline atrav s da introdu o expl cita dos
2. A Hypermedia Version Control Framework ACM Trasnsactions on Information Systems Vol 16 No 2 April 1998 pp 127 160 Hsia94 Hsia P et al Formal Approach to Scenario Analysis IEEE Software vol 11 no 2 1994 pp 33 41 Humphrey95 Humphrey W A discipline for Software Engineering SEI Series in Software Engineering Addison Wesley 1995 IEEE Std830 1984 The Institute of Electrical and Electronic Engineers IEEE Guide to Software Requirements Specifications ANSI TEEE Std 830 1984 Jackson83 Jackson M Systems Development Englewood Cliffs N J Prentice Hall 1993 Jackson95 Jackson M Software Requirements Specification a lexicon of practice principles and prejudices Addison Wesley 1995 Jacobson92 Jacobson I et al Object Oriented Software Engineering A use case driven approach Addison Wesley ACM Press Reading MA 1992 Jacobson94 Jacobson I Object Oriented Software Engineering a use case driven approach Addison Wesley 1994 Jarke98 Jarke M Tung Bui X Carroll J M Scenario Management na interdisciplinary approach in Requirements Engineering Journal edited by Springer Verlag Vol 3 No 3 amp 4 pp 155 173 1998 Jirotka95 Jirotka M et al Ethnography by Video for Requirements Capture mini tutorial presented at the in the Second IEEE International Symposium on Requirements Engineering
3. Adapting traceability environments to project specific needs IEEE Software vol 41 No 12 December 1998 pp 54 63 Fillippidou98 Fillipidou D Designing with Scenarios a critical view on current research and practice in Requirements Engineering Journal edited by Springer Verlag Vol 3 No 1 pp 1 22 1998 Fontoura99 Fontoura M F M C Uma abordagem sistem tica para o desenvolvimento de frameworks Tese de doutorado Departamento de Inform tica PUC Rio 23 de Julho de 1999 Ghezzi91 Ghezzi C Jazayeri M Mandrioli D Fundamentals of Software Engineering Prentice Hall International Editions 1991 146 Goguen94 Goguen Joseph Requirements Engineering as the reconciliation of social and technical issues in Requirements Engineering Social and Technical Issues edited by Joseph Goguen and Marina Jirotka Academic Press 1994 pp 165 200 Gotel93 Gotel O and Finkelstein A An analysis of the Requirements Traceability Problem Imperial College Department of Computing Technical Report TR 93 41 1993 Gotel95 Gotel O and Finkelstein A Contribution Structures in the Proceedings of the Second IEEE International Symposium on Requirements Engineering RE 95 York March 27 to 29 IEEE Computer Society Press 1995 pp 100 107 Gotel97 Gotel O and Finkelstein A Extended Requirements Traceability Results from an In
4. EIS El6 E13 EX3 mpr stimo de peri dico no DI sem cart o antigo 03 C5 AS E18 E15 i El5 El6 mpr stimo entre bibliotecas i8 03 C6 R9 AS E19 A6 E7 EX3 R10 A6 E20 i i E18 i i El6 E18 M21 E22 03 C5 R6 A9 EL i i C7 R11 A6 i E24 i i E25 El6 mpr stimo de obras na reserva 10 03 C5 R6 AS E13 mpr stimo de obras a alunos da gradua o do DI RTZ RT i C7 R11 A6 E24 i i i E25 El6 mpr stimo de obra para fotoc pia Pll 03 i C5 R6 A10 E13 i i i C7 R11 A6 i E24 RT i i i i i El6 equisitar compra de obra para a biblioteca i 12 i 04 i C8 R12 A3 E26 RT4 EX All E24 E E27 E28 olocar obra na reserva 13 05 C9 R13 A3 E29 C10 A6 E30 EX5 EX6 CENI5S RT4 etirar obra com sistema sistema Pergamum fora do 14 03 Cs R5 AS r H H H H C3 CRIA A6 RIS AS Tirar cart o da biblioteca 15 i 06 CENI4 RT5 evolu o de obra 16 07 i i CEN17 EX9 evolver obra com sistema Pergamum fora do ar EX8 EX9 evolu o de peri dico 18 07 c5 R17 AS atalogar obra nova i 19 os i C5 R17 A6 E42 i Cll R20 AN EB i i
5. Exemplo da opera o de extens o projeto I Neste exemplo o procedimento de aceitar aluno foi especializado em aceitar aluno de doutorado e de mestrado Note que o cen rio original mant m o relacionamento de conten o com os dois novos cen rio ao passo em que os ltimos mant m o relacionamento de equival ncia 4 4 2 3 OPERA ES QUE MODIFICAM O N MERO DE CEN RIOS DA BASE EM UMA UNIDADE Nesta se o apresentaremos as opera es de exclus o e de adi o de novos cen rios a base Como mencionamos anteriormente a elicita o de requisitos para um sistema de software um processo evolutivo onde n o rara a descoberta modifica o ou reformula o da informa o O processo de software baseado em cen rios n o exce o e portanto devemos esperar que novos cen rios apare am e outros sejam eliminados da base como fato inerente ao pr prio processo evolutivo do sistema Nesta se o apresentaremos e exemplificamos ambas opera es 75 4 4 2 3 1 EXCLUS O A opera o de exclus o visa a retirada de informa o que se tornou obsoleta na base de cen rios As raz es para a retirada podem vir do aumento do entendimento do problema erro na modelagem dos cen rios ou at mesmo como resultado de fatores externos ao processo de desenvolvimento de software Durante o curso dos estudos de caso percebemos que esta opera o ocorre pouco frequentemente e at onde pudemos inferir como resultado do refiname
6. i Encapsulamento Modificagao Consolida o Retirada Divis o Multipla Divis o Especializa o Extens o Exclus o Adi o N dispara OPERA O N vel de Processo OPERA ES Sutcliffe98 N vel de Produto COMPONENTES requisitos projeto Complemento Equival ncia Conten o Pr Condi o Detour Exce o Inclus o Poss vel Preced ncia MES LE anano Trmotvamo N vel de Inst ncia RELACIONAMENTOS EE EEE EEE SE Figura 4 33 Modelo de Evolu o de Cen rios 4 8 RESUMO Neste cap tulo mostramos os estudos de casos que utilizamos para refinar nosso conhecimento da evolu o de cen rios Apresentamos os resultados de modo condensado no Modelo de Evolu o de Cen rios Neste modelo a informa o est organizada em tr s n veis inst ncia processo e produto Estes correspondem respectivamente aos relacionamentos as opera es e a nota o utilizada para a representa o dos cen rios O modelo serve para explicar o processo de evolu o ao mesmo tempo em que prov os operadores b sicos para coordenar este processo 101 No pr ximo cap tulo baseado no modelo de evolu o de cen rios apresentado e levando em considera o aspectos gerais de Engenharia de Software propomos um Framework para a ger ncia da configura o de cen rios 102 Cap tulo 5 Framework Proposto Resultados da nossa pr tica t m apontado uma crescente necessidade de
7. o formul rio de matr cula dos alunos secretaria imprime a pauta professor assina pauta secretaria encaminha pauta a DAR alterar nota EEE editor nt tador Jaluno escreve artigo junto com orientador e professor externo professor do DI r editor MCC atribui um n mero de monografia DI ao artigo aluno entrega folha de assinaturas junto com c pia do artigo a secretaria professor aluno realiza uma monografia junto a cada um DI ap s o t rmino das monografia aluno capta assinaturas dos professores DAR verifica pr requisitos menos uma das disciplinas documenta o comiss o de dos candidatos maior m dia at o final do n mero dispon vel p s gradua o de bolsas durante a reuni o da comiss o de p s o pedido de isen o julgado SE existir ENT O comiss o avalia candidatos a p s SE existir ENT O comiss o avalia pedidos de extens o de bolsa de isen o prazo pedido de SE existir ENT O comiss o avalia pedido de isen o de prorroga o de prazo matr cula SE existir ENT O comiss o avalia pedido de bolsa sandu che aprova trabalho para publica o na s rie autoriza bibliotec ria a fornecer n mero de monografia para trabalho documenta o necess ria para SE comiss o aprova pedido ENT O aluno entra com o pedido de bolsa comiss o de p s gradua o lista de k aluno se matricula na disciplina inscri es b sicos para obten o de t
8. o de cen rios que facilitar a comunica o A rela o custo benef cio da utiliza o deste artif cio deve ser considerada cuidadosamente pois se de um lado facilita o desenho por outro prejudica o entendimento Para ilustrar o relacionamento de exce o selecionamos um exemplo do projeto IV vers o 2 sistema para ger ncia de uma gr fica Neste projeto mostramos um exemplo onde dois cen rios compartilham um mesmo procedimento de entrada e sele o de fun o que atrav s da opera o de inclus o pode ser isolado em um cen rio separado Desta forma se evita repetir o procedimento nos cen rios que precisam fazer uso do mesmo reduzindo a redund ncia de informa o Nas Figuras 4 9 e 4 10 a seguir mostramos um esquema representando o relacionamento entre os cen rios e o c digo de cada um deles respectivamente ENTRAR NO SISTEMA E SELECIONAR FUN O CALCULAR OR AMENTO inclus o MUDAR OR AMENTO Figura 4 9 Esquema exemplificando o relacionamento de inclus o entre cen rios projeto IV nome n mero objetivo Contexto recurso ator epis dio entrar no sistema e E15 selecionar fun o El6 E21 E17 6 Z 2 4 P Novamente n meros aos cen rios de modo a referenci los mais facilmente em sua vers o codificada 60 E26 E18 E6 CEN 6 PEER E ERRO ER E E GR a Z E E Cei A E E E E E DD e 51 EEEF E oo SS E l E31 E14 E9 CEN 7 Ell Figura 4 10 Exemplo de par de cen ri
9. tamb m mostra o rationale para a cria o do cen rio se este estiver dispon vel EST Hiamples Uparaiis 1 incheele to wa dere ming haute iram fhe an ered baba gt aser Mire ed at Eja homie p possam ae a E Figura 4 25 hist rico do cen rio user occupies room 90 Nas Figura 4 26 e 4 27 a seguir mostramos o conte do das duas primeiras vers es deste cen rio Estas figuras tamb m foram extra das do site que disponibiliza este estudo de caso Note que s o disponibilizadas informa es relativas tanto a cria o da vers o mas tamb m quanto as configura es em que a vers o espec fica do cen rio participa Este o caso da segunda vers o do cen rio que participa de duas configura es As outras vers es deste cen rio bem como as do cen rio person occupies place resultante da fus o com o cen rio user occupies hallway section que ocorreu durante a configura o Design III vide Figura 4 20 est o dispon veis no site Scenario user occupies room Version 1 First appeared in release Spec Date of creation 9 11 99 Author user 3 Resulted from Person Responsible user 3 Rationale The scenario was derived using heuristics from the Extended Lexicon of the Language Goal establish the procedure for occupied Context 4th floor of building 32 motion detector jn order ser entered T1 Default lig Chosen light scene Yalue g ene flor this koom Actors Leer Control s
10. 1997 pp 65 74 Sutcliffe98 Sutcliffe A Scenario based requirements analysis Journal of Requirements Engineering vol 3 Springer Verlag 1998 pp 48 65 151 Sutcliffe98 b Sutcliffe A Maiden N Supporting Scenario Based Requirements Engineering IEEE Transactions on Software Engineering Vol 24 No 12 December 1998 pp 1072 1088 Texel97 Texel P Willians C B Use Cases Combined with Booch OMT and UML Prentice Hall 1997 Tichy82 Tichy W F Design Implementation and Evaluation of a Revision Control System Proc of the 6 International Conference on Software Engineering IEEE Tokio 1982 58 67 Tufte97 Tufte E Visual Explanations Images and quantities evidence and narrative Graphics Press Cheshire Connecticut 1997 van Lamsweerde98 van Lamsweerde A Darimont R Letier E Managing conflicts in goal driven requirements engineering IEEE Transactions of Software Engineering vol 24 number 11 November 1998 pp 908 926 Weidenhaupt98 Weidenhaupt K Pohl K Jarke M Haumer P Scenario Usage in system development current practice IEEE Software Vol 15 No 2 March 1998 pp 34 45 Wirfs Brock90 Wirfs Brock R Wilkenson B and Wierner L Designing Object Oriented Software Englewood Cliffs NJ Prentice Hall 1990 Wood94 Wood D P Christel M G and Stevens
11. do que aquela que Jacobson e Booch se referem como cen rios propriamente ditos Observe na Figura 2 5 que os cen rios s o representados por descri es em linguagem natural enquanto que os casos de uso possuem uma estrutura Neste trabalho quando fizermos uma compara o entre a nota o de cen rios utilizada por n s e aquelas proposta por Jacobson e Booch estaremos na realidade nos referindo aos casos de usos 2 3 5 UTILIZA O DE CEN RIOS PARA ELICITAR OBJETIVOS Rolland Souveyet e Bem Achour pregam a utiliza o de um enfoque baseado em objetivos para a identifica o dos requisitos do sistema Rolland98 Dentro deste contexto prop em a utiliza o da t cnica de cen rios para auxiliar a elicita o destes objetivos Segundo os autores um cen rio pode ser definido como um comportamento poss vel limitado a um conjunto de intera es propositais que s o levadas a cabo por uma s rie de agentes A nota o para cen rios proposta composta de uma ou mais a es onde a combina o destas descreve um caminho nico que leva os agentes de um estado inicial a um estado final Desta forma a combina o de v rios cen rios capaz de 25 descrever as intera es entre um sistema complexo de agentes A Figura 2 4 mostra a estrutura proposta para a nota o de cen rios Cen rio normal Cen rio excepcional 1 Cenario Estado estado final estado inicial Recurso par metro F
12. es consecutivas Partindo de uma configura o e dos relacionamentos existentes entre seus cen rios mostraremos todas as opera es realizadas e seus resultados na configura o seguinte Tomando como base um nico cen rio na sub se o seguinte mostramos a evolu o deste ao longo do processo de desenvolvimento do software Mostraremos todas as vers es pelas quais este cen rio passou bem como o novo cen rio que foi efetivamente implementado que resultou da fus o do cen rio em quest o com outro cen rio da base Finalmente mostraremos a evolu o dos relacionamentos deste cen rio em rela o a outros artefatos da base e g termos do l xico cart es CRC e objetos pertencentes ao modelo de objetos do sistema 4 6 1 EVOLU O ENTRE CONFIGURA ES CONSECUTIVAS Nesta se o mostraremos detalhadamente o processo de evolu o de uma configura o para outra consecutiva Vamos verificar o que acontece com cada um dos cen rios participantes e tentar tra ar um paralelo com os relacionamentos que os cen rios envolvidos nas opera es possu am anteriormente Escolhemos como exemplo a transi o da configura o Specl para Specll pois esta conta com ambos os tipos de opera o i e intra e inter cen rios Conforme apontado pela Tabela 4 11 a configura o Specl resultado da aplica o de heur sticas para extra o de cen rios a partir do l xico ampliado da linguagem para o sistema de controle de ilumina o A t
13. o documeta o incompleta secretaria separa e distribui documenta o dos candidatos para os membros da comiss o de p s gradua o membro da comiss o faz avalia o individual de cada candidato membros escolhem data para a reuni o da comiss o Chefe da comiss o comunica data para secretaria comiss o seleciona os candidatos que ser o aprovados comiss o distribui bolsas entre os candidatos aprovados comiss o realiza se compara o do n mero de bolsas comiss o de candidatos de p s como o ranking dos candidatos p s gradua o gradua o maior m dia at o final do n mero dispon vel E bolsas lista dos candidatos s bolsa que n o se matricularam aceitos com bolsa que n o se matricularam na reuni o da secretaria distribui se bolsas para os candidatos com comiss o de maior m dia at o final do n mero dispon vel p s gradua o de bolsas Tdivulga seo resulado para a secretaria cumprir aluno do DI sala aluno equisito b sico para obten o do t tulo de professore orientador negocia a aprova o da proposta s externos professor externo tem aluno marca data para apresenta o na secretaria cumprir parte hist rico do aluno preenche formul rio de aproveitamento dos cr ditos S mestrado de cr ditos do mestrado aproveitamento para obten o de cr ditos do do t tulo de mestrado doutor obter conta no aluno se apresenta no lab p s munido do laborat rio
14. 2 3 Devolu o CDialogDevolu Campos da CDialog CDialogDevolucao chama o m todo de CFacade E i de exemplar o ativo i tela i Devolu o i passando o NumeroRegistro E E i CDialogDev CDialog Multa olucao Cfa ade preenchidos Cservi os i i CfichaObra CcartaoUsuario Recupera a FichaObra correspondente ao NumeroRegistro Recupera o numero do cart o que est na FichaObra i Obt m CartaoUsu rio a partir do n mero do cart o Obt m tipoUsuario i Cfacade chama o m todo devolu o de CServicos correspondente ao tipoUsuario Calcula o atraso SE houver atraso ENT O CServicos chama o seu i m todo cobraMulta passando os diasAtraso i CServicos chama m todo multa de CMulta Calcula Multa Retorna o valor Multa para CServicos Retorna o valor Multa para CServicos Retorna o valor Multa para Cfacade Retorna o valor Multa para CDialogDevolucao CDialogDevolucao cria uma instancia da clasee i CDialogMensagem Mostra se o valor da multa se existente ou i mensagem de OK i Empr stimo de 33 Bibliotec rio CDialogEmpres Campos da CDialogEmpresti CDialogDevolucao chama o m todo de CFacade Exemplar empresta timo ativo tela mo CFacade passando o NumeroRegistro E E exemplarao i CDialogEmp CServicos E usuario restimo i Obt m CartaoUsu rio a partir do n mero do cart o Obt m tipoUsuario E i Cf
15. 27 1 n o mant m relacionamento com nenhum outro cen rio desta configura o Se observarmos a Tabela 4 11 que cont m os dados relativos a este segundo estudo de caso podemos observar que existe um equil brio no n mero de relacionamentos de modo geral apontando para a poss vel exist ncia de mecanismos intr nsecos de auto compensa o Finalmente a opera o de n mero II envolve cinco cen rios que est o relacionados de formas bastante diversas Note que os cen rios 9 1 e 10 1 s o equivalentes os cen rios 2 1 e 18 1 complementares e os cen rios 9 1 mant m um relacionamento de conten o como o cen rio 2 1 Finalmente o cen rio 8 1 que tamb m faz parte da opera o n o est diretamente ligado a nenhum dos outros cen rios envolvidos diretamente Na realidade ele um subconjunto do cen rio 1 1 que por sua vez subconjunto do cen rio 2 1 que faz parte da fus o Em casos como este fica evidente a complexidade associada ao processo de evolu o de cen rios Em situa es menos elaboradas como a descrita no par grafo anterior ou nas se es 4 4 2 1 1 e 4 4 1 2 relativas as opera es de fus o e encapsulamento respectivamente mostramos exemplos menos complexos onde tanto a indica o quanto a justificativa para a aplica o das opera es fica clara Nestes casos uma vez detectado um relacionamento de complementariedade entre cen rios a fus o indicada enquanto que se o relacionamento for de equival ncia
16. Ja fes Lo DT es too capo E po Too PAB ST DO S S a OO S To E O e S E T re S e Pes O T Rae S y EM Jews A tirar fotoc pias Is for fe tas Een Ex2 RT ESPE CA ee EEE DEE Es REDE BS _ S T aumentar quota f Jos as Ja Jean Til EC fo T Tdo S aa des S T E S T T T MES S S O pe et ese PNR RE e Re Eea E requisitar sala de doutorado 35 om ci6 R22 a es o O T oao S aa Jew S S ie eee ae E E ot lee perv o a Es requisitararm ro 3 os cio R a TED OTT ES oco Jess aa es dl EE EEE EEE hen serasa O DD ja o e e bajo colocarobranareserva dl Ra T S T requisitar bolsa de isen o de pagamento 38 o c4 R3 AL fes fe ee ee er ae ee eed pedir prorroga o de prazo 39 Joy cm r5 a EM J po S S oa eaz ta Jes S ES S S Se T a es i Pf EXIST SEE ot A Oo Sok et SER oe e EG EE o E Ra requisitar 2a via de crach de identifica o so os cio rs JA EM J ee SS CEDER ses aluno extraordin rio cursadisciplinanoDI 41 O19 c25 R4 AIS e92 J J ESSAS fR Jas Jer T Oo S S See T a e T S po lost a J S ii Es Sp Sci So EEE NES EE eo RR f ei Sa ts EEE ESSES EE ESSE E ES o Apresentar qualifica o AO co R AT ES CT RTA po qe ROA les exi po dao das Ja S TIO Oi pf o EE CS e E SSIS EN SS SA cais FREE S SR RS eR ERR ew EESC RE prestarexame de qualifica o LO c o Ja Jes Oo T ee Jas Jey exs _ Do Joa As Jes RTS
17. O Framework proposto leva em conta a exist ncia de outros artefatos que ser o produzidos durante o desenvolvimento de software e prov para o rastreamento entre estes objetos Tamb m foi apresentado o prot tipo de uma ferramenta que implementa este Framework A ferramenta SET permite com que usu rios atrav s de uma sess o de configura o criem inst ncias do Framework que sirvam seus prop sitos Na pr xima se o apresentamos nossas conclus es e apontamos para trabalhos futuros 140 Cap tulo 6 Conclus o 6 1 CONTRIBUI ES Neste trabalho mostramos que dificuldades relacionadas a ger ncia do processo de desenvolvimento de software baseado em cen rios tem sido sistematicamente apontadas na literatura de sistemas em particular pela comunidade de Requisitos Rolland98 Jarke98 Weidenhaupt98 vanLamsweerde98 A falta de uma metodologia que suporte a utiliza o e evolu o de cen rios tem dificultado a integra o desta t cnica na pr tica da Engenharia de Sistemas De modo a minimizar as dificuldades apontadas acima e buscando oferecer suporte automatizado a evolu o de cen rios partimos para a realiza o deste trabalho De in cio nos concentramos no aprofundamento do conhecimento acerca da complexidade envolvida no processo de evolu o de cen rios Para tal organizamos estudos emp ricos detalhados cujos resultados est o resumidos na forma de um modelo de evolu o de cen rios que oferece uma
18. T qe J S Oo S S S T Ooo S S S deas Jew enr _ cumprir requisitos b sicos dt Jo Ja Ja Jes J DO S S Tes T e ea S S EEE RE IRES E GU EI PE reuni o da comiss o de p s gradua o 45 020 C2 R27 AT e C12 R38 A2 E36 po To tro to ileso T GIOCAO Q A hff I M PAIM S So sejam FE S S T T T eo RR Do S S RT S Seo if o HERE E S RR ea S oao EE RE publicar MCC GC fas JEM J Os E eooo EEE fe 2a Re a e Pedir bolsa sanduiche PDEE o an on Joa Js po T t po e fo a eos po 1 oo To eo feao AT 83 Ecras Ge SO es a es J requisitar crach de identifica o as ois Clo r83 Jai eno ES S S doo ea Jer ee ee E o e es JS f prestar exame de l ngua estrangeira 49 fo fes Ja fes a oo NEY NESTE le pf Xe TT sv S S ee 8 Projeto Il Sistema de Biblioteca Vers o 1 Cen rios literais contexto recursos atores autor tem que ser normas para editor da s rie aluno matriculado ou publica o na MCC professor do DI s rie MCC no objetivo 1 publicar MCC Nome publicar MCC aluno professor bibliotec ria requisitar crach 2 obter cart o de luno matriculado de identifica o acesso e i identifica o i rt D comprovante aluno de matr cula foto 3x4 formul rio de pedido de Cart o de i i identifica o cadastrar senha E retirar obra usuario em posse do crach de usu rio
19. m destas tamb m s o armazenados dados sobre o pr prio processo de cria o destes objetos data hora e autor al m de conex es com outros artefatos da baseline de modo a permitir a rastreabilidade das informa es Na camada de base temos o software respons vel pelo processamento das informa es do modelo Por um lado temos todo a cr tica e processamento das informa es fornecidas pelo usu rio para um formato aceito pelo banco de dados e pelo outro o tratamento de respostas a consultas ao banco de modo a adequ las aos requisitos de apresenta o da ferramenta Al m destas fun es esta camada implementa a navega o que permitir o rastreamento das informa es Na camada 129 superior temos o software de interface com os usu rios Atrav s desta camada todas as intera es com o sistema ser o realizadas Para os usu rios esta a nica camada que t m acesso as duas restantes s o transparentes O prot tipo da ferramenta foi implementado utilizando se o banco de dados relacional MS AccessO sobre uma plataforma WindowsNTO A escolha deste banco justificada pela sua disponibilidade nesta plataforma grande base instalada e portabilidade do banco se comparado a bancos relacionais de maior porte tais como SQL Server e Oracle Testes de acesso remoto via Internet foram conduzidos tanto no Brasil quanto no exterior e conclu mos que a performance do banco era adequada A camada de software base foi implem
20. prias Segunda configura o do conjunto de cen rios Resultado da remo o de redund ncias e reorganiza o 78 Terceira configura o do conjunto de cen rios Resultado do aumento da compreens o da descri o do problema e do refinamento das informa es Design Primeira configura o dos cen rios de desenho Adaptados da configura o anterior e atualizados de modo a refletir a modelagem dos cart es CRC Designl Segunda configura o dos cen rios de desenho Refletem o modelo orientado a objetos OO derivado a partir dos cart es CRC Designll Ultima configura o dos cen rios de desenho Reflete o corte no modelo OO e representa as intera es entre o sistema a ser constru do e entidades externas Impl Primeira configura o dos cen rios de implementa o Reflete os ajustes realizados no modelo OO e incorpora as classes de interface que tiveram de ser adicionadas Imp Esta configura o descreve os cen rios do ponto de vista externo do cliente Representa a intera o dos usu rios do sistema com sua implementa o Totais Tabela 4 11 Dados do segundo estudo de caso Atrav s da Tabela 4 11 temos uma vis o geral do segundo estudo de caso conduzido Observamos que o n mero inicial de cen rios tende a diminuir e se estabilizar O 7 2 2a 7 as gos No caso do n mero total de cen rios gostar amos de enfatizar que uma vers o de um cen rios pode participar d
21. processo de versionamento constante e independente por m a pol tica de cria o de configura es tal como proposta por Hicks determinada pelo usu rio Desta forma novas configura es releases somente ser o geradas atrav s de requisi es do usu rio A classe prev m todos onde o usu rios pode estabelecer datas espec ficas ou est gios de desenvolvimento O m todo setMilestone permite que o usu rio especifique outros par metros para a gera o de novas configura es O Framework proposto foi implementado pela ferramenta SET que apresentamos na pr xima se o Mostraremos tamb m um exemplo de instancia o do mesmo utilizando a ferramenta O exemplo escolhido novamente o sistema para a simula o do controle da ilumina o do Departamento de Inform tica da Universidade de Kaiserslautern na Alemanha 128 5 4 PROT TIPO PARA A FERRAMENTA SET 5 4 1 ARQUITETURA Constru mos um prot tipo de ferramenta que implementa o Framework de evolu o de cen rios apresentado na se o anterior segundo uma arquitetura em tr s camadas como ilustrado pela figura 5 10 a seguir Base de Dados Figura 5 10 Arquitetura da ferramenta SET Na camada inferior temos a base de dados respons vel pelo armazenamento do conte do dos cen rios bem como informa es relativas a evolu o propriamente dita tais como rationale log de opera es e informa es relativas as configura es Al
22. rio ela com opera es dispon veis aparece renova o de empr stimo Josu rioclicanaop orenova o eladerenova o aparece O su rio entra n mero do exemplar para renovar empr stimo SE a obra n o estiver na reserva ENT O aparece tela de novo prazo para devolu o E SE obra est reservada ENT O aparece tela informando J su rio para procurar bibliotec rio reserva de obra na biblioteca nome da obra usu rio su rio se loga no sistema i de livro com opera es dispon veis aparece su rio clica no bot o de reserva ETR ESC ES pou rioclicabot odeOK O O SE obra a ENT O aparece tela informando su rio para procurar bibliotec rio para retirada da obra SE obra n o dispon vel ENT O ser feita reserva e obra n o sistema fornece data prevista para retirada refer ncia Cen rios Codificados poles ontexto recursos fatores episodios exce o Nome cadastro de exemplar ENTE cadastrar obra 12 consulta ao cat logo consulta ao cat logo topogr fico 7 evolu o de exemplar E ee o R Empr stimo de exemplar Do bo E BE Do U CT B SS inscri o do usu rio 2 a R renova o de empr stimo s o a _ R C ee ERA i reserva de obra fem X5 Projeto Ill Sistema de Biblioteca Vers o 3 Cen rios Literais i Nome ino objetivo i contexto i recursos i atores i episodios i Devolu o de exemplar
23. rio pode definir a estrat gia para a captura do rationale de maneira gen rica ou atrelar a mesma a opera es espec ficas Esta uma classe extens vel pois o usu rio poder implementar m todos de captura de rationale diferente daqueles disponibilizados pelo Framework e g gIBIS Conklin87 m todo de estruturas de contribui o Gotel95 O n cleo do processo evolutivo se encontra na aplica o das opera es Novas vers es de cen rios s o criadas unicamente como resultado da aplica o de uma ou 2 mais opera es Instanciar o conjunto legal de opera es portanto a parte mais 127 cr tica deste processo O usu rio tem liberdade de escolher as opera es que vai permitir serem aplicadas sobre os cen rios ao longo de seu desenvolvimento Estas ir o modelar o formato e organiza o de sua baseline de cen rios no futuro Finalmente o processo de instancia o conclu do quando o usu rio define o escopo da utiliza o de cen rios durante o processo de desenvolvimento de software Em nosso entendimento a utiliza o dos cen rios ben fica durante todos os est gios de desenvolvimento por m o usu rio pode definir que sua utiliza o ser restrita a determinados est gios apenas O Framework proposto independente do modelo de processo de desenvolvimento adotado Atrav s da instancia o da classe Release o usu rio pode determinar os momentos em que deseja extrair configura es da base O
24. sica arquivos Desta forma a evolu o dos objetos como percebida pelo usu rio corresponde diretamente a evolu o deste objeto no n vel f sico Tichy82 No nosso caso existe uma distin o a percep o do usu rio do sistema ser a abstra o correspondente a instancia o que o mesmo fizer do Framework que em certos casos como o acima ser diferente do que acontece ao n vel f sico Baseline Enquanto os componentes dos cen rios s o instanci veis a sua estrutura se mant m fixa A classe abstrata scenario e sua implementa o classe version estar o obviamente presentes em todas as inst ncias do Framework A unidade de trabalho do processo evolutivo a vers o de um cen rio O conceito representado pela classe abstrata scenario somente tem significado do ponto de vista de ger ncia de configura o atrav s de sua forma instanciada a vers o do cen rio Atrav s das inst ncias podemos obter os relacionamentos mantidos com outros cen rios vide o modelo de evolu o de cen rios e consequentemente determinar as opera es que poder o ser aplicadas sobre esta vers o do cen rio Durante o processo de instancia o necess rio definir qual informa o adicional ser necess ria Informa es mais detalhadas sobre o processo e as raz es da aplica o das opera es s o capturadas pela instancia o da classe rationale Note que esta classe diretamente conectada ao conjunto de opera es O usu
25. ssemos uma primeira vers o de um manual do usu rio para a evolu o de cen rios sob a forma de um conjunto de heur sticas Estas atrav s da detec o de relacionamentos entre cen rios de uma configura o e da constata o de determinadas pr condi es sugerem a aplica o de determinadas estrat gias de opera es Ao longo da elabora o de ambos estudos de caso percebemos que o processo de evolu o de cen rios era grandemente influenciado por fatores est ticos os relacionamento existentes entre cen rios de uma mesma configura o Desta forma percebemos que seria imposs vel descrever o processo de evolu o de cen rios sem referenciar aspectos relativos ao produto cen rio 1 e a nota o utilizada na captura e representa o e os relacionamentos mantidos entre as inst ncias dos cen rios a cada configura o O modelo de evolu o de cen rios proposto leva em conta esta constata o ao incorporar uma representa o que evidencia tanto os relacionamentos existentes entre cen rios quanto as opera es v lidas a serem realizadas Desta forma abrange tanto aspectos de produto quanto de processo relativos aos cen rios Os resultados dos estudos de caso realizados apresentados atrav s de uma taxonomia para evolu o de cen rios um conjunto de heur sticas para a sele o e aplica o de opera es e pelo modelo de evolu o de cen rios s o apresentados detalhadamente no cap tulo quatro deste trab
26. vel OK recibo requisita transporte Figura 2 6 Exemplo de cen rios esquerda e casos de uso direita Neste enfoque somente representado a intera o entre os clientes e o sistema que visto sob como uma caixa preta Desta forma aspectos internos do sistema e informa es sobre o macrosistema n o s o capturadas O modelo tamb m n o expressa diferentes pontos de vista nem argumenta es sobre as decis es de desenho Rolland98 Os casos de uso s o utilizados apenas durante a fase de elicita o de 24 requisitos e subsequentemente incorporados na documenta o Robertson99 A Figura 2 6 mostra um exemplo de caso de uso e de poss veis cen rios Note que a Figura 2 6 utiliza uma nota o espec fica proposta inicialmente por Jacobson e agora incorporada a linguagem UML Unified Modelling Language para descri o de sistemas orientados a objeto Booch99 Texel97 Scheneider98 Note tamb m que o modelo composto de representa es para atores classes e a comunica o entre os dois arcos Segundo Booch existe um abismo entre os casos de uso e o desenho e implementa o do modelo de objetos Durante este abismo que a identifica o dos objetos e a solu o de problemas como concorr ncia e consist ncia entre casos de uso ser o levados em conta Na realidade a representa o para casos de uso mais pr xima da nota o para cen rios que temos utilizado proposta em Leite97
27. 20 1 turn ligths off 9 1 inform user of outdoor light sensor 21 1 user dim lights 10 1 inform user of outdoor light sensor malfunction 22 1 user augments light intensity 11 1 user occupies room 23 1 define light scene 12 1 user occupies hallway section A a Fj x F s a Fi Fi 1 gt 1 LEGEND eee Equivalente Pre condition SEBBEER Complement Posmible Precedence dl Figura 4 21 Relacionamentos entre os cen rios da configura o SpecI 84 A opera o de n mero I encapsulamento envolve dois cen rios equivalentes Estes relacionamento segundo a se o 4 3 2 foi observado entre cen rios que compartilham um mesmo objetivo ao mesmo tempo que situados em um mesmo contexto Tamb m foi notado coincid ncia de atores e de alguns epis dios No caso destes cen rios em particular a opera o de encapsulamento foi realizada talvez com o intuito de diminuir a redund ncia da base Segundo as justificativas para a opera o mostradas na Figura 4 22 a seguir o fato dos cen rios possu rem conte do equivalente j suficiente para a realiza o da opera o Operation type Rationale The scenarios were userlequivalent in content justifying the encapsulation in one single scenario Scenario s involved malfunction occurs ELES Ra Resulting Scenario s malfunction occurs Figura 4 22 Justificativas para a opera o de encapsulamento entre os cen ri
28. 4 3 3 RELACIONAMENTO DE CONTEN O SUBSET O relacionamento de conten o observado entre um par de cen rios que compartilham o mesmo contexto ou pelo menos o contexto de um deles totalmente contido no contexto do segundo Estes cen rios podem apresentar coincid ncia de recursos e tem de apresentar coincid ncia de atores Pelo menos um dos epis dios do 54 cen rio contido deve estar presente no cen rio contendor Para ilustrar o relacionamento de conten o selecionamos um exemplo do projeto VII sistema de ger ncia acad mica Neste projeto mostramos o cen rio terminar programa de mestrado que mant m relacionamentos de conten o com os cen rios apresentar disserta o e fazer disciplina os relacionamentos s o par a par e completamente independentes um do outro O relacionamento bastante expl cito em ambos os casos pois o contexto dos dois ltimos cen rios est contido no cen rio pai Tamb m notamos que os cen rios possuem atores em comum e que os cen rios contidos aparecem na lista de epis dios do cen rio pai E115 apresentar disserta o Figura 4 5 Exemplo de cen rios que apresentam o relacionamento de conten o projeto VII Na Tabela 4 4 a seguir resumimos as heur sticas para a detec o do relacionamento de Conten o entre dois ou mais cen rios Conten o Cen rios envolvidos podem apresentar objetivos diferentes O contexto de um cen rio A contido em B dev
29. Apresentou disserta o de mestrado oncluiu disciplinas obrigat rias a bra ee eee n ossui CR maior que 7 Obter t tulo doutorado screver se em disciplina doutorado SR de ursar disciplina doutorado ensino PO hatorat rios Kroncluir disciplina doutorado od Fazer exame de qualifica o po Defender tese de doutorado pome p e N mero de Secretaria DI matr cula Procura o Aluno A o jmatriculado Profesor tulo doutorado DI Aluno Aluno jmatriculado r e po N Obter t tulo de doutorado E Banca examinadora Do o bio Beedew tose de doutorado Reon disciplinas obrigar rias Pot ER maior que Cen rios Codificados nome po Po etivo contexto ecursos atores dia atricular se no programa de mestrado E rocurar orientador de mestrado ee a S EEE STE RS E a Procurar orientador de doutorado Do po o que CT CS E EEE EE GEO Fazer proposta de trabalhojestudo para mestrado oe e e a Fazer proposta de trabalho estudo para doutorado CT 6 6 Q RB o ESSES y O O DE a e e E Entregar documenta o de inscri o no mestrado 7 hos O R7 AC E TS ME Entregar documenta o de inscri o no doutorado CE 8 JO O R7 ALC a EA A dmitir candidato de mestrado hamrende a o esr sr Administrar Aluno fs RT e FR MA fazer disciplina Gt RA RB EEE O O O S Participar de bancaexaminadora 13 fo RAAB Presidirbancaexaminadora o w Bo RAS o nz ee TG Sp ESSA 22 __ FQ 5 cm se ee
30. Basic e valida o com clientes neste est gio os prot tipos ou demonstradores de conceitos s o utilizados para validar os requisitos junto aos clientes Este est gio gravado atrav s de v deo ou udio e utilizado para an lise futura e an lise neste est gio os autores prop e um layout espec fico para a an lise dos requisitos Nesta fase conduzida uma reuni o do tipo JAD joint application design onde existe um cronograma previamente definido e um mediador externo para conduzir a sess o 19 OBJETOS fornecem contexto ATIVIDADES realizam OBJETOS ESTRUTURAIS resp on adv aig AGENTES descrevem ESTADOS contribuem para RECURSOS EVENTOS OBJETIVOS Figura 2 3 Modelo ER do enfoque para representa o de cen rios proposto por Sutcliffe98 As sess es de an lise utilizam cen rios como meio de valida o de alternativas de desenho Os cen rios descrevem como os clientes conduzem suas tarefas Na Figura 2 3 mostramos o esquema da nota o utilizada neste enfoque Cada sess o se inicia como uma descri o verbal da situa o que ser demostrada pelo prot tipo Um desenvolvedor opera o prot tipo enquanto que o segundo faz perguntas e anota as respostas dos clientes Para cada epis dio de um cen rio v rias op es de desenho s o apresentadas Esta m todo foi utilizado em v rios estudos de caso Segundo os autores a combina o de t cnicas
31. DE RESGATE 20 articipante apresenta omprovantes de pagamento Administradora Participante ser iguais ou superiores a avalista d garantias 3 vezes a adicionais avalista SE o patrim nio do participante ou avalista diminuem durante o contrato ENT O a administradora pode exigir garantias adicionais Segurar o ve culo 21 Segurar o bem Bem foi outorgado Seguro Participante Participante escolhe adquirido seguradora Administradora SE o saldo da d vida menor do que 40 ENT O o e culo segurado com seguro total SE o saldo da d vida superior a 40 ENT O o ve culo pode ser segurado ontra roubo apenas Participante endossaaapdlice articipante reclama penalidade no valor de juros alculados com a taxa ativa Administradora Administradora abona pedido Prazo de 10 ao participante dias Cen rios Codificados ES Cess o de direitos e obriga es 2 02 4 ooo o R 03 cs o Soo E Es Realizar assembl ia de participante do cons rcio E4 CENIO 3 mo ks E Sa ES Ds E EE Ec DRE Do RS CENTO iC Cancelar cons rcio 4 04 6 5 1 7 IR7 E ee ie A ENG RIA fee we ef eR A E ieee ge ee ee i ee RE Cancelamento de divida antecipado J e ooo to BR AH fe Lo J Dol 1 RR O E o SSS IR E17 ee y pT seas Liquidarjuros i y Cc EEE ES E E eee Liquidar juros os RA Do RAB EEE RR E RIO fx Substituir participante Tf Reet o o PR AS O e PEND ee io Cos
32. E electOperation SereateMilestone variable dynamic Hs electComp eee variable static 4 selectOperation suaa detect relationship a Trace Fusion Split M Split Encapsulation Specialization Modification Input Include Exclude New Component extensible static Setype description Blink to artefact variable static capture description Component EseleciComponent __ incomplete restricted boolean A Agent Intention Action Environment Figura 5 9 Framework de evolu o de cen rios 5 3 2 FRAMEWORK DE EVOLU O DE CEN RIOS Antes de descrevermos o Framework propriamente dito esclareceremos alguns conceitos presentes no modelo Primeiramente gostar amos de fazer a distin o entre os conceitos de cen rio e vers o do cen rio O conceito de cen rio representa uma abstra o enquanto que o de vers o do cen rio a representa o f sica de uma inst ncia do primeiro No momento em que registramos o conte do do primeiro cen rio da base esta j a primeira vers o deste 119 cen rio Desta forma o que geralmente referenciamos como cen rio na verdade o par cen rio vers o Tamb m necess rio clarificar as diferen as existentes entre vers o e configura o Configura o um conjunto de cen rios tomado a um determinado momento no tempo Cada configura o u
33. Ee atricular se no ntrar no doutorado Documenta o andidato procura orientador programa de doutorado Candidato cons rcio andidato faz proposta de trabalho diploma ee DE ce eee Procurar orientador de scolher orientador Candidato andidato onhece professor doutorado DI EPE RE ne scolher orientador Candidato andidato doutorado es a a ee ee Fazer proposta de ntregar proposta de a a andidat rabalho estudo para trabalho SS sS estrado i DCE EE Fazer proposta de ntregar proposta de rabalho estudo para doutorado documenta o de inscri o no doutorado Do ff LN fl Sail SSSCSCSCSSCC Y Admitir candidato de Admiss o de DI Documenta o DI FE RE A Pe SR doutorado candidatos Administrar Aluno 11 Administrar Aluno Documenta o rit rios de e ES al S Dar curso na p s Ambiente de Professor ensino Q uadro negro O y O Eo Participar de banca 13 Participe anca examinadora apresentando seu trabalho residir banca 14 Participa ance Sala examinadora apresentando seu trabalho Aluno screver se em disciplina mestrado aterial de ursar disciplina mestrado ensino Laborat rios oncluir disciplina mestrado azer disserta o de mestrado Cursar disciplina 16 Obter t tulo mestrado DI Aluno Aluno Per a jmatriculado Concluir mm Aluno estrado jmatriculado Terminar programa de i stra Aluno apresenta Aluno concluiu 24 cr ditos estrado equisitos para obten o de t tulo
34. Framework conta com apoio automatizado fornecido pelo prot tipo da ferramenta SET Scenario Evolution Tool apresentada ao final do cap tulo Finalmente no cap tulo 6 apresentamos nossas conclus es juntamente com uma vis o cr tica das contribui es deste trabalho Neste contexto comparamos nossos resultados com outros da literatura da rea Conclu mos a tese com um resumo do trabalho apresentado e sugerimos orienta es para futuras pesquisas e melhoramentos No ap ndice I apresentamos o material relativo aos cen rios que comp em os doze projetos que formam o estudo de caso I descrito no cap tulo quatro 1 5 RESUMO Neste cap tulo fizemos a introdu o desta tese cujo tema central a evolu o de cen rios Mostramos de modo sucinto as motiva es que levaram a realiza o da mesma uma vis o geral do trabalho realizado e as contribui es esperadas Finalizamos por apresentar a divis o em cap tulos da tese No cap tulo seguinte apresentaremos uma pequena revis o da utiliza o da t cnica de cen rios em diversas reas do conhecimento com o foco na ci ncia da computa o Cap tulo 2 Desenvolvimento de Software Baseado em Cen rios Um grande passo no processo de defini o dos requisitos de uma aplica o reside no reconhecimento dos atores entidades e a es que descrevem o macrosistema do qual esta aplica o far parte Cen rios vem surgindo como op o para a descri o de
35. Leite97 objetivos atores recursos Epis dios contexto restri es exce es 29 Potts94 objetivos agentes tarefas Rolland98 agentes recursos objetos estados Sutcliffe98 objetivos agentes estrutura Atividades recursos eventos estados objetos medidas Elementos elementos temporais espaciais comportamento Tabela 2 2 Classifica o dos enfoques apresentados na se o 2 4 Desta forma podemos generalizar uma classifica o para a nota o de cen rios baseadas nos componentes dos pr prios No come o da ltima se o colocamos que dado a grande diversidade existente para nota es e emprego de cen rios reduzir amos o escopo de nossa apresenta o a aquelas que utilizavam linguagem natural semi estruturada Desta maneira deixamos de fora representa es formais como as propostas por Hsia Hsia94 e Heymans e Dubois Heymans98 e tamb m as totalmente informais como as propostas por Kuutti Kuutti95 e Rosson e Carroll Rosson95 Atrav s da compara o dos enfoques para nota o de cen rios apresentados anteriormente notamos que poder amos detalhar ainda mais sua classifica o Para tal estendemos o Framework proposto por Rolland de modo a acrescentar uma classifica o que levasse em conta os componentes presentes na representa o proposta para cen rios em cada um dos enfoques Esta classifica o est representada na Figura 2 10 a seguir 30 Inten o
36. Press 1995 pp 108 115 Leite97 Leite J C S P et al Enhancing a Requirements Baseline with Scenarios Requirements Engineering Journal Vol 2 No 4 Springer Verlag December 1998 pp 184 198 Leite97 b Leite J C S P et al Enhancing a Requirements Baseline with Scenarios in the Proceedings of the Third IEEE International Symposium on Requirements Engineering RE 97 Annapolis USA IEEE Computer Society Press 1997 pp 44 53 Leonardi 97 Leonardi Maiorana V Balaguer F Una Estrategia de Analisis Orientada a Objetos Baseada em Escenarios Anais da II Jornadas de Ingernieria de Software JIS97 Donostia San Sebastian Espanha 1997 Maiden98 Maiden N A M Minocha S Manning K Ryan M CREWS SAVRE Systematic Scenario Generation and Use Proceedings of the International Conference on Requirements Engineering IEEE Computer Society Press 1998 pp 148 155 McGraw97 McGraw K Harbison K User Centered Requirements the Scenario Based Engineering Process Laurence Erlbaum Associates 1997 McMenamin84 McMenamin S Palmer J Essential Systems Analysis Yourdon Press 1984 Mikkelsen97 Mikkelsen T Pherigo S Practical Software Configuration Management Hewlett Packard Professional Books Prentice Hall 1997 Neto00 Neto J M S Integrando Requisitos N o Funcionais a Modelagem OO disserta o de Mestrado Departame
37. RE 95 York March 27 to 29 1995 pp 190 193 Kaidl93 Kaidl H The Missing Link in Requirements Engineering Software Engineering Notes ACM SIGSOFT Vol 18 April 1993 pp 30 39 Karsenty96 Karsenty L An Empirical Evaluation of Design Rationale Documents Proceedings of the Conference on Human Factors in Computing Systems CHI 96 Vancouver Canada 1996 pp150 156 Kuutti95 Kuutti K Work Processes Scenarios as a Preliminary Vocabulary in Scenario Based Design Envisioning Work and Technology in System Development John Wiley and Sons 1995 pp 19 36 Kyng95 Kyng M Creating contexts for design in Scenario based design envisioning work and technology in system development pp 85 107 John Wiley and Sons New York 1995 pp 85 108 148 Lehman80 Lehman M Programs Life Cycles and Laws of Software Evolution Proceedings of the IEEE 68 9 1980 pp 1060 1076 Leite90 Leite J C S P Franco A P O uso de hipertexto na elicita o de linguagens de da aplica o em Anais do 4 Simp sio Brasileiro de Engenharia de Software editado pela Sociedade Brasileira de Computa o 1990 pp 124 133 Leite95 Leite J C S P and Oliveira A P A Client Oriented Requirements Baseline in the Proceedings of the Second IEEE International Symposium on Requirements Engineering RE 95 York March 27 to 29 IEEE Computer Society
38. Registro de tomada de decis es Mapas Tabela 5 1 Requisitos para a apoio automatizado ger ncia da evolu o de cen rios Breitman98 Nas tr s pr ximas subse es detalhamos estes requisitos 5 1 1 VERS O Cen rios basicamente descrevem situa es do cotidiano dos clientes que com frequ ncia podem ter mais de uma consequ ncia Deste contexto surge uma quest o 105 de ordem pr tica qual seria a maneira mais adequada de se organizar um conjunto de cen rios de modo a facilitar sua valida o Devemos levar em conta que cada cen rio pode admitir v rias exce es que por sua vez conduzem a outros cen rios Este fato impede que os cen rios sejam organizados sequencialmente Outra dificuldade garantir que todas as possibilidades foram exploradas Conforme colocado anteriormente cada cen rio pode se subdividir em uma s rie de ramifica es conduzindo a novos cen rios e assim sucessivamente Chamamos este fato de efeito cascata O efeito cascata dificulta grandemente a leitura dos cen rios pois leva a uma explos o de possibilidades em curto espa o de tempo Uma forma de combater o efeito cascata na leitura de cen rios seria adotar mecanismos de vis o parcial similares aos utilizados por bancos de dados Para adotar este enfoque necess rio contemplar o conjunto cen rios e documenta o associada como elementos de um grande reposit rio de dados Este reposit rio tipicamente conteria os cen rio
39. a 20 lt b E 15 e inter cen rios o 10 s intra cen rio O 5 0 S SNS SNS CA amp O PA amp Q R R Xv E ES S e Configura es Figura 4 19 Distribui o das opera es nas configura es por tipo O n mero de opera es aplicadas tamb m tende a permanecer est vel durante o desenvolvimento a menos da primeira configura o Neste caso estamos computando apenas a opera o de adi o de novo cen rio uma opera o para cada novo cen rio adicionado a base Aparentemente o n mero de opera es decresce bruscamente da primeira para a segunda configura o Na realidade o que acontece 80 que na primeira configura o a opera o de adi o realizada de modo um para um enquanto que nas demais configura es as opera es podem envolver mais de um cen rio e g uma das nove opera es que realizada na configura o Specll como veremos a seguir envolve 4 cen rios na realiza o de uma fus o Desta forma se computarmos o n mero total de cen rios envolvidos em opera es por configura o teremos um n mero est vel Este fato ficar mais evidente a seguir quando detalharemos a passagem da configura o Specl para SpecII de modo a ilustrar a evolu o dos cen rios No restante desta se o utilizaremos o segundo estudo de caso como ve culo para ilustrar a evolu o de cen rios segundo v rios aspectos Na pr xima sub se o mostraremos a evolu o entre duas configura
40. a opera o de encapsulamento a recomendada O simples fato da exist ncia dos relacionamentos que assegura uma quantidade de coincid ncia de conte do entre os cen rios envolvidos j serve como Justificativa para a aplica o das opera es Face a este exemplo estas prescri es se tornam quase que ing nuas pois nenhuma poderia empregada satisfatoriamente neste caso Fica claro a dificuldade de prescrever uma estrat gia global para a aplica o de opera es Por outro lado situa es como esta n o s o comuns Na maioria dos casos 87 observamos que a aplica o de regras simples que registramos ao longo da confec o de ambos estudos de caso serviam como guia para a escolha de opera es Neste esp rito apresentamos um pequeno comp ndio na forma de heur sticas para aplica o de opera es sobre cen rios para auxiliar na escolha e aplica o de opera es Levamos em conta pr condi es e os impactos que a opera o ter em relacionamentos anteriores e no cen rio original A Tabela 4 13 resume estas heur sticas organizadas por opera o Nome da Impacto nos relacionamentos Preserva cen rio Pr condi es Cardinalidade Opera o anteriores de original Intra Cen rios Sim Retirada Nenhum nenhuma Inter Cen rios Complemento a Cen rios originais tem de ser Equival ncia complementares Conten o Se houver relacionamentos de preced ncia transportar para cen rio resultante E
41. am um leque maior de possibilidades aos usu rios do Framework Entre as possibilidades est o a incorpora o de novos m todos para a captura de rationale e a integra o ferramentas respons veis pela confec o de outros artefatos de software Finalmente as heur sticas para a aplica o de opera es necessitam refinamento Apesar de concordarmos com Sutcliffe em que algumas heur sticas s o melhores do que nenhuma Sutcliffe98 b apontamos para o fato que estas foram derivadas da experi ncia na evolu o de cen rios e acreditamos que a futura utiliza o do Framework vai fornecer os dados suficientes para o enriquecimento destas heur sticas 144 Refer ncias Bibliogr ficas Alford77 Alford H W A Requirements Engineering Methodology for Real Time Processing Requirements IEEE Transactions on Software Engineering Vol 3 No 1 January 1977 pp 60 69 Alspaugh99 Alspaugh T A Ant n A Barnes T Mott B An integrated scenario management strategy Proceedings of the 4th IEEE Symposium on Requirements Engineering RE99 Limerick Ireland 1999 pp 142 149 Ant n98 Ant n A Potts C A Representational Framework for Scenarios of System Use Requirements Engineering Journal Springer Verlag Vol 3 No 3 amp 4 1998 pp 219 241 Antonelli98 Antonelli L ReCase trabalho final de gradua o UNLP Faculdade de Ci ncias Exatas Departamento
42. ao se detectar comportamento excepcional o ator remetido a um outro cen rio por m retoma ao inicial No caso do relacionamento de Exce o n o existe a volta ao cen rio inicial muito pelo contr rio indica que a a o tomou novos rumos Exce o Existe um relacionamento de exce o entre os cen rios A e B quando Existe uma exce o em um dos epis dios do cen rio A e esta exce o o pr prio cen rio B Tabela 4 7 Heur sticas para a detec o do relacionamento de Detour 4 3 7 RELACIONAMENTO DE INCLUS O Este relacionamento foi proposto por Grady Booch e outros no contexto de use cases Booch99 Sua inten o isolar um cen rio que cont m um procedimento comum a v rios outros cen rios e coloc lo a disposi o Desta forma reduzimos redund ncia de informa es e facilitamos a manuten o do cen rio O cen rio que cont m a informa o por outro lado n o tem significado se tomado independente de outros A utiliza o deste artif cio foi constatada em apenas um dos estudos de caso Nossa 59 hip tese que os autores tinham conhecimentos de modelagem orientada a objetos que foram estendidos e aplicados no design de cen rios Notamos por m que a introdu o deste tipo de artif cio torna o design artificial como foi dito anteriormente o cen rio introduzido n o tem significado independente dificultando o entendimento por parte dos clientes e se afastando do objetivo primeiro da utiliza
43. biblioteca lexemplar bibliotec rio bibliotec rio loga no sistema exemplar dados ela de opera es aparece dispon veis Pf ib liotecario clica em cadastrar exemplar bibliotec rio entra com nome da obra referente ao novo exemplar DI o fo hibiorec rio een no bot o de OK SERA DI o imprime eriqueta para colar no exemplar Fats local na estante para guardar novo exemplar cadastrar obra 1 2 cadastrar jbiblioteca obra bibliotec rio bibliotec rio loga no sistema i obra dados ela de opera es aparece O irma Pe DL ibliotecairio clica em cadastrar obra Sistema fora do ar Po of aparece tela de cadastro de obra Pp of pibliotecairio entra com dados da obra __ a fp et aoo eOK a aparece mensagem informando resultado da opera o consulta ao cat logo dados obra bibliotec rio bibliotec rio ou usu rio se a no sistema i et l hi a bibliotec rio ou usu rio selecionam Consultar Cat logo Dl ela de pesquisa ao cat logo aparece _____ PP fo T pibliotec rio ou usu rio entram com info da obra Es SE consulta satisfeita ENT O aparece lista de obras Nome cadastro de Saul consulta ao catalogo topogr fico atresia alpen apace Po fo pibliotecdrio ou usu rio entram com info da obra SS E E oei ovaio ciena O jocatiza odoexemplarapareco O devolu o de exemplar bibliotec rio bibliotec rio loga no sistema exemplar exemplar E Obra icha usu r
44. cen release version operation in version ON cenario id cen release id WHERE cen release rel name amp nome do release amp ORDER BY operation rel name operation in scenario MeuRecordSet Open sal MinhaConexao 3 2 MeuRecordSet MoveFirst if MeuRecordSet EOF then Nao existe cenario cadastrado na base de dados Response Write There are no scenarios in the database MeuRecordSet MoveFirst m A 1 PAR Figura 5 11 c digo em ASP A interface com usu rios implementada atrav s de browsers Escolhemos este paradigma por v rias raz es entre elas a facilidade de uso por parte de usu rios a grande base instalada e possibilidade de disponibilizar o prot tipo para a comunidade de requisitos Utilizando uma interface do tipo HTML diminu mos grandemente a curva de aprendizado da ferramenta uma vez que a grande parte dos usu rios possui no es b sicas de navega o atrav s de browsers Do ponto de vista de desenvolvimento tamb m tivemos um ganho uma vez que este tipo de interface oferece blocos prontos para a confec o das p ginas A figura 5 12 mostra o resultado de uma consulta utilizando se a ferramenta Neste caso mostramos os detalhes de uma opera o espec fica realizada durante o release Spec I do exemplo mostramos a pessoa respons vel pela opera o o rationale de sua aplica o e os cen rios envolvidos 131 3 Soma Evoketion Example Miceocoll Infeine Explore ENTRE E J E a E a a u a
45. cria o autor e coment rios fazem parte da maioria dos sistemas para a ger ncia da configura o Mikkelsen97 O grupo de Engenharia de Requisitos da PUC Rio adotou o Requirements Baseline apresentado no cap tulo 2 como o modelo base para a ger ncia do processo de desenvolvimento de software O Baseline atrav s de um sistema de etiquetas labels prescreve os mecanismos b sicos para este controle A Figura 5 7 a seguir ilustra uma das etiquetas utilizada Note que al m de data hora e autor tamb m mantemos registro dos eventos que dispararam a mudan a e que para cada vers o de cada cen rio necessariamente gerada uma etiqueta Terion TA kn a CEN RIO Y etiqueta verao Data Hora Usu rio Disparo Data do disparo Autoriza o Tipo Figura 5 7 Exemplo das etiquetas utilizadas pela Requirements Baseline e sua rela o com cen rios 113 Em nossa experi ncia no desenvolvimento de software baseado em cen rios notamos que mecanismos cl ssicos de ger ncia da configura o tais como os gr ficos de vers o e etiquetas abordados acima s o fundamentais mas n o suficientes para garantir a rastreabilidade dos sistemas Idealmente devemos tamb m manter um registro das decis es tomadas durante o processo de desenvolvimento Acreditamos que um mecanismo v lido seria o emprego de um sistema para o armazenamento do rationale que antecede a realiza o das opera es Se pud ssemos armazenar as
46. de rastreamento uma quest o sempre presente a granularidade em que trataremos a informa o Gotel95 Pohl96 No caso de artefatos como por exemplo um modelo de objetos podemos considerar unidades de informa o o pr prio modelo os objetos em separado ou detalharmos ainda mais e tratar a informa o em termos de atributos e m todos de cada classe em separado Esta decis o como discutimos anteriormente fica a cargo dos usu rios respons veis pela processo de rastreamento neste contexto que encaixamos o atributo description Ele vem de modo a permitir um expediente onde o usu rio possa acrescentar mais detalhamento as conex es que o cen rio tenha com um artefato A classe Trace possui dois m todos por m uma classe de extens o ou seja um hot spot que permite a cria o de novos m todos em sua instancia o Possibilidades s o a cria o de um novo m todo que conectasse os cen rios a artefatos automaticamente ou um m todo que fizesse um registro de data hora e autor respons vel pelo rastreamento Os m todos previstos pela classe s o link to artefact que um m todo de varia o i e permite que o usu rio mude sua implementa o durante o processo de instancia o e o m todo capture description que permite o acr scimo de informa es sobre os objetos envolvidos 122 5 3 2 5 RELEASE Esta classe possui como atributos o nome da configura o release um identificador e uma descri o
47. de Inform tica Argentina 1998 Becker83 Becker H A The role of gaming and simulation in scenario project Operational Gaming an international approach International Institute for Applied Systems Analysis Luxemburg Austria 1983 pp 187 202 BenAchour99 Ben Achour C Rolland C Maiden N A Souveyet C Guiding Use Case Authoring results from an empirical study Proceedings of the 4th IEEE Symposium on Requirements Engineering RE99 Limerick Ireland 1999 pp 36 43 Bersoff80 Bersoff E et al Software Configuration Management Prentice Hall 1980 Booch99 Booch G Rumbaugh J Jacobson I The Unified Modeling Language user guide Addison Wesley 1999 Breitman98 Breitman K K Leite J C S P A framework for scenario evolution in Proceedings of the Third International Conference on Requirements Engineering ICRE Colorado Springs USA 1998 pp 214 221 Breitman98 b Breitman K K Leite J C S P Suporte Automatizado Ger ncia da Evolu o de Cen rios I Workshop de Engenharia de Requisitos WER98 Maring PR 1998 pp 49 56 Breitman99 Breitman K Leite J C S P Processo de Software Baseado em Cen rios II Ibero American Workshop on Requirements Engineering Buenos Aires September pp 95 105 1999 145 Breitman00 Breitman K K Leite J C S P Scenario Evolution A Closer View on Relati
48. de cen rios que possam ser encapsulados ou um nico cen rio que deve ser consolidado Consolida o INSCREVER SE EM INSCREVER SE EM DISCIPLINA DE DISCIPLINA DOUTORADO Figura 4 14 Exemplo da opera o de consolida o projeto VII 4 4 2 2 OPERA ES DE EXPANS O Nesta se o apresentaremos as opera es de divis o m ltipla divis o extens o e especializa o O objetivo geral de todas estas opera es a pulveriza o do conte do de um cen rio em dois ou mais cen rios A diversidade entre elas explicada atrav s dos relacionamentos pr vios existentes entre os cen rios envolvidos e na redund ncia da informa o conte do nos cen rios resultantes 4 4 2 2 1 DIVIS O Divis o uma opera o que visa a separa o do conte do de um nico cen rio em dois ou mais cen rio separados Observamos durante o curso do estudo de caso que a necessidade da aplica o desta opera o surgia a partir de duas situa es distintas A primeira o refinamento do conte do dos cen rios a medida em que se d o desenvolvimento do software Uma vez atingida maior compreens o sobre o problema notamos a tend ncia da divis o de grandes blocos de informa o em peda os menores de modo a facilitar o manuseio dos mesmos Esta uma estrat gia que tem sido utilizada nas ci ncias exatas a bastante tempo com sucesso Polya45 A 69 segunda raz o atender a certas decis es de pro
49. de controle tais como as etiquetas e captura de rationale discutidos anteriormente se tornam fundamentais A segunda dimens o em que podemos observar a evolu o de cen rios ao longo do processo de desenvolvimento de software Como sabemos ao longo do deste processo v rias atividades s o conduzidas de modo a atingir o produto final Entre outras est o a elicita o de requisitos modelagem testes e an lise e implementa o Durante o desenvolvimento uma s rie de conjuntos de cen rios que refletem estas atividades s o produzidos Naturalmente alguns cen rios tiveram de sofrer mudan as de modo a torn los compat veis com o est gio que representam Finalmente a ltima perspectiva na evolu o de cen rio est ligada ao relacionamento dos primeiros a outros artefatos Note que as outras dimens es tratam apenas do relacionamento entre cen rios sabido que durante o processo de desenvolvimento de software s o produzidos uma s rie de artefatos que auxiliam desenvolvedores em suas tarefas Modelos orientados a objeto entidade relacionamento e cart es CRC s o apenas alguns exemplos Nesta perspectiva estudamos os relacionamentos dos cen rios com estes artefatos Chamamos esta dimens o de rastreamento Entenda se que o rastreamento da informa o acontece em todas as tr s dimens es Chamamos esta em particular de rastreamento por economia na realidade estamos designando o rastreamento dos cen rios em rela o a ou
50. de i i comprovante de matr cula cumprir parte s folha de dos requisitos aprovado na assinaturas para obten o cretaria secretaria encaminha of cio para recolher assinatura do coordenador setorial coordenad coordenador setorial re encaminha folha or setorial jassinada para secretaria secretaria fornece c pia da folha de assinatura para aluno secretaria envia of cio encaminhando exemplares para decanato of cio da secretaria envia of cio encaminhando secretaria exemplares para decanato secretaria decanato confere exemplares entregou os exemplares na secretaria decanato decanato emite of cio comunicando a obten oJexemplares n o est o onformes com as DAR secretaria avisa aluno aluno entra com pedido de diploma na DAR secretaria coordenador da p s assina of cio coordenad lof cio enviado a DAR or de p s cumprir parte dos cr ditos para obter t tulo cumprir parte dos cr ditos para obter t tulo de doutorado obter salas para as disciplinas oferecidas cumprir parte dos cr ditos para obter t tulo de doutorado cumprir parte dos cr ditos para obter t tulo de doutorado sistema de entrada de notas sistema de entrada de notas na DAR aluno se matricula em INF2060 secretaria aluno realiza trabalho junto a professor do DI lorientador de trabalho orientado professor externo orientador da disciplina assina ficha de estudo orientado secretaria aluno reali
51. design envisioning work and technology in system development John Wiley and Sons New York 1995 pp 247 278 Rumbaugh91 Rumbaugh J Blaha J Premerlani W Eddy F Lorensen W Object Oriented Modeling and Design Prentice Hall Englewood Cliffs 1991 Schneider98 Schneider G Winters J Applying Use Cases a Practical Guide Addison Wesley 1998 SEI CMI1990 Carnegie Mellon University Software Specifications A framework SEI Curriculum Module SEI CM 11 2 1 January 1990 Sommerville93 Sommerville I Rodden T Sawyer P Bentley R and Twidale M Integrating ethnography into the Requirements Engineering process in Proceedings of the First IEEE international Symposium on Requirements Engineering San Diego Ca IEEE Computer Society Press 1994 pp 165 173 Suchman87 Suchman L Plans and Situated Actions the problem of human machine communication Cambridge University Press 1987 Sutcliffe95 Sutcliffe A Requirements Rationales Integrating Approaches to requirement analysis Proceedings of the Symposium on Designing interactive systems processes practices methods and techniques ACM Press Ann Arbor USA 1995 pp 33 42 Sutcliffe97 Sutcliffe A A technique combination approach to requirements engineering Proceedings of the Third IEEE International Symposium on Requirements Engineering RE 97 IEEE Computer Society Press Annapolis
52. disciplina DO S T S S wo a k Po S T S My a Ek a al a de GJ s PR E k To os O P SE RE PPP ET E E E E Administrar lnos E pio oo Roo oo fuso CS ee A e ert S ES A ss E RE MS E O ee D E E O 21 E i E ANE ENE EE RE RE CandidaarsaodD RE Bo fo Mogi E ce O E SEE BSS Coo O E o oS ES SS O ee or EEE E i Se a SR PRN 20 2 RAS iNT C E O o S E a SUS Concluir Mestrad 52 p o o fo a fo o PNAS SENT Fe ent 2 ER A AGE Coo E 5 o SS e RE SS E SS eS E Cursar diseiplina sendo Amo Excepcion 35 2 boo bs 5 hoo o o D E O O S oS o ey SEE E E E ar E EE ESSE E E ST SO __i_i_i_i_i__ RR P E SS Ei RR E O E E LS SR SE E O E E a E o S CR ee ES ame 32 E120 Pee eS RS a O a EEE CY SS E a DemiirProfesor SE 5 fo o o e aa Emmaan HE fio fo o so fis Entregar Documenta o para Inscri o Fazer Disserta o de Mestrado 16 mes gt gt Epp E Projeto VII Ger ncia Acad mica Vers o 3 Cen rios Literais Oferecer nova 27 3 Abrir No inicio do Per odo xistir Disciplina e DI verifica calend rio Disciplina Disciplina Professor capaz de ministr la no Per odo Pi determina Professor para ministrar Disciplina Doo ooo isciptina Auno inscreve se em Disciplina Abrir Per odo 45 3 Abrir Per odo No in cio do per odo DI DI acumula dados Aluno se increve em disciplinas sobre disciplinas professoresalunos e professore
53. em n veis trat veis Pinheiro prop e uma ferramenta que realiza o rastreamento da informa o de modo 36 contextualizado Pinheiro96 O autor leva em conta que os dados que lidamos no processo de rastreamento s o situados i e s o dependentes de detalhes de uma situa o particular ou do contexto de onde surgiram Desta forma o autor foi capaz de construir uma ferramenta que realiza rastreamento de modo seletivo Este aspecto tamb m tratado pelo ambiente PRO ART Process and Repository based Approach for Requirements Traceability Pohl96 D mges98 Neste enfoque os autores prop em um Framework tridimensional para a Engenharia de Requisitos que categoriza a informa o segundo tipos b sicos definidos pelos pr prios S o eles medidas que v o de opaco a completo para medir a compreens o das especifica es medidas de formalidade para as representa es utilizadas e medidas de concord ncia entre colaboradores de modo a verificar o grau de integra o entre v rios pontos de vista O ambiente tamb m prev a exist ncia de um reposit rio para o armazenamento da informa o e uma ferramenta de apoio que permite a captura semi autom tica de informa es relativas ao rastreamento Utilizando um conceito de ger ncia de configura o a baseline de requisitos proposta por Leite oferece suporte a rastreabilidade da informa o paralelamente ao desenvolvimento do sistema Leite95 A baseline perene no sentido em
54. evolu o de software Apresentamos uma discuss o sobre aspectos relativos a ger ncia da configura o e da captura do rationale de mudan as com enfoque em quest es relativas ao rastreamento destas informa es Apresentamos a baseline de requisitos estrutura paralela ao desenvolvimento de software concebida para servir como apoio a atividades de ger ncia entre outras as relativas a ger ncia de cen rios sobre as quais esta tese repousa No cap tulo 4 apresentamos o modelo de evolu o de cen rios Iniciamos por apresentar o primeiro estudo de caso conduzido e seus resultados na forma de uma taxonomia para evolu o de cen rios A seguir apresentamos um segundo estudo de caso realizado com o intuito de testar esta taxonomia As conclus es que derivamos a partir da realiza o de ambos est o condensadas no modelo de evolu o de cen rios apresentado ao final do cap tulo Tamb m introduzimos um conjunto de heur sticas para facilitar a utiliza o do modelo proposto por parte de seus usu rios No cap tulo 5 tecemos coment rios sobre outros aspectos de ger ncia al m daqueles particulares a evolu o de cen rios que devem ser levados em conta no estabelecimento de uma estrat gia eficaz para o processo evolutivo destes artefatos O fruto desta discuss o adicionado ao modelo de evolu o de cen rios proposto no cap tulo anterior traduzido atrav s do Framework para a evolu o de cen rios proposto Este
55. medida em que fomos avan ando na elabora o do Framework proposto outras funcionalidades foram sendo adicionadas tais como a captura do rationale ligado a opera es Finalmente foram implementados os mecanismos de instancia o dos projetos que permitem que os usu rios da ferramenta estabele am a estrat gia para a ger ncia da evolu o de cen rios desejada A seguir resumimos as contribui es esperadas atrav s da realiza o deste trabalho 1 3 CONTRIBUI ES ESPERADAS Nesta se o apresentamos sucintamente as contribui es esperadas deste trabalho Em primeiro lugar temos modelo de evolu o de cen rios que surgiu como resultados dos estudos de caso realizados Este modelo explica a evolu o de cen rios ao mesmo tempo em que oferece uma estrat gia baseada no reconhecimento de relacionamentos e na aplica o de opera es que racionaliza este processo Juntamente com o modelo de evolu o produzimos um conjunto de heur sticas para a aplica o de opera es Este pequeno comp ndio relaciona a exist ncia de determinados tipos de relacionamento entre cen rios que figuram em uma mesma configura o e indica a aplicabilidade de opera es sobre os pr prios Na pr tica serve como um guia latu sensu para a pr tica e escolha de opera es O conhecimento da evolu o de cen rios adquirido e representado pelo modelo de evolu o aliado a conceitos de Engenharia de Software tais como ger ncia da co
56. no sistema de E i cart o de identifica o biblioteca identifica o i i E biblioteca do 40 carteirade funcion rio da biblioteca sistema Pergamum andar identidade retirar obra sem episodios exce o autor edita trabalho segundo as normas para publica o na s rie autro submete trabalho a editor da s rie SE editor MCC aprova trabalho ENT O editor MCC autoriza bibliotec ria a fornecer n mero h o aprova ide monografia para trabalho trabalho para publica o na S rie autor gera arquivo PS com o trabalho e arquivo txt contendo o resumo autor disponibiliza arquivos para bliotec ria uno retira formul rio de requisi o do rt o na DAR me aluno mostra comprovante de identidade no guich da DAR i aluno encaminha formul rio e fotos na AR usu rio fornece crach de identifica o usu rio mostra carteira de identidade ncion rio da biblioteca inicia m dulo cadastro de senha pessoa digita senha para utiliza o da biblioteca digita mesma senha stema Pergamum emite mensagem de senha cadastrada com sucesso j retirar obra usu rio em posse do carteira de u rio apresenta obras desejadas ao crach de i cart o de pdentidade ncion rio da biblioteca identifica o identifica o i i biblioteca do 40 funcion rio da u rio apresenta carteira de identidade f i i andar biblioteca ao funcion rio da
57. o e tipo s o capturadas pelas seguintes classes fixas do Framework Version Operation e Rationale Desta forma optamos por omitir o objeto Tag Etiqueta pois o mesmo somente traria redund ncia ao Framework sem acr scimo de informa o relevante 5 3 2 10 RELATIONSHIP Na se o 4 6 1 discutimos a causalidade existente entre a constata o de relacionamentos e a aplicabilidade de opera es Esta classe est tica desempenha dois pap is no Framework O primeiro fornecer as heur sticas que permitem a detec o da exist ncia de relacionamentos entre dois ou mais cen rios de uma mesma configura o O m todo detect relationship oferece um apoio semi autom tico para a detec o de relacionamentos entre cen rios desde de que estes estejam no formato codificado vide se o 4 1 deste trabalho O segundo papel desta classe oferecer um pequeno guia que relaciona a exist ncia de relacionamentos e a aplicabilidade de opera es nos moldes discutidos na se o 4 6 1 5 3 3 PROCESSO DE INSTANCIA O DO FRAMEWORK O Framework prescreve um processo de instancia o que permite seus usu rios decidir a pol tica de versionamento dos cen rios de sua aplica o atrav s da defini o do conjunto de opera es legais A din mica das vers es definida em tr s etapas em termos da relev ncia dos componentes no processo evolutivo em termos da natureza das informa es extras rationale necess rias a compreens o d
58. o sublinhados Esta indica o que o termo ou express o faz parte do L xico Ampliado da Linguagem LAL Na Figura 4 31 que apresentamos a seguir mostramos a entrada do LAL equivalente ao termo control panel que aparece tanto como ator quanto no epis dio 3 da terceira vers o do cen rio 11 ilustrado na Figura 4 29 Lel entry Control panel Notion Small panel with a keyboard LEDS for important states and a simple display for textual messages LEL entry Control Panel Version CRC Behavioral responses The light scenes can be determined by using the control panel A control panel is not available in the hallway section A control panel is only available in the offices computer lab and in the hardware lab Notion CRC card corresponding to the concep of a control panel Behavioral responses IF Ler input is not reasonable THEN system Issues a warning Figura 4 31 Entrada do LAL correspondente ao termo control panel que aparece no cen rio 11 3 95 Como mencionado anteriormente o L xico est em constante evolu o da mesma forma que a base de cen rios Desta forma a defini o dos termos tamb m sofre modifica es ao longo do processo de desenvolvimento De modo a ilustrar este fato mostramos na Figura 4 32 abaixo a evolu o das entradas para o termo room na vers o 1 3 e depois da fus o com o cen rio user occupies hallway section que resultou na prim
59. ou mais cen rios ao mesmo passo em que toda opera o de expans o inclui um ou mais novos cen rios na base Visto deste ngulo somos induzidos a concluir que a adi o destas opera es ao conjunto seria redundante Por outro lado devemos lembrar que os requisitos est o em constante evolu o Durante o processo de desenvolvimento de software n o raro o aparecimento de novos requisitos sejam consequ ncia de fatores alheios ao software ou demandas dos 64 pr prios clientes Desta forma n o s poss vel mas tamb m justific vel o aparecimento de cen rios completamente novos 1 e que n o resultam da divis o de cen rios existentes na base Pela mesma regra entendemos a possibilidade da exclus o total e n o a realoca o da informa o que resulta das opera es de uni o de cen rios Esta se o est subdividida em tr s grupos conforme visto anteriormente Em cada uma das se es apresentaremos as respectivas opera es e exemplos que ilustram o impacto da aplica o das mesmas sobre a base de cen rios Todos os exemplos apresentados s o oriundos dos projetos que comp em o estudo de caso realizado 4 4 2 1 OPERA ES DE REDU O Nesta se o apresentaremos as opera es de fus o encapsulamento consolida o O objetivo geral das duas primeiras opera es a uni o do conte do de dois ou mais cen rios em um nico cen rio A diversidade entre elas explicada atrav s dos relacion
60. procuramos explicar a evolu o de cen rios durante o processo de desenvolvimento de software Nos ltimos anos o grupo de Engenharia de Requisitos da PUC Rio tem sistematicamente utilizado cen rios como parte de uma metodologia de desenvolvimento de software orientada a objetos Esta metodologia consiste na evolu o gradual das especifica es do sistema a partir do L xico Ampliado da Linguagem passando por cen rios e cart es CRC at chegar no modelo de objetos Leite90 Wirfs Brock95 Hadad97 Rivero98 Neto00 Neste enfoque utilizamos cen rios em todas as fases do desenvolvimento de software n o apenas a durante a elicita o de requisitos claro que esta escolha implica na necessidade de um processo organizado para a ger ncia e manuten o destes cen rios que estar o evoluindo paralelamente ao desenvolvimento do software De modo a aprofundar nosso conhecimento sobre a evolu o de cen rios planejamos um estudo de caso que permitisse a observa o imparcial deste processo Para tal selecionamos para an lise um total de 12 projetos de desenvolvimento de software baseado em cen rios realizados durante os ltimos dois anos no Brasil e Argentina Mais de 200 cen rios e 800 epis dios foram observados A Tabela 4 1 apresenta o detalhamento dos n meros deste estudo de caso importante notar que procuramos incorporar a maior variedade poss vel tanto na complexidade do produto a ser desenvolvido quanto na atividade f
61. projeto II Sistema de biblioteca Vers o n Opera o Vers o n 1 Poss vel preced ncia RESERVAR OBRA RETIRAR OBRA DEVOLVER OBRA Divis o Pr EMPRESTAR OBRA condi o Complemento Figura 4 15 Exemplo da opera o de divis o projeto II Note que o cen rio original cedeu lugar para tr s outros cen rios conectados atrav s de um relacionamento de complemento Estes cen rios tamb m apresentam os 70 relacionamentos de poss vel preced ncia e pr condi o indicando que havia algum indicativo de temporalidade no cen rio original que foi levado em conta na aplica o da opera o 4 4 2 2 2 M LTIPLA DIVIS O A opera o de m ltipla divis o tem como objetivo b sico isolar um tipo de comportamento comum partilhado por um certo n mero de cen rios em um nico cen rio com o intuito de diminuir redund ncia Durante o curso dos estudos de caso notamos que bastante comum especialmente quando tratamos de cen rios de desenho a presen a de procedimentos b sicos comuns a v rios cen rios Estes procedimentos de modo geral dizem respeito as tarefas de manuseio de um sistema ja existente como por exemplo a ativa o do pr prio e a navega o entre telas Notamos que em alguns projetos que este comportamento foi isolado em um cen rio distinto que por sua vez era referenciado por outros cen rios Esta solu o bastante interessa
62. ree redistribui o de bolsas OH CBR RIOT ATT B37 To po qe toa leo o So ee O See O ea is defesadepropostadetese Cla r Ja J J J po S S fes frotas BBD Oo S S S R a eo S Pf Ra Jas Jea O RTT DO S S A Jes es E ES ERES Rs eS RS ee PE E q E entrar com entrar con pedido do aproveitamento de iSS do de aproveitamento de cr ditos do E12 mestrado pe Se ee ee ee ee E obter conta no laborat rio de p s m fo co RS a es o O EE AEE NES ESSES DES a es EE entrega dos exemplares da tese dissertagao a jo epa medo os eg eo e ee ee el entrar com pedido de diploma st 26H o cio Ja ESO J J DO S S oo f a J o S PAB fes Jex DO S S T T das Jea J S E S S e s d S altera o de nota AB Jes f So ESSES d ae e DO S S T T e Je S S O S S S Re as Jeo el Fazer cr dito RAAT Jes Tl PRIS Ja Jes exs PRAT Sa T T i I RR Pt o f f DO Jess T T T Sa Ss O S SA S T T Sess Ooo S S Ro f eoe Jeo S _oferecer cursar trabalho individual 29 o7 c2 R9 Ja e7 J Pt a RIO ja jes exo EE Too SJ T a ee f Oo T e Jes Jo Do 1 lero To Jo Ooo RE E e RES RR PR RR ee ee ee o o RT RT EXD montar hor rio de disciplinas 30 fou CRA TT DO i DO ERR ER T as Jes eof i a e a S S RN EG EE ministrar disciplinas curriculares 31 o7 c2 TRIO Ja fes J Doo S S Tga lia leo o T JI A3 E61 Es S T T AEE AE EE sms sl Secco pes ministrar disciplina de t picos especiais 32 07 cs
63. rio Disparo Data do disparo Figura 3 3 Exemplo do mecanismo de etiqueta utilizado pela baseline de requisitos A vis o de hipertexto oferece suporte a todas as outras vis es em especial a do l xico ampliado da linguagem LAL pois os termos est o todos interrelacionados e idealmente seriam implementados atrav s de elos de hipertexto Leite93 O l xico um mecanismo para a captura e registro da linguagem do problema A id ia b sica come ar a explorar os requisitos do sistema atrav s da compreens o da linguagem da aplica o O l xico vai al m da captura do significado denota o dos termos como a maioria dos gloss rios pois tamb m inclui a conota o dos mesmos Desta forma podemos compreender o significado dos termos de modo independente e em rela o a outros termos A Figura 3 4 ilustra uma entrada do l xico do sistema para o controle de ilumina o do Departamento de Inform tica da Universidade de Kairserslautern exemplo que utilizaremos ao longo deste trabalho Lel entry Rooms Room Notion Part of alhallway section peripheral Loom Behavioral responses Alllrooms in alhallway section can be accessed via a For each room the chosen light scene can be set by using the koom control panel For each room the default light scene can be set by using the yoom kontrol panel For each room the value of T can be set by using the poom control panel
64. rios se transformaram em epis dios do cen rio resultante 66 Vers o n Opera o Vers o n 1 CADASTRAR SENHA Fus o NO SISTEMA DE BIBLIOTECA complemento RETIRAR OBRA complemento RETIRAR OBRA UTILIZANDO CRACH DE IDENTIFICA O Figura 4 12 Exemplo da opera o de fus o projeto II 4 4 2 1 2 ENCAPSULAMENTO O objetivo da opera o de encapsulamento a uni o de dois ou mais cen rios que cont m muita coincid ncia de conte do A opera o bastante simples qualquer par ou conjunto de cen rios que mant m o relacionamento de equival ncia eleg vel para a opera o O cen rio resultante a princ pio deve herdar todos os relacionamentos que os cen rios mantinham individualmente Na realidade percebemos que na maioria dos casos onde ocorreu o encapsulamento havia coincid ncia de relacionamentos al m da de conte do entre os cen rios Esta uma conjectura razo vel pois se os cen rios apresentam grande coincid ncia de conte do justo que os mecanismos de detec o de relacionamentos apontar o para resultados similares A nica exce o o relacionamento de pr condi o Uma vez que este caracterizado mais fortemente pelo contexto dos cen rios e n o pela coincid ncia de seu conte do pode ocorrer a situa o onde um dos cen rios iniciais possui uma pr condi o enquanto que os outros n o a compartilham A validade desta opera o para o cen rio r
65. se provou til na captura dos requisitos O fato de utilizarem cen rios na descri o de situa es auxiliou em manter a aten o dos clientes Por outro lado o processo de desenvolvimento baseado em cen rios se provou fraco na captura de requisitos n o funcionais 2 3 2 CICLOS DE QUESTIONAMENTO INQUIRY CYCLE Neste enfoque os autores prop em um modelo para a descri o e suporte de discuss es sobre os requisitos do sistema que utiliza uma estrat gia baseada em ciclos consecutivos de questionamento e refinamento destes requisitos Potts94 O m todo proposto fortemente baseado em objetivos e os cen rios s o derivados a partir da identifica o e decomposi o destes Uma vez identificados os cen rios far o parte de uma estrat gia din mica que segundo os autores permite o questionamento dos requisitos do sistema 20 O ciclo se d da seguinte forma a documenta o relativa aos requisitos que consiste dos cen rios identificados e de uma lista de requisitos discutida atrav s de um processo de questionamento onde respostas e justificativas rationale para as quest es colocadas s o registradas O processo de questionamento s termina quando uma decis o tomada As decis es resultantes deste processo podem implicar na mudan a dos requisitos o que por sua vez resulta na modifica o da documenta o e justifica um novo ciclo Cen rios s o utilizados na valida o e esclarecimento dos requisitos A
66. situa es do mundo real que envolvem agentes interagindo dentro de um determinado contexto Zorman95 Esta intera o descrita atrav s de a es enumeradas em um ou mais epis dios Cen rios utilizam elementos conhecidos pelos clientes facilitando tanto o processo de elicita o de requisitos quanto a valida o dos mesmos Carroll95 Historicamente a t cnica de cen rios foi introduzida pela disciplina de planejamento militar e subsequentemente adotada em v rias outras reas tais como economia ger ncia e planejamento Becker83 Nas ltimas d cadas sua utiliza o tem se alastrado por v rias outras reas notadamente a de Intera o Homem M quina onde cen rios tem sido teis na especifica o de interfaces Planejamento Estrat gico onde cen rios s o utilizados na explora o de alternativas futuras e na Engenharia de Sistemas onde s o utilizados tanto na descri o de problemas como em suas solu es computacionais Jarke98 Carroll95 Ringland98 Nos ltimos anos crescente o interesse em cen rios por parte da comunidade de Engenharia de Requisitos em grande parte em resposta ao impacto causado pela introdu o do enfoque de casos de uso proposto por Jacobson no contexto do desenvolvimento de software orientado a objeto Jacobson92 Nas confer ncias importantes da rea temos notado um aumento do n mero de publica es relativas ao emprego de cen rios como ilustrado pela Tabela 2 1 Foi realiza
67. um cen rio ao longo de sua vida til 5 3 2 9 PRESENTATION Esta classe permite a implementa o das tr s dimens es da evolu o de cen rio discutida na se o anterior uma classe de extens o de modo que permite que inst ncias do Framework implementem novos m todos al m dos previstos Possui seis m todos que podem ser agrupados em dois tipos os de sele o e os de demonstra o Os m todos de sele o permitem que o usu rio selecione os subconjuntos de informa o que deseja pesquisar para cada uma das dimens es S o eles selectVersion selectTrace e select Release Todos estes m todos s o tamb m m todos de varia o permitindo que sua implementa o seja modificada no momento de instancia o do Framework imagine que o usu rio deseja limitar o n mero de crit rios que podem ser utilizados na sele o Os tr s m todos restantes d o conta da demonstrar a evolu o dos cen rios ou subconjuntos previamente 124 selecionados nas dimens es correspondentes S o eles show Version showTrace e showRelease Um ltimo coment rio acerca da entidade etiqueta respons vel por registrar a cria o de novos elementos na baseline de requisitos Como ilustrado na se o 5 1 2 1 deste cap tulo as etiquetas guardam informa es que auxiliam na rastreabilidade de informa es A totalidade de informa es capturadas pela etiqueta data hora usu rio trigger data trigger autoriza
68. uma das p ginas onde o usu rio pode escolher se deseja capturar o rationale das opera es e no caso afirmativo definir os par metros para tal 136 E Coonan pe Aeleace Moot Imtenel F apima 9 HA 2 eo a yadina Back mee H Charme Fulocwen Mid a C niputina rationake ki E Would you like do capuse the rationale for the operations performed on lhe scenarios you answered yes please select the operations ower which you would Bike do capture the rationale for Capture rationale for all operatior eer Ma Shand ini Tg Sremanenily delete sperano arom Conde one scenario rto z2 Am O Ce LU eae el ee od Figura 5 14 Exemplo de um dos passos de instancia o do Framework de evolu o de cen rios utilizando se a ferramenta SET Uma vez finalizado o processo de instancia o do Framework podemos dar in cio ao povoamento da base de cen rios Caso o usu rio tenha escolhido capturar o rationale para todas as opera es ele ter de entrar sua justificativa para a entrada dos novos cen rios uma vez que estes resultam de uma opera o de inclus o Caso contr rio apenas entrar com o conte do dos cen rios Toda modifica o nos cen rios da base do momento da instancia o em diante ser feito atrav s da aplica o de opera es O usu rio primeiramente escolhe a opera o e os cen rios que estar o envolvidos Em um segundo passo realiza as modifica es relativas a ope
69. v fF BA g Back Stop sires Home Gamch Faroiee Channel Fuboeen Mai Pont Fran History Peso f rp Fcc eso a hh Lindos 4 Est cd the Web Chara Gude Ge Curtonoe incr dE Free Hohia inerat Stet hia Sido Update Be o e O eee oo dis BS AWE y wa ca E Scn Ema oma E 157 5 12 Exemplo de interface da ferramenta SET 5 4 2 ESTRUTURA DA FERRAMENTA Iniciamos esta se o por mostrar um exemplo ilustrativo do funcionamento da ferramenta SET para a seguir definir mais precisamente sua estrutura interna e relacionamento com o Framework proposto apresentado na se o anterior O exemplo de intera o est ilustrado na Figura 5 13 a seguir 132 Browser CSA msi A Cr tica ro nte es E ISS Entrada Cr tica Entrada Cr tica dO usuario Resultados C digo HTML entrada processada elos Criando o Connection SELECIONANDO OS DADOS DOS CENARIOS Set MinhaConexao erver CreateObject ADODB Connection Sni Criando o Connection MinhaConexao open exemplo Set MinhaConexao Criando o RecordSet MeuRecordSet Open sal Server CreateObject ADODB Connection MinhaC 3 2 E Set MeuRecordSet RO ncaa aide MinhaConexao open exemplo P m um D erver CreateObject ADODB RecordSet N Construindo o select do Cenario f MeuRecordSeL EOF then esultados ao existe cenario value Request Form release do usu rio Resultados C digo HTML Interface ad
70. vis o explicativa do dom nio da evolu o destes artefatos Baseado em um conjunto de opera es e relacionamentos este modelo explica as vari veis envolvidas na evolu o de cen rios fazendo uma distin o entre aspectos de processo e de produto Limitando os usu rios a um conjunto fechado de opera es impomos uma certa disciplina no processo de evolu o facilitando sua compreens o De modo a auxiliar usu rios tamb m fornecemos um pequeno guia na forma de heur sticas para a sele o e aplica o de opera es A maior contribui o deste trabalho reside por m em propor uma organiza o que permite sistematizar a evolu o de cen rios segundo os preceitos da Engenharia i e de forma segura e que possa ser repetida Pressaman92 Ghezzi91 Humphrey95 Levando em conta o conhecimento sobre cen rios encapsulado no modelo de evolu o e incorporando aspectos de ger ncia de software propomos o Framework de evolu o de cen rios de modo a sistematizar a utiliza o e ger ncia destes artefatos em um contexto geral de desenvolvimento de software O Framework proposto 141 configur vel e atrav s da instancia o de hot spots permite que seus usu rios talhem estrat gias para a ger ncia da evolu o de cen rios adequadas a suas necessidades Oferecemos apoio automatizado para o Framework proposto atrav s da ferramenta SET Implementada sobre uma plataforma WEB a ferramenta conta com dispositivos
71. 93 Este estudo que envolveu mais de 100 diferentes produtos na poca em que foi realizado teve grande impacto na comunidade e trouxe a tona a import ncia 32 da quest o de rastreabilidade do ponto de vista da Engenharia de Requisitos Entre os resultados os autores avaliaram que nenhuma das ferramentas comerciais oferecia suporte adequado a rastreabilidade de requisitos e que a qualidade da ltima estava intimamente ligada a ader ncia da ferramenta aos m todos e t cnicas que implementavam O resultado mais significativo por m de que os problemas relativos a rastreabilidade de sistemas podem ser divididos em duas grandes categorias A primeira d conta dos problemas de rastreabilidade de requisitos antes destes serem inclu dos no documento de Especifica o de Requisitos ER enquanto que a segunda categoria trata da rastreabilidade de requisitos que est o capturados por este mesmo documento A primeira categoria recebeu a alcunha de pr ER enquanto que a ltima de p s ER A Figura 3 1 ilustra a separa o Pre RS traceability Post R amp Traceability Figura 3 1 Categorias para o rastreamento de requisitos Gotel93 Neste cap tulo trataremos da evolu o de sistemas dando nfase a rastreabilidade da informa o Apesar de darmos um tratamento geral a quest o nos concentraremos em mostrar aspectos mais relevantes para a evolu o de cen rios Na pr xima se o fazemos uma breve exposi o da rastreabili
72. A ltima funciona no mesmo esp rito do atributo description da classe Trace ou seja permite que o usu rio acrescente informa es sobre uma configura o em particular Os m todos desta classe permitem que o usu rio determine os crit rios que ser o utilizados para a cria o de novas configura es Os m todos setDate e setStage permitem a defini o de crit rios gerais tais como uma data do ano ou in cio t rmino de um dos est gios do desenvolvimento de software importante lembrar que o Framework n o est vinculado a nenhum processo em particular Desta forma os est gios ser o aqueles correspondentes ao processo de desenvolvimento adotado pelos usu rios O m todo createMilestone que um m todo de varia o i e permite que o usu rio mude sua implementa o durante o processo de instanciagd o permite o estabelecimento de novos crit rios Estes crit rios para a gera o de novas configura es podem estar vinculados a qualquer processo externo e cabe ao usu rio definir sua implementa o Note que o m todo do tipo dynamic ou seja permite que seja reconfigurado em tempo de execu o pode estar vinculado a algum par metro espec fico como um flag externo enviado por outro sistema por exemplo 5 3 2 6 OPERATION Como vimos no cap tulo anterior o processo de versionamento de cen rios vinculado a aplica o de opera es Desta forma esta classe concatena n o somente informa es
73. ADOS N N mm e PROJETO II SISTEMA DE BIBLIOTECA VERS O 3 A N W EN RIOS LITERAIS EN RIOS CODIFICADOS NIN wj Ge a N U PROJETO IV GRAFICA VERSAO 1 EN RIOS LITERAIS EN RIOS CODIFICADOS NIN Ap PROJETO IV GR FICA VERSAO 2 is N Oo EN RIOS LITERAIS EN RIOS CODIFICADOS NIN 00 PROJETO V CONS RCIO VERS O 1 A 31 EN RIOS LITERAIS A 31 EN RIOS CODIFICADOS A 34 PROJETO VI CONS RCIO VERS O 1 Oo q EN RIOS LITERAIS EN RIOS CODIFICADOS Got Ge WS PROJETO VII GER NCIA ACAD MICA VERS O 1 gt a ean EN RIOS LITERAIS EN RIOS CODIFICADOS EN EN S Em PROJETO VII GER NCIA ACADEMICA VERS O 2 A A A EN RIOS LITERAIS EN RIOS CODIFICADOS ele yje PROJETO VII GERENCIA ACADEMICA VERSAO 3 A 49 EN RIOS LITERAIS A 49 ENARIOS CODIFICADOS A 53 Projeto P s Gradua o do Departamento de Inform tica Vers o Cen rios Literais aprova o de banca msg de aviso providenciar curr culos dos membros da banca padr o po fsutbmeter aprova o da banca re ae era E ER GE een Ea E E Apresentar tese E s marcar defesa de tese de doutorado requisito b sico MEA para obten o do t tulo de data marcada membros da professore apresentar tese banca s DI assinaturas externo assinam livro de ata aluno secretaria aluno prepara folha de assinatura doutorado aluno coleta assinatura de membros da banca colet
74. AS PESSOAS Estrutura de Modo ENVOLVI DAS Superf cie Enf ase Ontoldgica COMPATI BI LI DADE COM A PR TICA EXI STENTE Figura 2 1Framework para a classifica o de cen rios proposto por Anton e Potts Ant n98 A seguir detalhamos cada um dos crit rios propostos O primeiro nfase ontol gica se refere a aspectos como a temporalidade dos eventos tratados pelos cen rios e o modo em que s o caracterizados os agentes participantes Segundo os autores podemos distinguir entre agentes do mundo real cujo comportamento n o determin stico e aqueles que s o projetados pelos designers objetos que fazem parte do software por exemplo cujo comportamento podemos prever O segundo crit rio estrutura de superf cie diz respeito ao modo em que o cen rio em si se apresenta para os clientes 1 e se uma descri o em linguagem natural utiliza gr ficos Tabelas storyboards ou outras representa es O crit rio de escopo define a dura o dos comportamentos descritos no cen rio Na realidade funciona como uma medida de autoconten o onde o cen rio pode descrever uma transa o completa ou apenas parte de um comportamento O crit rio de n vel de detalhamento se refere aos graus de complexidade em que s o expressos os comportamentos descritos pelo cen rio e refinamento dos agentes presentes O crit rio de refer ncia define o ponto de vista do autor dos cen rios e g os cen rios s o descritos a partir de um
75. AT E37 i i i E39 E40 EM Apresentar Identifica o E 03 C3 PRS AS E7 atalogar peri dico novo i 20 i os A8 E17 cs R7 A6 E10 Projeto Ill Sistema de Biblioteca Vers o 1 Cen rios Literais Nome no objetivo contexto recursos atores cadastrar obra cadastrar biblioteca ficha daobra bibliotec rio E obra E i divro n o obra cadastrado 2 devolver biblioteca obra obra i i devolver obra obra ficha da obra usu rio emprestada usu rio cart o do usu rio cadastrado hor rio de funcionamento retirar obra da usu rio biblioteca art o do usu rio bibliotec rio biblioteca retira obra i i da biblioteca hor riode ficha da obra usu rio funcionamento i registrar usu rio 4 registrar biblioteca usu rio lt hor rio de funcionamento usu rio bibliotec rio art o do usu rio bibliotec rio usu rio solicita cadastramento episodios exce o restri o definir c digo E c digos existentes E para cadastro E dados bem definidos registrar dados digitar dados no micro stema fora d fazer ficha da obra i usu rio entrega cart o ao bibliotec rio cart o n o v lido bibliotec rio examina cart o do usu rio usu rio entrega obra ao bibliotec rio obra danificada bibliotec rio examina obra b
76. Default quanto o Chosen light scenes seriam ativados A segunda vers o corrige este erro e estabelece valores diferentes para a ativa o dos diferentes par metros As express es que aparecem sublinhadas correspondem a elos para termos do L xico Ampliado da Linguagem LAL Na pr xima se o mostraremos a terceira e ltima dimens o da evolu o dos cen rios o rastreamento com outros artefatos presentes na baseline de requisitos 92 4 6 3 EVOLU O DE CEN RIOS EM RELA O A OUTROS ARTEFATOS Ao longo do desenvolvimento de software s o produzidos uma s rie de artefatos que tem como objetivo documentar o processo e registrar os produtos gerados a cada um de seus est gios Pressman92 No cap tulo 3 introduzimos a baseline de requisitos uma estrutura concebida para capturar e gerenciar a evolu o destes artefatos Neste contexto a evolu o de cen rios apenas uma faceta V rios outros processos paralelos se desdobram ao longo do desenvolvimento de software Entre outros temos a evolu o do L xico Ampliado da Linguagem que tem de ser atualizado de modo a refletir mudan as no desenvolvimento do software No contexto da evolu o fundamental que possamos rastrear a informa o contida em um cen rio n o s em rela o aos restantes da base mas tamb m em rela o a outros artefatos de software produzidos No restante desta se o nos dedicamos a rastreabilidade dos cen rios A Figura 4 28 a seguir mostra a f
77. Figura 4 21 a seguir 82 N mero Cen rios N mero de Cen rios N mero de Tipo envolvidos cen rios resultantes cen rios envolvidos resultantes Encapsulamento 1 1e 16 1 Inter cen rios Fus o Fus o 2 1 7 1 8 1 Inter cen rios 9 1e 18 1 Inter cen rios E RL 4 M ltipla Divis o 1 Inter cen rios Tabela 4 12 Rela o das opera es realizadas sobre os cen rios da configura o I i Specl importante notar a variedade de opera es dispon veis na Tabela 4 12 temos desde opera es que n o alteram o n mero de cen rios da base intra cen rio passando por opera es que contraem este n mero e que resultam no aumento do montante total de cen rios V rios cen rios desapareceram na transi o das configura es como resultado da aplica o das opera es de contra o i e neste caso as opera es de n mero I II II VI e VII resultaram no desaparecimento dos cen rios de n mero 7 1 8 1 9 1 10 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 e 23 1 Na realidade apenas os cen rios sob estes n meros desapareceram as informa es contidas nos mesmos foram realocadas ou para cen rios j existentes e g no caso da opera es I onde o cen rio 16 1 foi incorporado na segunda vers o do cen rio 1 1 2 ou para novos cen rios e g opera o VII onde o cen rio 20 1 desapareceu para dar lugar aos novos cen rios 24 1 25 1 e 26 1 De modo semelhante a ltima outras opera es t
78. KARIN KOOGAN BREITMAN EVOLU O DE CEN RIOS TESE DE DOUTORADO Departamento de Inform tica Rio de Janeiro 12 de Maio de 2000 KARIN KOOGAN BREITMAN EVOLU O DE CEN RIOS Tese apresentada ao Departamento de Inform tica da Pontif cia Universidade Cat lica do Rio de Janeiro como parte dos requisitos para obten o do grau de Doutor em Inform tica Orientador Julio Cesar Sampaio do Prado Leite Departamento de Inform tica Pontif cia Universidade Cat lica do Rio de Janeiro Rio de Janeiro 12 de Maio de 2000 Ao Andr pelo apoio amor e muitos muitos meninos li Agradecimentos Ao meu orientador Julio Cesar Sampaio do Prado Leite pela orienta o por sua vis o nica e pelo incentivo durante todo o processo de elabora o desta tese To my friends Dan for pointing to the road less travelled by and Julio for making all the difference Ao Rangel por ter acreditado em mim Ao Departamento de Inform tica da PUC Rio seus professores funcion rios e alunos pelo aux lio em incont veis ocasi es Ao CNPq e ao Laborat rio de Engenharia de Software LES PUC Rio pelos apoios financeiro e institucional iii Resumo Nos ltimos anos observamos que um n mero crescente de pesquisadores na rea de Engenharia de Software tem adotado a t cnica de cen rios Esta atrav s da utiliza o de descri es de situa es pr prias ao mundo real aproxima clientes e desenvolvedores fac
79. Micioanl Iitin apk Arquivo Edter Ebr fFevodios Fean Auda EI oe gt iz 1 I E x E pese j hatpof stones des ind puc rio brFearicueseermeploindes hired rl How bo ose this site scenario malfunction occurs Version 4 Trace Uther l First appeared in release Imp l C examples 5 wewu Can be traced to Artefact Object Oriented Model of System Scenario Contents bal tov bo proceed when a malunchon occur Combest maBunction detected by method m lu secel of cla le model Control anel model device abs ap irene BO dB Iniciar E Hirc aich Jukebox TF Micraeall wrod base 7 E hep stones lerini mf age 11 4 Figura 5 2 Vers o 4 do cen rio malfunction occurs e seus relacionamentos com outros artefatos de software representados atrav s de elos de hipertexto Outras possibilidades de visualiza o seria verificar a rastreabilidade de um cen rio em particular em rela o a outros da base Neste enfoque ter amos todos os cen rios que estariam diretamente conectados com o cen rio em quest o ou atrav s de relacionamentos no caso de cen rios pertencentes a mesma configura o ou atrav s de opera es neste caso envolvendo outros cen rios ao longo da vida til do cen rio Ilustramos o ltimo caso na Figura 5 3 a seguir 108 a B ut ag A Endaga E bite stores bee inf pues be arin amplo ires hird imp act of chang es om diferent versions and other scenarios in
80. Outros aspectos tais como os objetivos de utiliza o e o per odo em que ser o empregados tamb m devem ser levados em conta Na realidade existem v rias pontos de vista pelos quais podemos analisar e subsequentemente categorizar a utiliza o destes artefatos durante o processo de desenvolvimento de software Os esquemas para classifica o de cen rios que apresentaremos a seguir s o multifacetados evidenciando que n o estamos tratando de um problema trivial O ponto desta se o expor a grande variedade sem ntica existente entre as diversas propostas para a representa o de cen rios e a dificuldade de se realizar um estudo comparativo entre as mesmas Seguimos por apresentar a proposta de Ant n e Potts para a classifica o de cen rios Ant n98 2 2 1 FRAMEWORK PARA CLASSIFICA O DE CEN RIOS PROPOSTO POR ANT N E POTTS Segundo Ant n e Potts as proposta de cen rios encontradas na literatura podem ser diferenciadas segundo apenas dois crit rios S o eles o que s o e para que est o sendo utilizados Ant6n98 De modo a definir o que s o os cen rios i e seu espa o representacional os autores os classificam segundo seis crit rios distintos S o eles nfase ontol gica estrutura de superf cie escopo n vel de detalhe refer ncia e modo A Figura 2 1 ilustra o Framework proposto pelos autores 13 COMPLETO Escopo Refer ncia N vel de CONGRU NCIA COM detalhe PRECI SAO A LINGUAGEM D
81. S M A Multimedia Approach to Requirements Capture and Modeling in Proceedings of the First International Conference on Requirements Engineering IEEE Computer Society Press Colorado Springs April 18 to 22 1994 pp 53 58 Yeh84 Yeh R Zave P Conn A Cole G Software Requirements New Directions and Perspectives Handbook of software engineering 1984 pp 519 543 Yeh90 Yeh R Ng P Software Requirements a management perspective System and Software Requirements Engineering Dorfman M and Thayer R eds Institute of Electrical and Electronics Engineers Inc 1990 pp 450 461 Zorman95 Zorman L Requirements Envisaging through utilizing scenarios REBUS Ph D Dissertation University of Southern California 1995 152 Ap ndice Nesta se o disponibilizamos os cen rios relativos aos projetos que fizeram parte do Estudo de Caso I 153 Ap ndice I Cen rios dos projetos utilizados no Estudo de caso 1 NDICE PROJETO I P S GRADUA O DO DEPARTAMENTO DE INFORM TICA pd EN RIOS LITERAIS EN RIOS CODIFICADOS a do E p N PROJETO II SISTEMA DE BIBLIOTECA VERSAO 1 EN RIOS LITERAIS EN RIOS CODIFICADOS N A j ui PROJETO II SISTEMA DE BIBLIOTECA VERS O 1 Li pd Q0 EN RIOS LITERAIS EN RIOS CODIFICADOS p f pr ola PROJETO II SISTEMA DE BIBLIOTECA VERS O 2 a N EN RIOS LITERAIS EN RIOS CODIFIC
82. SE or amento aprovado ENT O liente gr fica emite ordem de servi o ancela servi o E r fica emite nota fiscal EE EEE efetua pagamento fetuar pedido de 5 jobter orgamento cliente deseja confeccionar cliente cadastrado liente Cliente contata gr fica para confec o impresso de impresso cliente informa o uncion rio funcion rio preenche formul rio de sobre impresso servi o Cliente j informou gr fica gr fica calcula or amento preencher formul rio de entrar com Cliente j informou nforma es uncion rio funcion rio preenche formul rio de ordem de servi o informa es do caracter sticas do impresso sobre impresso servi o impresso of o eia o o o o calcular or amento 7 calcular cliente j pediu or amento formul rio de uncion rio uncion rio preenche informa es or amento servi o adicionais Cliente j informou nforma liente funcion rio consulta tabela de pre os Caracter sticas do impresso sobre impresso pe abela de pre os gr fica funcion rio calcula or amento i gr fica envia or amento para cliente aprovar or amento SER aprova o Ea recebeu or amento jorgamento liente Cliente recebe or amento do cliente Dl fe fica ent anatisa orgamento SE cliente n o aprova ENT O cliente decide se aprova ou n o SE RR O O ee alterar or amento modifi cliente recebeu or amento jor amento liente cliente define altera es NS ore Pee oe ee gr fica nforma es uncio
83. T1 minutes THEN activate last chosen light scene IF room is reoccupied after T1 minutes THEN activate default light scene store chosen light scene store moment when person left the room Person occupies place Version 1 Goal establish the procedure for occupied place Context variable motionSensor is true Resources variable timeToReocup constructor Place motion sensor LEL entry Room Rooms Notion 1 Actors package scl view package scl utilities class scl model Room public class Room scl view ChooseLightScene java lang Object scl model Place 4 scl model Room Behavioral responses extends Place implements SclRequestTimer implements method index enterIn setDefaultLightScene motionDetectorOutOfOrder Episodes activate method enterIn of class pcl model Place 1 2 3 activate constructor Place motion sensor 4 activate method apply setDefaultLightScene of class pel modgJ 5 6 7 if place is change variable default time to reoccupy roo call method getTimeToReocup of set variable timeToReocup of class 8 if reoccupied within value T1 minutes activate methods EiCurrent ghiScene dnd ppplyCurrenLishtScene f class 9 if reoccupied after value T1 minutes activate method setChosenLightScene of Oe eee Exception Error package scl utilities Figura 4 32 Correspond ncia entre a evol
84. a o de cen rios para a elicita o e valida o de cen rios Sutcliffe98 Sutcliffe98 b Maiden98 Baseada na utiliza o de usos de caso esta ferramenta fornece apoio para a gera o semi autom tica de cen rios a partir dos primeiros Apesar da utiliza o desta ferramenta ser pontual apenas durante o est gio de requisitos ela apresenta um diferencial sobre outras pois permite a identifica o de inconsist ncias e incompletezas nos requisitos a partir de uma an lise de padr es de eventos em cen rios Os autores enfatizam a import ncia de oferecer suporte a visualiza o do conjunto de cen rios pois estes ser o utilizados em uma estrat gia para a valida o dos requisitos do sistema Parte fundamental do Framework proposto apresenta o dos cen rios da base Entendendo que cen rios facilitam a comunica o entre clientes e desenvolvedores de suma import ncia que todas as informa es necess rias sejam disponibilizadas Como discutido nos cap tulos anteriores desta tese s o v rias as dimens es nas quais podemos observar a evolu o de cen rios Alguns exemplos s o a evolu o de cen rios em particular de um conjunto de cen rios configura o ou o relacionamento de um cen rios com outros artefatos de software Finalmente Ben Achour e outros prop em um conjunto de heur sticas para guiar o processo de autoria de casos de uso BenAchour99 Segundo os autores muito comum que a primeira vers
85. a perspectiva externa ou de uma das entidades do pr prio sistema Finalmente o crit rio de modo define o tipo de comportamento que est sendo descrito Eles podem ser do tipo indicativo ou seja descrevem um fato do 14 mundo real ou do tipo optativo descrevem comportamento que desejado ou requerido do sistema Al m dos crit rios descritos acima Ant n e Potts ainda incluem outros que avaliam a efic cia das representa es de cen rios Em primeiro lugar os cen rios devem ser congruentes com a linguagem utilizada pelos clientes Especifica es de modo geral s o de dif cil compreens o para leigos Cen rios oferecem uma alternativa para a valida o das mesmas por m somente ser o eficazes se utilizarem uma linguagem que os clientes possam compreender O segundo crit rio o fato do cen rio em quest o ser completo Segundo os autores cen rios s o inerentemente incompletos pois apenas exemplificam comportamentos Uma quest o fundamental se um conjunto de cen rios representativo da funcionalidade que se deseja implementar O terceiro crit rio precis o e significa a aus ncia de ambiguidade na sem ntica do cen rio Finalmente devemos avaliar a utiliza o de cen rios em rela o a outras pr ticas concomitantes Aplica o de cen rios apenas uma das t cnicas que podem ser utilizadas durante o desenvolvimento de um sistema Devemos verificar se as pr ticas utilizadas s o realmente compat veis i
86. abalho realizado na pr xima subse o 1 2 VIS O GERAL DA TESE De modo a melhor compreender a evolu o de cen rios come amos por organizar um estudo de caso extenso envolvendo um total de doze projetos onde os objetivos principais eram a observa o e a anota o de fen menos relativos a evolu o de cen rios Os projetos selecionados foram realizados ao longo dos dois ltimos anos por terceiros orientados por membros ou pessoas ligadas a da equipe de Engenharia de Requisitos da PUC Rio A autora que organizou e analisou este estudo de caso n o teve envolvimento com os grupos A postura assumida ao investigar os mais de 800 epis dios estudados foi de observador anotamos e registramos os fen menos relativos a evolu o de cen rios e os condensamos em uma Tabela que resume os resultados desta an lise sob a forma de uma taxonomia para a evolu o de cen rios Esta taxonomia leva em conta tanto aspectos relativos a configura es de cen rios relacionamentos quanto aspectos relativos ao versionamento dos mesmos opera es A taxonomia composta por oito relacionamentos que descrevem o modo em que os cen rios est o interligados uns aos outros em uma mesma configura o e g atrav s de rela es de pr condi es ou relacionamentos de complementariedade e um total de doze opera es As opera es est o divididas em duas categorias intra e inter cen rios A primeira diz respeitos a opera es que envolve
87. acade chama o m todo emprestimo de i CServicos correspondente ao tipoUsuario passando i NumeroRegistro e NumeroCartao i Cria uma ficha da obra com o NumeroRegistro o NumeroCartao e a data atual i ativos Cen rios Codificados Nome objetivo contexto recursos atores episodios Devolu o de exemplar 02 E28 R2 A6 E35 AS E8 A4 E4 i A3 i ES RI E39 A2 E40 ES E5 E5 E5 E5 ES E6 E41 i E27 LAT E12 1 A4 F4 AB E39 Al E40 AZ _E8 Empr stimo de Exemplar Projeto IV Gr fica Vers o 1 Cen rios Literais a tores episodios Nome ncluir cliente Contexto ecursos Cliente pede or amento funcion rio uncion rio verifica cadastro DIO s fica fincion rioinciui dados no sistema excluir cliente cliente n o pediu or amento cliente cadastrado cliente Cliente n o mais efetua pedido de fogao hum deito gerido O ameno O Doo gr fica To Prmcion rio funcion rio verifica cadastro oo o Primcion rioexcluidados dos sistema terar dados do cliente sofrem liente cadastradopliente dados do cliente s o alterados nforma es modifica es r fica Do uncion rio uncion rio verifica cadastro funcion rio altera informa es no cadastro excluir cliente fetuar servi o SE dados do cliente aterados ENT O funcion rio altera dados O Do ordemdeservi o Teliente aprova or amento nota fiscal
88. aceta trace da evolu o de cen rios e a distin o que feita entre a rastreabilidade entre os pr prios cen rios e outros artefatos de software e DIS add fig Mone fed pen a quatro pa ir Find out the impacts ofa scenario on other representations contained in the Baseline CRC OO models ebci Mei rie T Ema Figura 4 28 Rastreabilidade em rela o a cen rios da base e outros artefatos de software 93 A seguir mostramos um exemplo mais pontual a rastreabilidade da terceira vers o do cen rio user occupies room que aparece como resultado da opera o de modifica o durante a configura o Design Enfatizamos liga o deste cen rios com outros artefatos de software neste caso com cart es CRC Whirfs Brock90 Scenario user occupies room Version 3 First appeared in release Design Date of creation 11 23 99 Can be traced to Artefact CRC cards o O Detail The de A of this scenario is distributed in the following cards control panel luser and room n order entered r Resource value SECRETA ast correct management value Default light scene for this room Chosenlight scene Actors user Central Control outdoor light sensor Epes 1 user rjenters r bends last correct measurement to room ontrol panel Exception user input is not reasonable roomlis reoccupied wihtin Mi minutes THEN activate last Chosen light scene tored in Default ight scene kt
89. ala de Aula Aluno Aluno com sua Aluno finaliza sua disserta o de Mestrado Disserta o de devida disserta o Mestrado Banca Aluno marca no DI data e sala para fazer sua disserta o Examinadora Aluno apresenta sua disserta o para banca examinadora Aluno em poca de Aluno submetido a exame de l ngua exame de l ngua Fazer exame de caso seja aluno de mestrado somente l ngua inglesa caso doutorado exame de ingl s e uma segunda l ngua w Aa w 5 oS Aluno submetido a exame de qualifica o de doutorado qualifica o de em poca de exame doutorado de doutorado Candidato a Candidato a doutorado apresenta sua proposta de trabalho de Trabalho 2 doutorado possuindo para seu orientador Estudo para proposta para Doutorado Aluno de Mestrado apresenta sua proposta de Disserta o Disserta o de ssui sta de Mestrado Mestrado Orientador avalia proposta Proposta reformulada junto ao Orientador luno de doutorado Aluno de Doutorado apresenta sua proposta de Tese de possuindo proposta outorado para Orientador im do per odo DI DI acumula dados Aluno conclui mat ria sobre disciplinas DI calcula CR do aluno DI passa situa o do aluno para DAR micro hor rio Aluno adquire o micro hor rio disciplina n mero de matr cula monta seu hor rio procura o caso Aluno est presente no dia da matr cula necess rio Do Aluno executa matr cula on line Ambiente de ensino Profess
90. alho Percebemos por m que para realizar um processo eficaz de ger ncia de cen rios apenas a compreens o das particularidades associadas a evolu o destes artefatos n o seria suficiente Aspectos mais gerais de ger ncia tais como captura do rationale relacionado as opera es a armazenagem ger ncia da configura o e apresenta o da informa o tamb m teriam de ser levados em conta Estes aspectos s o apresentados e discutidos em detalhe no cap tulo cinco deste trabalho Eles foram incorporados ao modelo de evolu o e resultaram em um Framework para a evolu o de cen rios O Framework proposto possibilita seus usu rios instanciarem a estrat gia de ger ncia de evolu o mais adequada a suas necessidades Desde um processo complexo e g onde o rationale para todas as opera es e capturado v rias formas de apresenta o s o disponibilizadas e o rastreamento entre os cen rios e outros artefatos explicitado at processos mais enxutos focados em opera es espec ficas de interesse de clientes ou usu rios podem ser instanciados Finalmente apresentamos o prot tipo da ferramenta SET Scenario Evolution Tool que oferece suporte automatizado para as atividades prescritas pelo Framework de evolu o de cen rios A constru o desta ferramenta se iniciou concomitantemente 5 com a elabora o do segundo estudo de caso de modo a fornecer apoio automatizado a captura e armazenamento de cen rios A
91. amb m resultaram na cria o de novos cen rios que n o existiam na configura o inicial o caso das opera es de fus o VIII que apesar de resultar no desaparecimento dos cen rios 21 1 e 22 1 deu margem ao aparecimento do novo cen rio 27 1 e da opera o 83 IX que resultou no aparecimento dos novos cen rios 28 1 e 29 1 No caso da ltima o desaparecimento do cen rio inicial da opera o de Divis o foi uma decis o de desenho Mostramos a seguir o gr fico de relacionamentos existentes entre os cen rios da configura o Specl Todos os relacionamentos foram detectados atrav s das heur sticas propostas na se o 4 3 deste cap tulo Tentaremos tra ar um paralelo entre a detec o dos relacionamentos e do envolvimento de cen rios nas opera es aplicadas Segundo a Tabela 4 12 as opera es que envolvem dois ou mais cen rio s o as de n mero I II HI e VIH Passamos a analisar cada uma destas em detalhes Release Spec 1 1 malfunction occurs 13 1 user leaves room 2 1 outdoor sensor out of order 14 1 user leaves hallway section 3 1 motion detector out of order 15 1 control ligth groups 4 1 turn on lights manually in a room 16 1 malfuntion 5 1 turn on lights manually in a hallway section 17 1 malfunction of the motion detector occurs 6 1 use the control panel 18 1 malfunction of the outdoor light sensor occurs 7 1 inform facility manager of malfunction 19 1 turn lights on 8 1 find reason for malfunction
92. amentos pr vios existentes entre os cen rios envolvidos e na quantidade de informa o conte do que ser descartada ao final da opera o A opera o de consolida o difere das demais por transformar um nico cen rio em outro com um grau de abstra o maior Como resultado desta opera o temos um cen rio com seu escopo aumentado ou uma generaliza o do procedimento tratado pelo cen rio original Esta opera o evita a introdu o de cen rios equivalentes na base que no fundo tratam do mesmo procedimento a salvo de pequenas modifica es 4 4 2 1 1 FUS O A fus o visa a uni o de dois ou mais cen rios que est o logicamente relacionados em um nico cen rio Muitas vezes durante o desenvolvimento aparecem cen rios que s o muito breves ou cont m relativamente pouca informa o para justificar sua presen a independente Esta opera o objetiva juntar estes procedimentos em um nico cen rio tornando o conjunto mais expressivo 65 A opera o de fus o caracterizada por condensar o conte do de dois ou mais cen rios em um nico preservando parte da informa o dos cen rios originais Os cen rios iniciais devem ser complementares o que significa que podem ter coincid ncia de conte do Se houver indica o de sequ ncia de a es i e exist ncia de relacionamentos do tipo pr condi o e poss vel preced ncia entres os cen rios envolvidos estes relacionamentos devem ser levados em conta de mo
93. and 1995 pp 89 95 Ramesh98 Ramesh B Factors influencing requirements traceability practice IEEE Software vol 41 No 12 December 1998 pp 37 44 Ramil99 Ramil J F Lehman M M Modelling process dynamics in software evolution process some issues submitted to the workshop on software change and evolution SCE 99 Ringland98 Ringland G Scenario Planning Managing for the future John Wiley and Sons 1998 Rivero98 Rivero Doorn Fresno Mauco Ridao Derivaci n de Objetos Utilizando LEL y Escenarios en un Caso Real I Workshop de Engenharia de Requisitos WER98 Maring PR 1998 pp 89 98 Robertson99 Roberstson S Robertson J Mastering the Requirements Process ACM Press and Addison Wesley 1999 150 Rolland98 Rolland C Achour B Cauvet C Ralyt J Sutcliffe A Maiden N Jarke M Haumer P Pohl K Dubois E Heymans P A proposal for a scenario classification framework Journal of Requirements Engineering vol 3 Springer Verlag 1998 pp 23 47 Rolland99 Rolland C Grosz K Kla R Experience with Goal Scenario Coupling in Requirements Engineering Proceedings of the 4 International Symposium on Requirements Engineering IEEE Computer Society Press Limerick Ireland 1999 pp 74 83 Rosson95 Rosson M B Carroll J Narrowing the specification implementation gap in Scenario based
94. antes tem um papel fundamental no apoio a rastreabilidade Gotel95 Gotel aponta que falhas na captura e registro da informa o pr ER s o respons veis pela queda na qualidade do rastreamento dos requisitos De modo a minimizar alguns destes problemas sugerido que alguns aspectos sejam levados em considera o entre eles aumentar a conscientiza o da equipe da import ncia da informa o pr ER da obten o e registro da mesma e dissemina o de t cnicas para a organiza o e manuten o da informa o Em rela o ao aspecto de obten o e registro da informa o do tipo pr ER apontado por Gotel Wood oferece uma alternativa baseada na utiliza o de t cnicas hiperm dia para a captura e registro de requisitos de sistema Wood94 O argumento que suporta este enfoque que atrav s da utiliza o de v deo e udio poss vel armazenar requisitos do sistema em um formato muito pr ximo ao original De modo geral dados brutos passam por um processo de transforma o que os tonam mais formais e permitem sua inclus o no documento de ER Neste processo informa es relevantes 34 podem ser perdidas e o rastreamento at a fonte que deu origem ao requisito dificultado Nesta luz o autor prop e que a utiliza o de t cnicas multim dia pode vir a reduzir este problema e ajudar a minimizar a volatilidade dos requisitos Este ponto de vista apoiado por Jirotka que utilizou v deo no aux lio a captura
95. aprofundamento do conhecimento do problema a ser resolvido Esta classe possui os m todos createVersion que permite a instancia o da classe abstrata e o m todo takeHistory que coleta dados para a elabora o dos hist ricos dos cen rios Note 120 que esta uma classe fixa n o possui nenhum hot spot de maneira que todas as inst ncias do Framework possuir o a classe cen rio 5 3 2 2 VERSION A classe vers o representa a instancia o da classe abstrata cen rio Tamb m uma classe fixa e cont m os seguintes atributos title e first appears herdados do cen rio abstrato date author version id e content O m todo selectOperation permite a sele o de opera es que lembramos s o as respons veis pelo mecanismo de versionamento 1 e uma nova vers o de um cen rio somente pode ser criada como resultado de uma opera o O m todo selectComp por sua vez permite que o usu rio determine os componentes sob o qual deseja manter registro do processo de versionamento 5 3 2 3 COMPONENT Esta classe a generaliza o dos componentes pertinentes aos cen rios No cap tulo 3 onde fazemos um revis o da literatura de cen rios estendemos a classifica o proposta por Rolland Rolland98 de modo a integrar os quatro componentes ilustrados no Framework a saber agente inten o a o e ambiente Esta classifica o leva em conta os componentes presentes nas representa es para cen rios estudadas
96. ar assinaturas renovar bolsa dejaluno dentro software de f 3 aluno se apresenta para renovar bolsa na sala E a a do orientador renovar bolsa dejaluno dentro Fresca datos do aluno DT FF porientacor preenche avatiagio doao id orientador submete renova o para org o financiador aluno se E jas ist ri aluno pega hist rico na DAR retira pend ncia biblioteca matricula atri documento formul rio de Jorientador jaluno preenche formul rio de matr cula matr cula per odo de elat rio DAR aluno entrega relat rio semestral na secretaria ee re ERES C R matricula alunos do DI secretaria jaluno apresenta formul rio de matr cula para orientador assinar Doo To To famoentrega formul rio de matr cula na DAR TT faluno recebe confirma o de matr cula DOO 0 O matr cula la aluno se ae de jaluno ene pega formul rio de matr cula na periodo de lorientador huno preenche formul rio de matr cula matr cula Doo DAR faluno entrega relat rio semestral na secretaria secretaria aluno apresenta formul rio de matr cula para orientador assinar Doo alu entrega formul rio de matr cula na DAR f Po aluno recebe confirma o de matr cula O E m E a Ch A 1 inscrever se na seleci Ari E aluno retira formul rio de inscri o na i i secretaria ou internet curr culo prazo de hist rico secretaria verifica documenta o inscri o E 4 N o cartas de recomenda o secretaria aceita inscri
97. as Filippidou98 O Framework classifica os cen rios apenas em rela o a seu conte do diferentemente dos outros dois Frameworks j apresentados onde o conte do apenas um de seus componentes A seguir apresentamos cada uma das perspectivas para a classifica o previstas por Filippidou e perspectiva de processo classifica os cen rios quanto a sequ ncia de a es ou eventos descritos e perspectiva de situa o classifica os cen rios quanto as situa es concretas que representam e perspectiva de escolha classifica os cen rios quanto a possibilidade de ramifica es sejam comportamento excepcional ou tratamento de diferentes alternativas e perspectiva de utiliza o classifica os cen rios quanto o ponto de vista do agente que vai utiliz lo Do ponto de vista dos clientes os cen rios descrevem como estes utilizar o o sistema enquanto que do ponto de vista dos desenvolvedores esta perspectiva respons vel por mostrar como os sub produtos est o relacionados at o momento de entrega do sistema 17 Na se o 2 2 mostramos uma grande variedade de reas onde a t cnica de cen rios pode ser aplicada Deste a captura de requisitos do sistema at aux lio para a tomada de decis es profissionais tem utilizado cen rios para apoiar suas tarefas Dado a grande variedade de poss veis empregos para esta t cnica n o conseguiu se chegar a uma nica defini o para o termo cen rio Atual
98. astrado na base de dados Response Write There are no scenarios in the database else MeuRecordSet MoveFirst value Request Form release RE ase Gea Software Basico AN VN gt A T gt Vy VA L xico Modelo 00 Consulta em SQL Resultados Hist rico de Cart es re CRC Reposit rio de Cen rios Base de Dados Figura 5 13 Esquema da ferramenta SET ilustrando uma intera o 133 Neste exemplo fazemos uma consulta de modo a determinar a rastreabilidade de um cen rio em uma vers o espec fica em rela o a outros artefatos da base O processo visto da esquerda para direita come a com a primeira intera o via a janela do browser Por raz o de economia vamos assumir que o usu rio j escolheu a op o trace do menu principal e a seguir a op o de rastreabilidade de um cen rio em rela o a outros objetos de software ao inv s da rastreabilidade em rela o ao outros cen rios da base como ilustrado na Figura 5 3 deste cap tulo Desta forma o usu rio confrontado com uma tela contendo todos os cen rio existentes na base para escolher aquele que deseja pesquisar Esta tela a primeira da esquerda para direita Uma vez que o usu rio fa a uma escolha v lida de cen rio esta processada pelo c digo ASP que monta uma querie onde requisita as vers es existentes do cen rio Caso contr rio 1 e se o usu rio n o escolheu um cen rio ele recebe uma mensagem
99. ate ent o Acreditamos que futuramente outros tipos de componentes possam surgir Desta forma fizemos uma provis o para esta eventualidade no Framework atrav s da restri o incomplete adicionada a classe Component Este um hot spot de interface ou seja permite que o novas classes representando outros tipos de componente sejam incorporadas a inst ncias do Framework atrav s da instancia o da classe New Component Note que al m de incomplete a classe tamb m restricted Esta restri o limita o comportamento da nova classe impedindo que novos m todos sejam acrescentados as suas inst ncias ou seja qualquer novo componente instanciado atrav s do estere tipo New Class ter apenas o m todo selectComp A classe Component possui apenas um m todo selectComp que determina a sele o dos componentes os quais faremos o controle de vers o Relacionado a este 121 m todo existe uma nota que representa uma restri o ao valor retornado por este m todo No caso a restri o indica que apenas valores booleanos falso ou verdadeiro podem ser retornados pelo m todo selectComp 5 3 2 4 TRACE Esta classe respons vel pelo rastreamento dos cen rios com outros artefatos resultantes do processo de desenvolvimento de software mantidos pela baseline de requisitos Cont m dois atributos type e description que capturam o tipo e uma descri o dos objetos que t m maior liga o com o cen rio Quando tratamos
100. atic representa aqueles que n o precisam ser reconfigurados 118 De modo a limitar o comportamento de hot spots a nota o prev a utiliza o de notas que podem ser anexadas a classes Nestas notas s o explicitadas as limita es que se deseja impor a cada hot spot como por exemplo a gama de valores que pode ser retornada por um m todo A seguir apresentamos o Framework na Figura 5 9 Note que os pontos de flexibiliza o est o indicados atrav s das indica es de hot spot que aparecem entre chaves Utilizamos todos os tr s tipos de hot spot no Framework para a evolu o de cen rios Na se o seguinte detalhamos cada um dos componentes do Framework Presentation amp extensible static Scenario R title History Rationale showVersion ra gt rst rs N bl showRelease appeal Blog ices exons e static Bed BereateVersion FecollectData electVersion MakeHistory SplainText Ss electRelease K Potts Bruns selectTrace Ne e E contribution_structure Version Operon 7 amp gIBIS Release i daie a Rais ond Etre lame 2 inquiry_cycle pe responsible M Relationship setDate i heuristics setStage ER fis ji guidelines i
101. biblioteca i i senha cadastrada sistema funcion rio da biblioteca verifica seo empr stimo E Pergamum u rio est cadastrado no sistema com sistema i fora do ar i usu rio digita senha E i ncion rio da biblioteca cadastra excedeu no mpr stimo m ximo de empr stimos i i i i usu rio leva obra i retirar obra com 5 retirar obra usu rio em posse do trach de usu rio u rio apresenta obras desejadas ao empr stimo crach de i cart o de identifica o i ncion rio da biblioteca entre i bibliotecas identifica o identifica o biblioteca do 40 leitora tica funcion rio da andar biblioteca senha cadastrada sistema Pergamum reservar obra usu rio apresenta crach de identifica o funcion rio da biblioteca passa crach de empr stimo entifica o na leitora tica om sistema fora do ar i usu rio digita senha E i funcion rio da biblioteca cadastra excedeu no obra est na empr stimo m ximo de reserva empr stimos usu rio leva obra u rio apresenta peri dicos desejados ao ncion rio da biblioteca empr stimo de 6 fetirarobra biblioteca do 4o Cart o antigo usu rio peri dico no DI i andar E com cart o antigo i funcion rio da usu rio apresenta cart o antigo biblioteca ncion rio da biblioteca carimba cart o ncion rio da biblioteca cadastra excedeu no empr stimo m ximo de E E empr stimos i i i i i u
102. cap tulo est dividido como se segue Na pr xima se o apresentaremos a metodologia de an lise que empregamos nos doze projetos que constituem o Estudo de Caso I Os resultados deste estudo de caso est o condensados na Tabela 4 1 sob a forma de uma taxonomia para a de evolu o de cen rios Na se o seguinte apresentamos o Estudo de Caso II que elaboramos de modo a confirmar os resultados apresentados atrav s da taxonomia de evolu o e test los durante um ciclo de desenvolvimento de uma aplica o E importante notar que nossa postura desta vez foi pr ativa uma vez que ramos os pr prios autores do estudo de 45 caso e nosso objetivo era testar a taxonomia de evolu o Al m de servir como ve culo para confirmar os resultados iniciais o Estudo de Caso II tamb m pode ser utilizado como exemplo extenso do processo evolutivo de um sistema visto a partir da tica de cen rios com este esp rito que decidimos por torn lo p blico e coloc T lo dispon vel atrav s da Internet No final do cap tulo condensamos todos os resultados que foram derivados da experi ncia que adquirimos ao realizar ambos estudos de caso em um modelo de evolu o de cen rios 4 2 METODOLOGIA DE AN LISE Nesta se o apresentamos a metodologia de an lise que empregamos no Estudo de Caso I Esta se baseou na cria o de uma representa o interna para os cen rios de modo a permitir um tratamento mais sistem
103. car 71 os relacionamentos de pr condi o e poss vel preced ncia e verificar se estes pertencem aos cen rio iniciais ou se est o relacionados ao novo cen rio O novo cen rio somente poder herdar um relacionamento se este for compartilhado por todos os cen rios originais envolvidos na opera o Na Figura 4 16 mostramos um exemplo da opera o de m ltipla divis o do projeto IM Sistema de ger ncia para uma gr fica Note que o procedimento de logar no sistema e selecionar op o foi isolado em um novo cen rio incorporado nos cen rio originais preservados ap s a opera o atrav s do relacionamento de inclus o Vers o n Opera o Vers o n 1 LOGAR E SELECIOONAR OP O ANOTAR PEDIDO MODIFICAR PEDIDO inclus o MODIFICAR PEDIDO ANOTAR PEDIDO Figura 4 16 Exemplo da opera o de m ltipla divis o projeto III 4 4 2 3 ESPECIALIZA O A opera o de especializa o objetiva incorporar cursos alternativos para um nico cen rio gen rico O cen rio original deve conter a abstra o de um procedimento que pode tomar v rios formatos dependendo de varia es em seus componentes e g atores ou contexto A id ia da opera o tornar mais clara diversas possibilidades Podemos tra ar um paralelo com a defini o de Booch para use cases e cen rios Use cases tratam de procedimentos gerais enquanto que cen rios s o as poss veis instancia es do
104. compara o refinamento e avalia o de cen rios realizada ao n vel dos objetivos apenas Os cen rios podem ser documentados de modos diferentes dependendo do n vel de detalhe necess rio A forma mais simples um caso de uso use case que consiste em uma breve descri o acrescida de um n mero identificador Formas mais detalhadas s o chamadas de scripts e s o representadas atrav s de Tabelas ou diagramas Estas formas envolvem a identifica o de agentes e de a es A Figura 2 4 mostra um exemplo de cen rio segundo este enfoque Note que composto apenas pelos componentes de agente e a o Segundo Potts a narrativa sequ ncia de epis dios pode ser subdividida em 1 ou mais a es Cada epis dio possui um objetivo inicial e um resultado Nenhuma descri o do macrosistema que contextualize os cen rios fornecida por m 21 Esther Criar nova reuni o Esther Determinar que Kenji participante importante Esther Determinar que Annie estar apresentando Esther Determinar que Colin participante comum Esther Digitar descri o da reuni o Esther Determinar datas poss veis entre segunda e sexta da pr xima semana Esther Determinar data limite como sexta feira da pr xima semana Programa Determinar tempo de resposta at sexta feira desta semana Programa Mandar mensagem para Colin pedindo para que liste suas restri es Programa Mandar mensagem para Colin pedindo para que liste suas restri es
105. conceitos de objetivo relacionamentos entre recursos e identifica o de atores De certa forma o ltimo era tratado atrav s da entidade cliente do modelo b sico da baseline e pelos itens autoriza o e respons vel das etiquetas do modelo de configura o A introdu o da no o de ator permitiu maior detalhamento das responsabilidades de cada colaborador Outra vantagem da introdu o da vis o de cen rios s o os epis dios que permitem a representa o e gerenciamento de aspectos comportamentais Na primeira vers o da baseline estes aspectos eram apenas representados de modo sequencial atrav s do modelo b sico Como a introdu o dos cen rios poss vel descrever eventos paralelos exce es e restri es De modo geral podemos afirmar que a introdu o de cen rios aumentou o poder expressivo da baseline O modelo entidade relacionamento da nota o utilizada pela vis o de cen rios da baseline mostrada na Figura 2 5 do cap tulo anterior A vis o de modelo de cen rio a combina o de uma s rie de id ias presentes na literatura que foram estendidas de modo a atender as necessidades dos autores A central que cen rios s o inicialmente utilizados para descrever situa es do ambiente e evoluem de modo a descrever o sistema a ser constru do enfoque de fora para dentro A evolu o dos cen rios um processo constante dentro da baseline 41 que lembramos perene e segue paralela a evolu
106. dade de sistemas apresentando algumas das propostas mais novas que surgiram de modo a tratar o problema A seguir entramos em maior detalhe na baseline de requisitos proposta por Leite Leite95 que ser a base onde iremos calcar a proposta apresentada neste trabalho A baseline de requisitos definida como uma estrutura perene que incorpora artefatos de software 33 Ela desenvolvida durante a fase de requisitos e evolui ao longo da vida til do software Dentro do mbito da baseline a evolu o de cen rios apenas um aspecto A baseline paralela ao eixo de desenvolvimento de software e trata da evolu o de todos os artefatos produzidos durante este processo 3 2 RASTREABILIDADE DE SISTEMAS Rastreabilidade definida como a habilidade de acompanhar a vida de um requisito tanto antes quanto depois de sua inclus o no documento de Especifica o de Requisitos ER Gotel93 O momento antes da inser o do requisito na ER corresponde ao rastreamento do tipo pr ER como definido anteriormente A possibilidade de realiz lo depende da habilidade dos desenvolvedores de conectar o requisito as declara es que o originaram atrav s do processo de produ o e refinamento dos requisitos atrav s do qual v rias declara es as vezes oriundas de mais de uma fonte s o eventualmente integradas para formar um nico requisito Ramesh98 Se torna bvio que durante este processo a natureza das contribui es dos particip
107. de barra cobran a de multa funcion rio envia planilha para biblioteca central quando sistema voltar a operar Hevolver obra BENS do 40 peri dico usu rio usu rio entrega peri dico ao funcion rio peri dico andar i i da biblioteca retirar periddico cartao de funcion rio da usu rio entrega cart o ao funcion rio biblioteca biblioteca antigo ou i i i provis rio E i funcion rio da biblioteca d baixa no cart o do usu rio funcion rio da biblioteca d baixa no cart o de identifica o do peri dico registrarnova biblioteca do 40 obra funcion rio da funcion rio da biblioteca envia pedido de Aquisi o andar E biblioteca cataloga o de nova obra a biblioteca i i i central biblioteca central Edo de sistema bibl central atribui c digo de barra ao cataloga o Pergamum exemplar fich ri funcion rio da bibl central atribui c digo Dewey biblioteca central decimal a obra i bibl central entra com obra no sistema Pergamum bibl central envia obra para biblioteca do Ao andar funcion rio da biblioteca prepara ficha d cataloga o e topogr fica para obra obra colocada em exposi o H H catalogar o registrar nova piblioteca do 40 peri dico funcion rio da biblioteca central recebe peri dico peri dico novo pavisi ao andar E biblioteca biblioteca central CARDEX sistema PERI biblioteca central registra peri dico no sistema PERI funcion rio da biblioteca centra
108. de erro do sistema A querie ent o enviada ao reposit rio de cen rio que manda uma a resposta para a p gina em ASP Esta por sua vez rescreve o resultado da querie que foi enviado em formato Tabela pelo banco de dados no formato HTML escolhido como interface para a ferramenta O resultado desta opera o est mostrado na segunda tela de browser ilustrada na Figura 5 13 Desta vez o usu rio tem a lista das vers es existentes para o cen rio que escolheu na intera o anterior Ele faz sua escolha e se esta for v lida enviada para outra p gina em ASP Caso contr rio o usu rio recebe mensagem de erro De modo a montar o rastreamento do par cen rio vers o escolhido necess rio montar consultas a v rias bases A base de cen rio retornar o conte do da vers o do cen rios em quest o Os elos para os termos do l xico que se encontram no conte do deste par cen rio vers o s o providos pela liga o existente entre os reposit rios de cen rio e de artefatos Da mesma forma s o recuperados os ponteiros para outros artefatos de software Finalmente o reposit rio de hist rico retorna dados relativos a cria o desta vers o do cen rio configura es a que pertence e opera es em que est envolvido Estas informa es ser o processadas pelo c digo ASP que adicionadas as informa es de entrada do usu rio ser o transformadas para o formato HTML que desejamos para a sa da 134 O resultado da consulta e
109. de requisitos para a elabora o de um sistema de controle financeiro Jirotka95 Kaidl tamb m apoia a id ia da utiliza o de hipertexto como uma ponte entre as id ias informais dos clientes e as representa o mais formais necess rias aos desenvolvedores Este enfoque suportado pela ferramenta RETH e oferece rastreamento atrav s dos links do hipertexto Kaidl93 Na realidade estamos tratando de um problema muito complexo Compreender e formalizar pr ticas humanas uma tarefa muito dif cil pois envolve um grande volume de conhecimento t cito i e impl cito Goguen94 Suchman87 Sommerville93 N o h d vida que o aux lio de novas t cnicas tais como utiliza o de udio e v deo podem vir a trazer contribui es de modo a minimizar o problema por m um aspecto a ser levado em conta o aumento dos custos e grande volume de espa o necess rio a armazenar estes dados Outro problema que informa es capturadas utilizando se t cnicas multim dia n o est o diretamente dispon veis Transcritos das sess es tem de ser realizados de modo a permitir acesso direto a informa o aumentando ainda mais o custo e o tempo gasto com a captura de informa o neste formato Um outro enfoque para auxiliar no rastreamento das origens dos requisitos s o as t cnicas para captura de rationale Conklin prop s um m todo para a captura de rationale baseado na t cnica IBIS o gIBIS que funciona atrav s de ciclos sucessi
110. dicativo de exce o faz parte do conte do dos cen rios i e um dos componentes da nota o de cen rios utilizada para os estudos de caso exce o de um ou mais epis dios Neste caso apenas tornamos expl cito este relacionamento de modo a facilitar a visualiza o da din mica de um conjunto de cen rios Este relacionamento definido de forma bastante direta basta que exista o indicativo no componente do cen rio Para ilustrar o relacionamento de exce o selecionamos um exemplo do projeto IV vers o 2 sistema para ger ncia de uma gr fica de impressos Neste projeto mostramos que uma exce o para o cen rio efetuar servi o o cen rio cancelar ordem de servi o A Figura 4 8 mostra estes cen rios CEN 1 ES 5 RE AUS ss Novamente inserimos uma coluna de numera o para facilitar a refer ncia a cen rios em sua forma codificada 58 ancelar ordem de servi o Figura 4 8 Exemplo de par de cen rios que apresentam o relacionamento de exce o projeto IV Na Tabela 4 7 a seguir apresentamos a heur stica para a detec o do relacionamento de Exce o entre dois cen rios Esta nada mais do que a simples contata o da exist ncia de uma exce o sob a forma de um segundo cen rio Explicitamos esta heur stica de modo a tornar mais clara a distin o entre o relacionamento de Detour apresentado na ltima se o e o de Exce o No primeiro caso Detour existe uma circularidade
111. do que o cen rio resultante reflita a sequ ncia de epis dios inicial Especial aten o deve de ser dada aos relacionamentos que os cen rios originais possuem com outros cen rios n o envolvidos na fus o Ap s a opera o estes relacionamentos devem ser reavaliados frente ao novo cen rio de modo a determinar a validade dos relacionamentos anteriores Tamb m devemos verificar os relacionamentos de equival ncia complemento e conten o pois como o cen rio resultante apresenta grandes diferen as estruturais se comparado um a um com os originais poss vel que estes relacionamentos n o sejam mais v lidos uma vez que est o fortemente ligados a coincid ncia de componentes Na Figura 4 12 mostramos um exemplo da opera o Jus o do projeto II Sistema de biblioteca Neste exemplo bem como no restante dos exemplos desta se o optamos por mostrar os cen rios representados por caixas contendo o nome do cen rio apenas Escolhemos exemplos onde esta informa o fosse significativa o suficiente para a compreens o do intento do cen rio Desta forma evitamos a sobrecarga de informa o nas figuras e nos concentramos em ilustrar as opera es e seus impactos O texto integral dos cen rios se encontra no ap ndice I Note que os cen rios cadastrar senha e apresentar identifica o cont m pouca informa o e sua presen a como cen rios independentes n o justificada Na realidade no projeto o qual fazem parte estes cen
112. do um workshop em torno do assunto em Daghstuhl Alemanha coordenado pelo professor John M Carroll em 1999 Confer ncias RE95 2 IEEElnternational Symposium on 1 artigo Requirements Engineering oo ICRE96 2 International Conference on 1 artigo Requirements Engineering IEEE e ACM E RE97 3 IEEElnternational Symposium on 3 artigos 1 workshop Requirements Engineering WER98 Primeiro Workshop em Engenharia 3 artigos E S ICRE98 3 International Conference on 5 artigos CEIRE98 Conference on Industrial Berenson WER99 Second International e on 5 artigos pesrmenseresro RE99 4 IEEElnternational Symposium on 7 artigos pememsennesro OO ICREOO 4 International Conference on 4 artigos Penetra eres Tabela 2 1 Aumento do n mero de publica es no tema cen rios nas confer cias importantes da rea de engenharia de requisitos Edi es especiais de peri dicos tamb m foram dedicados ao assunto O Requirements Engineering Journal editado pela Springer Verlag dedicou as edi es correspondentes ao Vol 3 No 1 e No 3 4 1998 ao assunto e tamb m a Transactions on Software Engineering Vol 24 No 12 1998 Finalmente o projeto europeu ESPRIT 21903 CREWS foi dedicado a pesquisa e cria o de ferramental de apoio ao desenvolvimento de software baseado em cen rios Dedicaremos este cap tulo ao estudo de cen rios de modo geral por m dando nfase a s
113. dos 51 4 3 1 COMPLEMENTO Definimos que dois ou mais cen rios estabelecem um relacionamento de complementaridade entre si quando vistos em conjunto respondem a um objetivo global Nestes casos foi observado que os cen rios envolvidos al m de compartilhar o mesmo objetivo apresentam coincid ncias de contextos e entre recursos Estes cen rios tamb m devem apresentar um alto ndice de coincid ncia entre atores e podem apresentar similaridade de epis dios Para ilustrar esta situa o vamos tomar um exemplo do projeto I sistema de ger ncia acad mica Neste projeto existem tr s cen rios que compartilham o objetivo cumprir requisito b sico cen rios fazer cr dito apresentar qualifica o e apresentar tese Analisados em conjunto estes cen rios provavelmente atendem a um objetivo geral obter t tulo de doutorado Estes cen rios atendem o restante das exig ncias acima que caracterizam o relacionamento de complemento al m de compartilhar o objetivo Como ilustrado na Figura 4 3 os cen rios compartilham recursos e contexto apresentam coincid ncia de atores e pouca semelhan a de epis dios ESSES SE ERAS apresentar qualifica o 02 E E em E om ms E E E RE ERES E EEE a E E PR es a E ESSE E e E TE RA es RES ce ee E E es a E Es A ee ee ee ee comme cme ieee eee eee eee ee ogsJ pee E E pee aes pe St ee Eat ie ES EEE ee ES ESEC Es Figura 4 3 Exemplo de cen rios que apresentam o relacionamen
114. dustrial Case Study in the Proceedings of the Third IEEE International Symposium on Requirements Engineering RE 95 Annapolis January 6 10 IEEE Computer Society Press 1997 pp 169 179 Hadad97 Hadad G Kaplan G Oliveros A Leite J C S P Construci n de Escenarios a partir del L xico Extendido del Lenguaje SoST 97 Simposio de Teconologia de Software 26 Jornadas Argentinas de Informatica e Investigacion Operativa Agosto 1997 14 pp Hadad99 Hadad G Doorn J H Kaplan G N Leite J C S P Enfoque middle out en la construcci n e integraci n de escenarios II Ibero American Workshop on Requirements Engineering Buenos Aires September 1999 pp 79 94 Haumer98 Haumer P Pohl K Weidenhaupt K Requirements Elicitation and Validation with Real World Scenes Transactions on Software Engineering Vol 24 No 12 December 1998 Pp 1036 1055 Haumer99 Haumer P Heymans P Jarke M Pohl K Bridging the Gap Between Past and Future in RE A Scenario Based Approach Proceedings of the 4th IEEE Symposium on Requirements Engineering RE99 Limerick Ireland 1999 pp 66 73 Heymans98 Heymans P Dubois E Scenario Based Techniques for supporting the elaboration and the validation of formal requirements Requirements Engineering Journal Vol 3 No 3 amp 4 1998 pp 202 218 147 Hicks98 Hicks D Legget J Nurnberg P Schanse J
115. e requisitando local de sua prefer ncia Programa Mandar mensagem para Colin pedindo para que liste suas restri es e equipamento necess rio Figura 2 4 Exemplo de cen rio segundo o enfoque proposto em Potts94 Segundo Potts os cen rios independente do seu n vel de detalhe s o muito teis na valida o dos requisitos Desta forma poss vel identificar defici ncias nas especifica es e fazer as mudan as necess rias Em seu papel de clarificar os requisitos cen rios auxiliam na compreens o geral do sistema facilitando o processo de especifica o Este modelo apesar de pregar a utiliza o de cen rios n o aponta como e onde os mesmos devem ser elicitados 2 3 3 CEN RIOS COMO APOIO A VISUALIZA O DE REQUISITOS A tese apresentada por Zorman discute a dificuldade na comunica o entre clientes e desenvolvedores apontando ocorr ncias de mistura de terminologia e erros de interpreta o Zorman95 Segundo a pr pria especialistas de dom nio e software necessitam colaborar com uma representa o e vocabul rios comuns para a elabora o de cen rios Nesta luz cen rios podem vir a ser utilizados eficientemente na comunica o entre pessoas com backgrounds diferentes Linguagens mais formais devem ser utilizadas na comunica o com pessoas de uma mesma rea A Figura abaixo ilustra o fato de pessoas de uma mesma rea tendem a se comunicar de modo 22 mais formal pois compartilham vocabul
116. e se os cen rio est o sendo realmente eficazes ao suportar outras atividades do processo e vice versa Estes crit rios tamb m est o ilustrados na Figura 2 1 2 2 2 FRAMEWORK PARA CLASSIFICA O DE CEN RIOS PROPOSTO POR ROLLAND ET AL Uma classifica o mais ampla foi proposta como um dos resultados do projeto europeu CREWS Rolland98 Neste Framework cen rios s o classificados de acordo com quatro vis es ou aspectos objetivo ciclo de vida conte do e formato O Framework est ilustrado na Figura 2 2 a seguir 15 Qual o conhecimento expresso atrav s do cen rio Conte do expresso atrav s de CEN RIO almeja Formato Por que utilizar um cen rio Em que formato o cen rio expresso avolui Ciclo de Vida Como manipular um cen rio Figura 2 2 Framework para classifica o de cen rio Rolland98 As vis es de ciclo de vida e objetivo se referem a utiliza o de cen rios durante o processo de Engenharia de Requisitos e s o independentes de aspectos representacionais A vis o de conte do possui as seguintes facetas abstra o contexto argumenta o e cobertura Por abstra o os autores se referem a distin o entre tipos e inst ncia Um cen rio que apresenta uma faceta de contexto estreito aquele que possui apenas um agente que representa o sistema a ser constru do poucos ou nenhum agente externo e nenhuma intera o entre os ltimos
117. e a esta disciplina Professor Po Pisciplima HERE ee prime Spee ee eee ieee SS Pres TaboratGrios usar disciplina Ep Orientador material de ensino oncluir disciplina DI Salas de Aula Fazer exame de qualifica o de doutorado EC Mo Go MNMIisss DD Ito fo cics para gradua o DI 5 Cursar Mestrado ursar Mestrado Inscrever se em disciplina Doo jo o f pr f em o Defender tese de 25 2 Defender tese de Audit rio doutorado doutorado ese preparada pelo aluno Aluno finaliza sua tese para ser defendida Aluno marca no DI data e sala para defender sua tese defende sua tese para banca examinadora Banca Examinadora D Aluno Sala de Aula rofessor Professor do DI existente Professor comunicado ou comunica Demitir Professor DI E Di DI DI elimina entrada de dados do Professor no sistema Eliminar Aluno 37 2 Eliminar Aluno DI A exist ncia de aluno que Aluno fica impedido de continuar deve ser eliminado do urso que vinha cursando sistema seja devido a onclus o de estrado doutorado abandono de curso DI elimina aluno do sistema jubila o ou qualquer fator que o impediu definitivamente ou o impe a de continuar seu andidato a mestrado doutorado entrega a documenta o para sua azer Disserta o de Fazer exame de qualifica o de doutorado Examinadora luno com sua devida luno finaliza sua disserta o isserta o D PEC azer sua disserta o RE ep banca exa
118. e autom veis Neste projeto mostramos o cen rio sorteio como pr condi o do cen rio recusar ve culo sorteado Note que ambos cen rios compartilham o ator Al e que o ltimo cen rio aparece como pr requisito no contexto do primeiro bi sci E desarma Recusar ve culo sorteado Figura 4 6 Exemplo de cen rios que apresentam o relacionamento de pr condi o projeto VI Acrescentamos uma coluna atribuindo n meros aos cen rios de modo a referenci los mais facilmente em sua vers o codificada A numera o n o faz parte da nota o para cen rios proposta por Leite Leite97 56 Na Tabela 4 5 a seguir resumimos as heur sticas para a detec o do relacionamento de Pr condi o entre dois cen rios Pr condi o cen rio A mant m relacionamento de pr condi o com cen rio B Cen rio A faz parte do contexto do cen rio B Existe coincid ncia de pelo menos um ator entre os cen rios envolvidos Pode existir coincid ncia de epis dios entre os cen rios envolvidos Tabela 4 5 Heur sticas para a detec o do relacionamento de Pr condi o 4 3 5 RELACIONAMENTO DE DETOUR Definimos como detour um relacionamento entre dois cen rios que se estabeleceu como consequ ncia do desenrolar excepcional do primeiro Durante o curso de um cen rio uma exce o pode ocorrer que resulte em que um de seus atores seja remetido para um cen rio secund rio Neste cen rio o comportamento e
119. e cen rios adequadas a suas necessidades Oferecemos apoio automatizado ao Framework proposto atrav s da ferramenta SET iv Abstract In recent years a growing number of researchers have turned to scenarios to improve communication among the stakeholders of a computer based system under construction Scenarios are informal descriptions of situations in the system environment and help the elicitation and validation of information during all stages of system development On the other hand the informality of scenarios allow them to be used without any specific methodological support This aspect that has been pointed out specially by the Requirements community has been given little attention and makes the sistematic use of scenarios in software practice more difficult To understand what is required for effective use of scenarios in system development we have conducted a series of empirical case studies that shed light on the complexities of scenario evolution As a result of these case studies we have produced a model of scenario evolution that explains the dynamics of the evolutionary process while providing a multi tier approach to scenario evolution based on operations and relationships of the model This thesis proposes an organization that allows an engineering approach to scenario evolution The organization is based on domain knowledge embodied in the scenario evolution model and takes into consideration other software manag
120. e mais de uma configura o Desta forma o n mero absoluto encontrado a partir da soma do n mero de cen rios de cada configura o traz redund ncias Se subtrairmos as ltimas chegamos a um total de 78 cen rios distintos 79 primeiro grande degrau pode ser explicado pelo fato do primeiro conjunto de cen rios ter sido derivado do l xico ampliado da linguagem para esta aplica o atrav s da aplica o direta das heur sticas descritas em Leonardi97 O resultado da aplica o destas heur sticas foi um grande n mero de cen rios contendo informa es redundantes A seguir um processo de refinamento de informa o teve lugar a medida em que foi se obtendo uma maior compreens o da descri o do problema A partir da configura o SpeclIl o n mero de cen rios se tornou constante evidenciando que um equil brio foi atingido Na realidade o que ocorreu que grandes mudan as do tipo exclus o e cria o de novos cen rios deixaram lugar para opera es de refinamento e atualiza o da informa o tais como as opera es intra cen rio de modifica o e inclus o Resumindo as opera es inter cen rios que trazem maiores impactos a base pois resultam na adi o e exclus o de cen rios deixam lugar para opera es de impacto local 1 e opera es intra cen rio Na Figura 4 19 mostramos a distribui o das opera es classificadas por tipo ao longo do desenvolvimento do sistema 25
121. e opera es novas vers es de cen rios s o criadas destru das ou incorporadas em outros cen rios da base Configura oV Confgura olV Qonfigura dil Configura o Il Configura o Configura o Onde C Cen rio V Vers o va Figura 5 4 Exemplo de um gr fico de evolu o de cen rios Breitman00 Do ponto de vista de ger ncia de configura o podemos mapear o processo de versionamento de objetos de software segundo tr s poss veis gr ficos conforme ilustrado na Figura 5 5 Conradi98 S o eles gr ficos sequenciais do tipo rvore e ac clicos No caso mais restritivo as vers es s o organizadas como uma s rie de revis es sucessivas No caso dos gr ficos em rvore apenas as vers es localizadas nas folhas podem ser utilizadas para gerar novas vers es Finalmente no caso de gr ficos ac clicos uma nova vers o pode possuir muitos predecessores retomando conceitos estabelecidos em vers es anteriores Em se tratando do processo de versionamento de cen rios ca mos na classifica o mais complexa i e gr ficos ac clicos 111 Figura 5 5 Classifica o de gr ficos de vers o segundo Conradi98 Como ilustrado na Figura 5 6 o processo de versionamento pode se basear indiscriminadamente em um ou mais cen rios de vers es anteriores Tomemos por exemplo os processos ilustrados pelas duas setas da figura Na seta da esquerda temos um processo casado onde atrav s de u
122. e ou estes se complementem de modo a atingir um objetivo maior ou que sejam redundantes i e tratem de situa es semelhantes Para ilustrar o relacionamento de equival ncia vamos tomar um exemplo do projeto VII sistema de ger ncia acad mica Neste projeto mostramos dois cen rios que a menos de pequenas modifica es tratam de uma mesma situa o Novamente 53 mostramos os cen rios em sua forma codificada de modo a facilitar a compara o e visualiza o das diferen as Os cen rios em sua forma literal se encontram no ap ndice I Note que os epis dios dos cen rios s o id nticos varia es s o encontradas somente no contexto e atores envolvidos matricular se no programa O5 c9 R27 A14 E114 de mestrado matricular se no programa O5 C14 de doutorado RS DS A O o Figura 4 4 Exemplo de dois cen rios que apresentam o relacionamento de equival ncia projeto VII Na Tabela 4 3 a seguir resumimos as heur sticas para a detec o do relacionamento de Equival ncia entre dois ou mais cen rios Equival ncia Cen rios devem possuir objetivos id nticos Existe coincid ncia entre o contexto dos cen rios envolvidos Existe pequena coincid ncia de recursos entre os cen rios Existe grande coincid ncia de atores entre os cen rios envolvidos Existe grande coincid ncia de epis dios entre os cen rio envolvidos Tabela 4 3 Heur sticas para a detec o do relacionamento de Equival ncia
123. e ser igual ao de B podendo ser acrescido de algumas restri es Pode existir coincid ncia de recursos entre os cen rios envolvidos Existe grande coincid ncia de atores entre os cen rios envolvidos Pelo menos um epis dio do cen rio contenedor deve fazer parte do cen rio contido Tabela 4 4 Heur sticas para a detec o do relacionamento de Conten o 55 4 3 4 RELACIONAMENTO DE PR CONDI O Uma pr condi o um relacionamento um a um definido dentro do componente contexto de um cen rio Um cen rio que age como pr condi o para outro cen rio tem de aparecer no contexto do ltimo Completando a caracteriza o do relacionamento notamos tamb m a coincid ncia de pelo menos um ator e um epis dio nestes casos A pr condi o um tipo especial de relacionamento no que permite incorporar uma dimens o temporal no gr fico de relacionamentos est ticos entre os cen rios Este relacionamento permite a defini o de uma sequ ncia para os cen rios e a especifica o de est gios que devem ser completos antes da execu o de outros A utiliza o de pr condi es muito importante mas n o devemos abus la nos projetos Durante a an lise dos estudos de caso notamos que alguns autores utilizaram pr condi es de modo excessivo resultando em altos graus de acoplamento em seus projetos Para ilustrar o relacionamento de pr condi o selecionamos um exemplo do projeto VI sistema de cons rcio d
124. eS SA Cursar disciplina mestrado fH RBA E EEE NE E e p Concluir disciplina mestrado Tf RBA EEE STE S E E e es Apresentardissertagio TSR a PES SSIS Ooo ope SIM Se f PRACT Doo CENT Oo es ST Eie Ee o S S S Re S g O O S NNE S y o Ek DO S T Zz A ES DAE S S A END Al Inscrever se em disciplina de doutorado tf Ra Mw O S ez R5 Mw ES En 220 o a o a e o Cursar disciplina de doutorado fo a a R a il ES S S Ss Ss Concluir disciplina de doutorado 2 7 e as Mw Es a a ee es Fazer exame de qualifica o mM hoo eo R wa o r O L ee Defender tese de doutorado TRS A DO S S a 7 Ss d k Concluir doutorado SSS Osoa a O S O O y s5 E o O S as n O O Il Lts o n Se Es Projeto VII Ger ncia Acad mica Vers o 2 Cen rios Literais Oferecer nova disciplina 27_2 Abrir disciplina Existir disciplina DI DI verifica calend rio Professor dispon vel Disciplina IDI determina professor para ministrar disciplina Aluno Aluno se inscreve em disciplina Tofessor po IDI documentos ao DI Area andidato a professor comunica Linha de Pesquisa Do o Pisdimitenovo professor Administrar Alunos k inistra S ase de dados para Departamento de Inform tica envia Administra o de Alunos mensalidade para resid ncia de PE ll Rc Departamento de Inform tica eliminal Aluno Departamento de documenta o completa do DI aceita candidato a mestrado ou Inform tica andidato a Mestrado ou ap
125. ection type value in control panel user changes light intensity in a room user defines light scene facility manager defines light scene Rod ay 27 1 av Men 3 vz 7 g tee a m 13 2 15 1 nuunnnngnnnnpnnnnpannnnnnnntnnnn 29 1 1 2 5 1 te 4 LEGEND Equivalence ru Pro condition IRRERRE Complement Possible Precedence Subedt o indude Figura 4 23 Relacionamentos entre os cen rios da configura o Specll Note que as novas vers es dos cen rios mantiveram relacionamentos originais e g O cen rio 2 2 equivalente ao 3 2 e subcen rio de 1 2 Como resultado de opera es que expandem a base tais como a divis o rotulada com o n mero IX e a m ltipla divis o rotulada VII na Tabela 4 12 temos a cria o de novos relacionamentos No 86 caso da primeira que resultou na cria o dos cen rios 28 1 e 29 1 observamos que estes mant m um relacionamento de complementariedade entre si No caso da ltima os novos cen rios 24 1 e 25 1 ambos mant m o relacionamento de inclus o com o cen rio 26 1 por m nenhum relacionamento entre si Finalmente temos a remo o de relacionamentos como consequ ncia do processo evolutivo Este o caso dos cen rios 21 1 e 22 1 da configura o Specl que mantinham um relacionamento de complementariedade entre si e que ao serem fundidos for aram o desaparecimento deste relacionamento na configura o seguinte Note que o cen rio resultante
126. eee eee a nn eid EEE E E a ERR e itua o falta do cumprimento das quita es olicitar troca de bem Realizar ato de outorgar ve culo Outorgar bem por sorteio 4 o7 SR EN se Aceitaraoutorgagio Gf ena RSA RSS pf acao oO ee ee ee eee eee SE es Recusa do bem sorteado 7 o ENTIAL BT oo S T S ST o RR PENTA S e ESTEVE S T T BB U ES Ooo S T S T T Ow S e DO E T S ERRO ER Ow RR ERRO Resolu o do pedido de ades o 18 fs a R TAZ CENT S O RAB eae ES e Ms Rostos SA eae Entrega de bemsorteado 9 OB N4 RISA TE O o EEE S T S Ro RR a ERES E E ee e o e e I Pe RS O o T S ST T aa ae ee Ooo S T S OO A PO ee eee 2 Cees en es EE RR Bs RR o Le e Too e NENE Assinar contrato deresgate 2 s CENIA Ra ALB PENS RST ED Exigir penalidade 22 Projeto VI Cons rcio Vers o 1 Cen rios Literais Nome po obj etivo a recursos atores epis dios exce o restri o Adjudicacion Direito de adjudicacion Administradora Participante paga direito de onhar ve culo Participante venceu Formul rio de pedido Participante Participante preenche formul rio licita o e culo do ve culo postos veculo _ __ articipante vira contemplado edido de ades o Administradora Faz se uma lista dos participante DE Se envia os cupons de pagamento do cons rcio aos participante Administradora escolhe seguradora Lista de seguradoras Participante Seguradora endossa a ap lice de seguro Senm
127. eia um dos participantes Se as quotas n o est o quites ou ele recusa o ve culo ENT O sorteia se novo participante Aloca se ve culo ao ganhador cen PI ransferir articipante decide Plano de cons rcio Administradora Participante comunica ons rcio ransferir cons rcio administradora da decis o de ransfer ncia Doo 1 o Participante quites fomunicado Participante Administradora registra mudan a Administradora n o articipante se desliga do pode cobrar pela cons rcio ransfer ncia Cen rios codificados ee oo E fie SSS RES EDS FE Ee 000000000 amp FE Es Participante troca ve culo a ser recebido bla objetivo contexto recursos atores epis dios exce o restri o o CENT Ro fp i Cd EE Rs BE s oz SR E DO R5 Es el CENIO IRS 03 03 04 05 Abandonar cons rcio issolver grupo Entregar ve culo Avaliar lances 05 Expulsar participante oo O ee Lan arlancedeleil o oh ESSA 13 o EE IR lt Pagar quotavencida a fC E SS E ES ES E E O Recusar ve culo sorteado 5 pr fee RO ADO fo o o REC es CE 9 iC C10 1 Ol 1 Transferir plano E Projeto VII Ger ncia Acad mica Vers o 1 Cen rios Literais Nome po bii etivo contexto recursos atores epis dios ntrar no mestrado 2 E Documenta o Candidato andidato procura orientador inda de mestrado Candidato cons rcio andidato faz proposta de trabalho diploma ese re ope
128. eira vers o do cen rio person occupies place na configura o Impl vide Figura 4 24 Note que a evolu o dos termos vai desde a representa o do espa o f sico e real de c modo para a implementa o em Java no caso da classe que representa este conceito no sistema 96 Lel entry Room Rooms Notion Part of a hallway section A room can be a computer lab an office a hardware lab a meeting room and or a peripheral room order entered roof yoom Chosen fight scene Behavioral responses All rooms in a hallway section can be accessed via a connected hallway section For each room the chosen light scene can be set by using the room control panel For each room the default light scene can be set by using the room control panel Was ake ace dhe Alin SOOT ene bend ight scene foom fs reoccupied wihtin E Jninutes THEN activate last Chosen ight s reoccupied after fi Jninutes THEN activate Default ight scene procedure for occupied n order user entered roory Resource value 1 putdoor light sensor Ih st correct management value Dei light scene fpr this Chosen ight scene LEL entry Room Rooms Notion CRC card corresponding to the concept of a room Behavioral responses keep the outdoor light sensor measurements store value T1 IF room is reoccupied wihtin
129. em como apoio por m o resultado final fica fortemente dependente do bom senso de quem as aplicou Poss vel Preced ncia cen rio A mant m relacionamento de poss vel preced ncia com cen rio B Pode existir coincid ncia entre os objetivos do cen rios envolvidos Existe coincid ncia entre o contexto do cen rios envolvidos Existe coincid ncia de pelo menos um dos atores 62 Existe epis dio em A que seja o cen rio B Cen rio A n o faz parte do contexto do cen rio B Tabela 4 9 Heur sticas para a detec o do relacionamento de Poss vel Preced ncia 4 4 OPERA ES O conjunto de opera es o n cleo do processo de evolu o de cen rios Novas vers es dos cen rios s o geradas a partir da aplica o de opera es Da mesma forma os relacionamentos a partir da primeira vers o da base de cen rios s o modificados apenas como resultado indireto da aplica o de uma ou mais opera es Nesta se o apresentaremos as opera es que identificamos em detalhe Identificamos dois tipos de opera es intra e inter cen rios As opera es intra cen rio levam em conta a manuten o do conte do de um nico cen rio Atrav s destas podemos modificar retirar ou adicionar conte do a um cen rio As opera es inter cen rio por sua vez tem um escopo mais amplo Elas lidam com grupos de cen rios e tem influ ncia sobre os relacionamentos entre os cen rios resultantes A seguir apresentamos os d
130. ement issues such as configuration management and traceability The organization implies a framework for scenario evolution that can be used in any open ended general software development environment This framework can be configured through the use of hot spots to tailor specific user needs We also offer a prototype tool called SET Scenario Evolution Tool that provides automated support to the framework Sum rio vi vii viii 1X Cap tulo 1 Introdu o 1 1 MOTIVA O Nos ltimos anos observamos que um n mero crescente de pesquisadores na rea de Engenharia de Software tem abra ado a t cnica de cen rios Esta atrav s da utiliza o de descri es de situa es pr prias ao mundo real aproxima clientes e desenvolvedores facilitando sua comunica o Existe um consenso na literatura da rea em torno do fato de que cen rios enquanto artefatos resultantes do processo de desenvolvimento de software s o persistentes Sutcliffe95 Hsia94 Leite97 Rosson95 Jacobson92 Potts94 Kyng95 McGraw97 Weidenhaupt98 Como tal natural supor que os cen rios de uma aplica o sofram modifica es ao longo do desenvolvimento da mesma Estas mudan as surgem como resultado do aumento da compreens o do software a ser constru do Yeh90 e podem se manifestar na forma de adi o subtra o ou refinamento do conte do dos cen rios Qualquer um destes casos resulta no aumento do n mero de vers e
131. entada utilizando se a tecnologia de Active Server Pages ASPO vers o 2 0 que fornece mecanismos adequados tanto para o acesso a bancos de dados via drivers ODBC quanto facilidade para cria o de p ginas din micas Escolhemos esta linguagem entre similares tais como Perl e Lua pois acreditamos que por ser do mesmo fabricante do banco de dados e do sistema operacional incorrer amos em um n mero menor de problemas de compatibilidade A hip tese se provou verdadeira A figura 5 11 exemplifica parte de um c digo em ASP Note que parte do c digo um comando SQL que envia uma consulta ao banco de dados segundo o par metro fornecido pelo usu rio amp nome do release amp ao mesmo tempo em que retorna o resultado desta consulta utilizando a sintaxe HTML representado pela linha que inicia com o comando de escrita Response Write 130 SELECIONANDO OS DADOS DOS CENARIOS Criando o Connection Set MinhaConexao Server CreateObject ADODB Connection MinhaConexao open exemplo Criando o RecordSet Set MeuRecordSet Server CreateObject ADODB RecordSet Construindo o select do Cenario value Request Form release sql SELECT DISTINCT operation in scenario operation in version operation rel_name operation op_id operation type cenario title FROM cenario INNER JOIN cen_release INNER JOIN operation INNER JOIN operation in ON operation op id operation_in op_id ON cen release scenario operation in scenario AND
132. entos que est o presentes em apenas uma delas Analisamos em primeiro lugar os novos elementos Anotamos os novos cen rios bem como novos componentes que apareceram em virtude destes e g epis dios atores e contexto que n o existiam em cen rios anteriores Esta lista ser importante para determinar se o cen rio realmente novo ou se resultado de alguma opera o Se os componentes apresentados pelo novo cen rio n o forem novos procuramos os cen rios presentes na configura o anterior que possu am estes componentes Verificamos o que aconteceu com estes cen rios nesta configura o e determinamos que se o novo cen rio fruto de uma opera o do tipo divis o por exemplo Realizamos o procedimento inverso para os cen rios que sumiram da base i e investigamos os cen rios da presente configura o que possam conter os elementos presentes no cen rio que desapareceu Desta forma determinamos se o desaparecimento foi fruto da elimina o da informa o ou se resultado de uma opera o do tipo fus o por exemplo O segundo est gio a an lise do versionamento de cen rios De modo a descobrir se um mesmo cen rio sofreu versionamento entre duas configura es analisamos se houve mudan as em seus componentes Para cada cen rio presente em ambas configura es fazemos uma pesquisa de modo a verificar se houve modifica o adi o ou subtra o de componentes No caso de adi o de conte do investigamos os re
133. es episodios SE Joa f aa GRE o A f a i Ooo T S s a f Eo i ESSE EEE EE f EEE f ER 2 o RA 5 E T O O EEE pese PER Rs E PE RE Ja a oR aa E CER So T T J e mE Oooo T T T T S i LESS po 4 SRA 0 EE fi ES EE RE o ae ES ER a E po RS a Doo T Tor S o i Sa Sona Sg eS a EN Ee J v o R u E6 Doo S i To R a e Ooo Jo T a S J a o EEE Es EEE ES ES pe 26 J SOM oa R a2 ENG E Ee NY a SA OG So CENSO 7 a EB Ooo SJ ST rR aa Y Doo oc Tom aa a RR DR a ES ES ESSE Ses v a At m Ooo ST T g J asa Er Do To To Oe i O3 CENT r a es to poco rn AM cine e SS ESSE a S po Ea RE DO e e o rs CENT AAA AE Lodo Os n R Ai s TD Ei E AA SM v R a f E5 Doo ENS om oa eo EE Ei ma Oooo T coa f S f topo cen fe RA TAL CEN CEN8 CEN 12 A 26 exce o CEN 11 CEN 9 efetuar pagamento Projeto IV Gr fica Vers o 2 Cen rios Literais Nome no obj etivo Ontexto recursos atores episodios exce o incluir cliente 1 S Funcion rio ativa sistema f liente pede or amento ff uncion rio Funcion rio digita dados do cliente r fia Doo Funcion trio verifica cadastro Foc dados no vita Cliente cadastrado cliente Funcion rio ativa sistema xcluir cliente E gr fica Do funcion rio Funcion rio digita dado
134. esultante do encapsulamento n o pode ser automaticamente determinada pois varia caso a caso A mesma regra v lida para o caso do relacionamento de poss vel preced ncia Uma ferramenta que apoie a realiza o desta opera o deve levar em conta este fato e prover um mecanismo que permita que os autores dos cen rios sejam consultados em caso de d vida Na Figura 4 13 mostramos um exemplo da 67 opera o encapsulamento do projeto VII Sistema de ger ncia acad mica Note que os dois cen rios originais tratam basicamente do mesmo procedimento O cen rio resultante fundiu os dois em um cen rio nico equival ncia Encapsulamento CANDIDATAR SE A MESTRADO CANDIDATAR SE A CURSO DO DI CANDIDATAR SE A DOUTORADO Figura 4 13 Exemplo da opera o de encapsulamento projeto VII 4 4 2 1 3 CONSOLIDA O A opera o de consolida o tem como objetivo aumentar o escopo de um nico cen rio Devemos entend la como um procedimento de generaliza o Durante o curso dos estudos de caso observamos que ao inv s de criar cen rios equivalentes certos autores optaram por tornar um nico cen rio mais abrangente de modo a fazer com que este englobe todos os casos Este um procedimento bastante interessante pois aumenta a capacidade expressiva da base sem introduzir redund ncia Observamos por m que este procedimento foi utilizado para a inclus o de uma variante apenas para o cen rio o
135. etapa de elicita o os requisitos s o capturados atrav s da identifica o de a es dos clientes Esta estrat gia similar as a es previstas por Jackson em JSD Jackson83 Em sua primeira vers o a baseline de requisitos previa tr s vis es configura o modelo b sico e hipertexto Ela calcada em uma vers o estruturada do modelo de entidade e relacionamento e permite a representa o de clientes a es eventos externos est mulos externos sa da e est mulo interno Tamb m fazem parte dois atributos restri o e diagn stico O atributo de restri o serve para delimitar o escopo do requisito enquanto que o de diagn stico uma observa o que levanta algum problema em rela o a uma das entidades representadas O ltimo utilizado na valida o com clientes 38 Figura 3 2 Baseline de requisitos em sua vers o atual Leite97 A vis o de configura o respons vel por manter registro da evolu o do sistema Mant m registro do hist rico de mudan as atrav s de uma estrutura chamada etiqueta que captura as seguintes informa es pessoa respons vel raz es para a mudan a inclui disparo data do disparo e autoriza o e tipo de mudan a entrada modifica o ou exclus o Mostramos um exemplo de etiqueta utilizada pela vis o de configura o na Figura 3 3 Esta vis o o ponto chave para a manuten o da rastreabilidade da informa o 39 Data vers o Hora Usu
136. ferramental para apoio cria o e evolu o de especifica es baseadas em cen rios Existem na literatura v rias propostas de ferramentas que apoiam a cria o dos mesmos Zorman95 Maiden98 Antonelli98 BenAchour99 Todas ferramentas oferecem em variados graus apoio as atividades de entrada de dados cria o de conex es ou elos entre cen rios e facilitam a verifica o da consist ncia do conjunto Estas atividades s o fundamentais na cria o da primeira vers o do conjunto de cen rios de uma aplica o por m medida em que esta evolui outras necessidades emergem Entendemos como evolu o o processo de transforma o sofrido por uma especifica o ao longo da vida til da aplica o que esta corresponde Desta forma uma especifica o evolui durante as fases de desenvolvimento e manuten o da aplica o Nenhuma das ferramentas citadas acima oferece apoio satisfat rio evolu o das especifica es baseadas em cen rios Nos cap tulos anteriores em especial na se o 4 6 atrav s de exemplos do segundo estudo de caso mostramos que a evolu o um processo complexo e que sua ger ncia est longe de ser trivial Talvez a maior dificuldade resida no fato do processo evolutivo ser intermitente fazendo com que sempre haja mudan as na base que podem ter impacto tanto em est gios futuros quanto em outros j encerrados O modelo para evolu o de cen rios apresentado no cap tulo anterior auxil
137. gr ficos que facilitam a visualiza o dos aspectos relacionados a evolu o dos cen rios Lembramos que uma das grandes vantagens apontadas no contexto da utiliza o da t cnica de cen rios est em facilitar a valida o de informa o junto a clientes Sutcliffe98 Maiden98 Rolland98 6 2 TRABALHOS RELACIONADOS Aspaugh et al prop em uma estrat gia para ger ncia de cen rios baseada na utiliza o de gloss rios controle de epis dios e nos relacionamentos Aspaugh99 Os relacionamentos identificados pelo autores levam em conta somente a semelhan a existente entre cen rios que detectada a partir da compara o entre componentes de modo similar ao que utilizamos na an lise do Estudo de Caso I Nosso enfoque difere do proposto pelos autores pois fornecemos uma taxonomia muito mais rica para a classifica o dos relacionamentos entre os cen rios A quest o da rastreabilidade de cen rios face a outros artefatos de software tratada pelo ambiente PRIME CREWS Haumer98 Haumer99 Em sua vers o atual este ambiente faz o relacionamento entre cen rios de utiliza o dos sistemas e modelos de objetivos atrav s de relacionamentos de depend ncia tipados e g elos do tipo positivo negativo atinge objetivo e falha Segundo os autores o enfoque implementado para o ambiente pode ser estendido de modo a incluir outros modelos conceituais tais como modelos entidade relacionamento modelos de objeto e modelos de neg ci
138. guiada por CEN RIO descreve Figura 2 10 Classifica o para nota o de cen rios segundo os componentes apresentados 2 5 RESUMO Neste cap tulo fizemos um apanhado geral das diversas reas de aplica o e poss veis empregos para a t cnica de cen rios Mostramos que n o existe uma defini o universal para o termo e que existem v rias maneiras de classificar sua utiliza o Apresentamos uma pequena revis o de nota es para cen rios do tipo semi estruturada e que utilizam linguagem natural de modo a poder fazer uma compara o com a nota o proposta por Leite que utilizamos ao longo deste trabalho Leite97 No pr ximo cap tulo discutiremos a utiliza o de cen rios em um contexto mais amplo onde levamos em conta a evolu o de outros os artefatos associados ao processo de desenvolvimento de software Neste contexto apresentaremos a baseline de requisitos uma estrutura paralela ao desenvolvimento que tem como objetivo modelar e acompanhar a evolu o dos requisitos externos ao software Leite95 31 Cap tulo 3 Evolu o 3 1 INTRODUCAO O desenvolvimento de sistemas de software uma atividade complexa que envolve um grande numero de recursos coordenados de modo a atingir um mesmo objetivo Este processo pode ser organizado de varias maneiras a mais frequente atrav s da elabora o de v rios modelos do sistema que ser o sucessivamente refinados ao longo do desenv
139. i e apenas representam intera es com o sistema deixando de lado o macrosistema e sua din mica Por contraste um cen rio com um contexto largo aquele com um ou nenhum agente dos sistema e as intera es ocorrem entre os agentes externos A faceta de argumenta o por sua vez descreve as raz es que justificam o comportamento narrado pelo cen rio Finalmente a faceta de cobertura lida com aspectos de escopo temporalidade e objetivo dos cen rios A vis o de conte do divida em descri o e apresenta o Descri o corresponde ao tipo de informa o contida no cen rio i e descri es em linguagem natural estruturadas utiliza o de gr ficos entre outras A vis o de apresenta o por sua vez 16 corresponde ao ponto de vista do cen rio se toma partido de um dos agentes do macrosistema ou se independente O Framework apresentado acima tenciona classificar modelos de cen rios A vis o pregada pelos autores orientada a produto pois leva essencialmente em conta os aspectos relativos a objetivo formato conte do e ciclo de vida Os autores justificam deixar de lado os aspectos relativos ao processo pela escassez de refer ncias ao t pico na literatura dispon vel 2 2 3 FRAMEWORK PARA CLASSIFICA O DE CEN RIOS PROPOSTO POR FILIPPIDOU De modo a organizar os diferentes enfoques para cen rio encontrados na literatura Filippidou prop e a utiliza o de um Framework baseado em quatro perspectiv
140. ia Administradora Lista dos lances Administradora Administradora comunica realiza o da licita o utilizando meios de imprensa m participante fez comunicado Escriv o Se abrem as listas dos lances e se SE existe mais de um lance igual NT O se sorteia a ordem dos participante Segue se o ranking para distribuir los ve culos ntrega do ve culo ao participante vencedor do leil o cen 1 Expulsar participante 11 Expulsar Quotas Administradora Administradora comunica omunicado Participante SE faltam membros para o grupo i ais s NTAO o grupo pode vir a se S dissolver 12 anhar ve culo Participante est Lance Administradora Participante entrega envelope com ites o cheque contendo lance do leil o Participante SE participante entrega mais do que o m ximo ENT O se devolver a diferen a em 48 horas Banco Funcion rio do banco devolve Oo T RR E Ommo o O Administradora Banco envia comprovante de pagamento a administradora i de mora na administradora Administradora Empregado da administradora devolve cupom autenticado p umprir Banco upom de pagamento Participante Participante paga quota no banco obriga o Recusar ve culo a a sorteado deseja receber ve culo SE esta a terceira vez que o participante recusa o ve culo NT O expulso do cons rcio cen SE administradora aceita ades o NTAO o participante assegurado cen omunicado Escriv o Se sorteia uma ordem para os participante po Be sort
141. ia da configura o e pesquisas na base Os objetos do Framework ilustrado na Figura 5 9 que fazem parte da parte fixa da ferramenta s o scenario version operation release relationship history e component Estes se encontram distribu dos nos reposit rios localizados na camada inferior da ferramenta Os m todos previstos por todos os objetos fixos est o implementados em ASP ao n vel do sofware base e utilizam como par metros informa es que se encontram nos reposit rios de dados Os objetos configur veis por sua vez s o parametrizados no momento de instancia o do Framework pelos seus usu rios Estes ao contr rio dos objetos fixos utilizam se de par metros fornecidos pelos usu rios da ferramenta ao longo do processo de instancia o Al m dos m todos das classes implementados no n vel base tamb m 135 encontramos o software respons vel pela instancia o do Framework i e configura o do banco de dados software e da estrat gia de navega o da pr pria inst ncia Os objetos configur veis s o a saber presentation trace e rationale O objeto presentation respons vel pela apresenta o dos dados o nico que tem sua implementa o distribu da em todos os n veis Apesar da estrat gia de navega o da ferramenta estar fortemente implementada atrav s do software localizado na camada base atrav s da cria o din mica de p ginas tamb m encontramos elementos navegacionais nas outras d
142. ia decidiu omunicado da Administradora Pessoa f sica ou Pedido de ades o Solicitante ons rcio jur dica pe Documentos do Administradora participante epis dios exce o restri o Novo grupo incorporado a lista de grupos existente omunicado de forma o de novo grupo Administradora atribui n mero ao grupo Administradora envia articipante avisa administradora que deseja sair participantes Assembl ia toma decis o por aioria absoluta SE decis o continuar com o ons rcio ENT O administradora envia omunicado SE decis o n o continuar om o cons rcio ENT O administradora envia omunicado avisando o NAL do plano de cons rcio Administradora recebe omunicado da decis o de rmino do cons rcio Administradora cobra taxa pela transa o Administradora liquida com o grupo de cons rcio Administradora calcula quanto tem cada participante SE a administradora adiantou dinheiro ENT O se devolve a SE existem perdas por otivos alheios a administra o ENT O se obre estas perdas Solicitante paga o direito de admiss o Analisar pedido de ades o Cancelamento de d vida antecipado Liquidar juros Determinar aceita o Solicitante apresentoulPedido de ades o Solicitante de solicitante i ades ancelar d vida com Administradora Plano de Administradora administradora ons rcio Administradora omprovante de Pz pagamento Informa o de ou igual a d vida ENT O
143. ia na coordena o da evolu o uma vez que estabelece uma estrat gia definida para a evolu o dos cen rios Segundo o modelo um cen rio sofre versionamento como resultado da aplica o de opera es Uma vez que o desenvolvedor opte por uma opera o est na verdade escolhendo um curso de a es que tem pr condi es e impactos bem definidos Neste enfoque a sequ ncia de opera es utilizada durante o processo evolutivo tem uma sem ntica associada que auxilia na pr pria descri o deste processo Infelizmente para realizar uma ger ncia eficaz do processo somente as informa es intr nsecas as opera es n o fornecem dados suficientes Idealmente dever amos 103 manter outros registros relativos a fatores externos que influenciam o processo propriamente dito Devemos registrar informa es tais como local data hora e o autor de mudan as bem como raz es ou justificativas para as mesmas Devemos manter o conjunto de cen rios sempre atualizado ao mesmo tempo em que devemos ser capazes de recuperar vers es anteriores Em resumo o processo evolutivo deve levar em conta outros aspectos al m daqueles diretamente relacionados a evolu o dos cen rios propriamente ditos Baseados no conhecimento representado atrav s do modelo de evolu o apresentado no cap tulo anterior e na discuss o dos requisitos para o suporte automatizado evolu o de cen rios que apresentaremos a seguir iremos propor um Framewo
144. ibliotec rio examina prazo de devolu o SE prazo estourado ENT O bibliotec rio calcula multa SE houver multa ENT O usu rio paga multa bibliotec rio atualiza ficha do usu rio usu rio escolhe a obra usu rio solicita obra ao bibliotec rio bibliotec rio verifica a disponibilidade da obra SE obra dispon vel ENT O bibliotec rio bibliotec rio obt m identifica o do usu rio oferece op o E de reserva SE identifica o OK ENTAO bibliotec rio bibliotec rio registra empr stimo na fichabrienta usu ri da obra como procede bibliotec rio marca obra no cart o do usu rio bibliotec rio entrega obra para usu rio bibliotec rio solicita dados pessoais do usu rio usu rio fornece seus dados para bibliotec rio bibliotec rio inclui dados no sistema bibliotec rio imprime cart o do usu rio usu rio leva seu cart o Usu rio retira obra Cen rios Codificados Nome no objetivo recursos atores i episodios exce o _ restri o cadastrar obra 1 Ol RI Al EI RSTI R2 E2 RST2 R2 Al E4 E2 RI 1 A2 ES R3 EG E3 ES E6 ET R3 Al E6 devolver obra 2 02 retirar obra da E 03 biblioteca RI AZ E6 E4 E4 E12 Cen4 _E10 R3 Al Ell registrar usu rio 4 O1 A2 E2 Projeto III Sistema de Biblioteca Vers o 2 Cen rios Literais objetivo ontexto recursos atores cadastrar
145. igura 2 7 Estrutura para nota o de cen rios proposta em Rolland9S Zz Um cen rio caracterizado por seus estados inicial e final onde o estado inicial representa as pr condi es para a realiza o deste cen rio Os autores fazem uma distin o entre cen rios ditos normais e excepcionais onde a distin o reside no cumprimento de um objetivo associado mas que n o faz parte da estrutura deste cen rio As a es podem ser de dois tipos at micas ou compostas de um fluxo A ltima a composi o de uma s rie de a es at micas Esta nota o para cen rios utiliza um formato textual semi estruturado e linguagem natural 2 3 6 CEN RIOS DENTRO DO CONTEXTO DA BASELINE DE REQUISITOS Leite define cen rios como descri es evolutivas de situa es pr prias ao ambiente Leite97 Leite97 b Mais abrangente do que a defini o proposta na literatura de Intera o Homem M quina este enfoque prega que cen rios devem ser utilizados durante todo o processo de desenvolvimento do software Compreende al m da intera o entre sistema e clientes a intera o entre m dulos do sistema Nesta luz temos desde cen rios iniciais que modelam o macrosistema onde o sistema ser desenvolvido e instalado at cen rios externos i e que representam as intera es dos 26 usu rios com o sistema quando este estiver em funcionamento passando por v rias vers es intermedi rias ao longo do processo de desenvol
146. ilitando sua comunica o Por outro lado o grau de informalidade da t cnica permite com que esta seja utilizada sem apoio metodol gico adequado Este aspecto que vem sendo apontado em especial pela literatura da rea de Engenharia de Requisitos tem sido pouco explorado e dificulta a ger ncia o controle e sistematiza o da utiliza o de cen rios Partindo de um enfoque emp rico aprofundamos nossos conhecimentos sobre a utiliza o de cen rios durante o processo de desenvolvimento de software atrav s da realiza o de dois extensos estudos de caso Os resultados est o resumidos atrav s um modelo para a evolu o de cen rios que auxilia na compreens o da din mica associada a evolu o e fornece uma estrat gia incremental baseada na aplica o de opera es bem definidas sobre um ou mais cen rios da base Neste trabalho propomos uma organiza o que permite sistematizar a evolu o de cen rios de modo a incorporar esta t cnica entre outras pr ticas de Engenharia de Software Levando em conta o conhecimento sobre cen rios encapsulado no modelo de evolu o e incorporando aspectos de ger ncia propomos o Framework de evolu o de cen rios de modo a racionalizar a utiliza o e ger ncia destes artefatos em um contexto geral de desenvolvimento de software O Framework proposto configur vel e atrav s da instancia o de hot spots permite que seus usu rios talhem estrat gias para a ger ncia da evolu o d
147. im dos projetos Desta forma utilizamos projetos contendo desde 3 a 35 cen rios e cujos contextos variavam desde sistemas de controle acad micos at sistemas para cons rcios de autom veis Os projetos foram realizados por alunos dos cursos de inform tica engenharia e profissionais liberais da rea de sistemas orientados por membros pertencentes ou relacionados ao grupo de engenharia de requisitos da PUC Rio A an lise dos projetos foi realizada sem contato direto com os grupos baseada na documenta o f sica e digital dispon vel apenas 44 ESTUDO DE CASO I Numero Numero de epis dios Numero de total de total relacionamentos entre cen rios cen rios Projeto I 39 205 38 P s gradua o do departamento Vers o 1 Projeto II 20 98 19 Sistema de Biblioteca Versao 1 Projeto III 4 26 4 Sistema de Biblioteca Versao 1 Projeto III 9 74 6 Sistema de Biblioteca Versao 2 Projeto III 9 21 1 Sistema de Biblioteca Vers o 3 Projeto IV 13 45 16 Gr fica Vers o 1 Projeto IV II 13 51 Gr fica Vers o 2 Projeto V 22 85 28 Consorcio Versao 1 Projeto VI 18 56 23 Consorcio Versao 1 Projeto VII 26 23 16 Ger ncia acad mica Versao 1 Projeto VII II 28 85 29 Ger ncia acad mica Vers o 2 Projeto VIL III 35 104 49 Ger ncia acad mica Vers o 3 TOTAL 236 873 229 Tabela 4 1 Detalhamento dos projetos envolvidos no Estudo de Caso I O restante deste
148. informa es Neste caso estamos tratando de um problema comum a qualquer processo de elicita o de informa o Nem sempre poss vel abarcar toda a informa o relativa a um projeto de uma nica vez e erros s o inevit veis Outro caso mais raro s o circunst ncias externas ao software que determinam mudan as no meio ambiente e que tem impacto sobre os cen rios 4 4 2 OPERA ES INTER CEN RIOS Nesta sub se o trataremos de opera es que envolvem dois ou mais cen rios De modo a facilitar seu entendimento dividimos o conjunto destas opera es em tr s grandes blocos O primeiro bloco constitu do das opera es que reduzem a base atrav s da uni o de dois ou mais cen rios Estas opera es s o as de fus o encapsulamento consolida o Detalharemos cada uma destas opera es na se o seguinte O segundo bloco de opera es aquele que expande a base atrav s da divis o e cria o de novos cen rios Estas opera es s o as de divis o m ltipla divis o extens o e especializa o Novamente estas opera es ser o detalhadas nas se es seguintes O terceiro e ltimo bloco corresponde as opera es de que alteram em uma unidade o n mero de cen rios na base Neste enfoque s o consideradas as opera es de exclus o e adi o de novo cen rio Este grupo especial na medida em que os dois primeiros est o atrelados a ele i e toda opera o de redu o da base resulta na exclus o de um
149. inguagem natural semi estruturada e prop e que cen rios sejam aplicados durante todo o processo de desenvolvimento do software Na pr xima se o faremos uma revis o comparativa de algumas das propostas encontradas na literatura semelhantes aquela que temos utilizado Leite97 18 2 3 REPRESENTA ES PARA CEN RIOS Nesta se o concentraremos nossos esfor os em propostas para representa o de cen rios que utilizam linguagem natural semi estruturada Limitamos nosso escopo de modo a fazer uma compara o entre a nota o que temos utilizado e outras semelhantes Revis es extensas da utiliza o de cen rios existem e est o dispon veis em Filippidou98 Rolland98 Weidenhaupt98 2 3 1 M TODO PARA AN LISE DE REQUISITOS BASEADO EM CEN RIOS SCRAM Neste enfoque os autores utilizam uma combina o das t cnicas de prototipagem entrevistas cen rios e rationale Sutcliffe97 Sutcliffe98 Embasados na hip tese de que a integra o de t cnicas fornece o melhor caminho para a engenharia de requisitos prop em um m todo de integra o em quatro est gios e entrevistas e t cnicas para descobrimento de fatos estas t cnicas s o utilizadas de modo a elicitar dados suficientes que permitam a constru o de um prot tipo chamados demonstradores de conceito e constru o de prot tipos neste est gios os autores pregam a utiliza o de ferramentas comerciais tais como o Macromedia Director e MS Visual
150. io ela com opera es dispon veis aparece exemplar art o do usu rio bibliotec rio seleciona bot o Servi os emprestado Loo oo oo riadeservi osaparee SS O 8 00O 0 DOO O Of bibliotec rio ou usu rio selecionam Devolu o Loo aparece teladedevolugio O O A S f fibliotec rio preenche campo de n mero do exemplar of existir multa ENT O aparece mensagem de cobran a empr stimo de empr stimo Biblioteca cart o do usu rio bibliotec rio bibliotec rio loga no sistema ae E Hor rio de ficha da obra usu rio ela com opera es dispon veis aparece funcioname DI o isiicc rio sclectona Servigos Sid DPI Lo po Fea de services aparece E SS DPS SR DO rarccerciadeEmpr simo bibliotec rio one campos de n mero do cart o e n mero do exemplar o pibliotec rio clica no bot o OK gt A 20 A aparece mensagem indicando resultado da opera o inscri o do usu rio K 2 inscrever Biblioteca cart o do usu rio bibliotec rio bibliotec rio loga no sistema usu rio Hor rio de funcioname Doo ibliotec rio seleciona Servi os O Doo tele servigos aparece SSS O E ee O O bibliotec rio ou usu rio clicam no bot o Inscri o Lo aparece teladetnscrigio YY bibliotec rio preenche campos com dados usu rio Do Pibliotec rio clica no bot o OK __ O E a a dados estiverem OK ENT O aparece tela de cadastro sro cadastra senha it co usu rio ei usu
151. io j existente Para tal devemos acionar as heur sticas de detec o de relacionamentos e reavaliar a base como um todo Na realidade apesar de trazer novas informa es os cen rio cont m 76 alguma coincid ncia de conte do com aqueles pr existentes Afinal cen rio n o existem no v cuo somente razo vel imaginar que novos procedimentos estejam de alguma forma ligados com os antigos 4 5 TAXONOMIA PARA A EVOLU O DE CEN RIOS Nas duas se es anteriores descrevemos detalhadamente os componentes est ticos e din micos que regem o processo evolutivo de cen rios Os relacionamentos e opera es respectivamente s o os elementos b sicos que comp em um modelo gen rico da evolu o de cen rios Nas duas ltimas se es apresentamos e exemplificamos cada um dos relacionamentos e opera es detectados atrav s do estudo de caso realizado A partir destes elementos fomos capazes de montar uma taxonomia para a evolu o de cen rios que est ilustrada na Tabela 4 10 a seguir Relacionamentos Opera es Aspectos est ticos intra configura o Aspectos din micos inter configura o intra cen rio Inter cen rios Equival ncia Encapsulamento es ER a E E E O ER O Do IE Tabela 4 10 Taxonomia para a evolu o de cen rios De modo a confirmar os resultados apresentados na Tabela 4 10 acima realizamos um segundo estudo de caso O objetivo principal deste estudo conforme mencionado a
152. ios aspectos tais como a manuten o da consist ncia entre diferentes configura es est o envolvidos tornando mais complexa a rastreabilidade da informa o Nesta se o apresentaremos uma discuss o sobre a possibilidade de fornecer apoio automatizado evolu o de cen rios Nossa experi ncia no desenvolvimento de sistemas utilizando cen rios apontou diversas reas que poderiam se beneficiar de apoio automatizado Uma caracter stica b sica do enfoque de cen rios a gera o de um grande volume de informa o o que dificulta a realiza o de consultas espec ficas e a manuten o da consist ncia entre cen rios ao longo do processo evolutivo Rolland98 Outro problema a visualiza o da din mica entre cen rios A partir de um nico cen rio v rias deriva es s o poss veis levando se em conta o contexto em que este se encontra e suas poss veis exce es Por ltimo a pr pria estrutura dos cen rios sugere uma leitura n o linear recheada de refer ncias a outros documentos o que dificulta sua apresenta o Tufte97 Estas observa es est o resumidas na Tabela 5 1 a seguir Vers o Configura o Rastreamento Manuten o e pesquisas na Manuten o da consist ncia Permitir leitura n o sequencial base de dados entre vers es de documentos Mecanismos de vis o Manuten o da consist ncia Permitir a incorpora o de Listagens e relat rios entre documentos outros documentos
153. ito e ciclo de vida Na vis o de formato existe uma distin o entre descri o e apresenta o Enquanto a primeira descreve as nota es existentes a ltima d conta da classifica o dos modos de apresentar a informa o contida nos cen rios Este trabalho chega a descrever os tipos de linguagem poss veis para descrever cen rios e g Tabelas scripts representa es estruturas As nota es tamb m s o classificadas segundo seu n vel de formalismo Em trabalhos anteriores notamos que a granularidade do conte do dos cen rios desempenhava um papel fundamental na qualidade do processo de rastreamento da informa o Breitman98 Distin es do tipo eventos agentes e a separa o dos objetos restantes nos permitiram conduzir experimentos de rastreamento muito mais ricos em detalhes e que consequentemente trouxeram resultados mais significativos Na realidade o n vel de detalhamento desejado apenas uma especializa o da classifica o proposta por Rolland Utilizando a ltima como ponto de partida fomos capazes de refinar a classifica o da nota o de cen rios segundo o tipo de componente encontrado Foram ent o criadas quatro novas categorias inten o agente ambiente e a o Como vimos na se o anterior todas as nota es apresentadas apresentam pelo menos um destes componentes Na Tabela 2 2 a seguir resumimos as nota es apresentadas segundo o crit rio proposto Jacobson94 atores use case
154. jeto que ocasionalmente imp em uma divis o artificial na organiza o dos cen rios na base Esta estrat gia apesar de bastante utilizada durante os estudos de caso pouco recomend vel pois introduz dificuldade na leitura dos cen rios Voltamos a lembrar que um dos aspectos positivos da utiliza o de cen rios durante o desenvolvimento de software promover uma nota o de mais f cil compreens o por parte de clientes e usu rios e acreditamos que a introdu o deste tipo de artif cio pode ter um efeito negativo neste processo A opera o de divis o caracterizada pela pulveriza o do conte do de um cen rio em dois ou mais cen rios distintos sem a preserva o do cen rio original Os cen rio resultantes da opera o devem ser complementares o que significa que podem ter coincid ncia de conte do Se houver indica o de sequ ncia de a es deve se tamb m estabelecer relacionamentos de pr condi o entre os novos cen rios A rigor qualquer cen rio pode sofrer a opera o de divis o desde de que sejam preservados os relacionamentos que este possu a anteriormente Especial aten o tem de ser dada aos relacionamentos de complemento conten o poss vel preced ncia e pr condi o pois como esta opera o resulta em dois ou mais cen rios fundamental verificar para qual ou quais dos novos cen rios os relacionamentos permanecem v lidos Na Figura 4 15 mostramos um exemplo da opera o divis o do
155. l n mero x carta do aluno jaluno aluno escreve carta solicitano isen o de pagamento de mensalidade DI justificativa do comiss o SE dispon vel ENT O aluno anexa orientador de p s justificativa do orientador e entrega a secretarial reuni o da comiss o de p s gradua o aumentar o aluno da p s 2 aluno entra retira formul rio de pedido de prazo para prorroga o de prazo na DAR defesa de tese disserta o doutorado de 4jpagamento anos ou mestrado 2 anos expirado DI justificativa DAR aluno encaminha formul rio pago com justificativa na DAR reuni o da comiss o DAR envia documenta o para DI comiss o de p s gradua o coordena o setorial do CTC encaminha pedido a CCPG para julgamento SE pedido aceito ENT O resultado comunicado a secretaria do DI aluno funcion rio ou professor retira formul rio de requisi o de 2a via do cart o na DAR prestar exame de qualifica o alunos da p s gradua o de outras universidades tenham acesso aos cursos do requisito b sico doutorado para obten o do t tulo de doutorado professor pessoa entrega formul rio pago e fotos na DAR matr cula da institui o de formul rio de inscri o de aluno extraordin rio DAR aluno extraordin rio retira formul rio de isncri o na DAR comprovante de professor jaluno extraordin rio paga taxa no banco pagamento assinaturas qualifica o assinaturas qualifica
156. l atribui registro para biblioteca central fasc culo biblioteca central envia fasc culo para biblioteca do 40 andar funcion rio da biblioteca prepara ficha d cataloga o para o fich rio CARDEX Fasc culo colocado em exposi o 21 Usu rio se usu rio em posse do crach de usu rio usu rio apresenta crach de identifica o identifica o identifica perante cart o de identifica o i i funcion rio identifica o Sistema SERRO da biblioteca passa crach de pergamum identifica o na leitora tica E biblioteca do 40 leitora tica funcion rio da usu rio digita senha andar i biblioteca i senha cadastrada i i Cen rios Codificados i Nome i no i objetivo contexto recursos atores i episodios i exce o restri o publicar MCC il Ol ici PRI Al El i H A3 E3 EX1 A4 i E4 i requisitar crach de identifica o 02 i C2 R2 i A2 E6 i C4 R3 E7 cadastrar senha no sistema de biblioteca 03 C3 R5 A5 i E7 E C5 R6 i A6 ET Ell retirar obra sem crach de identifica o i4 03 C3 R6 iA E13 CENS i A8 El4 CENI4 E15 EX3 RTI Retirar obra com crach de identifica o is 03 i C3 R5 A5 E13 CEN8 E E E i i i CENI5 i C5 ERT i A6 i E7 E15 mpr stimo de peri dico no DI com cart o antigo i6 03 i C5 R8 AS E13 CEN14 EX3 RTI A6 i E7 i E15
157. lacionamentos que o cen rio possu a na vers o anterior de modo a verificar se este sofreu alguma opera o que incorporasse outros cen rio ao mesmo No caso de subtra o de informa o tentamos localizar quais cen rio da presente vers o possuem os componentes que est o faltando e n o possu am em vers es anteriores Desta forma podemos verificar se houve alguma opera o de separa o da informa o O terceiro e ltimo est gio da an lise a evolu o dos relacionamentos Comparamos os gr ficos de modo a verificar a persist ncia destes durante o processo evolutivo 50 Comparamos ambos esquemas e listamos os relacionamentos que sumiram e o aparecimento de novos relacionamentos A seguir verificamos individualmente cada um dos relacionamentos anotados de modo a refinar as opera es detectadas atrav s dos passos anteriores Na pr tica o melhor indicativo da aplica o de opera es foi o aparecimento de relacionamentos de preced ncia i e pr condi o e poss vel preced ncia que ser o detalhados na se o 4 3 a seguir O aparecimento destes quase sempre indica a uni o de cen rios e a necessidade da incorpora o de algum indicativo de tempo A investiga o de mudan as em outros relacionamentos tais como equival ncia e exce o trouxe pouco ganho de informa o na realidade Nas duas se es seguintes apresentaremos os frutos das an lises intra configura o sob a forma de relacionamento
158. lioteca funcion rio da biblioteca barra pela leitora tica sistema SE obra entrega no prazo ENTAO Pergamum funcion rio da biblioteca d baixa usu rio usu rio entrega obra para funcion rio da biblioteca funcion rio da ncion rio da biblioteca registra emerg ncia SE obra entrega no prazo ENT O ncion rio da biblioteca d baixa pessoa fornece carteira de identidade professor preenche formul rio de pedido ncion rio da biblioteca coloca obra na obra n o est ateleira de reservas indicando o noome dispon vel no t rmino do semester o funcion rio da professor biblioteca disponibiliza obra para retiradarequisitou u rio apresenta obras desejadas ao u rio apresenta crach de identifica o ncion rio da biblioteca registra os mpr stimos na planilha de empr stimos ncion rio da biblioteca envia planilha a biblioteca central quando o sistema voltar ncion rio da biblioteca comunica ao u rio a data prevista para a chegada do usu rio entrega obra para funcion rio da ncion rio da biblioteca passa c digo dedevolver obra volu o na planilha de empr stimo de possui c digo professor entra no sistema de requisi o sistema de requisi o de compra fora d 4 t extensdo do termo de feserva reservar obra sistema Pergamum fora do ar usu rio tem com sistema fora do ar cobran a de multa obra n o
159. literais para a an lise Acreditamos que o cen rio futuro de utiliza o das heur sticas ser este A maior parte do reconhecimento das opera es poder ser automatizada utilizando mecanismos do tipo pattern matching por m sempre haver o casos onde a interven o humana ser necess ria Uma vez identificada a totalidade dos relacionamentos para cada configura o desenhamos um gr fico que ilustra a rede de interdepend ncias entre os cen rios Um exemplo de um destes gr ficos mostrado na Figura 4 2 a seguir Notamos que uma representa o gr fica para a rede de relacionamentos entre os cen rios de uma configura o facilitava a an lise LEGENC eee Ce ear abari ad b 1 Prg comdirica Figura 4 2 Exemplo de gr fico de relacionamentos entre cen rios de uma mesma configura o Uma vez finalizada a an lise intra configura o passamos para o estudo do processo de evolu o dos cen rios ao longo do tempo Nesta fase comparamos as mudan as ocorridas na passagem de uma configura o para outra consecutiva Chamamos este 49 processo de an lise inter configura o e o dividimos em tr s est gios compara o entre os gr ficos de relacionamentos an lise do versionamento de cen rios e an lise dos relacionamentos Detalharemos estes est gios a seguir No primeiro fazemos uma compara o entre os gr ficos de relacionamento das duas configura es em quest o e listamos os elem
160. m nico cen rio C1V4 derivamos uma nova vers o do pr prio C1V5 e conjugado com os cen rios C2V1 e C4V1 temos a cria o do cen rio C4V2 Na seta da direita temos uma situa o mais simples o cen rio C5V4 gera a vers o C5V5 e uma vers o para o novo cen rio C6V1 Ilustramos os gr ficos ac clicos para este exemplo na Figura 5 6 Figura 5 6 Gr ficos de vers o ac clicos para o exemplo ilustrado na Figura 5 De modo a rastrear a informa o codificada atrav s dos cen rios fundamental manter um registro destas mudan as de modo em que possamos recriar os passos que levaram a determinada vers o Desta forma necess rio manter se um hist rico do conte do de cada cen rio a cada vers o de modo a permitir a reconstru o de 112 vers es anteriores A possibilidade de recupera o de vers es anteriores inclusive utilizada como indicativo de maturidade do processo de desenvolvimento de software segundo o Capacita o e Maturidade de Software CMM Paulk93 claro que para viabilizar este processo de recupera o teremos que lidar com grandes volumes de informa o tornando crucial o apoio automatizado 5 1 2 1 RATIONALE Em uma abordagem cl ssica da ger ncia da configura o tais como as prescritas por Tichy82 Bersoff80 dever amos ter para cada vers o um registro especial contendo maiores informa es sobre o pr prio processo de versionamento Tipicamente informa es do tipo data da
161. m apenas o conte do de um cen rio i e internas enquanto que a segunda categoria se refere a opera es que envolvem um ou mais cen rios Opera es que resultam na adi o ou exclus o de cen rios a base pertencem a segunda categoria De modo a testar a robustez e aplicabilidade dos resultados do primeiro estudo de caso durante fases distintas do processo de desenvolvimento de software elaboramos um segundo estudo de caso desta vez de nossa autoria A id ia era testar a taxonomia para a evolu o de cen rios em um sistema de software desde sua elabora o at sua implementa o O sistema escolhido foi a simula o do controle do sistema de ilumina o para o Departamento de Inform tica da Universidade de Kaiserslautern proposto como estudo de caso durante um recente workshop em Engenharia de Requisitos realizado no Schloss Dagstuhl Dagstuhl99 Grupos de pesquisa em Engenharia de Software de diversas universidades se comprometeram em especificar este sistema de modo a fornecer uma base para compara o entre as v rias t cnicas utilizadas Os resultados desta e de outras simula es ser o divulgados em uma edi o especial do Journal of Universal Computer Science editado on line pela Springer Verlag A realiza o do segundo estudo de caso nos permitiu refinar a taxonomia inicial e propor um modelo para a evolu o de cen rios Al m do modelo de evolu o a experi ncia adquirida no processo permitiu que elabor
162. mb m foi mantido por m mudou de vers o Na pr tica este tipo de opera o onde novos cen rios s o criados exclu dos incorporados ou divididos em outros cen rios muito comum dificultando tanto o acompanhamento do processo evolutivo quanto a rastreabilidade da informa o contida nos cen rios Configura o Onde vi Configura o V Conf gwr a o Configuragidll Configura o Il Configura o C Cen rio V Vers o Figura 1 1 Um exemplo de evolu o de cen rios Com o intuito de investigar o desenvolvimento de software baseado em cen rios em maior detalhe organizamos um estudo preliminar sobre o assunto Utilizando um conjunto de heur sticas desenvolvidas e validadas no contexto da pesquisa em Engenharia de Requisitos de nosso grupo Leornadi 97 Hadad 97 orientamos sete grupos de alunos de gradua o em um experimento de desenvolvimento de software cujo processo integrava as t cnicas de cen rios elabora o de gloss rios da aplica o projeto e implementa o de sistemas orientados a objeto Rumbaugh91 Booch99 Jacobson94 Whirfs Brock90 Um dos resultados deste experimento foi um embri o de uma taxonomia para a evolu o de cen rios calcada em relacionamentos e opera es apresentada em Breitman98 A subsequente utiliza o da taxonomia na pr tica provou se til por m limitada apontando para a necessidade do aprofundamento destes resultados Breitman98 b Paralela
163. mente outros autores indicaram problemas que usu rios da t cnica de cen rios estavam enfrentando em rela o a evolu o dos mesmos Weidenhaupt aponta para as dificuldades em manter consist ncia entre v rias vers es dos cen rios e a falta de suporte para a ger ncia de mudan as entre os v rios tipos e vers es de cen rios empregados atualmente especialmente se estes encapsularem conhecimento em v rios n veis de abstra o Weidenhaupt98 Rolland aponta para defici ncias que os v rios modelos para a representa o de cen rios dispon veis na literatura apresentam em rela o a defini o do processo que deve ser empregado para a cria o e ger ncia dos mesmos durante o desenvolvimento de software Rolland98 finalmente Jarke aponta que a organiza o e evolu o de cen rios devem ser vistas como grandes problemas especialmente se 1 m ltiplos pontos de vista forem levados em conta e g desenvolvedor usu rio e gerente em um nico cen rio e 2 o rastreamento de cen rios atrav s das v rias fases do desenvolvimento e g relacionamento entre cen rios e prot tipos e elabora o de cen rios como forma de teste for considerado Jarke98 Sob a influ ncia da problem tica descrita na literatura e partindo dos nossos resultados iniciais decidimos investigar a fundo o processo de evolu o de cen rios que culminou nos resultados que ser o apresentados nesta tese Descrevemos sucintamente o tr
164. mente aplicamos as heur sticas sobre o primeiro bloco de projetos os quais ja t nhamos identificado relacionamentos entre os cen rios utilizando a taxonomia proposta em Breitman98 que utiliza os cen rios em sua forma literal Desta vez utilizamos a representa o interna codificada pois esta facilitava a identifica o de coincid ncias e o c lculo da frequ ncia de aparecimento dos componentes dos cen rios envolvidos Nosso objetivo era verificar se conseguir amos detectar os mesmos relacionamentos detectados anteriormente Para tal utilizamos um misto de t cnicas de casamento de padr o pattern matching e a an lise manual Na se o 4 3 apresentamos as heur sticas utilizadas e mostramos v rios exemplos de relacionamentos detectados atrav s da utiliza o das mesmas Nesta fase conseguimos detectar a maioria dos relacionamentos identificados na fase anterior Os erros podem ser justificados pela necessidade de ajuste das heur sticas por erros na codifica o dos elementos e g epis dios verificar senha e validar senha com c digos distintos quando se referem a 48 mesma atividade e finalmente por falta de informa o que permitisse definir o tipo de relacionamento em quest o Analisamos o segundo bloco de projetos utilizando estas heur sticas de modo a refin las Nos casos onde n o havia informa es suficientes para a determina o da exist ncia de relacionamentos intervimos utilizando os cen rios
165. mente existe tamanha variedade na representa o defini o e aplica o de cen rios que se justifica a proposta de Frameworks para a classifica o dos mesmos Na se o 2 3 apresentamos tr s exemplos deste tipo de Framework Potts e Ant n ao discutir a variedade de representa es dispon veis e possibilidade de emprego para a t cnica de cen rios apontam que todas partilham um nico objetivo que pode ser resumido como se segue sistemas de software que s o complexos e dif ceis de entender podem ser compreendidos e melhor projetados se os comportamentos e os consequ ncias de compromissos assumidos a um n vel abstrato forem clarificados atrav s de exemplos concretos O modo de representar os cen rios se torna desta forma crucial para esta compreens o Ant n98 Os resultados de nossa experi ncia particular com a utiliza o de cen rios no desenvolvimento de software fazem com que concordemos com os autores acima Tamb m acreditamos que a utiliza o de cen rios auxilia a aproxima o entre desenvolvedores e clientes trazendo benef cios na comunica o entre ambas as partes Nos ltimos anos o grupo de engenharia de requisitos da PUC Rio tem obtidos resultados em pesquisas realizadas acerca da utiliza o de cen rios durante o processo de desenvolvimento de software Leite97 Breitman98 Breitman98 b Hadad99 Breitman99 Breitman0O Breitman00 b Utilizamos a nota o proposta em Leite97 que utiliza l
166. minadora Aluno Aluno em poca de exame Aluno submetido a exame de aso seja aluno de mestrado somente l ngua inglesa aso doutorado exame de ingl s e a Aluno de doutorado em Aluno submetido a exame de poca de exame de qualifica o de doutorado doutorado Banca Examinadora Aluno marca no DI data e sala para andidato a doutorado andidato a doutorado apresenta sua possuindo proposta para proposta de trabalho para seu orientador Examinadora DI DI acumula dados sobre Aluno conclui mat ria disciplinas Aluno Professor d notas Professor rofessor passa nota final para DI IDI passa situa o do aluno para DAR Aluno jmicro hor rio Aluno adquire o micro hor rio Secretaria do DI n mero de matr cula monta seu hor rio procura o caso necess rio Aluno est presente no dia da matr cula Ambiente de ensino rofessor d aula em sala de aula rr a gii a rofessor rofessor deseja abandonar Professor comunica DI Area de Pesquisa Po lot em TE i P Aluno apresentando seu Professor chamado para participar rabalho a banca da banca examinadora examinadora Do Profes sor avalia apresenta o Sala Orientador Aluno apresentando seu Orientador toma ci ncia da rabalho a banca apresenta o examinadora Banca Examinadora rientador avalia apresenta o Doutorado rofessor e propondo orientador orienta o durante o curso de mestrado Cen rios Codificados Nome Oferecer nova
167. n rio funcion rio preenche formul rio de o ES Roroimmeno NO fuma a Cliente j informou gr fica funcion rio preenche informa es Caracter sticas do impresso ae ca Po fftincion dri consulta tabela de pre os PT funcion rio calcula or amento rte envia or amento para cliente mitir ordem de servi o 10 finiciar or amento aprovado or amento kliente liente aprova or amento S De pb 3 o 5 E A 25 cancelar ordem de servi o 11 interromper E aprovado or amento liente Cliente cancela or amento impress o gr fica emite ordem de servi o nota fiscal ainda n o foi gr fica ordem de servi o gr fica gr fica verifica andamento da impress o emitir nota fiscal ta ____1 Do pr fica gr fica emite nota fiscal efetuar pagamento banco EEE ey vida caracterizada gr fica informa valor da nota fiscal para cliente banco To gr fica Cliente executa pagamento E IE se salda d vida com gr fica pagamento registrado na nota fiscal Cen rios Codificados Nome incluir cliente excluir cliente alterar informa es do cliente efetuar servi o i efetuar pedido de or amento preencher formul rio de ordem de servi o calcular or amento aprovar or amento alterar or amento emitir ordem de servi o cancelar ordem de servi o emitir nota fiscal no objetivo contexto recursos ator
168. na rientador material de ensino Concluir disciplina Salas de Aula Fazer exame de qualifica o de doutorado o Defender tese de doutorado Caa Disciplina Salas de Aula Inscrever se em disciplina i gt E c B e Do fm UW O Q 5 S Qa Dar nota a aluno 48 3 Dar nota a Po No qd com pauta Professor organiza sua pauta A O O ad Dao ER Ce Defender tese de 25 3 Defender tese Audit rio Aluno ese preparada pelo Aluno finaliza sua tese doutorado a aluno para ser defendida Sala de Aula Banca Aluno marca no DI data e sala para defender sua tese REA ffefende sua tese para banca examinadora E x 3a a aes Professor do DI Professor comunicado ou comunica DI IP E Eu o ell PB elimina entrada de dados do Professor no sistema E Aluno m 23 Da Aluno Es A exist ncia E aluno Aluno fica impedido de continuar curso que vinha que deve ser cursando eliminado do sistema seja devido a conclus o de mestrado doutorado abandono de curso DI elimina aluno do sistema jubila o ou qualquer ator que o impediu definitivamente ou o impe a de continuar seu curso Candidato a Candidato a mestrado doutorado entrega a documenta o Documenta o Documenta o jmestrado mestrado doutorado para sua inscri o no mestrado ou inscri o no doutorado para Inscri o ou doutorado presente secretaria do DI portando toda a documenta o necess ria Fazer Disserta o 18 3 Fazer S
169. ncapsulamento Pr condi o a Cen rios originais tem de ser Poss vel preced ncia equivalentes Se houver relacionamentos de preced ncia verificar a validade para o cen rio resultante Consolida o herdados pelo cen rio a nenhuma resultante Divis o Complemento a Cen rios tem de ser complementares Conten o se necess rio estabelecer preced ncia Poss vel preced ncia Pr condi o M ltipla Poss vel preced ncia i Cen rios mant m relacionamento de Divis o Pr condi o inclus o com novo cen rio individualmente Especializa o i Cen rio original mant m relacionamento de conten o com novos cen rios 88 Nome da Impacto nos relacionamentos Preserva cen rio Pr condi es Opera o anteriores de original Novos cen rios mant m relacionamento de equival ncia entre si Extens o Poss vel preced ncia i Verificar relacionamentos do cen rio Pr condi o original para determinar validade em rela o ao novo cen rio Exclus o N o deve ser realizado se o cen rio original possuir relacionamentos do tipo pr condi o ou poss vel preced ncia a base tem de ser reavaliada de modo a determinar relacionamentos do novo cen rio com os anteriores Tabela 4 13 Heur sticas para aplica o de opera es Na pr xima sub se o vamos explorar um outro aspecto da evolu o Ao inv s de tomarmos uma configura o como ponto de partida vamos mostrar a evolu o de um cen rio ao lo
170. nfigura o visualiza o de grandes bases de dados e rastreabilidade permitiu a proposta de um Framework para evolu o de cen rios Este permite a instancia o de um processo racional e organizado para a evolu o de cen rios talhado a necessidades dos clientes De modo a suportar o Framework de evolu o de cen rios apresentamos o prot tipo da ferramenta SET Este prot tipo oferece apoio automatizado para a instancia o do Framework bem como suporte para o processo de ger ncia da evolu o de cen rios Finalmente disponibilizamos um exemplo extenso da evolu o dos cen rios de uma aplica o espec fica o sistema para controle da ilumina o Este est publicado em forma de site e acreditamos que seja um exemplo did tico que facilite a compreens o da complexidade envolvida no processo de evolu o de cen rios Este site tamb m evidencia que a t cnica de cen rios pode ser empregada durante diversas fases do desenvolvimento de software desta forma auxiliando na dissemina o da pr tica 1 4 ORGANIZA O DA TESE No cap tulo 2 apresentamos conceitos b sicos relativos a t cnica de cen rios foco deste trabalho Descrevemos algumas das particularidades do processo de software baseado em cen rios e fazemos uma pequena revis o tanto das propostas para utiliza o e nota o desta t cnica quanto para classifica o de cen rios presentes na literatura O cap tulo 3 focado em quest es relativas a
171. ngo de todas as configura es Tomaremos um exemplo em particular e mostraremos todo o processo de versionamento e opera es sofridas pelo cen rio 4 6 2 EVOLU O DE UM CEN RIO EM PARTICULAR Nesta sub se o deslocaremos o eixo de pesquisa e vamos mostrar a evolu o do ponto de vista de um cen rio espec fico Levaremos em conta todas as configura es previstas e o processo de versionamento que este cen rio sofreu ao longo das mesmas O cen rio escolhido foi user occupies room usu rio ocupa c modo pois sofre um processo de versionamento ao longo de algumas configura es para depois ser envolvido em uma fus o com outro cen rio A Figura 4 24 ilustra a evolu o deste cen rio ao longo do desenvolvimento Note que algumas vers es do cen rio aparecem em mais de uma configura o e g a vers o 3 aparece nas configura es Designl e Design Mostraremos a seguir detalhes da evolu o do mesmo 89 Cardinalidade modification _ Design Ill Design l Ae ease Figura 4 24 Evolu o do cen rio 11 user occupies room ao longo de todas as configura es O hist rico deste cen rio bem como dos restantes est disponibilizado atrav s da implementa o do site do exemplo utilizando se o prot tipo da ferramenta SET A Figura 4 M a seguir mostra o resultado da consulta de hist rico para este cen rio em particular Note que al m das informa es de cria o do cen rio a ferramenta
172. ntamos uma poss vel inst ncia para o Framework atrav s do prot tipo da ferramenta SET Scenario Evolution Tool 5 3 1 NOTA O UTILIZADA O Framework que apresentamos a seguir foi elaborado utilizando se a nota o UML Booch99 estendida por Fontoura para acomodar uma representa o que pudesse descrever o design de Frameworks Fontoura99 Os hot spots ou pontos de flexibilidade s o indicados atrav s da presen a de chaves Segundo a nota o existem tr s tipos de hot spots os m todos de varia o denotados por variable que permitem modificar a implementa o de um m todo na instancia o do Framework As classes de extens o denotadas por extensible que permitem a adi o de novos m todos a uma classe na instancia o do Framework e finalmente os hot spot de interface que permitem a modifica o dos tipos do sistema uma vez que permitem a cria o de novas classes na inst ncia do Framework O ltimo implementado atrav s de estere tipos UML do tipo Instance Class e denotado pela restri o incomplete Desta forma o autor permite flexibilidade a v rios n veis 1 e utilizando esta nota o poss vel modificar a implementa o de um m todo criar novos m todos ou at mesmo novas classes nas inst ncias do Framework Al m da classifica o acima os hot spots podem ser do tipo static ou dynamic O ltimo define hot spots que precisam de reconfigura o em tempo de execu o enquanto que st
173. nte pois facilita a manuten o da base de cen rios uma vez que reduz grandemente a redund ncia da informa o Do ponto de vista da compreens o dos cen rios esta tamb m uma boa estrat gia na medida em que reduz e seleciona os epis dios dos cen rios De modo geral os epis dios correspondentes ao procedimento isolado s o generalizados e dizem respeito atividades quase que clericais para a inicializa o do sistema Isolando estes procedimentos em um cen rio distinto os cen rios que continham estes epis dios ficar o reduzidos aos epis dios que est o diretamente ligados ao seus objetivos b sicos facilitando sua compreens o A opera o de m ltipla divis o caracterizada pelo isolamento de parte do conte do comum a v rios cen rios em um cen rios distinto e pela preserva o do restante do conte do dos cen rios originais N o necess rio que os cen rio iniciais sejam conectados atrav s de qualquer relacionamento Individualmente cada um dos cen rios deve manter o relacionamento de inclus o com o cen rio resultante Qualquer conjunto de dois ou mais cen rios que partilhem de um mesmo procedimento descrito atrav s de um ou mais epis dios pode recorrer a opera o de m ltipla divis o de modo a isolar este procedimento em um cen rio separado Deve se por m ter cuidado para que os relacionamentos que os cen rios envolvidos na opera o possu am anteriormente sejam preservados Em especial devemos verifi
174. nteriormente era testar a robustez do modelo atrav s do processo de 11 desenvolvimento de software Apresentamos o segundo estudo de caso realizado sua repercuss o sobre a taxonomia para a evolu o de cen rios na pr xima se o 4 6 ESTUDO DE CASO II Nesta se o apresentamos o segundo estudo de caso que realizamos de modo a confirmar os resultados iniciais obtidos e resumidos pela taxonomia para evolu o de cen rios O sistema escolhido para ser implementado foi proposto inicialmente como estudo de caso em um workshop de engenharia de requisitos realizado no Schloss Daghstuhl Alemanha em 1999 Dagstuhl99 Os anais derivados a partir deste encontro est o no processo de se tornar uma edi o especial do Journal of Universal Computer Science editado pela Springer Verlag O sistema proposto faz a simula o do controle da ilumina o do Departamento de Inform tica da Universidade de Kaiserslautern A completa descri o do problema pode ser encontrada em Da maneira em que foi conduzido este estudo de caso foram elaboradas um total de 8 configura es ao longo do desenvolvimento do sistema A Tabela 4 11 detalha o segundo estudo de caso realizado Sistema de controle de ilumina o Descri o Cen rios Relacionamentos Opera es entre cen rios aplicadas Primeira configura o dos cen rios da 23 base Derivada a partir do L xico Ampliado da Linguagem desta aplica o atrav s de heur sticas pr
175. nto de Inform tica PUC Rio Mar o 2000 206pp 149 Paulk93 Paulk M Weber C Garcia S Chrissis M Bush M Maturity Model Version 1 1 Software Engineering Institute Carnegie Mellon University CMU SEI 93 TR 25 ESC TR 93 178 1993 Pinheiro96 Pinheiro F Goguen J An Object Oriented Tool for Tracing Requirements IEEE Software Vol 13 No 2 1996 pp 52 64 Pohl96 Pohl K PRO ART Enabling Requirements Pre Traceability in Proceedings of the Second International Conference on Requirements Engineering ICRE IEEE Computer Society Press Colorado Springs April 14 to 18 1996 pp 76 85 Polya45 Polya G How to solve it a new aspect of mathematical method Princeton University Press Princeton NJ 1945 Potts88 Potts C and Bruns G Recording Reasons for Design Decisions in Proceedings of the 10 International Conference on Software Engineering IEEE Computer Society Press April 1988 pp 418 426 Potts94 Potts C Takahashi K Ant n A Inquiry Based Requirements Analysis IEEE Software March 1994 pp 21 32 Pressman92 Pressman R Software Engineering a Practitioner s Approach McGraw Hill 1992 Ramesh95 Ramesh B Stubbs C Edwards M Implementing Requirements Traceability a Case Study Proceedings of the Second IEEE International Symposium on Requirements Engineering RE95 IEEE Press York Engl
176. nto do conhecimento do problema Definimos a opera o de exclus o como a simples retirada de um cen rio da base Todo cen rio a rigor pode ser retirado se observados algumas restri es de integridade Devemos observar todos os relacionamentos que o cen rio a ser retirado mant m com o restante da base de modo a verificar qual o impacto desta opera o Em especial se o cen rio manter relacionamentos de preced ncia 1 e servir de pr condi o ou poss vel preced ncia para outros cen rios Se este for o caso n o devemos realizar a opera o pois a retirada do cen rio invalida o acesso a estes cen rios 4 4 2 3 2 ADI O DE NOVO CEN RIO A opera o de adi o visa a introdu o de nova informa o na base De modo geral esta opera o acontece como resultado da descoberta de novos requisitos para o sistema ou de mudan as no Universo de Discurso Notamos que ao contr rio da opera o de exclus o esta opera o aconteceu com frequ ncia durante os estudos de caso sendo rara a vers o que n o contava com pelo menos um novo cen rio Definimos a opera o de adi o como a inser o de cen rios inteiramente novos na base Definimos como novos os cen rios que n o resultam de nenhuma opera o de expans o da base como as descritas na se o 4 4 2 2 mas do aumento do conhecimento do problema Quando um cen rio inserido na base devemos verificar se este n o mant m nenhum relacionamento com outro cen r
177. o ACEITAR equivalente ALUNO DOUTORADO Especializa o Figura 4 17 Exemplo da opera o de especializa o projeto I 4 4 2 2 4 EXTENS O A opera o de extens o um caso especial da opera o de especializa o descrita na se o anterior Ao inv s de criar uma hierarquia de abstra o para os cen rios i e com um cen rio gen rico que guarda caracter sticas gerais e suas inst ncias esta opera o permite a inclus o de variantes para um cen rio atrav s da cria o de um cen rio equivalente Neste caso estendemos a funcionalidade de um cen rio atrav s da mera cria o de outro que compartilha uma grande quantidade de epis dios do original A menos da coincid ncia de componentes estes cen rio n o compartilham mais nada com o original e desta forma n o podemos assegurar a validade de nenhum dos relacionamentos existentes com o cen rio original Em outras palavras esta opera o equivale a realiza o de uma opera o de especializa o de modo desordenado Ao inv s da cria o de um cen rio mais abstrato que captura a ess ncia de um procedimento e organiza as poss veis inst ncias esta opera o permite com que se crie variantes atrav s da inser o de cen rios semelhantes apenas Do ponto de vista da redund ncia esta opera o tem as mesmas desvantagens apresentadas pela opera o de especializa o sem a organiza o da ltima Notamos por m que em cert
178. o liente j informou informa es sobre cliente Funcion rio digita dados do cliente aracter sticas do impresso impresso gr fica tabela de pre os gr fica Funcion rio entra campos com puma do impresso DO sistema retoma valor do orgamemo aprovar or amento E E liente recebe or amento 5 5 S 5 a Dn ua D o A 28 gr fica liente analisa or amento aprova o or amento cine p Pesmmono SE n o aprovado ENT O cliente pede E 5 SS ae liente decide se aprova orgamento mudar or amento modificar cliente recebeu or amento cliente liente define altera es i or amento pe informa es sobre o i Funcion rio preenche ordem de impresso servi o liente j informou Funcion rio preenche informa es aracter sticas do dicionais impresso SE E Funcion rio ativa sistema emitir ordem de servi o 10 liniciar or amento aprovado or amento cliente liente manda aprova o cancelar ordem de sais interromper EEE aprovado or amento Cliente liente cancela Ta i impress o gr fica ordem de servi o gr fica Gr fica verifica andamento da impress o nota fiscal ainda n o r fica verfica emiss o da nota fiscal moo emitida Gr fica cancela ordem de servi o emitir nota fiscal a or amento Es or amento cliente Funcion rio entra no sistema i documento 1 gr fica gr fica Funcion rio ativa m dulo impress o oo ees istema emite no
179. o planilha de emerg ncia formul rio para cart o biblioteca do 4o andar Fazer cart o de biblioteca para empr stimo de obras Tirar cart o da biblioteca usu rio biblioteca do 40 andar obra retirada com cart o devolu o de obra 16 devolver obra obra Jeitora tica biblioteca do 40 devolver obra 17 obra andar i com sistema Pergamum fora do ar devolver obra obra retirada com planilha de Cart o emerg ncia para fotoc pia biblioteca aumentar acervo professor do Dicom ISBN da obra professor DI empr stimo de biblioteca empr stimo de biblioteca funcion rio da pessoa preenche formul rio para toc pia para funcion rio da biblioteca pessoa retira obras compra de obra na Internet sistema de requisi o de compra de obra de aquisi o professor envia pedido sistema monitora status do pedido professor do DI professor solicita reserva de obra s funcion rio da biblioteca i do prof a qual est reservada usu rio ncion rio da biblioteca funcion rio da de emerg ncia usu rio leva obra s a operar usu rio usuario preenche formul rio funcion rio da biblioteca E rt o SE o cart o chegar antes da data prevista ENT O funcion rio da biblioteca avisa usu rio usu rio retira cart o da biblioteca usu rio ib
180. o a ger ncia da evolu o de cen rios oferecer suporte a rastreabilidade da informa o envolvida Domges98 Ramesh95 Definimos como rastreabilidade a capacidade de identifica o das fontes 114 de informa o que deram origem aos requisitos do software Gotel93 Estas podem ser usu rios clientes outros sistemas documenta o e quaisquer outro tipo de informa o diretamente relacionada aos requisitos A tarefa de manter a rastreabilidade bastante complexa e envolve grande esfor o por parte dos desenvolvedores At agora discutimos a evolu o de cen rios somente atrav s da perspectiva dos pr prios 1 e o processo de versionamento e o lan amento de novas configura es de cen rios Sabemos por m que o processo de desenvolvimento de software independente da metodologia que o suporte pode ser caracterizado pela elabora o de um grande volume de artefatos que descrevem seus diversos est gios Entre outros est o modelos de objetos cart es CRC gloss rios em geral modelos essenciais e modelos do tipo entidade relacionamento Cada um destes artefatos reflete o desenho que existe por tr s de cada um dos est gios do desenvolvimento do sistema A medida que o processo se desenrola novos cen rios s o gerados e estes devem refletir as decis es que est o capturadas atrav s destes artefatos De modo geral as conex es entre cen rios e outros artefatos resultantes do processo de desenvolvimento existem de m
181. o da qualidade da comunica o entre clientes e desenvolvedores atrav s da utiliza o da t cnica de cen rios A representa o para cen rios proposta independente de 23 dom nio de aplica o dos mesmos Esta assertiva justificada no fato de que a representa o para cen rios foi elaborada utilizando se blocos de constru es derivados de teorias lingu sticas 2 3 4 CASOS DE USO USE CASES O conceito de casos de uso foi introduzido por Jacobson em 1994 como se segue Casos de uso s o maneiras de utilizar o sistema O conjunto de casos de uso representam tudo que um usu rio pode fazer com o sistema Jacobson94 Os casos de uso s o descritos ao n vel de tipo enquanto o que os cen rios s o inst ncias dos primeiros A utiliza o deste enfoque prev a constru o de modelos de casos de uso que re nem agentes e classes Os cen rios somente existem quando o sistema est em opera o pois s o as inst ncias do modelo de casos de uso Venda de software comercial O vendedor checa se o produto do tipo pedido realmente existe O vendedor ent o recebe pagamento do cliente e informa o encarregado da entrega a quantidade de produtos pedido e o endere o do cliente Vendedor verifica a disponibilidade do produto Vendedor recebe pagamento do cliente Vendedor faz um pedido de entrega para o encarregado Cliente endedor Produto Ordem de entrega compra dispon
182. o do sistema Os cen rios tamb m se utilizam do l xico ampliado da linguagem escritos em linguagem natural estruturada para ancorar sua sem ntica Com a introdu o da nova vis o a j existente vis o de hipertexto sofreu algumas modifica es Esta se transformou em um servi o oferecido a todas as vis es restantes Desta forma o l xico ganhou vida pr pria se tornando tamb m uma vis o na baseline vis o do modelo do l xico Acredita se que a introdu o da vis o do modelo de cen rios na baseline trouxe grandes benef cios do ponto de vista da valida o junto a clientes e usu rios Na primeira vers o da baseline o processo de valida o era apoiado pela utiliza o de linguagem natural supostamente de mais f cil compreens o por parte de clientes por m a representa o da informa o atrav s de senten as ainda era um pouco obscura para leigos Com a introdu o dos cen rios foi poss vel manter os benef cios da utiliza o de linguagem natural e ali los a uma representa o mais palat vel Uma vez pertencentes a baseline de requisitos os cen rios tamb m s o perenes ou seja acompanham o processo de desenvolvimento de software Este um processo complexo e merece maior detalhamento 3 4 RESUMO Neste cap tulo apresentamos alguns aspectos da evolu o de sistemas de software em geral dando um tratamento especial a rastreabilidade da informa o Apresentamos um pequeno panorama de novas pr
183. o dos casos de uso capturados contenham erros e 143 portanto tenham que ser corrigidos Neste intuito fornecem linhas guias para estruturar a linguagem utilizadas na descri o dos casos de uso Os resultados do estudo conduzido apontam que a utiliza o de linguagem natural estruturada induz a um n mero menor de erros Este argumento fortalece a nota o que temos utilizado na descri o de cen rios que apesar de utilizar linguagem natural semi estruturada na descri o dos cen rios Leite97 6 3 TRABALHOS FUTUROS Neste trabalho realizamos um estudo aprofundado da evolu o de cen rios e apresentamos um Framework para a ger ncia da evolu o destes artefatos que resume nossos resultados Atualmente o Framework proposto suportado pelo prot tipo da ferramenta SET que permite sua instancia o em aplicativos para o apoio automatizado a ger ncia de cen rios A valida o do Framework foi realizada atrav s da automatiza o do segundo estudo de caso e da constru o da prot tipo da ferramenta SET Acreditamos que a realiza o de um processo de valida o junto a usu rios pode resultar em poss veis refinamentos no Framework e na pr pria ferramenta em especial no que tange aspectos de usabilidade da mesma A vers o atual do prot tipo implementa apenas alguns dos m todos instanci veis previstos pelo Framework Planejamos estender a funcionalidade do prot tipo atrav s da adi o de novos m todos que ofere
184. o processo e 125 finalmente atrav s da defini o das opera o legais que far o parte do n cleo do Framework O primeiro passo a defini o dos componentes dos cen rios importantes do ponto de vista da evolu o As opera es surtir o efeito somente sobre os componentes presentes na inst ncia do Framework Desta maneira o usu rio pode deixar de fora os componentes cujas modifica es n o considera relevantes de modo a gerar uma nova vers o dos cen rios Segundo Hicks um aspecto importante da estrutura de versionamento a decis o de quais objetos devem ser versionados Hicks98 Conradi e Westfechtel tamb m fazem uma distin o entre objetos que s o version veis daqueles que se mant m durante o desenvolvimento de software de modo a simplificar os modelos de ger ncia Conradi98 Imagine um cen rio entitulado apresentar tese por exemplo Este cen rio cont m um componente recursos que lista todos os objetos e contexto necess rios para sua realiza o tais como retro projetor disponibilidade de sala para apresenta o e microfonia adequada Imagine que a organiza o do evento decidiu disponibilizar data shows para os apresentadores Neste caso o tem data show deve ser inclu do na lista de recursos do cen rio Do ponto de vista sem ntico esta modifica o bastante importante significa que os apresentadores possuem uma escolha de equipamento que pode ser utilizado para a apresenta o de
185. o resultado do aumento da compreens o do macrosistema e suas implica es Este tipo de controle pode ser executado primeiramente atrav s de mecanismos cl ssicos de controle de vers o que fornecem um hist rico dos cen rios e um log das modifica es que estes sofreram ao longo do tempo Controle de vers o definido como o processo de coordenar e gerenciar o desenvolvimento de objetos em evolu o Hicks98 No desenvolvimento de software baseado em cen rios assim como em outras reas o processo evolutivo caracterizado por sucessivos refinamentos dos objetos envolvidos Especifica es modelos de dados e at mesmo c digo est o em constante refinamento durante todo o desenvolvimento Em v rias ocasi es de interesse manter vers es intermedi rias destes objetos seja para consulta ou para retomar pontos chave O volume destas vers es pode se tornar muito grande gerando necessidade para apoio automatizado a este processo Tichy82 No caso do desenvolvimento baseado em cen rios esta m xima verdadeira No cap tulo anterior mostramos os resultados de estudos de caso onde acompanhamos a evolu o de cen rios de v rias aplica es A partir destes resultados conclu mos que durante o desenvolvimento de um sistema cen rios sofrem grandes modifica es que podem ser traduzidas por um conjunto de opera es como evidenciado pelo modelo de evolu o de cen rios apresentado no cap tulo anterior A partir deste est
186. odo reflexivo ou seja os cen rio refletem as mudan as registradas por estes artefatos De modo a permitir o rastreamento da informa o fundamental tornar estas conex es expl citas Desta forma passamos a ter um entendimento mais amplo da evolu o do sistema 5 2 DIMENS ES DA GER NCIA DO PROCESSO EVOLU O DE CENARIOS Levando em conta a discuss o anterior sobre os requisitos para apoio a ger ncia da evolu o de cen rios adicionamos uma nova perspectiva ao nosso entendimento inicial Este levava em conta apenas a evolu o segundo os eixos de vers o e de configura o Ficou claro que devemos entender o processo de evolu o em um contexto mais amplo levando em conta outros artefatos de software produzidos paralelamente aos cen rios da aplica o Desta forma inclu mos uma terceira dimens o a ger ncia do processo a de rastreamento 115 Desta forma entendemos que o processo de evolu o de cen rios se d em tr s dimens es distintas s o elas vers o configura o e rastreamento A primeira vers o trata das mudan as que ocorreram em um cen rio em particular ao longo do tempo i e mudan as em seu conte do opera es em que suas v rias vers es estiveram envolvidas e os impactos das mesmas em outros cen rios Em resumo tratamos dos hist ricos de cada um dos cen rios Devemos levar em conta as raz es que levaram a aplica o de cada opera o e suas consequ ncias Desta forma mecanismos
187. oi 5 RE 5 o ee e a E EN12_3 EN18_3 C23 15 Eleitos T ST RSS SAE A Cursar Doutorado 203 p CRS CENA E Ai CENS a u ee SIE RI a C2 A3 SSeS RE SER ESA pa a ED ps Ei A PRE ii rt rido o Fazer Proposta de Disserta o de Mestrado pi ee Ea e Fo CEN20 3 B R30 a D a a ESSE RICE Ea sa o prientador Rm emma fo Fo pr E E Ko Cow Grs A Als o o EF oe
188. ois blocos de opera es 4 4 1 OPERA ES INTRA CEN RIO S o tr s as opera es intra cen rio inclus o modifica o e retirada de cen rio A primeira opera o diz respeito a cria o e introdu o de um novo cen rio na base De modo geral o resultado do processo de elicita o de informa o e acontece com mais frequ ncia durante as etapas iniciais do processo N o obstante novos cen rios podem surgir em qualquer fase de desenvolvimento pois lembramos que um sistema de software faz parte de um sistema maior e desta forma estar sempre sujeito a mudan as do ambiente onde est inserido A opera o de modifica o pode ser definida como um processo de refinamento da informar o codificada em um cen rio A medida em que se desenrola o desenvolvimento de um sistema aumenta a compreens o do ambiente onde este ser 63 inserido e de seus requisitos Durante este processo a informa o capturada nas fases iniciais vai sendo refinada de modo a refletir mais precisamente as necessidades do sistema Em consequ ncia o conte do dos cen rios associados sofre modifica es A observa o emp rica dos estudos de caso realizados mostrou que este realmente um processo cont nuo e permeia todas as fases de desenvolvimento Finalmente a opera o de retirada consiste na exclus o de um cen rio da base Cen rios podem ser exclu dos por v rias raz es as mais comuns s o erros no processo de captura de
189. olvimento Ghezzi91 Atrav s da introdu o gradativa da complexidade podemos gerenciar de forma mais eficaz o processo de produ o de software Jacobson94 Nesta luz os relacionamentos entre os diversos modelos tamb m chamados de artefatos tem um papel muito importante pois se torna fundamental poder mapear objetos entre as diversas representa es Esta preocupa o geral e est refletida tanto nos padr es para o desenvolvimento de software da IEEE IEEE Std830 1984 quanto do SEI Software Engineering Institute SEI CM 1990 fato que os requisitos do sistema mudam ao longo do processo de desenvolvimento Lehman80 Yeh84 Jackson95 O primeiro imp e v rias demandas sobre os desenvolvedores uma das quais que os requisitos do software tem de ser rastreados face a evolu o do sistema Ramill99 A preocupa o com aspectos relativos a rastreabilidade dos sistemas tem estado presente na literatura h bastante tempo e podem ser identificadas desde o M todo para Engenharia de Requisitos SREM proposto por Alford Alford77 Muitas ferramentas comerciais e de pesquisa dispon veis atualmente fornecem apoio a rastreabilidade Estas implementam um grande espectro de t cnicas que variam desde o uso de templates at a utiliza o de matrizes de rastreabilidade Gotel e Finkelstein apresentam um vasto estudo comparativo sobre o grau de implementa o de mecanismos de rastreabilidades no ferramental dispon vel Gotel
190. on Seguradora faz wimites imemos lano de cons rcio Administradora Administradora comunica grupo EE omunicado aos SE os participante atrav s de participantes assembl ia recusam a troca NT O dissolve se o grupo Trocar o Participante foi Rad de troca de Administradora Participante preenche solicita o odelo ganho sorteado entao dereio be troca de ve culo SE SE o novo ve culo de pre o superior ao sorteado ENT O participante paga diferen a SE novo ve culo de pre o inferior ao sorteado ENT O a diferen a serve para quitar parcelas do cons rcio Administradora Participante comunica administradora sua decis o de abandonar cons rcio articipe Se faltam membros para completar grupo ENT O este dissolvido Eliminar grupo Participante expulso Plano de cons rcio Administradora Administradora comunica aos de cons rcio participante a decis o de rupo n o aceita alor das quotas Administradora devolve valor das roca de ve culo quotas pagas aos participante que decidiram abandonar o cons rcio omunicado Administradora devolve valor igual as quotas quitadas e as pagas com anteced ncia xcedentes s o divididos entre participante que n o abandonaram cons rcio oncession ria e culo Administradora Administradora toma prenda como garantia de pagamento das quotas n o quitadas Seguro Fabricante Participante faz seguro do ve culo Prenda Participante articipante retira ve culo da concession r
191. onships in Proceedings of the Fourth International Conference on Requirements Engineering ICRE 00 pp 102 111 Breitman00 b Breitman K K Leite J C S P Scenario Based Software Process in Proc 7th IEEE International Conference and Workshop on the Engineering of Computer Based Systems ECBS 2000 IEEE Computer Society Press 2000 to appear Carroll94 Carroll J Alpert S Karat J Van Deusen M Rosson M Raison d etre capturing design history and rationale in multimedia narratives Proceedings of Human Factors in Computing Systems CHI94 ACM Press Boston USA 1994 pp 192 197 Carroll95 Carroll J M Scenario Based Design Envisioning Work and Technology in System Development John Wiley and Sons 1995 Conklin87 Conklin J Begeman L gIBIS a Hypertext Tool for Team Design Deliberation Proceedings of Hypertext 87 ACM Computer Society Press November 1987 pp 247 251 Conklin88 Conklin J Begemann M gIBIS a hypertext tool for exploratory policy discussion ACMTOOIS 1988 pp 303 331 Conradi98 Conradi R Westfechtel B Version Models for Software Configuration Management ACM Computing Surveys Vol 30 No 2 June 1998 pp 232 282 Daghstuhl99 Requirements Capture Documentation and Validation Dagstuhl Seminar Report 242 13 06 99 18 06 99 99241 Schloss Dagstuhl 1999 D mges98 Domges R Pohl K
192. opostas encontradas na literatura da rea que vem a dar conta deste problema Neste contexto introduzimos a baseline de requisitos uma estrutura paralela ao desenvolvimento de software projetada para dar suporte a evolu o dos artefatos produzidos durante este processo Entendendo que cen rios devam ser utilizados durante todas as fases do desenvolvimento de software assumimos que a informa o capturada pelos cen rios est em constante evolu o Modifica es nos cen rios tem impactos bidirecionais 42 e g uma mudan a em um cen rio de desenho vai impactar aqueles de teste e de implementa o da mesma forma que os cen rios de requisitos Desta forma a rastreabilidade da informa o contida nos cen rios se torna fundamental De modo a aprofundar nosso conhecimento sobre a evolu o de cen rios realizamos dois extensos estudos de caso que apresentaremos no pr ximo cap tulo No primeiro observamos a evolu o de 12 projetos que utilizaram a t cnica de cen rios Os resultados deste estudo de caso deram origem a uma taxonomia para a evolu o de cen rios que foi testada e refinada atrav s de um segundo estudo de caso A experi ncia adquirida atrav s da realiza o de ambos estudos de caso est resumida e representada atrav s de um modelo para evolu o de cen rios que ser apresentado ao final do cap tulo 43 Cap tulo 4 Modelo de Evolu o de Cen rios 4 1 INTRODU O Neste cap tulo
193. or d aula em sala de aula Disciplina Disciplina FS O O ee TER a ee o Professor deseja rofessor comunica DI abandonar rea de Pesquisa DI altera entrada do professor no sistema Aluno deseja trocar seu orientador Professor m altera entrada do aluno e dos professores no sistema Profess Aluno apresentando Professor chamado para participar da banca seu trabalho a banca examinadora examinadora rofessor assiste apresenta o rofessor avalia apresenta o fal rofessor d banca examinadora sua opini o Orientador Aluno apresentando Orientador toma ci ncia da apresenta o seu trabalho a banca examinadora Banca Orientador assiste apresenta o Examinadora Orientador d banca examinadora sua opini o 44 3 Procurar andidato 2 Candidato a Mestrado Candidato a Mestrado Doutorado procura professor para Orientador Mestrado Doutorado ser seu orientador Doutorado conhecendo o Professor e propondo orienta o durante o curso de mestrado Cen rios Codificados Oferecer nova disciplina Abrir Per odo Edo o BS co pre el Po a B fk CS FF EE EE te 2 A po Cancelar Disciplina mm ar ps AE Aa MR EEN SS ES SS SS ASAE R SA n l ee eS SF EE s CR Coneluir diseiplina SS fro Sg Ro o fio ed 3 E k es CNS e CEN 3 oe E DD fes a te Ih E R 116 Coo O E 7 o a SS EEE ee eS Cursar disciplina sendo Aluno Excepcion ss
194. ored in Figura 4 29 Exemplo de um cen rio e sua rastreabilidade em rela o a outros artefatos Repare que este cen rio est ligado ao artefato CRC cards em particular aos cart es control panel user e room Mostramos estes cart es na Figura 4 30 a seguir O epis dio 2 do cen rio enviar ltimo valor correto para o c modo no caso de problemas com o sensor est coberto pelo cart o room A colabora o entre os cart es control panel e user respons vel pelo epis dio e os dois ltimos epis dios s o cobertos pelo par de cart es user e room 94 User Defines chosen light scene room Enters or leaves room or hallway section control panel set the value T1 of room hallway section set the default light scene of room motion detector set each ceiling light group of room outdoor light sensor Room keep the outdoor light sensor measurements facility manager store value T1 user IF room is reoccupied wihtin T1 minutes control panel THEN activate last chosen light scene IF room is reoccupied after T1 minutes THEN activate default light scene store chosen light scene store moment when person left the room Control Panel IF user input is not reasonable THEN system user issues a warning facility manager Figura 4 30 Cart es CRC diretamente relacionados a vers o 3 do cen rio 11 Note na Figura 4 29 que alguns dos termos que fazem parte do conte do do cen rio est
195. os O Framework proposto neste trabalho permite incorporar ponteiros para outros documentos de software facilitando o rastreamento da informa o entre os artefatos da baseline de requisitos Apesar de n o tipar os relacionamentos entre os artefatos permite que o usu rio indique os componentes dos mesmos que possuem maior liga o com o cen rio em quest o atrav s de um campo de coment rios 142 Em termos de ferramental para apoio ao desenvolvimento de software baseado em cen rios temos a ferramenta l Ecritoire que captura requisitos do sistema utilizando um misto de cen rios e objetivos Rolland99 Para ser utilizada durante a fase de requisitos esta ferramenta faz o mapeamento bidirecional entre o conjunto de cen rios e o modelo de objetivos por m a rastreabilidade com outros artefatos de software n o tratada O ambiente CREWS EVE trata de aplica es onde cen rios do tipo textual n o s o suficientes para a captura dos requisitos Haumer99 Desta forma o ambiente utiliza o que chama de cen rios multim dia onde as situa es do mundo real s o capturadas atrav s da utiliza o de v deo e anima o Esta ferramenta tamb m foi concebida para ser utilizada durante a fase de requisitos do sistema apenas ao contr rio da ferramenta SET proposta que fornece apoio a utiliza o de cen rios durante todas as fases do desenvolvimento de software Sutcliffe et al prop em a ferramenta CREWS SAVRE que automatiza a utiliz
196. os 1 1 el6 1 A opera o de n mero III por sua vez funde os cen rios complementares 17 1 e 3 1 e o subcen rio 10 1 do ltimo Segundo a se o 4 4 2 1 1 o objetivo da opera o unir cen rios que apresentam procedimentos logicamente conectados Este o caso pois estamos unindo cen rios que tratam da ocorr ncia de um defeito constata o do mesmo e da necessidade de advertir o respons vel do ocorrido cen rios 17 1 3 1 e 10 1 respectivamente O caso da opera o VIII similar pois estamos fundindo dois cen rios que apresentam situa es complementares diminuir e aumentar a quantidade de luz em um c modo Estes cen rios ser o reunidos sob um novo cen rio que se chamar variar intensidade da luz em um c modo na configura o Specll Na 85 Figura 4 23 mostramos os relacionamentos existentes entre os cen rios da configura o Specll resultantes da evolu o da configura o Specl que estamos estudando Release Spec ll 1 2 malfunction occurs 2 2 outdoor sensor out of order 3 2 motion detector out of order 4 1 turn on lights manually in a room 5 1 turn on lights manually in a hallway section 6 1 use the control panel 11 2 12 13 2 14 24 25 26 27 28 29 2 2 4 1 1 1 1 1 1 1 user occupies room user occupies hallway section user leaves room user leaves hallway section turn on manually light on a room turn off manually light in a hallway s
197. os casos esta opera o foi utilizada com sucesso para explicitar exce es Neste caso n o estamos tratando de uma s rie de inst ncias aleatoriamente criadas e sim de casos nicos onde n o existe sentido na cria o de um procedimento gen rico Este o caso que tratamos no exemplo ilustrado pela figura 4 18 O cen rio fazer disciplina j o mais gen rico poss vel n o h sentido em criar uma inst ncia fazer disciplina como aluno excepcional j que este procedimento raro e constitui uma exce o 74 Caracterizamos a opera o de extens o pela cria o de um cen rio que estende a funcionalidade de outro existente Este cen rio est conectado ao cen rio original atrav s de um relacionamento de equival ncia e nada se pode afirmar em rela o aos relacionamentos do cen rio original em rela o ao novo Desta forma devemos verificar se algum destes s o v lidos para o cen rio estendido Em particular devemos verificar os relacionamentos de poss vel preced ncia e de pr condi o em raz o da quest o temporal que estes relacionamentos incorporam Qualquer cen rio pode ter sua funcionalidade estendida Na Figura 4 18 mostramos um exemplo da opera o de especializa o do projeto I Sistema de ger ncia acad mica Vers o n Opera o Vers o n 1 FAZER equivalente DISCIPLINA como ALUNO FAZER EXCEPCIONAL DISCIPLINA FAZER DISCIPLINA Extens o Figura 4 18
198. os que apresentam o relacionamento de inclus o projeto IV Na Tabela 4 8 a seguir resumimos as heur sticas para a detec o do relacionamento de Inclus o entre dois ou mais cen rios Inclus o Pelo menos um epis dio compartilhado por todos os cen rios envolvidos Tabela 4 8 Heur sticas para a detec o do relacionamento de Inclus o 4 3 8 RELACIONAMENTO DE POSS VEL PRECED NCIA Definimos o relacionamento de poss vel preced ncia quando a partir de um caso excepcional se estabelece uma situa o onde necess rio fixar a ordem em que os cen rios envolvidos devem seguir A id ia por tr s do relacionamento de que existe a possibilidade de uma situa o excepcional que pode nunca vir a ocorrer por m se acontecer devemos tomar o cuidado de que aconte a em um tempo previsto Na realidade este um caso especial do relacionamento de Pr condi o O ltimo define a necessidade incondicional da ocorr ncia de um ou mais cen rios a priori da realiza o do cen rio em quest o No caso do relacionamento de poss vel preced ncia os cen rios anteriores n o necessariamente devem ocorrer Na verdade somente vir o a ocorrer no caso de uma exce o no cen rio original Este relacionamento estabelece quais s o os cen rios que dever o ser realizados neste caso e o momento em que estes devem ocorrer Este relacionamento tamb m se distingue do relacionamento de Detour porque n o necessariamente remete o a
199. que persistente durante todo o tempo de desenvolvimento do sistema levando em conta a fase de manuten o Desta forma ela d conta da rastreabilidade tanto pr ER quanto p s ER dos requisitos O modelo de evolu o de cen rios que apresentaremos no cap tulo seguinte repousa sobre esta baseline portanto dedicaremos a pr xima se o ao detalhamento da mesma 3 3 BASELINE DE REQUISITOS De modo a tratar a quest o do rastreamento de requisitos Leite e Oliveira prop em uma baseline centrada no pr prio cliente Leite95 Esta estrutura incorpora senten as em linguagem natural sobre o sistema desejado As senten as s o escritas segundo um padr o pr definido pelos autores e devem ser redigidas por engenheiros de software 37 A id ia b sica suportando a baseline que a mesma perene i e criada durante o est gio de requisitos e evolui conjuntamente com o sistema importante notar por m que a baseline ortogonal ao processo de desenvolvimento desta forma complemetamente independente do modelo escolhido para orientar o desenvolvimento em si Ilustramos a baseline de requisitos na Figura 3 2 a seguir A baseline dirigida aos requisitos externos definidos como os requisitos impostos pelo macrosistema do qual o software ser apenas uma parte Requisitos externos podem ser comparados aos requisitos reais propostos por McMenamin e Palmer na An lise Essencial de Sistemas McMenamin84 Durante a
200. ra o escolhida e g em uma opera o de divis o escolhe o nome para os novos cen rios realiza a divis o do conte do do cen rio original e redige a informa o que deseja acrescentar no caso de uma opera o de modifica o ele 137 retifica o conte do do cen rio em quest o no caso de uma opera o de encapsulamento escolhe os componentes dos cen rios envolvidos que far o parte do cen rio resultante Estas modifica es ser o realizadas atrav s de p ginas contendo formul rios HTML a menos da opera o de exclus o onde o usu rio somente tem que confirmar sua realiza o e redigir o rationale se for o caso Uma vez instanciada e povoada com no m nimo um cen rio a ferramenta oferece apoio a evolu o de cen rios segundo o modelo prescrito pelo Framework Permite a aplica o de opera es sobre os cen rios cadastrados consultas a base e visualiza o do processo evolutivo segundo tr s dimens es vers es releases e rastreabilidade como descrito na se o 5 2 1 deste trabalho Na Figura 5 15 a e b mostramos um exemplo onde o usu rio pode selecionar um release espec fico e verificar todas as opera es que foram realizadas sobre os cen rios pertencentes ao primeiro 138 9 Scones berks E rampi Homel nies pkan D y do Femme Eus El ee D Oe eo oY RS roa ee Hom omg Fires temp o Dersi Pisans iig Fad kinh Hip o ira gee rege rajen ide Leia Dt iim i Creed do P Cee Lei p e a is
201. ransi o para a configura o Specll respons vel pela redu o da redund ncia corre o e reorganiza o da informa o contida nestes cen rios 81 Nesta sub se o evitaremos mostrar o conte do dos cen rios envolvidos pois o objetivo mostrar um apanhado geral do processo Neste caso o excesso de detalhes prejudicaria o entendimento global deste exemplo No entanto disponibilizamos os 1 cen rios na ntegra para consulta no site do exemplo do sistema de Ilumina o Ae ease Figura 4 20 Opera es aplicadas sobre a configura o Specl Na figura acima os cen rios pertencentes a configura o SpecH ilustrados com fundo branco representam aqueles que n o sofreram modifica es entre ambas configura es Como mencionado anteriormente os cen rios n o tem de ser necessariamente modificados entre uma configura o e outra podendo permanecer constantes Desta forma uma mesma vers o de um cen rio pode pertencer a mais de uma configura o Este o caso dos cen rios 4 1 5 1 6 1 12 1 141 e 15 18 que pertencem tanto a configura o Specl quanto a Specll Das nove opera es ilustradas na Figura 4 20 duas s o do tipo intra cen rio e as sete restantes do tipo inter cen rios A Tabela 4 12 a seguir faz um resumo das opera es 8 Dispon vel em http stones les inf puc rio br Karin exemplo index html 2 A lista com os t tulos dos cen rios numerados est dispon vel como parte da
202. raz es que ditaram a realiza o de uma opera o e g uni o de dois cen rios talvez fosse poss vel determinar padr es de modo a automatizar parte do processo Outra vantagem da captura do rationale de decis es fornecer apoio a manuten o do sistema Acredita se que v rios problemas inseridos em de um c digo que sofreu manuten o s o resultado direto de mudan as nos requisitos do sistema realizadas inadvertidamente poss vel que em presen a documenta o de melhor qualidade este problema seja minimizado Em uma avalia o emp rica de documenta o de design rationale Karsenty concluiu que esta bastante til e que designers a utilizam extensivamente para auxiliar sua compreens o do problema Karsenty96 Na se o 3 2 deste trabalho apresentamos uma s rie de propostas para a captura de rationale Apresentamos desde t cnicas baseadas na utiliza o de hipertexto Kaidl93 Wood94 at propostas que se baseiam na utiliza o de objetivos Potts94 passando por propostas com estruturas espec ficas para a captura e registro das informa es Carroll95 Conklin88 Gotel95 Apesar de n o ter sido encontrada nenhuma refer ncia espec fica ao emprego destas proposta para a captura de design rationale no contexto da utiliza o de cen rios acreditamos que n o ter amos dificuldades na adapta o das mesmas aos nossos prop sitos 5 1 3 RASTREAMENTO Finalmente o ltimo requisito para uma ferramenta de apoi
203. riginal N o sabemos qual seria o resultado se houvesse a necessidade de aumentar este n mero Possivelmente ter amos que recorrer a cria o de novos cen rios pois o original ficaria demasiado grande para abarcar todas as possibilidades A opera o de encapsulamento caracterizada pela generaliza o de dois ou mais cen rios em um cen rio que capaz de lidar com variantes do processo inicial O cen rio resultante herda alguns dos relacionamentos que o cen rio inicial possu a A rigor qualquer cen rio pode estar envolvido em uma opera o de encapsulamento Na Figura 4 14 mostramos um exemplo da opera o de consolida o do projeto VII Sistema de Ger ncia acad mica Note que o cen rio original tratava da inscri o de alunos de doutorado e foi generalizado de modo a tratar da inscri o de modo geral Na se o anterior mostramos um exemplo onde haviam dois cen rios equivalentes na 68 base que foram encapsulados em um nico Neste exemplo apenas contamos com o cen rio inscrever se em disciplina de doutorado na base a contrapartida para alunos de mestrado ou gradua o n o existe nesta vers o do estudo de caso Os autores ao inv s de criar outros cen rios equivalentes optaram por consolidar todos os procedimentos diretamente a partir do cen rio existente Na realidade a id ia atr s das duas opera es a mesma varia es se devem a pr pria configura o da base de cen rios 1 e exist ncia
204. rio terminologia jarg o representa es e abstra es enquanto que pessoas com diferentes backgrounds se utilizam de nota es mais informais informal Dificuldade de COMUNICA O formal interdisciplinaridade Mesma reas rea diferentes Figura 2 5 Dificuldade de comunica o entre comunidades distintas apontada em Zorman95 O processo de desenvolvimento de software inerentemente envolve pessoas de v rias reas diferentes e com os mais diversificados backgrounds De modo a dar conta da dificuldade de comunica o entre os indiv duos envolvidos na elabora o do software Zorman prop e a utiliza o de uma estrat gia para a visualiza o envisaging dos requisitos do sistema Este processo que conta com o aux lio de cen rios consiste na transforma o de no es informais do que se deseja de um sistema em uma descri o mais precisa do mesmo traduzida pelo documento de especifica o Cen rios neste enfoque s o definidos como descri es parciais do sistema e do comportamento do macrosistema A autora apresenta uma ferramenta para a captura e representa o de cen rios REBUS que se assemelha a representa o utilizada por storyboards Cada cen rio composto de um nome categoria descri o e uma representa o gr fica Com o aux lio da ferramenta poss vel representar elementos tais como objetos e espa os Segundo Zorman a maior contribui o de seu trabalho reside no aument
205. rk para o apoio a ger ncia da evolu o de cen rios Uma implementa o para o Framework ser apresentada atrav s do prot tipo da ferramenta SET Scenario Evolution Tool que introduziremos ao final deste cap tulo O restante deste cap tulo est dividido como segue Apresentamos uma breve discuss o dos requisitos para o suporte a evolu o de cen rios Logo depois introduzimos o Framework para a evolu o de cen rios Nesta se o detalhamos os componentes do Framework e a estrat gia para sua configura o A seguir apresentamos a ferramenta SET que oferece apoio automatizado ao Framework Neste cap tulo tamb m utilizaremos o exemplo do sistema para a simula o do controle da ilumina o do Departamento de Inform tica da Universidade de Kaiserslautern para ilustrar tanto o processo de instancia o do Framework quanto a aplica o da ferramenta SET 5 1 REQUISITOS PARA O SUPORTE AUTOMATIZADO A EVOLU O DE CEN RIOS O desenvolvimento de um sistema implica na compreens o do macrosistema em que este ser futuramente inserido Para tal necess rio modelar uma s rie de aspectos que levem em conta os atores entidades e a es envolvidas O macrosistema como um todo n o uma entidade est tica se modifica ao longo do desenvolvimento A documenta o do sistema deve ser capaz de refletir estas mudan as Em cap tulos 104 anteriores discutimos aspectos evolutivos dos cen rios de uma aplica o V r
206. rova o dos crit rios de andidato a Doutorado laceita o Aluno Aluno presente ao DAR Aluno adquire formul rio no DAR dentro do prazo de ancelamento com formul rio preenchido ra moreno or Aumoentrega formut rio iar aceita pedido dentro do prazo Fano tem dados atualizados no Di 2 2 Candidatar se a S a 2 ato lt a ato lt rocurar Orientador do pa s ou exterior posse de documenta o ma carta de aceita o Fazer Proposta de Trabalho Estudo lo ou em para Doutorado ias de obt lo EE ee Do Pertregar Documenta o 3 2 Concluir disciplina rmino do Aluno Aluno devidamente Professor lan a nota do aluno per odo atriculado na disciplina Do Professor Aluno aprovado ou reprovado es Concluir disciplina Concluir Doutorado 26 2 Concluir Doutorado Aluno apresenta Aluno A ro ar Tora de doutorado Aluno completa disciplinas requisitos para oncluiu 24 cr ditos obrigat rias W Aluno tem lista de disciplinas ee atualizada Aluno tem CR atualizado Aluno completa disciplinas obrigat rias oncluiu disciplinas Aluno tem sua disserta o aprovada Loto mo obrigat rias 2 Cursar disciplina Durante o Aluno Aluno devidamente Aluno vai s aulas per odo matriculado na disciplina em sala da aula Professor Aluno estuda mat ria pi hor rio Disciplina Professor aplica testes determinado Aluno excepcional apresentando condi es de aceita o para cursar excepcional aceito assist
207. s e inter configura o sob a forma de opera es 4 3 RELACIONAMENTOS Cen rios descrevem situa es em contextos do mundo real Apesar de serem auto contidos por defini o no sentido de descrever uma s rie de epis dios que tem por meta atingir um objetivo n o razo vel pensar em cen rios como entidades independentes Zorman95 Cen rios est o conectados a outros cen rios em uma rede complexa e intricada de relacionamentos Devemos pensar em um cen rio como um n de um hipertexto at mico no que se refere a informa o que cont m e est relacionados a outros cen rios atrav s de elos Estes elos podem ser de v rios tipos e g podem representar preced ncia equival ncia e at mesmo comportamento excepcional Os elos conectam por es de informa o relacionada Devemos enfatizar que os relacionamentos s tem sentido ao n vel de inst ncia pois s podem ser determinados a partir do conhecimento do conte do de cada cen rio Em trabalhos anteriores percebemos que existia uma liga o entre a exist ncia de determinado relacionamento e a incid ncia de alguns dos componentes dos cen rios Breitman98 Esta constata o foi reafirmada durante a realiza o do estudos de caso e pelos resultados de Alspaugh e outros baseado em nossos resultados iniciais Alspaugh99 A seguir detalhamos cada um dos relacionamentos e apresentamos heur sticas para sua detec o baseadas nos componentes dos cen rios envolvi
208. s coment rios sobre a elabora o de uma estrat gia de ger ncia da configura o de cen rios que deve levar em conta estes aspectos Podemos caracterizar a opera o de especializa o pela instancia o de um cen rio que cont m um curso de a o gen rico em novos cen rios ao passo em que o cen rio original mantido Os novos cen rios ser o conectados entre si atrav s de relacionamentos de equival ncia resultado da grande coincid ncia de componentes que deve existir entre os mesmos Da mesma forma o cen rio original dever se conectar com as inst ncias atrav s do relacionamento de conten o uma vez que cada inst ncia representa obrigatoriamente parte do cen rio pai Qualquer cen rio pode sofrer a opera o de especializa o desde de que mantenha as restri es relatadas acima Todos os relacionamentos que o cen rio original possu a continuam a existir e s o herdados pelas inst ncias Na Figura 4 17 mostramos um exemplo da opera o de especializa o do projeto I Sistema de ger ncia acad mica Neste exemplo o procedimento de aceitar aluno foi especializado em aceitar aluno de doutorado e de mestrado Note que o cen rio original mant m o relacionamento de conten o com os dois novos cen rio ao passo em que os ltimos mant m o relacionamento de equival ncia 73 Vers o n Opera o Vers o n 1 ACEITAR ALUNO ACEITAR ACEITAR ALUNO ALUNO MESTRADO conten
209. s da j andar identidade gradua o gradua o do DI i E E final do expediente formul rio de funcion rio da aluno preenche formul rio para fotoc pia E fotoc pia biblioteca uno fornece carteira de identidade para ncion rio da biblioteca i uno retira obras pr ximo empr stimo de 10 retirar obra biblioteca do 40 carteirade usu rio usu rio apresenta obras desejadas ao obras na reserv i andar identidade ncion rio da biblioteca u rio preenche formul rio para fotoc pia usu rio fornece carteira de identidade para funcion rio da biblioteca uno retira obras final do expediente formul rio funcion rio da i para fotoc pia biblioteca bra tem de ser evolvida at 10hs do pr ximo empr stimo de 11 retirar obra biblioteca do 40 carteira de pessoa pessoa apresenta obras desejadas ao obra para i andar identidade i funcion rio da biblioteca fotoc pia inal do expediente requisitar compra 2 de obra para a biblioteca senha de acesso ao sistema de requisi o de obra colocar obrana 13 manter obra professor do DI comunicado reserva dispon vel E verbal i durante semestre letivo i E inicio do semestre Jetivo H H crach de identifica o biblioteca do 40 retirar obra com 14 E andar sistema sistema Pergamum fora do ar retirar obra usu rio em posse de crach de identifica
210. s da base e os artefatos relacionados ao mesmo Como mostramos na se o 4 6 3 deste trabalho os cen rios est o relacionados a uma s rie de outros objetos produzidos durante o desenvolvimento de software Entradas do l xico ampliado da linguagem o documento de especifica o de requisitos e modelos de objeto s o apenas alguns exemplos Desta forma cada vis o da base de dados seria um corte longitudinal que englobaria um subconjunto destes elementos Um exemplo seria verificar todas as vers es que um nico cen rio sofreu durante sua vida til Na Figura 5 1 a seguir ilustramos um exemplo de um corte deste tipo Este exemplo faz parte do segundo estudo de caso conduzido e foi implementado utilizando se a ferramenta SET que ser apresentada no final deste cap tulo Note que al m da listagem de todas as vers es que o cen rio malfunction occurs sofreu ao longo de sua vida til a ferramenta tamb m disponibiliza a informa o relativa a configura o em que cada uma das vers es apareceu pela primeira vez mais uma vez lembrando que uma vers o pode aparecer em mais de uma configura o 106 homes les ini E sindesemplosirdes bimi Micaoaott intesmet Explorer pam Ediw Emba Favoules Fanananies Apija A to UK this site malfunction occurs Tal be fie vei qo me r E B 4 al Emke E hipi des ied poco brar enpa inde hini Select the version of the scenario you wan E malfunction mocurs Vers appear
211. s de cen rios A cria o de novas vers es implica em que uma grande quantidade de informa es tem de ser manipulada criando a demanda para um processo que seja capaz de gerenciar a evolu o de cen rios Na realidade a evolu o de cen rios um processo muito complexo que vai al m da cria o de novas vers es como tentamos mostrar na Figura 1 1 Nesta Figura ilustramos uma s rie de cinco diferentes configura es de cen rios e enfatizamos duas opera es indicadas pelas setas Definimos como configura o o conjunto composto das ltimas vers es dos cen rios da base tomados em um um momento espec fico Na primeira opera o ilustrada a esquerda da figura mostramos que os cen rios C2 C3 e C4 todos em sua primeira vers o indicado pelo ndice V1 e que fazem parte da Configura o I foram unidos em um nico cen rio o novo cen rio C5 que aparece em sua primeira vers o na Configura o II Na segunda opera o representada pelo conjunto de setas a direita temos o caso oposto o cen rio C5 em sua terceira vers o indicada pelo ndice V3 na Configura o IV se desmembra em dois cen rios na pr xima configura o o cen rio C5 na vers o V4 e o novo cen rio C6 em sua primeira vers o V1 Note que na primeira das opera es todos os cen rios iniciais foram eliminados dando espa o ao surgimento de um novo enquanto que na segunda opera o al m do aparecimento do novo cen rio o cen rio original ta
212. s do cliente liente n o mais efetua pedido de or amento Funcion rio verifica cadastro _ gr fica funcion rio Funcion rio digita dados do cliente Pas lente s o alterados o i ancionatrio verifica cadastro Funcion rio altera informa es no adastro cliente SE cliente n o cadastrado ENT O Funcion rio cadastra cliente gr fica informa es sobre uncion rio SE dados do cliente alterados ENT O impresso Funcion rio altera dados liente j informou or amento gr fica liente pede or amento aracter sticas do impresso Doo fordemdeservigo rlienteaprovaor amento nota fiscal SE eens aprovado ENT O liente cancela D S seal Calcular or amento 5 S cliente cadastrado cliente liente contrata Ro onfeccionar impresso de impresso liente informa es sobre uncion rio Funcion rio ativa sistema impresso liente j informou gr fica Funcion rio digita dados do cliente aracter sticas do impresso Dio o O Fncion rio calcula or amemento i Operacional Sistema operante Dados da opera ao Funcion rio Funcion rio inicializa sistema elecionar fun o zar sistema siste uncion rio seleciona op o de sistema de controle da gr fica Dol To Percion ricentrasenha _ DT FFancion trio seleciona op o f rt te Sistema disponibiliza fun o alcular or amento a j pediu formul rio de servi o funcion rio Funcion rio ativa sistema or amento or ament
213. s existentes entre os cen rios de cada configura o est o intimamente ligados ao processo de evolu o dos ltimos e portanto n o podem estar dissociados Resumimos estes resultados no modelo de evolu o de cen rios que apresentaremos na pr xima se o 4 7 MODELO DE EVOLU O DE CEN RIOS Na se o anterior tentamos mostrar a partir de um segundo estudo de caso a complexidade do processo evolutivo de cen rios Nossa proposta como ficou claro de que cen rios devem ser utilizados no apoio a todas as fases do desenvolvimento de software De modo a apoiar a utiliza o de cen rios neste enfoque foi necess rio compreender a fundo como se d o processo evolutivo dos mesmos A partir das observa es resultantes do segundo estudo de caso apresentado na se o anterior fomos capazes de n o s refinar a taxonomia para evolu o de cen rios mas tamb m incorporar ao informa es que auxiliem na compreens o da mec nica do processo evolutivo como um todo 98 Apresentamos nossos resultados sob a forma de um modelo de evolu o de cen rios na Figura 4 33 Note que o modelo dividido em tr s parti es processo produto e inst ncia Ao n vel de processo est o as opera es que ir o transformar a base de cen rios No n vel de produto encontramos os esquemas para a representa o de conhecimento dos cen rios como por exemplo as nota es propostas por Sutcliffe95 Rosson95 Jacobson92 Potts94 Lei
214. s it P inalhincion cocirs VE mallunction cocurs Version 3 EEL E malMuncion mecurs Were appears im release Img inalhincion crcirs ME i nena Figura 5 1 Todas as vers es para o cen rio malfunction occurs Uma outra possibilidade de visualiza o realizar a investiga o da rastreabilidade da informa o de um cen rios em particular Uma vez escolhido o cen rio e a vers o que se deseja investigar podemos observar as conex es que este mant m com outros artefatos de software Tipicamente teremos elos com entradas para o l xico ampliado da linguagem e dependendo da fase de desenvolvimento em que o cen rios foi criado elos para artefatos correspondentes ao est gio Mostramos um exemplo deste tipo de corte na base de cen rios na Figura 5 2 a seguir Esta figura mostra a vers o 4 do cen rio malfunction occurs e sua liga o com o modelo de objetos do sistema Note que a ferramenta SET disponibiliza informa es relativas a cria o da vers o do cen rio e um pequeno detalhamento acerca dos elementos do modelo de objetos em que o cen rio teria maior liga o A rastreabilidade com termos do l xico 107 ei PAlniciar FB MusicMatchJubebor HF Microsolt Word tee 7 Mas hap fstones les ind wf ey AB 17 00 implementada diretamente atrav s de elos de hipertexto que s o representados por termos sublinhados no conte do do cen rio hip eee les inl pune hee aie TTL Khel
215. s para disciplinas sendo iniciar o processo do disponibilizados per odo Professor Alunos n mero suficiente de ee o Admitir Professor 28 3 Admitir Novo professor que DI Identifica o Candidato a professor se apresenta ao DI Professor pode ser ex aluno desejando se integrar ao quadro de professores do DI andidato a le hist rico do Candidato a professor entrega documentos ao DI candidato Candidato a professor comunica Linha de Pesquisa Administrar Base de dados para Administra o de Alunos N e w 6_3 Administrar Disciplinas Base de dados para Administra o de Disciplinas Base de dados para artamento de Inform tica admite Professor Professores Administra o de Departamento de Inform tica autoriza pedido de mudan a Professores de rea de pesquisa DI demite Professor DI obt m dados do Professor documenta o DI aceita candidato a mestrado ou candidato a doutorado andidatos de Atice completa do Mestrado Douto candidato ado a curso de Mestrado Douto aprova o dos crit rios de aceita o 31 3 Cancelar Aluno presente ao Aluno adquire formul rio no DAR Disciplina DAR dentro do prazo de cancelamento com formul rio Aluno preenche formul rio Aluno entrega formul rio DAR aceita pedido dentro do prazo o Aun tem dados atualizados no D Candidatar se a 32 3 Candidatar se a Qualquer lugar do pa s Candidato Candidato a Procurar Orientador urso do DI curso do DI ou e
216. s use cases Booch99 No nosso caso a nota o utilizada n o possibilita esta diferencia o e conjeturamos que talvez esta constru o seja uma maneira encontrada pelos usu rios de dar conta desta dificuldade Como resultado da aplica o da opera o de especializa o temos no mesmo plano o cen rio gen rico original e suas inst ncias Acreditamos que esta opera o tende a facilitar a compreens o pois re ne uma vis o geral ao mesmo tempo em que apresenta 72 detalhamento sobre poss veis varia es Se por um lado esta opera o facilita a entendimento ela tamb m aumenta a redund ncia na base uma vez que as inst ncias tem muitos componentes semelhantes Da mesma forma encontramos algum grau de semelhan a ainda que menor do que no caso anterior entre o cen rio original e suas inst ncias Sob este ponto de vista a manuten o fica bastante prejudicada Novamente lembramos que estas observa es s o fruto de resultados de estudos de caso realizados por terceiros Nosso papel durante a elabora o deste levantamento foi passivo e n o nos cabe tecer hip teses sobre as escolhas de cada um dos autores dos estudos de caso Notamos por m que a escolha das opera es n o trivial e os impactos na base tanto do ponto de vista de manuten o quanto da compreens o por parte dos clientes tem de ser cuidadosamente levados em conta Nosso objetivo transpor estas observa es para o pr ximo cap tulo onde teceremo
217. se ancela d vida com SE a diferen a inferior ao valor de uma quota ENT O diminui se o valor da pr xima quota is o Q Q e Q 2 Q o wn D e N Ira revoga pedido de Substituir participante 10 roca de participante Existe vaga no grupo Vaga no grupo articipe Administradora designa novo participante para grupo Pedido de ades o Administradora comunica a substitui o ao participante Se paga ao participante que saiu o valor correspondente jmenos as multas de atrasos SE as decide continuar com ons rcio ENT O mant m Administradora Administradora roca do ve culo que onsta no seu pedido Disponibilidade do ve culo Fabricante Lista dos Administradora Escriv o abre a ata participante Outorga se ve culo por licita o entrega corre a partir da aceita o Deve ser notificado Bolillero Escriv o Outorga se ve culo por sorteio aos participante atrav s de publica o Escriv o registra resultado na ata Se comunica resultados atrav s de di rio de circula o nacional Se envia comunicado para participante sorteado licitado 4 Estabelecer bem a Escriv o j abriu ata Lista de Administradora Escriv o verifica se bolillero participante participante est em ordem Bolillero Escriv o Se faz extra o da bolillas para determinar a sequ ncia de prioridade de grupos para outorga o de bens 5 Estabelecer bem a Escriv o j abriu ata Oferta de Adminis
218. seus trabalhos Do ponto de vista da ger ncia da configura o do cen rios todavia esta modifica o pouco significativa e n o justifica a cria o de uma nova vers o para o cen rio Neste caso dever amos simplesmente adicionar o tem a lista de recursos e armazenar o cen rio na baseline Nenhuma nova vers o teria de ser criada nem o usu rio teria de perder tempo com burocracia a respeito do rationale e detalhes da modifica o Devemos lembrar que um dos aspectos mais importantes para a realiza o de um processo de ger ncia de configura o eficaz evitar sobrecarregar usu rios com demandas desnecess rias Vale a pena ressaltar que a estrat gia configurada pelo usu rio age a n vel de processo Os cen rios s o mantidos na ntegra a n vel de produto pela base de dados O fato de um componente estar ausente ao n vel processual significa apenas que modifica es no artefato ser o absorvidas apenas a n vel f sico i e os cen rios da 126 baseline v o refletir esta modifica o por m o usu rio n o perceber nenhum registro da opera o nem ser requisitado para descrever justificava para a mesma Este fato corresponde a distin o que Hicks faz entre os servi os de controle de vers o oferecidos ao usu rio e as opera es intr nsecas de controle de vers o Hicks98 Em v rios sistemas que realizam ger ncia da configura o existe uma correspond ncia direta entre conceitos e sua representa o f
219. sobre as opera es em si mas tamb m sobre sua aplica o e resultado Seus atributos s o date type responsible release e id uma classe fixa e os m todos que implementa s o selectOperation e o m todo de varia o captureRationale O ltimo permite que o usu rio mude sua implementa o durante o processo de instancia o Este fato fica bvio uma vez que levamos em conta os v rios m todos para a captura de rationale dispon veis na classe Rationale 123 5 3 2 7 RATIONALE Esta classe que somente possui o atributo author respons vel pelo preenchimento do rationale uma classe do tipo extens o 1 e al m dos m todos dispon veis para a captura de rationale permite que durante sua instancia o o usu rio crie um novo m todo As propostas para a captura de rationale implementadas pelos m todos desta classe est o descritos em detalhe na se o 5 1 deste cap tulo Os m todos s o plain Text Potts Bruns contribution structure gIBIS Raisond Etre e inquiry cycle O primeiro n o implementa nenhum m todo espec fico por m permite que o usu rio entre suas rationale livremente 5 3 2 8 HISTORY Esta classe fixa serve de reposit rio para os dados que v o permitir a elabora o do hist rico de cada um dos cen rio da base Cont m apenas um atributo log respons vel pela captura da data hora e dia da cria o de novas vers es e o m todo collectData que mostra a evolu o de
220. st mostrado na tela a direita da Figura 5 13 Note que ela possui uma s rie de elos que se acionados ser o tratados por uma terceira p gina ASP Estes elos s o entradas do L xico Ampliado da Linguagem ou ponteiros para outros artefatos Os artefatos est o armazenados atrav s do reposit rio de dados de modo a facilitar sua manuten o Desta forma as p ginas HTML que v o exib los tem de ser montadas dinamicamente atrav s de c digo ASP Esta possibilidade representada pela seta de resultados que aponta para fora da Figura 5 13 Na realidade a maioria das consultas que podem ser realizadas utilizando se o prot tipo tem como resposta p ginas com elos din micos que levam a outros artefatos ou cen rios da base em um processo cont nuo Acreditamos que atrav s deste exemplo foi poss vel dar uma id ia da din mica de utiliza o da ferramenta A partir deste entendimento detalharemos a estrutura da ferramenta tendo em vista os componentes do Framework proposto na Figura 5 9 Dividimos a estrutura da ferramenta em duas partes uma fixa que implementa os objetos n o configur veis presentes no Framework e uma segunda parte configur vel onde o usu rio pode entrar com os par metros que v o determinar sua inst ncia em particular A parte fixa implementada ao n vel de dados onde encontramos os reposit rios que v o manter as informa es e ao n vel de software base onde realizaremos a cr tica dos dados ger nc
221. su rio leva peri dicos i empr stimo de retirar obra biblioteca do 40 tarteirade usu rio usu rio apresenta peri dicos desejados ao peri dico no DI funcion rio da biblioteca andar identidade sem cart o antigo i funcion rio da usu rio apresenta carteira de identidade biblioteca ao funcion rio da biblioteca E ncion rio da biblioteca prepara cart o rovis rio funcion rio da biblioteca carimba cart o ncion rio da biblioteca cadastra excedeu no empr stimo m ximo de empr stimos usuario leva peri dicos empr stimo entre 8 retirar obra biblioteca externa carta do usu rio usu rio requisita empr stimo entre bibliotecas E E E funcion rio da bibliotecas biblioteca autorizando yetirada i carta do funcion rio da funcion rio da biblioteca biblioteca E confirmando devolu o ncion rio confirma disponibilidade da bra na biblioteca externa ncion rio da biblioteca emite carta autorizando retirada i usu rio faz retirada na biblioteca externa usu rio solicita carta de confirma o de volu o ao funcion rio da biblioteca usu rio devolve obra na biblioteca externa usu rio valida carta de devolu o na biblioteca externa usu rio fornece carta de devolu o a biblioteca do 40 andar aluno apresenta obras desejadas ao ncion rio da biblioteca empr stimo de retirar obra biblioteca do 40 carteira de aluno da obras a aluno
222. ta fiscal efetuar pagamento a ia ota fiscal emitida liente executa pagamento d vida Oooo pe i liente salda d vida Pagamento registrado no sistema Cen rios Codificados Nome no objetivo contexto recursos incluir cliente excluir cliente B22 alterar informa es do cliente E22 efetuar servi o CEN PoP S ST 5 CEN Oooo oo So T R fy S oN o CEN Calcular or amento Entrar no sistema e selecionar fun o p 6 on as R A E5 exce o CEN 11 calcular or amento aprovar or amento imudar or amento emitir ordem de servi o cancelar ordem de servi o emitir nota fiscal Projeto V Cons rcio Vers o 1 Cen rios Literais Formar um grupo 1 Formar um novo Administradora 2 articipante decidem Administradora se v o continuar no enviou comunicado ons rcio Qualquer lugar designado pela administradora Cancelar cons rcio Dar t rmino ao ons rcio erminar cons rcio l administradora Assembl ia enviou Ata da grupo omunicado assembl ia lano de vig ncia Plz erminado Dissolver grupo de grupo ons rcio Assembl ia decidiu erminar cons rcio o existem participantes quites falta do cumprimento das quita es E gt i Apresentar pedido de 6 Se juntar ao 5 a o a Sr EI ENE Nome ho bjetivo ontexto recursos atores Sala de reuni o Administradora Participante Assembl
223. te95 Kyng95 a partir destas representa es i e na realidade a partir do detalhamento de informa o contido na representa o escolhida que s o determinadas as inst ncias dos cen rios e seus relacionamentos Resumimos nosso entendimento do processo evolutivo de cen rios como se segue ao n vel de processo a evolu o de cen rios explicada atrav s de um conjunto de opera es que surtem efeito sobre um nico ou um grupo de cen rios e que como resultado modificam a configura o anterior Estas opera es s o aplicadas sobre cen rios que foram codificados utilizando se uma nica nota o determinada ao n vel de produto Atrav s das inst ncias destes cen rios que cont m a informa o particular a cada caso vamos inferir a rede de relacionamentos e depend ncias existente entre os cen rios de uma mesma configura o Estes relacionamentos por sua vez determinam a escolha das opera es que poder o ser aplicadas sobre a base e resultar o em uma nova configura o importante voltar a frisar que a riqueza de tipos de relacionamentos est intimamente relacionada com o n vel de detalhamento existente na nota es utilizada para capturar os cen rios Como vimos no cap tulo 2 deste trabalho existe uma gama de varia es para a descri o de cen rios utilizando se linguagem natural Na Figura 2 7 mostramos uma abstra o dos tipos de componentes usualmente presentes nas nota es existentes na li
224. teratura razo vel supor que nota es que utilizam um maior n mero de componentes codificam mais informa es e portanto permitem a infer ncia de um n mero maior de relacionamentos A partir da rede de relacionamentos e depend ncias entre cen rios de uma mesma vers o que poderemos definir a pertin ncia ou validade da aplica o de uma 10 Uma das hip teses b sicas na realiza o dos estudos de caso foi a utiliza o de uma nota o homog nea por projeto 99 opera o E por exemplo atrav s da constata o da exist ncia de um relacionamento de pr condi o entre os cen rios A e B A pr condi o de B que decidimos que A n o deve ser retirado da base com o risco de impossibilitar B Na realidade devemos compreender o processo de evolu o de cen rios como uma rea o em cadeia entre os elementos presentes no modelo de evolu o Neste enfoque temos que os relacionamentos existentes ao n vel de inst ncia que por sua vez s o determinados a partir da estrutura de componentes da nota o escolhida ao n vel de produto acabam por determinar a aplicabilidade das opera es de cen rios ao n vel processual A evolu o de cen rios portanto um processo din mico calcado na configura o dos relacionamentos entre inst ncias de cen rios que por sua vez s o limitados pela nota o utilizada ao n vel de produto 100 Intra Cen rio Intra Cen rio CEN RIO Fus o Inclus o
225. tered ad E Jr rien ralado Chocea the Relnasa e Pim ES Love ete ore CINE eee elie TIN asa MD Scere Erotvbor freee Mircash einer Epheser E O a gi a e a od do a Boa Hack iia Pash hime Kamch mei Heke Dism File Hal Fosi _ Aden rep ee ee E Labs jihin a hat eGo Cl D eaha Jia ia rae Liia Dporabiors an roaso Spor Il yau wani meee iali snimci an operation E izum jmi A ee EEE S Dire E E SB eee oe Aaj 6 roo lout tom cut p iio ike SO BB i Figura 5 15 a e b Exemplo de sele o de um release e todas as opera es associadas A ferramenta SET foi utilizada para implementar o exemplo da simula o do controle do sistema de ilumina o da Universidade Kaiserslautern Este exemplo foi proposto para o workshop de Engenharia de Requisitos realizado em 1998 no castelo de 139 Daghstuhl e subsequentemente se transformou em edi o especial do Journal of Universal Computer Science editado eletronicamente pela Springer Verlag A implementa o do exemplo faz parte do artigo Breitman00 5 5 RESUMO Neste cap tulo apresentamos o Framework para a evolu o de cen rios que fornece subs dios para auxiliar desenvolvedores no processo de desenvolvimento de software baseado em cen rios Baseado na aplica o de em um conjunto de opera es sobre cen rios o processo que suporta o Framework auxilia na organiza o e racionaliza o da evolu o dos pr prios
226. the baseline pl im alfanction occurs Version 4 exienis malhando nccurs Warslom 3 owidenr light somam oui of onder Werslom 5 merien devia Gut ot inber Werslom 4 j Conch ER ime Von iracion Hirt Word tes 20 E Scenario Evokton E PA eA nas Figura 5 3 Rastreamento do cen rio malfunction occurs em rela o a outros cen rio da base Note que a figura ilustra todas as opera es em que o cen rio esteve envolvido e se for o caso os outros cen rios que tamb m fizeram parte das mesmas Se computarmos o n mero de cen rios que estiveram em alguma de suas vers es envolvidos com o cen rio malfunction occurs em quest o teremos um n mero razo vel de conex es Se adicionarmos a este n mero os elos com entradas dos l xico e outros artefatos de software que foram sendo produzidos paralelamente ao processo de versionamento deste cen rio teremos um n mero com ordem de grandeza em torno de dezenas de conex es Nesta luz um processo de ger ncia de configura o eficaz se torna fundamental Na pr xima subse o nos concentraremos neste t pico 5 1 2 CONFIGURA O Acreditamos que do ponto de vista do apoio evolu o natural dos cen rios mecanismos de ger ncia de configura o ser o aqueles que trar o maiores benef cios Chamamos de evolu o natural o refinamento da informa o b sica dos cen rios 109 elicitada ao in cio do processo Este se d com
227. tico e automatizado da informa o Os cen rios utilizados nos projetos foram inicialmente capturados utilizando se linguagem natural e a nota o proposta por Leite Leite97 Procedemos por indexar cada inst ncia de componente de cen rio e por atribuir a cada uma destas um n mero de identifica o nico Desta forma foi poss vel referenciar componentes que aparecem em mais de um cen rio de forma uniforme No ap ndice I apresentamos a listagem dos cen rios dos projetos que comp e o Estudo de Caso I bem como sua forma codificada Na Figura 4 1 a seguir mostramos um exemplo de um cen rio em sua forma literal e sua respectiva codifica o Este exemplo derivado do projeto V sistema para ger ncia de um cons rcio de ve culos Entrega e ES bem alParticipante EE E dass 1 Participante paga direito sorteado participante sorteado le do ve culo de outorga o O Estudo de Caso II se encontra dispon vel no endere o http stones les inf puc rio br Karin exemplo index html 46 3 Participante apresenta 4 Participante omplemento de quotas de ntegra o m nima Participante reembolsa despesas de frete 6 Participante apresenta ormul rio de pedido de ve culo ASSINAR CONTRATO DE RESGATE 8 Participante apresenta omprovantes de pagamento TE TT Figura 4 1 exemplo de um cen rio em formato literal e sua codifica o 2 o O T A Et cd Esta nota o denota que o epis dio na
228. tiliza a vers o mais atualizada de um cen rio Uma vers o de um cen rio por sua vez pode participar de mais de uma configura o pois os processos de versionamento cen rio e de obten o de configura es s o completamente independentes O processo de versionamento de cen rios como detalhado no cap tulo anterior baseado em opera es que podem ou n o ser aplicadas durante o intervalo existente entre uma configura o e outra Se um cen rio n o sofreu nenhuma modifica o que determinasse sua mudan a de vers o esta mesma vers o do cen rio far parte de quantas configura es forem lan adas neste intervalo Os crit rios para o lan amento de uma configura o como veremos detalhado pelo Framework s o determinados pelo usu rio atrav s da instancia o do Framework e podem ser baseados em datas espec ficas est gios de desenvolvimento final da fase de especifica o por exemplo ou atrav s de crit rios espec ficos a serem customizados pelo pr prio usu rio Passaremos agora a descrever cada um dos componentes do Framework de evolu o de cen rios por classe 5 3 2 1 SCENARIO Como mencionado acima a classe cen rio uma abstra o Desta forma cabe a ela apenas os atributos title t tulo e first appears momento em que o cen rio aparece pela primeira vez Lembramos que o processo de desenvolvimento de software tamb m um aprendizado e n o raro novos cen rio surgem como resultado do
229. to complemento projeto 1 52 Na Tabela 4 2 a seguir resumimos as heur sticas para a detec o do relacionamento de complementariedade entre dois ou mais cen rios Complemento Cen rios devem possuir objetivos id nticos Existe coincid ncia entre o contexto dos cen rios envolvidos Existe coincid ncia de recursos entre os cen rios Esta coincid ncia pode ser total todos os cen rios apresentam o mesmo recurso ou parcial i e notada entre pares dos cen rios envolvidos Existe grande coincid ncia de atores entre os cen rios envolvidos Existe notadamente pequena coincid ncia entre os epis dios de cada um dos cen rio envolvidos Tabela 4 2 Heur sticas para a detec o do relacionamento de complementariedade 4 3 2 RELACIONAMENTO DE EQUIVAL NCIA Definimos o relacionamento de equival ncia como indicativo de semelhan a entre dois ou mais cen rios Este relacionamento foi observado em conjuntos de cen rios que compartilham um mesmo objetivo ao mesmo tempo em que apresentam coincid ncia de contexto Pouca coincid ncia de recursos foi observada Estes cen rios tamb m devem apresentar alto ndice de coincid ncia entre atores e epis dios Durante a confec o dos estudos de casos percebemos que a an lise era facilitada se proced ssemos por analisar os casos de equival ncia e complemento concomitantemente Em ambos os casos os cen rios compartilham um mesmo objetivo portanto razo vel supor qu
230. tor ao cen rio original no fim do 61 tratamento da exce o pelo contr rio nos casos observados notou se que os atores tomaram um curso de a es bastante distintos do que o previsto pelo cen rio original onde o comportamento excepcional ocorreu Da mesma forma que o relacionamento de Pr condi o especial por introduzir a no o de temporalidade o relacionamento de poss vel preced ncia embute a id ia de disponibilidade 1 e de per odos de tempo ou situa es onde um determinado cen rio v lido Para ilustrar o relacionamento de exce o selecionamos um exemplo do projeto VII vers o 3 sistema para ger ncia acad mica Neste projeto mostramos o cen rio matricular em disciplina tendo como poss vel preced ncia o cen rio oferecer nova disciplina O relacionamento de poss vel preced ncia indica que poss vel que novas disciplinas sejam oferecidas por m se verdadeiro dever ocorrer antes do prazo de matr cula A Figura 4 11 ilustra a situa o atricular em disciplina rd Figura 4 11 Exemplo de par de cen rios que apresentam o relacionamento de poss vel preced ncia projeto VII Na Tabela 4 9 a seguir apresentamos heur sticas que nos auxiliaram na detec o do relacionamento de Poss vel Preced ncia entre dois ou mais cen rios Note que alguns dos conceitos presentes s o dificilmente quantificados tais como a coincid ncia entre epis dios e contexto Nestes casos as heur sticas serv
231. tradora Escriv o abre as ofertas de participante licita o ecebeu se oferta de Lista de grupos Escriv o Se escolhe o participante que licita o ofereceu o maior valor Participante oferta est quites SE oferta for superior ao limite m ximo ENTAO o valor extra deve ser retornado Outorgar bem por sorteio Outorgar bem por 1 licita o Aceitar a outorga o Participante articipante envia sorteio sortea omunicado de aceita o para administradora Administradora Se registra aceita o Se informa a data para entregal do ve culo egistrar recusa do a ice articipante envia e culo sortez s omunicado de recusa para administradora ve culo o pr ximo participante sorteado Se informa ao novo participante que ele foi ACEITE A OUTORGA O ou a RESOLU O DO EDIDO DE ADES O administradora pode exigir a ESOLU O DO PEDIDO ai E Ee Dn o E vo D a o 2 2 J a Dar por resolvido articipe i ice Se o participante recusa pela pedido de ades o de sortei quarta vez o ve culo se m participante ades o jmora por mais de 3 Informa es do estado de d vida do participante Entrega de bem 19 Outorgar bem a Participante foi Disponibilidade Participante articipante paga direito de sorteado participante sorteado do ve culo outorga o articips a Administradora licita o Oooo E O lO O OE o ev ASSINAR CONTRATO
232. tros artefatos presentes na baseline A Figura 5 8 ilustra as tr s dimens es 116 Rastreamento TOGUISITOS desenho especifica o d 7002 0 00 CEN LIOS Configura o EEE o Figura 5 8 Dimens es de ger ncia do processo de evolu o de cen rios Baseados na discuss o apresentada nesta se o e no modelo de evolu o apresentado no cap tulo anterior iremos propor um Framework para a ger ncia da evolu o de cen rios Este Framework ser apresentado na pr xima se o 5 3 FRAMEWORK PROPOSTO Baseados no conhecimento adquirido atrav s da elabora o dos estudos de caso que resultaram no modelo de evolu o de cen rio apresentado no cap tulo anterior e nos requisitos para o suporte a ger ncia deste processo propomos um Framework para a ger ncia do processo de evolu o de cen rios O Framework proposto pode ser customizado de modo a servir a classe de representa es de cen rios que utilizam linguagem semi estruturada como classificado no cap tulo 2 deste trabalho Nesta se o apresentamos o Framework utilizando a nota o UML estendida proposta por Fontoura Fontoura99 Dividimos o restante desta se o como se segue Nas pr ximas sub se es detalhamos o Framework atrav s de seu pr prio processo de instancia o Desta forma seremos capazes de enfatizar os aspectos customiz veis e apontar outros comuns a todas implementa es do mesmo Na sub se o seguinte 117 aprese
233. tulo de mestre doutor aluno coloca seu nome na lista de inscri es para exame de l ngua estrangeira na secretaria aluno presta exame SE aluno aprovado ENT O secretaria envia cr dito para DAR Cen rios Codificados Nome no objetivo contexto recursos atores epis dios exce o restri o pasta cs cus saltar dos marcar defesa de tese de doutorado tT OCH ri JA JE TT ooo S T e qro a pes Jo o PR E T ST O Eo o a T G o e e e a e o OOo S T T eee d T ST Apresentar tese RA feo DO S T da es EEE es y S PRAT te Jei jo l DO A O Es Es E o e prenova o de pelea ee He Ht E ee cea eere viewpoint orientador DO S T ee S S dea S S E JJ PES OOo ERR RR RR EE S dee EO matriculaalunosdoD O O fs Jo cs rig a qem x ES a a pros tas feta ff SF p o Ee o o essa ke matriculata vez OO es Ss c6 c7_ R EE S37 _ sl et pO PO c8 E inscrever sena sele o doD LOS R7 JA JEM J EE E c9 r fa fes J DO S S eo tris Jea J S PR EX E tt S S S ST s Jos feu ROO Ja J J o DO S S RS Jai eo S S Z o o OOOO O EEE ES SEER Oo S S S T T S S EEE S E T S Ss ES so Doo sele o de candidatos para a p s Ooo es O EEE RES EEE ed po eS sele o de candidatos para a p s 9 05 C11 R27 A7 E26 OOo ER EE EE T Sea T ST distribui o de bolsas _ Jio os for r AT Jes J O ees Do ROD Ja 36ST EX4 FE e o
234. u o dos cen rios e dos termos do LAL 2 A estrat gia utilizada para a constru o do sistema foi do tipo de dentro para fora outside inside o que significa que a partir da descri o do macrosistema fomos refinando a especifica o at atingirmos a implementa o satisfat ria para o software Neste contexto existe um refinamento dos conceitos evidenciado na Figura 4 32 97 apresentada anteriormente Mostramos que o conceito geral de c modo foi sendo elaborado desde local f sico at uma abstra o que representa o conceito para o sistema A figura mostra apenas parte desta evolu o Como visto na Figura 4 24 o cen rio em quest o possui 4 vers es sob este nome e outras duas a partir da fus o com o cen rio user occupies hallway section na configura o DesignllII O site do estudo de caso disponibiliza todas as vers es do cen rio bem como os elos para os termos do l xico e outros artefatos Nesta se o apresentamos o segundo estudo de caso que utilizamos como forma de valida o e teste para a taxonomia para evolu o de cen rios apresentada na se o 4 5 A partir da experi ncia que agregamos ao realizar este segundo estudo de caso fomos capazes de refinar esta taxonomia e incluir aspectos que v o al m do processo de evolu o de cen rios representado pelo conjunto de opera es Entendemos que aspectos est ticos relacionados aos cen rios enquanto produtos e representados pelos relacionamento
235. u que aponta a possibilidade de utiliza o de cen rios nas seguintes reas segundo uma revis o da bibliogr fica conduzida pela pr pria Filippidou98 e elicita o de requisitos e proje o de requisitos e an lise dos requisitos e avalia o dos requisitos e captura de rationale e gera o de interfaces Como era de se esperar de modo a abranger tantas atividades diferentes ainda n o existe um consenso em rela o a que tipo de informa o deve estar contida em um cen rio Weidenhaupt98 Esta situa o exacerbada ao investigarmos as poss veis categoriza es propostas para a classifica o de cen rios dispon veis na literatura Na pr xima se o apresentamos algumas destas propostas Como veremos os crit rios utilizados por cada autor s o muito diferentes o que evidencia uma grande variedade de formatos entre poss veis representa es e a falta de um consenso em rela o a uma defini o universal para o termo cen rio 12 2 2 CLASSIFICA O DE CEN RIOS Nesta se o apresentaremos brevemente algumas das propostas de classifica o de cen rios existentes na literatura Em primeiro lugar devemos tornar mais claro o espectro de possibilidades que est o dispon veis Cen rios podem ser desde simples descri es em linguagem natural at modelos mais complexos contendo informa o comportamental a es eventos e atividades e at objetos entidades dados e atributos Rolland98
236. ua aplica o na Engenharia de Requisitos Na pr xima se o descreveremos as v rias reas de aplica o onde podemos empregar a t cnica de cen rios Nosso intuito fornecer uma vis o da amplitude de escopo de utiliza o da mesma A seguir mostramos algumas propostas para a classifica o de cen rios Estas variam 10 grandemente entre si e s o muitas as dimens es nas quais podemos categorizar o conte do e a utiliza o dos ltimos Finalmente faremos uma breve revis o das propostas de utiliza o de cen rios dispon veis na literatura 2 1 REAS DE APLICA O Segundo Carroll a propriedade que melhor define um cen rio o fato do mesmo projetar uma descri o concreta de uma atividade em que o cliente se engaja no momento em que est realizando uma tarefa espec fica Esta descri o tem de ser suficientemente detalhada de modo que implica es sobre o desenho possam ser inferidas e discutidas Carroll95 Nesta perspectiva o autor acredita que cen rios podem cumprir v rios pap is durante o processo de desenvolvimento de software A seguir resumimos as reas em que o autor acredita que a utiliza o de cen rio pode ser ben fica e Elicita o de requisitos Captura e aux lio na compreens o do problema Facilita o entendimento das rela es entre elementos do macrosistema Cen rios tamb m podem ser utilizados na identifica o dos objetos do dom nio e Comunica o entre clientes e desen
237. uas camadas Na camada de banco de dados est o implementados ponteiros para outros artefatos de software Estes est o distribu dos no pr prio conte do dos cen rios e em uma Tabela especial chamada trace localizada no reposit rio de cen rios que mant m registros de rastreamento entre os cen rios e outros objetos Na camada de interface temos todos os mecanismos de navega o pr prios aos browsers tais como bot es de ida e volta e hist rico das p ginas visitadas O objeto rationale do modo em que est apresentado pelo Framework diretamente relacionado as opera es realizadas Desta forma armazenado dentro do reposit rio de hist rico de opera es que tamb m mant m informa es relativas aos objetos fixos Os m todos previstos por estes objetos tais como o software respons vel pelo estabelecimento dos par metros para cada inst ncia est localizado no n vel base conforme mencionado anteriormente Na pr xima se o mostramos um outro exemplo de uma sess o de utiliza o da ferramenta onde alguns destes par metros s o instanciados 5 4 3 INSTANCIA O DA FERRAMENTA A ferramenta SET permite que seus usu rios instanciem o Framework de evolu o de cen rios atrav s de uma sequ ncia interativa de p ginas no momento da cria o da base de cen rios O usu rio define os par metros que deseja em sua inst ncia segundo o processo descrito na se o 5 2 3 deste cap tulo Na figura 5 14 mostramos
238. udo observamos que a evolu o de cen rios est longe de ser um processo de refinamento e que portanto poderia ser gerenciado atrav s do controle de vers es apenas Na realidade o processo evolutivo de cen rios tem um car ter transformacional Raros s o os cen rios que permanecem inalterados durante a evolu o do processo uni o com outros cen rios separa o consolida o e elimina o s o algumas das possibilidades al m do processo de refinamento da informa o mencionado acima Na Figura 5 4 a seguir tentamos mostrar a complexidade desta evolu o Na figura mostramos dois eixos o de vers o e o de configura o Estes eixos s o completamente independentes 1 e os cen rios n o precisam mudar de vers o a cada vez que uma nova configura o lan ada Note que o cen rio C3 na vers o V1 permanece inalterado durante o curso das cinco configura es ilustradas pelo 110 exemplo O processo de versionamento de cen rios como visto anteriormente condicionado a aplica o de opera es apenas Como resultado destas obtemos n o somente novas vers es de um cen rio mas tamb m cen rios inteiramente novos e g o cen rio C5V4 evolui para nova vers o C5V5 e d origem ao novo cen rio C6V1 Tamb m poss vel que cen rios contribuam no processo de versionamento de outros como no caso dos cen rios C2V1 C4V1 e CIV4 resultando nos cen rios C1V5 e C4V2 Na realidade como resultado da aplica o d
239. umenta o Os autores desenvolveram um prot tipo baseado em tecnologia de hipertexto para dar suporte ao Inquiry Cycle Potts94 Finalmente Gotel prop s a utiliza o de um mecanismo de estruturas de contribui o a serem utilizadas de modo a melhorar a comunica o e coopera o entre grupos Estas estruturas cont m informa es sobre as solu es propostas raz es para aprova o ou rejei o das mesmas e pessoa grupo respons vel pela contribui o Desta forma acredita se minimizar o esfor o de mudan a nos requisitos pois s o reduzidas as chances de se negligenciar considera es importantes j que estas foram previamente registradas Al m disto os autores pregam que o sistema tamb m ser melhor aceito pelos clientes pois seu comportamento pode ser justificado atrav s do rationale e de hip teses de funcionamento registradas e mutuamente acordadas clientes e desenvolvedores Gotel97 Outro aspecto que deve ser levado em conta o volume de informa o envolvida no processo O rastreamento de requisitos envolve uma grande quantidade de dados tornando o apoio automatizado fundamental Segundo Leite sem o aux lio de automatiza o o rastreamento da informa o um mito Leite95 Desta forma um aspecto crucial para a realiza o do rastreamento de requisitos selecionar informa o relevante de modo a armazenar somente dados significativos O objetivo deste processo manter o volume de dados
240. ura organizacional que tem um papel no cen rio e Epis dios Cada epis dio representa uma a o realizada por um ator onde participam outros atores utilizando recursos dispon veis Um epis dio tamb m pode se referir a outro cen rio Epis dios podem conter restri es e exce es Uma restri o qualquer imposi o que restrinja um epis dio de um cen rio Uma exce o o tratamento para uma situa o excepcional ou de erro Na Figura 2 9 mostramos um exemplo de um cen rio escrito utilizando se a nota o proposta por Leite O cen rio vem do exemplo do sistema de controle de luzes que utilizaremos ao longo deste trabalho O exemplo completo se encontra dispon vel em Goal establish the procedure for occupied Context motion detector jn order piserjentered Resource value 71 Default fight scene for this Chosen fight scene value Actors Control system passa Episodes enters EM eskon 3 IF roomlis reoccupied wihtin E minutes THEN activate last 4 IF koomlis reoccupied after E1 minutes THEN activate Default light scene user occupies Figura 2 9 Exemplo de um cen rio que utiliza a nota o proposta por Leite Leite97 28 2 4 CLASSIFICA O PARA A NOTA O DE CEN RIOS Na se o 2 3 apresentamos o Framework de classifica o de cen rios proposto por Rolland et al Rolland98 Os autores classificam cen rio de acordo com quatro vis es distintas conte do formato prop s
241. verdade se refere a um outro cen rio no caso o cen rio Assinar contrato de resgate Observe que na Tabela referente a codifica o deste epis dio ele referenciado como CEN20 47 Uma vez codificados os cen rios partimos para um processo de an lise que chamamos de intra configura o onde objetivamos determinar os relacionamentos existentes entre os cen rios de uma mesma configura o Neste processo analisamos manualmente todos os cen rios de modo a detectar relacionamentos e depend ncias entre eles Inicialmente utilizamos os relacionamentos identificados por Breitman em Breitman98 Separamos o conjunto de projetos em dois blocos distintos e identificamos relacionamentos entre os cen rios do primeiro bloco Separamos os resultados por tipo de relacionamento Analisamos cada um deles de modo a coletar indicativos para o reconhecimento de cada relacionamento individualmente Baseados nos componentes b sicos dos cen rios fizemos uma an lise comparativa observando a presen a frequ ncia e quantidade de componentes que cada par conjunto de cen rios que mantivessem um tipo de relacionamento apresentassem em comum Como resultado deste processo elaboramos uma lista de heur sticas para a identifica o de relacionamentos entre cen rios baseadas nos componentes dos mesmos Em posse da lista de heur sticas planejamos uma estrat gia para teste e valida o a partir da aplica o das mesmas sobre os projetos Primeira
242. vimento do software A nota o proposta pelo autor utiliza linguagem natural semi estruturada ancorada no macrosistema partindo da premissa que a utiliza o da linguagem da aplica o e n o do software facilita o entendimento e a valida o dos requisitos por parte dos clientes Leite90 Central a esta proposta s o as seguintes premissas Um cen rio descreve situa es do macrosistema e suas rela es com o sistema a ser constru do Um cen rio pode ser utilizado para descrever as intera es entre os diversos objetos presentes no sistema Um cen rio evolui durante o processo de desenvolvimento do software O modelo de cen rios faz parte de uma proposta maior a baseline de requisitos Leite97 que ser apresentada em detalhes no cap tulo 3 deste trabalho A estrutura de um cen rio est ilustrada na Figura 2 8 a seguir Descreveremos cada um dos componentes do cen rios separadamente engatilha RECURSO OBJETIVO Figura 2 8 Modelo ER da nota o utilizada para representar cen rios dentro do baseline de requisitos Leite97 27 e Titulo identifica o cen rio e Objetivo estabelece a finalidade de um cen rio O cen rio deve descrever o modo em que este objetivo deve ser alcan ado e Contexto Descreve o estado inicial de um cen rio suas pr condi es o local f sico e tempo e Recursos identifica os objetos passivos com os quais lidam os atores e Atores Pessoa ou estrut
243. volvedores Os pr prios clientes podem descrever cen rios que ilustrem elementos de desenho importante para eles problemas ou novas situa es que desejam que o sistema implemente e Captura das justificativas do desenho do sistema design rationale Cen rios podem ser utilizados como forma de registrar o processo de tomada de decis o Neste enfoque n o somente a solu o para um problema registrada mas tamb m outras propostas que foram rejeitadas e as raz es que levaram os desenvolvedores a descart las e Proje es futuras Cen rios podem ser utilizados como meio de prototipar o funcionamento do futuro sistema especialmente do ponto de vista da intera o com clientes e usu rios 11 e Desenho do Software Cen rios podem ser usados na avalia o de alternativas de desenho e Implementa o Cen rios s o teis para ilustrar a intera o entre os diversos subsistemas e Documenta o e Treinamento Cen rios podem ser utilizados para preencher o vazio que existe entre o artefato entregue sistema e as tarefas que usu rios do ltimo desejam cumprir atrav s de sua utiliza o e Avalia o do sistema Atrav s da utiliza o de cen rios externos poss vel verificar se os requisitos dos clientes foram atendidos Como podemos notar Carroll acredita que cen rios podem ser utilizados de modo a cumprir diversos pap is durante o desenvolvimento de software Este ponto de vista compartilhado por Filippido
244. vos de apresenta o de assuntos posicionamentos e argumentos at que se chegue a solu o desejada Todo o processo registrado de modo que futuros leitores tenham acesso a discuss o Conklin87 Potts e Brun prop em um m todo para a captura e registro de delibera es de projeto atrav s de uma representa o esquem tica em forma de rede Estas redes cont m n s de artefatos e delibera es que podem ser do tipo justificativas assuntos ou alternativas A vantagem desta representa o a separa o entre artefatos e rationale que aumenta a compreens o de decis es tomadas durante o projeto Potts88 35 Carroll oferece apoio multim dia para a captura do hist rico e rationale atrav s da ferramenta Raison d Etre Carroll94 O objetivo da ltima fornecer um Framework para a captura e organiza o da hist ria informal e do rationale utilizado pelos desenvolvedores durante sua colabora o A ferramenta captura discuss es utilizando v deo e udio mas mant m transcritos de todas se es de modo a permitir buscas por palavras chave Potts Takahashi e Ant n prop em uma estrutura para descrever e oferecer suporte para discuss es sobre os requisitos do sistema o Inquiry Cycle Esta estrutura discute a informa o relativa aos requisitos que pode ser capturada atrav s de cen rios informais utilizando um ciclo de perguntas respostas e justificativas Ao final de cada ciclo mudan as podem ser incorporadas a doc
245. xcepcional resolvido e se retoma o curso normal dos eventos do primeiro cen rio a partir do ponto onde se deu a exce o A provis o para estes casos chamamos de detour Para que este se caracterize necess rio que ponteiros para os cen rios estejam explicitados na lista de epis dios ou no contexto de ambos cen rios Para ilustrar o relacionamento de detour selecionamos um exemplo do projeto II sistema para ger ncia e controle de bibliotecas Neste projeto mostramos que a exce o presente no cen rio Emprestar Livro tem como exce o tirar cart o da biblioteca e que este por sua vez apresenta um epis dio que remete o ator para o cen rio inicial Nome Objetivo contexto recurso ator Epis dio exce o restri o Emprestar livro Novamente inserimos uma nova coluna de numera o para facilitar a refer ncia aos cen rios 57 tirar cart o de biblioteca RTS Figura 4 7 Exemplo de par de cen rios que apresentam o relacionamento de detour estudo de caso II Na Tabela 4 6 a seguir resumimos as heur sticas para a detec o do relacionamento de Detour entre dois cen rios Detour Um relacionamento de Detour entre os cen rios A e B se estabelece quando Cen rio B uma exce o de um dos epis dios do cen rio A e Cen rio A um dos epis dios do cen rio B Tabela 4 6 Heur sticas para a detec o do relacionamento de Detour 4 3 6 RELACIONAMENTO DE EXCE O Na realidade o in
246. xterior jmestrado doutorad jmestrado doutorado em posse de documenta o possuindo diploma ou DI uma carta de azer Proposta de Trabalho Estudo para Doutorado em vias de obt lo aceita o trp Documenting Concluir rmino do per odo Aluno Aluno devidamente Professor lan a nota do aluno disciplina matriculado na disciplina Do Aluno tem lista de disciplinas cursadas atualizada Po fAlmotemCRatualizado SSS O Aluno de doutorado Aluno completa disciplinas obrigat rias concluiu 24 cr ditos defendeu tese de Aluno completa cr ditos doutorado concluiu disciplinas Aluno teve sua tese aprovada obrigat rias possui CR maior que 7 JAlumotemnotasparagradua o O Aluno de Mestrado Aluno completa disciplinas obrigat rias concluiu 24 cr ditos gt m z B o apresentou Aluno completa cr ditos disserta o de mestrado concluiu disciplinas Aluno tem sua disserta o aprovada obrigat rias possui CR maior que Aluno tem notas para gradua o 7 Aluno devidamente Aluno vai s aulas matriculado na disciplina em sala da aula e ou rofessor Aluno estuda mat ria laborat rio hor rio determinado Disciplina Professor aplica testes Ea Do Aluno or rio de disciplinas Inscrever se em disciplina DI ESSE Excepcional aceita o para cursar disciplina do DI aluno excepcional aceito assiste a esta disciplina Disciplina Professor gt m c o Professor aborat rios Cursar discipli
247. yster Control system race A Lserjenters a eles Nath seat oomlis reoccupied wihtin T minutes THEN activate last hosen mi reoccupied after TT minutes THEN activate ER SS Figura 4 26 informa es relativas a primeira vers o do cen rio user occupies room obtidas no site do estudo de caso 91 Scenario user occupies room Version 2 First appeared in release Spec ll Date of creation 10 3 99 Author user 2 Resulted from Person Responsible user 4 Operation Rationale We noticed some of the information in the scenario was incorrect We made proper corrections Contents Goal establish the procedure for occupied order iser entered Resource value I 1 outdoor light sensor fast correct management value Default ight Chosen light scene yalue System Keeps last correct measurement of butdoor light sensor chooses light scene 4 IF is reoccupied wihtin 1 minutes THEN activate last Chosen light scene is reoccupied after T2 minutes THEN activate Default light scene Figura 4 27 informa es relativas a segunda vers o do cen rio user occupies room obtidas no site do estudo de caso Se compararmos ambos cen rios notamos que realmente n o s o conte do da segunda vers o foi acrescido de informa es mas tamb m foi corrigido Note que na primeira vers o os epis dios 3 e 4 trazem uma contradi o pois sugerem que depois de decorrido um tempo igual ao valor de T1 tanto o par metro
248. za trabalho junto a professor orientador do trabalho individual professor externo coordenad jaluno preenche ficha de trabaho individual or de p s orientador da disciplina assina ficha de trabalho individual no final do semestre a secretaria recolhe notas dos alunos secretaria encaminha pauta a DAR lalterar nota DAR secretaria elabora 2a vers o do hor rio professor modifica arga hor ria secretaria envia hor rio para DAR DAR aprova hor rio sala n o dispon vel aluno aluno se matricula na disciplina secretaria no final do semestre a secretaria recolhe notas dos alunos RC imprime a pauta DI professor assina pauta o Fecretaria encaminha pauta a DAR alterar nota ministrar disciplina de t picos no pr ximo semestre r jaluno se matricula na disciplina no final do semestre a secretaria recolhe notas dos alunos o Fecretaria imprime a pauta professor assina pauta secretaria encaminha pauta a DAR alterar nota professor professor ou secret ria requisitam c pias ao uncion rio n o se lhor rio de funcion rio cret rias funcion rio comunica prazo para t rmino do servi o professor ou secret ria indicam com proceder com as c pias aumentar quota 34 aumentar aluno mensagem do aluno aluno requisita aumento de quota para espa o em discojmatriculado orientador orientador ocupa o das salas do 40 andar aluno entrega mensagem escrita para epresentante avisando que tomou o arm rio de
Download Pdf Manuals
Related Search
Related Contents
Copyright © All rights reserved.
Failed to retrieve file