Uma Abordagem para Definição de Processos Baseada em Reutilização Visando à Alta Maturidade em Processos
Autores
5086 |
898,97,2285
|
|
5087 |
898,97,2285
|
|
5088 |
898,97,2285
|
Informações:
Publicações do PESC
Definir um processo de software não é uma atividade simples; exige experiência e envolve o conhecimento de muitos aspectos da engenharia de software. Nas organizações que buscam a alta maturidade para seus processos, a atividade se torna ainda mais complexa, pois fatores adicionais precisam ser considerados, como informações sobre estabilidade e desempenho dos subprocessos. Além disso, nos diferentes contextos em que processos de software precisam ser definidos (instituições implementadoras de processos, organizações e projetos) existem muitas oportunidades para reutilização de processos, muitas vezes não aproveitadas. Neste contexto, esta tese apresenta uma abordagem para definição de processos baseada em reutilização, que considera, também, o contexto da alta maturidade. Técnicas de reutilização normalmente aplicadas no desenvolvimento de produtos de software são adaptadas para a definição de processos de software. Adicionalmente, informações sobre estabilidade, desempenho e capacidade dos subprocessos são utilizadas ao longo da definição de processos. A abordagem proposta inclui, também, estratégias para definição de processos para e com reutilização e um conjunto de ferramentas de apoio. Para avaliar a viabilidade das propostas desta tese, foram realizadas avaliações, cujos resultados fornecem indícios de que a aplicação da abordagem proposta é viável e fornece bons resultados para a definição de processos.
To define a software process is not a simple task; it demands experience and knowledge related to several aspects of software engineering. In organizations aiming at achieving higher maturity levels for their processes, the activity tends to be even harder, since additional factors must be considered, such as information regarding the stability and performance of subprocesses. Moreover, in the different scenarios in which processes need to be defined (processes implementing institutions, software organizations and projects) there are several process reuse opportunities, which are frequently underutilized. In this context, this thesis presents a reuse-based approach to define software processes, which also considers the higher maturity requirements. Techniques that are usually applied on software product development are adapted to software processes definition. Furthermore, information on subprocesses stability, performance and capacity are used throughout process definition. The proposed approach also comprises different strategies to define processes for and with reuse and a set of supporting tools. To assess the viability of the approach, experimental evaluations were performed and their results indicate that the use of the proposed approach is possible and provide benefits to processes definition.