249,333 research outputs found

    Implementing CASE: More than the Purchase of Software Packages

    Get PDF
    Society and businesses depend on computer software. Retail stores use software to track inventory. Banks employ software to balance customer accounts. Since most businesses are so dependent on software, managers become extremely frustrated when software errors occur. Poor quality software result in frequent maintenance. When software developers are forced to spend a large portion of their time on maintenance, they have little time to work on new software projects. The result is a backlog of software to be developed and a reluctance on management\u27s part to generate new software project ideas because of extended development time. Even when systems are functioning well it can be equally frustrating for managers when software is continually updated-just as they are becoming familiar with it

    Zsmell – Code Smell Detection for Open Source Software

    Get PDF
    Today, open-source software (OSS) is used in various applications. It has played a vital role in information systems of many user groups such as commercials, research, education, public health, and tourism. It is also a source of additional knowledge for collaborators because this type of software is easily accessible through websites that provide management of version control services such as GitHub. However, a recent study shows an increasing trend in the existence of code smells. In OSS, there is a growing number of code smells that cause software errors. Having a code smell in software is a serious issue since it impacts the software in terms of deployment, maintenance as well as user confidence toward the software. Finding code smells in the early stages of software development would provide for better software maintenance and reliability; thus, researchers invented the Zsmell software system that helps search for code smells in the source code saved in GitHub. Developed systems display data related to code smells in each source code version that was modified by collaborators. Thus, the developers will be able to employ the proper refactoring method, which is a change in the internal structure of software without changing the original functionality of the software. We believe that this system will enable open source collaborators to improve the quality of their OSS, especially on code smell reduction and the understanding of various types of code smell commonly found in OSS projects

    Dynamic planning and control of software maintenance : a fiscal approach

    Get PDF
    Until recently, much of the budget planning for software systems has been primarily targeted at costs incurred during the development phase. However, with increasing software system life span and complexity, maintenance costs have become a more prevalent concern. As a result of necessary corrections for design errors and evolutionary maintenance, post-delivery investment in software systems now requires a greater proportional share of the life-cycle costs. In this research, various methodologies and system factors relating to software cost accounting are reviewed with the intent of developing a cost control model for arriving at a well-structured view for the management of the maintenance phase of the software life-cycle. The model proposed embodies a planning concept for establishing a maintenance strategy and a control concept for analyzing manloading requirements during the maintenance phase.http://archive.org/details/dynamicplanningc00greeLieutenant Commander, United States NavyLieutenant, United States NavyApproved for public release; distribution is unlimited

    Inverse software configuration management

    Get PDF
    Software systems are playing an increasingly important role in almost every aspect of today’s society such that they impact on our businesses, industry, leisure, health and safety. Many of these systems are extremely large and complex and depend upon the correct interaction of many hundreds or even thousands of heterogeneous components. Commensurate with this increased reliance on software is the need for high quality products that meet customer expectations, perform reliably and which can be cost-effectively and safely maintained. Techniques such as software configuration management have proved to be invaluable during the development process to ensure that this is the case. However, there are a very large number of legacy systems which were not developed under controlled conditions, but which still, need to be maintained due to the heavy investment incorporated within them. Such systems are characterised by extremely high program comprehension overheads and the probability that new errors will be introduced during the maintenance process often with serious consequences. To address the issues concerning maintenance of legacy systems this thesis has defined and developed a new process and associated maintenance model, Inverse Software Configuration Management (ISCM). This model centres on a layered approach to the program comprehension process through the definition of a number of software configuration abstractions. This information together with the set of rules for reclaiming the information is stored within an Extensible System Information Base (ESIB) via, die definition of a Programming-in-the- Environment (PITE) language, the Inverse Configuration Description Language (ICDL). In order to assist the application of the ISCM process across a wide range of software applications and system architectures, die PISCES (Proforma Identification Scheme for Configurations of Existing Systems) method has been developed as a series of defined procedures and guidelines. To underpin the method and to offer a user-friendly interface to the process a series of templates, the Proforma Increasing Complexity Series (PICS) has been developed. To enable the useful employment of these techniques on large-scale systems, the subject of automation has been addressed through the development of a flexible meta-CASE environment, the PISCES M4 (MultiMedia Maintenance Manager) system. Of particular interest within this environment is the provision of a multimedia user interface (MUI) to die maintenance process. As a means of evaluating the PISCES method and to provide feedback into die ISCM process a number of practical applications have been modelled. In summary, this research has considered a number of concepts some of which are innovative in themselves, others of which are used in an innovative manner. In combination these concepts may be considered to considerably advance the knowledge and understanding of die comprehension process during the maintenance of legacy software systems. A number of publications have already resulted from the research and several more are in preparation. Additionally a number of areas for further study have been identified some of which are already underway as funded research and development projects

    Challenges and strategies for the maintenance of the SKA Telescope Manager

    Get PDF
    The Square Kilometre Array (SKA) is an ambitious project aimed to build a radio telescope that will enable breakthrough science not possible with current facilities over the next 50 years. Because of this long expected operational period, the maintenance of Telescope Manager (TM), the SKA Element responsible for the coordination of all Elements composing the Telescope (e.g. Dishes for mid-frequency or Low-Frequency Aperture Arrays), plays a crucial role for the overall SKA operation. A challenge is represented by the technological evolution in hardware and software, which is rather fast nowadays: only in the last 10 years, for instance, new operating systems were born, as well as new technologies for data storage and for calculation. Dealing with such changing environment deserves therefore a deep analysis in terms of maintenance. In spite of the importance of hardware maintenance for TM, its software maintenance is actually the real challenge, given TM is a system almost entirely composed by software applications. In computer science, indeed, it is almost impossible to build a software which does not need to be changed over time: new requirements emerge, old requirements change during application lifetime, errors are discovered or performance must be improved. For all these reasons the management of software changes is critical to maintain the value of the software developed, especially for a complex system like SKA TM. In this paper the maintenance for both SKA TM hardware and software is presented with respect to the Operational (i.e. related to Maintenance Process) and Organizational (i.e. related to Logistic Support) aspects

    A Framework for the Maintenance and Evolution of ePolicy-guided Web Applications

    Get PDF
    In this paper we present an “ePolicy framework” that can be used to develop transactional-based ePolicy-guided Web applications. This framework incorporates a non-proprietary component based architecture, a well-defined standards-based user interface, a structured representation of ePolicies, ePolicy operations and user input data, and incorporates a maintenance management component. Each component is self-contained and can therefore be independently maintained. ePolicies and associated ePolicy operations are not embedded in the system software but are stored centrally in an external store (Policy Repository) and are dynamically loaded as required. Executable code (marshalled from XML) is automatically generated from the ePolicies and the ePolicy operations and used in policy-guided evaluation. The Policy Repository, accessible by suitably privileged components, removes ePolicy duplication and from a maintenance perspective, this approach reduces the possibility of errors being introduced by data duplication. Updates to ePolicies are seamlessly applied the next time an ePolicy is loaded. ePolicies are represented in a standard uniform format and as all components use this uniform format, maintainers do not need to understand or handle multiple data formats. They are represented using a policy hierarchy composed of three layers: meta-ePolicies, ePolicy-groups and ePolicies. Each of the components is designed using Object-Oriented principles. Our ePolicy framework will work in a centralized or distributed environment. We believe that using our framework to develop ePolicy-guided evaluation systems will reduce data maintenance and expedite software evolution

    The Technical, Non-technical Issues and the Challenges of Migration to Free and Open Source Software

    Get PDF
    Abstract Interest has been raised over software that has been developed not by dedicated software companies but by groups of independent programmers with different level of experience who collaborate over the Internet and offer the fruits of their labor free. Open source software communities have successfully developed many software pieces and suggest Free Open Source Software (FOSS) as a solution for a lot of computing problems, although most computer users only use proprietary applications. Many proprietary software users claim that open source software invites problems, such as, generating software codes that could be vulnerable to hackers and prone to errors. This paper presents an overview of the real issues and challenges for the migration to free and open source software (FOSS) and suggests some important criteria for assessing migration issues and challenges. Migratory problems may be divided into technical and nontechnical issues and challenges. The technical issues and challenges include performance, technical infrastructure, usability, integrity, support availability, security, information flow control, data migration, flexibility and ease of use and management and maintenance of OSS, whereas the non-technical issues and challenges include organizational culture, human factors (staff skills) and legal issues

    A Multi-Level Framework for the Detection, Prioritization and Testing of Software Design Defects

    Full text link
    Large-scale software systems exhibit high complexity and become difficult to maintain. In fact, it has been reported that software cost dedicated to maintenance and evolution activities is more than 80% of the total software costs. In particular, object-oriented software systems need to follow some traditional design principles such as data abstraction, encapsulation, and modularity. However, some of these non-functional requirements can be violated by developers for many reasons such as inexperience with object-oriented design principles, deadline stress. This high cost of maintenance activities could potentially be greatly reduced by providing automatic or semi-automatic solutions to increase system‟s comprehensibility, adaptability and extensibility to avoid bad-practices. The detection of refactoring opportunities focuses on the detection of bad smells, also called antipatterns, which have been recognized as the design situations that may cause software failures indirectly. The correction of one bad smell may influence other bad smells. Thus, the order of fixing bad smells is important to reduce the effort and maximize the refactoring benefits. However, very few studies addressed the problem of finding the optimal sequence in which the refactoring opportunities, such as bad smells, should be ordered. Few other studies tried to prioritize refactoring opportunities based on the types of bad smells to determine their severity. However, the correction of severe bad smells may require a high effort which should be optimized and the relationships between the different bad smells are not considered during the prioritization process. The main goal of this research is to help software engineers to refactor large-scale systems with a minimum effort and few interactions including the detection, management and testing of refactoring opportunities. We report the results of an empirical study with an implementation of our bi-level approach. The obtained results provide evidence to support the claim that our proposal is more efficient, on average, than existing techniques based on a benchmark of 9 open source systems and 1 industrial project. We have also evaluated the relevance and usefulness of the proposed bi-level framework for software engineers to improve the quality of their systems and support the detection of transformation errors by generating efficient test cases.Ph.D.Information Systems Engineering, College of Engineering and Computer ScienceUniversity of Michigan-Dearbornhttp://deepblue.lib.umich.edu/bitstream/2027.42/136075/1/Dilan_Sahin_Final Dissertation.pdfDescription of Dilan_Sahin_Final Dissertation.pdf : Dissertatio
    • …
    corecore