73 research outputs found

    An OMG model-based approach for aligning information systems requirements and architectures with business

    Get PDF
    Tese de Doutoramento (Programa Doutoral em Tecnologias e Sistemas de Informação)The challenges involved in developing information systems (which are able to adapt to rapidly changing business and technological conditions) are directly related to the importance of their alignment with the business counterpart. These challenges comprise issues that cross management and information systems domains, relating and aligning them in order to attain superior performance for the organization, while identifying its strategy and tailoring its business processes. As this relation is increasingly intertwined its concepts are conducted to pragmatic methods, incorporating both management and information systems components, for how, when and where this alignment really matters. The related topics of the alignment between business and information systems comprise diverse paths of research, though with little common ground established inside the community, where problems arouse due to the fast moving business and technological environments. According to these circumstances, the process of developing information systems to support the alignment benefits from incorporating the use of structured and model-based approaches. So, as the development of evermore complex information systems presents a challenge for the currently available methods, the use of models to support the alignment with business stands as an increasingly important issue. Following those challenges, we set out to question how to develop solutions aligning information systems with business in a model-based approach. Accordingly, we support our research on the need to understand what are the perspectives involved in aligning information systems with business, and, moreover, to comprehend in what sense model adoption drives information systems development. So, the proposed goals for this thesis are: (1) set the basis for the elicitation of business requirements in order to support a well-grounded development of information systems; (2) provide for the generation of business models based on the business requirements, while assuring their alignment and traceability; and (3) arrange for the derivation of information system architectures from the business requirements, while attaining alignment and traceability for their mutual transformation and adaptation. Several issues surrounding these goals have already been described and approached in diverse ways by other researchers, where existing approaches and associated methods achieved good results. Nevertheless, these approaches are not without their shortfalls, sometimes failing to present a complete solution, others being unable to adapt to new challenges, or even incapable of reacting to recent trends. In order to tackle these issues we propose to build upon those approaches by adapting, evolving and innovating on solutions in each of the three proposed goals, respectively intertwining with perspectives from related standards and reference models. Answering the first goal, in what regards the main contributions of this thesis, we propose to broaden the elicitation of requirements by relating functional and nonfunctional requirements from business processes. So, we present a unified metamodel representation for those requirements, accompanied by a customizable method for their joint elicitation, based-on business-driven use-cases, goals and rules. This approach adopts the Rational Unified Process (RUP) development methodology and the Business Motivation Model (BMM) standard model language representation for business requirements. Moreover, the metamodel representation and method operationalization are accompanied by a prototype support tool that completes this first contribution. For the second goal, a more business-oriented one correlated to the higher-level requirements, we propose to generate business models directly from the inferred functional and nonfunctional requirements. So, we present a three-dimensional approach built on the relation of the referred requirements with the Balanced Scorecard (BSC) reference model, where an additional mapping to the Business Model Canvas (BMC) is also made available. This proposal provides an associated metamodel representation for the relation between the elements involved and a customizable method for their operationalization, all accompanied by a prototype support tool. On the third goal, focused on system architectures and connected to the lower-level requirements, we propose to derive service-oriented participants from the functional requirements, while aligning the nonfunctional requirements with the quality characteristics of the solution to-be. First, we present an evolution of an existing method for the derivation of a logical architecture, in order to adapt it to a service-oriented approach (SOA). Then, following on the existing relation between the nonfunctional and functional side of the low-level requirements, our approach is able to associate these last with its related services on the derived architecture, in another three-dimensional approach. Additionally, a mapping of the nonfunctional requirements with the system quality characteristics (CISQ) is made available. Once more, an associated metamodel, a customizable method and a prototype support tool are also provided. The development of these three approaches is supported through the execution of tasks which originate artifacts and lead to publications associated to their respective research and development efforts, all according to the Design Science Research (DSR) methodology. These are applied in ongoing projects involving experimental scenarios in industrial settings and associated to established research reference patterns, balancing the interests of both researchers and practitioners while focused both on technology and management audiences. The results obtained from their evaluation reflect the quality and depth of our findings, helping to validate the scientific contribution of this work.Os desafios implicados no desenvolvimento de sistemas de informação (que sejam capazes de se adaptar a condições tecnológicas e de negócios em rápida mutação) estão diretamente relacionados à importância do seu alinhamento com a contraparte do negócio. Esses desafios envolvem questões que cruzam os domínios da gestão e dos sistemas de informação, relacionando-os e alinhando-os com o intuito de alcançar um desempenho superior para a organização, ao mesmo tempo que identificam a sua estratégia e adequam os seus processos de negócio. Como esta relação está cada vez mais interligada, os seus conceitos são canalizados para métodos pragmáticos, incorporando ambos os componentes de sistemas de informação e de gestão, para saber como, quando e onde este alinhamento realmente interessa. Os tópicos relacionados com o alinhamento entre negócio e sistemas de informação abrangem diversos caminhos de pesquisa, embora com poucos alicerces em comum estabelecidos dentro da comunidade, onde os problemas surgem devido às rápidas mudanças nos negócios e nos ambientes tecnológicos. De acordo com estas circunstâncias, o processo de desenvolvimento de sistemas de informação para apoiar o alinhamento beneficia de incorporar o uso de abordagens estruturadas e baseadas em modelos. Assim, dado que o desenvolvimento de sistemas de informação cada vez mais complexos apresenta um desafio para os métodos atualmente disponíveis, o uso de modelos para apoiar o alinhamento com o negócio destaca-se como uma questão cada vez mais importante. Em linha com esses desafios, estabelecemos a questão de como desenvolver soluções para alinhar sistemas de informações com o negócio numa abordagem baseada em modelos. Neste sentido, apoiamos a nossa pesquisa na necessidade de compreender quais são as perspetivas envolvidas no alinhamento dos sistemas de informação com o negócio, e, além disso, de compreender em que sentido a adoção de modelos capacita o desenvolvimento desses sistemas. Assim, os objetivos propostos para esta tese são: (1) definir as bases para o levantamento de requisitos de negócio a fim de suportar um desenvolvimento bem fundamentado de sistemas de informação; (2) disponibilizar a geração de modelos de negócio baseados nos requisitos de negócio, garantindo o alinhamento e a rastreabilidade entre ambos; e (3) estruturar a derivação de arquiteturas de sistema de informação a partir dos requisitos de negócio, preservando o alinhamento e rastreabilidade para a sua mútua transformação e adaptação. Várias questões envolvendo estes objetivos foram já descritas e tratadas de diversas maneiras por outros investigadores, tendo as abordagens existentes e os métodos associados alcançado bons resultados. No entanto, essas abordagens têm as suas lacunas, umas vezes falham em apresentar uma solução completa, noutras são ineficientes ao se adaptarem a novos desafios, ou mesmo incapazes de reagir às novas tendências. Para lidar com estas questões, propomo-nos apoiar nessas abordagens, adaptando, evoluindo e inovando em soluções para cada um dos três objetivos propostos, intersetando-as, respetivamente, com perspetivas de modelos de referência e padrões relacionados. Relativamente ao primeiro objetivo, no que concerne aos principais contributos desta tese, propomos alargar o levantamento de requisitos, relacionando os requisitos funcionais e nãofuncionais dos processos de negócios. Assim, apresentamos um meta-modelo para a representação unificada desses requisitos, acompanhado por um método personalizável para o seu levantamento conjunto, baseada em casos-de-uso, metas e regras orientadas a negócio. Esta abordagem adota a metodologia de desenvolvimento do Rational Unified Process (RUP) e a representação padrão do modelo de linguagem do Business Motivation Model (BMM), para os requisitos de negócio. Além disso, a representação meta-modelo e a operacionalização do método são acompanhados por um protótipo de uma ferramenta de suporte que completa esta primeira contribuição. Quanto ao segundo objetivo, mais orientado ao negócio e correlacionado com os requisitos de nível superior, propomos gerar modelos de negócio a partir dos requisitos funcionais e não-funcionais inferidos. Assim, apresentamos uma abordagem tridimensional, construída sobre a relação dos referidos requisitos com o modelo de referência do Balanced Scorecard (BSC), em que um mapeamento adicional para o Business Model Canvas (BMC) é também disponibilizado. Esta proposta inclui um meta-modelo para representação da relação entre os elementos envolvidos e um método personalizável para a sua operacionalização, tudo acompanhado por um protótipo de uma ferramenta de suporte. No terceiro objetivo, focado em arquiteturas de sistema e ligado aos requisitos de nível inferior, propomos derivar participantes orientados-a-serviços desde os requisitos funcionais, alinhando os requisitos não-funcionais com as características de qualidade da solução a obter. Primeiro, apresentamos uma evolução de um método existente para a derivação de uma arquitetura lógica, adaptando-o a uma abordagem-orientada-a-serviços (SOA). Assim, prosseguindo a relação existente entre o lado não-funcional e funcional dos requisitos de baixo nível, a nossa abordagem associa estes últimos com os serviços relacionados na arquitetura derivada, numa outra abordagem tridimensional. Além disso, um mapeamento dos requisitos não-funcionais com as características de qualidade do sistema (CISQ) é disponibilizado. Mais uma vez, um meta-modelo associado, um método personalizável e um protótipo da ferramenta de suporte são disponibilizados. O desenvolvimento destas três abordagens é suportado pela execução de tarefas, as quais dão origem a artefatos e levam a publicações associadas aos seus esforços de pesquisa e desenvolvimento respetivamente, tudo de acordo com a metodologia DSR. Estas são aplicadas a projetos em andamento, os quais envolvem cenários experimentais em ambientes industriais e associados a padrões de investigação de referência, equilibrando os interesses de investigadores e profissionais assim como dos diferentes públicos de tecnologia e gestão. Os resultados obtidos na sua avaliação refletem a qualidade e a profundidade dos nossos resultados, ajudando a validar a contribuição científica deste trabalho

    Software Development Process Modeling. Developers Perspective to Contemporary Modeling Techniques

    Get PDF
    Formal software development processes and well-defined development methodologies are nowadays seen as the definite way to produce high-quality software within time-limits and budgets. The variety of such high-level methodologies is huge ranging from rigorous process frameworks like CMMI and RUP to more lightweight agile methodologies. The need for managing this variety and the fact that practically every software development organization has its own unique set of development processes and methods have created a profession of software process engineers. Different kinds of informal and formal software process modeling languages are essential tools for process engineers. These are used to define processes in a way which allows easy management of processes, for example process dissemination, process tailoring and process enactment. The process modeling languages are usually used as a tool for process engineering where the main focus is on the processes themselves. This dissertation has a different emphasis. The dissertation analyses modern software development process modeling from the software developers’ point of view. The goal of the dissertation is to investigate whether the software process modeling and the software process models aid software developers in their day-to-day work and what are the main mechanisms for this. The focus of the work is on the Software Process Engineering Metamodel (SPEM) framework which is currently one of the most influential process modeling notations in software engineering. The research theme is elaborated through six scientific articles which represent the dissertation research done with process modeling during an approximately five year period. The research follows the classical engineering research discipline where the current situation is analyzed, a potentially better solution is developed and finally its implications are analyzed. The research applies a variety of different research techniques ranging from literature surveys to qualitative studies done amongst software practitioners. The key finding of the dissertation is that software process modeling notations and techniques are usually developed in process engineering terms. As a consequence the connection between the process models and actual development work is loose. In addition, the modeling standards like SPEM are partially incomplete when it comes to pragmatic process modeling needs, like light-weight modeling and combining pre-defined process components. This leads to a situation, where the full potential of process modeling techniques for aiding the daily development activities can not be achieved. Despite these difficulties the dissertation shows that it is possible to use modeling standards like SPEM to aid software developers in their work. The dissertation presents a light-weight modeling technique, which software development teams can use to quickly analyze their work practices in a more objective manner. The dissertation also shows how process modeling can be used to more easily compare different software development situations and to analyze their differences in a systematic way. Models also help to share this knowledge with others. A qualitative study done amongst Finnish software practitioners verifies the conclusions of other studies in the dissertation. Although processes and development methodologies are seen as an essential part of software development, the process modeling techniques are rarely used during the daily development work. However, the potential of these techniques intrigues the practitioners. As a conclusion the dissertation shows that process modeling techniques, most commonly used as tools for process engineers, can also be used as tools for organizing the daily software development work. This work presents theoretical solutions for bringing the process modeling closer to the ground-level software development activities. These theories are proven feasible by presenting several case studies where the modeling techniques are used e.g. to find differences in the work methods of the members of a software team and to share the process knowledge to a wider audience.Siirretty Doriast

    OpenUP/MDRE: A Model-Driven Requirements Engineering Approach for Health-Care Systems

    Full text link
    The domains and problems for which it would be desirable to introduce information systems are currently very complex and the software development process is thus of the same complexity. One of these domains is health-care. Model-Driven Development (MDD) and Service-Oriented Architecture (SOA) are software development approaches that raise to deal with complexity, to reduce time and cost of development, augmenting flexibility and interoperability. However, many techniques and approaches that have been introduced are of little use when not provided under a formalized and well-documented methodological umbrella. A methodology gives the process a well-defined structure that helps in fast and efficient analysis and design, trouble-free implementation, and finally results in the software product improved quality. While MDD and SOA are gaining their momentum toward the adoption in the software industry, there is one critical issue yet to be addressed before its power is fully realized. It is beyond dispute that requirements engineering (RE) has become a critical task within the software development process. Errors made during this process may have negative effects on subsequent development steps, and on the quality of the resulting software. For this reason, the MDD and SOA development approaches should not only be taken into consideration during design and implementation as usually occurs, but also during the RE process. The contribution of this dissertation aims at improving the development process of health-care applications by proposing OpenUP/MDRE methodology. The main goal of this methodology is to enrich the development process of SOA-based health-care systems by focusing on the requirements engineering processes in the model-driven context. I believe that the integration of those two highly important areas of software engineering, gathered in one consistent process, will provide practitioners with many benets. It is noteworthy that the approach presented here was designed for SOA-based health-care applications, however, it also provides means to adapt it to other architectural paradigms or domains. The OpenUP/MDRE approach is an extension of the lightweight OpenUP methodology for iterative, architecture-oriented and model-driven software development. The motivation for this research comes from the experience I gained as a computer science professional working on the health-care systems. This thesis also presents a comprehensive study about: i) the requirements engineering methods and techniques that are being used in the context of the model-driven development, ii) known generic but flexible and extensible methodologies, as well as approaches for service-oriented systems development, iii) requirements engineering techniques used in the health-care industry. Finally, OpenUP/MDRE was applied to a concrete industrial health-care project in order to show the feasibility and accuracy of this methodological approach.Loniewski, G. (2010). OpenUP/MDRE: A Model-Driven Requirements Engineering Approach for Health-Care Systems. http://hdl.handle.net/10251/11652Archivo delegad

    About model-based approaches in pervasive information systems development

    Get PDF
    Tese de doutoramento em Tecnologias e Sistemas de InformaçãoUbiquitous computing is a research field of computing technology with a growing number of researchers and represents a new direction on the thinking about the integration and use of computers in people’s lives. It aims to achieve a new computing paradigm, one in which there is a high degree of pervasiveness and widespread availability of computers or other IT devices, usually with communication capabilities, in the physical environment. Model-Driven Development (MDD) constitutes an approach to software design and development that strongly focuses and relies on models, through which we build software-platform independent models. Several contributions of MDD are: gains of productivity; concepts closer to domain and reduction of semantic gap; automation and less sensitivity to technological changes; and capture of expert knowledge and reuse. This thesis aims to contribute for the appropriate use of model-based/driven development approaches in software development for pervasive information systems (PIS). This work considers a case study research strategy. It uses two projects developed in the field of ubiquitous and mobile computing that directed their software development to a model-based/driven approach. This thesis describes and analyses the projects. Each one of the project is formalized in a SPEM 2.0 model that presents the main elements of the project. This SPEM model allows perceiving the structure and elements of the project, along with some issues and facts of the project. This thesis conceives a development framework that introduces several useful conceptions. Among these conceptions are the dimensions of development, functional profiles, resources categories, functional profile instances, global and elementary development process. In consonance with this development framework, the thesis proposes a SPEM 2.0 Base Plug-In extension and a development framework pattern to assist in the analysis of the projects. The SPEM 2.0 Base Plug-In extension defines elements that are fundamental to the definition and application of the development framework pattern. The development framework pattern is applied to each of the projects to facilitate the analysis. From the analysis of the projects, the thesis synthesizes a set of guidelines and insight related to the adoption of model-based/driven approaches to pervasive information system development.A computação ubíqua é um campo de investigação de tecnologia de computação com um número crescente de investigadores e representa uma nova direcção no pensamento sobre a integração e o uso de computadores na vida das pessoas. O objectivo é alcançar um novo paradigma de computação em que há um alto grau de abrangência e ampla disponibilidade de computadores ou outros dispositivos de tecnologias de informação, geralmente com recursos de comunicação, no ambiente físico. Model-Driven Development (MDD), constitui uma abordagem de desenho e desenvolvimento de software que se baseia em modelos, através da qual construímos modelos de plataforma de software independentes. Várias contribuições de MDD são: ganhos de produtividade; conceitos mais próximos ao domínio e à redução do salto semântico; automação e menor sensibilidade às mudanças tecnológicas; captura de conhecimento especializado e reutilização. Esta tese visa contribuir para a adequada utilização de abordagens de desenvolvimento baseadas/conduzidas por modelos no desenvolvimento de software para sistemas de informação “pervasive” (PIS). Esta tese apresenta uma estratégia de investigação de estudo de caso. Usa, como estudos de caso, dois projectos desenvolvidos no campo da computação ubíqua e móvel, e os quais dirigiram o seu desenvolvimento de software para uma abordagem baseada/conduzida por modelos. Esta tese descreve e analisa os projectos; cada um dos projectos é formalizado num modelo SPEM 2.0 que apresenta os elementos principais do projecto. Este modelo SPEM permite perceber a estrutura e os elementos do projecto, juntamente com alguns problemas e factos do projecto. Esta tese concebe uma estrutura de desenvolvimento que apresenta várias concepções úteis. Entre essas concepções estão as dimensões de desenvolvimento, os perfis funcionais, as categorias de recursos, instâncias de perfil funcional, os processos de desenvolvimento global e elementar. Em consonância com esta estrutura de desenvolvimento, a tese propõe uma extensão ao SPEM 2.0 Base Plug- In e um padrão de desenvolvimento para auxiliarem a análise dos projectos. A extensão ao SPEM 2.0 Base Plug-In define elementos que são fundamentais para a definição e aplicação do padrão de estrutura de desenvolvimento. O padrão de estrutura de desenvolvimento é aplicado a cada um dos projectos para facilitar a sua análise. A partir da análise dos projectos, a tese sintetiza um conjunto de directrizes e de ilações relacionadas com a adopção de abordagens MDD para o desenvolvimento de PIS.Programa Operacional Educacional (PRODEP), e do Instituto Politécnico de Bragança, através da sua Escola Superior de Tecnologia e de Gestão.Instituto Politécnico de Bragança. Escola Superior de Tecnologia e de Gestã

    BPMNt : a proposal for flexible process tailoring representation in BPMN /

    Get PDF
    Business Process Model and Notation (BPMN) is a de-facto standard for business process modeling, which focuses on the representation of the process behavior. However, it can also succeed in representing the behavior of software processes, since they are a type of business process. Although BPMN has been extensively used for modeling processes in different domains, its standard specification does not have any mechanism to support users in activities related to process adaptation (tailoring). Moreover, researches extending BPMN are based on complex consolidated models, which hamper the analysis and maintenance of individual variant process models and are not appropriate for application domains in which process variations are difficult to predict, such as in software development processes. Thus, our objective was to provide a BPMN-compliant extension and associated mechanisms for specifying flexible process tailoring on models produced with this language while ensuring the correctness of adapted process models and explicitly capturing change traces. We have focused our research on the domains of Software Process Engineering (SPE) and Business Process Management (BPM). At last, we evaluated the applicability of the proposal for representing realistic tailoring scenarios in both domains.BPMN (Business Process Model and Notation) é um padrão para modelagem de processos de negócio, que tem seu foco na representação do comportamento de processos. No entanto, ele pode também ser usado para representar o comportamento de processos de software, já que eles são um tipo de processo de negócio. Embora BPMN tem sido extensivamente usado para modelar processos em diferentes domínios, sua especificação padrão não possui nenhum mecanismo para apoiar usuários em atividades relacionadas à adaptação de processos. Pesquisas que estendem o padrão são baseadas em modelos complexos, que dificultam a análise e manutenção de modelos variantes, e não são apropriadas para domínios de aplicação onde variações de processo são difíceis de predizer, como em processos de desenvolvimento de software. Assim, nosso objetivo foi fornecer uma extensão para BPMN, chamada BPMNt, e mecanismos de suporte para especificar, de modo flexível, adaptações em processos modelados com esta linguagem. BPMNt deve também garantir a corretude de modelos adaptados e explicitamente capturar rastros de mudanças realizadas. Essa pesquisa teve como foco os domínios de Engenharia de Processos de Software e Gerenciamento de Processos de Negócio. Por fim, nós avaliamos a aplicabilidade da proposta para representar cenários de adaptação reais em ambos os domínios

    Proceedings of the International Workshop on Vocabularies, Ontologies and Rules for The Enterprise (VORTE 2005)

    Get PDF

    Refinement and variability techniques in model transformation of software requirements

    Get PDF
    Tese de Doutoramento em Tecnologias e Sistemas de InformaçãoThis thesis begins with analyzing user functional requirements (as use cases) from the perspective of detail. In that sense, it investigates the applicability of the UML (Unified Modeling Language) «include» relationship to the representation of use case refinement and proposes another relationship for that purpose. It also clarifies the process of modeling use cases with UML when refinement is involved and provides for some guidelines in order to conduct that process. Afterwards, the work of this thesis on use case modeling is expanded to the field of SPLs (Software Product Lines) by means of exploring the UML «extend» relationship. It talks about alternative, specialization and option use cases as the representation of the three variability types this thesis proposes to be translated into stereotypes to mark use cases. Then, this thesis incorporates the refinement of logical architectures with variability support from use cases also with variability support in the 4SRS (Four Step Rule Set) transition method for model transformation of analysis artifacts (use cases) into design artifacts (logical architectures represented as UML component diagrams). The model transformation the 4SRS guides in a stepwise way, from use cases into logical architectures, is based on a software development pattern that addresses architecture. This thesis yields a multilevel and multistage pattern classification that grounds the use of that pattern to generate system functional requirements (as logical architectures). Lastly, the 4SRS transition method is modeled with the SPEM (Software & Systems Process Engineering Metamodel) and formalized as a small software development process dedicated at transitioning from the analysis to the design of software. After that, this thesis presents a case study on the automation of the 4SRS and thoroughly elaborates on the transformation rules that support the model transformations of the 4SRS.Esta tese começa por analisar requisitos funcionais de utilizador (enquanto casos de utilização) sob a perspectiva do detalhe. Nesse sentido, esta tese investiga a aplicabilidade da relação UML (Unified Modeling Language) «include» para a representação do refinamento de casos de utilização e propõe outra relação para esse fim. Esta tese também clarifica o processo de modelação de casos de utilização com a UML quando esse processo envolve refinamento e fornece algumas diretrizes para a condução desse processo. De seguida, o trabalho desta tese em modelação de casos de utilização é expandido para o campo das linhas de produtos de software através da exploração da relação UML «extend». Esse trabalho fala de casos de utilização alternativos, de especialização e opcionais como a representação dos três tipos de variabilidade que esta tese propõe que sejam traduzidos em estereótipos para a marcação de casos de utilização. Depois, esta tese incorpora o refinamento de arquitecturas lógicas com suporte à variabilidade a partir de casos de utilização também com suporte à variabilidade no método de transição 4SRS (Four Step Rule Set) para a tranformação de modelos de artefatos de análise (casos de utilização) em modelos de artefatos de design (arquitecturas lógicas representadas como diagramas de components UML). A transformação de modelos que o 4SRS guia por passos, de casos de utilização em arquitecturas lógicas, baseia-se num padrão de desenvolvimento de software que visa arquitetura. Esta tese produz uma classificação multinível e multietapa de padrões, que sustenta a utilização desse padrão na geração de requisitos funcionais de sistema (enquanto arquitecturas lógicas). Por fim, o método de transição 4SRS é modelado com o SPEM (Software & Systems Process Engineering Metamodel) e formalizado como um pequeno processo de desenvolvimento de software dedicado a transitar da análise para o design the software. Depois disso, esta tese apresenta um estudo de caso sobre a automatização do 4SRS e elabora minuciosamente acerca das regras de transformação que apoiam as transformações de modelos do 4SRS

    The engineering of an object-oriented software development methodology

    Get PDF
    EThOS - Electronic Theses Online ServiceGBUnited Kingdo
    corecore