AEsp: UM ASSISTENTE DE ESPECIFICAÇÃO

Tamanho: px
Começar a partir da página:

Download "AEsp: UM ASSISTENTE DE ESPECIFICAÇÃO"

Transcrição

1 AEsp: UM ASSISTENTE DE ESPECIFICAÇÃO Massruhá, Silvia M.F.S. Ferraretto, Mário D. ( ) Miximo, Fernando A. Meira, Carlos A. A. Pusos, Sérgio L. Z. Visoli, Marcos C. Centro Nacional de Pesquisa Tecnológica em Wormática ~ara Agricultura - CNPTIAIEMBRAP A ( ) Uruversidade de Slo Paulo - USP RESUMO: Este trobdiiio de~ IUIIQ jii'tgimnla, denomiiuidtl A.Esp, qu visa aux/1/iji' a çaplllra das ts~cljlcaçllls das apll~s do domlnio tá admin/slraç40 f"'lroi t transform4-las. incrtmtntalmentt, 1m IUIIQ rtpnsentaçllo (/III J'(Hk ser trodujdo para um progrtjjnj operocional. Esta flrra~mnid I parti do antbi1nt1 FMS ('F Manogtment Systtm") qut tsl4 sendo dtstnvolvido para a EMBRAPA. O FMS; um ambitntt para a gtroç4o automatllddo de aplicativos do domlnio tá admlnistraç4o t"'lfal. Palavrtu.CIIav1s: asslsttnt1 de csptcif/cof40, an41íst dt dom ln/o, gerador dt apllcaç4o, rtuso. AIJSTRACT: T1rls pa~r dtsaib1s a too/, calltd A.Esp, for cap111ring Informal sptcif/cations of farm managtmtnt domain appllcations and incrtmentally transforms tlttm into a rtpnstntatlon lhaj can b1 translattd into an operationa/ program. T1ris too/is part of tltt FMS (Farm Managtmtnl Systtm), a prototypt softw/ji't 1nginttring 1nvironment for EMBRAPA, almtd at automatlc gtntraj/on of 1111all farm managtmtnt appllcatlons. Ktywords: sptcijicatlon asslstant, domaln analysis. applicatíon gtntrator, rtust. 1) INTRODUÇÃO O FMS é um ambiente de software para a geraçio automatizada de aplicativos do domínio de administraçio rural. A abordagem utilizada pelo FMS prevê que durante a fase de especificaçlo as informações de uma aplicaçlo sejam capturadas, decompostas e armazenadas para posterior reutilizaçio. As informações devem ser decomposw até um nlvel de representação para o qual estará disponlvel um gerador de c:ódigo fonte, simplificando a fase de implementaçio [6,7]. Esta abordagem foi definida durante uma atividade denominada pré-análise do domínio. Segundo Nei~boors [18], cada problema tem sua própria linguagem que é denominada Linguagem do Donuruo (LD), e a identificação desta linguagem é resultado de um processo denominado Análise de Domínio. PDF compression, OCR, web optimization using a watermarked 311 evaluation copy of CVISION PDFCompressor

2 A anilise de domínio, para Neighboors, produz os operandos e operadores de uma classe de aplicações, e, com base nesta análise, uma linguagem é construlda e usada para especificar outros problemas do domínio em questlo. A anilise de domínio, no escopo do Projeto FMS, foi realizada em duas etapas. A primeira etapa identificou o elenco de funções básicas e o modelo de fluxo de controle e dados típacos das aplicações do domínio de administraçlo rural. A segunda etapa agregou esse conjunto de funções na forma de uma Linguagem de Composiçlo do FMS (LC-FMS) e modelou as aplicações na forma de programas da classe reativa [7). Sob o modelo do FMS, os reqwsitos do usuário slo incrementalmente transformados em uma especificação descrita em LC-FMS, e a aplicaçlo, ~erada automaticamente a partir da especific:açlo em LC-FMS, compona-se como uma máquana de estados estendida (22]. Para suponar esta abordagem, a metodologia subjacente ao FMS é baseada em um modelo de rúveis. 2) MODELO DE NÍVEIS DO FMS O modelo de rúveis do FMS propõe uma lúerarquizaçio entre os rúveis do l?rocesso de transformaçlo dos requisitos do usuário, basicamente devido aos métodos disporúveas para essa tarefa. O modelo utilizado é o modelo PW de Lebman [ 11 ]. no qual o rúvel nlo fonnaliz.ado é descrito como rúvel conceituai e o rúvel onde hi uma descrição formal da aplicaçlo, ainda que incompleta, é denominado, neste trabalho, rúvel operacional. Para este rúvel hi um mecanismo de reificaçlo (concretizaçlo) bem determinado (Figura 1). Abetraoao ~-rmal ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' CNt.,.. ellle t--) ' ' ' Figura I. Modelo do FMS sob o modelo PW 2.1) Nivel Coaceitual O processo de captura dos requisitos do usuário (informal) e sua traduçlo para uma representação formal é um problema em engenharia de software [19]. Os trabalhos de Balzer (3] sobre este tópico mostram que o processamento de especificações em linguagem natural é um problema em aberto. Os problemas que ocorrem na etapa de especificaçlo de requisitos a tornam uma du etapas mais criticas do processo de desenvolvimento de software (16). Segundo Aslett [2], a comunicação entre o usuário e o desenvolvedor de sistemas é um fator limitante nesta etapa e que compromete a confiabilidade do software produzido. O usuário é 312

3 um especialista do domínio e nio conhece a tecnologia e a terminologia utilizada pelo desenvolvedor de sistemas e vice-versa. Além disso, as etapas do ciclo de vida do software (converslo de requisitos em especificaçlo, especificaçlo em implementaçio) slo mal documentadas, fazendo com que as informações que estio por trás de cada passo nio estejam disponlveis nas etapas sef1intes. Estes problemas de comunicaçio e documeotaçio tomam a especificaçio de requisitos errõnea. mcompleta e amblgua. Assistentes de Especificaçlo slo ferramentas para auxiliar nesta etapa de captura das especificações. Para apoiar o processo de abstraçio, essencial na captura de requisitos do usuário e posterior transformaçlo para o nlvel de representaçio, o FMS prevê a existência do AEsp Assistente de Especificaçio, de forma semelhante a outros sistemas (1,2,4,8,9,20,23). O AEsp suporta o processo de entrevista e documeotaçio dos requisitos dos usuários, sua dccomposiçio sistematizada sob urna metodologia formal e a coleta do jarglo especifico através da instanciaçio de componentes pré-existentes. O resultado de uma sesslo sob o AEsp, quando bem sucedida, é a aplicaçio do usuário e sua Linguagem da Aplicaçio(LA) subjacente (12). l.l) Nível Operacioaal O IÚvel operacional incorpora o processo de transformaçlo dos requisitos do usuário para um programa executável. Este nlvel foi reduzido ao processo de traduçio entre os nlveis da aplicaçio, represeotaçio e implementaçio. A Figura 2 mostra essa hierarquizaçio. Nlvel da Aplicaçio (Linguagens da Aplicação) LAz LA3... LA, Nlvel de Representaçio Nível de Implemeotaçio lin em C biicecas comuns Figura 2. Hierarquizaçio do nlvel operacional :U.l) Nivd da Aplicaçlo Usando a terminologia de Leite (12], uma aplicação, neste nlvel, é descrita em urna LA. Segundo Leite, as linguagens da aplicaçio (LAs) slo linguagens que têm todas as caracteristicas das linguagens do domínio, só que tratam de uma ou duas instincias daquele domínio. As LAs, no modelo do FMS, sio expressas em LC.FMS. Esta metáfora suporta tanto: a) versões diferentes da mesma aplicação, o que representa o seu desenvolvimento incremental; 313

