scieee Open visual document viewer

Caracterização de um ambiente visual para apoiar as cerimónias do SCRUM

Kussunga, Fidel Inácio

Abstract

Metodologias ágeis de desenvolvimento de software, como o Scrum, ganharam enorme popularidade e foram bem-sucedidos em oferecer grandes benefícios para os seus utilizadores, como a aceleração de processos e recursos para lidar com a instabilidade de ambientes tecnológicos. O feedback rápido do cliente e o suporte para requisitos voláteis resultam num valor de produto mais alto, no entanto, a modelação de requisitos iniciais usando técnicas de modelação, não são comumente usados em processos ágeis como o Scrum para preparar melhor a fase de implementação do projeto de software. Esta dissertação, irá propor um ambiente visual adequado para apoiar o sprint e product backlog. Para tal, será modelada uma solução/abordagem técnica utilizando uma linguagem de modelação, como por exemplo a Unified Modeling Language (UML) para apoiar a priorização de requisitos, melhorar a qualidade da solução e facilitar a manutenção de software. Este procedimento seguirá a organização e gestão padrão de Scrum, e fornecerá uma implementação detalhada baseada no processo de modelação UML ou noutra linguagem de modelação de software. O ambiente visual a ser proposto será validado com estudo de caso e painel de especialistas tornando assim a solução uma alternativa para resolver ou reduzir os problemas relacionados com a complexidade e qualidade de software produzidos pelas organizações. Serão estudadas as técnicas informais e formais de modelação de software no sentido de se encontrar o método adequado ao problema, menos complexa e que envolva menor custo para o desenvolvimento de um produto. A metodologia que será utilizada para o desenvolvimento desta dissertação, é a Design Science Research. Esta metodologia consiste na revisão de literatura ajustada nos conceitos mais importantes para o problema em estudo, seguido de uma proposta de um artefacto que contribua com um novo conhecimento para a ciência, sendo avaliado posteriormente num contexto real.

Full text

