• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 135
  • 67
  • 7
  • 6
  • 5
  • 5
  • 2
  • 2
  • 2
  • 1
  • 1
  • Tagged with
  • 238
  • 238
  • 135
  • 90
  • 82
  • 52
  • 50
  • 44
  • 43
  • 38
  • 37
  • 36
  • 35
  • 33
  • 33
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
121

Addressing high dimensionality and lack of feature models in testing of software product lines

SOUTO, Sabrina de Figueirêdo 31 March 2015 (has links)
Submitted by Fabio Sobreira Campos da Costa (fabio.sobreira@ufpe.br) on 2016-03-15T15:21:11Z No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) TESE_SABRINA.pdf: 1152470 bytes, checksum: a89ffc94cb3ee813cf52ca2c043171ba (MD5) / Made available in DSpace on 2016-03-15T15:21:11Z (GMT). No. of bitstreams: 2 license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) TESE_SABRINA.pdf: 1152470 bytes, checksum: a89ffc94cb3ee813cf52ca2c043171ba (MD5) Previous issue date: 2015-03-31 / Software Product Lines (SPLs) allow engineers to systematically build families of software products, defined by a unique combination of features—increments in functionality, improving both the efficiency of the software development process and the quality of the software developed. However, testing these kinds of systems is challenging, as it may require running each test against a combinatorial number of products. We call this problem the High Dimensionality Problem. Another obstacle to product line testing is the absence of Feature Models (FMs), making it difficult to discover the real causes for test failures. We call this problem the Lack of Feature Model Problem. The High Dimensionality Problem is associated to the large space of possible configurations that an SPL can reach. If an SPL has n boolean features, for example, there are 2n possible feature combinations. Therefore, systematically testing this kind of system may require running each test against all those combinations, in the worst case. The Lack of Feature Model Problem is related to the absence of feature models. The FM enables accurate categorization of failing tests as failures of programs or the tests themselves, not as failures due to inconsistent combinations of features. For this reason, the lack of FM presents a huge challenge to discover the true causes for test failures. Aiming to solve these problems, we propose two lightweight techniques: SPLat and SPLif. SPLat is a new approach to dynamically prune irrelevant configurations: the configurations to run for a test can be determined during test execution by monitoring accesses to configuration variables. As a result, SPLat reduces the number of configurations. Consequently, SPLat is lightweight compared to prior works that used static analysis and heavyweight dynamic execution. SPLif is a technique for testing SPLs that does not require a priori availability of feature models. Our insight is to use a profile of passing and failing test runs to quickly identify test failures that are indicative of a problem (in test or code) as opposed to a manifestation of execution against an inconsistent combination of features. Experimental results show that SPLat effectively identifies relevant configurations with a low overhead. We also apply SPLat on two large configurable systems (Groupon and GCC), and it scaled without much engineering effort. Experimental results demonstrate that SPLif is useful and effective to quickly find tests that fail on consistent configurations, regardless of how complete the FMs are. Furthermore, we evaluated SPLif on one large extensively tested configurable system, GCC, where it helped to reveal 5 new bugs, 3 of which have been fixed after our bug reports. / Software Product Lines (SPLs) allow engineers to systematically build families of software products, defined by a unique combination of features—increments in functionality, improving both the efficiency of the software development process and the quality of the software developed. However, testing these kinds of systems is challenging, as it may require running each test against a combinatorial number of products. We call this problem the High Dimensionality Problem. Another obstacle to product line testing is the absence of Feature Models (FMs), making it difficult to discover the real causes for test failures. We call this problem the Lack of Feature Model Problem. The High Dimensionality Problem is associated to the large space of possible configurations that an SPL can reach. If an SPL has n boolean features, for example, there are 2n possible feature combinations. Therefore, systematically testing this kind of system may require running each test against all those combinations, in the worst case. The Lack of Feature Model Problem is related to the absence of feature models. The FM enables accurate categorization of failing tests as failures of programs or the tests themselves, not as failures due to inconsistent combinations of features. For this reason, the lack of FM presents a huge challenge to discover the true causes for test failures. Aiming to solve these problems, we propose two lightweight techniques: SPLat and SPLif. SPLat is a new approach to dynamically prune irrelevant configurations: the configurations to run for a test can be determined during test execution by monitoring accesses to configuration variables. As a result, SPLat reduces the number of configurations. Consequently, SPLat is lightweight compared to prior works that used static analysis and heavyweight dynamic execution. SPLif is a technique for testing SPLs that does not require a priori availability of feature models. Our insight is to use a profile of passing and failing test runs to quickly identify test failures that are indicative of a problem (in test or code) as opposed to a manifestation of execution against an inconsistent combination of features. Experimental results show that SPLat effectively identifies relevant configurations with a low overhead. We also apply SPLat on two large configurable systems (Groupon and GCC), and it scaled without much engineering effort. Experimental results demonstrate that SPLif is useful and effective to quickly find tests that fail on consistent configurations, regardless of how complete the FMs are. Furthermore, we evaluated SPLif on one large extensively tested configurable system, GCC, where it helped to reveal 5 new bugs, 3 of which have been fixed after our bug reports.
122