4 b) aplicações diferentes para problemas semelhantes, que é amparado pelo modelo de Linguagetu de Donúruo [ 17) ) Nivel de Represeataçlo O nível de representaçlo é descrito pela sintaxe e semintica da LC-FMS, que é composta por várias sublinguagetu: linguagem de especificaçlo de formulários (telas), linguagem de especificaçlo de transições entre formulários, linguagem de especificaçlo de base de dados, linguagem de especificaçlo de ações (operações relacionais. transformações e relatórios), linguagem de especificaçlo de consistências e helps. Através dessas linguagetu, a aplicaçlo incorpora os vários componentes do domínio: a) componentes de alta especificidade que aparecem como operandos e operadores dessas linguagens; b) componentes de alto índice de reutilizaçlo, que slo "templates" ou "clichés" (23] cuja expando sintática materializa funções especificas da aplicaçlo em desenvolvimento ) Nivd de Implemeataçlo Do nível de representaçlo, a aplicaçlo descrita em LC-FMS é traduzida automaticamente para uma implementaçlo em linguagem C através de um gerador de código fonte (GFMS - Gerador do FMS), que usa as técnicas convencionais de compilaçlo e ferramentas de geraçlo de código [ 1 S). O processo de traduçlo entre os niveis de aplicaçlo, representaçlo e implementaçlo é conhecido na literatura e pode ser modelado, na abord~em de anilise de dominio, como um processo de traduçlo suponado por uma rede de domínios [ 17]. O processo de traduçlo dos requisitos informais do usuário para uma representaçlo formal (LA descnta em LC-FMS), que é suponado pelo AEsp, está descrito nu próximas seções. A Figura 3 mostra o escopo do AEsp através do mapeamento do FMS aob o modelo PW que permite separar as etapas de abstraçlo (coleta de especificaçlo, incluindo reuso e prototipaçlo) da etapa de concrctizaçlo (geraçlo automatizada do código).... ~.r... at ~ -... A lte.. a. Figura 3. O escopo do AEsp sob o modelo PW

5 3) CARACTERÍSTICAS DO AEsp O enfoquc utilizado, pelo AEsp, para síntese da aplicaçio descrita cm LC-FMS é: a) considerv o usuário como o especialista que fomcc:c a informaçio sobre a aplicaçio; b) clicitar incrementalmente, através de uma entrevista, os conceitos da apücaçio sob uma metodologia de dccomposiçio; c) nio tentar automatizar a etapa de cspccificaçio, isto é, evitar o processamento automático da linguagem natural, mas utilizar um Engenheiro de Espccificaçio para conduzir a entrevista c reduzir o vocabulário envolvido; d) ofcrcc:cr ao usuário uma infraestrutura para entrevista similar a aplicaçio final; c) catalogar u abstraçôcs de dados c açôcs de forma a possibilitar seu rcuso cm outras aplic:i9õcs c, portanto, potencializar a transformaçlo de uma LA cm W. Para suportar este processo, o AEsp foi construído com as seguintes caractcristicas: a) estrutura de controle de entrevista com o usuário, pcmútindo capturar as especificações das aplicações; b) estrutura de prototipaçlo para apoiar na entrevista c validar a cspccificaçio a qualquer momento; c) esquema de catalogaçio de componentes (o~randos c operadores) de modo a incrementar permanentemente o acervo do donunio. A transformaçio de componentes específicos cm componentes instanciivcis é feita "off-linc"; d) esquema de rcuso das informações do domínio, através de "rcusc dacmons" (scçio 4.3); c) aprcscntaçlo da dccomposiçio da aplicaçio, sob várias formas, para facilitar o "backtracking". O protótipo do AEsp suporta essas funcionalidades através de um conjunto de ferramentas integradas. cuja conccituaçlo está apresentada na Figura 4. Estas ferramentas slo: Entrevistador, Prototipador, Catalogador de Componentes, Montador c Reutilizador. A dcscriçlo dessas fcrramcntu cstá na scçio 4. Figura 4. Ferramentas do AEsp 3.1) O Engenheiro de Espetificaçlo O Engenheiro de Especificaçlo é um técnico treinado a operar o AEsp com o objctivo de ~~uzir a entrevista para extrair a informaçlo do Especialista do Dorninio (usuário). Suas auvldadcs sio: PDF compression, OCR, web optimization using a watermarked 315 evaluation copy of CVISION PDFCompressor

6 a) auxiliar no mapeamento da linguagem natural para o vocabulário controlado do ambiente AEsp; b) oferecer o protótipo da aplicaçlo durante a entrevista; c) apoiar a modelagem dos dados e decomposiçlo du ações; d) apoiar o "backtrack" quando necessário. 4) ARQUITETURA DO AEsp Nesta seç!o, está descrito detalhadamente cada ferramenta que compõe a arquitetura do AEsp (Figura 5).... o c u- t M ll- 4a,..._.. Figura 5. Arquitetura Geral do AEsp 4.1) Entrevistador O Entrevistador é uma ferramenta para auxiliar na coleta de infonnações do usuário através de um modelo de entrevista. Este modelo de entrevista, no qual o AEsp se baseia, tem as seguintes propriedades: a) roteiro de entrevista para refinamento do problema; b) decomposiçlo do problema segundo uma metodologia; c) aplicação de regras da metodologia para garantir sua corretude; d) invocaçlo dos "reuse daemons"; e) mudanças de estratégia na decomposição quando necessário; f) supone a visio global do processo de decomposiçlo. O entrevistador executa várias funções para suponar este modelo de entrevista, como descrito na Figura

7 ... u..., llt o ,...,..., , u...., Figura 6. Funções do Entrevistador ,._ -- G O entrevistador funciona como um Gereaeiador da Eotrnista, que especifica as ne<:essidades do es~sta do domínio seguindo um roteiro de entrevista. O roteiro de entrevista foi definido a partu' de uma análise local das aplicações do donúnio. Este roteiro é baseado em perguntas dirccionadu ao usuário c permite especificar o problema segundo uma metodologia de dccomposiçio. A esuutura do entrevistador depende da metodologia de dccomposiçio c, oeste trabalho, está sendo utilizada a metodologia HOS ("Hish-Order Softwarc")[l4). Esta metodologia permite decompor os dados e u ações de uma aplicaçio cm uma espec:ificaçio na forma de uma estrutura de árvore óndc os nós da úvorc representam rúveis hierárquicos da dccomposiçlo, c sio denominados "Control Maps". A espccificaçlo cm HOS é representada, como é mostrado na Figura 7, por uma esuutura arbórea onde cada nó representa uma Funçio (F) c cada funçio tem um ou nws objetos (dados) de entrada (x) c saída (y).... -,., _,...,, ,! I, ~Cx).1 I ~- I - iw--1 ~~~' =t::j- I I I : I ' I I I I ~.:.. ~.. \ ".l Figura 7. HOS - Hish Order Software PDF compression, OCR, web optimization using a watermarked 317 evaluation copy of CVISION PDFCompressor