Fidel Inácio Kussunga Ca ac e ização de um Ambien e Visual pa a Apoia as Ce imónias do SCRUM Fidel Inácio Kussunga ou ub o de 2019 UMinho | 2019 Ca ac e ização de um Ambien e Visual pa a Apoia as Ce imónias do SCRUM Uni e sidade do Minho Escola de Engenha ia ou ub o de 2019 Disse ação de Mes ado Ciclo de Es udos In eg ados Conducen es ao G au de Mes e em Engenha ia Ele ónica Indus ial e Compu ado es T abalho e ec uado sob a o ien ação do P o esso Dou o Ped o Miguel Gonzalez Ab eu Ribei o P o esso Dou o Paulo F ancisco Ca doso Fidel Inácio Kussunga Ca ac e ização de um Ambien e Visual pa a Apoia as Ce imónias do SCRUM Uni e sidade do Minho Escola de Engenha ia iii DIREITOS DE AUTOR E CONDIÇÕES DE UTILIZAÇÃO DO TRABALHO POR TERCEIROS Es e é um abalho académico que pode se u ilizado po e cei os desde que espei adas as eg as e boas p á icas in e nacionalmen e acei es, no que conce ne aos di ei os de au o e di ei os conexos. Assim, o p esen e abalho pode se u ilizado nos e mos p e is os na licença abaixo indicada. Caso o u ilizado necessi e de pe missão pa a pode aze um uso do abalho em condições não p e is as no licenciamen o indicado, de e á con ac a o au o , a a és do Reposi ó iUM da Uni e sidade do Minho. A ibuição CC BY h ps://c ea i ecommons.o g/licenses/by/4.0/ i AGRADECIMENTOS A ealização de uma disse ação é uma a e a á dua que sem apoio de mui os, não se ia possí el a sua conc e ização. Apesa de que exige passa g ande pa e do empo soli á io, é econ o an e sabe que exis em pessoas ao nosso lado que nunca nos abandonam e que semp e es ão lá pa a nos ajuda e apoia . É mui o impo an e lemb a mo-nos desses, que apesa de odas as di iculdades semp e es i e am p esen es de uma o ma di e a ou indi e a. Ag adeço em pa icula : Ao meu o ien ado , P o . Ped o Ribei o, pela disponibilidade demons ado e po odo apoio p es ado e oda a o ien ação dada. Ao meu p o . Paulo Ca doso, pela on ade e disponibilidade demons ado em me o ien a e po odos os seus conselhos. Aos meus colegas, de Engenha ia Ele ónica Indus ial e Compu ado es, pelo companhei ismo demons ado ao longo desses anos. Um especial ag adecimen o pa a aqueles com quem di e amen e abalhei pelo odo apoio p es ado. Á minha amília, po que sem elas nada disso se ia possí el, que apesa da dis ância nunca deixa am de me apoia , p incipalmen e a minha mãe (Madalena N iaussi). Ainda, a minha que ida namo ada Jaquelina Da id, pela oda paciência e apoio p es ado. Po úl imo, não pode ia esquece de ag adece ao Nuno San os, pelo odo supo e dado e que con ibuiu e mui o pa a que a alidação do abalho osse possí el. Ob igado po oda a sua disponibilidade e on ade de ajuda . DECLARAÇÃO DE INTEGRIDADE Decla o e a uado com in eg idade na elabo ação do p esen e abalho académico e con i mo que não eco i à p á ica de plágio nem a qualque o ma de u ilização inde ida ou alsi icação de in o mações ou esul ados em nenhuma das e apas conducen e à sua elabo ação. Mais decla o que conheço e que espei ei o Código de Condu a É ica da Uni e sidade do Minho. i RESUMO Me odologias ágeis de desen ol imen o de so wa e, como o Sc um, ganha am eno me popula idade e o am bem-sucedidos em o e ece g andes bene ícios pa a os seus u ilizado es, como a acele ação de p ocessos e ecu sos pa a lida com a ins abilidade de ambien es ecnológicos. O eedback ápido do clien e e o supo e pa a equisi os olá eis esul am num alo de p odu o mais al o, no en an o, a modelação de equisi os iniciais usando écnicas de modelação, não são comumen e usados em p ocessos ágeis como o Sc um pa a p epa a melho a ase de implemen ação do p oje o de so wa e. Es a disse ação, i á p opo um ambien e isual adequado pa a apoia o sp in e p oduc backlog. Pa a al, se á modelada uma solução/abo dagem écnica u ilizando uma linguagem de modelação, como po exemplo a Uni ied Modeling Language (UML) pa a apoia a p io ização de equisi os, melho a a qualidade da solução e acili a a manu enção de so wa e. Es e p ocedimen o segui á a o ganização e ges ão pad ão de Sc um, e o nece á uma implemen ação de alhada baseada no p ocesso de modelação UML ou nou a linguagem de modelação de so wa e. O ambien e isual a se p opos o se á alidado com es udo de caso e painel de especialis as o nando assim a solução uma al e na i a pa a esol e ou eduzi os p oblemas elacionados com a complexidade e qualidade de so wa e p oduzidos pelas o ganizações. Se ão es udadas as écnicas in o mais e o mais de modelação de so wa e no sen ido de se encon a o mé odo adequado ao p oblema, menos complexa e que en ol a meno cus o pa a o desen ol imen o de um p odu o. A me odologia que se á u ilizada pa a o desen ol imen o des a disse ação, é a Design Science Resea ch. Es a me odologia consis e na e isão de li e a u a ajus ada nos concei os mais impo an es pa a o p oblema em es udo, seguido de uma p opos a de um a e ac o que con ibua com um no o conhecimen o pa a a ciência, sendo a aliado pos e io men e num con ex o eal. Pala as – cha e: Ambien e isual, desen ol imen o de so wa e, me odologias ágeis, modelação de so wa e, SCRUM ii ABSTRACT Agile so wa e de elopmen me hodologies, such as Sc um, ha e gained emendous popula i y and ha e been success ul in deli e ing g ea bene i s o hei use s, such as accele a ing p ocesses and esou ces o deal wi h he ins abili y o echnological en i onmen s. Rapid cus ome eedback and suppo o ola ile equi emen s esul in a highe p oduc alue; howe e , modeling o ini ial equi emen s using modeling echniques is no commonly used in agile p ocesses such as Sc um o be e p epa e he implemen a ion phase o he p ojec . so wa e p ojec . This disse a ion will p opose a sui able isual en i onmen o suppo he sp in and p oduc backlog. Fo his, a echnical solu ion / app oach will be modeled using a modeling language such as he Uni ied Modeling Language (UML) o suppo he p io i iza ion o equi emen s, imp o e he quali y o he solu ion and acili a e he main enance o so wa e. This will ollow he s anda d Sc um o ganiza ion and managemen and will p o ide a de ailed implemen a ion based on he UML modeling p ocess o o he so wa e modeling language. The isual en i onmen o be p oposed will be alida ed wi h a case s udy and expe panel hus making he solu ion an al e na i e o sol e o educe he p oblems ela ed o he complexi y and quali y o so wa e p oduced by he o ganiza ions. The in o mal and o mal echniques o so wa e modeling will be s udied in o de o ind he app op ia e me hod o he p oblem, less complex and in ol ing less cos o he de elopmen o a p oduc . The me hodology ha will be used o de elop his disse a ion is Design Science Resea ch. This me hodology consis s o a li e a u e e iew adjus ed o he mos impo an concep s o he p oblem unde s udy, ollowed by a p oposal o an a i ac ha con ibu es o a new knowledge o science and is e alua ed la e in a eal con ex . Keywo ds: Visual en i onmen , So wa e de elopmen , SCRUM, So wa e modeling, Agile me hodologies. iii ÍNDICE Ag adecimen os ............................................................................................................................. i Resumo .......................................................................................................................................... i Abs ac ......................................................................................................................................... ii Lis a de igu as ............................................................................................................................... xi Lis a de abelas.............................................................................................................................. xiii Ab e ia u as .................................................................................................................................. xi 1. INTRODUÇÃO ............................................................................................................................. 1 1.1 Mo i ação ................................................................................................................... 1 1.2 Enquad amen o .......................................................................................................... 1 1.3 Obje i os ..................................................................................................................... 3 1.4 Me odologia de In es igação ..................................................................................... 4 1.5 Es u u a da disse ação ............................................................................................. 7 2. METODOLOGIAS ÁGEIS E TÉCNICAS DE MODELAÇÃO ............................................................... 9 2.1 A Engenha ia de So wa e .................................................................................................... 9 2.1.1 Sis emas de So wa e .................................................................................................. 11 2.2 Me odologias Ágeis de Desen ol imen o de So wa e ..................................................... 12 2.2.1 eX eme P og amming ................................................................................................ 15 2.2.2 Adap i e So wa e De elopmen (ASD) ....................................................................... 20 2.2.3 Fea u e D i en De elopmen (FDD) ............................................................................. 22 2.2.4 Dynamic Sys ems De elopmen Me hod (DSDM) ....................................................... 26 2.2.5 Sc um ........................................................................................................................... 30 2.3 Compa ação de Mé odos Ágeis ......................................................................................... 38 2.4 Técnicas de Modelação ...................................................................................................... 39 2.4.1 P incípios de Modelação ............................................................................................. 41 2.4.2 Técnicas de Modelação Clássicas ................................................................................ 42 2.4.3 Tipos de Modelos ........................................................................................................ 47 2.4.4 Modelação baseada em UML ...................................................................................... 48 1 1. INTRODUÇÃO Nes e capí ulo in odu ó io, é ap esen ado enquad amen o do ema do abalho em desen ol imen o. É abo dado ainda nes a pa e da disse ação, a mo i ação da escolha do es udo des e p oblema assim como ambém é discu ida a abo dagem me odológica de in es igação u ilizada pa a a execução des a disse ação. Po im, é ap esen ada a es u u a do documen o. 1.1 Mo i ação A p eocupação exis en e no meio das o ganizações em implemen a um bom so wa e le a-nos a modela mos os sis emas pa a se ob e um so wa e com a qualidade desejá el. Os modelos se em pa a comunica a es u u a e o compo amen o desejados do sis ema, isualiza e con ola a a qui e u a do mesmo e comp eende melho o sis ema que es á a se desen ol ido. Ou a g ande mo i ação em a e com o ac o de a modelação de equisi os iniciais usando écnicas de modelação não se em comumen e usados em p ocessos ágeis como o Sc um pa a p epa a melho a ase de implemen ação do p oje o de so wa e. A a és de modelos, consegue-se ob e isões di e en es do sis ema, minimizando a complexidade do sis ema pa a acili a o seu en endimen o, e a uando como meio de comunicação en e in e enien es do p oje o. 1.2 Enquad amen o O ema em es udo es á enquad ado na á ea cien í ica de Tecnologias de Sis emas de In o mação (TSI), conc e amen e na á ea de Ges ão de P oje os, com o oco pa a a ca ac e ização de um ambien e isual (baseado em écnicas de modelação) pa a apoia o Sc um (p oduc backlog e sp in backlog). 2 Pa a con ex ualiza o ema, começou-se po se abo da as me odologias ágeis de desen ol imen o de so wa e. Os sis emas de so wa e são cada ez mais complexos de ido aos equisi os complicados e di e si icados dos clien es [1]. Ao mesmo empo, o me cado é mui o compe i i o e exigen e, ampli icadas pela aca qualidade de so wa e p oduzido e a sa is ação do clien e são ques ões cada ez mais impo an es [2]. Po an o, as equipas de so wa e de em desen ol e p odu os de so wa e pa a a ende a odos os equisi os em empo p é-de e minado e sob cus o de inido. Os mé odos adicionais de desen ol imen o de so wa e são cada ez menos adequados. Esses mé odos são p ocessos pesados, que dão mais a enção à indus ialização e à pad onização. Isso ge almen e le a a um ciclo de desen ol imen o mais longo e um cus o adicional [1]. O su gimen o de mé odos ágeis nos úl imos anos a aiu cada ez mais a enção, uma ez que são u ilizadas com sucesso pa a melho a os p ocessos de so wa e. As me odologias ágeis p o enien es do Mani es o Ágil em [3] são mé odos mais le es pa a p oje os de so wa e compa ados com a maio ia dos mé odos adicionais. As me odologias ágeis ap esen am equipas au o-o ganizadas que são capaci adas pa a a ingi me as de negócios especí icas. As me odologias ágeis ocam a sua a enção em en egas ápidas e equen es de soluções pa ciais de manei a i e a i a e inc emen al [1]. Me odologias ágeis demons a am o nece p odu os de al a qualidade em menos empo, esul ando em maio sa is ação do clien e. O Sc um é uma abo dagem pa a o desen ol imen o de p oje os que não eque o p eenchimen o de uma especi icação écnica de á ias páginas, como no modelo adicional [4]. O Sc um é uma me odologia pa a ge i o desen ol imen o de sis emas de in o mação, que coloca uma o e ên ase no con olo de qualidade do p ocesso de desen ol imen o. Além de ge i p oje os de desen ol imen o de so wa e, a me odologia é usada po equipas de supo e de so wa e, bem como uma abo dagem pa a ge i o desen ol imen o e a manu enção de so wa e [4]. A me odologia ágil Sc um, é baseada na di isão de p oje os em i e ações (sp in s). Cada sp in inclui cinco ases, que são [5]: (1) inicializa , (2) analisa , (3) p oje a , (4) ealiza e (5) es a um conjun o de use s o ies. Uma use s o y desc e e a uncionalidade que se á aliosa pa a o u ilizado / clien e de um sis ema ou so wa e [6]. No con ex o da A qui e u a O ien ada a 3 Modelos (MDA) [7], de ac o, á ias emp esas de desen ol imen o de so wa e ado a am essa no ação, as use s o ies são desc i as em ní el de Modelo Independen e Compu acional (CIM). Es e modelo ep esen a o ní el mais al o de abs ação e de p ocesso de desen ol imen o ágil [5]. Os mecanismos de planeamen o, es ima i a e con olo dos modelos de p ocessos ágeis dependem signi ica i amen e de um conjun o ixo de a e as es abelecido pa a cada sp in . Essas a e as são c iadas como e inamen os de i ens do P oduc Backlog no início de cada sp in . No en an o, o en endimen o de uma equipa de p oje o sob e as implicações e dependências de negócios dos i ens do P oduc Backlog pode não se p o undo o su icien e pa a iden i ica odas as a e as necessá ias ão cedo, po an o, além das a e as de inidas no início do sp in , mais a e as necessá ias podem se descobe as [8]. A linguagem de modelação UML con ém di e sos diag amas que cob em a análise e design de sis emas o ien adas a obje os e é uma linguagem pad ão no me cado de desen ol imen o de so wa e. Es a e amen a de modelação apoia as p á icas em ní el écnico em cada ase do desen ol imen o de so wa e. Além disso, a modelação UML é independen e de modelos de p ocesso. Ve i ica-se, que em [1] oi p opos o uma abo dagem que combina a me odologia Sc um com a e amen a da linguagem de modelação UML. P e ende-se com es a disse ação, na p imei a ase, es uda de alhadamen e e ca ego iza odas as écnicas de modelação exis en es com o in ui o de jus i ica a escolha de um p ocedimen o pa a aplicação na me odologia Sc um. 1.3 Obje i os A ques ão de in es igação des a disse ação é: “Quais se ão as ca ac e ís icas adequadas de um ambien e isual pa a apoia o sp in e P oduc Backlog?”. Se á, po an o, a pa i des a ques ão que odo abalho se á desen ol ido. P e ende-se com es a disse ação p opo um ambien e isual que acili e a in e ação en e os in e enien es no p oje o, selecionando uma abo dagem que o ne es e p ocesso acessí el a odos. 4 Sendo assim, é necessá io um es udo das abo dagens exis en es sob e ca ac e ização de um ambien e isual pa a apoia as ce imónias do Sc um ou de uma ou a me odologia ágil. Ou os obje i os são: • Es udo de alhado das me odologias ágeis, com oco p incipal no Sc um; • Análise de p opos as exis en es na li e a u a sob e écnicas pa a apoia ce imónias Sc um; • P opos a do ambien e isual adequado pa a apoia o sp in e p oduc backlog; • Validação do ambien e p opos o com es udo de caso; • Fo malização de uma no a e são do ambien e com base no eedback da alidação. 1.4 Me odologia de In es igação Pa a um p oje o de in es igação é undamen al a de inição de uma abo dagem me odológica adequada, uma ez que, a me odologia ado ada i á con ibui pa a o alcance dos obje i os de inidos pa a p oje o. As abo dagens me odológicas ge almen e abo dam um p oblema exis en e a pa i do qual uma hipó ese é o mada e analisada. A análise pode en ol e o desen ol imen o de sis ema (s) p o ó ipo (s) pa a o nece p o a de concei o. Pa a a in es igação undamen al, essa e idência ou a e ac o é impo an e, pois o na-se o oco pa a expandi ou con inua a in es igação [9]. De aco do com Nunamake , Chen e Pu din [9] uma me odologia de in es igação consis e na u ilização de p ocessos, mé odos e e amen as necessá ias pa a a ealização de abalho de in es igação sob e um de e minado assun o. O sucesso e a conclusão de um p oje o de in es igação depende da escolha de mé odos ap op iados e sis emá icos [10]. De aco do com Be nd sson, Hansson, Olsson e Lundell [10] um mé odo é uma abo dagem o ganizada pa a esolução de um de e minado p oblema que inclui: (1) ecolha de dados, (2) o mulação de uma hipó ese ou p oposição, (3) es e da hipó ese, (4) in e p e ação dos esul ados e (5) indicação das conclusões que podem pos e io men e se a aliadas de o ma independen e po ou os [10]. 5 Exis em di e en es abo dagens de in es igação, a sua escolha p ende-se com a na u eza do p oblema e com o que se p e ende aze [10]. A escolha de uma abo dagem me odológica adequada ai possibili a execu a de o ma mais bem-sucedida o abalho de in es igação, se indo de guião pa a esponde à ques ão de in es igação a que o abalho p e ende esponde . Tendo em con a a na u eza do p oblema des e abalho e os esul ados espe ados, a abo dagem de in es igação pa a es a disse ação ( abalho de in es igação) é a Design Science Resea ch, is o que, com o a e ac o c iado p e ende-se esol e um p oblema eal iden i icado. Um aspe o impo an e da abo dagem me odológica Design Science Resea ch é a a aliação dos a e ac os; em ou as pala as, a u ilidade dos a e ac os p opos os de e se demons ada [11]. Pa a a alidação da abo dagem p opos a conc e amen e pa a es a disse ação, é ap esen ado p imei o um caso de es udo pa a es abelece a alidade dos cons uc os e mé odos p opos os e demons a o seu uso na ca ac e ização de um ambien e isual. Com es a alidação p e endeu-se ob e (1) eedback, (2) maio comp eensão e mo i ação pa a o p oblema em discussão, (3) uma a aliação da u ilidade p á ica da abo dagem p opos a em con ex o eal e (4) suges ões de melho ias e abalho u u o. Pe e s e al. [12] ap esen am um modelo de p ocessos pa a o desen ol imen o de in es igação com ecu so ao mé odo Design Science Resea ch. Es a me odologia di ide-se em seis ases segundo [13]: Iden i icação do p oblema, Suges ão, Desen ol imen o, A aliação, Comunicação e Conclusão. 1. Iden i icação do p oblema e mo i ação – nes a e apa de ine-se o p oblema especí ico de in es igação. A de inição do p oblema ai se usada pa a o desen ol imen o de a e ac os que podem ajuda a chega a solução. Nes a ase é necessá io jus i ica o alo da solução [12] e a sua ele ância pa a a á ea em ques ão. Pa a isso é necessá io um bom conhecimen o sob e o es ado da a e na á ea do p oblema e da impo ância ou ele ância da solução. O Obje i o p incipal des a ase é a iden i icação da ques ão de in es igação. 2. De inição dos obje i os pa a a solução – depois de conhecido o p oblema e depois do le an amen o do es ado da a e es a concluído, de em-se de ini os obje i os pa a a solução. Os obje i os podem se quan i a i os ou quali a i os. Se o em quan i a i os, a 6 solução p opos a de e se melho que as já exis en es. Se o em quali a i os, a solução de e desc e e a o ma como o no o a e ac o supo a a solução do p oblema. Nes a ase, caso exis am ou as soluções, de e se de inida a sua e iciência pa a se i de e mo de compa ação [12]. 3. Design e desen ol imen o – Nes a e apa, como o nome indica, desenham-se e cons oem-se o(s) a e ac o(s). Concep ualmen e um a e ac o pode se qualque obje o concebido pelo qual a in es igação con ibui pa a o seu desen ol imen o. Podem se modelos, mé odos ou no as p op iedades écnicas [12]. Es a a i idade inclui a cons ução do a e ac o desde a de inição das suas uncionalidades e a qui e u a, a é ao seu design e desen ol imen o. 4. Demons ação – nes a ase, é ei a a demons ação da u ilidade do a e ac o pa a a esolução de uma ou mais ins âncias do p oblema. A demons ação pode en ol e um p oblema especi icado. Pa a que a demons ação enha alo é necessá ia a c iação de um ambien e ap op iado e bem de inido. A demons ação pode se i , se co e bem, como p o a de que a ideia unciona [12]. 5. A aliação – a ase de a aliação consis e na e i icação, obse ação ou medição, se ealmen e o a e ac o supo a a solução pa a o p oblema. Es a a i idade en ol e a compa ação dos obje i os de inidos com os esul ados eais p oduzidos pelo a e ac o na demons ação. Nes a ase é necessá io conhece as écnicas de análise e mé icas ele an es. Dependendo da na u eza do p oblema, a a aliação pode assumi á ias o mas: pode en ol e a compa ação das uncionalidades do a e ac o com os obje i os da solução enume ados na a i idade 2; pode medi quan i a i amen e a pe o mance do a e ac o a a és de simulações ou medidas de empo de espos a, po exemplo [14]. No inal des a a i idade, endo em con a os esul ados des a a aliação, o in es igado pode decidi e ocede à a i idade 3 (design e desen ol imen o) e en a melho o a e ac o, e ocede pa a a a i idade 2 e ede ini os obje i os da solução ou con inua pa a a a i idade seguin e e deixa as possí eis melho ias pa a o abalho u u o. 7 6. Comunicação e di ulgação do esul ado – no inal, é necessá io comunica e di ulga os esul ados ob idos, a sua impo ância, o a e ac o, a sua u ilidade e o que az de no o, igo da conceção, e a sua e icácia. Na Figu a 1 es ão ep esen adas as a i idades desen ol idas du an e o p ocesso de in es igação usando a me odologia Design Science Resea ch [12]. Figu a 1 - A i idades p incipais do mé odo Design Science Resea ch, adap ado de Pe e s e al. [12] 1.5 Es u u a da disse ação Pa a que seja possí el alcança os obje i os de inidos no i em an e io , es a disse ação se á di idida em 5 capí ulos. No p imei o, é ei o o enquad amen o do p oblema em análise, a me odologia de in es igação, assim como os obje i os que se p e endem a ingi com a ealização des e abalho e a mo i ação. O segundo capí ulo az a e isão da li e a u a exis en e, é ei a uma in odução dos ópicos a se em abo dados. Se ão ainda es udadas nes a seção, os concei os sob e a engenha ia de so wa e e ainda o desen ol imen o ágil de so wa e com oco sob e o Sc um. Ainda nes e segundo capí ulo, são es udadas écnicas de modelação de so wa e. No e cei o capí ulo, az-se a análise dos abalhos já desen ol ido que abo dam o ema des e p oje o. 8 No qua o capí ulo des a disse ação, se á ap esen ado o p ocedimen o p opos o, e ainda, a -se-á uma análise c í ica e p opos as de melho ias. Po im, o capí ulo 5 é a conclusão da disse ação, ap esen ando os esul ados espe ados e o abalho u u o, que pode á en iquece a solução ap esen ada. 9 2. METODOLOGIAS ÁGEIS E TÉCNICAS DE MODELAÇÃO O obje i o des e capí ulo é ap esen a uma e isão bibliog á ica sob e o ema em discussão. Es e capí ulo é compos o po cinco secções, a p imei a é e e en e a uma b e e in odução sob e a engenha ia de so wa e, a segunda secção abo da as me odologias ágeis de desen ol imen o de so wa e, a e cei a secção ap esen a uma compa ação das me odologias ágeis es udadas, a qua a secção discu e as écnicas de modelação de so wa e com des aque pa a a modelação baseada em UML e a quin a secção abo da a écnica Fou S ep Rule Se . 2.1 A Engenha ia de So wa e Somme ill [15],[16],[17] de ine engenha ia de so wa e como uma disciplina de engenha ia que se p eocupa com odos os aspe os da p odução de so wa e desde e apas iniciais da especi icação do sis ema a é a manu enção do sis ema du an e a sua u ilização. Hoje em dia assis imos a uma g ande ans o mação do so wa e assim como a sua expansão em unção das c escen es necessidades, sendo p eciso acompanha o seu i mo de c escimen o. Isso signi ica que a aje ó ia do so wa e es á a impulsiona a engenha ia de so wa e, e não o con á io [18]. So wa e é um sis ema c iado pelo homem e, cada ez mais, a sua complexidade é maio . À medida que o so wa e se o na imp escindí el, as expe a i as dos clien es aumen am ambém. Mas a necessidade e a disponibilidade de um engenhei o de so wa e compe en e não se ez sen i com o c escimen o da indús ia de so wa e [19]. 10 Tabela 1 - A ibu os essenciais pa a um so wa e de qualidade [15] Ca ac e ís icas do p odu o Desc ição Manu enção O so wa e de e se esc i o de al o ma que possa e olui pa a a ende às necessidades de mudança dos clien es. Es e é um a ibu o c í ico po que a mudança de so wa e é um equisi o ine i á el de um ambien e de negócios em mudança. Con iabilidade e segu ança A iabilidade do so wa e inclui uma a iedade de ca ac e ís icas, incluindo con iabilidade e segu ança. O so wa e con iá el não de e causa danos ísicos ou económicos em caso de alha do sis ema. U ilizado es mal-in encionados não de em pode acede ou dani ica o sis ema. E iciência O so wa e não de e aze uso desnecessá io de ecu sos do sis ema, como ciclos de memó ia e de p ocessado . A e iciência inclui, po an o, a capacidade de espos a, o empo de p ocessamen o, a u ilização da memó ia, e c. Acei abilidade O so wa e de e se acei á el pa a o ipo de u ilizado pa a o qual oi p oje ado. Isso signi ica que de e se comp eensí el, u ilizá el e compa í el com ou os sis emas que eles usam. Segundo Somme ille [15], a engenha ia de so wa e é impo an e po dois mo i os: 1. Cada ez mais a sociedade con a com sis emas de so wa e a ançados. É necessá ia uma capacidade de p oduzi sis emas iá eis de o ma económica e ápida; 2. Ge almen e, é mais ba a o, a longo p azo, u iliza mé odos e écnicas de engenha ia de so wa e pa a sis emas de so wa e, em ez de apenas desen ol e p og amas como se osse um p oje o de p og amação pessoal. Pa a a maio ia dos sis emas, o cus o em a e com a manu enção depois da u ilização do sis ema de so wa e. Pa a Somme ille [15], a abo dagem sis emá ica usada na engenha ia de so wa e é no malmen e chamada p ocesso de so wa e. Um p ocesso de so wa e é uma sequência de 17 Tabela 3 - P á icas p opos as no XP [15] P á ica Desc ição Planning Game. Essa p á ica suge e um elacionamen o p óximo en e o clien e e a equipa écnica do p oje o. Cada pa e é esponsá el po de ini e iden i ica um conjun o de a ibu os especí icos do p oje o, como p opósi o, p azos, es ima i a de es o ço e des an agens ecnológica. Fases Pequenas O obje i o dessa p á ica é coloca apidamen e em p odução (ou seja, implemen a e es a ) um sis ema simples. Cada lançamen o de e se o meno possí el e con e os equisi os mais aliosos pa a o clien e. Me á o a As me á o as pe mi em desc e e um ecu so a se implemen ado, c iando uma isão comum do clien e e da equipa écnica sob e como o p odu o de e unciona . Des a o ma, pode-se eduzi o uso de exp essões écnicas, mui as ezes di íceis de se em comp eendidas pelo clien e. Design Simples A a qui e u a e o código (incluindo os es es de unidade) de em se o mais simples possí el. Desen ol imen o O ien ado a Tes es Todos os ecu sos implemen ados de em se cobe os po es es de unidade, que de em se semp e sa is ei os, em um es o ço pa a elimina e os de ní el de unidade e de eg essão du an e o desen ol imen o. No XP, um ecu so só es á p on o pa a se in eg ado numa e são quando a ende a esses equisi os. Tes e Tes es de unidades são implemen ados an es do código e são execu ados con inuamen e. Os clien es esc e em os es es uncionais. Re ac o ing O e ac o ing isa simpli ica o código implemen ado emo endo a ambiguidade do código e a edundância Pai P og amming Essa p á ica consis e em e dois p og amado es abalhando simul aneamen e no mesmo compu ado . Cada p og amado em um papel especí ico. Enquan o um elemen o é esponsá el po esc e e o 18 código, o ou o é esponsá el po e i ica e alidá-lo, com a enção especial pa a ecu sos não es ados ou bloqueio de código. P op iedade cole i a Cada memb o da equipa é incen i ado a ealiza odas as al e ações necessá ias no código. Assim, odos os memb os da equipa são donos do código. Essa p á ica e i a espe as desnecessá ias po al e ações de e cei os no código. In eg ação con ínua Depois de um no o ecu so se implemen ado ou ha e ajus amen os no código e após a execução de odos os es es com sucesso, uma no a elease de e se c iada e le indo odas as al e ações. 40 ho as semanais Não abalha mais de 40 ho as po semana é uma eg a Clien e no local O XP p opõe não apenas um elacionamen o p óximo com o clien e, mas ambém que um clien e (ou um ep esen an e) de e es a semp e p esen e du an e o ciclo de ida do p oje o, sendo, po an o, pa e da equipa do p oje o. Pad onização do código Os pad ões de codi icação pe mi em uma in e p e ação mais ácil do código implemen ado po odos os p og amado es. P ocesso XP O ciclo de ida do XP consis e em seis ases: Explo ação, Planeamen o, I e ações pa a libe ação, P odução, Manu enção e Té mino (Figu a 2). 19 Figu a 2 - Ciclo de ida do p ocesso XP [15] Na eX eme P og amming, os equisi os são exp essos como use s o ies (US), que são implemen ados di e amen e como uma sé ie de a e as. Os p og amado es abalham em pa es e desen ol em es es pa a cada a e a an es de esc e e o código. Todos os es es de em se execu ados com sucesso quando um no o código é in eg ado ao sis ema. Há um cu o in e alo de empo en e os lançamen os do sis ema [15]. A eX eme P og amming en ol e di e sas p á icas, que e le em os p incípios dos mé odos ágeis [15]: a) O desen ol imen o inc emen al é supo ado po pequenas e equen es e sões do sis ema. Os equisi os são baseados em US simples que são usadas como base pa a decidi qual uncionalidade de e se incluída num inc emen o do sis ema. b) O en ol imen o do clien e é p omo ido a a és da in eg ação do clien e na equipa de desen ol imen o. O ep esen an e do clien e pa icipa no desen ol imen o e é esponsá el pela de inição dos es es de acei ação do sis ema. c) As pessoas, e não o p ocesso, são apoiadas po meio da p og amação po pa es, da p op iedade cole i a do código do sis ema e de um p ocesso de desen ol imen o sus en á el que não en ol e ho as de abalho excessi amen e longas. 20 d) A mudança é ado ada po meio de eleases egula es do sis ema pa a os clien es, desen ol imen o de es e inicial, e ac o ing pa a e i a a degene ação de código e in eg ação con ínua de no as uncionalidades. e) Man e a simplicidade é supo ado pelo e ac o ing cons an e que melho a a qualidade do código e usando o design simples não an ecipando desnecessa iamen e u u as mudanças no sis ema. Num p ocesso de XP, os clien es es ão in imamen e en ol idos na especi icação e p io ização dos equisi os do sis ema. Os equisi os não são especi icados como lis as de unções do sis ema necessá ias. Em ez disso, o clien e az pa e da equipa de desen ol imen o e discu e os cená ios com ou os memb os da equipa [40]. Na p á ica, mui as emp esas que ado a am o XP não usam odas as p á icas ex emas de p og amação. Elas escolhem de aco do com as suas o mas locais de abalho. Pa a acomoda di e en es ní eis de habilidade, alguns p og amado es não azem e ac o ing em pa es do sis ema que não desen ol e am e os equisi os con encionais podem se usados em ez use s o ies. No en an o, a maio ia das emp esas que ado a am uma a ian e XP usa pequenas e sões, desen ol imen o de es e inicial e in eg ação con ínua [15], [40], [41]. 2.2.2 Adap i e So wa e De elopmen (ASD) O ASD oi p opos o no ano 2000 pa a esol e ques ões sob e o desen ol imen o de sis emas g andes e complexos. O mé odo en a o nece o ien ação pa a e i a alhas em p oje os, mas ao mesmo empo não é uma o ien ação excessi a que pode impedi a c ia i idade ou aze com que o p ocesso se o ne len o e não lexí el. Concei os o es elacionados com o ASD são desen ol imen o i e a i o, abo dagem inc emen al pa a ecu sos e p o o ipagem [42]. O Desen ol imen o de So wa e Adap a i o subs i ui o ciclo de casca a adicional po uma sé ie epe ida de ciclos de especulação, colabo ação e ap endizagem. Es e ciclo dinâmico p opo ciona ap endizagem con ínua e adap ação ao es ado eme gen e do p oje o. As ca ac e ís icas de um ciclo de ida do ASD são que ele é ocado na missão, baseado em ecu sos, i e a i o, ime boxed, o ien ado a iscos e ole an e a mudanças. O ASD a i ma o nece uma 21 es u u a com o ien ação su icien e pa a e i a que os p oje os caiam no caos, mas não em demasia, o que pode ia sup imi a eme gência e a c ia i idade [34]. Papéis e Responsabilidades O p ocesso ASD em o igem em g ande pa e na cul u a da o ganização e ges ão e especialmen e, na impo ância da colabo ação nas equipas e no abalho em equipa. Todas essas ques ões são mui o conside adas [43]. A abo dagem, no en an o, não desc e e de alhadamen e as es u u as da equipa. Da mesma o ma, mui o poucos papéis ou esponsabilidades são lis ados. Um pa ocinado de execução é nomeado como a pessoa com esponsabilidade ge al pelo p odu o em desen ol imen o. Os pa icipan es de uma sessão conjun a de desen ol imen o de aplicações são os únicos ou os papéis mencionados (um acili ado pa a planea e lide a a sessão, um esc iba pa a elabo a a as, o ges o de p oje o e ep esen an es de clien es e desen ol edo es) [42]. P á icas do ASD O ASD p opõe mui o poucas p á icas pa a o abalho de desen ol imen o de so wa e do dia-a-dia. Basicamen e, [29] menciona exp essamen e ês: desen ol imen o i e a i o, planeamen o baseado em ecu sos (com base em componen es) e e isões usando ocus g oup com o clien e. De ac o, al ez o p oblema mais signi ica i o com o ASD é que as suas p á icas são di íceis de iden i ica e deixam mui os de alhes em abe o [44]. P ocesso ASD Um p oje o de Desen ol imen o de So wa e Adap a i o é ealizado em ciclos de ês ases. As ases dos ciclos são Specula e, Collabo a e e Lea n [42]. Na Figu a 3 podem se isualizadas as ês e apas mencionadas. 22 Figu a 3 - Ciclo de desen ol imen o ASD [42] As ases são nomeadas de o ma a des aca o papel da mudança no p ocesso. "Specula e" é usada em ez de "planeamen o", já que um "plano" é ge almen e is o como algo em que a ince eza é uma aqueza e a pa i do qual os des ios indicam alha. Da mesma o ma, “Collabo a e” des aca a impo ância do abalho em equipa como meio de desen ol e sis emas com mudanças ápidas. “Lea n” des aca a necessidade de econhece e eagi a e os e o ac o de que os equisi os podem muda du an e o desen ol imen o [15]. 2.2.3 Fea u e D i en De elopmen (FDD) FDD é uma abo dagem ágil e adap a i o pa a o desen ol imen o de so wa e, concen ando-se nas ases de p oje o e cons ução [38][29]. Funciona ambém com ou as a i idades de um p oje o de desen ol imen o de so wa e [32] e não eque nenhum modelo de p ocesso especí ico a se usado. O FDD inclui o desen ol imen o i e a i o com as melho es p á icas encon adas pa a se em e icazes na indús ia. O mé odo FDD des aca os aspe os de qualidade em odo o p ocesso e inclui en egas equen es e angí eis, jun amen e com um acompanhamen o igo oso da e olução do p oje o [42]. FDD baseia-se em cinco p ocessos sequenciais ( igu a 4) e disponibiliza os mé odos, écnicas e di e izes necessá ias aos S akeholde s do p oje o pa a desen ol e o sis ema. Além disso, o FDD jun a unções, a e ac os, me as e c onog amas necessá ios em p oje os [32]. 23 Di e en e de algumas me odologias ágeis, o FDD conside a-se adequado pa a o desen ol imen o de sis emas c í icos [32]. A p imei a ez que se alou do FDD oi no ano de 2000. Foi en ão desen ol ido com base no abalho ei o pa a um g ande p oje o de desen ol imen o de so wa e po Je Luca, Pe e Coad e S ephen [45]. Papéis e Responsabilidades O FDD classi ica os seus papéis em ês ca ego ias: papéis cha e, papéis de apoio e unções adicionais [32]. Os seis p incipais papéis no p oje o FDD são ges o de p oje o, a qui e o che e, ges o de desen ol imen o, p og amado che e, p op ie á io de classe e especialis as de domínio. As cinco unções de supo e incluem o ges o de lançamen os, o Language Lawye /Language Gu u, o Build Enginee , o Toolsmi h e o adminis ado do sis ema. As ês unções adicionais necessá ias em qualque p oje o são as dos es ado es, deploye s e echnical w i e s. Um memb o da equipa pode desempenha á ias unções e uma única unção pode se compa ilhado po á ias pessoas [32]. P á icas do FDD O FDD consis e no conjun o de “melho es p á icas” e os desen ol edo es do mé odo a i mam que, embo a as p á icas selecionadas não sejam no as, a combinação especí ica desses ing edien es o na os cinco p ocessos do FDD exclusi os pa a cada caso [44]. Palme e Felsing [32] ambém de endem que odas as p á icas disponí eis de em se usadas pa a ob e o máximo bene ício do mé odo, já que nenhuma p á ica isolada domina odo o p ocesso. O FDD en ol e as seguin es p á icas [44]: 1. Modelação de Obje os de Domínio: Explo ação e explicação do domínio do p oblema, esul ando numa es u u a onde as Fea u es são adicionados; 2. Desen ol endo pelas Fea u es: Desen ol endo e seguindo a e olução a a és de uma lis a de pequenas unções decompos as e alo izadas pelo clien e; 3. P op iedade Indi idual da Classe (code): Cada classe em uma única pessoa nomeado pa a se o esponsá el pela consis ência, desempenho e in eg idade concep ual da classe; 24 4. Equipas po Fea u es: Re e e-se a equipas pequenas e dinamicamen e o madas; 5. Inspeção: Re e e-se ao uso de mecanismos mais conhecidos de de eção de de ei os; 6. Cons uções Regula es: Re e e-se a ga an i que haja semp e um sis ema em execução e demons á el, disponí el. Cons uções egula es o mam a linha de base na qual no as Fea u es são adicionadas; 7. Ges ão de Con igu ações: Pe mi e a iden i icação e a consul a do his ó ico das e sões mais ecen es de cada ichei o de código on e concluído; 8. Rela ó io de P og esso: O p og esso é epo ado com base no abalho comple o pa a odos ní eis o ganizacionais necessá ios. A equipa do p oje o de e coloca em p á ica odas as p á icas acima desc i as, pa a cump i com as eg as de desen ol imen o do FDD. No en an o, a equipa pode adap á-las de aco do com seu ní el de expe iência [44]. P ocessos FDD Como e e ido an e io men e, o FDD consis e em cinco p ocessos sequenciais du an e os quais o design e cons ução do sis ema são ealizados (Figu a 4). A pa e i e a i a dos p ocessos do FDD (Design e Cons ução) o e ece supo e ao desen ol imen o ágil, com adap ações ápidas a mudanças pos e io es nos equisi os e necessidades de negócio. No malmen e, uma i e ação de uma Fea u e en ol e um pe íodo de abalho de uma a ês semanas à equipa. Figu a 4 - P ocesso FDD [32] 25 A segui são desc i os cada um dos cinco p ocessos de aco do com [32] De elop an O e all Model. Quando o desen ol imen o de um modelo ge al começa, os especialis as do domínio já es ão cien es do p opósi o, con ex o e equisi os do sis ema a se cons uído[32], [35]. É p esumí el que exis am equisi os documen ados, como casos de uso ou especi icações uncionais, nes a ase. Toda ia, o FDD não abo da exp essamen e a ques ão de euni e ge i os equisi os. Os especialis as do domínio ap esen am um walk h ough no qual os elemen os da equipa e o a qui e o che e são in o mados da desc ição de al o ní el do sis ema [38]. Build a Fea u es Lis . As o ien ações, modelos de obje os e documen ação de equisi os disponí eis o necem um bom p incípio pa a a c iação de uma lis a comple a de Fea u es pa a o sis ema que es á a se desen ol ido. Na lis a, a equipa de desen ol imen o ap esen a cada uma das uncionalidades p opos a pelo clien e incluídas no sis ema. As uncionalidades são ap esen adas pa a cada um dos se o es do domínio e esses g upos de uncionalidades consis em nos chamados conjun os p incipais de Fea u es. Es es ep esen am a i idades di e en es den o de á eas de domínio especí icas. A lis a de Fea u es é e is a pelos u ilizado es e sponso s do sis ema pa a sua alidade e in eg idade. Plan by Fea u e. O planeamen o po Fea u e inclui a c iação de um plano de al o ní el no qual as á ias ea u es são sequenciadas de aco do com as suas p io idades e dependências e a ibuídas aos p og amado es p incipais ( e secção 2.5.3). Além disso, as classes iden i icadas no p ocesso (desen ol imen o de um modelo ge al) são a ibuídas a desen ol edo es indi iduais, ou seja, p op ie á ios de classes. Também o agendamen o e ma cos p incipais podem se de inidos pa a as á ias ea u es. Design by Fea u e and Build by Fea u e. Um pequeno g upo de ea u es é selecionado do(s) conjun o(s) de ea u es e as equipas de ea u es necessá ias pa a o desen ol imen o das ea u es selecionados são o madas pelos p op ie á ios da classe. Os p ocessos de design po ea u e e cons ução po ea u e são p ocedimen os i e a i os, du an e os quais as ea u es selecionadas são p oduzidos. Uma i e ação de e du a de alguns de dias a no máximo duas semanas. Pode ha e á ias equipas de ea u es a p oje a e a c ia simul aneamen e o seu p óp io conjun o de ea u es. Esse p ocesso i e a i o inclui a e as como inspeção de p oje o, codi icação, es e de 26 unidade, in eg ação e inspeção de código. Após uma i e ação bem-sucedida, as ea u es concluídas são p omo idos pa a cons ução p incipal, enquan o a i e ação de c iação começa com um no o conjun o de ea u es e i adas da lis a de ea u es. 2.2.4 Dynamic Sys ems De elopmen Me hod (DSDM) Desde a sua o igem, em 1994, o DSDM, o nou-se g adualmen e no amewo d núme o um pa a o desen ol imen o ápido de aplicações (RAD) no Reino Unido [30]. O DSDM é um amewo k sem ins luc a i os e não p op ie á ia pa a o desen ol imen o RAD [46], man ida pelo consó cio DSDM. O DSDM é um amewo k que ag ega g ande pa e do conhecimen o a ual sob e ges ão de p oje os. O DSDM es á en aizado na comunidade de desen ol imen o de so wa e, mas a con e gência de desen ol imen o de so wa e, engenha ia de p ocesso e, consequen emen e, p oje os de desen ol imen o de negócios mudou a es u u a do DSDM pa a se o na uma es u u a ge al pa a a e as complexas de solução de p oblemas [47]. A ideia p incipal po ás do DSDM é que, em ez de ixa a núme o de uncionalidades num p odu o e ajus a o empo e os ecu sos pa a alcança essas uncionalidades, é p e e í el ixa empo e ecu sos e em seguida ajus a a quan idade de uncionalidade de aco do com [48] Papéis e Responsabilidades O DSDM de ine 15 unções pa a u ilizado es e desen ol edo es. Os mais dominan es são lis ados a segui [30]. Desen ol edo e desen ol edo es senio es são os únicos papéis de desen ol imen o. A an iguidade é baseada na expe iência nas a e as que o desen ol edo ealiza. O í ulo de desen ol edo sénio ambém indica um ní el de lide ança na equipa. As unções de desen ol edo e desen ol edo sénio ab angem oda a equipa de desen ol imen o, seja analis a, p oje is as, p og amado es ou es ado es. Um coo denado écnico de ine a a qui e u a do sis ema e é esponsá el pela qualidade écnica do p oje o. Das unções do u ilizado , a mais impo an e é o de ambassado use . Os espe i os de e es são aze o conhecimen o da comunidade de u ilizado es pa a o p oje o e dissemina in o mações sob e o p eg esso do 33 P oduc Backlog. O P oduc Backlog é uma lis a o denada de udo o que é conhecido como necessá io no p odu o [54]. É a única on e de equisi os pa a quaisque al e ações a se em ei as no p odu o. O P oduc Owne é esponsá el pelo P oduc Backlog, incluindo o seu con eúdo, disponibilidade e pedido [25], [56]. À medida que um p odu o é usado e ganha alo , e o me cado o nece eedback, o P oduc Backlog o na-se numa lis a maio e mais exaus i a. Os equisi os nunca pa am de muda , po an o, o P oduc Backlog é um a e ac o i o. Al e ações nos equisi os de negócios, condições de me cado ou ecnologia podem causa al e ações no Backlog do P odu o [27]. Es a p á ica inclui as a e as pa a c ia a lis a de P oduc Backlog e con olá-la consis en emen e du an e o p ocesso, adicionando, emo endo, especi icando, a ualizando e p io izando os i ens do P oduc Backlog. A Tabela 5 ilus a um exemplo de um P oduc Backlog. Tabela 5 - Exemplo de i ens do P oduc Backlog, adap ado de Ab ahamsson e al. [42] P io idade I em Desc ição Tempo Es imado Responsá el Mui o. Al a 1 Conexão com Base de Dados 40 Fidel 2 … … … 3 Regis o de U ilizado es Ve ónica 4 … Média 5 Imp essão de Rela ó ios 6 … … … Sp in . Um sp in é uma unidade de planeamen o na qual o abalho a se ei o é a aliado, as ea u es são selecionadas pa a desen ol imen o e o so wa e é implemen ado [57]. Como já e e ido, cada sp in pode e a du ação de 2 a 4 semanas. No inal de um sp in , a uncionalidade comple a é en egue aos s akeholde s [25]. As e amen as de abalho da equipa du an e os sp in s ( e igu a 6) são: Sp in Planning Mee ings, Sp in Backlog e Daily Sc um Mee ings [54]. 34 Figu a 6 - P á icas e inpu s do sp in [27] Sp in Planning mee ing. Uma eunião de planeamen o de sp in é uma eunião com duas ases o ganizada pelo Sc um Mas e . Os clien es, u ilizado es, ges ão, P oduc Owne e Equipa Sc um pa icipam da p imei a ase da eunião pa a decidi sob e os obje i os e as uncionalidades do p óximo sp in ( e Sp in Backlog a segui ). A segunda ase da eunião é ealizada pelo Sc um Mas e e a Equipa Sc um, ocando-se na o ma como o inc emen o do p odu o se á implemen ado du an e o sp in [25]. Sp in Backlog. O Sp in Backlog é o pon o de pa ida pa a cada sp in . É uma lis a de i ens do P oduc Backlog selecionados pa a se em implemen ados no p óximo sp in . Os i ens são selecionados pela Equipa Sc um jun amen e com o Sc um Mas e e o P oduc Owne na eunião de planeamen o do sp in , com base nos i ens p io izados e me as de inidas pa a o sp in . Ao con á io do P oduc Backlog, o Sp in Backlog é es á el a é que o sp in (ou seja, 2 a 4 semanas) seja concluído. Quando odos os i ens no Sp in Backlog são concluídos, uma no a i e ação do sis ema é en egue [56]. Daily Sc um mee ing. As euniões diá ias do Sc um são o ganizadas pa a acompanha o p og esso da equipa Sc um con inuamen e e ambém se em como euniões de planeamen o: o que oi ei o desde a úl ima eunião e o que de e se ei o an es da p óxima. Também p oblemas e ou os assun os di e sos são discu idos e ap esen ados nes a eunião cu a (ap oximadamen e 15 minu os) ealizada dia iamen e. Quaisque de iciências ou impedimen os no p ocesso de desen ol imen o ou nas p á icas de engenha ia são p ocu ados, iden i icados e emo idos pa a 35 melho a o p ocesso. O Sc um Mas e conduz as euniões Sc um. Além da Equipa Sc um ambém a ges ão, po exemplo, pode pa icipa da eunião [56], [58]. Sp in Re iew mee ing. No úl imo dia do sp in , a Equipa Sc um e o Sc um Mas e ap esen am o esul ado (ou seja, o inc emen o de p odu o de abalho) do sp in pa a a ges ão, clien es, u ilizado es e o P oduc Owne numa eunião in o mal. Os pa icipan es a aliam o inc emen o do p odu o e omam a decisão sob e a i idades seguin es. A eunião de e isão pode aze no os i ens do Backlog e a é mesmo muda a di eção do sis ema que es á a se cons uído [56], [58]. Sp in Re ospec i e. A e ospe i a do sp in é uma eunião ealizada após a e isão do sp in e an es da p óxima eunião de planeamen o do sp in . Os memb os da equipa dão eedback sob e o sp in [56]. A equipa colabo a na iden i icação de algumas melho ias pa a u u os sp in s [58]. P ocessos Sc um O p ocesso Sc um inclui ês ases: p é-jogo, desen ol imen o e pós-jogo (Figu a 7). Figu a 7 - O p ocesso sc um [27] Em seguida, as ases do Sc um são ap esen adas de aco do com Schwabe [27] P é-Jogo. Es a ase inclui duas sub ases: a p imei a é o planeamen o que consis e na de inição do sis ema que es á a se desen ol ido. É c iado um P oduc Backlog, con endo odos os equisi os 36 a ualmen e conhecidos. Os equisi os podem e o igem no clien e, nas á eas en ol idas ou nos p óp ios desen ol edo es de so wa e. Os equisi os são p io izados e o es o ço necessá io pa a sua implemen ação é es imado. O P oduc Backlog é cons an emen e a ualizado com i ens no os e mais de alhados, bem como com es ima i as mais p ecisas e no as o dens de p io idade. O planeamen o ambém inclui a de inição da equipa do p oje o, e amen as e ou os ecu sos, a aliação de iscos e ques ões de con olo e necessidades de o mação. A cada i e ação, o P oduc Backlog a ualizado é e is o pela Equipa do Sc um, de modo a ob e o seu comp ome imen o com a p óxima i e ação. Fase de desen ol imen o ( ambém chamada de ase de Jogo). Es a é a pa e ágil da abo dagem Sc um. Es a ase é a ada como uma "caixa p e a" onde o imp e isí el é espe ado. As di e en es a iá eis ambien ais e écnicas (como p azo, qualidade, equisi os, ecu sos, ecnologias e e amen as de implemen ação e a é mé odos de desen ol imen o) iden i icadas no Sc um e que podem muda du an e o p ocesso, são obse adas e con oladas a a és de á ias p á icas Sc um du an e os sp in s. Na ase de desen ol imen o é possí el adap a com lexibilidade a essas mudanças. Cada sp in inclui as ases adicionais do desen ol imen o de so wa e, como o modelo em casca a po exemplo, mos ando-se a e olução do so wa e a cada sp in . Fase Pós-Jogo. Es a ase con ém o ence amen o e lançamen o do so wa e, em que odos os equisi os es ão implemen ados não sendo pe mi ido ac escen a no os equisi os. Funcionalidades do Sc um A me odologia Sc um (Figu a 8) é ideal pa a p oje os com equisi os em ápida mudança ou al amen e eme gen es. O abalho a se ei o num p oje o Sc um es á lis ado no P oduc Backlog ( e secção 2.2.5) [54]. No início de cada sp in , é ealizada uma eunião de planeamen o do sp in , du an e a qual o P oduc Owne p io iza o P oduc Backlog e a Equipa Sc um seleciona as a e as que podem se concluídas du an e o p óximo sp in [56]. As a e as são en ão mo idas do P oduc Backlog pa a o Sp in Backlog. Du an e o sp in , os desen ol edo es man êm-se a ualizados ealizando b e es euniões diá ias. No inal de cada sp in , a equipa demons a a uncionalidade concluída numa eunião de e isão do sp in [25]. 37 Figu a 8 - Visão Ge al do Sc um [59] Teo ia do Sc um O Sc um é baseado na eo ia empí ica de con olo de p ocessos, ou empi ismo. O empi ismo a i ma que o conhecimen o em da expe iência e da omada de decisões com base no que é conhecido [26], [56]. O Sc um emp ega uma abo dagem inc emen al e i e a i a pa a o imiza a p e isibilidade e con ola o isco [41]. Pa a Ken Schwabe and Je Su he land [25] são ês os pila es que sus en am oda implemen ação do con olo de p ocesso empí ico: anspa ência, inspeção e adap ação. T anspa ência. Aspe os signi ica i os do p ocesso de em se isí eis pa a os esponsá eis pelo esul ado. A anspa ência exige que esses aspe os sejam de inidos po um pad ão comum, pa a que os obse ado es compa ilhem um en endimen o comum do que es á a se is o [25]. Inspeção. Os u ilizado es do Sc um de em inspeciona equen emen e os a e ac os do Sc um e p og edi em di eção a uma me a do sp in pa a de e a a iações indesejá eis. A inspeção não de e se ão equen e que a apalhe o abalho. Inspeções são mais bené icas quando execu adas diligen emen e po inspe o es quali icados no local de abalho [25]. Adap ação. Se um inspe o de e mina que um ou mais aspe os de um p ocesso se des iam o a dos limi es acei á eis e que o p odu o esul an e se á inacei á el, o p ocesso ou o ma e ial que es á a se p ocessado de e se ajus ado. Um ajus e de e se ei o o mais ápido possí el pa a minimiza mais des ios [8]. 38 2.3 Compa ação de Mé odos Ágeis Nes a secção é ei a uma compa ação en e me odologias ágeis es udadas em e mos de pa âme os conside ados ele an es. A Tabela 6 ilus a a compa ação en e á ias abo dagens. Des aque pa a os pa âme os da me odologia Sc um, que é uma me odologia que pode se adequa a um p oje o de médio / g ande dimensão, além de ap esen a uma equipa in e io a 10 elemen os e múl iplas equipas. Fei a uma análise às á ias me odologias ap esen adas é possí el conclui que nenhum mé odo ap esen a odas as ca ac e ís icas necessá ias pa a um p ocesso de desen ol imen o de so wa e. A adoção de uma ou ou a me odologia depende do ipo do p oje o que se p e ende desen ol e , não exis indo uma me odologia melho ou pio . Tabela 6 - Compa ação dos mé odos ágeis es udados, adap ado de Ken Schwabe [26] Pa âme os de qualidade Ágil XP ASD FDD DSDM SCRUM P á icas de engenha ia Sim Sim Sim Sim Não P á icas de ges ão de p oje os Não Sim Sim Sim Sim Acei ação a mudança em cada i e ação Sim Sim Sim Sim Sim Re ac o ing Sim NE Não Não Não P og amação po pa es Sim NE Não Não Não P io ização de equisi os Sim NE Sim Não Não Tamanho do p oje o Pequeno / médio NE G ande G ande Médio / g ande Desen ol imen o o ien ado a es es Sim NE Não Não Não Au o-o ganização Não NE Sim Sim Sim Tes e uni á ios Sim NE Sim Sim Não Ní el de documen ação Menos NE Mais NE Mais Conceção Cen ada no código NE NE NE Cen ada na conceção Tamanho da equipa <10 NE NE NE <10 e múl iplas equipas NE: Não Especi icado 39 2.4 Técnicas de Modelação A modelação é uma componen e undamen al das a i idades que le am à conc e ização de sis emas de so wa e bem es abelecidos [60]. Segundo o Guia SWEBOK [61], “a modelação é uma écnica uni e sal pa a ajuda engenhei os de so wa e a en ende , concebe e comunica aspe os do so wa e às pa es in e essadas”. O SWEBOK di ide a modelação nos seguin es ópicos: p incípios de modelação; p op iedades e exp essão de modelos; sin axe, semân ica e p agmá ica de modelação; p é-condições, pós-condições e in a ian es. A c iação de modelos de um p oblema do mundo eal é undamen al pa a análise de equisi os de so wa e. O obje i o da modelação é ajuda a en ende a si uação em que o p oblema oco e, bem como desc e e uma solução [62]. Du an e o desen ol imen o de so wa e, mui a comunicação oco e, sendo apoiada po á ios ipos de no ações pa a ansmi i a mensagem. Um esboço de um layou do ec ã pode supo a a comunicação en e um u ilizado e um engenhei o de equisi os ou uma desc ição mui o mais o mal de in e aces de classe pode supo a a comunicação en e um designe e um desen ol edo [63]. Somme ille [15] de ine modelação de sis emas como um p ocesso de desen ol imen o de modelos abs a os de um sis ema, com cada modelo a ap esen a uma isão ou pe spe i a di e en e desse sis ema. Ge almen e, a modelação de sis emas signi ica ep esen a o sis ema usando algum ipo de no ação g á ica, que é quase semp e baseada em no ações da Uni ied Modeling Language (UML). As no ações mais comuns usadas pa a da supo e à comunicação en e os á ios in e essados no desen ol imen o de so wa e usam mui as ezes algum ipo de Diag ama de En idade e Relacionamen o (DER). Po ezes, esses diag amas êm semân ica mui o in o mal [62]. Po exemplo, as en idades podem deno a pa es do sis ema, onde não es á cla o o que é exa amen e um elemen o. Uma en idade pode deno a um subsis ema p incipal, ou a en idade pode deno a o conjun o de medidas de segu ança omadas. Da mesma o ma, linhas podem deno a uma elação de pa es, uma elação de chamada, uma elação de uso e assim po dian e [63]. 40 Segundo Somme ille [22], os modelos são usados du an e o p ocesso de engenha ia de equisi os pa a ajuda a ecolhe os equisi os de um sis ema, du an e o p ocesso de design, pa a desc e e o sis ema aos engenhei os que o implemen am e após a implemen ação pa a documen a a es u u a e o uncionamen o do sis ema. O aspe o mais impo an e de um modelo de sis ema é que ele não se oca nos de alhes. Um modelo é uma abs ação do sis ema em es udo e não uma ep esen ação al e na i a desse sis ema [60]. Idealmen e, uma ep esen ação de um sis ema de e man e odas as in o mações sob e a en idade que es á a se ep esen ada. Uma abs ação p oposi adamen e simpli ica e seleciona as ca ac e ís icas mais impo an es [22]. Nes a secção, são discu idas á ias no ações de modelação semi o mais. Algumas usam um layou mais ex ual. Os diag amas e esquemas são ge almen e desen ol idos du an e a engenha ia de equisi os e o design [64]. Algumas se em p incipalmen e a engenha ia de equisi os. Po exemplo, os diag amas de casos de uso ge almen e são u ilizados du an e a engenha ia de equisi os. Os diag amas de es u u a de Jackson, po ou o lado, são usados p incipalmen e du an e o design. Mui as no ações de modelação se em pa a ambas as ases [63]. A ualmen e, as p incipais no ações de modelação são p o enien es da Uni ied Modeling Language (UML). Mui os diag amas da UML, no en an o, são baseados ou de i ados no ações mais an igas. E ce amen e, em aplicações he dadas, é possí el depa a -se com mui as dessas no ações mais an igas [63]. Os a o es p incipais que in luenciam na escolha da no ação de modelação incluem [61]: A na u eza do p oblema. Alguns ipos de so wa e eque em que de e minados aspe os sejam analisados de o ma pa icula men e igo osa. Po exemplo, modelos pa amé icos, que pe encem ao SysML, p o a elmen e se ão mais impo an es pa a so wa e embebido do que pa a sis emas de in o mação, enquan o no malmen e se á o opos o pa a modelos de obje os e de a i idades; A expe iência do engenhei o de so wa e. Ge almen e, é mais p odu i o ado a uma no ação ou mé odo de modelação com o qual o engenhei o de so wa e enha expe iência; 41 Os equisi os de p ocesso do clien e. Os clien es podem impo sua no ação ou mé odo p e e ido ou p oibi qualque um com o qual não es ejam amilia izados. A modelação de so wa e é cada ez mais uma écnica di undida pa a ajuda os engenhei os de so wa e a en ende , p oje a e comunica aspe os essenciais do so wa e aos S akeholde s. Os S akeholde s são pessoas ou pa es com in e esse explíci o ou implíci o no p oje o de so wa e (e.g., u ilizado , comp ado , o necedo , a qui e o, a aliado , au o idade ce i icado a, desen ol edo , engenhei o de so wa e e ou os). Embo a exis am mui as linguagens, no ações, écnicas e e amen as de modelação na li e a u a e na p á ica, exis em concei os ge ais uni o mes que se aplicam de alguma o ma a odos eles [19], [62]. 2.4.1 P incípios de Modelação A modelação é uma abo dagem o ganizada e sis emá ica pa a ep esen a aspe os signi ica i os do so wa e em es udo, acili ando a omada de decisões sob e o so wa e ou seus elemen os e acili ando a comunicação dessas decisões a ou as pessoas na comunidade dos S akeholde s. Há ês p incípios ge ais que o ien am as a i idades de modelação [61]: 1. Model he Essen ials: bons modelos ge almen e não ep esen am odos os aspe os ou ecu sos de so wa e sob odas as condições possí eis. A modelação en ol e ipicamen e o desen ol imen o de aqueles aspe os ou ca ac e ís icas do so wa e que p ecisam de espos as especí icas, omi indo qualque in o mação não essencial; 2. P o ide Pe spec i e: a modelação o nece demons ações do so wa e em análise usando um conjun o de inido de eg as pa a exp essão do modelo. Essa abo dagem o ien ada po pe spe i a o nece dimensionalidade ao modelo (e.g., isão es u u al, isão compo amen al, isão empo al, isão o ganizacional e ou as isualizações ele an es). O ganiza as in o mações em isualizações concen a os es o ços de modelação de so wa e em p eocupações especí icas ele an es pa a essa isão, usando a no ação, o ocabulá io, os modelos e as e amen as ap op iados; 3. Enable E ec i e Communica ions: a modelação de e u iliza o ocabulá io especí ico do domínio. Quando usada igo osa e sis ema icamen e, essa modelação esul a numa 42 abo dagem que acili a a comunicação e e i a de in o mações pa a as pa es in e essadas do p oje o. Um modelo é uma abs ação ou simpli icação do sis ema, do so wa e ou de um componen e de so wa e. 2.4.2 Técnicas de Modelação Clássicas São ap esen adas qua o écnicas clássicas de modelação [63], écnicas es as que já exis em há um mui o empo: Diag ama de en idades e elacionamen os (ERD - En i y Rela ionship Diag am). É uma écnica de modelação de dados, iniciada po Chen nos anos se en a. Os diag amas de classe UML são baseados no ERD. Máquina de es ados ini os (FSM – Fini e S a e Machine). É usada pa a modela es ados e ansições de es ado. Nos p imei os empos do desen ol imen o de so wa e, ce os ipos de linguagens o mais, po exemplo usadas em compilado es, e am modeladas como máquinas de es ados ini os. Os diag amas de máquinas de es ado do UML são baseados em máquinas de es ados ini os. Diag amas de luxo de dados (DFD – Da a Flow Diag am). Modelam um sis ema como um conjun o de p ocessos e luxos de dados que conec am esses p ocessos. É a no ação usada na conceção do luxo de dados. Ca ões CRC (Class-Responsibili y-Collabo a ion). São uma e amen a simples de ob enção de equisi os. Mui as das in o mações ecolhidas em ca ões CRC podem se ep esen adas em diag amas de comunicação UML. Mui as ou as no ações de modelação clássicas exis em. Mui as des as es ão ligados a uma de e minada abo dagem ou mé odo de desen ol imen o [63]. As no ações de alhadas a segui são independen es do mé odo [63]. ❖ Diag ama de en idades e elacionamen os. Em sis emas com uso in ensi o de dados, a modelação da es u u a de dados é uma p eocupação impo an e [63]. A é à década de 1970, as 49 no ação. O de alhe e o igo de um modelo dependem de como se p e ende usá-lo. Exis em ês o mas pelas quais os modelos podem se usados [22]: 1. Como meio pa a acili a a discussão sob e um sis ema exis en e ou p opos o; 2. Como o ma de documen a um sis ema exis en e; 3. Como uma desc ição de alhada do sis ema que pode se usada pa a desen ol e uma implemen ação do sis ema. No p imei o caso, o obje i o do modelo é es imula a discussão en e os engenhei os de so wa e en ol idos no desen ol imen o do sis ema e o clien e. Os modelos podem es a incomple os (desde que cub am os pon os-cha e da discussão) e podem usa a no ação de modelação in o malmen e [15]. É assim que os modelos são no malmen e usados na chamada "modelação ágil" [66]. Quando os modelos são usados como documen ação, eles não p ecisam se comple os, pois pode-se deseja apenas desen ol e modelos pa a algumas pa es de um sis ema [15]. No e cei o caso, onde os modelos são usados como pa e de um p ocesso de desen ol imen o baseado num modelo, os modelos do sis ema de em se comple os, o mais e co e os. A azão pa a isso é que eles são usados como base pa a ge a o código- on e do sis ema. Po an o, é necessá io e o máximo igo uma ez que a ge ação pode se au oma izada [22], [67]. Diag amas UML Abo dam-se de seguida os diag amas UML mais impo an es, de o ma concisa e b e e, pe mi indo ilus a os aspe os mais signi ica i os dos mesmos. ❖ Diag ama de Casos de Uso. Um caso de uso (UC – Use Case) ep esen a uma in e ação en e um u ilizado e o sis ema [65]. A iden i icação dos UCs é mui o impo an e na medida em que des a o ma se ecolhem os equisi os uncionais do sis ema que se ai modela . Uma mais- alia des e p ocesso de ecolha de equisi os es á elacionada com o ac o de que é nes a ase que o clien e, ou u ilizado es, mais in e êm no p ocesso. É indica i o que a cap u a de equisi os seja ei a u ilizando o ocabulá io do u ilizado , pe mi indo assim diminui signi ica i amen e a 50 dis ância en e a equipa de p oje o e os seus concei os, e a isão do sis ema o necida po pa e de quem o ai u iliza [60]. Figu a 12 - Exemplo de um diag ama de casos de uso [60] Os diag amas de casos de uso (Figu a 12) são u ilizados pa a ilus a as espos as de um sis ema. Os diag amas de UC são especialmen e impo an es na o ganização e modelação de compo amen os espe ados do sis ema [65]. ❖ Diag ama de Sequência. Um diag ama de sequência é um diag ama de in e ação que en a iza a o dem do empo das mensagens [60]. Um diag ama de sequência mos a um conjun o de obje os e as mensagens en iadas e ecebidas po esses obje os [68]. Os obje os são ge almen e 51 ins âncias nomeadas ou anônimas de classes, mas ambém podem ep esen a ins âncias de ou as coisas, como colabo ações, componen es e nós. Os diag amas de sequência são usados pa a ilus a a isualização dinâmica de um sis ema [65]. A Figu a 13 ap esen a um diag ama de sequência onde se ilus a a maio ia dos concei os p esen es nes es diag amas: obje os, mensagens, pe íodos de ina i idade e ano ações ex uais [60]. Figu a 13 - Exemplo de um diag ama de sequência [15] Os diag amas de sequência são u ilizados semp e que se p e ende de alha o compo amen o de á ios obje os no con ex o de um cená io de um caso de uso. Pe mi em es abelece as ca ac e ís icas base da colabo ação en e os obje os e são uma ep esen ação de al o ní el do algo i mo que ai se implemen ado [60]. 52 Diag ama de in e ação é o nome dado a odos os diag amas de sequência jun amen e com os diag amas de colabo ação. Todos os diag amas de sequência e colabo ações são diag amas de in e ação [65] ❖ Diag ama de Classes. Os diag amas de classe exis en es em UML são semelhan es aos diag amas encon ados em odas as me odologias o ien adas aos obje os. O concei o de classe é um concei o cen al no pa adigma e qualque me odologia o ien ada aos obje os p i ilegia es a is a pois es á mui o p óxima dos concei os do pa adigma e das p óp ias linguagens de p og amação [60]. O diag ama de classes ilus a a componen e es u u al do sis ema e iden i ica cla amen e as classes, in e aces e espe i as elações exis en es no sis ema [65]. Os diag amas de classe são ambém um mecanismo necessá io pa a a c iação de ou os diag amas, como sejam os de componen es e de implemen ação (deploymen ) [60]. Em UML exis em gene icamen e cinco ipos di e en es de elacionamen o en e as classes (Figu a 14). Figu a 14 - Diag ama de classes com elações de di e so ipo [60] 53 Uma das an agens dos diag amas de classes é o ac o de pe mi i em que lhes seja adicionada in o mação sob e o es ado dos obje os, seus ipos de dados e ní el de isibilidade, sob e as ope ações e a sua assina u a. Pe mi em e e ua num ní el isual o mesmo es o ço que um p og amado az a ní el de uma linguagem de p og amação o ien ada a obje os, apenas não desc e endo os algo i mos das ope ações [60]. 2.5 A Técnica Fou S ep Rule Se – 4SRS A Técnica Fou S ep Rule Se - 4SRS [68], [70] é essencialmen e baseada no mapeamen o de diag amas de casos de uso em diag amas de obje os. Os diag amas de sequência, a i idade e es ado do UML e ou os a e ac os ambém podem se conside ados nas decisões de ans o mação. T ans o ma casos de uso em modelos de a qui e u a é uma a e a di ícil (conceção da solução), a écnica 4SRS (conjun o de qua o e apas) ajuda nessa a e a. Em al o ní el, a écnica 4SRS é o ganizada em qua o e apas (S ep 1 - Objec c ea ion, s ep 2 - Objec elimina ion, s ep 3 - Objec packing & agg ega ion e s ep 4 - Objec associa ion) pa a ans o ma casos de uso em obje os [72]. 2.5.1 S ep 1 - Objec c ea ion Nes a e apa, cada caso de uso de e se ans o mado em ês obje os (um de in e ace, um de dados e um de con olo). Cada obje o ecebe a e e ência do seu espe i o caso de uso anexando-se um su ixo (i, d, c) que indica a ca ego ia de obje o [72]. 2.5.2 S ep 2 - Objec elimina ion Nes a e apa, de e-se decidi qual dos ês obje os de e se man ido pa a ep esen a o almen e, em e mos compu acionais, o caso de uso, le ando em conside ação odo o sis ema e sem conside a cada caso de uso isoladamen e. Essas decisões de em se baseadas na desc ição ex ual de cada caso de uso. Es a e apa em como obje i o decidi quais dos obje os c iados na 54 e apa an e io de em se man idos no modelo do obje o. Es a e apa ambém supo a a eliminação de edundância na solici ação do u ilizado , bem como a descobe a de equisi os em al a [71]. 2.5.3 S ep 3 - Objec packing & agg ega ion Nes a e apa, os obje os não eliminados (aqueles que o am man idos após a execução da e apa 2), pa a os quais exis em an agens em se a ados de manei a uni icada, de em da o igem a ag egações ou paco es de obje os seman icamen e consis en es. Es a e apa supo a a cons ução de um modelo de obje os po encialmen e coe en e, pois ajuda na in odução de uma camada semân ica adicional num ní el de abs ação mais al o, que unciona como uma "cola uncional" pa a os obje os [72]. O packing é uma écnica ela i amen e ima u a, uma ez que in oduz uma coesão semân ica le e en e obje os. Essa coesão pode se acilmen e e e ida na ase de design, semp e que necessá io. Isso signi ica que o packing pode se usada com lexibilidade pa a pe mi i a ob enção empo á ia de modelos de obje os mais ab angen es e comp eensí eis [72]. Po ou o lado, a ag egação impõe uma o e coesão semân ica en e obje os. O ní el de coesão nas ag egações é mais di ícil de e e e nas p óximas ases do p oje o, o que suge e uma abo dagem mais esc upulosa ao usa esse ipo de "cola uncional". Isso signi ica que a ag egação de e se usada apenas quando o assumido explici amen e que o conjun o de obje os conside ados é a e ado po uma decisão de design conscien e [70]. 2.5.4 S ep 4 - Objec associa ion Es a e apa inal da écnica 4SRS supo a a in odução de associações no modelo de obje os, comple amen e baseadas nas in o mações exis en es no modelo de caso de uso. Em elação às in o mações do modelo de caso de uso, se as desc ições ex uais dos casos de uso possuí em dicas sob e o ipo de sequência em que os casos de uso são inse idos, essas in o mações de em se usadas pa a supo a a inclusão de associações no modelo de obje o [72]. 55 2.6 Conclusão Nes e capí ulo p e endeu-se da uma pano âmica sob e as me odologias ágeis de desen ol imen o de so wa e e das écnicas de modelação de so wa e. É impo an e pe cebe como é abo dado o p ocesso de desen ol imen o de sis emas de so wa e. Tendo em linha de con a os obje i os des a disse ação, ap esen ou-se as me odologias ágeis assim como as écnicas de modelação de so wa e. Deu-se especial des aque à me odologia Sc um como sendo de impo ância i al endo em con a ao ema des e abalho. O capí ulo que se segue az um es udo de alhado dos abalhos elacionados com o ema em discussão. 56 3. ESTUDO DAS ABORDAGENS EXISTENTES SOBRE AMBIENTES VISUAIS Es e capí ulo p e ende desc e e alguns abalhos que abo dam o ema em discussão. Fo am selecionados e es udados os abalhos mais ele an es e den e esses, são analisados com de alhe 4 abalhos que ap esen am segu ança em elação à sua idoneidade (po exemplo, e is a cien í ica pa a onde oi publicado o a igo cien í ico). Os modelos que se ão ap esen ados ans o mam equisi os ex uais, esc i os em linguagem na u al (NL), em modelos UML. É ei a uma b e e in odução sob e use s o ies na secção 3.1 e depois, nas secções seguin es são desc i os os abalhos selecionados. Na secção 3.6 é ei a uma análise compa a i a das abo dagens es udadas no sen ido de se a alia as an agens e des an agens das mesmas. Na secção 3.7 são desc i as ou as abo dagens não menos impo an es, mas que não me ece am uma a enção especial como as ou as 4 po não es a em mui o elacionados com a me odologia Sc um. 3.1 Use S o ies (US) As use s o ies são ases simples em linguagem na u al pa a desc e e com de alhe su icien e o con eúdo de uma ea u e a se implemen ado. As ases ge almen e con êm ês elemen os desc i i os da uncionalidade: quem (who), o que (wha ), po quê (why). É su icien e pa a desc e e a ase com a seguin e es u u a: como um “quem”, eu que o “o que” pa a que “po quê” [73]. O “quem” é o papel do u ilizado do sis ema. O “que” desc e e a ação que de e se possibili ada pelo sis ema e pe mi e ao u ilizado a ingi o obje i o mencionado no “po quê”. O “po quê” em a an agem de ga an i que a uncionalidade desc i a esponda a uma necessidade conc e a. 57 As use s o ies de em se independen es umas das ou as, o que pe mi i á que a equipa as conc e ize e a en egue sem a e a o conjun o de en egas. A p incipal an agem dessa abo dagem é que o oco é o u ilizado do sis ema. Espe a-se que cada US, uma ez implemen ada, ac escen e alo pa a o p odu o, independen emen e da o dem de implemen ação[3]. De aco do com Lucassen [73], use s o ies são uma no ação ex ual cada ez mais ado ada pa a cap u a de equisi os no desen ol imen o de so wa e. Os equisi os esc i os em NL são áceis de le , mas ap esen am uma g ande des an agem [74]: à medida que são esc i as mais US, ambém aumen a a quan idade de concei os en ol idos o que di icul a a cons ução de modelos p ecisos desses concei os [75]. 3.1.1 Use S o ies não são equisi os A sociedade de Compu ação do Ins i u o de Engenhei os Elé icos e Ele ónicos (IEEE) publicou um conjun o de o ien ações sob e como esc e e especi icações de equisi os de so wa e [76]. Es e documen o, conhecido como pad ão IEEE 830, az ecomendações que ab angem emas como a o ma de o ganiza o documen o de especi icação de equisi os, o papel dos p o ó ipos, e as ca ac e ís icas dos bons equisi os. A ca ac e ís ica mais dis in i a do pad ão IEEE 830 na especi icação de equisi os é o uso da ase “ O sis ema de e [...]”, que é a manei a ecomendada pelo IEEE pa a esc e e equisi os uncionais [37]. Um exce o ípico de uma especi icação IEEE 830 é semelhan e ao seguin e [37]: O sis ema de e pe mi i que uma emp esa pague po um anúncio de emp ego com ca ão de c édi o. • O sis ema de e acei a ca ões Visa, Mas e Ca d e Ame ican Exp ess; • O sis ema de e cob a o ca ão de c édi o an es que o lançamen o do abalho seja colocado no si e; • O sis ema de e o nece ao u ilizado um núme o de con i mação exclusi o. 58 Enquan o os equisi os suge em o que de e se ei o, as use s o ies ocam nos obje i os, e isso o na a isão do p odu o comple amen e di e en e. Ao concen a -se nos obje i os do u ilizado pa a o no o p odu o, ao in és de uma lis a de a ibu os do no o p odu o, segundo Beck [3] pode-se p oje a uma melho solução pa a as necessidades do u ilizado . A di e ença undamen al en e as use s o ies e o pad ão IEEE 830 de equisi os que oi abo dada em [37] e e e-se ao cus o, uma ez que um ou mais analis as passam dois ou ês meses a desen ol e o documen o de equisi os. Es e documen o é en ão en egue aos p og amado es, que po encialmen e descob em que o p oje o le a á 24 meses, ao in és dos seis meses p e is os. 3.2 Análise de abalhos selecionados Es a secção é dedicada a desc e e os abalhos selecionados que abo dam o ema em análise. Cada subsecção co esponde ao í ulo do espe i o abalho, p oposi adamen e, decidiu- se man e os í ulos dos abalhos discu idos na sua língua o iginal. 3.2.1 Model – D i en A chi ec u e Model – D i en A chi ec u e (MDA) é uma abo dagem pa a design, desen ol imen o e implemen ação de so wa e lide ada pela Objec Managemen G oup (OMG) [77]. O MDA o nece di e izes pa a es u u ação de especi icações de so wa e que são exp essos como modelos [78]. O MDA sepa a a lógica do negócio das aplicações da ecnologia. Modelos independen es da pla a o ma de uma aplicação ou compo amen o e uncionalidade de negócios do sis ema in eg ado, cons uídos usando UML e os ou os pad ões de modelação OMG associados, podem se ealizados a a és do MDA em p a icamen e qualque pla a o ma abe a, incluindo Web Se ices, NET, CORBA R, J2EE, XML Me ada a In e change (XMI) e ou os. Esses modelos independen es da pla a o ma documen am a uncionalidade e o compo amen o come cial de uma aplicação sepa ada do código especí ico da ecnologia que a implemen a, isolando o núcleo 65 3.2.4 Au oma ic builde o class diag am an applica ion o UML gene a ion om unc ional equi emen s Ou a abo dagem, é a p opos a po Ala a e No wawi [78]. Es a abo dagem consis e em mapea os equisi os do u ilizado pa a o diag ama de classes UML com base na abo dagem Model-D i en A chi ec u e (MDA). Os equisi os do u ilizado são conside ados como modelo de o igem ep esen ado no ex o p ocessado (decomposição do ex o em ases, pala as, ca ego ias g ama icais, dependências sin á icas, e c.). O diag ama de classes UML é conside ado como modelo de des ino em con o midade com um ichei o XML/XMI como me a-modelo de des ino. As ans o mações de me a-modelos ga an em um mapeamen o do ex o p ocessado num ichei o XMI. Qualque sis ema baseado em MDA de e e a capacidade de a mazena , ge i e publica me a-dados no ní el do sis ema e aplicação, a im de o nece con e sões p ecisas de PIM (Pla o m Independen Model) pa a PSIM (Pla o m Speci ic Model)[78]. No amewo k MDA, um modelo é semp e ep esen ado po um me a-modelo. O me a- modelo de ine a linguagem usada pa a explica as elações en e os componen es do modelo [78]. A Figu a 20 ap esen a o p ocesso de ans o mação MDA aplicado a es e p oje o. Figu a 20 - P ocesso de ans o mação MDA [73] 66 P ocesso de T ans o mação O p ocesso de ans o mação do modelo p opos o consis e em: i. P ocessa o ex o elacionado aos equisi os do u ilizado (modelo de o igem), o esul ado é um ex o p ocessado (modelo de des ino); ii. De inição de eg as de pad ão ( ans o mações de me a-modelo) que assegu em a ans o mação do ex o p ocessado num ichei o XMI (me a-modelo-al o); iii. Ge a o diag ama de classes a pa i do ichei o XMI. O luxo do p ocesso do modelo em es udo nes a secção é ap esen ado na Figu a 21. Figu a 21 - Fluxo do p ocesso ABCD [73] Os au o es conside am que a écnica p opos a pode bene icia an o do pode de ex ação das US do u ilizado como do abalho de ans o mação já ealizado na abo dagem MDA. O bene ício em aplica uma abo dagem MDA eside na sua capacidade de acili a o abalho da equipa de desen ol imen o e do P oduc Owne . Em ge al, a écnica pode se aplicada num p ocesso de desen ol imen o de so wa e e num con ex o MDA pa icula [78]. 67 3.2.5 An Au oma ed Tool o Gene a ing UML Models om Na u al Language Requi emen s Deep imahan i e Sanyal [83] desc e em uma e amen a independen e do domínio, denominada Uml Model Gene a o Analysis o Requi emen s (UMGAR), que ge a modelos UML, como diag ama de casos de uso, diag ama de classes, diag ama de sequência e diag ama de colabo ação. A UMGAR ambém o nece um analisado XMI gené ico pa a ge a ichei os XMI pa a isualiza os modelos ge ados em qualque e amen a de modelação UML. P ocesso de T ans o mação O S an o d Pa se [84] é usado pa a analisa luxos básicos e al e na i os no modelo de especi icação de casos de uso pa a iden i ica eme en e, des ina á io e as mensagens en e eles. A UMGAR ge a um modelo de classes a pa i do diag ama de colabo ação ge ado, no qual a o es e obje os iden i icados no diag ama de colabo ação são conside ados classes de design [85]. As mensagens en e obje os são ex aídas como mé odos que os associam as classes co esponden es usando o S an o d Pa se e ex aindo ambém elacionamen os de associação de sequências de luxo de e en os. Finalmen e, a UMGAR ge a modelos de código baseado em Ja a usando o ecu so de ge ação de código do En e p ise A chi ec pa a demons a a as eabilidade en e equisi os e código usando o ecu so de localização de concei o [86]. A Figu a 22 mos a a a qui e u a de p ocesso da UMGAR. Figu a 22 - A qui e u a de P ocesso da UMGAR [78] 68 As an agens da UMGAR são a ge ação em pouco empo de modelos UML com elacionamen os adequados e o p ocesso de lida com conhecimen o de domínio usando e amen as e icien es de NLP. A UMGAR é capaz de isualiza diag amas UML em qualque e amen a de modelação UML que possui o ecu so de impo ação XMI. UMGAR ap esen a algumas limi ações, po que não pode se u ilizado em ou os p ocessos de modelação e es á condicionada caso a e amen a UML não ap esen e ecu so de impo ação XMI. 3.3 Análise compa a i a No ou-se a a és do es udo de algumas abo dagens, que em ha ido es o ços pa a explo a as ecnologias baseadas em NLP pa a au oma iza a ase de análise de equisi os. Nes a secção, é o necida uma b e e análise compa a i a das abo dagens es udadas e suas espe i as limi ações que o necem a mo i ação pa a o ambien e isual que se á p opos o pa a es a disse ação. Tabela 7 - Compa ação en e as abo dagens es udadas, adap ado de Abdouli, Ka aa and Ghezala [85] Au o Abo dagem Técnicas usadas Saída Van agens Des an agens Elallaoui, Na il e Touahni (2018) Abo dagem Elallaoui, Na il e Touahni. NLP Diag ama de casos de uso -Facilidade de análise das US; -Redução do empo na ge ação de diag amas de casos de uso em elação à modelação manual; -Ge ação au omá ica de diag amas UML. -Não supo a ases com subs an i os compos os; -Não implemen a elacionamen os como gene alização / especialização en e a o es; -Os a o es, casos de uso e sua elação são iden i icados manualmen e; -Não supo a elacionamen os de inclusão e exclusão en e casos de uso. 69 Elallaoui (2015) Abo dagem Elallaoui. Algo i hm Diag ama de sequência - Ge ação au omá ica de diag amas UML; -Acei a como en ada uma ase simples em linguagem na u al, que espei e a sin axe ge al das US. -Ge a apenas diag amas de sequência; -Não acei a na en ada ases demasiadas ex ensas. Ala a e No wawi (2016) ABCD NLP+ Pa e n - Diag ama de classe -T ans o mação ge a esul ados co e os; -A combinação de NLP e Pa e n. -Não ge a odos os diag amas UML. Deep imahan i e Sanyal (2011) UMGAR NLP Código -Iden i icação au omá ica de elemen os OO -Ge ação de diag amas de classes e diag amas de es ado não bem ealizados; -Reque in e ação humana pa a elimina classes i ele an es e pa a iden i ica ag egação / composição. Analisando as qua o écnicas ap esen adas na abela, e olhando com des aque pa a a abo dagem p opos a po Elallaoui, Na il e Touahni, no a-se que es a abo dagem ap esen a an agens como a acilidade de análise de use s o ies que é um aspe o impo an e pa a a abo dagem a se p opos o. Ou a an agem des a abo dagem é o empo eduzido com que os casos de uso são ge ados uma ez que o p ocesso é au omá ico o que não acon ece no p ocesso manual. Apesa das an agens e e idas, es a abo dagem ap esen a algumas des an agens que a o na limi ada, po exemplo a não implemen ação de elacionamen o como gene alização / especialização en e casos de uso. Ou a abo dagem a se des acada é a p opos a po Elallaoui em 2015. Es a abo dagem ge a au oma icamen e diag amas de sequência UML, mas o ac o de ge a apenas diag amas de sequência o na es a abo dagem limi ada. Em suma, o ambien e isual a se p opos o de e combina e melho a odas as ca ac e ís icas conside adas ele an es das qua o abo dagens ap esen adas. 70 3.4 Ou as p opos as Es a secção em como obje i o desc e e sucin amen e ou as abo dagens analisadas pa a além das 4 an e io es acima ap esen adas. Es as abo dagens o am p e e idas das demais po não oca em o seu es udo em me odologias ágeis em ge al, e mui o menos na me odologia Sc um que é a me odologia pela qual o ambien e isual a p opo p e ende apoia . Ap esen a-se a segui uma b e e a desc ição de cada abo dagem. Gulia e Choudhu y [87] a i ma am que o p incipal p oblema que su ge no ciclo de desen ol imen o de so wa e su ge du an e a especi icação de equisi os. Os e os encon ados du an e a p imei a ase do ciclo ambém mig am pa a ou as ases, o que esul a num p ocesso mais dispendioso do que o especi icado inicialmen e. Pa a minimiza os e os que su gem no sis ema exis en e, oi p opos a uma écnica que ap imo a a ge ação de modelos UML po meio de equisi os de linguagem na u al, que podem acilmen e o nece assis ência au omá ica aos desen ol edo es. O oco oi a p odução de diag amas de a i idades e diag amas de sequência. He chi e Abdessalem [81] num ou o abalho, p opõem uma abo dagem pa a acili a a ex ação de diag amas de classes a pa i de equisi os ex uais usando écnicas de NLP e on ologia de domínio. A azão des a p opos a é que a ansição de equisi os de u ilizado pa a diag amas UML é uma a e a di ícil pa a o design, especialmen e quando lida com ex os g andes que exp essam essas necessidades. A modelação de diag amas de classes de e se execu ada com equência, mesmo du an e o desen ol imen o de uma simples aplicação. SUGAR é uma abo dagem p opos a po Deep imahan i e Baba [88], a p opos a consis e em ge a casos de uso e diag amas de classe a pa i de equisi os de NL. Mo e e Phalnika [89] u iliza am um algo i mo e implemen a am uma e amen a p o ó ipo chamada RAPID, pa a ge a diag amas UML a pa i de especi icações NL. Mo os e al. [90] p opõem uma écnica pa a in eg a equisi os de especi icação ex ual na abo dagem MDSD (Model D i en So wa e De elopmen ), usando écnicas p óp ias MDSD, me a-modelos e ans o mações. Os me a-modelos de inidos pela abo dagem incluem um pa a especi icação de equisi os e ou o pa a as eabilidade en e equisi os. 71 3.5 Conclusão O es udo das abo dagens exis en es sob e ambien es isuais mos ou que os in es igado es es ão a abalha no sen ido de au oma iza cada ez mais a ge ação de diag amas UML a pa i dos equisi os especi icados em linguagem na u al. Mas as écnicas es udadas ainda não cob em odas as necessidades. Ve i icou-se ambém que nenhuma das abo dagens es udadas abo da ou az e e ência à p io ização de equisi os de negócio que são os obje i os pelos quais o p oje o é ealizado. O p esen e abalho, a im de con ibui pa a a solução do p oblema das limi ações ap esen adas pelas abo dagens exis en es, i á p opo uma abo dagem baseada no amewo k MDA pa a ans o ma especi icações de equisi os em diag amas UML que a enda às necessidades da equipa Sc um assim como à p io ização de equisi os. 72 4. DEFINIÇÃO DE UM AMBIENTE VISUAL PARA APOIAR O SPRINT E PRODUCT BACKLOG É ap esen ada nes e capí ulo a abo dagem de ambien e isual p opos a pa a o cump imen o do obje i o des a disse ação. São desc i as odas as ca ac e ís icas da abo dagem e no inal do capí ulo a p opos a é alidada a a és de um es udo de caso. A p opos a oi concebida com base nas abo dagens ap esen adas no capí ulo an e io , endo em con a as suas ca ac e ís icas ele an es. Foi ainda desen ol ido um p o ó ipo de so wa e pa a ajuda na ans o mação de use s o ies em diag amas de casos de uso. O p incipal obje i o do p o ó ipo de so wa e é a alidação do concei o como ideia (p oo o concep ), não sendo, po an o, o oco p incipal des e abalho. 4.1 Abo dagem p opos a Após uma análise das p opos as disponí eis sob e ambien es isuais (usando modelos da linguagem de modelação UML) no con ex o das me odologias ágeis no ge al e do Sc um em pa icula , o am iden i icados á ios aspe os impo an es, os quais o am conside ados pa a a abo dagem p opos a. No en an o, ambém oi possí el a iden i icação de aspe os menos posi i os que se p e endem colma a . Nes e sen ido, p e ende-se que a abo dagem p opos a ap esen e as seguin es ca ac e ís icas p incipais: con e são de use s o ies (US) em casos de uso (UC) que ap esen a os equisi os uncionais do sis ema (seleção do P oduc Backlog); p io ização de equisi os que ag eguem alo pa a o negócio com base em a o es de in luência, como cus o, alo de negócio, isco, empo, impo ância e ou os; con e são de diag amas de casos de uso a a és da u ilização do mé odo Fou S ep Rule Se (4SRS) pa a ob enção de diag amas de obje os da a qui e u a global como ou pu . Pa a melho a a comp eensão e a colabo ação en e clien e / u ilizado , P oduc Owne (PO), desen ol edo es e es ado es e eduzi signi ica i amen e o empo e pe mi indo a implemen ação e icien e do sis ema, é jus i icá el que o p ocesso de ans o mação de use s o ies pa a casos de uso seja au omá ico cump indo assim com uma das 73 ecomendações do Sc um de que o empo máximo de execução de um sp in é não supe io a 4 semanas. Mais ainda, ecomenda-se que seja possí el ex ai diag amas de classes a pa i de casos de uso no sen ido de se auxilia o PO na omada de decisão a a és de análise do modelo de diag ama de classe esul an e quando são in oduzidos / ge ados no os modelos de diag amas de casos de uso. Quando são implemen ados no os casos de uso, as mudanças no modelo de diag ama de classe de em se obse adas isualmen e dando des a o ma ao PO uma maio capacidade de análise às mudanças no diag ama de classes e assim pode oma uma decisão na seleção de use s o ies. Pa a ge ação au omá ica de casos de uso, se á necessá io o desen ol imen o de um so wa e (um p o ó ipo) que e á a esponsabilidade de ge a os casos de uso a pa i de equisi os do sis ema esc i os como use s o ies. Po au omá ico, signi ica que os modelos (a e ac os) são ans o mados usando uma linguagem de ans o mação ou com base em alguma ação que o modelado (u ilizado da e amen a) execu a com a e amen a (pa a a qual a e amen a es á p og amada pa a esponde ) ou a é mesmo com base em eg as pelas quais oi p og amada pa a esponde a algum e en o pa icula sem qualque ação do modelado . Po semiau omá ica en ende-se que a e amen a supo a decisões que o modelado em que aze , pe mi indo-lhe ep esen á-las nos diag amas [72]. O aumen o da comunicação en e odos os s akeholde s 3 de um p oje o le a a uma iden i icação mais iá el das a e as a se em execu adas num sp in . A abo dagem de e p omo e uma comunicação mais p o unda sob e os casos de uso e a e as en e memb os da equipa. O Fou S ep Rule Se - 4SRS é um mé odo que pe mi e a ans o mação dos equisi os do u ilizado numa ep esen ação do modelo a qui e u al [71],[91], median e a aplicação de um conjun o de qua o passos. Es ão disponí eis duas pe spe i as do 4SRS: a o ien ada ao p odu o (conhecida como 4SRS p oduc le el) e a o ien ada ao p ocesso (conhecida como 4SRS p ocess 3 É um g upo de pessoas que possuem uma pa icipação num negócio. Uma pessoa como uncioná io, clien e ou alguém que es eja en ol ido com uma o ganização, sociedade e c. e, po an o, enha esponsabilidades em elação a ela e in e esse no seu sucesso. (h ps://dic iona y.camb idge.o g/p /diciona io/ingles/s akeholde ) 74 le el). A p imei a u iliza os equisi os de um ou mais p odu os, a segunda u iliza equisi os de um ou mais p ocessos de negócio [92]. Pa a es a disse ação, u ilizou-se a abo dagem o ien ada ao p ocesso (4SRS p ocess le el) que se á designada nes e documen o de mé odo 4SRS ou simplesmen e 4SRS. A. L. Fe ei a, Machado e Paulk [93] p opõem o uso de uma pe spe i a do ní el de p ocesso pa a de inição de equisi os e p odução do modelo lógico da a qui e u a do sis ema em de imen o da pe spe i a do ní el de p odu o de inida adicionalmen e. Es es alegam que “usa uma pe spe i a do ní el de p ocesso, em ez de uma pe spe i a do ní el de p odu o, con ibui pa a uma de inição mais p ecisa de equisi os do p odu o e melho a a comp eensão do p oje o“ [93]. O 4SRS ecebe como inpu s um conjun o de casos de uso que desc e em os equisi os pa a o (s) p ocesso (s) especí ico (s) que abo da (m) a ques ão inicial, as a i idades ealizadas po pessoas ou máquinas, no con ex o do sis ema os casos de uso são e inados a a és de á ias i e ações do 4SRS. No inal da execução de odas as e apas que cons i uem o mé odo, ob ém-se como ou pu , uma a qui e u a lógica global [71]. O ciclo de ida do ambien e isual é di idido em duas ases p incipais (Figu a 23), Planeamen o do Sp in (Fase 1) e a Execução do Sp in (Fase 2). 81 nenhum so wa e ou ex ensão. Pa a es e abalho oi u ilizada a e amen a Lucidcha pa a desenha o ambien e isual p opos o e ambém ou os diag amas necessá ios pa a es e abalho. Ja a Ja a é uma linguagem de p og amação e oi escolhida pa a implemen a o so wa e p o ó ipo esponsá el na con e são de use s o ies em casos de uso. Com es a e amen a / ecnologia é possí el execu a e desen ol e p og amas Ja a com dois ipos de componen es, o JDK (Ja a De elopmen Ki ) que é u ilizado pa a desen ol e p og amas e o JRE (Ja a Run ime En i onme ) pa a execu a . No u ilizado é p eciso ins ala somen e o JRE já que se á necessá io apenas execu a o sis ema de so wa e. Eclipse O Eclipse é um ambien e de desen ol imen o pa a p og amas Ja a, po ém é possí el u iliza o Eclipse pa a desen ol imen o nou as linguagens de p og amação como C / C++ a pa i de ins alação de plug-ins. No Eclipse é possí el c ia um p oje o, ealiza as codi icações e ambém e i ica logs 4 de execução. Visual Pa adigm O Visual Pa adigm (Vp-UML) é uma e amen a CASE UML que supo a UML 2, SysML e Business P ocess Modeling No a ion (BPMN) do Objec Managemen G oup (OMG). É uma e amen a mui o u ilizada no me cado de desen ol imen o de so wa e. O Visual Pa adigm oi u ilizado nes e abalho pa a ealiza a modelação de diag amas UML. O Visual Pa adigm supo a a ges ão de equisi os, incluindo US, UC, diag amas de equisi os SysML e análise ex ual. Um diag ama de equisi os SysML especi ica a ea u e ou condição que de e se en egue no sis ema de des ino. O Visual Pa adigm o e ece supo e pa a ou os ipos de diag amas UML. 4 É uma lis a de in o mações de aplicações, desempenho do sis ema ou a i idade do u ilizado . 82 Plan UML Plan UML é uma e amen a que pe mi e aos u ilizado es ge a diag amas UML a pa i de uma linguagem de ex o simples [97]. A linguagem usada pelo Plan UML é chamada de linguagem especí ica da aplicação, pois só unciona pa a a e amen a Plan UML. Plan UML em si, é um so wa e Open Sou ce, ha endo plug-ins de UML de áb ica pa a á ios so wa es comuns, como Eclipse, Ne Beans, Mic oso Wo d, LaTex, e c. [97]. Plan UML é a e amen a de modelação ado ada pa a o desen ol imen o do p o ó ipo de so wa e, po se uma e amen a baseada na desc ição de ex o legí el basicamen e em al o ní el pa a desenha os diag amas UML com maio acilidade e apidez [97],[98]. 4.2.3 Iden i icação de a o es e caso de uso nas use s o ies Ao analisa use s o ies e casos de uso, uma ca ac e ís ica que causa ia um p oblema se ia que a unção numa use s o y é semelhan e a um a o no modelo de caso de uso, enquan o o p opósi o ou desejo numa use s o y é semelhan e a um caso de uso. Segundo o es udo ealizado em [99], em ez de es a di e amen e elacionado às use s o ies, os modelos de caso de uso podem elaciona -se indi e amen e com as US, po meio de Epics. Epics são g andes use s o ies que podem se ainda mais decompos as em á ias use s o ies meno es com o in ui o de simpli ica o desen ol imen o de So wa e [99]. Um Epic é uma use s o y de maio dimensão que é g ande demais pa a se implemen ada numa única i e ação, po an o, p ecisa se di idida em pequenas use s o ies. Em [100] os au o es pe cebe am que, mesmo que as use s o ies possam não se di e amen e compa í eis com caso de uso, os Epics, que são maio es e mais amplos no p opósi o, p o a elmen e são. Pode se is o na Figu a 24 a elação exis en e en e Epics e casos de uso. 83 Figu a 24 - Use s o ies, Epics e co esponden e diag ama de caso de uso [94] 4.2.4 Iden i icação de elacionamen o include de use s o ies O exemplo ap esen ado a segui na Figu a 25 ilus a a ligação en e use s o ies, Epics e elacionamen o de inclusão num modelo de caso de uso. Po exemplo, numa Biblio eca, quando um u en e que ese a um li o, o Biblio ecá io p ecisa aze o seguin e [94]: • Ve i ica se o u en e é álido (u en e egis ado); • Ve i ica se o u en e em li os po de ol e . Figu a 25 - Use s o ies, Epics e modelo de caso de uso com elacionamen o de inclusão [94] 84 4.2.5 Iden i icação de elacionamen o ex end de use s o ies Pa a exempli ica o elacionamen o ex end, conside ou-se o seguin e exemplo [94]. Se o Biblio ecá io encon ou li os encidos, ele p ecisa emi i uma mul a. Como é um compo amen o opcional, ele pode se mos ado como um elacionamen o de ex ensão. É ilus ado na Figu a 26 as use s o ies, Epics e modelo de caso de uso com um elacionamen o de ex ensão. Figu a 26 - Use s o ies, Epics e modelo de caso de uso com elacionamen o de ex ensão [94] 4.3 P o ó ipo pa a a ans o mação de use s o ies em casos uso (US-> UC) Um diag ama con ex ual da a qui e u a do p o ó ipo de so wa e é ap esen ado a segui na Figu a 27, em conjun o com o p ocesso manual de ans o mação de use s o ies em Epics e o p ocesso exis en e (Eclipse e Plan UML). 85 Figu a 27 - Diag ama con ex ual da A qui e u a do p o ó ipo de so wa e Em seguida se ão apenas desc i os alguns elemen os is o que os ou os já o am ap esen ados quando se abo dou o ipo de e amen as e ecnologias usadas ( e secção 4.2.2), e i ando-se des a o ma a epe ição de in o mação. So wa e O so wa e a desen ol e pode á ans o ma um g upo de use s o ies em diag amas de caso de uso UML. O obje i o p incipal des e p o ó ipo de so wa e é au oma iza o p ocesso de ans o mação de use s o ies pa a casos de uso o que ajuda á na diminuição do empo de execução dessa a i idade. EPIC Como já de inido, um Epic é uma use s o ies maio que é g ande demais pa a se implemen ado numa única i e ação, po an o, p ecisa se di idido em pequenas use s o ies. Nes e abalho oi ado ado a u ilização de Epics de ido a elação di e a que es es ap esen am com casos de uso con o me o es udo ap esen ado po Madanayake, e al. [101]. Os Epics são ob idos a pa i de um conjun o de use s o ies num p ocesso ainda não au omá ico. 86 Código da Fe amen a Plan UML Es e bloco ap esen a o código da e amen a Plan UML ge ado po in e médio de so wa e a se desen ol ido. Es e código da Plan UML implemen ado num ichei o sem í ulo no ambien e eclipse em como ou pu o diag ama que ep esen a o modelo de caso de uso desejado. Modelo de Diag ama de caso de uso (Use Case Model) Use Case Model é o esul ado de ans o mação de Epics em código da e amen a Plan UML. Es e modelo, é o esul ado que se p e ende a ingi com o desen ol imen o des e p o ó ipo de so wa e. 4.3.1 P o ó ipo de so wa e Se á usado o ambien e de desen ol imen o eclipse, pa a a qual o plug-in UML oi ins alado. Nes a secção, é analisada b e emen e a sin axe do código da linguagem Plan UML. Cada bloco de código Plan UML começa com uma ins ução @s a uml e e mina com ins ução @enduml. O código en e essas ins uções decidi á que ipo de diag ama UML p e endemos ob e no inal [97], [98]. A Figu a 28 ap esen a um exemplo de código da linguagem Plan UML. Figu a 28 - Código Plan UML que mos a um modelo de caso de uso simples [96] A Plan UML pode unciona sem o Eclipse, mas é execu ada apenas na linha de comandos. Pa a o ná-lo mais ácil de usa , oi ins alado o Eclipse e impo ado o Plan UML como um plug-in pa a se execu ado no Eclipse. Isso é necessá io, po que é p eciso adiciona a aba Plan UML ao Eclipse abe o, indo em Windows> ShowView> O he > e seleciona Plan UML na janela Show View [97]. @s a uml le o igh di ec ion Lib a ian --> (Issue Books) @enduml 87 O p o ó ipo de so wa e desen ol ido mos ou se capaz de con e e use s o ies em casos de uso a a és de um p ocesso indi e o, ou seja, a pa i de Epics. Apenas um modelo de caso de uso básico exis e no momen o, mas o p o ó ipo a ual se e como p o a de concei o da ideia. Na Figu a 29 pode se is o o esul ado des a ope ação. Figu a 29 - Diag ama de caso de uso ge ado pelo p o ó ipo 4.4 Es udo de Caso pa a alidação da p opos a Es a secção desc e e o p opósi o do sis ema que se á usado como base de es udo pa a a ca ac e ização de um ambien e isual pa a apoia as ce imónias do Sc um e ap esen a os diag amas de casos de uso e diag ama de componen es / obje os, u ilizando a no ação UML. Se á ainda analisada a lis a de equisi os o necida pa a o p oje o Uni ied HUB o Sma Plan s ( UH4SP) [70]. Se á ap esen ada a execução do mé odo 4SRS e a a és de sucessi as i e ações se á de i ada e e inada a a qui e u a do sis ema necessá ia pa a uma boa análise dos equisi os do u ilizado . 4.4.1 Desc ição do P oje o UH4SP Ga an i o p odu o co e o, no empo ce o, quan idade exa a, no des ino p og amado pela pessoa au o izada, em pe ei as condições e ao melho p eço é o desa io a ual das unidades indus iais. Pa a al, é necessá io concebe um sis ema de ges ão e o imização logís ica baseada em concei os ecnológicas, e amen as e me odologias eme gen es no con ex o de sis emas indus iais baseadas na in e ne . 88 A isibilidade, segu ança e con olo nas ope ações de ca ga e desca ga e na mo imen ação de p odu os, ia u as e pessoas, au oma ização de p ocessos e a colabo ação com os di e sos agen es ao longo da cadeia de alo , são e o es undamen ais na o imização logís ica das emp esas indus iais. O es udo de caso a a de um sis ema de pesagem indus ial e so wa e pa a au oma ização de p ocessos ope acionais de indús ias com es as necessidades, baseado em di e sos domínios ecnológicos da indús ia 4.0. O p oje o UH4SP em como obje i o o desen ol imen o de uma a qui e u a de so wa e o ien ada a se iços e soluções ecnológicas, inco po ando o pa adigma de IoT (In e ne o Things) e indús ia 4.0, que p omo am a isão co po a i a e ag egada de ope ações de unidades indus iais dispe sas po á ias á eas, a a és de acessos emo os e locais. Engloba a cons ução de e amen as colabo a i as e ans e sais, o imização das ope ações e da expe iência de u ilização nas unidades indus iais e po úl imo, a iabilidade do sis ema. Sendo assim, o oco nes a secção é a de i ação da a qui e u a lógica do p oje o UH4SP que e li a os equisi os do u ilizado . A Figu a 30 ilus a as e apas que se ão seguidas pa a a ob enção da a qui e u a lógica. Figu a 30 - Passos pa a conceção da a qui e u a lógica do p oje o UH4SP,adap ado de Machado e al. [102] Na secção 4.4.2 é abo dado o p ocesso de modelação de equisi os (1) e de seguida ap esen a-se a execução do mé odo 4SRS (2) e a a és de sucessi as i e ações se ão de i adas a qui e u as lógicas pa a cada sp in indi idualmen e (3). No inal, se á analisada a a qui e u a ob ida e se á ei a uma análise compa a i a com uma a qui e u a exis en e do mesmo p oje o 89 (ob ida com um a amen o global de odos os equisi os) no sen ido de se a alia se há di e enças signi ica i as em e mos de obus ez. 4.4.2 Requisi os de so wa e Es a secção abo da o p ocesso de ans o mação da lis a de equisi os em Epics e pos e io men e em casos de uso. Sendo assim, pa a ep esen a os equisi os o pon o de pa ida é a análise e iden i icação de uncionalidades do sis ema, assim como os S akeholde s que cons i uem o sis ema, de aco do com a unção de cada um, a a és de casos de uso. Os in e enien es são ep esen ados em o ma de a o es, que possuem uma ou mais uncionalidades, ep esen adas em o ma de casos de uso. No sen ido de acili a o p ocesso ou a é lida com casos de uso de maio complexidade na modelação, os casos de uso podem se e inados a a és da decomposição dos mesmos, conside ando-se as uncionalidades de mais al o ní el, ipicamen e designados de ní el 0. A Figu a 31 ap esen a os ní eis que pode ão se u ilizados pa a de ini as uncionalidades do sis ema, no o ma o de uma “á o e”. Na p imei a camada (ní el 0) são ep esen ados os equisi os mais abs a os que es ão elacionados ao ní el mais al o de e inamen o, e assim em dian e. Com es e e inamen o de al o ní el, os equisi os são aduzidos nas unções de sis ema e se ão aqueles em que o luxo de ope ações se á desc i o. No sen ido de acili a a as eabilidade, suge e-se a u ilização de nume ação nos casos de uso e ní eis dessa mesma nume ação. Po exemplo, um caso de uso de ní el al o {UC1}, a decomposição da mesma no ní el um esul a ia em {UC1.1}, {UC1.2} e ao ní el 2 {UC1.1.1}, e assim em dian e. 90 Figu a 31 - Decomposição de casos de uso em ní eis [102] É ambém de salien a que os equisi os a ados no p esen e es udo de caso apenas dizem espei o aos equisi os uncionais. 4.4.3 S o y Poin s e p io ização de equisi os S o y poin s é uma unidade de medida pa a exp essa uma es ima i a do es o ço ge al que se á necessá io pa a implemen a o almen e um i em (uma use s o y) do P oduc Backlog [103]. Quando ealizamos uma es ima i a com s o y poin s, a ibui-se um alo em pon os a cada use s o y. Os alo es b u os que a ibuímos não são impo an es. O que impo a são os alo es ela i os [103]. P oje os de so wa e possuem um al o g au de ince eza. Mesmo que os desen ol edo es ou um consul o o neçam uma es ima i a do p oje o, a é o desen ol imen o começa , é di ícil sabe exa amen e o que é necessá io pa a implemen a as use s o ies planeadas pa a as e sões. No en an o é ce o que pa a ga an i que o p oje o se á um sucesso, de e-se usa mé odos de p io ização, que ajudem a pe cebe quais use s o ies de em se abo dadas p imei o. As me odologias ágeis de desen ol imen o de so wa e o nam-se cada ez mais popula es à medida que a pala a se espalha sob e os bene ícios o e ecidos em ce as condições do p oje o. Uma ca ac e ís ica cha e de qualque abo dagem ágil é o seu oco explíci o na c iação de alo de negócio pa a os clien es [103]. Essencialmen e, em p oje os ágeis de so wa e, o 97 O uso de abelas pe mi e que um conjun o de e amen as seja c iado e cons uído pa a que as ans o mações possam se pa cialmen e au oma izadas. Essas ep esen ações abula es cons i uem o mecanismo p incipal pa a au oma iza um conjun o de e apas de ans o mação de modelo assis ida po decisão. O 4SRS em sido usado an o nas ins i uições de ensino como na indús ia [104] e em demons ado se ágil pa a ajuda os engenhei os de so wa e a encon a e e ina os equisi os de a qui e u a, com base nos equisi os do u ilizado in oduzidos. A qui e u a Lógica pa a sp in 1 Pa a a de i ação da a qui e u a lógica pa a o sp in 1, o am u ilizados os casos de uso ap esen ados na Figu a 33, nomeadamen e os casos de uso {UC1} e {UC2} esul an es das p imei as 10 use s o ies p io izadas. Passo 1 (S ep 1) – Objec c ea ion / Componen c ea ion Na Tabela 9 ap esen a-se o passo 1 do 4SRS, no exemplo a ans o mação dos casos de uso {UC2.1} Manage local IT esou ces e {UC2.2} Schedule in e en ions em componen es. A execução do passo 1 do caso de uso {UC2.1} esul ou na c iação de ês componen es: {C2.1.c}, {C2.1.d} e {C2.1.i}, bem como a espe i a desc ição. Tabela 9 - Demons ação da execução do passo 1 do 4SRS S ep 1 - Componen c ea ion Use Case Desc ip ion {UC2.1} Manage local IT esou ces {C2.1.c} Gene a ed C {C2.1.d} Gene a ed C {C2.1 i} Gene a ed C {UC2.2} Schedule in e en ions {C2.2.c} Gene a ed C {C2.2.d} Gene a ed C {C2.2.i} Gene a ed C 98 Passo 2 (S ep 2) – Objec elimina ion / Componen elimina ion Nes e passo, odos os elemen os “C” c iados no passo 1 são subme idos a p ocesso de eliminação. Du an e a execução des e passo, são c iados “C” e eliminados “C”. Es e passo é o mais c í ico e mais ex enso dos 4 passos que compõem o mé odo 4SRS, pois, pa a além de eliminação, ambém se ão alidados nes e passo os componen es de inidos no passo 1 (Componen c ea ion). É nes e passo que ambém os componen es alidados es ão ep esen ados na a qui e u a lógica do p oje o UH4SP que se á cons uída. Es e passo é decompos o em 8 mic o passos, nomeadamen e: (2i) – Use case iden i ica ion, (2ii) – Local elimina ion, (2iii) – Componen naming, (2i ) – Componen desc ip ion, (2 ) – Objec ep esen a ion, (2 i) – Global elimina ion, (2 ii) – Componen enaming e (2 iii) – Componen speci ica ion. Baseando-se no caso de uso escolhido pa a o con ex o de demons ação e pelo ipo (desc ição ex ual de caso de uso), são alidados os obje os, do passo 1 (S ep 1), que ga an em a execução do caso de uso não conside ando os es an es – mic o passos 2i e 2ii, co esponden es à p imei a alidação, assim como mos ado na abela 10, é de inido uma designação pa a cada obje o alidado (mic o passo 2iii) e depois, uma desc ição endo em con a o seu compo amen o (mic o passo 2i ). A abela 10 ap esen a os mic o passos 2i, 2ii, 2iii e 2i , co espondendo à classi icação e eliminação de Componen es, bem como a nomeação e desc ição (dos não eliminados) dos casos uso {UC2.1} e {UC2.2}. Tabela 10 - Demons ação dos mic o passos 2i, 2ii, 2iii e 2i S ep 2 – Componen elimina ion 2i 2ii 2iii 2i di (UC2.1 - Manage local IT esou ces) T F In e en ion and main enance da a O obje o gua da odos os dados elacionados com a manu enção ou in e enção. F Ve i y in e en ion in e ace De ine a in e ace que pe mi e que o adminis ado do sis ema e os ges o es de IT 99 e i iquem as necessidades de in e enção / manu enção que podem se agendadas. di (UC2.2 - Schedule in e en ions) T F S o e in e en ions da a A mazena os dados das in e enções. F Schedule in e en ions in e ace De ine a in e ace que pe mi e ao adminis ado do sis ema e ao ges o IT p og ama em in e enções que pe mi em ge i assis ência aos ecu sos de IT das unidades indus iais. A p imei a coluna do passo 2 (S ep2) co esponde à execução do mic o passo 2i. Nes e mic o passo, o am classi icados os dois casos de uso em análise como uma das 8 combinações ou pad ões di e en es (Ø, i, c, d, ic, di, icd). A ideia po de ás dessa classi icação é ajuda na ans o mação de cada caso de uso em componen es. Essa classi icação o nece ia dicas sob e quais ca ego ias de componen es usa e como conec a esses componen es / obje os. Pa a o caso de demons ação, {UC2.1} Manage local IT esou ces oi classi icado como ipo “di”, o que signi ica que são man idos os componen es (in e ace e dados) e {UC2.2} Schedule in e en ions oi classi icado como ipo “di” ambém, o que signi ica que apenas o componen e do ipo con olo se á eliminado no mic o passo 2ii, enquan o os componen es do ipo in e ace e dados se ão man idos. A segunda coluna do passo 2 co esponde à execução do mic o passo 2ii. O obje i o des e mic o passo é esponde se cada componen e c iado no passo 1 (Tabela 9) az sen ido no domínio do p oblema, uma ez que a c iação de componen es no passo 1 oi execu ada cegamen e, não conside ando o con ex o do sis ema pa a a c iação dos componen es. Os componen es a se em eliminados são ma cados com “T - T ue” e os componen es que de em se man idos são ma cados com “F - False” como se pode e na Tabela 10 acima. Pa a o caso de demons ação {UC2.1} eliminou-se apenas o componen e do ipo con olo, pois o mesmo não az sen ido no domínio do p oblema. 100 A e cei a coluna do passo 2 co esponde à execução do mic o passo 2iii. Nes e mic o passo, os componen es que não o am eliminados no mic o passo an e io ecebe am um nome p óp io que e le e an o o caso de uso no qual ele é o iginado quan o o papel especí ico do componen e, le ando em con a o seu componen e p incipal. Pa a o caso de uso de demons ação, os componen es {C2.1.d} e {C2.1.i}, po exemplo, o am denominados de In e en ion and main enance da a e Ve i y in e en ion in e ace espe i amen e. No mic o passo 2i , cada componen e nomeado esul an e do mic o passo an e io oi desc i o, pa a que os equisi os do sis ema que ep esen am sejam incluídos no modelo de componen es. Essas desc ições basea am-se nas desc ições do caso de uso o iginal co esponden e. Na quin a coluna do passo 2 (Tabela 11) co esponde a execução do mic o passo 2 subdi idido em duas colunas ( ep esen ed by e ep esen ). Es e é o mic o passo mais c í ico da écnica 4SRS, uma ez que supo a a eliminação de edundância na de inição de equisi os do u ilizado , bem como a descobe a de equisi os em al a. A coluna “ ep esen ed by” gua da a e e ência do componen e que ep esen a á o componen e em análise. Se o componen e analisado o ep esen ado po ele mesmo {C2.1.d}, a coluna co esponden e “ ep esen ed by” de e se e e i a ele mesmo. A coluna “ ep esen ” gua da as e e ências dos componen es que o componen e analisado i á ep esen a e não delega em ou os componen es a sua ep esen ação (i.e., é ep esen ado po si mesmo) e adicionalmen e ep esen a uma lis a conside á el de ou os componen es (cada um desses componen es de e e e i -se a componen e que os ep esen a nas suas colunas “ ep esen ed by”) ( e na abela 11, a célula a cinza signi ica que é ep esen ada pela célula a la anja). 101 Tabela 11 - Demons ação da execução dos mic o passos 2 - 2 iii S ep 2- Componen elimina ion 2 2 i 2 ii 2 iii (UC2.1 - Manage local IT esou ces) {C2.1.d} {C2.2. d} {C2.3.c} F In e en ion and main enance da a O obje o gua da odos os dados elacionados com a manu enção ou in e enção. {C2.1.i} F Ve i y in e en ion in e ace De ine a in e ace que pe mi e que o adminis ado do sis ema e os ges o es de IT e i iquem as necessidades de in e enção / manu enção que podem se agendadas. (UC2.2 - Schedule in e en ions) {C2.2.d} T {C2.2.i} F Schedule in e en ions in e ace De ine a in e ace que pe mi e ao adminis ado do sis ema e ao ges o IT p og ama em in e enções que pe mi em ge i assis ência aos ecu sos de IT das unidades indus iais. O mic o passo 2 i é o almen e “au omá ico”, já que é baseado nos esul ados do an e io (mic o passo 2 ). Os componen es ep esen ados po ou os de em se eliminados, pois os seus equisi os do sis ema são cump idos po ou os componen es. A oi a a coluna do passo 2 co esponde à execução do mic o passo 2 ii. Es e mic o passo em como inalidade a enomeação dos componen es que não o am eliminados no mic o passo an e io e que ep esen am componen es adicionais. Os no os nomes de em e le i a pleni ude dos equisi os do sis ema. Pa a demons ação, o obje o {C2.1.d} oi enomeado como In e en ion and main enance da a, is o que as a i idades e as a e as são idên icas e que os a o es en ol idos são os mesmos. O passo seguin e é semelhan e à execução do passo 2ii. Uma ez que es es ago a ep esen am casos de uso adicionais pa a além dele mesmo, es es ago a se ão nomeados (coluna 4 da abela 11) e eesc i os (coluna 5), sendo que de em e le i o con ex o global do sis ema. 102 Passo 3 (S ep 3) – Objec packaging & agg ega ion / Componen packaging & agg ega ion A décima coluna co esponde à execução do passo 2. Nes e passo, os componen es que não o am eliminados na execução do passo 2 de am o igem a ag egação ou paco es e componen es seman icamen e consis en es. Pa a a c iação das Ag ações oi conside ado o modelo como um odo. Fo am c iados paco es que ag egam os componen es que colabo am pa a a execução de uma mesma a e a do p oje o UH4SP, si uada num ní el de abs ação supe io . Como ap esen ado na Tabela 12, e i ica-se que os componen es que não o am eliminados após a execução do passo 2 de am o igem ao paco e {P3} Indus ial main enance. Como o caso de uso {C2.1.d} S o e in e en ions da a não sob e i eu ao passo 2 , não se p eenchem os campos seguin es. Tabela 12 - Demons ação da execução dos passos 3 e 4 do mé odo 4SRS S ep 3 - Packing & Agg ega ion S ep 4 - Componen Associa ion 4i 4ii {P3} Indus ial main enance {C2.1. i} {C2.2. i} {C2.3. i} {P3} Indus ial main enance {C2.1. d} {P3} Indus ial main enance {C2.1. d} Na Tabela 12 a coluna 2 co esponde à execução do passo 4. Pa a o caso de demons ação, as associações o am de i adas da classi icação de casos de uso execu ado no passo 1. Ou seja, como e i icado na abela acima, a segunda coluna ep esen a as associações di e as enquan o a e cei a coluna (na abela ge al do mé odo 4SRS e p imei a coluna na abela acima) ep esen a as associações de i adas da classi icação dos casos de uso (não es á ep esen ada nenhuma associação de i ada de classi icação de caso de uso nes e exemplo). A classi icação de {U2.1} como ipo “di” suge e a exis ência das seguin es associações em elação aos componen es 103 ge ados a pa i do mesmo caso de uso: o componen e {C2.1.i} es á elacionado ao componen e {C2.1.d} e es e po sua ez es á elacionado aos componen es {C2.2.i} e {C2.3.i}. Pa a mais de alhes e a a qui e u a lógica esul an e. No inal da execução da écnica 4SRS, o caso de uso encon a-se uncionalmen e decompos o, o que ai se i como base pa a a modelação de a qui e u a lógica. A Tabela 13 ap esen a a abela ge al esul an e das ans o mações ei as pa a os casos de uso {UC2.1) e {UC2.2}. A abela 13 inclui as decisões omadas pa a os casos de uso da demons ação. Tabela 13 - Resumo das 4 abelas que ap esen am a execução da écnica 4SRS A Tabela esul an e da aplicação da écnica 4SRS pa a o p imei o sp in pode se consul ada no Anexo III. Es a abela con ém odas as decisões omadas du an e o p ocesso da aplicação da écnica. Com base nes as decisões oi de i ada a a qui e u a lógica do sp in 1 do p oje o UH4SP, cons i uída pelos componen es de so wa e que es a am após o passo 2, ag egados em paco es, con o me de inido após o passo 3 e com luxos de in o mação en e eles. S ep 1 - Componen c ea ion S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Componen associa ion Use Case Desc ip ion 2i 2ii 2iii 2i 2 2 i 2 ii 2 iii {UC2.1 } Manage local IT esou ces di {C2.1.c } Gene a ed C T {C2.1. d} Gene a ed C F In e en ion and main enanc e da a … {C2.1. d} {C2.2. d} {C2.3.c} F In e en io n and main enan ce da a … {P3} Indus ial main enance {C2.1. i} {C2.2. i} {C2.3. i} {C2.1. i} Gene a ed C F Ve i y in e en ion in e ace … {C2.1. i} F Ve i y in e en io n in e ace … {P3} Indus ial main enance {C2.1. d} {UC2.2 } Schedule in e en ions di {C2.2.c } Gene a ed C T {C2.2. d} Gene a ed C F S o e in e en ion s da a … {C2.1. d} T {C2.2. i} Gene a ed C F S o e in e en ion s in e ace … {C2.2. i} F Schedule in e en io ns in e ace … {P3} Indus ial main enance {C2.1. d} 104 A composição da a qui e u a do sp in 1 é de 11 casos de uso que esul a am em 23 obje os / componen es e 3 paco es. Os 3 paco es ep esen am alguns p ocessos do p oje o UH4SP, designadamen e: (P2) “Accoun s”, (P3) “Business Managemen ” e (P4) “Indus ial Main enance”. Uma a qui e u a lógica pode se conside ada, segundo Aze edo [91], como “uma e isão de um sis ema compos o po conjun o de abs ações de p oblemas especí icos que supo am os equisi os uncionais”. Assim sendo, a a qui e u a lógica do UH4SP é compos a po um conjun o de abs ações de a i idades que compõem os equisi os uncionais des e p oje o. A Figu a 34 ap esen a a a qui e u a lógica do p imei o sp in do p oje o UH4SP, ap esen ando paco es que ag egam odos os obje os da a qui e u a lógica implemen ada. Es es paco es ep esen am as a i idades de al o ní el de abs ação do UH4SP, como al podem se conside ados como o p imei o ní el de abs ação. Figu a 34 - A qui e u a lógica do sp in 1 O modelo lógico ap esen ado acima ep esen a o a amen o das p imei as 10 use s o ies selecionadas e pos e io con e são des as em casos de uso. Es es casos de uso o am e inados num ní el a qui e ónico e execu ados explici amen e num ní el de desen ol imen o de se iço baseado em componen es. 105 Depois de ob e esse no o modelo de obje o / componen es e inados de a qui e u a, os se iços subjacen es podem se desc i os po um conjun o de diag amas pa a especi ica os componen es a qui e ónicos co esponden es e p oje a um diag ama de classes pa a ca ac e ização es á ica do componen e de se iço. A qui e u as Lógicas dos p in s 2 a 5 Os passos pa a o p ocesso de execução do mé odo 4SRS com obje i o da ob enção do diag ama lógico, são os mesmos pa a os es an es sp in s pelo que não se ão demons ados os passos pa a es es sp in s, limi ando-se apenas a explica os pon os essenciais e na ap esen ação dos diag amas de componen es esul an es. Sp in 2 Tal como no sp in 1, o sp in 2 esul ou da segunda seleção das use s o ies que conside amos se em mais impo an e endo em con a ao alo de negócio pa a o clien e. Assim sendo, e seguindo os mesmos passos já explicados, p ocedeu-se a ex ação do Epic co esponden e às use s o ies núme os “14, 15, 21, 22, 23, 27, 35, 36, 39 e 40”. As use s o ies o am depois ag upadas de aco do com a elação que a mesma man ém uma com a ou a. O p imei o subg upo é compos o po 4 use s o ies odas elacionadas e des as esul ou o Epic na Figu a 35 e do Epic oi ex aído o caso de uso co esponden e. EPIC: - As a Sys em Adminis a o , Co po a e Manage , Clien , Supplie , Fo wa de , IT Manage and Fac o y Admin, I wan o gi e ucks, de elop dashboa ds, con igu e dashboa ds and da a sou ce, o… Use Case: - {UC1.7} Con igu e use s’ p o ile Figu a 35 - Epic e espe i o caso de uso pa a o sp in 2 O caso de uso ob ido depois oi decompos o em casos de usos {UC1.7.1} Manage p o iles e {UC1.7.2} Assign pe missions. 106 A use s o y “As a Fo wa de admin o sys ems admin, I wan o CRUD aile s in o de o manage aile s” az pa e do segundo subg upo icando sozinha po não ap esen a explici amen e uma elação com as ou as use s o ies selecionadas pa a es e sp in . A Figu a 36 ap esen a o Epic e caso de uso esul an e dessa use s o y. EPIC: - As a Fac o y admin o sys em admin, I wan o manage aile s, o… Use Case: - {UC1.8} Manage aile s Figu a 36. Epic e caso de uso do segundo subg upo de use s o ies O e cei o subg upo é compos o pelas use s o ies ap esen adas na Figu a 37, assim como o Epic esul an e e espe i o caso de uso. As a Sys em adminis a o , Co po a e manage , Company manage , and Fac o y manage , Fo wa de , Clien o Supplie , I wan o con igu e dashboa ds se ings in o de o con igu e dashboa ds. As a Company manage I wan o eques , ead, upda e and disable wo k okens in o de o manage wo k okens o my Company ac o ies. As a Fac o y manage I wan o eques , ead, upda e and disable wo k okens in o de o manage wo k okens o my ac o y. As an En i y ( o wa de , clien o supplie ) manage I wan o assign d i e s and ucks o wo k okens ha we e associa ed o my en i y in o de o manage wo k okens. As a Sys em admin I wan o ecei e a no i ica ion when a s akeholde /en i y manage eques wo k okens in o de o alida e wo k okens. EPIC: - As a Sys em Adminis a o , Co po a e manage , Company manage , Fac o y manage , Fo wa d manage , Clien o Supple , I wan o manage wo k okens, company ac o ies and alida e okens, o… Use Case: - {UC1.3.1} Manage wo k okens Figu a 37 - Use s o ies, Epic e caso de uso O caso de uso {UC1.3.1} Manage wo k okens oi e inado a a és do p ocesso da decomposição esul ando nos seguin es casos de uso: (1) {UC1.3.1.1} Valida e okens, (2) 113 O paco e “{P2} Accoun s” execu a uma sé ie de uncionalidades elacionadas com a con igu ação de con as e pe is dos u ilizado es, assim como ambém az a ges ão dos s akeholde s. O paco e “{P3} Business Managemen ” pe mi e ao u ilizado aze a ges ão de negócios das o ganizações assim como ambém é ei a nes e paco e a ges ão de pla a o mas do p oje o UH4SP. Ou o paco e que apa ece no diag ama lógico modelado, é o “{P4} Indus ial Mai en ance” que é o esponsá el pela ges ão da pla a o ma que con ém os equisi os elacionados com a moni o ização e manu enção das áb icas, nomeadamen e a manu enção das máquinas que dão o igem à in o mação que depois é u ilizada pela pla a o ma. A a qui e u a ap esen a ambém as associações en e componen es / obje os de so wa e de aco do com a e apa núme o 4 do mé odo 4SRS. As associações ep esen adas em linhas acejadas ep esen am as associações de diag amas de casos de uso e as ep esen adas em linhas e as, são as ep esen an es das associações di e as. 4.5 Compa ação de a qui e u as Es a secção em como obje i o compa a a a qui e u a lógica global (Diag ama de paco es) ap esen ada acima com a a qui e u a esul an e do p ocesso adicional (Wa e all). A Figu a 44 ap esen a as duas a qui e u as jun as lado a lado. 114 Figu a 44 - Compa ação de a qui e u as lógicas (Diag ama de paco es) Obse ando as duas a qui e u as, acilmen e no amos que a a qui e u a da di ei a (a qui e u a ob ida com aplicação da abo dagem) es á mui o p óxima em e mos de esul ados com a a qui e u a da esque da (a qui e u a exis en e, ob ido po p ocesso adicional). A a qui e u a ob ida ap esen a um esul ado semelhan e em compa ação com a ob ida com aplicação do mé odo adicional (Wa e all) o que o na a abo dagem p opos a uma al e na i a pa a a esolução do p oblema da complexidade nos sis emas de so wa e, uma ez que a a qui e u a esul a de casos de uso e inados a a és da u ilização do mé odo 4SRS que elimina os componen es edundan es assim como adiciona componen es em al a. 4.6 Conclusão Nes e capí ulo oi abo dada a ques ão cen al des a disse ação, ap esen ando-se udo aquilo que oi ealizado. Sendo que o obje i o p incipal oi a ca ac e ização de um ambien e isual de apoio as ce imónias do Sc um (baseada em écnicas de modelação) começou-se po aze a 115 p io ização dos equisi os do sis ema ecolhidos em o ma de use s o ies e depois de p io izadas, as use s o ies o am con e idas em casos de uso a a és da u ilização do mé odo indi e o ap esen ado na secção 4.2, os casos de uso ob idos se i am como en ada pa a o mé odo 4SRS. Como esul ado das a i idades an e io es, is o é, le ando em con a odos os equisi os modelados e e inados, p ocedeu-se à de i ação das a qui e u as pa icula es de cada sp in e no inal essas a qui e u as indi iduais o am ag upadas numa única a qui e u a global. No o al o am a ados 35 casos de uso, 4 paco es e 56 componen es. Com a alidação da abo dagem no p oje o UH4SP, e i icou-se a exis ência de bene ícios, ais como o esul ado das a qui e u as pa ciais ob idos de cada sp in o na ácil aze a análise do alo de negócio das use s o ies selecionadas pa a aquele sp in e a po encial qualidade na a qui e u a global (em e mos de esul ados espe ados). A alidação oi conside ada um sucesso, na medida em que odos sp in s ge a am a qui e u as lógicas acei á eis e des e modo diminuindo a complexidade no p oje o. A a qui e u a global oi compa ada com a esul an e do p ocesso adicional (Wa e all) e concluiu-se que a a qui e u a ob ida com a aplicação da abo dagem p opos a ap esen a um esul ado p óximo da a qui e u a ob ida com a abo dagem adicional. 116 5. CONCLUSÕES E TRABALHO FUTURO Nes e capí ulo ap esen a-se as p incipais conclusões des e abalho de in es igação. Es as conclusões abo dam os p incipais esul ados e con ibuições des e p oje o. São ap esen adas ainda a segui , as p incipais limi ações des e es udo. O capí ulo e mina, com suges ões de abalhos u u os. 5.1 Conclusões O p esen e abalho oi ealizado com o obje i o de p opo um ambien e isual pa a apoia as ce imónias do Sc um, baseado nas écnicas de modelação UML. Es e abalho p e ende con ibui pa a o nece um en endimen o comum e melho ado a odos os in e enien es no p ocesso de desen ol imen o de so wa e, cump indo as exigências da abo dagem Sc um. A emá ica de ges ão de p oje os de so wa e, com odos os con ex os associados, não é uma ques ão biná ia de mé odos ágeis con a mé odos adicionais. Embo a exis a uma cla a dis upção de pensamen os en e ambas as endências, exis em pon os de con ac o e de co elação que de em se explo ados e adap ados de modo a conjuga o melho dos dois mundos. A necessidade de especi icação o mal e de de inição de a qui e u as sólidas na ase de design dos mé odos ágeis. A p opos a de um ambien e isual en a in oduzi a a iá el e e en e à agilidade numa écnica (4SRS) mais ocacionada à sua in eg ação nos mé odos mais adicionais e o mais. A me odologia Sc um é uma me odologia ão le e e desp o ida de e e ências elacionadas com a cons ução do p odu o que nem semp e é conside ada uma me odologia. Sc um é um amewo k no qual as pessoas podem abo da p oblemas adap a i os complexos, ao mesmo empo em que en egam, p odu i a e c ia i amen e, p odu os do mais al o alo possí el. No seu e e encial, o Sc um indica e en os, papéis e a e ac os que, se u ilizados de o ma 117 co e a, conseguem p a icamen e au oge i uma equipa que enha um ele ado g au de comp ome imen o elacionado com o abalho a execu a . Rela i amen e aos obje i os p opos os nes e abalho, o am analisadas as me odologias ágeis de desen ol imen o de so wa e, com des aque pa a o Sc um que oi analisado com ex ensi o de alhe, o e ecendo uma pano âmica de uncionamen o de ciclo i e a i o, ou sp in , explicando as esponsabilidades de cada elemen o na equipa Sc um, de alhando os a e ac os que a mesma pode u iliza pa a o na o sp in mais p odu i o, e ainda explicando a cadência e es u u a de cada e en o necessá io pa a comple a o ciclo. Fo am ainda es udadas as écnicas de modelação de so wa e com especial des aque pa a as écnicas baseadas na no ação UML. Fo am explicados os p incipais diag amas que compõem a no ação UML, nomeadamen e o diag ama de casos de uso, diag ama de classe, diag amas de sequências, componen es e ou os. En e odos, deu-se maio a enção aos diag amas de casos de uso e de classes (diag ama de obje os) po se em os diag amas que o am u ilizados no âmbi o des e abalho ( equisi os e a qui e u a). No capí ulo 3 o am analisadas algumas p opos as de ambien es isuais exis en es na li e a u a com o obje i o de o nece em uma isão ab angen e do ambien e isual que se ia p opos o no capí ulo seguin e. Fo am es udas as p incipais ca ac e ís icas e no inal oi ei a uma compa ação no sen ido de se a alia as an agens e des an agens de cada uma das abo dagens. Adicionalmen e, oi desen ol ido um p o ó ipo de so wa e que con e e uma ce a au oma ização à abo dagem p opos a. O p o ó ipo con e e use s o ies em diag amas de casos de uso. Também oi especi icado um modelo de p ocesso que pe mi e a ans o mação de casos de uso no modelo de a qui e u a lógica compa í el com as equipas de Sc um, o ma o em diag amas de componen es. O p ocesso de ans o mação de use s o ies em caso de uso consis e no seguin e: as use s o ies são ans o madas em Epics a a és de um p ocesso o almen e manual e os Epics dão o igem a casos de uso que se em de inpu pa a o mé odo 4SRS. A análise do es udo de caso pe mi iu a aplicação do mé odo 4SRS num p ocesso ágil (Sc um), dando uma sé ie de con ibuições pa a a abo dagem. Uma con ibuição aliosa do mé odo 4SRS é a sua capacidade de e ina a e ac os de design (a qui e u a lógico). Po an o, o mé odo 4SRS é ap op iado pa a con ex os mul i p oje os e / ou mul i equipas. O e inamen o de 118 a qui e u as de so wa e lógico ambém é ele an e pa a eduzi a complexidade na a i idade de modelação de sis emas de so wa e em la ga escala (jus amen e o que se p e endia com aplicação des e na abo dagem p opos a). Ou a con ibuição des e mé odo na abo dagem p opos a é a sua capacidade de exigi emoção de equisi os edundan es e a descobe a de equisi os em al a (es e úl imo an o no ní el de componen es de a qui e u a lógica quan o no ní el de casos de uso). Ainda sob e o abalho desen ol ido, o am acei es dois a igos cien í icos em duas con e ências in e nacionais. 5.2 Limi ação da p opos a Embo a os obje i os a que es a disse ação se p opôs enham sido alcançados, essas espos as não su gi am desp o idas de limi ações que necessi am de abalho suplemen a pa a con e i melho ias à abo dagem p opos a. Adap ação semân ica e de con eúdo. O ambien e isual p opos o ap esen a algumas limi ações que esul a am das di iculdades p óp ios da ealização de um abalho de inal do cu so. A p io ização de use s o ies deco eu sob ce as limi ações. P imei a, a al a de expe iência na a e a de p io ização de equisi os. Segundo, a di e sidade ( unções, opiniões, a e as) dos s akeholde s pode ia e melho ado os esul ados da a qui e u a lógica, se es a a e a osse ealizada num ambien e p óp io de um p oje o. Validação da p opos a no e eno. Embo a exis a a explicação no con ex o eal da abo dagem p opos a, a sua aplicação ainda não saiu do papel, p ecisando de uma alidação no e eno, com acompanhamen o cons an e sob e adequabilidade do p ocesso de ans o mação de use s o ies em casos de uso e do p ocesso de ge ação da a qui e u a lógica a pa i desses casos de uso. Es a al a de alidação pode p o oca al e ações na es u u a dos casos de uso e consequen emen e da a qui e u a lógica, caso se e i ique que exis e in o mação p escindí el, ou que, pelo con á io, al e in o mação que acili a ia o p ocesso de análise de equisi os ag egando alo ao p oje o. 119 Inclusi amen e, a aplicação da abo dagem po á ios analis as de sis emas expe ien es, com conhecimen o ela i amen e à ges ão de equisi os em p oje os ágeis, pode ia signi ica um conjun o de impo an es con ibu os que, além de alida o esul ado inal da aplicação da abo dagem, pode ia esul a em á ias suges ões que simpli icassem e concedessem ou as alências à p opos a ap esen ada. 5.3 T abalho Fu u o De o ma a ul apassa as limi ações indicadas exis e um conjun o de a e as u u as que, quando execu adas, pode ão con e i uma melho ia na abo dagem p opos a. Au oma ização. Uma ez que a abo dagem depende de in o mação que pode se es u u ada e de diag amas lógicos e do p ocesso de ans o mação de use s o ies em casos de uso, o na-se indispensá el a au omação do p ocesso. Isso poupa ia bas an e es o ço de consul a de documen ação e ag egação da in o mação. Ge ação au omá ica de casos de uso a pa i de use s o ies. De modo a melho a a ge ação au omá ica de casos de uso a pa i de use s o ies, p opõe-se a con inuação do p ocesso de desen ol imen o do p o ó ipo de so wa e iniciado nes a disse ação. Ou o impo an e abalho a se ei o nes a abo dagem, é a con e são de use s o ies em casos de uso usando a écnica de ap endizagem de máquina (machine lea ning). 120 REFERÊNCIAS [1] X. Yaohong and F. Jing ao, “Resea ch on So wa e De elopmen P ocess Conjunc ion o Sc um and UML Modeling,” 2014. [2] M. Fe ei a, A. Te eso, P. Ribei o, G. Fe nandes, and I. Lou ei o, “P ojec Managemen P ac ices in P i a e Po uguese O ganiza ions,” P ocedia Technol., ol. 9, pp. 608–617, 2013. [3] M. B ian, M. R. C, M. S e e, S. Ken, S. Je , and T. Da e, “Mani es o o Agile So wa e De elopmen Twel e P inciples o Agile So wa e,” 2001. [4] J. Do onina and E. Do onina, “MODELS OF IT-PROJECT MANAGEMENT,” In . J. Compu . Sci. In . Technol., ol. 10, no. 5, 2018. [5] M. Elallaoui, K. Na il, and R. Touahni, “Au oma ic T ans o ma ion o Use S o ies in o UML Use Case Diag ams using NLP Techniques,” P ocedia Compu . Sci., ol. 130, pp. 42–49, 2018. [6] M. Cohn, Use S o ies Applied: Fo Agile So wa e De elopmen (Addison Wesley Signa u e Se ies). Addison-Wesley, 2004. [7] A. K iouile, N. Addamssi i, and T. Gadi, “Abdelouahed K iouile, Najiba Addamssi i, Taou iq Gadi. An MDA Me hod o Au oma ic T ans o ma ion o Models om CIM o PIM,” Am. J. So w. Eng. Appl., ol. 4, no. 1, pp. 1–14, 2015. [8] S. G apen hin, S. Poggel, M. Book, and V. G uhn, “Imp o ing ask b eakdown comp ehensi eness in agile p ojec s wi h an In e ac ion Room,” In . So w. Technol., ol. 67, pp. 254–264, 2015. [9] J. F. Nunamake , M. Chen, and T. D. M. Pu din, “Sys ems De elopmen in In o ma ion Sys ems Resea ch,” J. Manag. In . Sys ., ol. 7, no. 3, pp. 89–106, 2015. [10] M. Be nd sson, J. Hansson, B. Olsson, and B. Lundell, Thesis P ojec s. London: Sp inge London, 2008. [11] Adoma icius, Bocks ed , Gup a, and Kau man, “Making Sense o Technology T ends in he In o ma ion Technology Landscape: A Design Science App oach,” MIS Q., ol. 32, no. 4, p. 779, 2017. [12] K. Pe e s, T. Tuunanen, M. A. Ro henbe ge , and S. Cha e jee, “A Design Science Resea ch 121 Me hodology o In o ma ion Sys ems Resea ch,” J. Manag. In . Sys ., ol. 24, no. 3, pp. 45–77, 2008. [13] B. Kuechle and S. Pe e , “Design Science Resea ch in In o ma ion Sys ems,” Des. Sci. Res. In . Sys ., pp. 1–66, 2017. [14] E. F. C uz, “Design Science Resea ch em Sis emas de In o mação,” no. June, 2011. [15] I. Somme ille, SOFTWARE ENGINEERING Ni h Edi ion, Addison-Wesley, ol. 35, no. 2. 2009. [16] P. . Roge R. P essman, So wa e Enginee ing P ac icione ’s App oach Fi h Edi ion, Mc G aw Hill. 2001. [17] R. S. P essman, “Engenha ia de So wa e,” 2011. [Online]. A ailable: h ps://p .sc ibd.com/documen /347525214/Engenha ia-de-So wa e-P essman-2011- pd . [Accessed: 05-No -2018]. [18] G. Hu lbu and J. Voas, “So wa e is d i ing so wa e enginee ing?,” IEEE So w., ol. 33, no. 1, pp. 101–104, 2016. [19] L. N. Raha, “A Guide o Building he Knowledgebase o So wa e En ep eneu s, Fi ms, and P o essional S uden s - IEEE Con e ence Publica ion,” 2018 IEEE 16 h In . Con . So w. Eng. Res. Manag. Appl., pp. 165–171, 2018. [20] J. Nandhakuma and D. E. A ison, “The ic ion o me hodological de elopmen : A ield s udy o in o ma ion sys ems de elopmen ,” In . Technol. People, ol. 12, no. 2, pp. 176– 191, 1999. [21] D. L. P. A. P. C. CLEMENTS, “A Ra ional Design P ocess: How and Why o Fake IT.” 1986. [22] I. Somme ille, “So wa e P ocess Models SPECIFICATION-BASED MODELS,” ACM Compu . Su ., ol. 28, no. 1, pp. 269--271, Ma . 1996. [23] P. Meso and R. Jain, “Agile so wa e de elopmen : Adap i e sys ems p inciples and es p ac ices,” In . Sys . Manag., ol. 23, no. 3, pp. 19–30, 2006. [24] A. Sil ei a Campanelli and F. S. Pa ei as, “The Jou nal o Sys ems and So wa e Agile me hods ailo ing-A sys ema ic li e a u e e iew,” J. Sys . So w., ol. 110, pp. 85–100, 2015. [25] K. Schwabe and J. Su he land, “2017 Sc um Guide,” ol. 19, no. 6, p. 504, 2017. 122 [26] K. Schwabe , “SCRUM De elopmen P ocess,” 1994. [27] K. Schwabe , M. Beedle, and M. B. KEN SCHWABER, “Agile So wa e De elopmen wi h Sc um,” p. 158, 2002. [28] K. Beck, “Change wi h Ex eme P og amming,” Ieee, no. c, pp. 70–77, 1999. [29] A. Cockbu n and J. Highsmi h, “Agile so wa e de elopmen : The people ac o ,” Compu e (Long. Beach. Cali )., ol. 34, no. 11, pp. 131–133, 2001. [30] J. S aple on, DSDM, dynamic sys ems de elopmen me hod : he me hod in p ac ice. Addison-Wesley, 1997. [31] J. S aple on and DSDM Conso ium., DSDM : business ocused de elopmen . Addison- Wesley, 2003. [32] S. R. (S ephen R. Palme and J. M. Felsing, A p ac ical guide o ea u e-d i en de elopmen . P en ice Hall PTR, 2002. [33] T. Chow and D.-B. Cao, “A su ey s udy o c i ical success ac o s in agile so wa e p ojec s,” J. Sys . So w., ol. 81, no. 6, pp. 961–971, 2008. [34] B. Choudha y and S. K. Rakesh, “An app oach using agile me hod o so wa e de elopmen ,” in 2016 1s In e na ional Con e ence on Inno a ion and Challenges in Cybe Secu i y, ICICCS 2016, 2016, pp. 155–158. [35] D. S anko ic, V. Nikolic, M. Djo dje ic, and D.-B. B. Cao, “A su ey s udy o c i ical success ac o s in agile so wa e p ojec s in o me Yugosla ia IT companies,” J. Sys . So w., ol. 86, no. 6, pp. 1663–1678, 2013. [36] J. Sho e and S. Wa den, The a o agile de elopmen . O’Reilly Media, Inc, 2008. [37] M. Cohn, Use s o ies applied : o agile so wa e de elopmen . Addison-Wesley, 2004. [38] G. C epaldi, Nin h edi ion o he G.B. Mo gagni Awa ds P og am, ol. 35, no. 2. 2005. [39] P. Ab ahamsson, O. Salo, J. Ronkainen, and J. Wa s a, “Agile so wa e de elopmen me hods Re iew and analysis,” 2002. [40] M. Qasaimeh and A. Ab an, “Ex ending Ex eme P og amming Use S o ies o Mee ISO 9001 Fo mali y Requi emen s,” J. So w. Eng. Appl., ol. 04, no. 11, pp. 626–638, 2011. [41] G. S. Ma ha u, A. Mish a, H. Singh, and P. Upadhyay, “Empi ical S udy o Agile So wa e 129 23 As a se ice, I wan o ge use s pe missions o access o a pa icula da a sou ce. 55 70 0,79 26 As a Sys em Adminis a o , Co po a e manage , company manage , ac o y manage , o wa de manage , clien manage and supplie manage , I wan o associa e a use accoun o a s akeholde o en i y, o con igu e use accoun . 13 60 0,22 27 As a Sys em adminis a o , Co po a e manage , Company manage , and Fac o y manage , Fo wa de , Clien o Supplie , I wan o con igu e dashboa ds se ings in o de o con igu e dashboa ds. 72 71 1,01 28 As a se ice, I wan o ge use s pe missions o access o a pa icula da a sou ce. 42 60 0,70 31 As a Sys em Adminis a o , Co po a e manage , company manage , ac o y manage , o wa de manage , clien manage and supplie manage , I wan o associa e a use accoun o a s akeholde o en i y, o con igu e use accoun . 11 70 0,16 33 As a Sys em Adminis a o I wan o alida e wo k okens ha was eques ed by manage s in o de o manage wo k okens 27 50 0,54 34 As a Co po a e manage I wan o eques , ead, upda e and disable wo k okens in o de o manage wo k okens o my g oup companies and ac o ies 32 50 0,64 35 As a Company manage I wan o eques , ead, upda e and disable wo k okens in o de o manage wo k okens o my Company ac o ies. 63 70 0,90 36 As a Fac o y manage I wan o eques , ead, upda e and disable wo k okens in o de o manage wo k okens o my ac o y. 53 70 0,76 38 As a S akeholde /En i y manage I wan o ecei e a no i ica ion when a gi en wo k okens we e associa ed o my en i y in o de o manage wo k okens. 23 55 0,42 39 As an En i y ( o wa de , clien o supplie ) manage I wan o assign d i e s and ucks o wo k okens ha we e associa ed o my en i y in o de o manage wo k okens. 68 70 0,97 40 As a Sys em admin I wan o ecei e a no i ica ion when a s akeholde /en i y manage eques wo k okens in o de o alida e wo k okens. 47 65 0,72 130 ANEXO II – G á icos de P io ização de Sp in s Sp in 2 0,29 0,63 0,45 0,66 0,67 0,22 0,70 0,16 0,54 0,64 0,42 0,97 16 17 18 19 20 26 28 31 33 34 38 39 (I/E) VS USER STORY 131 Sp in s 3, 4 e 5 0,07 0,04 0,10 0,17 0,02 0,09 0,03 0,26 0,13 0,29 0,63 0,45 0,66 0,67 0,22 0,70 0,16 0,54 0,64 0,42 0,97 1 2 3 4 5 6 9 10 11 16 17 18 19 20 26 28 31 33 34 38 39 (I/E) VS USER STORY 132 ANEXO III - Tabela Fou S ep Rule Se 4SRS – Sp in 1 S ep 1 - Componen C ea ion S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Compon en Associa i on Use Case Desc ip ion 2i 2 ii 2iii 2i 2 2 i 2 ii 2 iii 4i 4 ii {UC1.4.1} Manage business g oups cdi {C1.1.c} Gene a ed C F Manage business g oups … . {C1.1.c} F Manage business g oups …. {P2} Accoun s {C1.1.d} {C1.1.i} {C1.1.d} Gene a ed C F De ine business g oup da a {C1.1.d} F De ine business g oup da a {P2} Accoun s {C1.1.c} {C1.1.i} {C1.1.i} Gene a ed C F Manage business g oups in e ace {C1.1.i} F Manage business g oups in e ace {P2} Accoun s {C1.1.c} {C1.1.d} {C1.1.i2} F Manage s akeholde ’s API {C1.1.i2} F Manage s akeholde ’s API {P3} Business Managemen {C1.1.d} {UC1.4.2} Manage companies cdi {C1.2.c} Gene a ed C F Manage companies {C1.2.c} F Manage companies {P2} Accoun s {C1.2.d} {C1.2.i} {C1.2.d} Gene a ed C F Companies da a {C1.2.d} F Companies da a {P2} Accoun s {C1.2.c} {C1.2.i} {C1.2.i} Gene a ed C F Manage companies in e ace {C1.2.i} F Manage companies in e ace {P2} Accoun s {C1.2.c} {C1.2.i} 133 {UC1.3} Manage ac o ies di {C1,3.c} Gene a ed C T {C1,3.d} Gene a ed C F Fac o ies da a {C1,3.d} F Fac o ies da a {P2} Accoun s {C1,3.i} {C1.3.i} Gene a ed C F Manage ac o ies in e ace {C1,3.i} F Manage ac o ies in e ace {P2} Accoun s {C1,3.d {UC1.4} Manage en i ies di {C1.4.c} Gene a ed C T … … …. {C1.4.d} Gene a ed C F En i ies da a … {C1.4.d} F En i ies da a …. {P2} Accoun s {C1.4.i} {C1.4.i} Gene a ed C F Manage en i ies in e ace {C1.4.i} F Manage en i ies in e ace {P2} Accoun s {C1.4.d} {UC1.5} Manage okens di {C1.5.c} Gene a ed C T {C1.5.d} Gene a ed C F Tokens da a {C1.5.d} F Tokens da a {P3} Business Managemen {C1.5.i} {C1.5.i} Gene a ed C F Manage okens in e ace {C1.5.i} F Manage okens in e ace {P3} Business Managemen {C1.5.d} {UC1.6} Manage ucks cdi F {C1.6.c} Gene a ed C F Manage ucks {C1.6.c} F Manage ucks {P4} Indus ial main enance {C1.6.d} {C1.d.i} {C1.6.d} Gene a ed C F T ucks da a {C1.6.d} F T ucks da a {P4} Indus ial main enance {C1.6.c} {C1.d.i} {C1.d.i} Gene a ed C F Manage ucks in e ace {C1.d.i} F Manage ucks in e ace {P4} Indus ial main enance {C1.6.c} {C1.6.d} {UC2.1} Manage local IT esou ces di {C2.1.c} Gene a ed C T {C2.1.d} Gene a ed C F In e en ion and main enance da a {C2.1.d} {C2.2.d} {C2.3.c} F In e en ion and main enance da a {P4} Indus ial main enance {C2.1.i} {C2.2.i} {C2.3.i} {C2.1.i} Gene a ed C F Ve i y in e en ion in e ace {C2.1.i} F Ve i y in e en ion in e ace {P4} Indus ial main enance {C2.1.d} 134 {UC2.2} Schedule in e en ions di {C2.2.c} Gene a ed C T {C2.2.d} Gene a ed C F S o e in e en ions da a {C2.1.d} T {C2.2.i} Gene a ed C F S o e in e en ions in e ace {C2.2.i} F Schedule in e en ions in e ace {P4} Indus ial main enance {C2.1.d} {UC2.3} Pe o m in e en ions di {C2.3.c} Gene a ed C T {C2.3.c} Gene a ed C F S o e in e en ions da a {C2.1.d} T {C2.3.c} Gene a ed C F Pe o m in e en ions in e ace … {C2.3.c} F Pe o m in e en ions in e ace … {P3} Indus ial main enance {C2.1.d} {UC2.4} P o ide use s aining di {C2.4.c} Gene a ed C T {C2.4.d} Gene a ed C F Use s aining da a {C2.4.d} F Use s aining da a {P3} Business Managemen {C2.4.i} {C2.4.i} Gene a ed C F Use s aining in e ace {C2.4.i} F Use s aining in e ace {P3} Business Managemen {C2.4.d} {UC2.5} Gene a e empla es di {C2.5.c} Gene a ed C T {C2.5.d} Gene a ed C F Se ices empla e da a {C2.5.d} F Se ices empla e da a {P3} Business Managemen {C2.5.i} {C2.5.i} Gene a ed C F Gene a e se ice empla es in e ace … . {C2.5.i} F Gene a e se ice empla es in e ace …. {P3} Business Managemen {C2.5.d} 135 4SRS – Sp in 2 S ep 1 - Componen C ea ion S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Componen Associa ion Use Case Desc ip ion 2i 2ii 2iii 2i 2 2 i 2 ii 2 iii 4i 4ii {UC1.7.1} Manage p o iles cdi {C1.7.1.c} Gene a ed C F Manage P o iles …. {C1.7.1.c} F P o iles {P1} Accoun s {C1.7.1.d} {C1.7.1.i} {C1.7.1.d} Gene a ed C F P o iles da a {C1.7.1.d} F P o iles da a {P1} Accoun s {C1.7.1.c} {C1.7.1.i} {C1.7.1.i} Gene a ed C F Manage p o iles in e ace ….. {C1.7.1.i} F Con igu e use s’ p o iles in e ace {P1} Accoun s {C1.7.1.c} {C1.7.1.d} {C1.7.1.i2} Gene a ed C F Au ho iza ion API {C1.7.1. i2 F Au ho iza ion Se ice API {P1} Accoun s {C1.7.1.d} {UC1.7.2} Assign pe missions i {C1.7.2.c} Gene a ed C T {C1.7.2.d} Gene a ed C T {C1.7.2.i} Gene a ed C F Assign pe missions in e ace …. {C1.7.1.i} T {UC1.8} Manage aile s cdi {C1.8.c} Gene a ed C F Manage aile s {C1.8.c} F Manage aile s … {P2} Business Managemen {C1.8.d} {C1.8.i} {C1.8.d} Gene a ed C F T aile s da a {C1.8.d} F T aile s da a {P2} Business Managemen {C1.8.c} {C1.8.i} {C1.8.i} Gene a ed C F Manage aile s in e ace {C1.8.i} F Manage aile s in e ace …. {P2} Business Managemen {C1.8.c} {C1.8.c} {UC1.9.1} Valida e okens di {C1.9.1.c} Gene a ed C T {C1.9.1.d} Gene a ed C F Tokens da a {C1.9.1.d} F Tokens da a {P2} Business Managemen {C1.9.1.i} {C1.1.i} 136 {C1.9.1.i} Gene a ed C F Valida e okens in e ace {C1.9.1.i} {C1.9.2.i} {C1.9.3.i} F Valida e okens in e ace . {P2} Business Managemen {C1.9.1.d} {UC1.9.2} Associa e en i y i {C1.9.2.c} Gene a ed C T {C1.9.2.d} Gene a ed C T {C1.9.2.i} Gene a ed C F Associa e en i y in e ace {C1.9.1.i} T {UC1.9.3} Associa e ac o y i F {C1.9.3.c} Gene a ed C T {C1.9.3.d} Gene a ed C T {C1.9.3.i} Gene a ed C F Associa e ac o y in e ace {C1.9.1.i} T {UC1.9.4} Reques okens i {C1.9.4.c} Gene a ed C T {C1.9.4.d} Gene a ed C T {C1.9.4.i} Gene a ed C F Reques okens in e ace {C1.9.4.i} T Reques okens in e ace …. {P2} Business Managemen {C1.7.1.i2} {C1.1.i2} {UC1.9.5} Assign okens i {C1.9.5.c} Gene a ed C T {C1.9.5.d} Gene a ed C T {C1.9.5.i} Gene a ed C F Assign okens in e ace {C1.9.5.i} T Assign okens in e ace {P2} Business Managemen {C1.7.1.i2} {C1.1.i2} 137 4SRS – Sp in 3 S ep 1 - Componen C ea ion S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Componen Associa ion Use Case Desc ip ion 2i 2ii 2iii 2i 2 2 i 2 ii 2 iii 4i 4ii {UC1.2.1} Manage clien s companies di {C1.2.1.c} Gene a ed C T … {C1.2.1.d} Gene a ed C F Clien s companies da a {C1.2.1.d F Clien s companies da a {P1} Accoun s {C1.2.1.i} {C1.2.1.i} Gene a ed C F Manage clien s companies in e ace …. {C1.2.1.i} {C1.2.2.i} F Manage clien s companies in e ace. {P1} Accoun s {C1.2.1.d} {UC1.2.2} Associa e g oup i {C1.2.2.c} Gene a ed C T {C1.2.2.d} Gene a ed C T {C1.2.2.i} Gene a ed C F Associa e g oups in e ace {C1.2.1.i} T {UC1.5} Manage wo k okens di {C1.5.c} Gene a ed C T {C1.5.d} Gene a ed C F Wo k okens da a {C1.5.d} Wo k okens da a {C1.5.i} {C1.5.i} Gene a ed C F Mnage wo k okens in e ace {C1.5.i} F Manage wo k okens in e ace {P2} Business Managemen {C1.5.d} {UC1. 10.1.1} } Con igu e applica ions cdi {C1.10.1.c} Gene a ed C F Con igue applica ions {C1.10.1.c} F Con igue applica ions {P4} Au hen ica ion {C1.10.1.d} {C1.10.1.i} {C1.10.1.d} Gene a ed C F Applica ions da a A mazena os dados das aplicações. {C1.10.1.d} F Applica ions da a A mazena os dados das aplicações. {P4} Au hen ica ion {C1.10.1.c} {C1.10.1.i} {C1.1.i2} {C1.10.1.i} Gene a ed C F Con igue applica ions in e ace {C1.10.1.i} F Con igu e applica ions in e ace {P4} Au hen ica ion {C1.10.1.c} {C1.10.1.d} {UC1.10.2} Pe o m au hen ica ion i {C1.10.2.c} Gene a ed C T {C1.10.2.d} Gene a ed C T {C1.10.2.i} Gene a ed C F Pe o m au hen ica ion in e ace. {C1.10.2.i} Pe o m au hen ica ion in e ace. {P4} Au hen ica ion {C1.1.i2} {UC1.10.1.3} Assign a oken i {C1.10.3.c} Gene a ed C T {C1.10.3.d} Gene a ed C T {C1.10.3.i} Gene a ed C F Assign a oken in e ace {C1.10.1.i} T 138 4SRS – Sp in 4 4SRS – Sp in 5 S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Componen Associa ion Desc ip ion 2i 2 ii 2iii 2i 2 2 i 2 ii 2 iii 4i 4ii C ea e use accoun s c di Gene a ed C F C ea e use accoun … . {C1.1.1.1.c} C ea e use accoun {P1} Accoun s {C1.1.1.1.d} {C1.1.1.1.i} Gene a ed C F Use da a {C1.1.1.1.d} {C1.1.1 .3.d} {C1.1.1 .2.d} F Use da a {P1} Accoun s {C1.1.1.1.c} {C1.1.1.1.i} Gene a ed C F C ea e use accoun in e ace {C1.1.1.1.i} F C ea e use accoun in e ace {P1} Accoun s {C1.1.1.1.c} {C1.1.1.1.d} {C1.7.1.i} S ep 1 - Componen C ea ion S ep 2 - Componen Elimina ion S ep 3 - Packing & Agg ega ion S ep 4 - Componen Associa ion Use Case Desc ip ion 2i 2ii 2iii 2i 2 2 i 2 ii 2 iii 4i 4ii {UC1.8} Consul SLA cdi {C1.8.c} Gene a ed C T {C1.8.d} Gene a ed C T {C1.8.i} Gene a ed C F Consul use s SLA in e ace ….. {C1.8.i} F Consul use s SLA in e ace … {P2} Business Managemen {P2.1} Business Pla o m Managemen {C1.7.1.i} {C1.2.1.i2}