Uma abordagem de desenvolvimento de linha de produtos com uma arquitetura orientada a serviços / A product line development approach with a service-oriented architecture

Paulo Gabriel Gadelha Queiroz 14 December 2009 (has links)
Linha de produtos de software (LPS) corresponde a uma das mais bem sucedidas formas de reúso, pois permite a reutilização de requisitos e arquitetura. Embora o desenvolvimento, manutenção e evolução de uma LPS ainda possua um custo alto quando comparado ao desenvolvimento de sistemas únicos (single systems), um lucro significativo pode ser obtido com a venda de diversos produtos derivados da LPS. No projeto de uma LPS analisa-se os sistemas coletivamente, ou seja, o domínio. Geradores de aplicações são ferramentas capazes de gerar artefatos a partir de uma especificação, e no caso de se ter a especificação de um domínio, é possível gerar aplicações para esse domínio. Web services representam uma tecnologia promissora para disponibilização de serviços na Web e desenvolvimento de software com arquitetura flexível e de fácil manutenção. Neste trabalho é proposta uma abordagem de desenvolvimento de linha de produtos com arquitetura orientada a serviços, na qual a geração de produtos é apoiada por um gerador de aplicações. A abordagem chama-se SoProL-WS e possui o objetivo de reduzir os custos e prazos de desenvolvimento da LPS e facilitar a sua manutenção, evolução e derivação de seus membros. SoProLWS apresenta as atividades e artefatos necessários para partir dos requisitos da LPS, projetar, implementar, configurar um gerador de aplicações e gerar seus membros a partir do gerador ou por meio de uma configuração manual. Além disso, é apresentado um estudo de caso com o desenvolvimento de uma linha de produtos de leilões Web seguindo os passos da abordagem, bem como são discutidas as alternativas de projeto relevantes para esse tipo de desenvolvimento / Software product lines (SPL) is a successful reuse technique that fosters requirements and architecture reuse. Although SPL costs with development, maintenance and evolution increases when compared to single system development, significant profit can be obtained by selling many products derived from SPL. In a SPL project, systems are analised collectively like a domain. Application generators are tools capable of generating artifacts based on an specification, in case of a domain specification, it is possible to generate applications in this domain. Web services represent a technology to make services available over a network and to develop a flexible and adaptable software architecture. This work presents an approach, called SoProL-WS, to develop SPL using service oriented architecture, where product derivation is supported by an applicator generator. The aim of this approach is to enhance flexibility, reuse and consequently decrease SPL development costs. In addition, this work presents a case study where SoProL-WS is applied to develop a Web auctions SPL
123

Integration of Variants Handling in M-System-NT / Integration of Variants Handling in M-System-NT

Zeeshan, Ahmed January 2006 (has links)
This Master thesis proposes a solution to manage variabilities of software product line applications. The objective of the research is to support software decision makers in handling additional software complexity introduced by product line architectures. In order to fulfill this objective an approach to analyze, visualize, and measure product line specific characteristics of the C/C++ source code are proposed. The approach is validated in an empirical experiment using an open source software system. For that purpose the approach is first implemented into ®1 M-System-NT, an existing software measurement tool developed at Fraunhofer. The target hypothesis of the Institute for Experimental Software engineering research master thesis to perform static analysis of C/C++ source code, measure traditional and product line measures to identify the correlation between measures and indicate the fault proneness. / Official Address: Researcher Zeeshan Ahmed, Mechanical Engineering Informatics and TU Virtual Product Development Division (MIVP) Vienna, Austria Permanent Address: Zeeshan Ahmed, Humdered Street Mohala Garhi Shadula Sahib Gujrat, Pakistan
124