8 A decomposi~ finaliza quando se chega a um nó primitivo, para o qual h! uma correspondência no ruvel de representaçlo, ou a um objeto instanciável no acervo do sistema que faça o processo recorrer. A entrevista é conduzida de modo que se possa otimizar o caminho até os nós primitivos. Conapondênciu no ruvel de representaçlo slo expressas por Regru de Produçlo, que slo aplicadas para obter a espec:ific:açlo da aplic:açlo descrita em LC-FMS. O entrevistador também funciona como um "VIewer, isto é, a qualquer momento o engenheiro de espec:ific:açlo pode exibir graficamente a árvore de decomposiçlo, sendo que o processo de decomposiçlo pode ser reiniciado a partir de qualquer nó da árvore. O modelo de entrevista prevê que c:aso a decomposiçlo chegue a um "dead end", ou a uma inconsistência, existe um Acoaselbador de Estratigla que pode sugerir uma reorientaçlo da decomposiçlo, e, consequentemente, da entrevista. Na verslo corrente, o entrevistador foi desenvolvido usando uma base de conhecimento implementada em Nexpert [24]. A Figura 8 é um exemplo da representaçio em Nexpert da espec:ific:açlo de uma funçlo F (Figura 7) até chegar a um nó primitivo, onde foram aplicadas algumas regras de produçlo para se obter u correspondênciu no ruvel de representaçio (Formulários e Cam~s). Todu essu informações c:apturadu pelo entrevistador ficam armazenadu em uma base de conhecimento de modo que possam ser reusadas na especific:açlo de uma nova aplic:açlo do domínio. EDIIIPIO:,.. _.,.,.,., '--:....,,... ::; :::::: :::~:~~:-~..... ~ Óo~... /. /,;,...,....,,...,...,...,... I Figura 8. Representaçlo em Nexpert da especific:açlo da funçlo F 318

9 4.2) Catalopdor O Catalopdor é uma ferramenta para auxiliar na captura dos componentes do domínio durante a especificaçlo e annazeni-los na base de conhecimento. Esta ferramenta implementa duas funções básicas: a) salvar parte de uma sesslo da entrevista que o Engenheiro de Especificaçlo perceba ser potencialmente reutilizável- normalmente slo "Control Maps"; b) incluir componentes instanciáveis, que slo a forma básica de reutilizaçio de informações do domínio. Componentes instanciáveis slo descritos em urna linguagem denominada CMO - "Control Maps Operators"(7]. A entrevista é, em última análise, o conjunto de perguntas e respostas que pennite IDStaDciar esses componentes para o "Control Map" especifico da aplicaçlo do usuário. As técnicas de reanálise do domínio que permitem examinar um conjunto de componentes especificas e transformá-los em um componente instanciável ainda nlo estio formalizadas. Componentes instanciáveis podem ser identificados tanto no rúvel da aplicaçlo quanto no rúvel de representaçio. 4.3) Reutilizador O AEsp é um assistente de especificaçlo voltado para um domínio específico, permitindo a especificaçio de família de sistenw sob uma infraestrutura comum. Sob esta vislo, uma infraestrutura de reuso pode ser construída, de modo que a especificaçio de uma nova aplicaçio do dornirúo possa usar as informações já armazenadas no desenvolvimento de aplicações anteriores (S). A base de conhecimento mantida pelo catalogador é continuamente varrida durante o transcorrer da entrevista pelo que se convencionou chamar de "reuse daemons". Estes processos slo disparados sempre que: a) o usuário fornece uma a.çio expressa por um verbo que, colocado na forma de infinitivo pelo enjenheiro de especificaçlo, fornece a chave de busca na base de componentes; b) o usuáno fornece um o~= da açio que conste cm urna das classes existentes. Nestas ocasiões, o Reu dor, mostrado na Figura 9, dispara a instanciaçlo dos componentes envolvidos (a maior pane das vezes pela troca dos identificadores formais) e oferece u possíveis sugestões de especificações previamente armazenadas o ~ UTILIZADOR I l D m ~.. r Figura 9. Reutilizador 319

10 ~... Conjectura-se que esta abordagem de reuso é aderente ao domirúo agropecuário baseado nas seguintes premissas: a) propriedades com a mesma atividade de produçlo têm necessidade de informações mwto semelhantes, mas nlo iguais; b) processos gerenciais slo paniculares do proprietário e devem ser incorporados na aplicaçlo. 4.4) Prototipador O Prototipador é uma ferramenta para auxiliar na especificaçlo da aplicaçlo permitindo a validaçlo incremental da aplicaçlo durante a entrevista. Um sistema de apoio à captura das especificações, enquanto diminui o trabalho de anotações das informações do usuúio n1o elirrúna a ambiguidade que existe na produçlo de software e o entendimento errado pelo engenheiro de especificaçlo das necessidades do usuúio. Prototipaçlo [I 0,13,21) é uma técnica que está sendo adotada para que, em qualquer momento da entrevista, o usuário tenha urna vislo do que já foi capturado. Desta forma, o especialista do donúnio e o engenheiro de especificaçlo juntos podem rever e validar a especificaçlo do sistema. O prototipador do FMS, mostrado na Figura I O, tem como funções básicas: a) suportar a metodologia de prototipaçlo incremental; b) "tunning" da interface com o usuário; c) interface com o montador _..... ~ , _.. Figura 10. Prototipador Esta ferramenta possui um Editor de Formulários onde pode ser desenhado as telas da aplicaçlo. O Editor recupera as informações da base de conhecimento e gera as telas correspondentes. A partir daí, com apoio de urna interface arnigáve~ o usuário pode alterar as telas da aplicaçlo da maneira desejada. Na implementaçlo corrente da ferramenta está sendo utilizado o SILK (gerador de interfaces gráficas para padrlo OpenLook) [25]. O prototipador, a partir da base de conhecimento associada à aplicaçlo, permite também urna simulaçlo do comportamento da aplicaçlo. O usuário pode alterar substancialmeote a interface, n1o apenas no que concerne ao valor dos atributos e posicionamento dos campos das telas, mas também no encadeamento das telas e ações. Todas as mudanças no protótipo slo incorporadas na base de conhecimento original. Após a validaçlo da interface pelo usuário pode ser requisitado urna montagem da aplicaçio ao Montador para completar o protótipo e transmiti-lo a um microcomputador mm PC compative~ que pode mostrar o componamento completo da aplicaçio. 320

11 4.5) Moatador O Moatador, a panir da varredura da árvore gerada pelo entrevistador e base de conhecimento correlata, gera o pro"arna descrito em LC-FMS que será a entrada para o GFMS gerar a aplicaçlo do usuário, como e mostrado na Figura ONTADO... ' =-- Figura 11. Montador ~ A forma LC-FMS, textual na atual implementação, pennite tradução automática para outru especificações tu'bridu ("resources" do Windows ou "widgets" do XView). Como um exemplo da LC-FMS, abaixo é dada a especificação de uma tela de um Sistema de Controle de Rebanho Leiteiro (SJSCOREB) que está sendo desenvolvido para validar os conceitos do FMS. %%EXT FORM ATI'RIBüTE Edit CONTROL BUTTON %%FORM! =---==~ REBANHO.CUF 1--~ =---= ~======---=- 1 Definicao do formularia para a edicao da base de dados do I rebanho!===-==--=--===========--====--=======-==~====== COLOUR White /Biue INPUT Yellow/Cyan TCOLOUR Y ellow/blue EDITCOLOUR White/Cyan TYPE DOUBLE SIZE.. 80,25 TITLE... "Cadastro do Rebanho" TEXT... FIELD.. TEXT TEXT TEXT = TEXT = TEXT,2; "NRO BRINCO (ID):" 0,2; NAME BRINCO; STRJNG(S),3; "TIPO...:,4; "NOME...:,S; "DATA NASC...:",6; "PAI...:",7; "MAE...:" 321

