Timo Lehtonen, Veli-Pekka Eloranta, Marko Leppänen, Essi Isohanni
{"title":"Visualizations as a Basis for Agile Software Process Improvement","authors":"Timo Lehtonen, Veli-Pekka Eloranta, Marko Leppänen, Essi Isohanni","doi":"10.1109/APSEC.2013.71","DOIUrl":"https://doi.org/10.1109/APSEC.2013.71","url":null,"abstract":"Software projects have usually a lot of software engineering data available in different kinds of repositories. This data can be mined and used for software process improvement purposes. In general, agile methodologies emphasize reflection, making problems visible, and learning from the past. As the human mind is powerful in interpreting visual representations, visualizations could help in recognizing problems and areas of improvement in an agile software development process. In this paper an action research approach was taken to carry out software process improvement in an industry project. The research resulted in a visualization of the issue management system's data. The visualizations were a tool to identify problems in the development process and to make them visible for all stakeholders. The results show that this kind of visual approach can be used successfully to point out problems in the process. The visualizations form a basis for communication on possible software process improvement.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130637201","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}
H. Ogawa, M. Ichii, Fumihiko Kumeno, Toshiaki Aoki
{"title":"A Practical Study of Debugging Using Model Checking","authors":"H. Ogawa, M. Ichii, Fumihiko Kumeno, Toshiaki Aoki","doi":"10.1109/APSEC.2013.128","DOIUrl":"https://doi.org/10.1109/APSEC.2013.128","url":null,"abstract":"Debugging is one of the most time-consuming tasks in software development. The application of a model-checking technique in debugging has strong potential to solve this problem. Here, lessons learned through our practical experiences with POM/MC are discussed. The aim of this proposed hypothesis-based method of debugging is not only to reproduce a failure as counterexamples, but also to obtain a counterexample that is useful for detecting the fault or the cause of the failure. One of the characteristics of the proposed approach is that it degenerates a source code in order to clarify the fault. An example of this degeneration shows that the method is useful for fault analysis and avoidance of the \"state-explosion\" problem. Furthermore, the characteristics of debugging using POM/MC are explained from the viewpoint of debugging hypotheses.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"18 4","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120843608","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":"Quality Driven Design of Program Frameworks for Intelligent Sensor Applications","authors":"Tingxun Shi, Ruizhi Wang, Daolan Zhang, Wenpin Jiao, Bing Xie","doi":"10.1109/APSEC.2013.65","DOIUrl":"https://doi.org/10.1109/APSEC.2013.65","url":null,"abstract":"In the field of Internet of Things (IoT), with the emergence of intelligent sensors (also called mote) which are programmable and have certain capabilities of computation and communication, there are more and more researches focusing on how to develop IoT applications on motes. How to develop high quality mote applications efficiently and provide supporting tools has become a great challenge. Because the quality of an mote application is strongly relevant to the behavior patterns of the mote (a behavior pattern in this work is referenced to a commonly occurring way of performing actions of the mode, which resides in the program framework, i.e., the code structure of the program, of the mote application), this paper studies how to design behavior patterns for mote applications, which will act as guidelines for implementing programs, to improve the QoS of applications. This paper first summarizes a collection of fundamental behavior patterns which can be often found in mote applications and then analyzes the relationships between quality properties and behavior patterns of mote applications based on a series of experiments. It also demonstrates how to design code structures to realize the expected behavior patterns in mote applications for improving the QoS of mote applications.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"121 5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123175735","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":"Run-Time Monitoring and Real-Time Visualization of Software Architectures","authors":"Ana Dragomir, H. Lichter","doi":"10.1109/APSEC.2013.60","DOIUrl":"https://doi.org/10.1109/APSEC.2013.60","url":null,"abstract":"Software architecture stands at the backbone of any software system. An up-to-date description of the architecture greatly contributes to its understanding, evaluation and evolution. Despite its importance, the architecture is typically described only in the preliminary development phases and later becomes subject of continuous degradation. Therefore, methods and corresponding tool support for reconstructing the current views of a system's architecture have been developed and proposed. Current state of the art addresses the reconstruction of static and dynamic views separately. The reconstruction is typically conducted post-mortem using heavy weight infrastructures. We have conceptually defined and built a light-weight run-time monitoring infrastructure that produces meaningful real-time visualizations of object-level interactions. We consider that the possibility to observe the behavior of a system in real-time positively impacts the documentation of the software architecture, its understandability, communication and trace ability to usage scenarios. We have evaluated the monitoring infrastructure on a software project in different development stages. The evaluation has shown very promising results.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127367499","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 a Hybrid Framework for Detecting Input Manipulation Vulnerabilities","authors":"Sun Ding, Hee Beng Kuan Tan, Lwin Khin Shar, Bindu Padmanabhuni","doi":"10.1109/APSEC.2013.56","DOIUrl":"https://doi.org/10.1109/APSEC.2013.56","url":null,"abstract":"Input manipulation vulnerabilities such as SQL Injection, Cross-site scripting, Buffer Overflow vulnerabilities are highly prevalent and pose critical security risks. As a result, many methods have been proposed to apply static analysis, dynamic analysis or a combination of them, to detect such security vulnerabilities. Most of the existing methods classify vulnerabilities into safe and unsafe. They have both false-positive and false-negative cases. In general, security vulnerability can be classified into three cases: (1) provable safe, (2) provable unsafe, (3) unsure. In this paper, we propose a hybrid framework-Detecting Input Manipulation Vulnerabilities (DIMV), to verify the adequacy of security vulnerability defenses for input manipulation vulnerabilities by integrating formal verification with vulnerability prediction in a seamless way. The verification part takes into account sink predicates and effect of domain and custom specifications for detecting input manipulation vulnerabilities. Proving from specification is used as far as possible. Cases that cannot be proved are then predicted from the signatures mined. Our evaluation shows the practicality of the proposed framework.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"60 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130247837","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 Controlled Experiment to Assess the Effectiveness of Eight Use Case Templates","authors":"S. Tiwari, Atul Gupta","doi":"10.1109/APSEC.2013.37","DOIUrl":"https://doi.org/10.1109/APSEC.2013.37","url":null,"abstract":"Use case models, that include use case diagrams along with their documentations, are typically used to specify the functional requirements of the software systems. Use cases are usually semi-structured and documented using some natural language hence issues like ambiguity, inconsistency, and incompleteness are inevitably introduced in the specifications. There have been many efforts to formalize the use case template that make use of certain grammatical construction to guide the structure or style of the description. This paper describes an empirical work to assess the usefulness of eight such use case templates against a set of five judging criteria, namely, completeness, consistency, understandability, redundancy and fault proneness. We conducted a controlled experiment where a group of postgraduate students applied these use case templates on multiple problem specifications. In our results, Yue's template was found to be more consistent and less fault prone, Cockburn's template was found to be more complete and more understandable and, Tiwari's template was found to be less redundant as compared to the other use case templates, though the results were not statistically significant.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133444848","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":"Modeling Security Threat Patterns to Derive Negative Scenarios","authors":"Tatsuya Abe, Shinpei Hayashi, M. Saeki","doi":"10.1109/APSEC.2013.19","DOIUrl":"https://doi.org/10.1109/APSEC.2013.19","url":null,"abstract":"The elicitation of security requirements is a crucial issue to develop secure business processes and information systems of higher quality. Although we have several methods to elicit security requirements, most of them do not provide sufficient supports to identify security threats. Since threats do not occur so frequently, like exceptional events, it is much more difficult to determine the potentials of threats exhaustively rather than identifying normal behavior of a business process. To reduce this difficulty, accumulated knowledge of threats obtained from practical setting is necessary. In this paper, we present the technique to model knowledge of threats as patterns by deriving the negative scenarios that realize threats and to utilize them during business process modeling. The knowledge is extracted from Security Target documents, based on the international Common Criteria Standard, and the patterns are described with transformation rules on sequence diagrams. In our approach, an analyst composes normal scenarios of a business process with sequence diagrams, and the threat patterns matched to them derives negative scenarios. Our approach has been demonstrated on several examples, to show its practical application.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115264335","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}
Subhajit Datta, A. Sajeev, S. Sarkar, Nishanth Kumar
{"title":"Factors Influencing Research Contributions and Researcher Interactions in Software Engineering: An Empirical Study","authors":"Subhajit Datta, A. Sajeev, S. Sarkar, Nishanth Kumar","doi":"10.1109/APSEC.2013.16","DOIUrl":"https://doi.org/10.1109/APSEC.2013.16","url":null,"abstract":"Research into software engineering (SE) education is largely concentrated on teaching and learning issues in coursework programs. This paper, in contrast, provides a meta analysis of research publications in software engineering to help with research education in SE. Studying publication patterns in a discipline will assist research students and supervisors gain a deeper understanding of how successful research has occurred in the discipline. We present results from a large scale empirical study covering over three and a half decades of software engineering research publications. We identify how different factors of publishing relate to the number of papers published as well as citations received for a researcher, and how the most successful researchers collaborate and co-cite one another. Our results show that authors with high publication rates do not concentrate on a few selected venues to publish, researchers with high publication rates behave differently from researchers of high citation rates (with the latter group co-authoring and citing their peers to a much lesser extent than the former), and collaborators citing each other's works is not a significant phenomenon in SE research.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"213 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114452440","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":"Data-Race-Freedom of Concurrent Programs","authors":"Granville Barnett, S. Qin","doi":"10.1109/APSEC.2013.45","DOIUrl":"https://doi.org/10.1109/APSEC.2013.45","url":null,"abstract":"Reasoning about access isolation in a program that uses locks, transactions or both to coordinate accesses to shared memory is complex and error-prone. The programmer must understand when accesses issued to the same memory by distinct threads, under possibly different coordination semantics, are isolated, otherwise, data races are introduced. We present a program analysis that guarantees a program is data-race-free irrespective of whether locks, transactions or both are used to coordinate accesses to memory. Our framework entails two main steps: (i) a program is statically executed to determine its memory space and the types of accesses it issues to that memory, then (ii) our isolation algorithm checks that the accesses issued by the program do not result in a data race. To the best of our knowledge our work is the first to guarantee the data-race-freedom of concurrent programs that use locks, transactions or both to coordinate accesses to mutable memory.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125095759","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-core Model Checking Algorithms for LTL Verification with Fairness Assumptions","authors":"Xuan-Linh Ha, T. Quan, Yang Liu, Jun Sun","doi":"10.1109/APSEC.2013.79","DOIUrl":"https://doi.org/10.1109/APSEC.2013.79","url":null,"abstract":"The main challenge in model checking is the state space explosion. With developments in hardware today, most processors have many cores inside. To leverage on the advances in hardware, we can increase the performance of verifying large models by designing parallel algorithms to run efficiently on multi-core architecture. This work focuses on this problem in the context of Linear Temporal Logic (LTL) model checking, which can be seen as finding accepting cycles in a graph. Recently, there are some parallel algorithms based on Nested Depth First Search (NDFS). In this work, we propose two new parallel algorithms based on strongly connected component (SCC) searching algorithm (i.e., Tarjan's algorithm). By finding all the SCCs in the graph, our approaches can not only check LTL properties, but also handle fairness assumptions all together. The experiments show that our new algorithms are comparable or faster than the state-of-the-art multi-core algorithms.","PeriodicalId":187451,"journal":{"name":"2013 20th Asia-Pacific Software Engineering Conference (APSEC)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122329221","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}