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

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

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

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

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

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

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: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

Extração de Requisitos

Extração de Requisitos Extração de Requisitos Extração de requisitos é o processo de transformação das idéias que estão na mente dos usuários (a entrada) em um documento formal (saída). Pode se entender também como o processo

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

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

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

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 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

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID Maik Olher CHAVES 1 ; Daniela Costa Terra 2. 1 Graduado no curso de Tecnologia em Análise e Desenvolvimento de Sistemas

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância

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

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

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

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

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

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Especificação de Requisitos

Especificação de Requisitos Projeto/Versão: Versão 11.80 Melhoria Requisito/Módulo: 000552 / Conector Sub-Requisito/Função: Multas Tarefa/Chamado: 01.08.01 País: Brasil Data Especificação: 13/05/13 Rotinas Envolvidas Rotina Tipo

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

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

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

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

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

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

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

TOTVS BA Guia de Customização Linha Logix

TOTVS BA Guia de Customização Linha Logix TOTVS BA Guia de Customização Linha Logix Guia de Customização Sumário Título do documento 1. Objetivo... 3 2. Introdução... 3 3. Customização... 3 2 TOTVS BA Linha Logix Guia de Customização Projeto/Versão:

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

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

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

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

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme

Leia mais

Uso de taxonomias na gestão de conteúdo de portais corporativos.

Uso de taxonomias na gestão de conteúdo de portais corporativos. Gestão de Conteúdo web através de ontologias: conceitos e aplicações Fernando Silva Parreiras Contextualização O que? Uso de taxonomias na gestão de conteúdo de portais corporativos. Quem? Gerentes, consultores

Leia mais

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management MASSACHUSETTS INSTITUTE OF TECHNOLOGY Sloan School of Management 15.565 INTEGRAÇÃO DE SISTEMAS DE INFORMAÇÃO: FATORES TECNOLÓGICOS, ESTRATÉGICOS E ORGANIZACIONAIS Panorama Funcional CP0 -- INTRODUÇÃO AO

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado

Leia mais

Automação de Locais Distantes

Automação de Locais Distantes Automação de Locais Distantes Adaptação do texto Improving Automation at Remote Sites da GE Fanuc/ Water por Peter Sowmy e Márcia Campos, Gerentes de Contas da. Nova tecnologia reduz custos no tratamento

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

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior Prof. Antonio Almeida de Barros Jr. Introdução Dados Informações Banco de Dados Conceitos Básicos em Bancos de Dados Definição BD - Banco de Dados SGBD - Sistema de Gerenciamento de BD Programa de Aplicação

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

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

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:

Apesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma: 1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que

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

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.

Leia mais

Modelagemde Software Orientadaa Objetos com UML

Modelagemde Software Orientadaa Objetos com UML Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para

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

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

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

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

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

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

Plano de Gerenciamento do Projeto

Plano de Gerenciamento do Projeto Projeto para Soluções Contábeis 2015 Plano de Gerenciamento do Projeto Baseado na 5ª edição do Guia PMBOK Brendon Genssinger o e Elcimar Silva Higor Muniz Juliermes Henrique 23/11/2015 1 Histórico de alterações

Leia mais

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

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 Engenharia de! Engenharia de e Programação! Histórico " Crise do! No Silver Bullet! Fases Genéricas do

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

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

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

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com

Engenharia de Software: conceitos e aplicações. Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com Engenharia de Software: conceitos e aplicações Prof. Tiago Eugenio de Melo, MSc tiagodemelo@gmail.com 1 Objetivos da aula Apresentar os conceitos de Engenharia de Software e explicar a sua importância.

Leia mais

Engenharia de Domínio baseada na Reengenharia de Sistemas Legados

Engenharia de Domínio baseada na Reengenharia de Sistemas Legados 1021 X Salão de Iniciação Científica PUCRS Engenharia de Domínio baseada na Reengenharia de Sistemas Legados Cássia Zottis¹, Profa. Dra. Ana Paula Terra Bacelo 1 (orientadora) 1 Faculdade de Informática,

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto Conceitos de Linguagens de Roteiro: Apresentação do plano de ensino; Apresentação do plano de

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software O que é a engenharia de software É um conjunto integrado de métodos e ferramentas utilizadas para especificar, projetar, implementar e manter um sistema. Método É uma prescrição

Leia mais

Gerenciamento de software como ativo de automação industrial

Gerenciamento de software como ativo de automação industrial Gerenciamento de software como ativo de automação industrial INTRODUÇÃO Quando falamos em gerenciamento de ativos na área de automação industrial, fica evidente a intenção de cuidar e manter bens materiais

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

Termo de Abertura Sistema de Vendas de Pizzas Online (PizzaWeb) - Versão 1.0