12 TEXT - ~,8; "RACA...:" TEXT,9; "LOCAL...:" TEXT,10; "ESTADO...:" TEXT,11; "LACTACAO...: FIE.I.D = 0,3; NAME TIPO; CHOICE(7) "Novilha!VacajTouro"; & VALUE""l FIE.I.D "' ~0,4 ; NAME NOME; STR.ING(20) FIE.I.D = O,S; NAME-=DTA NASC; DATE FIELD 0,6; NAME PAI; "STR.ING(20) FIELD "' 0,7; NAME MAE; STR.ING(20) FIELD... 0,8; NAME RACA; & CHOICE(l ) "HolandesajNelorejSta-GertrudesiGir" FIE.I.D NAME LOCAL; STR.ING(2) to NAME ESTADO &. CHOICE(lO)= :V.;.gemjEsteóii~IVa.ziaiPrenha!Seca!Parida " FIE.I.D NAME=LACTACAO; NUMERIC(4) %%SCHEMA #FILE REBANHO #KEYBRINCO 5) PROTÓTIPO DO AEsp A implementaçlo do AEsp exigiu a integraçlo de geradores de interfaces, bases de conhecimento, gerenciadores de bases de objetos, técnicas de análise de domínio e reuso. A plataforma de software escolhida para implementar o AEsp foi: a) Nexpert: gerenciador de bases de objetos e máquina de infermcia para implementar u regru da metodologia e disparo dos "reuse daemons"; b) Silk: $erador de interfaces gráficas para padrlo OpenLook com recursos de "link dinimico". A plataforma de hardware para desenvolvimento do AEsp, na verslo corrente, é uma est.açlo de trabalho SUN. Entretanto, a aplicaçlo final é gerada para o ambiente PC que é a plataforma padrlo para os usuários do domínio em questlo. 6) ESTÁGIO DE DESENVOLVIMENTO O Entrevistador do AEsp está com a sua arquitetura razoalvemente estabilizada. A implementaçlo em Nexpert já inclui um avaliador genérico de "Control Maps" e sua instadciaçio. O Prototipador e Montador estio implementados e geram, respectivamente, o protótipo da interface da aplicaçlo e parte substancial das especificações em LC-FMS. O reutilizador nlo está implementado e o catalogador dispõe apenas parte de sua funcionalidade. Os compiladores du sublinguagens da LC-FMS estio operacionais, exceto a sublinguagem de eventos e relacional. O ambiente FMS (AEsp, GFMS e ferramentu auxiliares) também está sendo usado para a definição e geraçlo de um sistema de Controle de Rebanho Leiteiro (SISCOREB). O componente "Controlar", essencial para essa aplicaçlo, está bem definido e estudado, e já há uma descriçlo desse objeto com a correspondente linguagem de operadores para sua catalogação. O SISCOREB já incorpora o conceitos de eventos e decomposiçlo de estados suportados pela metodologia de entrevista usada no AEsp. A liberaçlo da verslo alfa do sistema está prevista para o ano de

13 7) CONCLUSÃO As caractcristicas do AEsp, como implementado, sio compatíveis com os outros projctos desse tipo [16]. O escopo é mais limitado que ASPIS [2], KBRA [4], KBRET [8] e "Requirements Apprentice" [23] e cobre uma classe de aplicações mais simples, porém, supõe-se que essa focaliuçio aumente a viabilidade do AEsp. O AEsp tem dificuldades operacionais por exigir uma {llataforma de hardware heterogénea. Há estudos de viabilidade que mostram que a sua nugraçio completa para a plataforma alvo (PC) é possível pela substituiçio do SILK por um gerador de interfaces para Wandows e a cxec:uçio do Ncx~n neste hardware. A utilidade e exequibilidade do modelo preconizado pelo AEsp depende de um mimero expressivo de sessoes quando o acervo realmente puder corresponder às demandas do usuário. A identificaçio c incorporaçlo de componentes instanc:iáveis também depende dessa utiliz.açlo em larga escala. 8) BIBLIOGRAFIA [I) ARIAS, C. Um uais&eate especialista para especificaçio de requisitos, Campinas: UNICAMPIIMECC, (Tese de Mestrado) [2) ASLETT, M. J. A kdowledae bued approac:b to software developmeat: ESPRIT Project ASPIS. Amltcrdam: Nonh HoUand, [3) BALZER, R.; GOLDMAN, N.; WILE, D. lnforrnality in Program Specifications. ln: RICH, C.; WATERS R. C. ReadiDp lo artificial ioteuiaeoce aod software eapaeeriaa. Los Altos, CA: Morgan Kautinannk, p [4) CZUCHRY, A. J.; HARRIS D. R. KBRA: A new paradigm for requiremcnts enginecring, IEEE ~pert, v. 3, n. 4, p , winter, [5) DIAZ, P.R.; ARANGO, O. Domaia aaalysis aod software syatems modeliaa. Los Alamitos, CA: IEEE Computcr S09icty, [6] FE.RRARETTO, M.D.; MASSRUHA, S.M.F.S. Projeto: ambieate de dcseavolvimeato de software para domidio de admioistraçio rural - FMS. Campina.s/SP: EMBRAPA-CNPTIA, (Documento interno apresentado ao Sistema EMBRAPA de Planejamcnto - SEP) [7] FE.RRARETTO, M.D. Metodotoaia para dcseavotvimeato rápido de aplicaç6cs - MEDRA. CampinasiSP: EMBRAPA.CNPTIA, (Documento interno) [8) GOMAA, H.; KERSCHBERO L.; SUOURUMAN V. A knowledge-based approach to generating targct system specifications from domain model. ln: IFIP Coagress, Madrid, Spain, I 992. [9) OREEN, C.; LUCKMAN,D.; BALZER, R.; CHEATHAM, T.; RICH, C. Repon on a Knowlcdge-Bascd Software Assistant. ln: RICH, C.;WATERS R. C. Readiop ia artifldal iateuiaeace aod software eaaioeeriog. Los Altos, CA: Morgan Kaufinaonk, p [10) JORDAN, P.W.; KELLER, K.; TUCKER; VOOEL, D. Software storming - combining rapid prototyping and knowledge engineering. IEEE Computer, v.22, n.5, p , rnay [11] LEHMAN, M.M. A futber modcl of coherent programming processes. Software Process Worksbop, p , [12] LEITE, J.C.S.P. O uso de hipcncxto na clicitaçio de linguagens de aplicaçio. Simpósio Brasileiro de Engenharia de Software, 4, Águas de Slo Pedro, de outubro de Aoais. Sio Paulo: USP/CCS, p [13] LUQI. Software evolution through rapid prototyping. IEEE Computer, v.22, n.5, p , may

