{"title":"Dynamic and static views of software evolution","authors":"S. Cook, He Ji, R. Harrison","doi":"10.1109/ICSM.2001.972776","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972776","url":null,"abstract":"In addition to managing day-to-day maintenance, information system managers need to be able to predict and plan the longer-term evolution of software systems on an objective, quantified basis. Currently this is a difficult task, since the dynamics of software evolution, and the characteristics of evolvable software are not clearly understood. In this paper we present an approach to understanding software evolution. The approach looks at software evolution from two different points of view. The dynamic viewpoint investigates how to model software evolution trends and the static viewpoint studies the characteristics of software artefacts to see what makes software systems more evolvable. The former will help engineers to foresee the actions to be taken in the evolution process, while the latter provides an objective, quantified basis to evaluate the software with respect to its ability to evolve and will help to produce more evolvable software systems.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114627310","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Software evolution: a road map","authors":"V. Rajlich","doi":"10.1109/ICSM.2001.972705","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972705","url":null,"abstract":"Software change is the basic building block of software evolution, and problems of software evolution can be solved by research into software change. There is a need to develop reactive methodologies, tools, and techniques. This will solve the problems posed by unexpected changes and also address the issues of ultrafast software evolution.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133987776","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Impact analysis of maintenance tasks for a distributed object-oriented system","authors":"H. Sneed","doi":"10.1109/ICSM.2001.972728","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972728","url":null,"abstract":"The work described in this paper is part of an ongoing project to improve the maintenance process in a Vienna Software-House. A repository has been constructed on the basis of a relational database and populated with metadata on a wide variety of software artifacts at each semantic level of development-concept, code and test. Now the repository is being used to perform impact analysis and cost estimation of change requests prior to implementing them. For this, hypertext techniques and ripple effects are used to identify all interdependencies. A tool has been constructed to navigate through the repository, select the impacted entities and pick up their size, complexity and quality metrics for effort estimation.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"140 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132735499","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An empirical study of maintenance issues within process improvement programmes in the software industry","authors":"T. Hall, A. Rainer, Nathan Baddoo, Sarah Beecham","doi":"10.1109/ICSM.2001.972755","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972755","url":null,"abstract":"Anecdotal evidence from our work with software developers suggests that maintenance is a significant problem for software development companies. A problem that is absorbing increasing amounts of precious development effort. In parallel, software companies are increasingly applying process improvement principles to development problems. In this paper we discuss how maintenance is addressed in process improvement programmes. We look at how well maintenance is addressed by formal process models like CMM. We also present empirical evidence from our study of process improvement in UK software companies. Our main findings are that although developers report that maintenance is indeed a problem, it is not always their most important problem. Furthermore, our findings also suggest that companies are often not well prepared for the maintenance phase of developments and that formal process improvement models do not pay enough attention to maintenance.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132382939","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Describing evolving dependable systems using co-operative software architectures","authors":"R. Lemos","doi":"10.1109/ICSM.2001.972745","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972745","url":null,"abstract":"The paper describes an architectural approach that facilitates the modelling and analysis of dependable systems that are built from untrustworthy components whose designs, we assume, cannot be changed. The approach is based on the definition of an architectural style in which connectors are considered as first class entities, which embody the description of collaborative behaviour between components. This style is shown to be particularly suitable for describing system components that have to evolve in order for the system to provide dependable services. The feasibility of the proposed architectural style in dealing with evolving dependable systems is demonstrated in terms of a gas station case study.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122392393","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Multi-view software evolution: a UML-based framework for evolving object-oriented software","authors":"R. France, J. Bieman","doi":"10.1109/ICSM.2001.972751","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972751","url":null,"abstract":"It is well-known that uncontrolled change to software can lead to increasing evolution costs caused by deteriorating structure and compromised system qualities. For complex systems, the need to carefully manage system evolution is critical. In this paper we outline an approach to managing evolution of object-oriented (OO) software. The approach is based on a goal-directed, cyclic process, in which OO models are transformed and quantitatively evaluated in each cycle. Evaluation criteria guide developers in choosing between alternative transformations in each cycle. The process, transformations, and evaluation techniques can be used to develop systems from a set of baseline models.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125510355","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Software maintenance: an approach towards control","authors":"R. Kusters, F. J. Heemstra","doi":"10.1109/ICSM.2001.972785","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972785","url":null,"abstract":"In this paper the software maintenance process will be looked at in more detail from a control point of view. From this it can be seen that in most situations no proper control mechanisms exist and that even the basic requirements for control are not fulfilled. The remainder of the paper will be devoted towards describing a basic approach that provides a starting point for an organisation trying to get a better grip on this problem. Aspects of this approach are: - a distinction between different kinds of maintenance. - types of goals to be used, - assignment of responsibility on a realistic basis, design of proper measurement tools.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117296818","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
M. Harman, R. Hierons, C. Fox, S. Danicic, J. Howroyd
{"title":"Pre/post conditioned slicing","authors":"M. Harman, R. Hierons, C. Fox, S. Danicic, J. Howroyd","doi":"10.1109/ICSM.2001.972724","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972724","url":null,"abstract":"Th paper shows how analysis of programs in terms of pre- and postconditions can be improved using a generalisation of conditioned program slicing called pre/post conditioned slicing. Such conditions play an important role in program comprehension, reuse, verification and reengineering. Fully automated analysis is impossible because of the inherent undecidability of pre- and post- conditions. The method presented reformulates the problem to circumvent this. The reformulation is constructed so that programs which respect the pre- and post-conditions applied to them have empty slices. For those which do not respect the conditions, the slice contains statements which could potentially break the conditions. This separates the automatable part of the analysis from the human analysis.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115827068","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"An architecture for re-engineering of client/server applications","authors":"A. Furone","doi":"10.1109/ICSM.2001.972717","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972717","url":null,"abstract":"It is crucial for a company such as Netsiel, a leader of re-engineering services in Italy, to introduce architectural solutions that take account of the more varied customer requirements. Netsiel's architecture for re-platforming client/server applications, is composed of the following components: a presentation component implemented through a Java Applet shown inside the more diffuse Web browsers; a Web server component used for start-up and application deployment; an application/transaction server; and a communication component.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125624743","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Addressing the software evolution crisis through a service-oriented view of software: a roadmap for software engineering and maintenance research","authors":"P. Layzell","doi":"10.1109/ICSM.2001.972704","DOIUrl":"https://doi.org/10.1109/ICSM.2001.972704","url":null,"abstract":"In the early 1980s there was much reference to the \"software crisis\": the inability to deliver to software-based systems which met user requirements and were delivered on time and within budget. There is no doubt that since this time, the ability to deliver complex software systems has developed very significantly, but in doing so has created new expectations and pressures which has led to a \"software evolution crisis\". Whilst there may be many reasons for this crisis, one significant factor has been the appearance of a new type of emergent, organisational structure, in which a business is constantly reorganising, changing its boundaries and reconfiguring its activities. Such \"emergent organisations\" place new demands on the software development process, in particular on the need for extreme flexibility in software. However, the focus of much software-related research has been on systems with relatively stable boundaries and hence an apparent deterioration in the ability of software to change to new circumstances and need. In recognition of this problem, a project has been running in the UK for a number of years, The key concept emerging from this work is that of software as a service, rather than a product.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126777048","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}