Analytics-based Software Product Planning

Fotrousi, Farnaz, Izadyan, Katayoun January 2013 (has links)
Context. Successful software product management concerns about developing right software products for right markets at the right time. The product manager, who carries responsibilities of planning, requires but does not always have access to high-quality information for making the best possible planning decisions. The following master thesis concentrates on proposing a solution that supports planning of a software product by means of analytics. Objectives. The aim of the master thesis is to understand potentials of analytics in product planning decisions in a SaaS context. This thesis focuses on SaaS based analytics used for portfolio management, product roadmapping, and release planning and specify how the analytics can be utilized for planning of a software product. Then the study devises an analytics-based method to enable software product planning. Methods. The current study was designed with a mixed methodology approach, which includes the literature review and survey researches as well as case study under the framework of the design science. Literature review was conducted to identify product planning decisions and the measurements that support them. A total of 17 interview based surveys were conducted to investigate the impact of analytics on product planning decisions in product roadmapping context. The result of the interviews ended in an analytics-based planning method provided under the framework of design science. The designed analytics-based method was validated by a case study in order to measure the effectiveness of the solution. Results. The identified product planning decisions were summarized and categorized into a taxonomy of decisions divided by portfolio management, roadmapping, and release planning. The identified SaaS-based measurements were categorized into six categories and made a taxonomy of measurements. The result of the survey illustrated that importance functions of the measurement- categories are not much different for planning-decisions. In the interviews 61.8% of interviewees selected “very important” for “Product”, 58.8% for “Feature”, and 64.7% for “Product healthiness” categories. For “Referral sources” category, 61.8% of responses have valuated as “not important”. Categories of “Technologies and Channels” and “Usage Pattern” have been rated majorly “important” by 47.1% and 32.4% of the corresponding responses. Also the results showed that product use, feature use, users of feature use, response time, product errors, and downtime are the first top measurement- attributes that a product manager prefers to use for product planning. Qualitative results identified “product specification, product maturity and goal” as the effected factors on analytics importance for product planning and in parallel specified strengths and weaknesses of analytical planning from product managers’ perspectives. Analytics-based product planning method was developed with eleven main process steps, using the measurements and measurement scores resulted from the interviews, and finally got validated in a case. The method can support all three assets of product planning (portfolio management, roadmapping, and release planning), however it was validated only for roadmapping decisions in the current study. SaaS-based analytics are enablers for the method, but there might be some other analytics that can assist to take planning decisions as well. Conclusion. The results of the interviews on the roadmapping decisions indicated that different planning decisions consider similar importance for measurement-categories to plan a software product. Statistics about feature use, product use, response time, users, error and downtime have been recognized as the most important measurements for planning. Analytics increase knowledge about product usability and functionality, and also can assist to improve problem handling and client-side technologies. But it has limitations regarding to receiving formed-based customer feedback, handling development technologies and also interpreting some measurements in practice. Immature products are not able to use analytics. To create, remove, or enhance a feature, the data trend provides a wide view of feature desirability in the current or even future time and clarifies how these changes can impact decision making. Prioritizing features can be performed for the features in the same context by comparing their measurement impacts. The analytics-based method covers both reactive and proactive planning.
125

Ensuring Software Product Quality : An Industrial Case Study / Ensuring Software Product Quality : An Industrial Case Study

