Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991494
S. Qin, Jifeng He
Hardware and software co-design is a design technique which delivers computer systems comprising hardware and software components. A critical phase of the codesign process is to decompose a program into hardware and software.. This paper proposes an algebraic partitioning method whose correctness is verified in the algebra of programs. We introduce the program analysis phase before program partitioning and develop a collection of syntax-based splitting rules, where the former provides information for moving operations from software to hardware and reducing the interaction between components, and the latter supports a compositional approach to program partitioning.
{"title":"Partitioning program into hardware and software","authors":"S. Qin, Jifeng He","doi":"10.1109/APSEC.2001.991494","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991494","url":null,"abstract":"Hardware and software co-design is a design technique which delivers computer systems comprising hardware and software components. A critical phase of the codesign process is to decompose a program into hardware and software.. This paper proposes an algebraic partitioning method whose correctness is verified in the algebra of programs. We introduce the program analysis phase before program partitioning and develop a collection of syntax-based splitting rules, where the former provides information for moving operations from software to hardware and reducing the interaction between components, and the latter supports a compositional approach to program partitioning.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125003469","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991470
Junzou Kato, S. Komiya, M. Saeki, A. Ohnishi, Morio Nagata, Shuichiro Yamamoto, H. Horai
Experts in requirements elicitation interview stakeholders using various levels of knowledge to grasp and elicit users' requirements. This paper analyzes expert interview processes and explores a computation model for simulating them. This model can be used to navigate a novice analyst's interview processes. It consists of a blackboard model and a state transition model in order to narrow the candidates for questions that an expert analyst will ask stakeholders next in the interview process. The candidates are selected based on information that has been elicited from stakeholders, and the blackboard model is for holding this information in the form of IEEE 830, a standard form of requirements specification documents. We have analyzed experts' interview processes and constructed a computation model in the sales management domain. We also recorded novice processes and showed that we could improve them by means of the model.
{"title":"A model for navigating interview processes in requirements elicitation","authors":"Junzou Kato, S. Komiya, M. Saeki, A. Ohnishi, Morio Nagata, Shuichiro Yamamoto, H. Horai","doi":"10.1109/APSEC.2001.991470","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991470","url":null,"abstract":"Experts in requirements elicitation interview stakeholders using various levels of knowledge to grasp and elicit users' requirements. This paper analyzes expert interview processes and explores a computation model for simulating them. This model can be used to navigate a novice analyst's interview processes. It consists of a blackboard model and a state transition model in order to narrow the candidates for questions that an expert analyst will ask stakeholders next in the interview process. The candidates are selected based on information that has been elicited from stakeholders, and the blackboard model is for holding this information in the form of IEEE 830, a standard form of requirements specification documents. We have analyzed experts' interview processes and constructed a computation model in the sales management domain. We also recorded novice processes and showed that we could improve them by means of the model.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"67 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121646362","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":"Orchestrating computations on the world-wide web","authors":"Young-ri Choi, A. Garg, S. Rai, J. Misra, H. Vin","doi":"10.1007/3-540-45706-2_1","DOIUrl":"https://doi.org/10.1007/3-540-45706-2_1","url":null,"abstract":"","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133814636","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991457
Hugh Anderson
The 'literate' programming model is extended to include a concept of mechanical transformation. A prototype tool, FLP (formal literate programming tool), has been developed which uses this extended 'literate' programming model in both a formal program proof setting, and within a formal (refinement) program development setting. In both settings, FLP provides history, access to tools, and an easy-to-use interface. FLP is a system with (i) a tree structured revision control system allowing easy access to an entire software development history, (ii) a unifying semi-formal model encompassing both program proof and refinement, and (iii) a single simple mechanism for managing both formal transformations on programs (proofs, tests, refinements) and informal transformations (explanations). In this paper, we outline the underlying semi-formal model for this extended 'literate' programming tool, briefly show the system architecture, and demonstrate the tool's use during a sample program development.
{"title":"Formalization and 'literate' programming","authors":"Hugh Anderson","doi":"10.1109/APSEC.2001.991457","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991457","url":null,"abstract":"The 'literate' programming model is extended to include a concept of mechanical transformation. A prototype tool, FLP (formal literate programming tool), has been developed which uses this extended 'literate' programming model in both a formal program proof setting, and within a formal (refinement) program development setting. In both settings, FLP provides history, access to tools, and an easy-to-use interface. FLP is a system with (i) a tree structured revision control system allowing easy access to an entire software development history, (ii) a unifying semi-formal model encompassing both program proof and refinement, and (iii) a single simple mechanism for managing both formal transformations on programs (proofs, tests, refinements) and informal transformations (explanations). In this paper, we outline the underlying semi-formal model for this extended 'literate' programming tool, briefly show the system architecture, and demonstrate the tool's use during a sample program development.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114306750","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991497
M.V. Mauco, D. Riesco, C. George
The goal of our work is to analyse and develop the integration of client-oriented requirements engineering techniques with formal methods. In particular, we integrate the requirements baseline with the RAISE method. We proposed a three-step process to derive an initial formal specification of a domain, starting from two models of the requirements baseline: the language extended lexicon and the scenario model. In this paper, we focus on the derivation of functions. We present heuristics to identify and model the functions of a formal specification written in the RAISE specification language, using natural language descriptions provided by the scenario model and the language extended lexicon.
{"title":"Using a scenario model to derive the functions of a formal specification","authors":"M.V. Mauco, D. Riesco, C. George","doi":"10.1109/APSEC.2001.991497","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991497","url":null,"abstract":"The goal of our work is to analyse and develop the integration of client-oriented requirements engineering techniques with formal methods. In particular, we integrate the requirements baseline with the RAISE method. We proposed a three-step process to derive an initial formal specification of a domain, starting from two models of the requirements baseline: the language extended lexicon and the scenario model. In this paper, we focus on the derivation of functions. We present heuristics to identify and model the functions of a formal specification written in the RAISE specification language, using natural language descriptions provided by the scenario model and the language extended lexicon.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"67 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121699584","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991456
L. Groves
This paper presents an approach to program specialisation for nondeterministic imperative programs written in an extension of Dijkstra's guarded commands language. Assertion statements are used to express information about inputs and program variables, and refinement laws are used to show how these assertions can be introduced, propagated through the program structure, and used to specialise various program constructs. This approach allows more general constraints than other work on program specialisation, which usually considers only fixed values for some of the inputs, and is easier to understand because the transformations used are all expressed entirely in terms of the programming language.
{"title":"Program specialisation in the refinement calculus","authors":"L. Groves","doi":"10.1109/APSEC.2001.991456","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991456","url":null,"abstract":"This paper presents an approach to program specialisation for nondeterministic imperative programs written in an extension of Dijkstra's guarded commands language. Assertion statements are used to express information about inputs and program variables, and refinement laws are used to show how these assertions can be introduced, propagated through the program structure, and used to specialise various program constructs. This approach allows more general constraints than other work on program specialisation, which usually considers only fixed values for some of the inputs, and is easier to understand because the transformations used are all expressed entirely in terms of the programming language.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123874752","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991476
F. Padberg
A probabilistic scheduling model for software projects is presented. The model explicitly takes a scheduling strategy as input. When the scheduling strategy is fired, the model outputs a probability distribution for the project completion time or cost. By applying stochastic optimization techniques, schedules for software projects can be computed which minimize the development time or cost with a given staff.
{"title":"Scheduling software projects to minimize the development time and cost with a given staff","authors":"F. Padberg","doi":"10.1109/APSEC.2001.991476","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991476","url":null,"abstract":"A probabilistic scheduling model for software projects is presented. The model explicitly takes a scheduling strategy as input. When the scheduling strategy is fired, the model outputs a probability distribution for the project completion time or cost. By applying stochastic optimization techniques, schedules for software projects can be computed which minimize the development time or cost with a given staff.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125977062","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991474
C. Choppy, P. Poizat, J. Royer
Formal specifications are now widely accepted in software development. Recently, the need for a separation of concerns with reference to static and dynamic aspects appeared. Furthermore, in order to be able to design complex architectures and communication patterns, we need a structured approach which allows us to decompose a system into subparts and to recompose it from them. Finally, a notion of formal reusable component which is suitable to describe both functional and dynamic aspects is also required. This paper presents the Korrigan model. It allows one to specify in a uniform and structured way both datatypes and behaviours using Symbolic Transition Systems and algebraic specifications. We demonstrate its ability to describe reusable components in a formal way with well defined interfaces. We also demonstrate that Korrigan is relevant to describe the architecture and communication schemes of systems that may present a complex structure.
{"title":"Formal specification of mixed components with Korrigan","authors":"C. Choppy, P. Poizat, J. Royer","doi":"10.1109/APSEC.2001.991474","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991474","url":null,"abstract":"Formal specifications are now widely accepted in software development. Recently, the need for a separation of concerns with reference to static and dynamic aspects appeared. Furthermore, in order to be able to design complex architectures and communication patterns, we need a structured approach which allows us to decompose a system into subparts and to recompose it from them. Finally, a notion of formal reusable component which is suitable to describe both functional and dynamic aspects is also required. This paper presents the Korrigan model. It allows one to specify in a uniform and structured way both datatypes and behaviours using Symbolic Transition Systems and algebraic specifications. We demonstrate its ability to describe reusable components in a formal way with well defined interfaces. We also demonstrate that Korrigan is relevant to describe the architecture and communication schemes of systems that may present a complex structure.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"87 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126177157","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991453
Huimin Lin
An algorithm for model checking value-passing processes is presented. Processes are modeled as symbolic transition graphs with assignments. To specify properties for such processes a graphical predicate mu-calculus is introduced. It allows arbitrary nesting of the least and greatest fixpoints, and contains the propositional mu-calculus as a proper subset. The algorithm instantiates input variables on-the-fly and states are only generated when they are needed for the computation. To handle alternating fix-points properly, a multi-stack is employed and the controlling strategy is such that a state is evaluated without depending on the default values for more deeply nested states. The algorithm is shown correct with respect to the semantics of the predicate mu-calculus. Its complexity is also analysed.
{"title":"Model checking value-passing processes","authors":"Huimin Lin","doi":"10.1109/APSEC.2001.991453","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991453","url":null,"abstract":"An algorithm for model checking value-passing processes is presented. Processes are modeled as symbolic transition graphs with assignments. To specify properties for such processes a graphical predicate mu-calculus is introduced. It allows arbitrary nesting of the least and greatest fixpoints, and contains the propositional mu-calculus as a proper subset. The algorithm instantiates input variables on-the-fly and states are only generated when they are needed for the computation. To handle alternating fix-points properly, a multi-stack is employed and the controlling strategy is such that a state is evaluated without depending on the default values for more deeply nested states. The algorithm is shown correct with respect to the semantics of the predicate mu-calculus. Its complexity is also analysed.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125231058","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}
Pub Date : 2001-12-04DOI: 10.1109/APSEC.2001.991500
S. Uehara, O. Mizuno, T. Kikuno
The needs for accessibility of cellular phones to Web based client-server systems are increasing. For this access, efficient management of the context data must be implemented on the cellular phone. However, physical restrictions of the cellular phone make it difficult to manage context data by applying the conventional methods. Additionally the conventional methods do not show sufficient performance to tolerate heavy accesses from cellular phones. We therefore design a new session management mechanism that enables cellular phone to use Web client-server system efficiently. To do so, we decide to utilize key concepts in the CDS mechanism, which was previously developed by us in order to implement session management on the Web. By utilizing the CDS mechanism, we develop a new session management mechanism that connects cellular phone and Web systems. Then, we can actually implement the session management with high safety and reliability. The result of a benchmark evaluation shows that proposed mechanism has higher performance than the conventional mechanism.
{"title":"Development of session management mechanism for cellular phone with WWW connection","authors":"S. Uehara, O. Mizuno, T. Kikuno","doi":"10.1109/APSEC.2001.991500","DOIUrl":"https://doi.org/10.1109/APSEC.2001.991500","url":null,"abstract":"The needs for accessibility of cellular phones to Web based client-server systems are increasing. For this access, efficient management of the context data must be implemented on the cellular phone. However, physical restrictions of the cellular phone make it difficult to manage context data by applying the conventional methods. Additionally the conventional methods do not show sufficient performance to tolerate heavy accesses from cellular phones. We therefore design a new session management mechanism that enables cellular phone to use Web client-server system efficiently. To do so, we decide to utilize key concepts in the CDS mechanism, which was previously developed by us in order to implement session management on the Web. By utilizing the CDS mechanism, we develop a new session management mechanism that connects cellular phone and Web systems. Then, we can actually implement the session management with high safety and reliability. The result of a benchmark evaluation shows that proposed mechanism has higher performance than the conventional mechanism.","PeriodicalId":130293,"journal":{"name":"Proceedings Eighth Asia-Pacific Software Engineering Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130547618","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}