• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 75
  • 20
  • 10
  • 5
  • 1
  • 1
  • Tagged with
  • 132
  • 132
  • 49
  • 47
  • 31
  • 28
  • 22
  • 21
  • 17
  • 17
  • 17
  • 15
  • 14
  • 14
  • 14
  • 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.
11

Supporting Software Architecture Evolution

Svahnberg, Mikael January 2003 (has links)
Today it is more a rule than an exception that software systems have a lifecycle of more than several years. Hence, software evolution is inevitable. During the life span of a software system the domain in which the system is working evolves and changes. This causes changes to the software system, and the software system may also be evolved to satisfy new markets. The ability to evolve gracefully, and thus the long-term success of a software system, is to a large extent governed by its software architecture and the ability of the software architecture to fulfil requirements on quality attributes and to adapt to evolving requirements. In this thesis we study evolution of software architectures and what can be done to support this evolution. We focus on three particular aspects of evolution support: how to ensure that the correct blend of quality attributes is met (architecture selection), the technical means available for supporting changes in the software system (variability), and what types of changes that are likely to occur during evolution (categories of evolution). We introduce a method for architecture evaluation and selection that focus on ensuring that the selected software architecture is the architecture candidate with the most potential for fulfilling a particular blend of quality attributes. The method is based on quantification of expert opinions and focused discussions where these expert opinions differ. The architecture evaluation and selection method is studied in both an academic and in an industry setting. We also introduce a taxonomy of techniques for realising variability in a software system and study how the techniques in this taxonomy are applied in different evolution situations. The taxonomy is based on several industry case studies. Two industry cases are studied in further detail and the evolution of these systems are followed over a number of releases and generations. During this evolution it is shown how variability mechanisms are used to also support evolution, and that there are typical cases of evolution that a software system can be prepared to cope with. The contribution of this thesis is that it increases the understanding of how evolution occurs in a software system, how to create software that is flexible enough to support evolution and how to evaluate and select a software architecture that meets a particular blend of quality attributes. Together this ensures that a software system is based on a software architecture that fits the current quality requirements and that is flexible in the right places so that it is able to evolve gracefully.
12

An analytical study of metrics and refactoring

Iyer, Suchitra S. 03 September 2009 (has links)
Object-oriented systems that undergo repeated modifications commonly endure a loss of quality and design decay. This problem is often remedied by applying refactorings. Refactoring is one of the most important and commonly used techniques to improve the quality of the code by eliminating redundancy and reducing complexity; frequently refactored code is believed to be easier to understand, maintain and test. Object-oriented metrics provide an easy means to extract useful and measurable information about the structure of a software system. Metrics have been used to identify refactoring opportunities, detect refactorings that have previously been applied and gauge quality improvements after the application of refactorings. This thesis provides an in-depth analytical study of the relationship between metrics and refactorings. For this purpose we analyzed 136 versions of 4 different open source projects. We used RefactoringCrawler, an automatic refactoring detection tool to identify refactorings and then analyzed various metrics to study whether metrics can be used to (1) reliably identify refactoring opportunities, (2) detect refactorings that were previously applied, and (3) estimate the impact of refactoring on software quality. In conclusion, our study showed that metrics cannot be reliably used to either identify refactoring opportunities or detect refactorings. It is very difficult to use metrics to estimate the impact of refactoring, however studying the evolution of metrics at a system level indicates that refactoring does improve software quality and reduce complexity. / text
13

Automating business intelligence recovery in software evolution

Kang, Jian January 2009 (has links)
The theme of this thesis is to pave a path to vertically extract business intelligence (BI) from software code to business intelligence base, which is a tank of BI. Business intelligence is the atomic unit to build a piece of program comprehensibility in business logic point of view. It outstands because it covers all reverse engineering levels from code to specification. It refers to technologies for the localisation, extraction, analysis of business intelligence in software system. Such an approach naturally requires information transformation from software system to business intelligence base, and hence a novel set of automatic business intelligence recovery methods are needed. After a brief introduction of major issues covered by this thesis, the state of art of the area coined by the author as “business intelligence elicitation from software system”, in particular, the kinds of business intelligence that can be elicited from software system and their corresponding reverse engineering technical solutions are presented. Several new techniques are invented to pave the way towards realising this approach and make it light-weight. In particular, a programming-style-based method is proposed to partition a source program into business intelligence oriented program modules; concept recovery rules are defined to recover business intelligence concepts from the names embedded in a program module; formal concept analysis is built to model the recovered business intelligence and present business logic. The future research of this task is viewed as “automating business intelligence accumulation in Web” which is defined to bridge work in this thesis to nowadays Web computing trends. A prototype tool for recovering business intelligence from a Web-based mobile retailing system is then presented, followed by case study giving evaluation on the approach in different aspects. Finally, conclusions are drawn. Original contributions of this research work to the field of software reverse engineering are made explicit and future opportunities are explored.
14

Curbing Dependencies in Software Evolution of Object-Oriented Systems

Skoglund, Mats January 2006 (has links)
<p>Relationships between classes and objects in object-oriented software are necessary in order for the parts of the systems to provide dynamic behavior. These inherent relationships also create dependencies which can give rise to problems for software evolution of object-oriented software systems. Dependencies in software make systems difficult to understand, reuse, change and verify.</p><p>This thesis presents analytical and empirical investigations of dependency-related problems in software evolution of object-oriented software and on how such problems can be handled with dependency focused techniques, methods and processes.</p><p>The research presented in this thesis includes: Development of a programming language construct for controlling dependencies; formal experiments on code inspection techniques; exploring change strategies' effects on test suites; an industrial case study of regression test selection techniques for object-oriented software; proving the efficiency and defect detection capabilities of a novel regression test selection technique.</p><p>The thesis contributes to increased knowledge on the role of dependencies in software evolution of object-oriented software. Specific contributions are a programming language construct that can control access to dependencies in software. Other main contributions are insights on the efficiency of dependency focused code inspection techniques and contribution to the knowledge on dependency-based regression test selection techniques for large scale software. Another contribution is a novel change-based regression test selection technique.</p>
15