Pydi, Manikanta Kumar, Nakka, Annie Sushma January 2012 (has links)
Context This thesis verifies a method developed on alignment issues in different data points and is useful to validate the method in those data points. To find the alignment/misalignment problems occurring within the stakeholders in a company is done through surveys using Hierarchical Cumulative Voting (HCV). This paper presents a case study to explain the importance of alignment between the stakeholders to achieve quality. Time, scope and cost are given higher priority leaving quality as it is hard to measure. To maintain quality in a software product is a major challenge in most of the software organizations. Stakeholders play a major role in software development. Without the alignment and common understanding between the stakeholders, it is highly difficult to achieve successful software project with good quality. The reasons for misalignment/alignment between the stakeholders are being explained clearly in this thesis based on the interviews and the survey conducted in software development companies under the novelty of case study. Objectives To evaluate the usefulness of alignment approach in different data points, to achieve product quality, for understanding the reasons for misalignment and to provide common approach for aligning we need to know the actual aligning priorities given by the stakeholders. We have one method for aligning and we want to see how actual alignment is different in different data points. To find the reasons for different stakeholders’ groups focusing on different quality attributes and to manage quality that helps in aligning quality requirements in future. Methods In order to know the importance of quality, prioritization of requirements and about the alignment problem we have conducted the literature review. To understand the problem and to know the reasons for misalignment in the companies we have conducted a case study in which we interviewed 8 employees from a company and to know the individual ranking of quality attributes we also made use of surveys in which 17 individuals from two companies had participated. Results We have identified the reasons for misalignment using interviews in one company and the individual priorities given to different quality attributes through surveys in two different companies. The qualities are prioritized by the stakeholder groups in the surveys and these are used to calculate the alignment/misalignment between the groups using spearman rank correlation which pointed that there are some disagreements between the stakeholder groups. Conclusions This paper explains the results obtained from a case study for determining the alignment/misalignment between different stakeholder groups and the reasons for this situation. Through surveys we found that there is a strong disagreement between the stakeholders in one company and partial agreement in the other company with respect to priorities they assign to individual qualities and the reasons behind this are obtained through interviews. The reasons for misalignment are lack of common understandings between the stakeholders, less discussion on quality requirement, undocumented priorities, no importance given to quality and others. / This Thesis work is about Software Product Quality and how it is achieved through alignment between the people in understanding the requirements. / 0763138272, 0739849383
126

Bridging software engineering gaps towards system of systems development / Preenchendo lacunas da Engenharia de Software rumo ao desenvolvimento de sistema de sistemas

Marcelo Augusto Ramos 07 May 2014 (has links)
While there is a growing recognition of the importance of System of Systems (SoS), there is still little agreement on just what they are or on by what principles they should be constructed. Actually, there are numerous SoS definitions in the literature. The difficulty in specifying what are the constituent systems, what they are supposed to do, and how they are going to do it frequently lead SoS initiatives to complete failures. Guided by a sample SoS that comprises all the distinguishing SoS characteristics and a generic SoS Engineering (SoSE) process, this thesis explores the SoS development from different Software Engineering (SE) perspectives that include requirements, analysis, design, and reengineering. For the Requirements Engineering (RE), we propose a scene-based RE approach to describe the SoS progressively as an arrangement of elementary but meaningful related behaviors named scenes. The objective is making easier the description and the understanding of the SoS dynamism. For the analysis, we propose extensions to statecharts to visually improve the modeling of systems interactions. They are symbolic notations that result from an analogy with multi-layer Printed Circuit Boards (PCB). The resulting diagrams are named PCBstatecharts. For the design, we propose an extension to the conventional SPLE process in such a way that SPL can become a natural source of SoS members. Domain engineering is extended to deliver components able to share abilities in SoS environments. Then, application engineers can design families of products that comply with different SoS requirements and still improve their products using the abilities of other SoS members. For the reengineering, we propose an approach extension to evolve legacy systems to SPL and then to SoS members. We demonstrate that when legacy systems are reengineered properly, they can share useful abilities, work cooperatively, and compose SoS / Apesar do crescente reconheciimento da importância de Sistemas de Sistemas (SoS) ainda não há um consenso sobre o que eles são um para que princípios devem ser construídos. De fato, existem várias definições de SoS na literatura. A dificuldade de especificar quais são os sistemas constituintes, as suas tarefas e como eles irão realizá-las frequentemente conduzem iniciativas de SoS ao completo fracasso. Guiados por um exemplo que inclui todas as características distintas de um SoS e um processo genérico de engenharia de SoS (SoSE), esta tese explora o desenvolvimento de SoS a partir de diferentes perspectivas da engenharia de software (SE), que incluem requisitos, análise, projeto e reengenharia. Para a engenharia de requisitos (RE) é proposta uma abordagem para descrever progressivamente um SoS como um arranjo de comportamentos mais simples, porém significativos, denominados \'cenas\'. O objetivo é facilitar a descrição e o entendimento do SoS e seu dinamismo. Para a análise, propõe-se as extensões de statecharts para melhorar a modelagem das interações entre sistemas. Elas são notações simbólicas que resultam de uma analogia com placas de circuito impresso multi camadas (PCB). Os diagramas resultantes são denominados PCB-statecharts. Para o projeto, é proposta uma extensão para o processo convencional de engenharia de linha de produtos (SPLE), de tal forma que linhas de produto (SPL) possam se tornar uma fonte natural de membros para SoS. A engenharia de domínio é estendida para prover componentes capazes de compartilhar habilidades em ambientes de SoS. Desta forma, engenheiros de aplicação podem projetar famílias de produtos complacentes com diferentes requisitos de SoS e ainda melhorar seus produtos usando habilidades de outros membros de um SoS. Para a reengenharia propõe-se extensão de uma abordagem existente para evoluir legados para SPL e depois para membros de um SoS. O objetivo é demonstrar que quando sistemas legados são tratados apropriadamente, eles podem compartilhar habilidades úteis, trabalhar de maneira cooperativa e compor SoS
127