14 [14) MARTIN, J. Syatc:m deslga from provably corrc:ct coastrucu. Englewood Cllffs: Prentice-Hall, [JS) MASIERO, P.C.; MEIRA, C.A.A Development and instantiation ofa generic application generator.. Tbe Jou111al ofs)'atema aad Software, v. 23, n.1, p , oct [16] MASSRUHA, S.M.F.S. Um estudo sobre asaiateates de especifica~o. Campinas/SP: EMBRAPA-CNPTIA, (Relatório Técnico, submetido a publicaçio) [17] NEIGHBORS, J.M. The Draco approach to constructing software from reusable components. ln: RICH, C.; WATERS R. C. Rudinp ia artificial iatdlipace aad software c:asioeerin&. Los Altos, CA: Morgan Kaufinannk., p.s2s-s3s. [18] NEIGHBORS, J.M. Draco: a metbod for enpaeerin1 reusable software l)'ltems, software reaaability, coacepu aad modeb (ACM Presa Frontier Series, 1) [19) PRESSMAN, R. Software eapaeerin1: a practitloaer'a approacb. 3.ed. New York: McGraw-Hill, [20] PUNCELLO, P.; TORRIGIANI, P.; PIETRI, F.; BURLON, R.; CARDD..E, 8.; CONTI, M. ASPIS: A knowledge-based CASE environment. IEEE Software, v.s, n.2, p , mar [21) TANIK, M.M.; YEH, R.T. Guest editor's introduction: Rapid prototyping in software development. IEEE Computer, v. 22, n.s, p.9-12, may [22] W ASSERMAN, A. I. Extending state transition diagrams for the specification of humancomputer interaction. IEEE Traauctioaa o Software Ea&iaeeria& v. 11, n. 8, ago [23) W A TERS, R. The requirements apprentice: automated assistance for requirements acquisition. IEEE Traauctioaa oa Software Ea&ineeri &. v. 17 n. 3, p , mar [24] NEXPERT OBJECT; venioa 2.0; iatroductioa manual. Palo AJto/CA: Neuron Data, [25) SD...K- Eacap: uaer'a maaual, release 1.0. AustinffX: ISSI,

CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE

CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE CASE Orientada a Objetos com Múltiplas Visões e Implementação Automática de Sistemas - MVCASE Tathiana da Silva Barrére Antonio Francisco do Prado Vitor César Bonafe E-mail: (tathiana,prado,bonafe)@dc.ufscar.br

Leia mais

Pós Graduação Engenharia de Software

Pós Graduação Engenharia de Software Pós Graduação Engenharia de Software Ana Candida Natali COPPE/UFRJ Programa de Engenharia de Sistemas e Computação FAPEC / FAT Estrutura do Módulo Parte 1 QUALIDADE DE SOFTWARE PROCESSO Introdução: desenvolvimento

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

REVISÃO ENGENHARIA DO SOFTWARE. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com REVISÃO ENGENHARIA DO SOFTWARE Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Software Sequencia de Instruções a serem seguidas ou executadas Dados e rotinas desenvolvidos por computadores Programas

Leia mais

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi Metodologias de Desenvolvimento de Sistemas Analise de Sistemas I UNIPAC Rodrigo Videschi Histórico Uso de Metodologias Histórico Uso de Metodologias Era da Pré-Metodologia 1960-1970 Era da Metodologia

Leia mais

Introdução. Aulas. ltodi.est.ips.pt/es. Detalhes administrativos Definição de engenharia de software Contexto Relação com outras áreas e disciplinas

Introdução. Aulas. ltodi.est.ips.pt/es. Detalhes administrativos Definição de engenharia de software Contexto Relação com outras áreas e disciplinas Sumário Introdução Joaquim Filipe João Ascenso Engenharia de Software 2005/06 EST, Setúbal Detalhes administrativos Definição de engenharia de software Contexto Relação com outras áreas e disciplinas 2

Leia mais

Parte I Requirement Engineering. Gestão de Projectos Informáticos. Gestão do Âmbito (Scope Management) Requirement Engineering.

Parte I Requirement Engineering. Gestão de Projectos Informáticos. Gestão do Âmbito (Scope Management) Requirement Engineering. Parte I Requirement Engineering Gestão de Projectos Informáticos Gestão do Âmbito (Scope Management) Requirement Engineering Introduzir as noções requisitos de sistema e processo de engª de requisitos

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

Leia mais

Uma proposta de um processo prático para apoiar o reuso de software

Uma proposta de um processo prático para apoiar o reuso de software Uma proposta de um processo prático para apoiar o reuso de software Rosangela Kronig (UNIP) rkronig.mes.engprod@unip.br Ivanir Costa (UNIP) icosta@unip.br Mauro Spínola (UNIP) mspinola@unip.br Resumo A

Leia mais

Concepção e Elaboração

Concepção e Elaboração UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Análise e Projeto Orientado a Objetos Concepção e Elaboração Estudo

Leia mais

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Reuso. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reuso Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Reutilização de Software Na maioria das áreas de engenharia de software, sistemas são desenvolvidos

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS Elicitação Ciclo de Vida Clássico ou Convencional O Modelo Cascata Análise Ana Paula Terra Bacelo Blois Implementação Material Adaptado do Prof. Marcelo Yamaguti

Leia mais

Engenharia de Software Questionário sobre Engenharia de Requisitos Resolvido Prof. MSc Wagner Siqueira Cavalcante

Engenharia de Software Questionário sobre Engenharia de Requisitos Resolvido Prof. MSc Wagner Siqueira Cavalcante 1 - Q193183 ( Prova: FCC - 2011 - TRT - 19ª Região (AL) - Analista Judiciário - Tecnologia da Informação / Engenharia de Software / Análise de Requisitos; Engenharia de Requisitos; ) De acordo com Sommerville,

Leia mais

Engenharia de Software I

Engenharia de Software I Engenharia de Software I Rogério Eduardo Garcia (rogerio@fct.unesp.br) Bacharelado em Ciência da Computação Aula 05 Material preparado por Fernanda Madeiral Delfim Tópicos Aula 5 Contextualização UML Astah

Leia mais

Ontologia Aplicada ao Desenvolvimento de Sistemas de Informação sob o Paradigma da Computação em Nuvem

Ontologia Aplicada ao Desenvolvimento de Sistemas de Informação sob o Paradigma da Computação em Nuvem Ontologia Aplicada ao Desenvolvimento de Sistemas de Informação sob o Paradigma da Computação em Nuvem Luiz Cláudio Hogrefe Orientador: Prof. Roberto Heinzle, Doutor Roteiro Introdução Fundamentação teórica

Leia mais

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS PDS - DATASUS Processo de Desenvolvimento de Software do DATASUS Coordenação Geral de Arquitetura e Engenharia Tecnológica Coordenação de Padronização e Qualidade de Software Gerência de Padrões e Software

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software O que é software? Software e Engenharia de Software Programas de computador Entidade abstrata. Ferramentas (mecanismos) pelas quais: exploramos os recursos do hardware. executamos determinadas tarefas

Leia mais

Linha de Produto de Software

Linha de Produto de Software Linha de Produto de Software Jair C Leite DIMAp/UFRN O que é linha de produto de software? Técnica de produção baseada em outras engenharias fábricas que desenvolvem uma mesma família de produtos com partes

Leia mais

Verificação e Validação de Requisitos

Verificação e Validação de Requisitos Verificação e Validação de Requisitos Verificação e Validação dos Requisitos Casos de Uso e Esp. Suplementar Plano e Casos de Teste Requisitos p/ Inspeção Verificar conflitos de requisitos Verificar consistência

