{"title":"David L. Parnas symposium","authors":"Daniel Hoffman, David M. Weiss","doi":"10.1109/ICSE.2001.919187","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919187","url":null,"abstract":"David L. Parnas is one of the grandmasters of software engineering. His academic research and industrial collaborations have exerted far-reaching influence on software design and development. His groundbreaking writings capture the essence of the innovations, controversies, challenges, and solutions of the software industry. Together, they constitute the foundation for modern software theory and practice. This symposium is being held in recognition of Parnas's work and in honour of his 60th birthday. It is an opportunity for everyone in the software engineering community to celebrate his contributions, and to think hard about where we are today and where we are going.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124981823","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":"A Web-oriented architectural aspect for the emerging computational tapestry","authors":"Kevin Sullivan, A. Saxena","doi":"10.1109/ICSE.2001.919121","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919121","url":null,"abstract":"An emerging tapestry of computations will soon integrate systems around the globe. It will evolve without central control. Its complexity will be vast. We need new ideas, tools and methods to help map, understand and manage this tapestry. We contribute a light-weight architectural aspect that designers can use without compromising their own architectural preferences. Widespread use could help. The idea is for objects to provide Web-based interfaces to object-specific meta-data, state, and monitoring and control services. We discuss applications, implementation, scalability, performance, tradeoffs, and related work.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126302519","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":"Specification and modeling: an industrial perspective","authors":"B. Selić","doi":"10.1109/ICSE.2001.919153","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919153","url":null,"abstract":"Modeling is an approach that is as old as engineering. The central idea is to produce a scaled-down version of the desired system to determine and evaluate its salient properties. This is typically done for one of the following reasons: • It is usually vastly less expensive and faster to construct a model than it is to construct the final product; this makes it possible to experiment with multiple design alternatives at much reduced cost.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"98 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126340639","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":"The right algorithm at the right time: comparing data flow analysis algorithms for finite state verification","authors":"J. M. Cobleigh, L. Clarke, L. Osterweil","doi":"10.1109/ICSE.2001.919079","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919079","url":null,"abstract":"Finite-state verification is emerging as an important technology for proving properties about software. In our experience, we have found that analysts have different expectations at different times. When an analyst is in an exploratory mode, initially formulating and verifying properties, analyses usually find inconsistencies because of flaws in the properties or in the software artifacts being analyzed. Once an inconsistency is found, the analyst begins to operate in a fault-finding mode, during which meaningful counter-example traces are needed to help determine the cause of the inconsistency. Eventually, systems become relatively stable, but still require re-verification as evolution occurs. During such periods, the analyst is operating in a maintenance mode and would expect re-verification to usually report consistent results. Although it could be that one algorithm suits all three of these modes of use, the hypothesis explored in this paper is that each would be best served by an algorithm optimized for the expectations of the analyst.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114274735","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":"A component-based approach to building formal analysis tools","authors":"R. Stirewalt, L. Dillon","doi":"10.1109/ICSE.2001.919091","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919091","url":null,"abstract":"Automatic-verification capability tends to be packaged into stand-alone tools, as opposed to components that are easily integrated into a larger software-development environment. Such packaging complicates integration because it involves translating internal representations into a form compatible with the stand-alone tool. By contrast, lightweight-analysis components package analysis capability in a form that does not involve such a translation. Borrowing ideas from GenVoca and object-oriented design patterns, we developed a domain model and an automatic generation framework for lightweight-analysis components. The generated components operate directly over the internal form of a specification without requiring a change in representation. Moreover, the domain model identifies several \"useful subsets\" that can be used to customize analysis capability to a particular application. We validated this domain model by generating lightweight analyzers for temporal logic and the behavioral subset of Lotos.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123024395","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":"Tigra- an architectural style for enterprise application integration","authors":"W. Emmerich, E. Ellmer, Henry Fieglein","doi":"10.1109/ICSE.2001.919131","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919131","url":null,"abstract":"We report on experience that we made in the Trading room InteGRation Architecture project (TIGRA) at a large German bank. TIGRA developed a distributed system architecture for integrating different financial front-office trading systems with middle- and back-office applications. We generalize the experience by proposing an architectural style that can be re-used for similar enterprise application integration tasks. The TIGRA style is based on a separation of data representation using domain-specific XML languages from transport of those data with an appropriate middleware. We show how Markup languages, particularly the eXtensible Markup Language (XML) and eXtensible Stylesheet Language Transformations (XSLT), can be used to solve semantic data integration problems. We discuss that the strengths of middleware and markup languages are complementary and indicate the synergies yielded by deploying middleware and markup in the TIGRA style.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121379556","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":"Evolving legacy systems using feature engineering and CBSE","authors":"A. Mehta","doi":"10.1109/ICSE.2001.919183","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919183","url":null,"abstract":"This dissertation explores the relationships between feature engineering, CBSE, and software evolution. Software end-users and developers have different perspectives of a software system, resulting in a complexity gap between user expectations and the software functionality. This gap together with aging code has resulted in lost assets for many organizations. By combining feature engineering and CBSE, legacy code can be modernized so that many organizations can benefit from this technique. In our approach, we identify the legacy system's features through test cases and test suites. We then apply our code carving techniques to identify the code associated with those features and extract the code to create components. We validate our results in two ways. First, by inserting the component(s) back into the legacy system to continue functioning. Second, by measuring the cost of adding a new feature after applying the methodology.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"431 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129224085","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":"The coming-of-age of software architecture research","authors":"M. Shaw","doi":"10.1109/ICSE.2001.919142","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919142","url":null,"abstract":"Over the past decade, software architecture research has emerged as the principled study of the overall structure of software systems, especially the relations among subsystems and components. From its roots in qualitative descriptions of useful system organizations, software architecture has matured to encompass broad explorations of notations, tools, and analysis techniques. Whereas initially the research area interpreted software practice, it now offers concrete guidance for complex software design and development. We can understand the evolution and prospects of software architecture research by examining the research paradigms used to establish its results. These are, for the most part, the paradigms of software engineering. We advance our fundamental understanding by posing research questions of several kinds and applying appropriate research techniques, which differ from one type of problem to another, yield correspondingly different kinds of results, and require different methods of validation. Unfortunately, these paradigms are not recognized explicitly and are often not carried out correctly; indeed not all are consistently accepted as valid. This retrospective on a decade-plus of software architecture research examines the maturation of the software architecture research area by tracing the types of research questions and techniques used at various stages. We will see how early qualitative results set the stage for later precision, formality, and automation and how results build up over time. This generates advice to the field and projections about future impact.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129364740","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":"Adaptive feedback scheduling of incremental and design-to time tasks","authors":"P. Feiler, John J. Walker","doi":"10.1109/ICSE.2001.919105","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919105","url":null,"abstract":"This paper discusses an approach for adaptive feedback scheduling in resource insufficient environments. In particular, we examine the problem of maximizing the utilization of the CPU for a collection of periodic incremental and design-to-time tasks with variations in actual execution times. CPU allocation beyond a minimum is performed according to a Quality-of-Service (QoS) based utility function. Schedulability analysis results are utilized to determine guaranteed execution time limits (worst-case schedulability boundary). Past history based on actual task execution times is used to identify the actual schedulability boundary and execution time allocations are adjusted accordingly. This feedback control approach to scheduling supports opportunistic resource allocation beyond the analytic limits, while minimizing deadline misses and limiting them to optional execution increments.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"177 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116313876","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":"Supporting program comprehension using semantic and structural information","authors":"Jonathan I. Maletic, Andrian Marcus","doi":"10.1109/ICSE.2001.919085","DOIUrl":"https://doi.org/10.1109/ICSE.2001.919085","url":null,"abstract":"Focuses on investigating the combined use of semantic and structural information of programs to support the comprehension tasks involved in the maintenance and reengineering of software systems. \"Semantic information\" refers to the domain-specific issues (both the problem and the development domains) of a software system. The other dimension, structural information, refers to issues such as the actual syntactic structure of the program, along with the control and data flow that it represents. An advanced information retrieval method, latent semantic indexing, is used to define a semantic similarity measure between software components. Components within a software system are then clustered together using this similarity measure. Simple structural information (i.e. the file organization) of the software system is then used to assess the semantic cohesion of the clusters and files with respect to each other. The measures are formally defined for general application. A set of experiments is presented which demonstrates how these measures can assist in the understanding of a nontrivial software system, namely a version of NCSA Mosaic.","PeriodicalId":374824,"journal":{"name":"Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116251221","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}