Gerenciamento de configuração de uma linha de produtos de software de veículos aéreos não tripulados / Confuguration management of a unmanned aerial vehicles software product line

Eduardo Miranda Steiner 22 March 2012 (has links)
Veículos Aéreos não Tripulados (VANTs) são aeronaves que voam sem tripulação e são capazes de realizar diversos tipos de missões, como vigilância, coleta de dados topográficos e monitoramento ambiental. Este é um domínio que tem muito a ganhar com a aplicação da abordagem de Linha de Produtos de Software (LPS), uma vez que é rico em variabilidades e cada modelo de VANT tem também muitas partes comuns. Neste trabalho é apresentada uma infraestrutura tecnológica e de configuração de ativos em Simulink, gerenciados pelas ferramentas Pure::variant e Hephaestos para uma LPS de VANTs. Um conjunto de padrões para especificação de variabilidades em Simulink é proposto, bem como uma extensão para a ferramenta Hephaestus. Uma comparação entre as ferramentas Pure::variants e Hephaestus é apresentada / Unmanned Aerial Vehicles (UAVs) are aircrafts that can fly without any crew and are capable to realize several types of missions such as surveillance, topographic data collection and environmental monitoring. This is a domain which can benefit very much with the adoption of the Software Product Lines (SPL) approach, as each UAV model is rich in variabilities and has many common parts. In this work it is presented a software asset configuration infrastructure for the Simulink environment, managed by the tools Pure::variants and Hephaestus for a UAV SPL. A set of patterns of variability specification in Simulink is proposed as well as an extension to Hephaestus to support a SPL product engineering for Simulink. A comparison between Pure::variants and Hephaestus is also presented
128

Estudo e definição de uma linha de produtos de software para o desenvolvimento de aplicações educacionais móveis / Study and definition of a software product line for the development of mobile learning applications