Leia mais

Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF

Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação UFJF 1. Identificação de um problema a ser implementado 2. Análise

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Prof. José Honorato F.N. Prof. José Honorato F.N. honoratonunes@gmail.com Requisitos de Software Software é o conjunto dos programas e dos meios não materiais que possibilitam o

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

Unified Modeling Language UML - Notações

Unified Modeling Language UML - Notações Unified Modeling Language UML - Notações Prof. Ms. Elvio Gilberto da Silva elvio@fmr.edu.br UML Ponto de Vista É gerada com propósito geral de uma linguagem de modelagem visual usada para especificar,

Leia mais

Introdução à Engenharia de Software

Introdução à Engenharia de Software Introdução à Engenharia de Software Professor: Rômulo César romulodandrade@gmail.com www.romulocesar.com.br Imagem Clássica Objetivo da aula Depois desta aula você terá uma visão sobre o que é a engenharia

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios

Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas. Criação de uma Serviço de Geração de Relatórios Universidade Federal de Goiás Centro de Recursos Computacionais - CERCOMP Divisão de Sistemas Criação de uma Serviço de Geração de Relatórios Goiânia 12/2011 Versionamento 12/12/2011 Hugo Marciano... 1.0

Leia mais

Documento de Requisitos

Documento de Requisitos UNIVERSIDADE FEDERAL DE PERNAMBUCO CENTRO DE INFORMÁTICA GRADUAÇÃO EM ENGENHARIA DA COMPUTAÇÃO Documento de Requisitos Sistema Gerenciador de Atendimento de Chamados Técnicos Grupo: Luiz Augusto Zelaquett

Leia mais

JOSÉ AUGUSTO FABRI. Uma Proposta de Modelo para a Criação e a Organização de Processos de Produção em um Contexto de Fábrica de Software

JOSÉ AUGUSTO FABRI. Uma Proposta de Modelo para a Criação e a Organização de Processos de Produção em um Contexto de Fábrica de Software JOSÉ AUGUSTO FABRI Uma Proposta de Modelo para a Criação e a Organização de Processos de Produção em um Contexto de Fábrica de Software São Paulo 2007 JOSÉ AUGUSTO FABRI Uma Proposta de Modelo para a Criação

Leia mais

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS

ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS ESPECIFICAÇÃO DO AMBIENTE EXPSEE SEGUNDO O MÉTODO CATALYSIS RESUMO Este artigo apresenta a especificação de um sistema gerenciador de workflow, o ExPSEE, de acordo com a abordagem de desenvolvimento baseado

Leia mais

Requisitos de Software. Teresa Maciel DEINFO/UFRPE

Requisitos de Software. Teresa Maciel DEINFO/UFRPE Requisitos de Software Teresa Maciel DEINFO/UFRPE 1 Requisito de Software Características que o produto de software deverá apresentar para atender às necessidades e expectativas do cliente. 2 Requisito

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores

Leia mais

Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software

Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software Requisitos de Ferramentas Especializadas de Gestão de Configuração de Software Ricardo Terra 1 1 Departamento de Ciência da Computação Universidade Federal de Minas Gerais (UFMG) Campus da Pampulha 31.270-010

Leia mais

Palavras-chave: Desenvolvimento Baseado em Componentes (DBC), Transformação de Software, framework e ObjectPascal.

Palavras-chave: Desenvolvimento Baseado em Componentes (DBC), Transformação de Software, framework e ObjectPascal. Construção e Reutilização de de Software do Domínio de Cardiologia João L C Moraes, Daniel Lucrédio, Adriano A Bossonaro, Dr Rubens Tofano, Prof Dr Antonio F Prado DC/UFSCar - Departamento de Computação

Leia mais

ORGANIZAÇÃO CURRICULAR

ORGANIZAÇÃO CURRICULAR ORGANIZAÇÃO CURRICULAR O curso Técnico em Informática, em Nível Médio Subseqüente, será organizado de forma semestral, com aulas presenciais, compostos por disciplinas, com conteúdos estabelecidos, tendo

Leia mais

Uma Abordagem usando PU

Uma Abordagem usando PU Uma Abordagem usando PU Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Baseada em: Rational Software Corpotation G. Booch, Ivar Jacobson,

Leia mais

SISTEMA DE GESTÃO DE PROJETOS DE SOFTWARE - SGPS

SISTEMA DE GESTÃO DE PROJETOS DE SOFTWARE - SGPS SISTEMA DE GESTÃO DE PROJETOS DE SOFTWARE - SGPS Lilian R. M. Paiva, Luciene C. Oliveira, Mariana D. Justino, Mateus S. Silva, Mylene L. Rodrigues Engenharia de Computação - Universidade de Uberaba (UNIUBE)

Leia mais

SABiO: Systematic Approach for Building Ontologies

SABiO: Systematic Approach for Building Ontologies SABiO: Systematic Approach for Building Ontologies Ricardo de Almeida Falbo Engenharia de Ontologias Departamento de Informática Universidade Federal do Espírito Santo Agenda Preocupações Principais do

Leia mais

Um Arcabouço open source em Python para DBC com

Um Arcabouço open source em Python para DBC com Um Arcabouço open source em Python para DBC com Suporte à Evolução Dinâmica não Antecipada Yguaratã C. Cavacanti 1, Hyggo Oliveira de Almeida 1, Evandro Costa 2 1 Instituto de Computação Universidade Federal

Leia mais

Universidade do Estado da Bahia UNEB Departamento de Ciências Exatas e da Terra - Campus I

Universidade do Estado da Bahia UNEB Departamento de Ciências Exatas e da Terra - Campus I Metodologia de Desenvolvimento de Sistemas II/CPD025 Conceitos orientação a objetos. Evolução das técnicas de modelagem orientadas a objetos. Estrutura da linguagem UML. Conceito de processo interativo

Leia mais

Processo de Desenvolvimento de Software. Engenharia de Software. nelmarpg@yahoo.com.br

Processo de Desenvolvimento de Software. Engenharia de Software. nelmarpg@yahoo.com.br Processo de Desenvolvimento de Software nelmarpg@yahoo.com.br 1 Objetivos Contextualizar Análise e Projeto de software dentro de uma metodologia de desenvolvimento (um processo de desenvolvimento de software)

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: SIG Aula N : 11 Tema: Como desenvolver e

Leia mais

Prototipação. Clarindo Pádua 2. Referências. Prototipação. Introdução. Tipos de protótipos. Vantagens. Riscos. Ferramentas de prototipação

Prototipação. Clarindo Pádua 2. Referências. Prototipação. Introdução. Tipos de protótipos. Vantagens. Riscos. Ferramentas de prototipação Engenharia de Usabilidade Prof.: Clarindo Isaías Pereira da Silva e Pádua Synergia / Gestus Departamento de Ciência da Computação - UFMG Clarindo Pádua 2 Referências Hix, D.; Hartson, H. R. Developing

Leia mais

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Processos de Software. 2007 by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando

Leia mais

Processo de Software

Processo de Software Processo de Software Uma importante contribuição da área de pesquisa de processo de software tem sido a conscientização de que o desenvolvimento de software é um processo complexo. Pesquisadores e profissionais

Leia mais

Introdução à. Engenharia de Software. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.

Introdução à. Engenharia de Software. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu. "Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software Introdução à Engenharia de Software Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha

