8 resultados para Linhas de produto de software
em Lume - Repositório Digital da Universidade Federal do Rio Grande do Sul
Resumo:
A tecnologia de workflow vem apresentando um grande crescimento nos últimos anos. Os Workflow Management Systems (WfMS) ou Sistemas de Gerenciamento de Workflow oferecem uma abordagem sistemática para uniformizar, automatizar e gerenciar os processos de negócios. Esta tecnologia requer técnicas de engenharia de software que facilitem a construção desse tipo de sistema. Há muito vem se formando uma consciência em engenharia de software de que para a obtenção de produtos com alta qualidade e que sejam economicamente viáveis torna-se necessário um conjunto sistemático de processos, técnicas e ferramentas. A reutilização está entre as técnicas mais relevantes desse conjunto. Parte-se do princípio que, reutilizando partes bem especificadas, desenvolvidas e testadas, pode-se construir software em menor tempo e com maior confiabilidade. Muitas técnicas que favorecem a reutilização têm sido propostas ao longo dos últimos anos. Entre estas técnicas estão: engenharia de domínio, frameworks, padrões, arquitetura de software e desenvolvimento baseado em componentes. Porém, o que falta nesse contexto é uma maneira sistemática e previsível de realizar a reutilização. Assim, o enfoque de linha de produto de software surge como uma proposta sistemática de desenvolvimento de software, baseada em uma família de produtos que compartilham um conjunto gerenciado de características entre seus principais artefatos. Estes artefatos incluem uma arquitetura base e um conjunto de componentes comuns para preencher esta arquitetura. O projeto de uma arquitetura para uma família de produtos deve considerar as semelhanças e variabilidades entre os produtos desta família. Esta dissertação apresenta uma proposta de arquitetura de linha de produto para sistemas de gerenciamento de workflow. Esta arquitetura pode ser usada para facilitar o processo de produção de diferentes sistemas de gerenciamento de workflow que possuem características comuns, mas que também possuam aspectos diferentes de acordo com as necessidades da indústria. O desenvolvimento da arquitetura proposta tomou como base a arquitetura genérica e o modelo de referência da Workflow Management Coalition (WfMC) e o padrão de arquitetura Process Manager desenvolvido no contexto do projeto ExPSEE1. O processo de desenvolvimento da arquitetura seguiu o processo sugerido pelo Catalysis com algumas modificações para representar variabilidade. A arquitetura proposta foi descrita e simulada através da ADL (Architecture Description Language) Rapide. A principal contribuição deste trabalho é uma arquitetura de linha de produto para sistemas de gerenciamento de workflow. Pode-se destacar também contribuições para uma proposta de sistematização de um processo de desenvolvimento de arquitetura de linha de produto e também um melhor entendimento dos conceitos e abordagens relacionados à prática de linha de produto, uma vez que esta tecnologia é recente e vem sendo largamente aplicada nas empresas.
Resumo:
O crescimento experimentado pela indústria do software nas últimas décadas, trouxe consigo o aumento das exigências do mercado. É exigido das organizações de software, que os sistemas sejam construídos de acordo com prazo e custos determinados, obedecendo-se certos padrões de qualidade. Para atender tais exigências e assim obter o diferencial competitivo, tornou-se necessário investir no processo de desenvolvimento de software, dada a relação cada vez mais evidente entre a qualidade do produto de software e a eficiência e eficácia do processo de desenvolvimento adotado. Uma estratégia na busca pela maturidade em termos de processos é a definição e adoção de um processo único a ser seguido em todos os projetos de uma organização, denominado processo padrão. Levando-se em consideração a singularidade de cada novo projeto de software, é natural presumir que o processo padrão tenha de ser adaptado para as necessidades específicas de cada situação, de forma a ser aceito, ter seu uso maximizado e garantir a qualidade do software a ser produzido. Este trabalho apresenta, assim, o APSEE-Tail, um modelo para apoiar o engenheiro de processos na tarefa de adaptar o processo padrão de uma organização de software para as particularidades de cada um de seus projetos, possibilitando maior efetividade e eficiência no uso do mesmo. Sua abordagem de adaptação é livre, orientada à atividades e baseada no raciocínio, através da combinação das técnicas de interpretação de regras e CBR (Case Based Reasoning), sobre o conhecimento necessário. Tal conhecimento, neste trabalho, é agrupado em três categorias: diretrizes de adaptação do processo padrão, tipos de característica usados para definir os projetos de software e informações sobre adaptações realizadas anteriormente. Os diferentes componentes envolvidos na definição do APSEE-Tail foram especificados algebricamente, o que constituiu uma base semântica de alto nível de abstração e possibilitou a construção de um protótipo, implementado no ADS (Ambiente de Desenvolvimento de Software) Prosoft-Java e fracamente acoplado ao APSEE, um ambiente de engenharia de software centrado no processo também prototipado no Prosoft-Java, tornando-se assim parte do meta-processo adotado pelo mesmo. O texto apresenta ainda alguma fundamentação teórica sobre a área de Adaptação de Processos de Software, considerações sobre as abordagens pesquisadas, enfatizando as que mais influenciaram o APSEE-Tail, e um exemplo de aplicação do protótipo construído. Por fim, são apresentadas as contribuições e limitações da proposta, na visão do autor, bem como os trabalhos futuros vislumbrados.
Resumo:
Esta dissertação aborda a utilização de métodos de concepção e avaliação ergonômica no desenvolvimento da interface gráfica de um sistema de Correio e Agenda Corporativo. Além dos métodos tradicionais, foi utilizado o método do Design Macroergonômico (DM), proposto por Fogliatto & Guimarães (1999), desenvolvido para auxiliar no projeto ergonômico de produtos e postos de trabalho, que tem como bases a macroergonomia e a ergonomia participativa. No estudo de caso abordado neste trabalho, o DM permitiu que fossem coletadas e analisadas as demandas e os índices de satisfação dos usuários e especialistas quanto à qualidade ergonômica. Os resultados obtidos demonstraram que o Design Macroergonômico, usado de forma integrada com outros métodos, é uma ferramenta útil para a administração do processo de melhoria contínua no desenvolvimento de sistemas com ênfase ergonômica.
Resumo:
O desenvolvimento e manutenção de software fazem parte de um processo intrinsecamente difícil e que consome tempo e custos, principalmente quando o sistema consiste de milhares de linhas de código. Por isso, sistemas de visualização de software objetivam prover mecanismos para construir representações visuais de informações sobre programas e sistemas, através das quais o programador pode analisar e compreender características de sua estrutura e funcionamento em um maior nível de abstração do que o código fonte. Assim, ferramentas visuais de software que suportam as tarefas de desenvolvimento, depuração, manutenção e reutilização tornam-se mais necessárias pelo fato de ajudarem a reduzir a complexidade inerente do processo de compreensão. Esse trabalho tem como objetivo principal o desenvolvimento de um visualizador que exiba as informações existentes nos programas de forma mais rápida e legível, evitando que o programador/analista tenha que percorrer as linhas de código. O texto inicialmente situa a área de visualização de informações, abordando a área de visualização de software, uma vez que a visualização de software é assim chamada por tratar da visualização de informações que são extraídas de programas. Em seguida, é apresentado um estudo de caso baseado no desenvolvimento dos sistemas da empresa Benfare Informática, no qual caracteriza-se a necessidade de ferramentas que auxiliem a compreensão de programas, com o objetivo de otimizar as operações de manutenção e desenvolvimento de programas. O restante do trabalho trata do sistema VisProgress que foi um protótipo desenvolvido como ferramenta de apoio para a equipe de desenvolvimento da empresa e como forma de avaliar o uso de técnicas de visualização em tal situação. A ferramenta desenvolvida é um visualizador de informações que percorre programas escritos em Progress, ferramenta de desenvolvimento utilizada pela empresa, e extrai as informações encontradas nos programas. A visualização é dividida em três partes. A primeira permite a visualização de informações textuais extraídas diretamente do código fonte dos programas que compõem os sistemas, a segunda faz a visualização de um grafo que representa a chamada de programas, e a terceira e última faz a visualização também de um grafo, porém representando o compartilhamento de variáveis entre os programas. A obtenção dos grafos foi construída em Delphi, porém a visualização gráfica é feita através da ferramenta Dotty, ferramenta específica para visualização de grafos. Após a descrição do protótipo implementado, são apresentados os resultados obtidos com a avaliação da ferramenta feita nas empresas Benfare Informática e Dzset Soluções e Sistemas para Computação.
Resumo:
Construção de software com qualidade tem motivado diversas pesquisas na área de Engenharia de Software. Problemas como a grande complexidade requerida pelas aplicações atuais e a necessidade de gerenciamento de um número cada vez maior de pessoas envolvidas em projetos são obstáculos para serem transpostos. Trabalhos relacionados a tecnologia de processos de software aparecem como uma proposta para se obter maior controle das atividades realizadas com o intuito de se obter maior qualidade. A simulação de processos de software, através da representação dos passos definidos em um modelo, tem sido utilizada no auxílio a gerentes de projetos de sistemas para fornecer-lhes informações preciosas sobre o desenvolvimento de um sistema especificado. A representação de conhecimento a respeito das características relacionadas a um ambiente de desenvolvimento ajuda na obtenção de simulações mais realísticas. A partir do modelo, o simulador obtém uma descrição do ambiente em que deve atuar, baseado no conhecimento que se tem a respeito do ambiente. Esse trabalho apresenta um modelo de simulação de processos de software baseado em conhecimento para ser inserido em um ambiente de engenharia de processos de software. A função do modelo é simular um processo de software instanciado, procurando detectar inconsistências no mesmo que possam gerar problemas durante a sua execução, como aumento de custos e comprometimento da qualidade do(s) produto(s) obtido(s). Após a simulação o projetista pode constatar a necessidade de se refazer o modelo, ajustar parâmetros ou executar o processo de software. O objetivo da simulação, nesse trabalho, é auxiliar as pessoas responsáveis por um ambiente de desenvolvimento a obter modelos de processos validados. O modelo de simulação foi definido para ser utilizado no ambiente PROSOFT, que é um ambiente de desenvolvimento que permite a integração de novas ferramentas para desenvolvimento de software. O ambiente PROSOFT vem recebendo propostas de extensão que tem contribuído para o seu aprimoramento, fornecendo para seus usuários uma quantidade cada vez maior de ferramentas de auxílio a construção de artefatos de software. As propostas mais recentes foram um modelo para construção de sistemas especialistas, a definição de um ambiente cooperativo e um gerenciador de processos de software. ATOs algébricos (construções do PROSOFT) são utilizados para especificar formalmente o modelo de simulação definido neste trabalho. A validação é realizada através de um modelo em UML (Unified Method Language) que foi utilizado como base para a construção de um programa implementado usando a linguagem Java. Isso ocorre porque a ferramenta do PROSOFT (implementada em Java) que seria utilizada para validar as especificações algébricas ainda não está finalizada.
Resumo:
Esta dissertação de mestrado investigou o processo de criação do conhecimento organizacional em uma relação Universidade-Empresa. Para isto, foi estudado o caso do desenvolvimento de um novo produto por uma empresa de informática em parceria com uma universidade. Para apresentar como ocorreu o processo de criação do conhecimento organizacional no caso estudado, foram verificadas a natureza e a forma de implementação das condições que capacitam as fases da criação do conhecimento organizacional, e a forma de ocorrência destas fases. Na pesquisa de campo deste estudo utilizou-se um instrumental especialmente criado para a investigação da criação do conhecimento organizacional em projetos de pesquisa e desenvolvimento (P&D). Ao atingir os seus objetivos, este estudo de caso apresenta como pode ser criado um ambiente favorável à relação universidade-empresa quando esta relação tem como finalidade a P&D de um novo produto.
Resumo:
Desde o início dos anos 90, uma tendência no desenvolvimento de software tem despertado a atenção dos pesquisadores: a distribuição do desenvolvimento. Esse fenômeno é um reflexo de mudanças sociais e econômicas, que têm levado organizações a distribuírem geograficamente seus recursos e investimentos, visando aumento de produtividade, melhorias na qualidade e redução de custos no desenvolvimento de software. Em virtude dessa distribuição, equipes geograficamente dispersas cooperam para a obtenção de um produto final de software. A distribuição física das equipes agrava problemas já inerentes à gerência do processo de software. O desenvolvimento de ambientes, modelos e ferramentas para gerenciar processos conduzidos nesse contexto é um desafio cada vez mais importante nos estudos em Tecnologia de Processos de Software. Os ambientes de suporte a processos devem prover infra-estrutura para processos distribuídos. Este trabalho propõe um modelo de gerência de processos distribuídos, denominado APSEE-Global, que estende o APSEE, um ambiente de engenharia de software centrado no processo desenvolvido no contexto do grupo de pesquisa Prosoft, provendo um conjunto de funcionalidades para suporte a processos distribuídos. O APSEE-Global viabiliza o aumento da autonomia das equipes que participam do projeto, pela possibilidade de adotarem modelos de processo distintos e pela gerência descentralizada do processo de desenvolvimento; permite a documentação e facilita a análise e a gerência das relações entre as equipes; e provê um canal de comunicação formal para acompanhamento da execução do processo distribuído. Os diferentes componentes do APSEE-Global foram especificados formalmente, o que constitui uma base semântica de alto nível de abstração que deu origem à implementação de um protótipo integrado ao ambiente de desenvolvimento de software Prosoft. A especificação do modelo foi realizada pela combinação dos formalismos Prosoft-Algébrico e Gramática de Grafos.
Resumo:
Em sistemas produtivos onde a diversificação da produção é vista como estratégia competitiva, a customização torna-se uma ferramenta importante, pois possibilita a produção de itens diferenciados a custos similares aos de produtos padronizados. No entanto, sua implementação requer certa flexibilidade no processo produtivo, sendo esta adquirida através da adoção de linhas de montagem capazes de alternar diferentes modelos de um mesmo produto, denominadas como linhas de montagem multi-modelos. Neste tipo de sistema produtivo, a distribuição das tarefas de montagem entre as estações de trabalho tende a ser mais complexa, devido às características de cada modelo produzido pela linha. Dessa forma, o estudo do problema de balanceamento de linhas de montagem multi-modelos é necessário ao desejar-se obter uma melhor distribuição da carga de trabalho entre as estações e, conseqüentemente, um aumento de produtividade. Esta dissertação propõe uma sistemática para realização de balanceamento em linha de montagem multi-modelos. Para tanto, são classificados quanto às suas características e aplicabilidade procedimentos de balanceamento de linhas multi-modelos desenvolvidos por diversos autores. Um desses procedimentos, inserido na sistemática proposta, tem sua aplicação ilustrada através de um estudo de caso em uma indústria de manufatura.