Venilton Falvo Júnior 07 April 2015 (has links)
A popularização dos dispositivos móveis em todas as camadas sociais tem motivado o desenvolvimento de aplicações educacionais móveis, denominadas aplicações de m-learning. Neste cenário, as aplicações existentes, mesmo possuindo diversos benefícios e facilidades no que diz respeito ao ensino e aprendizagem, apresentam problemas e desafios relacionados, sobretudo no que se refere ao desenvolvimento, reuso e padronização arquitetural. Por outro lado, na vertente do reúso de software, percebe-se uma crescente adoção do conceito de Linha de Produtos de Software (LPS). Esse paradigma possibilita às organizações explorar as similaridades e variabilidades de seus produtos, aumentando a reutilização de artefatos e, como consequência, diminuindo custos e tempo de desenvolvimento. Neste trabalho é apresentada uma LPS voltada ao domínio das aplicações de m-learning, denominada M-SPLearning. A proposição da M-SPLearning envolveu desde o estudo inicial para a obtenção de uma análise de domínio efetiva, até a implementação dos componentes previamente analisados. A LPS concebida teve seus respectivos produtos avaliados experimentalmente no cenário industrial, fornecendo evidências de que sua utilização pode acelerar o time-to-market de produtos de m-learning, com um número reduzido de defeitos. / The popularity of mobile devices in all social classes has motivated the development of mobile educational applications, called m-learning applications. The existing applications, even having many benefits and facilities in relation to teaching and learning, also have problems and challenges, especially regarding the development, reuse and architectural standardization. Particularly, there is an increasing adoption of the concept of Software Product Line (SPL) in researches related to reuse. This paradigm enables organizations to explore the similarities and variabilities of their products, increasing the reuse of artifacts and, consequently, reducing costs and development time. This work presents an SPL focused on the domain of m-learning applications, named M-SPLearning. The development of M-SPLearning has comprised since the initial study for an effective domain analysis until the implementation of the components previously analyzed. Such SPL had its products experimentally evaluated in the industrial scenario, providing evidences that its use can accelerate the time-to-market of m-learning applications, with a reduced number of faults.
129

Uma linha de produto de software para módulos de aprendizagem interativa / A software product line for interactive learning modules

Danilo Leite Dalmon 06 July 2012 (has links)
Aplicativos educacionais podem promover diversos benefícios a professores e alunos, desde a redução de tarefas repetitivas à realização de atividades impossíveis com o uso de apenas lousa e papel. Módulos de Aprendizagem Interativa (iMA) são uma família de aplicativos educacionais que fornecem atividades interativas integradas a Sistemas de Gerenciamento de Cursos. O desenvolvimento de iMA, similarmente ao de outros sistemas criados em contexto de projetos acadêmicos, enfrenta problemas relacionados a manutenção e evolução de software, que afetam suas contribuições à sociedade. Isso é provocado principalmente pela degradação do código com o tempo e dos métodos ad-hoc utilizados, sem sistematização do processo ou procedimentos explícitos para prevenção desses problemas. Com o objetivo de aprimorar esse processo, esta dissertação apresenta uma Linha de Produto de Software (LPS) criada para o desenvolver iMA. O método usado para criá-la envolveu análise do domínio, formado pelos iMA existentes, a elaboração de um modelo de sistema para definir as responsabilidades das características obrigatórias, variantes e opcionais aos aplicativos, e a implementação de um arcabouço de aplicação. Assim, essa LPS consiste nesse arcabouço e seus manuais de funcionamento interno, utilização e evolução, promovendo reúso de código, arquitetura e processo. A avaliação deste trabalho foi conduzida com uma prova de conceito e um estudo de caso. A prova de conceito descreve o desenvolvimento de um novo iMA, chamado iTangran, apresentando a factibilidade da utilização da LPS para essa tarefa. O estudo de caso investigou com maior profundidade o impacto da LPS sobre a criação da nova versão de um aplicativo existente, chamado iVProg. Os resultados obtidos mostram que o oferecimento de um processo e uma arquitetura que guiam as tarefas do programador de iMA teve grande influência na sua percepção de produtividade e satisfação, além de contribuírem para a qualidade do código criado e sua documentação, fatores essenciais para a prevenção dos problemas de desenvolvimento enfrentados atualmente. / Educational software provide many benefits for teachers and students, from reducing repetitive tasks to offering assignments impossible with the use of only blackboard and paper. Interactive Learning Modules (iLM) are a family of educational systems which offer interactive assignments integrated with Learning Management Systems. The development of iLM, similarly to other software created in context of academic projects, faces issues related to software maintenance and evolution, which hinder their contributions to society. This is mainly caused by code degradation with time and to ad-hoc methods used, without a systematic process and explicit considerations to prevent these problems. With the goal of improving this process, this work presents a Software Product Line (SPL) for the development of iLM. The method used to create this SPL involved an analysis of the domain, which are the existing iLM, the creation of a system model in order to define the responsibilities of mandatory, variant and optional features among systems, and the implementation of an application framework. Therefore, the SPL consists of this framework and its manuals for internal operation, utilization and evolution, providing code, architecture and process reuse. Contributions of this work were evaluated by a proof of concept and a study case. The proof of concept describes the development of a new iLM called iTangran, presenting the possibility of using the SPL for this task. The study case investigated more deeply the SPL impact on the refactoring process of an existing iLM, iVProg. Results show that a guide and an architecture for the tasks undertaken by programmers have a significant influence on the perceived productivity and their satisfaction while working, also contributing to code and documentation quality, which are essential factors to prevent development problems such as those faced nowadays.
130