Leia mais

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software. Processos de Software Objetivos Apresentar os modelos de processo de software Conjunto coerente de atividades para especificar, projetar, implementar e testar s de software Descrever os diferentes modelos

Leia mais

Tópicos de Ambiente Web. Modulo 2 Processo de desenvolvimento de um site Professora: Sheila Cáceres

Tópicos de Ambiente Web. Modulo 2 Processo de desenvolvimento de um site Professora: Sheila Cáceres Tópicos de Ambiente Web Modulo 2 Processo de desenvolvimento de um site Professora: Sheila Cáceres Roteiro Motivação Desenvolvimento de um site Etapas no desenvolvimento de software (software:site) Analise

Leia mais

Suporte à Engenharia Reversa para o ambiente SEA

Suporte à Engenharia Reversa para o ambiente SEA Otavio Pereira Suporte à Engenharia Reversa para o ambiente SEA Orientador: Ricardo Pereira e Silva Universidade Federal de Santa Catarina - UFSC Departamento de Informática e Estatística - INE Florianópolis

Leia mais

Qualidade de Software. Anderson Belgamo

Qualidade de Software. Anderson Belgamo Qualidade de Software Anderson Belgamo Qualidade de Software Software Processo Produto Processo de Software Pessoas com habilidades, treinamento e motivação Processo de Desenvolvimento Ferramentas e Equipamentos

Leia mais

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de:

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de: i Sumário 1 Introdução 1 1.1 Linguagens....................................... 1 1.2 O que é um Compilador?................................ 2 1.3 Processadores de Programas: Compiladores, Interpretadores

Leia mais

! Software e Engenharia de Software! Engenharia de Software e Programação! Histórico. " Crise do Software

! Software e Engenharia de Software! Engenharia de Software e Programação! Histórico.  Crise do Software Agenda Introdução a Engenharia de Cleidson de Souza cdesouza@ufpa.br http://www.ufpa.br/cdesouza! e! e Programação! Histórico " Crise do! No Silver Bullet! Fases Genéricas do Processo de Desenvolvimento

Leia mais

O Processo de Desenvolvimento de Software

O Processo de Desenvolvimento de Software O Processo de Desenvolvimento de Software Objetivos Contextualizar Análise e Projeto de software dentro de uma metodologia de desenvolvimento (um processo de desenvolvimento de software) Um processo de

Leia mais

Tecnologia e Sistemas de Informações

Tecnologia e Sistemas de Informações Universidade Federal do Vale do São Francisco Tecnologia e Sistemas de Informações Prof. Ricardo Argenton Ramos Aula 3 Componentes de SIs Pessoas SI Organiz. Unidades que exercem diferentes funções, tais

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 27 http://www.ic.uff.br/~bianca/engsoft2/ Aula 27-26/07/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software Métricas para software

Leia mais

ENGENHARIA DE REQUISITOS

ENGENHARIA DE REQUISITOS Universidade Federal de Santa Maria Mestrado em Computação ELC 923 Processos de Negócio e Engenharia de Requisitos Especialização em Modelagem e Desenvolvimento de Aplicações Web com JAVA ENGENHARIA DE

Leia mais

Engenharia de Software

Engenharia de Software Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo

Leia mais

Orientações para o Planejamento e Realização do Projeto Final

Orientações para o Planejamento e Realização do Projeto Final Orientações para o Planejamento e Realização do Projeto Final Simone Diniz Junqueira Barbosa Versão: 1.0.4 Orientações para o Planejamento e Realização do Projeto Final Sumário 1 Introdução... 3 2 Projeto

Leia mais

ATENAS: Um Sistema Gerenciador de Regras de Negócio

ATENAS: Um Sistema Gerenciador de Regras de Negócio 1. Introdução ATENAS: Um Sistema Gerenciador de Regras de Negócio Geraldo Zimbrão da Silva (IM/UFRJ) Victor Teixeira de Almeida (COPPE/UFRJ) Jano Moreira de Souza (COPPE/UFRJ) Francisco Gonçalves Pereira

Leia mais

Microsoft Visual Studio Express 2012 for Windows Desktop

Microsoft Visual Studio Express 2012 for Windows Desktop Microsoft Visual Studio Express 2012 for Windows Desktop Apresentação da ferramenta Professor: Danilo Giacobo Página pessoal: www.danilogiacobo.eti.br E-mail: danilogiacobo@gmail.com 1 Introdução Visual

Leia mais

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE

ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE ENGENHARIA DE SOFTWARE/ SISTEMAS DE SOFTWARE CMP1280/CMP1250 Prof. Me. Fábio Assunção Introdução à Engenharia de Software SOFTWARE Programa de computador acompanhado dos dados de documentação e configuração

Leia mais

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr Engenharia de Software Apostila I >>> Introdução à ES - HEngholmJr Histórico de Revisões Data Versão Descrição Autor 12/08/2014 1.0 Criação da primeira versão HEngholmJr Agenda Introdução à Engenharia

Leia mais

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas.

Palavras-Chaves: estoque, modelagem, requisitos, UML, vendas. UTILIZAÇÃO DA UML NO DESENVOLVIMENTO DE SISTEMA DE CONTROLE DE VENDAS E ESTOQUE GILBERTO FRANCISCO PACHECO DOS SANTOS Discente da AEMS Faculdades Integradas de Três Lagoas JACKSON LUIZ ARROSTI Discente

Leia mais

Uma Ontologia Genérica para a Análise de Domínio e Usuário na Engenharia de Domínio Multiagente

Uma Ontologia Genérica para a Análise de Domínio e Usuário na Engenharia de Domínio Multiagente Uma Ontologia Genérica para a Análise de Domínio e Usuário na Engenharia de Domínio Multiagente Carla Gomes de Faria1, Ismênia Ribeiro de Oliveira1, Rosario Girardi1 1Universidade Federal do Maranhão (UFMA)

Leia mais

FAP - Faculdade de Apucarana Curso de Sistemas de Informação RESUMO EXPANDIDO DE TRABALHO DE CONCLUSÃO DE CURSO -

FAP - Faculdade de Apucarana Curso de Sistemas de Informação RESUMO EXPANDIDO DE TRABALHO DE CONCLUSÃO DE CURSO - FAP - Faculdade de Apucarana Curso de Sistemas de Informação RESUMO EXPANDIDO DE TRABALHO DE CONCLUSÃO DE CURSO RESUMO EXPANDIDO DE TRABALHO DE CONCLUSÃO DE CURSO - PLATAFORMA ARES: UMA PLATAFORMA VIRTUAL

Leia mais

Professor: Curso: Disciplina:

Professor: Curso: Disciplina: Professor: Curso: Disciplina: Aula 1 Turma: Esp. Marcos Morais de Sousa Sistemas de informação Engenharia de Software I Dinâmica da disciplina, plano de curso e avaliação 03º semestre Prof. Esp. Marcos

Leia mais

Persistência e Banco de Dados em Jogos Digitais

Persistência e Banco de Dados em Jogos Digitais Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem

Leia mais

Requisitos de Software

Requisitos de Software Requisitos de Software Centro de Informática - Universidade Federal de Pernambuco Kiev Gama kiev@cin.ufpe.br Slides originais elaborados por Ian Sommerville e adaptado pelos professores Márcio Cornélio,

Leia mais

Engenharia de Software 2012/3 Aula 4 Engenharia de Requisitos