Toward an improved understanding of software change

Zou, Lijie January 2003 (has links)
Structural changes, including moving, renaming, merging and splitting are important design change decisions made by programmers. However, during the process of software evolution, this information often gets lost. Recovering instances of structural changes in the past, as well as understanding them, are essential for us to achieve a better understanding of how and why software changes. In this thesis, we propose an approach that helps to recover and understand the lost information of structural changes.
16

Curbing Dependencies in Software Evolution of Object-Oriented Systems

Skoglund, Mats January 2006 (has links)
Relationships between classes and objects in object-oriented software are necessary in order for the parts of the systems to provide dynamic behavior. These inherent relationships also create dependencies which can give rise to problems for software evolution of object-oriented software systems. Dependencies in software make systems difficult to understand, reuse, change and verify. This thesis presents analytical and empirical investigations of dependency-related problems in software evolution of object-oriented software and on how such problems can be handled with dependency focused techniques, methods and processes. The research presented in this thesis includes: Development of a programming language construct for controlling dependencies; formal experiments on code inspection techniques; exploring change strategies' effects on test suites; an industrial case study of regression test selection techniques for object-oriented software; proving the efficiency and defect detection capabilities of a novel regression test selection technique. The thesis contributes to increased knowledge on the role of dependencies in software evolution of object-oriented software. Specific contributions are a programming language construct that can control access to dependencies in software. Other main contributions are insights on the efficiency of dependency focused code inspection techniques and contribution to the knowledge on dependency-based regression test selection techniques for large scale software. Another contribution is a novel change-based regression test selection technique.
17

Toward an improved understanding of software change

Zou, Lijie January 2003 (has links)
Structural changes, including moving, renaming, merging and splitting are important design change decisions made by programmers. However, during the process of software evolution, this information often gets lost. Recovering instances of structural changes in the past, as well as understanding them, are essential for us to achieve a better understanding of how and why software changes. In this thesis, we propose an approach that helps to recover and understand the lost information of structural changes.
18

Retrieval and Analysis of Software Systems from SCM Repositories

Müller, Michael January 2007 (has links)
<p>One source of input data for software evolution research is data stored inside a software configuration management repository. The data includes different versions of a software system’s source code as well as version history metadata, such as check-in dates or log messages. Inherently, extracting this data manually is a time- and labor intensive task. The subsequent preprocessing step and the appropriate storage of the results, necessary to utilize the data for further analysis, is an additional effort for the researcher.</p><p>The goal of this thesis is to design and implement a front-end plug-in for an existing software comprehension tool, the VizzAnalyzer, providing the capability to extract and analyze multiple versions and evolutional information of software systems from SCM repositories and to store the results. Thereby, the implemented solution provides the infrastructure for software evolution research.</p>
19

[en] SOFTWARE ENGINEERING FOR OPEN SOURCE SOFTWARE / [pt] ENGENHARIA DE SOFTWARE PARA SOFTWARE LIVRE

ROBERTO DE HOLANDA CHRISTOPH 03 May 2004 (has links)
[pt] Software livres têm despertado bastante atenção, não apenas devido a popularidade obtida por alguns destes como o Linux e o Apache, mas também pela forma singular como estes sistemas são desenvolvidos e sua quantidade de adeptos. No entanto, em alguns projetos de software livre, a documentação existente dificulta a entrada de novos participantes, já que devido a informalidade do processo de desenvolvimento deste tipo de software, é comum que a documentação do sistema não receba muita atenção. Este trabalho colabora para um melhor entendimento do desenvolvimento de software livres, relacionando-o com as questões de evolução de software. Será apresentada uma proposta utilizada no software livre C e L para documentar em termos da aplicação o código do sistema, utilizando-se do conceito de cenários. Será mostrado através de um protótipo que um software seguindo esse padrão proposto pode produzir uma documentação que torna mais fácil seu entendimento para novos participantes do projeto. / [en] This thesis presents an introduction on the use of the thermal desorption technique that is based on the direct heating of the soil, for the remediation of contaminated areas. Heat propagation through soils can be mathematically simulated using coupled heat-moisture transfer theories. In order to make this simulation possible it is necessary to identify the required parameters: hydraulic conductivity as a function of volumetric water content, thermal conductivity as a function of volumetric water content, volumetric heat capacity, and soil-water characteristic curve. One technical description of such parameters is presented. Two different kinds of soils were used, one clay- sand (CH) and one sandclay (SC). A study physico-chemical was done talking into consideration the temperature effect on the soils with X-Ray, electron microscopic investigation, CTC, Atterberg Limits and at the particle size distribution. The study was done on pre-heated soils with temperatures ranging from 20 Celsius Degrees to 300 Celsius Degrees. Equipments and methodologies have been especially developed for the study of the thermo-hydraulics proprieties. The laboratory tests program consisted of hydraulic conductivity, retention curves and deformability, taking into account the temperature effects. During the tests it was observed that all parameters were temperature dependent. The thermal parameters, thermal conductivity and heat capacity were studied for both soils.
20

SUPPORTING CODE-DESIGN CONSISTENCY DURING SOFTWARE EVOLUTION

Hammad, Maen M. 16 April 2010 (has links)
No description available.

Page generated in 0.1023 seconds