{"title":"Technical Reviews in Agile Development: Case Mobile-D^TM","authors":"H. Hedberg, J. Iisakka","doi":"10.1109/QSIC.2006.63","DOIUrl":"https://doi.org/10.1109/QSIC.2006.63","url":null,"abstract":"Agile software development methods are product-oriented, whereas technical reviews belong to the process-oriented world. The aim of this study was to find out if technical reviews are usable and valuable in the context of agile software development. Based on the literature, it seems that there are agile methods that explicitly contain technical reviews in some form, while others are more against them. The case study was based on experiences gathered during an agile project using the Mobile-Dtrade development method. It was found that there are many potential targets for technical reviews in agile development. The main contribution was acceptance test reviews, which improved the product quality and knowledge transfer between team members. However, the actual need and usefulness depends on the requirements of the product and the process used","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115783911","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":"Static Slicing for Pervasive Programs","authors":"Heng Lu, W. Chan, T. Tse","doi":"10.1109/QSIC.2006.60","DOIUrl":"https://doi.org/10.1109/QSIC.2006.60","url":null,"abstract":"Pervasive programs should be context-aware, which means that program functions should react according to changing environmental conditions. Slicing, as an important class of code analysis techniques, can clarify the dependence between program artifacts and observable system states to facilitate debugging, testing, and other analyses. Existing program slicing techniques, however, do not take the contextual environment into account, resulting in incomplete slices for such kind of program. To tackle this problem, this paper proposes a novel static slicing approach. It develops a graphic representation that captures the context-triggered invocations and the pervasive concurrency features. We have also developed an algorithm to check the propagation dependence in processing inter-thread data dependence. Further optimizations are discussed","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114772692","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":"Do we really have provable Best Practices that ensure Software Quality?","authors":"J. B. Thompson","doi":"10.1109/QSIC.2006.24","DOIUrl":"https://doi.org/10.1109/QSIC.2006.24","url":null,"abstract":"In 1999 the International Federation for Information Processing (IFIP) released a document entitled \"Harmonization of Professional Standards\" which had been developed by a small working group within the Technical Committee for Education (IFIP TC3). The purpose of the document was to set out what could become an international standard for professional practice in Information Technology. The IFIP Harmonization document highlights six areas for consideration with regard to professional standards. These are: ethics of professional practice; established body of knowledge; education and training; professional experience; best practice and proven methodologies; and maintenance of competence","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"157 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127370128","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":"Modularly Certified Dynamic Storage Allocation in SCAP","authors":"Sen Xiang, Yiyun Chen, Chunxiao Lin, Long Li","doi":"10.1109/QSIC.2006.42","DOIUrl":"https://doi.org/10.1109/QSIC.2006.42","url":null,"abstract":"Critical applications and increasing scale of software has made software assurance a big problem. Currently, programmers can write type-safe codes in typed languages with sound type systems, such as Java, Cyclone, even typed assembly language (TAL). But high assurance does mean not only type safe, but also correctness and security. Since type is not expressive enough, there are still no high assurance software released in typed language, especially operating system and runtime library, which are infrastructure software in the computing system. Logic predicates are more expressive than types, thus substituting types with logic predicates as program specification seems a good idea. In this paper, we present a certified dynamic storage allocation library (malloc/free) in SCAP, which is a new MIPS-like assembly language with expressive and power specification structure. And we encode the SCAP language and the certified library in a modern higher-order logic (HOL) proof assistant Coq. In this work, we confirm the expressiveness and modularity of SCAP. So we can expect SCAP to be a expressive target language for some safe high-level languages in the future","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125440024","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}
Axel Schneider, Stéphane Walter, Jan Langer, U. Heinkel
{"title":"Automatic Visualization of Abstract System Specifications","authors":"Axel Schneider, Stéphane Walter, Jan Langer, U. Heinkel","doi":"10.1109/QSIC.2006.16","DOIUrl":"https://doi.org/10.1109/QSIC.2006.16","url":null,"abstract":"Complexity of hardware/software systems is continuously increasing. Formal specification is a methodology to ensure better quality of system specifications and to allow automated verification with tools like model checkers. Many formal specification approaches are known - ranging from programming languages to graphical specification tools. Each approach has its specific benefits. Usually, for abstract system and software specifications either table based or graphical notations are used. This paper presents a concept that leverages the advantages of both approaches by combining them in a single front-end. Both the table based and the graphical representation may be used for editing the specification. An automatic synchronization mechanism ensures that both representations are kept consistent. The implementation of the concept uses the table based formal language ADeVA and the Graphviz graph layout programs","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125858129","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":"Dynamic Model Learning Using Genetic Algorithm under Adaptive Model Checking Framework","authors":"Zhifeng Lai, S. Cheung, Yunfei Jiang","doi":"10.1109/QSIC.2006.25","DOIUrl":"https://doi.org/10.1109/QSIC.2006.25","url":null,"abstract":"Model-based techniques for reactive systems generally assume the availability of a state machine that describes the behavior of the system under study. However, the assumption may not always hold in reality. Even the assumption holds, the state machine could be invalidated when the system evolves. This triggers the study of adaptive model checking, which necessitates an iterative construction of a state machine for a system. In this paper, we propose a dynamic learning approach based on genetic algorithm to iteratively generate a finite-state automaton from a given system. In view of the fact that modern systems are apt to change, our algorithm postpones expensive equivalence checking until the associated accuracy is required for the verification of some properties. We explain in details the core learning process of our algorithm, including encoding the model and its synthesis from a given training set. Experimental results show that our algorithm is scalable in memory consumption. Dynamic model learning technique helps model checking of evolving reactive system","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121119845","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 Project Level Estimation Model Framework based on Bayesian Belief Networks","authors":"Hao Wang, Fei Peng, Chao Zhang, Andrej Pietschker","doi":"10.1109/QSIC.2006.58","DOIUrl":"https://doi.org/10.1109/QSIC.2006.58","url":null,"abstract":"Software estimation models should support managerial decision making in software projects. We experience that most of current models do not achieve this goal to the extend managers are looking for. This paper presents a software project level estimation model framework based on Bayesian belief networks. The framework is constructed by using four basic BBN sub-models, component estimation, test effectiveness estimation, residual defect estimation and test estimation sub-models. The integration of these submodels achieves an estimation model suitable for project levels. With this project level estimation model, the estimation and analysis of quality, effort, schedule and scope can be carried out at both project level and specific project phase level. We show how this approach is used in a sample project, allowing project manager to implement an initial estimation, trade-off quality, effort, schedule and scope, and refine the estimation in the later phase of the project","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132363170","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":"Correctness-preserving synthesis for real-time control software","authors":"Jinfeng Huang, J. Voeten, H. Corporaal","doi":"10.1109/QSIC.2006.21","DOIUrl":"https://doi.org/10.1109/QSIC.2006.21","url":null,"abstract":"Formal theories for real-time systems (such as timed process algebra, timed automata and timed Petri nets) have gained great success in the modelling of concurrent timing behavior and in the analysis of real-time properties. However, due to the ineliminable timing differences between a model and its realization, synthesising a software realization from a model in a correctness-preserving way is still a challenging research topic. In this paper, we tackle this problem by solving a set of sub-problems. First, we introduce property relations between real-time systems on the basis of their absolute and relative timing differences. Second, we bridge the timing differences between a model and its realization by a sequence of (absolute and relative) timing differences. Third, we propose two parameterised hypotheses to capture the timing differences between the model and its realization. The parameters of both hypotheses are used to predict the real-time properties of the realization from those of the model. Finally, we introduce a synthesis tool, which shows that the two hypotheses can be satisfied during software synthesis","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133048694","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":"Optimal Synchronizable Test Sequence from Test Segments","authors":"Jessica Chen, Lihua Duan","doi":"10.1109/QSIC.2006.46","DOIUrl":"https://doi.org/10.1109/QSIC.2006.46","url":null,"abstract":"Finite-state-machine-based conformance testing has been extensively studied in the literature in the context of centralized test architecture. With a distributed test architecture which involves multiple remote testers, the application of a test sequence may encounter controllability problems. One of the possible solutions to overcome this problem is to carefully select a suitable test sequence so that its application to the implementation under test will not involve controllability problems. A common problem in doing so is to generate a test sequence, avoiding controllability problems during its application in the test procedure, so that all given test segments have been contained in the test sequence. In this paper, we present an optimal solution to this problem, taking into account possible overlaps among the test segments","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"94 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133957789","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":"Helping End-User Programmers \"Engineer' Dependable Software","authors":"G. Rothermel","doi":"10.1109/QSIC.2006.33","DOIUrl":"https://doi.org/10.1109/QSIC.2006.33","url":null,"abstract":"Summary form only given. Not long ago, most software was written by professional programmers, who could be presumed to have an interest in software engineering methodologies and in tools and techniques for improving software dependability. Today, however, a great deal of software is written not by professionals but by end-users, who create applications such as multimedia simulations, dynamic Web pages, and spreadsheets. Applications such as these are often used to guide important decisions or aid in important tasks, and it is important that they be sufficiently dependable, but evidence shows that they frequently are not. For example, studies have shown that a large percentage of the spreadsheets created by end-users contain faults, and stories abound of spreadsheet faults that have led to multi-million dollar losses. Despite such evidence, until recently, relatively little research had been done to help end-users create more dependable software. In this paper, I'll show that it's possible to address this problem by adapting formal software engineering techniques to the realm of end-user programming. Focusing on work done in the spreadsheet application paradigm, I present several of approaches to using program analysis techniques to help end-users build more dependable spreadsheets. Behind the scenes, these methodologies use static analyses such as dataflow analysis and slicing, together with dynamic analyses such as execution monitoring, to support user tasks such as validation and fault localization. I show how, to accommodate the user base of spreadsheet languages, an interface to these methodologies can be provided that does not require users to understand the theory behind the analyses, yet supports the interactive, incremental process by which spreadsheets are created. I present empirical results gathered in the use of these methodologies, that highlight several costs and benefits tradeoffs","PeriodicalId":378310,"journal":{"name":"2006 Sixth International Conference on Quality Software (QSIC'06)","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-10-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133408312","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}