Engenharia de Software 2012/3 Aula 4 Engenharia de Requisitos Engenharia de Software Engenharia de Software 2012/3 Aula 4 Engenharia de Requisitos Thiago P. da Silva thiagosilva.inf@gmail.com Agenda Engenharia de Requisitos Níveis de Descrição dos Requisitos Tipos

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Requisitos Cap. 06 e 07 Sommerville 8 ed. REQUISITOS DE SOFTWARE» Requisitos são descrições de serviços fornecidos pelo sistema e suas restrições operacionais. REQUISITOS DE USUÁRIOS: São

Leia mais

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) RELATÓRIO DE ENTREGA DO PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) PARA A ELABORAÇÃO DOS PLANOS MUNICIPAIS DE GESTÃO INTEGRADA DE RESÍDUOS SÓLIDOS PMGIRS PARA OS MUNICÍPIOS DE NOVO HORIZONTE, JUPIÁ, GALVÃO,

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES [Observação: O template a seguir é utilizado como roteiro para projeto de sistemas orientado

Leia mais

DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS

DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL DEPARTAMENTO DE COMPUTAÇÃO E ESTATÍSTICA DESENVOLVENDO APLICAÇÕES WEB UTILIZANDO A FERRAMENTA WEBSCHARTS LÍCIO SÉRGIO FERRAZ DE BRITO MARCELO AUGUSTO SANTOS TURINE

Leia mais

ANÁLISE DO PRODUTO NX CMM INSPECTION PROGRAMMING

ANÁLISE DO PRODUTO NX CMM INSPECTION PROGRAMMING Análise do Produto Dr. Charles Clarke ANÁLISE DO PRODUTO NX CMM INSPECTION PROGRAMMING Tendências e requisitos do setor...3 Uma nova abordagem de programação de inspeção de CMM...4 O aplicativo na prática...5

Leia mais

DESENVOLVIMENTO BASEADO EM COMPONENTES: UM REPOSITÓRIO PARA O SETOR AGROPECUÁRIO

DESENVOLVIMENTO BASEADO EM COMPONENTES: UM REPOSITÓRIO PARA O SETOR AGROPECUÁRIO DESENVOLVIMENTO BASEADO EM COMPONENTES: UM REPOSITÓRIO PARA O SETOR AGROPECUÁRIO Fernanda Campos 1 Regina Braga 2 Viviane Kawamura 3 Leonardo Gravina 4 Rodrigo Rezende 5 RESUMO Este trabalho descreve o

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software Roteiro Software Evolução do Software Engenharia de Software Modelo Espiral Software Software Definição Conjunto de instruções que manipulam estruturas de dados (informação) Composição

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Modelagem de Dados Usando o Modelo Entidade-Relacionamento Usando o Modelo Entidade-Relacionamento MER 1 MER Levantamento e Análise de requisitos Entrevista Entender e documentar seus requisitos de dados Requisitos funcionais da aplicação empregadas ao banco de

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com)

ARQUITETURA DE SISTEMAS. Cleviton Monteiro (cleviton@gmail.com) ARQUITETURA DE SISTEMAS Cleviton Monteiro (cleviton@gmail.com) Roteiro Definição Documento de arquitetura Modelos de representação da arquitetura Estilos arquiteturais Arquitetura de sistemas web Arquitetura

Leia mais

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1

Engenharia de Software. Parte I. Introdução. Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Engenharia de Software Parte I Introdução Metodologias para o Desenvolvimento de Sistemas DAS 5312 1 Mitos do Desenvolvimento de Software A declaração de objetivos é suficiente para se construir um software.

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Introdução Projeto de Arquitetura (Cap 11 - Sommerville) UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Até agora, estudamos: Os

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 28 Revisão para a Prova 2 http://www.ic.uff.br/~bianca/engsoft2/ Aula 28-28/07/2006 1 Matéria para a Prova 2 Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap.

Leia mais

Sistemas de Informações Gerenciais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Sistemas de Informações Gerenciais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Sistemas de Informações Gerenciais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Como Desenvolver Sistemas de Informação Capítulo 11 Pág. 337 2

Leia mais

Universidade Paulista

Universidade Paulista Universidade Paulista Ciência da Computação Sistemas de Informação Gestão da Qualidade Principais pontos da NBR ISO/IEC 12207 - Tecnologia da Informação Processos de ciclo de vida de software Sergio Petersen

Leia mais

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - MÓDULO 2 - ANÁLISE DE REQUISITOS DE SOFTWARE APLICATIVO 1. INTRODUÇÃO Entender os requisitos de um problema está entre as tarefas mais difíceis na construção de um software. Na maioria das vezes o cliente

Leia mais

Capítulo 25. Gerenciamento de Configuração. Engenharia de Software Prof. Flávio de Oliveira Silva, Ph.D.

Capítulo 25. Gerenciamento de Configuração. Engenharia de Software Prof. Flávio de Oliveira Silva, Ph.D. Capítulo 25 Gerenciamento de Configuração slide 624 2011 Pearson Prentice Hall. Todos os direitos reservados. Tópicos abordados Gerenciamento de mudanças Gerenciamento de versões Construção de sistemas

Leia mais

Análise e Conc epç ão de Sist em as de Inform aç ão,qwurgxomrj(qj GH5HTXLVLWRV. Adaptado a partir de Gerald Kotonya and Ian Sommerville

Análise e Conc epç ão de Sist em as de Inform aç ão,qwurgxomrj(qj GH5HTXLVLWRV. Adaptado a partir de Gerald Kotonya and Ian Sommerville Análise e Conc epç ão de Sist em as de Inform aç ão,qwurgxomrj(qj GH5HTXLVLWRV Adaptado a partir de Gerald Kotonya and Ian Sommerville 1 Objectivos Introduzir as noções requisitos de sistema e processo

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

Projeto com Reuso. Projeto com Reuso. Tópicos. Objetivos. Construir o software a partir de componentes reutilizáveis. Traduzidos por Jacinta Pereira

Projeto com Reuso. Projeto com Reuso. Tópicos. Objetivos. Construir o software a partir de componentes reutilizáveis. Traduzidos por Jacinta Pereira Projeto com Reuso Projeto com Reuso Construir o software a partir de componentes reutilizáveis. Traduzidos por Jacinta Pereira Apresentados/Alterados por Rossana Andrade Ian Sommerville 2000 Software Engineering,

Leia mais

Se observarmos nos diferentes livros. Planejamento de Testes a partir de Casos de Uso

Se observarmos nos diferentes livros. Planejamento de Testes a partir de Casos de Uso Planejamento de Testes a partir de Casos de Uso Arilo Cláudio Dias Neto ariloclaudio@gmail.com É Bacharel em Ciência da Computação formado na Universidade Federal do Amazonas, Mestre em Engenharia de Sistemas

Leia mais

Prototipação de Software

Prototipação de Software UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Prototipação de Software Engenharia de Software 2o. Semestre de 2005

Leia mais

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software Ciência da Computação ENGENHARIA DE SOFTWARE Análise dos Requisitos de Software Prof. Claudinei Dias email: prof.claudinei.dias@gmail.com Roteiro Introdução Tipos de requisitos Atividades Princípios da

Leia mais

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo? O que é a UML? Introdução a UML Linguagem Gráfica de Modelagem para: Visualizar Especificar Construir Documentar Comunicar Artefatos de sistemas complexos Linguagem: vocabulário + regras de combinação

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais