{"title":"A static analysis for program understanding and debugging","authors":"R. Gaugne","doi":"10.1109/ASE.1997.632853","DOIUrl":"https://doi.org/10.1109/ASE.1997.632853","url":null,"abstract":"The paper presents a static pointer analysis technique for a subset of C. The tool supports user-defined assertions inserted in the body of the program. Assertions are of two kinds: static assertions automatically verified by the analyser, and hypothetical assertions treated as assumptions by the analyser. The technique deals with recursive data structures and it is accurate enough to handle circular structures.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126040634","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":"Towards semantic-based object-oriented CASE tools","authors":"R. France, M. Evett, Emanuel S. Grant","doi":"10.1109/ASE.1997.632852","DOIUrl":"https://doi.org/10.1109/ASE.1997.632852","url":null,"abstract":"Despite their strengths, object-oriented methods (OOMs) and their supporting CASE tools often do not produce model that are amenable to rigorous semantic analysis. This is a direct result of their loosely defined semantics. The authors outline their ongoing work on providing a semantic base for OOMs.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128937627","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":"Mechanising requirements engineering: reuse and the application of domain analysis technology","authors":"W. Lam, S. Jones","doi":"10.1109/ASE.1997.632856","DOIUrl":"https://doi.org/10.1109/ASE.1997.632856","url":null,"abstract":"The paper describes efforts that have made to mechanise the requirements engineering process in an industrial avionics domain. The authors' approach is based on an analysis of both the application domain and the task domain. The paper describes the processes they have used for domain analysis, and the tool they have developed to support mechanisation. They give an initial evaluation of the approach and close with a summary of lessons learnt.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127245454","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":"Feedback handling in dynamic task nets","authors":"C. Krapp, B. Westfechtel","doi":"10.1109/ASE.1997.632855","DOIUrl":"https://doi.org/10.1109/ASE.1997.632855","url":null,"abstract":"While a software process is being executed, many errors and problems occur which require to reconsider previously executed process steps. In order to handle feedback in a process management system, several requirements need to be addressed: adaptability, human intervention, impact analysis, change propagation, restoration of the work context, and traceability. Feedback management in DYNAMITE meets these requirements. DYNAMITE is based on dynamic task nets and specifically supports feedback through feedback relations, task versions, and customized semantics of data flows. A methodology for feedback handling is also represented.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126288903","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":"Research directions for automated software verification: using trusted hardware","authors":"Premkumar T. Devanbu, S. Stubblebine","doi":"10.1109/ASE.1997.632848","DOIUrl":"https://doi.org/10.1109/ASE.1997.632848","url":null,"abstract":"Service providers hosting software on servers at the request of content providers need assurance that the hosted software has no undesirable properties. This problem applies to browsers which host applets, networked software which can host software agents, etc. The hosted software's properties are currently verified by testing and/or verification processes by the hosting computer. This increases cost, causes delay, and leads to difficulties in version control. By furnishing content providers with a physically secure computing device with an embedded certified private key, such properties can be verified and/or enforced by the secure computing device at the content provider's site; the secure device can verify such properties, statically whenever possible, and by inserting checks into the executable binary when necessary. The resulting binary is attested by a trusted signature, and can be hosted with confidence. The position paper is a preliminary report that outlines scientific and engineering goals in this project.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"9 1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125720852","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":"Application of formal methods to the development of a software maintenance tool","authors":"Sandrine Blazy, P. Facon","doi":"10.1109/ASE.1997.632836","DOIUrl":"https://doi.org/10.1109/ASE.1997.632836","url":null,"abstract":"Partial evaluation is an optimization technique traditionally used in compilation. We have adapted this technique to the understanding of scientific application programs during their maintenance, and we have implemented a tool that analyzes Fortran 90 application programs and performs an interprocedural pointer analysis. This paper presents how we have specified this analysis with different formalisms (inference rules with global definitions and set and relational operators). Then we present the tool implementing these specifications. It has been implemented in a generic programming environment and a graphical interface has been developed to visualize the information computed during the partial evaluation (values of variables, already-analyzed procedures, scope of variables, removed statements, etc.).","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134216547","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":"Automatic high-quality reengineering of database programs by temporal abstraction","authors":"Y. Cohen, Y. Feldman","doi":"10.1109/ASE.1997.632828","DOIUrl":"https://doi.org/10.1109/ASE.1997.632828","url":null,"abstract":"The relational database model is currently the target of choice for the conversion of legacy software that uses older models (such as indexed-sequential, hierarchical or network models). The relational model makes up for its lower efficiency by a greater expressive power and by optimization of queries, using indexes and other means. However, sophisticated analysis is required in order to take advantage of these features, since converting each database access operation separately does not use the greater expressive power of the target database and does not enable it to perform useful optimizations. By analyzing the behavior of the host program around the database access operations, it is possible to discover patterns such as filtering, joins and aggregative operations. It is then possible to remove those operations from the host program and re-implement them in the target database query language. This paper describes an automatic system, called MIDAS (MIgrator of Database Application Systems), that performs high-quality reengineering of legacy database programs in this way. The results of MIDAS were found to be superior to those of the naive one-to-one translation in terms of readability, size, speed and network data traffic.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129282751","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":"Mapping software architectures to efficient implementations via partial evaluation","authors":"R. Marlet, Scott Thibault, C. Consel","doi":"10.1109/ASE.1997.632838","DOIUrl":"https://doi.org/10.1109/ASE.1997.632838","url":null,"abstract":"Flexibility is recognized as a key feature in structuring software, and many architectures have been designed to that effect. However, they often come with performance and code size overhead, resulting in a flexibility vs. efficiency dilemma. The source of inefficiency in software architectures can be identified in the data and control integration of components, because flexibility is present not only at the design level but also in the implementation. We propose the use of program specialization in software engineering as a systematic way to improve performance and in some cases, to reduce program size. In particular, we advocate the use of partial evaluation, which is an automatic technique to produce efficient, specialized instances of generic programs. We study several representative, flexible mechanisms found in software architectures: selective broadcast, pattern matching, interpreters, layers, and generic libraries. We show how partial evaluation can systematically be applied in order to optimize those mechanisms.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"13 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129200697","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}
John M. Punshon, J. Tremblay, P. Sorenson, P. Findeisen
{"title":"From formal specifications to natural language: a case study","authors":"John M. Punshon, J. Tremblay, P. Sorenson, P. Findeisen","doi":"10.1109/ASE.1997.632859","DOIUrl":"https://doi.org/10.1109/ASE.1997.632859","url":null,"abstract":"Because software specifications often serve as a formal contract between the developer and the customer, systems have been proposed that help the software client better understand specifications by automatically paraphrasing them in natural language. The REVIEW system applies natural language generation within Metaview, a metasystem that facilitates the construction of CASE environments to support software specification tasks. This paper summarizes a technical report that presents REVIEW through a case study involving the Object Model of Rumbaugh's OMT specification methodology (1991).","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127868138","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}
J. Goguen, Kai Lin, A. Mori, Grigore Roşu, Akiyoshi Sato
{"title":"Distributed cooperative formal methods tools","authors":"J. Goguen, Kai Lin, A. Mori, Grigore Roşu, Akiyoshi Sato","doi":"10.1109/ASE.1997.632824","DOIUrl":"https://doi.org/10.1109/ASE.1997.632824","url":null,"abstract":"This paper describes some tools to support formal methods, and conversely some formal methods for developing such tools. We focus on distributed cooperative proving over the web. Our tools include a proof editor/assistant, servers for remote proof execution, a distributed truth protocol, an editor generator; and a new method for interface design called algebraic semiotics, which combines semiotics with algebraic specification. Some examples are given.","PeriodicalId":337824,"journal":{"name":"Proceedings 12th IEEE International Conference Automated Software Engineering","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123726350","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}