Analysis and Improvement of a Software Production Process based on the Combination of Model Driven Development and Software Product Lines

Echeverría Ochoa, Jorge 10 September 2018 (has links)
La reutilización es un factor clave para reducir los costos y mejorar la calidad de las propiedades de productos software como la seguridad, fiabilidad o rendimiento. Siguiendo este factor surge la aproximación para el desarrollo de software de Líneas de Productos Software; esta aproximación promete, entre otras cosas, acortar el tiempo del desarrollo de los sistemas software y reducir significativamente los costes de desarrollo y mantenimiento. Por otro lado, el Desarrollo Dirigido por Modelos es un enfoque para el desarrollo de software que propone el uso de modelos en varios niveles de abstracción y transformaciones de modelo como artefactos principales. El uso de modelos como los principales artefactos en el desarrollo de software ofrece muchas ventajas a los desarrolladores, por ejemplo, las transformaciones de modelo permiten la conversión de un modelo fuente en otro modelo objetivo, el aumento del nivel de abstracción permite a los desarrolladores centrarse en el problema a resolver y restar importancia a los detalles de implementación. Ambos paradigmas, en la búsqueda de optimizar el tiempo de producción y calidad en el software generado, pueden reunir importantes ventajas en el proceso de producción de software. La combinación de Desarrollo Dirigido por Modelos y Líneas de Producto Software para producir productos software requiere la identificación de nuevos retos y necesidades de los stakeholders involucrados. La investigación presentada en esta tesis tiene el objetivo, apoyada en varios estudios empíricos realizados en entornos industriales, de aumentar el conocimiento y realizar una serie de propuestas de mejora del proceso de desarrollo software fundamentado en la combinación de Desarrollo Dirigido por Modelos y Líneas de Producto Software. Para alcanzar este objetivo se han estudiado cuatro dimensiones: procesado de requisitos, usabilidad, comprensión (en la configuración de productos) y gestión de errores. Cada una de estas dimensiones ha sido abordada en un estudio empírico, estudios presentados en trabajos de investigación y que forman la parte nuclear de esta tesis. Como resultado del trabajo realizado en esta tesis se han elaborado una serie de propuestas para mejorar el proceso de desarrollo software basado en la combinación de Desarrollo Dirigido por Modelos y Líneas de Producto Software y se han generado siete trabajos de investigación. Cinco de estos trabajos han sido presentados en conferencias de relevancia en el ámbito de la Ingeniería del Software: CAiSEForum'15, CAiSE'16, ESEM'16, ISD'17 y ESEM'17. Estos resultados de investigación han sido aplicados en el proceso de desarrollo de software de placas de inducción de la división de electrodomésticos de BSH (Bosch, Siemens, Gaggenau, Neff y Balay) y están siendo utilizados para su aplicación en la actual implantación para el desarrollo de software del PLC que controla los trenes en la empresa Construcciones y Auxiliar de Ferrocarriles. / Software reuse is a key factor in reducing costs and improving the quality of software product properties such as security, reliability, or performance. Taking this factor in account, the Software Product Line approach appears for software development. This approach promises to decrease the time spent in developing software systems and to significantly reduce the costs for development and maintenance of software systems, among other things. In addition, Model Driven Development is an approach for software development that proposes the use of models at various levels of abstraction and model transformations as main artifacts. The use of models as the main artifacts in software development offers many advantages for developers. For instance, model transformations allow the conversion of a source model into another target model. The increase in the level of abstraction allows the developers to focus on the problem to solve, subtracting importance to the implementation details. Both paradigms search to optimize the production time and quality of the generated software, and can result in important advantages in the software production process. However, the combination of Model Driven Development and Software Product Lines to develop software products requires the identification of the challenges and needs of the involved stakeholders. The research presented in this dissertation, supported by several empirical studies carried out in industrial environments, aims to increase the knowledge in the field and to do a set of proposals to improve the software development process based on the combination of Model Driven Development and Software Product Lines. To achieve this objective, four dimensions have been studied: requirements processing, usability, comprehension (configuring software products), and error management. The dimensions have been addressed through empirical studies, presented in research papers. These papers conform the core of this dissertation. As result of the work carried out for this dissertation, a set of proposals to improve the software development process based on the combination of Model Driven Development and Software Product Lines have been generated. Furthermore, seven research papers have been published. Five of these works have been presented at relevant conferences in the Software Engineering field: CAiSE Forum'15, CAiSE'16, ESEM'16, ISD'17 and ESEM'17. These research results have been applied in the software development process of the induction hobs from the electrical appliances division of BSH (under the brands Bosch, Siemens, Gaggenau, Neff, and Balay), and are also being used in the current implementation of the PLC that controls the trains manufactured by the Construcciones y Auxiliar de Ferrocarriles company. / La reutilització és un factor clau per a reduir els costos i millorar la qualitat de les propietats de productes programari com la seguretat, fiabilitat o rendiment. Seguint aquest factor sorgeix l'aproximació per al desenvolupament de programari utilitzant Línies de Productes Programari; aquesta aproximació promet, entre altres coses, escurçar el temps del desenvolupament dels sistemes programari i reduir significativament els costos de desenvolupament i manteniment. D'altra banda, el Desenvolupament Dirigit per Models és un enfocament per al desenvolupament de programari que proposa l'ús de models en diversos nivells d'abstracció i transformacions de model com artefactes principals. L'ús de models com els principals artefactes en el desenvolupament de programari ofereix molts avantatges als desenvolupadors, per exemple, les transformacions de model permeten la conversió d'un model font en un altre model objectiu, l'augment del nivell d'abstracció permet als desenvolupadors centrar-se en el problema a resoldre i restar importància als detalls d'implementació. Tots dos paradigmes, en la cerca d'optimitzar el temps de producció i qualitat en el programari generat, poden reunir importants avantatges en el procés de producció de programari.La combinació de Desenvolupament Dirigit per Models i Línies de Producte Programari per a produir productes programari requereix la identificació de nous reptes i necessitats dels \ingles{stakeholders} involucrats. La recerca presentada en aquesta tesi té l'objectiu, recolzada en diversos estudis empírics realitzats en entorns industrials, d'augmentar el coneixement i realitzar una sèrie de propostes de millora del procés de desenvolupament de programari fonamentat en la combinació de Desenvolupament Dirigit per Models i Línies de Producte Programari. Per a aconseguir aquest objectiu s'han estudiat quatre dimensions: processament de requisits, usabilitat, comprensió (en la configuració de productes) i gestió d'errors. Cadascuna d'aquestes dimensions ha sigut abordada en un estudi empíric, estudis presentats en treballs de recerca i que formen la part nuclear d'aquesta tesi. Com a resultat del treball realitzat en aquesta tesi s'han elaborat una sèrie de propostes per a millorar el procés de desenvolupament programari basat en la combinació de Desenvolupament Dirigit per Models i Línies de Producte Programari i s'han generat set treballs de recerca. Cinc d'aquests treballs han sigut presentats en conferències de rellevància en l'àmbit de l'Enginyeria del Programari: CAiSEForum'15, CAiSE'16, ESEM'16, ISD'17 i ESEM'17. Aquests resultats de recerca han sigut aplicats en el procés de desenvolupament de programari de plaques d'inducció de la divisió d'electrodomèstics de BSH (Bosch, Siemens, Gaggenau, Neff i Balay) i estan sent utilitzats per a la seua aplicació en l'actual implantació per al desenvolupament de programari del PLC que controla els trens en l'empresa Construcciones y Auxiliar de Ferrocarriles. / Echeverría Ochoa, J. (2018). Analysis and Improvement of a Software Production Process based on the Combination of Model Driven Development and Software Product Lines [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/107734 / TESIS

Page generated in 0.3663 seconds