Termo de Abertura Sistema de Vendas de Pizzas Online (PizzaWeb) - Versão 1.0 Termo de Abertura Sistema de Vendas de Pizzas Online (PizzaWeb) - Versão 1.0 Versão do Documento: 1.1 Histórico de Revisão Data Versão do Documento Descrição Autor 18/03/2011 1.0 Montar o Termo de Abertura.

Leia mais

Análise e Projeto de Sistemas de Informação. Andrêza Leite andreza.lba@gmail.com

Análise e Projeto de Sistemas de Informação. Andrêza Leite andreza.lba@gmail.com Análise e Projeto de Sistemas de Informação Andrêza Leite andreza.lba@gmail.com Roteiro Sistemas de Informação Ciclo de Desenvolvimento de SI Projeto Análise Estruturada Análise Orientada a Objetos Como

Leia mais

WHITE PAPER MD2 METABRIDGE KHRONOS

WHITE PAPER MD2 METABRIDGE KHRONOS WHITE PAPER MD2 METABRIDGE KHRONOS Sumário Executivo A geração de informações de negócio em ambientes corporativos demanda o encadeamento de um elevado número de processos computacionais. Um dos maiores

Leia mais

Introdução ao Active Directory AD

Introdução ao Active Directory AD Introdução ao Active Directory AD Curso Técnico em Redes de Computadores SENAC - DF Professor Airton Ribeiro O Active Directory, ou simplesmente AD como é usualmente conhecido, é um serviço de diretórios

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

Banco do Brasil S.A. Consulta ao Mercado - RFP - Request for Proposa Aquisição de Ferramenta de Gestão de Limites Dúvida de Fornecedor

Banco do Brasil S.A. Consulta ao Mercado - RFP - Request for Proposa Aquisição de Ferramenta de Gestão de Limites Dúvida de Fornecedor 1. Em relação ao módulo para Atribuição de Limites, entendemos que Banco do Brasil busca uma solução para o processo de originação/concessão de crédito. Frente a essa necessidade, o Banco do Brasil busca

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

Para cada fase consideramos. Tempo para um projeto típico Tempo para um projeto Complexo. Arquitetura do Processo Unificado. A meta a ser atingida

Para cada fase consideramos. Tempo para um projeto típico Tempo para um projeto Complexo. Arquitetura do Processo Unificado. A meta a ser atingida Arquitetura do Processo Unificado Tempo para um projeto típico Tempo para um projeto Complexo O tempo gasto nas fases iniciais aumentam Para cada fase consideramos A meta a ser atingida Workflows a executar

Leia mais

Especialização em Engenharia de Software com Ênfase em Software Livre ESL2/2008. Projeto Agenda Saúde Requisitos e Modelagem UML

Especialização em Engenharia de Software com Ênfase em Software Livre ESL2/2008. Projeto Agenda Saúde Requisitos e Modelagem UML Projeto Agenda Saúde Requisitos e Modelagem UML Histórico de Revisão Versão 0.1 Data 01/06/09 Revisor Descrição Versão inicial Sumário 1. Introdução...4 1.1 Visão geral deste documento...4 1.2 Módulos

Leia mais

Tutorial Sistema de Eventos de Certificação e Capacitação

Tutorial Sistema de Eventos de Certificação e Capacitação Tutorial Sistema de Eventos de Certificação e Capacitação Junho 2014 Sumário 1 O que é o Sistema de Certificados?... 3 2 Como acessar o Sistema?... 3 3 - Pré-requisitos para a Geração dos Certificados...

Leia mais

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas

GUIA DE CURSO. Tecnologia em Sistemas de Informação. Tecnologia em Desenvolvimento Web. Tecnologia em Análise e Desenvolvimento de Sistemas PIM PROGRAMA DE INTEGRAÇÃO COM O MERCADO GUIA DE CURSO Tecnologia em Sistemas de Informação Tecnologia em Desenvolvimento Web Tecnologia em Análise e Desenvolvimento de Sistemas Tecnologia em Sistemas

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

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

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

INSTALAÇÃO DE NOKIA CONNECTIVITY CABLE DRIVERS

INSTALAÇÃO DE NOKIA CONNECTIVITY CABLE DRIVERS GUIA DE CONSULTA RÁPIDA DA INSTALAÇÃO DE NOKIA CONNECTIVITY CABLE DRIVERS 1/6 Copyright 2003-2004 Nokia. Todos os direitos reservados. Conteúdo 1. INTRODUÇÃO...3 2. REQUISITOS DO SISTEMA...3 3. INSTALANDO

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

SISTEMA GERENCIADOR DE BANCO DE DADOS

SISTEMA GERENCIADOR DE BANCO DE DADOS BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR

Leia mais

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0 O que é BABok? O BABok 2.0, Corpo de Conhecimento de Análise de Negócios, é considerado como um Guia Referência de Práticas de Análise de Negócio. Este guia é publicado e mantido pelo IIBA. O guia BABok

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

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