4 research outputs found

    Tailoring CMMI-DEV and RUP frameworks for ML2/3-compliance analysis

    Get PDF
    Tese de doutoramento do Programa de Doutoramento em InformáticaThe Capability Maturity Model Integration is a reference model composed of a set of guidelines that has to be implemented to attain a specific level of maturity in a particular set of process areas. This model aims to establish a set of "best practices" that should be used to ensure the software development with a high degree of quality. However, CMMI is not widely adopted by small businesses. Its adoption by these companies is somewhat complex since, in its guidelines, it merely indicates what to do, but it does not indicate how to implement each guideline. The Rational Unified Process is a software development methodology, which has as its main objective to avail its users the possibility of the software developing high-quality, within time and budget. This thesis aims to contribute a set of solutions that can be followed by small organizations, in order to implement a more streamlined process model that guarantees an increase in the quality of their products. This thesis adopts and validates a tailoring of the Rational Unified Process allowing it to be more easily implemented by small businesses or small software teams. This thesis presents a study of the dependencies between all the Capability Maturity Model Integration process areas, in order to enable the understanding of what the implementation impact is of a given process area in the other process areas. Finally, we present a mapping between the Capability Maturity Model Integration and the Rational Unified Process, which aims to help small software development teams in the implementation of the Maturity Level 2 (presented in more detail) and Maturity Level 3 of the Capability Maturity Model Integration. This mapping specifies what team members have to perform in order to implement most of the guidelines that the Capability Maturity Model Integration requires for each of their maturity levels.O Capability Maturity Model Integration é um modelo de referência que contém um conjunto de orientações necessárias para atingir um determinado nível de maturidade em áreas de processo específicas. Este modelo tem como objetivo estabelecer um conjunto de "melhores práticas" que devem ser utilizadas para garantir o desenvolvimento de software com um elevado grau de qualidade. No entanto o CMMI não é muito adotado por pequenas empresas. A sua adoção por estas empresas torna-se ligeiramente complexa, uma vez que nas suas orientações apenas é indicado o que se deve fazer e não o como se pode fazer. O Rational Unified Process é uma metodologia de desenvolvimento de software que tem como principal objetivo garantir aos seus utilizadores o desenvolvimento de software de alta qualidade dentro do tempo e custo previsto. Esta tese pretende contribuir com um conjunto de soluções, que as pequenas empresas podem seguir, de modo a implementarem de uma forma mais simplificada um modelo de processos que lhes garanta um aumento da qualidade dos seus produtos. Esta tese adota e valida uma simplificação do Rational Unified Process permitindo que este seja mais facilmente implementado por pequenas empresas ou pequenas equipas de software. Esta tese apresenta um estudo das dependências existentes entre as várias áreas de processo do Capability Maturity Model Integration de modo a permitir a compreensão de qual o impacto que a implementação de uma determinada área de processo tem nas restantes áreas existentes. Por fim, é apresentado um mapeamento entre o Capability Maturity Model Integration e o Rational Unified Process, que pretende orientar as pequenas equipas de desenvolvimento a implementar nível 2 (apresentado de um modo mais detalhado) e 3 do Capability Maturity Model Integration. Este mapeamento permite indicar aos elementos da equipa o que tem de fazer para conseguir implementar a maior parte das orientações que o Capability Maturity Model Integration impõe para cada um dos seus níveis de maturidade.Este trabalho foi desenvolvido com o apoio da Fundação para a Ciência e Tecnologia e da I2S - Informática Sistemas e Serviços SA., através de uma Bolsa de Doutoramento em Empresa

    Experimental software engineering in educational context

    Get PDF
    Empirical studies are important in software engineering to evaluate new tools, techniques, methods and technologies in a structured way before they are introduced in the industrial (real) software process. Within this PhD thesis we will develop a framework of a consistent process for involving students as subjects of empirical studies of software engineering. In concrete, our experiences with software development teams composed of students will analyze how RUP (Rational Unified Process) processes can be compliant with the CMMI (Capability Maturity Model Integration), namely in the context of MLs (maturity levels) 2 and 3. Additionally, we will also analyze the influence of project management tools to improve the process maturity of the teams. Our final goal of carrying out empirical studies with students is to understand its validity when compared with the corresponding studies in real industrial settings

    Exploring Organizations\u27 Software Quality Assurance Strategies

    Get PDF
    Poor software quality leads to lost profits and even loss of life. U.S. organizations lose billions of dollars annually because of poor software quality. The purpose of this multiple case study was to explore the strategies that quality assurance (QA) leaders in small software development organizations used for successful software quality assurance (SQA) processes. A case study provided the best research design to allow for the exploration of organizational and managerial processes. The target population group was the QA leaders of 3 small software development organizations who successfully implemented SQA processes, located in Saint John, New Brunswick, Canada. The conceptual framework that grounded this study was total quality management (TQM) established by Deming in 1980. Face-to-face semistructured interviews with 2 QA leaders from each organization and documentation including process and training materials provided all the data for analysis. NVivo software aided a qualitative analysis of all collected data using a process of disassembling the data into common codes, reassembling the data into themes, interpreting the meaning, and concluding the data. The resulting major themes were Agile practices, documentation, testing, and lost profits. The results were in contrast to the main themes discovered in the literature review, although there was some overlap. The implications for positive social change include the potential to provide QA leaders with the strategies to improve SQA processes, thereby allowing for improved profits, contributing to the organizations\u27 longevity in business, and strengthening the local economy

    Methodological approaches and techniques for designing ontologies in information systems requirements engineering

    Get PDF
    Programa doutoral em Information Systems and TechnologyThe way we interact with the world around us is changing as new challenges arise, embracing innovative business models, rethinking the organization and processes to maximize results, and evolving change management. Currently, and considering the projects executed, the methodologies used do not fully respond to the companies' needs. On the one hand, organizations are not familiar with the languages used in Information Systems, and on the other hand, they are often unable to validate requirements or business models. These are some of the difficulties encountered that lead us to think about formulating a new approach. Thus, the state of the art presented in this paper includes a study of the models involved in the software development process, where traditional methods and the rivalry of agile methods are present. In addition, a survey is made about Ontologies and what methods exist to conceive, transform, and represent them. Thus, after analyzing some of the various possibilities currently available, we began the process of evolving a method and developing an approach that would allow us to design ontologies. The method we evolved and adapted will allow us to derive terminologies from a specific domain, aggregating them in order to facilitate the construction of a catalog of terminologies. Next, the definition of an approach to designing ontologies will allow the construction of a domain-specific ontology. This approach allows in the first instance to integrate and store the data from different information systems of a given organization. In a second instance, the rules for mapping and building the ontology database are defined. Finally, a technological architecture is also proposed that will allow the mapping of an ontology through the construction of complex networks, allowing mapping and relating terminologies. This doctoral work encompasses numerous Research & Development (R&D) projects belonging to different domains such as Software Industry, Textile Industry, Robotic Industry and Smart Cities. Finally, a critical and descriptive analysis of the work done is performed, and we also point out perspectives for possible future work.A forma como interagimos com o mundo à nossa volta está a mudar à medida que novos desafios surgem, abraçando modelos empresariais inovadores, repensando a organização e os processos para maximizar os resultados, e evoluindo a gestão da mudança. Atualmente, e considerando os projetos executados, as metodologias utilizadas não respondem na totalidade às necessidades das empresas. Por um lado, as organizações não estão familiarizadas com as linguagens utilizadas nos Sistemas de Informação, por outro lado, são muitas vezes incapazes de validar requisitos ou modelos de negócio. Estas são algumas das dificuldades encontradas que nos levam a pensar na formulação de uma nova abordagem. Assim, o estado da arte apresentado neste documento inclui um estudo dos modelos envolvidos no processo de desenvolvimento de software, onde os métodos tradicionais e a rivalidade de métodos ágeis estão presentes. Além disso, é efetuado um levantamento sobre Ontologias e quais os métodos existentes para as conceber, transformar e representar. Assim, e após analisarmos algumas das várias possibilidades atualmente disponíveis, iniciou-se o processo de evolução de um método e desenvolvimento de uma abordagem que nos permitisse conceber ontologias. O método que evoluímos e adaptamos permitirá derivar terminologias de um domínio específico, agregando-as de forma a facilitar a construção de um catálogo de terminologias. Em seguida, a definição de uma abordagem para conceber ontologias permitirá a construção de uma ontologia de um domínio específico. Esta abordagem permite em primeira instância, integrar e armazenar os dados de diferentes sistemas de informação de uma determinada organização. Num segundo momento, são definidas as regras para o mapeamento e construção da base de dados ontológica. Finalmente, é também proposta uma arquitetura tecnológica que permitirá efetuar o mapeamento de uma ontologia através da construção de redes complexas, permitindo mapear e relacionar terminologias. Este trabalho de doutoramento engloba inúmeros projetos de Investigação & Desenvolvimento (I&D) pertencentes a diferentes domínios como por exemplo Indústria de Software, Indústria Têxtil, Indústria Robótica e Smart Cities. Finalmente, é realizada uma análise critica e descritiva do trabalho realizado, sendo que apontamos ainda perspetivas de possíveis trabalhos futuros
    corecore