121 |
Une ingénierie participative des exigences pour les systèmes interactifs complexes en aéronautique / Participatory requirements engineering for complex interactive systems in aeronauticsUninski, Hélène 20 December 2017 (has links)
L'ingénierie des exigences joue un rôle crucial dans la construction de systèmes aéronautiques sûrs. La notion d'exigence constitue la brique de base de la communication entre les différentes parties prenantes du système : client, utilisateurs, ingénieur système, fournisseurs. Non seulement les exigences sont structurantes pour la définition de système, mais le processus de certification lui-même est basé sur la démonstration de la conformité du système avec les exigences spécifiées, notamment par la traçabilité, c'est-à-dire un maintien des liens entre les différents artefacts d'ingénierie (exigences, exigences détaillées, composants, interfaces). Nous avons réalisé une étude qualitative, à base d'interviews contextuelles et prototypes, auprès de 15 praticiens industriels de quatre entreprises aéronautiques, afin d'enquêter sur les activités réellement effectuées par les ingénieurs en exigences et sur le support outillé de ces activités. Nous avons trouvé que les outils spécifiques à l'ingénierie des exigences contraignent les ingénieurs à un flux de travail rigide, qui est en conflit avec une exploration adaptative des problèmes de conception. Les ingénieurs commencent souvent par utiliser des outils à vocation générale pour favoriser l'exploration et la collaboration avec les fournisseurs, au détriment de la traçabilité. Quand les ingénieurs basculent sur le raffinement et la vérification des exigences, ils doivent utiliser des outils spécifiques pour garantir la traçabilité. Le manque d'utilisabilité de ces outils entraine une perte de temps significative et une insatisfaction. Sur la base de nos observations, nous développons une vision située de l'ingénierie des exigences, retranscrivant son rôle entre contexte d'ingénierie et contexte opérationnel du système. Sur la base de scénarios et de prototypes, nous formulons des exigences d'utilisabilité pour les outils spécifiques d'ingénierie des exigences. Nous proposons plus particulièrement des visualisations interactives et coordonnées de texte structuré permettant de décorréler rigueur et rigidité dans le processus d'ingénierie des exigences, en rendant possible une souplesse pendant le processus tout en éliminant progressivement toute approximation en sortie du processus. L'ingénieur bénéfice de visualisations structurées des exigences, à partir desquelles il peut communiquer avec les parties prenantes, chercher du texte, voir l'état d'avancement des exigences, détecter et compléter les informations manquantes par une navigation et un filtrage interactifs sur les visualisations. Au-delà des outils supportant une vision située de l'ingénierie des exigences, nous proposons une nouvelle approche : l'ingénierie participative des exigences. La finalité est la production d'exigences matures spécifiant dans le système futur la prise en compte de situations non prévues dans le système actuel mais gérées par les utilisateurs. Elle est basée sur une articulation de techniques utilisées en conception participative pour impliquer les utilisateurs, avec un effort continu d'abstraction et de formalisation des exigences pour informer la définition du système. Nous appliquons notre approche sur quatre projets aéronautiques : collaboration et contrôle aérien, cockpit d'avion-école électrique, analyse de rapport d'accident et nouvel instrument de vol. Nous présentons les artefacts d'ingénierie issues de l'application de notre approche afin d'en évaluer ses bénéfices. / Requirements Engineering plays a crucial role in coordinating the different stakeholders needed for safe aeronautics systems engineering. The notion of requirement is a key concept in system definition and represents the cornerstone of communication among stakeholders: customer, user, systems engineers, suppliers. The certification process in critical systems requires traceability documents as a means of demonstrating safety, showing links between the several artifacts (high-level requirements, refined requirements, components and interfaces). We conducted a qualitative study, using interviews and mockups, with fifteen industrial practitioners from four aeronautics companies, to investigate which tasks are actually performed by requirements engineers and how current tools support these tasks. We found that RE-specific tools constrain engineers to a rigid workflow, which conflicts with the adaptive exploration of the problem. Engineers often start by using general-purpose tools to foster exploration and collaborative work with suppliers, at the expense of traceability. When engineers shift to requirements refinement and verification, they must use RE-specific tools to grant traceability. But the lack of tool usability yields significant time loss and dissatisfaction. Based on observed RE practices, we devise a situated vision of Requirements Engineering, rendering its role in between the operational context and the engineering context of the system. Based on scenarios and prototypes, we formulate usability insights for RE-specific tools. In particular, we propose interactive coordinated visualizations of structured text, allowing engineers to decorelate rigor from rigidity throughout the RE process, by providing flexibility during the process while gradually tackling approximation to the end of the process. The requirements engineer takes advantage of structured visualizations of requirements, from which he can communicate with stakeholders, search for text, get the progress status of requirements, detect and fill missing information thanks to interactive navigation and filtering. Beyond interactive tools supporting a situated vision of RE, we propose a new approach to RE: participatory requirements engineering (PRE). Its purpose is the production of mature requirements specifying in the future system the coverage of unforeseen situations in the current system, yet managed by users. The approach is based on the combined use of participatory design techniques to involve the users, with a continuous effort of abstraction and requirements statement to inform the system definition. We apply the approach on four projects in aeronautics: collaboration and air traffic control, cockpit of an electric training aircraft, analysis of accident report and new flight instrument. We present the engineering artifacts resulting from the application of the approach in order to evaluate its benefits.
|
122 |
Requirements engineering in software startups: a qualitative investigation / Engenharia de requisitos em startups de software: uma investigação qualitativaJorge Augusto Melegati Gonçalves 06 March 2017 (has links)
Software startups face a very demanding market: they must deliver high innovative solutions in the shortest possible period of time. Resources are limited and time to reach market is short. Then, it is extremely important to gather the right requirements and that they are precise. Nevertheless, software requirements are usually not clear and startups struggle to identify what they should build. This context affects how requirements engineering activities are performed in these organizations. This work seeks to characterize the state-of-practice of requirements engineering in software startups. Using an iterative approach, seventeen interviews were conducted during three stages with founders and/or managers of different Brazilian software startups operating in different market sectors and with different maturity levels. Data was analyzed using grounded theory techniques such open and axial coding through continuous comparison. As a result, a conceptual model of requirements engineering state-of-practice in software startups was developed consisting of its context influences (founders, software development manager, developers, business model, market and ecosystem) and activities description (product team; elicitation; analysis, validation and prioritization; product validation and documentation). Software development and startup development techniques are also presented and their use in the startup context is analyzed. Finally, using a bad smell analogy borrowed from software development literature, some bad practices and behaviors identified in software startups are presented and solutions to avoid them proposed. / Startups de software enfrentam um mercado muito exigente: elas devem entregar soluções altamente inovativas no menor período de tempo possível. Recursos são limitados e tempo para alcançar o mercado é pequeno. Então, é extremamente importante coletar os requisitos certos e que eles sejam precisos. Entretanto, os requisitos de software geralmente não são claros e as startups fazem um grande esforço para identificar quais serão implementados. Esse contexto afeta como as atividades de engenharia de requisitos são executadas nessas organizações. Este trabalho procura compreender o estado-da-prática da engenharia de requisitos em startups de software. Usando uma abordagem iterativa, dezessete entrevistas foram realizados em três diferentes estágios com fundadores e/ou gestores de diferentes startups de software brasileiras operando em diferentes setores e com diferentes estágios de maturidade. Os dados foram analisados usando técnicas de teoria fundamentada como codificação aberta e axial através da comparação contínua. Como resultado, um modelo conceitual do estado-da-prática da engenharia de requisitos em startups de software foi desenvolvido consistindo da suas influências do contexto (fundadores, gerente de desenvolvimento de software, desenvolvedores, modelo de negócio, mercado e ecossistema) e descrição das atividades (time de produto; levantamento; análise, validação e priorização; e documentação). Técnicas oriundas de metodologias de desenvolvimento de software e desenvolvimento de startups também são apresentadas e seu uso em no contexto de startups é analisado. Finalmente, a partir de uma analogia de maus cheiros presente na literatura de desenvolvimento de software, algumas más práticas e maus comportamentos identificados em startups de software são apresentados e algumas sugestões de solução são propostas.
|
123 |
Proposta de participação do Estado do Amazonas em projetos de desenvolvimento global de software. / Proposal for Amazonas state\'s participation in global software development projects.Danny de Souza Lopes 31 August 2010 (has links)
O Estado do Amazonas tem realizado investimentos em educação através da oferta de ensino superior em tecnologia para seus municípios, como alternativa para fomentar o desenvolvimento regional. Porém, de forma complementar, é necessário promover condições para que essas comunidades possam ter acesso a um mercado de trabalho e colocar em prática o conhecimento adquirido, sem que para isso necessitem migrar para outros centros mais desenvolvidos. Este trabalho de pesquisa apresenta uma proposta de inclusão do estado do Amazonas como agente colaborador em projetos de desenvolvimento global de software, através da criação de um conjunto de recomendações para guiar empreendedores no investimento desta solução. O método inclui a coleta de informações sobre as características particulares dos municípios do Estado do Amazonas utilizando técnicas de elicitação de requisitos com foco em engenharia de sistemas, e o estabelecimento de relação entre os problemas regionais e os principais problemas enfrentados por equipes que atuam com desenvolvimento global de software. A partir dessa relação, são geradas recomendações voltadas para capacitação de recursos humanos, investimentos em infraestrutura tecnológica e física local, oferecendo assim uma fonte alternativa de sustentabilidade ao desenvolvimento econômico da região amazônica. / Amazonas State has invested in education by offering higher education in technology for its cities, as an alternative to foster regional development. However, it is necessary to promote conditions for these communities to have access to a labor market and put into practice the acquired knowledge, without the need to migrate to other more developed cities. This work presents a proposal to inclusion of State of Amazonas as a collaborator agent in global software development projects, by establishing a set of recommendations to guide entrepreneurs in the investment of this solution. The method includes collecting information about the particular characteristics of Amazonas cities using requirements elicitation techniques with focus on systems engineering, and the establishment of relationship between the regional problems and the main issues faced by teams working with global software development. From this relationship, the recommendations are generated focused on human resources training, investments in the local physical and technological infrastructure, thus providing an alternative source of sustainability to economic development of Amazonas.
|
124 |
Proposta de método para gestão de requisitos de sistemas integrando modelagem de negócio e linguagens formais. / Proposal for management system requirements method integrating business modeling and formal languages.Oliveira, Valter Castelhano de 23 October 2008 (has links)
Apesar das novas e efetivas técnicas de engenharia de software, os projetos de desenvolvimento de sistemas estão propensos a ter os mesmos problemas que acometem o software de apoio à gestão. Entrega com atraso, acima do orçamento e não suprindo as reais necessidades dos usuários finais ou da organização que está financiando o desenvolvimento do sistema, são os principais problemas. Esse último problema é o que mais afeta o desenvolvimento de sistemas e é um desafio para que o desenvolvimento personalizado seja uma solução real para várias empresas. Este trabalho apresenta uma proposta de método de gestão que auxilie a comunicação entre as atividades associadas à engenharia de requisitos e as atividades associadas à modelagem dos processos de negócio. Essa abordagem concerne à gestão e tratamento de requisitos de sistemas baseando-se em técnicas de engenharia de processos de negócios e de engenharia de requisitos, no processo unificado de desenvolvimento de software e na utilização de linguagens semi-formais e formais de modelagem, UML e SysML respectivamente. O método pretende mitigar os efeitos dos problemas de comunicação existentes entre os diversos integrantes de um projeto, com especial atenção para a comunicação entre a equipe de requisitos do projeto e os stakeholders responsáveis pela aceitação e aprovação do sistema. A pesquisa, com o apoio da apresentação de dois casos que ilustram o método de gestão proposto, permite concluir que é possível tornar mais efetiva e produtiva a comunicação entre os diversos envolvidos com o projeto, podendo resultar em um processo mais eficiente para a aceitação dos requisitos junto aos stakeholders. / Despite new and effective software engineering techniques, system development projects are likely to have the same problems that affect the management support software. Delivery delay, above budget and not fitting the real needs of end users or the organization that is funding the system development, are the most common problems. The latter problem is the one that most affects the systems development and is a challenge for the custom development to be a real solution to several companies. This work presents a proposal for a management method to help the communication between the activities associated with the engineering requirements and the activities associated with business processes modeling. This approach, concerns to the systems requirements treatment and management, is based on business processes engineering and requirements engineering, in software development unified process and in the use of semi-formal and formal modeling languages as UML and SysML, respectively. The method seeks to mitigate the effects of the communication problems among the project members, with special attention to the communication between the project requirements team and the stakeholders responsible for the system acceptance and adoption. The research, supported by the presentation of two cases which illustrates the proposed management method, has concluded that it is possible to make more effective and productive communication among members related with the project, which may result a more efficient process for the stakeholders requirement acceptance.
|
125 |
A Usability Engineering approach to developing an e-commerce web applicationKvist, Markus January 2006 (has links)
<p>Usability is an important aspect of product development that deals with the quality of interaction between the user and the product. Capturing requirements is aimed at understanding what the users expect the system to do. This report attempts to apply principles from both the Usability Engineering and the Requirements Engineering methodologies in the development of a subsystem for managing an e-commerce solution. The main focus is on the user interface design, which is developed by iterating the three phases of design, usability testing and evaluation, until the desired level of usability is achieved. Prototyping was central to the rapid development, but the use of software prototyping tools instead of paper-mockups would reasonably have improved the usefulness of the evaluations. The desired usability level was set to reach a specified fix point, instead of attempting to achieve some absolute usability metrics as is typically practiced. The former approach was apparently simpler to use without the broader experience otherwise needed to write reasonable requirements. The transition from the throw-away prototype to the implemented evolutionary prototype in ASP.NET posed some interesting problems that are further discussed.</p>
|
126 |
Reasoning about Agents in Goal-Oriented Requirements EngineeringLetier, Emmanuel 22 May 2002 (has links)
The thesis proposes a number of techniques for elaborating requirements constructively from high-level goals. The techniques are based on the KAOS goal-oriented method for requirements engineering. This method consists in identifying goals and refining them into subgoals until the latter can be assigned as responsibilities of single agents such as humans, devices and software. Domain properties and assumptions about the software environment are also used during the goal refinement process. The method supports the exploration of alternative goal refinements and alternative responsibility assignments of goals to agents. It also supports the identification and resolution of conflicts between goals, and the identification and resolution of exceptional agent behaviors, called obstacles, that violate goals and assumptions produced during the goal refinement process. The thesis enriches the KAOS framework through three kinds of techniques: (a) techniques for identifying agents, goal refinements, and alternative responsibility assignments, and for deriving agent interfaces from such responsibility assignments; (b) techniques for deriving operational requirements from goal specifications; (c) techniques for generating obstacles to the satisfaction of idealized goals and assumptions, and for generating alternative obstacle resolutions. The result is a coherent body of systematic techniques for requirements elaboration that are both theoretically well-founded (a formal model of agent is defined) and effective in practice (the techniques are validated on two real case studies of significant size: the London ambulance despatching system, and the Bay Area Rapid Transit train system).
|
127 |
Reasoning about Agents in Goal-Oriented Requirements EngineeringLetier, Emmanuel 22 May 2002 (has links)
The thesis proposes a number of techniques for elaborating requirements constructively from high-level goals. The techniques are based on the KAOS goal-oriented method for requirements engineering. This method consists in identifying goals and refining them into subgoals until the latter can be assigned as responsibilities of single agents such as humans, devices and software. Domain properties and assumptions about the software environment are also used during the goal refinement process. The method supports the exploration of alternative goal refinements and alternative responsibility assignments of goals to agents. It also supports the identification and resolution of conflicts between goals, and the identification and resolution of exceptional agent behaviors, called obstacles, that violate goals and assumptions produced during the goal refinement process. The thesis enriches the KAOS framework through three kinds of techniques: (a) techniques for identifying agents, goal refinements, and alternative responsibility assignments, and for deriving agent interfaces from such responsibility assignments; (b) techniques for deriving operational requirements from goal specifications; (c) techniques for generating obstacles to the satisfaction of idealized goals and assumptions, and for generating alternative obstacle resolutions. The result is a coherent body of systematic techniques for requirements elaboration that are both theoretically well-founded (a formal model of agent is defined) and effective in practice (the techniques are validated on two real case studies of significant size: the London ambulance despatching system, and the Bay Area Rapid Transit train system).
|
128 |
Essays in Information Management: Contributions to the Modeling and Analysis of Quality in Information Systems EngineeringJureta, Ivan 19 March 2008 (has links)
Efficient organization requires rigorous and systematic information management, which encompasses information processing and decision making. Within the efforts in management science and informatics invested towards advancing the knowledge on, and providing assistance to decision making, this thesis focuses on the conceptualizations and techniques intended to facilitate the identification, evaluation, and selection of decisions during the earliest stages of information systems engineering, whereby the systems of interest are deployed to partly or fully automate various organizational processes, including information processing ones. The overall motivating problem that drove to, and that unites the various contributions presented in this thesis is how to better inform decision making and guide it towards decisions that will increase the quality (as evaluated both by the engineer and the stakeholders) of the information system being engineered.
Topics in two key related areas are therefore addressed. First, boundedly rational individuals cannot take engineering decisions by accounting for all information that may be, or actually is available to them. As their information processing abilities are limited and their perception biased, it is necessary to filter the available information to a manageable level, and to bring it to a format that facilitates the rigorous reasoning invested in decision making. Second, it is necessary to provide guidance on how to use the given information in decision making.
The first part of this thesis therefore focuses on conceptualizations that facilitate the identification of relevant information and its organization for subsequent analysis, all in the aim of achieving high quality of the system being engineered. In particular, Part I discusses, shows deficiencies, and accordingly revises the conceptual foundations of requirements engineering, a field of information systems engineering that focuses on the identification and analysis of requirements communicated by the stakeholders to the engineer of the system. The novelty of the suggested revision lies primarily in (i) the separation between functional and nonfunctional (i.e., quality) requirements grounded in a foundational ontology, (ii) the introduction of stakeholders' communicated attitudes as important sources of information for the evaluation of alternative requirements engineering decisions, (iii) the reformulation of the so-called ``requirements problem' -- which precisely defines when the requirements engineering effort is successfully completed -- to account for attitudes and nonfunctional requirements, and (iv) the recognition of the importance of defeasible reasoning in the search for a solution to the requirements problem. Acknowledging the importance of defeasible reasoning leads -- in Part II -- to the study of how defeasible reasoning can be incorporated into established decision making processes involved in the identification and analysis of requirements. Novelty in Part II lies mainly in (i) the use of argumentation and justification processes in the modeling and analysis of requirements, (ii) the combined use of design rationale approaches with argumentation and justification, (iii) the recognition that the clarity of arguments is variable (due to ambiguity, vagueness, synonymy, and overgenerality of information going into premises and conclusions in arguments), (iv) the definition of a number of techniques for the detection of unclear information and its clarification, and (v) the use of ``clarity' as a criterion for the discrimination among arguments. Part III shows how the conceptualizations and techniques introduced in Parts I and II are applied within and are relevant to the engineering of information systems, including those that rely on heterogenous and distributed components, as in service-oriented and agent-oriented computing.
|
129 |
Envisioning a Future Decision Support System for Requirements Engineering : A Holistic and Human-centred PerspectiveAlenljung, Beatrice January 2008 (has links)
Complex decision-making is a prominent aspect of requirements engineering (RE) and the need for improved decision support for RE decision-makers has been identified by a number of authors in the research literature. The fundamental viewpoint that permeates this thesis is that RE decision-making can be substantially improved by RE decision support systems (REDSS) based on the actual needs of RE decision-makers as well as the actual generic human decision-making activities that take place in the RE decision processes. Thus, a first step toward better decision support in requirements engineering is to understand complex decision situations of decision-makers. In order to gain a holistic view of the decision situation from a decision-maker’s perspective, a decision situation framework has been created. The framework evolved through an analysis of decision support systems literature and decision-making theories. The decision situation of RE decision-makers has been studied at a systems engineering company and is depicted in this thesis. These situations are described in terms of, for example, RE decision matters, RE decision-making activities, and RE decision processes. Factors that affect RE decision-makers are also identified. Each factor consists of problems and difficulties. Based on the empirical findings, a number of desirable characteristics of a visionary REDSS are suggested. Examples of characteristics are to reduce the cognitive load, to support creativity and idea generation, and to support decision communication. One or more guiding principles are proposed for each characteristic and available techniques are described. The purpose of the principles and techniques is to direct further efforts concerning how to find a solution that can fulfil the characteristic. Our contributions are intended to serve as a road map that can direct the efforts of researchers addressing RE decision-making and RE decision support problems. Our intention is to widen the scope and provide new lines of thought about how decision-making in RE can be supported and improved.
|
130 |
Intégration d'exigences de haut niveau dans les problèmes d'optimisation : théorie et applicationsRoda, Fabio 01 March 2013 (has links) (PDF)
Nous utilisons, ensemble, l'Ingénierie Système et la Programmation mathématique pour intégrer les exigences de haut niveau dans des problèmes d'optimisation. Nous appliquons cette méthode à trois types différents de système. (1) Les Systèmes d'Information (SI), c.à.d. les réseaux des ressources, matérielles, logicielles et utilisateurs, utilisés dans une entreprise, doivent fournir la base des projets qui sont lancés pour répondre aux besoins commerciaux/des affaires (business). Les SI doivent être capables d'évoluer au fil des remplacements d'une technologie par une autre. Nous proposons un modèle opérationnel et une formulation de programmation mathématique qui formalise un problème de priorisation qui se présente dans le contexte de l'évolution technologique d'un système d'information. (2) Les Recommender Systems (RS) sont un type de moteur de recherche dont l'objectif est de fournir des recommandations personnalisées. Nous considérons le problème du design des Recommender Systems dans le but de fournir de bonnes, intéressantes et précises suggestions. Le transport des matériaux dangereux entraine plusieurs problèmes liés aux conséquences écologiques des incidents possibles. (3) Le système de transport doit assurer le transport, pour l'élimination en sécurité des déchets dangereux, d'une façon telle que le risque des possibles incidents soit distribué d'une manière équitable parmi la population. Nous considérons et intégrons dans des formulations de programmation mathématique deux idées différentes d'équité.
|
Page generated in 0.1428 seconds