By Topic

Quality Software, 2005. (QSIC 2005). Fifth International Conference on

Date 19-20 Sept. 2005

Filter Results

Displaying Results 1 - 25 of 72
  • Proceedings. Fifth International Conference on Quality Software (QSIC 2005)

    Save to Project icon | Request Permissions | PDF file iconPDF (212 KB)  
    Freely Available from IEEE
  • Fifth International Conference on Quality Software - Title Page

    Page(s): i
    Save to Project icon | Request Permissions | PDF file iconPDF (34 KB)  
    Freely Available from IEEE
  • Fifth International Conference on Quality Software - Copyright

    Page(s): iv
    Save to Project icon | Request Permissions | PDF file iconPDF (45 KB)  
    Freely Available from IEEE
  • Fifth International Conference on Quality Software - Table of contents

    Page(s): v - ix
    Save to Project icon | Request Permissions | PDF file iconPDF (62 KB)  
    Freely Available from IEEE
  • Message from the Steering Committee Chair

    Page(s): x
    Save to Project icon | Request Permissions | PDF file iconPDF (33 KB)  
    Freely Available from IEEE
  • Message from the Program Committee Co-Chairs

    Page(s): xi
    Save to Project icon | Request Permissions | PDF file iconPDF (37 KB)  
    Freely Available from IEEE
  • Conference Committees

    Page(s): xii
    Save to Project icon | Request Permissions | PDF file iconPDF (44 KB)  
    Freely Available from IEEE
  • Additional reviewers

    Page(s): xv
    Save to Project icon | Request Permissions | PDF file iconPDF (27 KB)  
    Freely Available from IEEE
  • Workshop Committees

    Page(s): xvi
    Save to Project icon | Request Permissions | PDF file iconPDF (52 KB)  
    Freely Available from IEEE
  • Keynote speech

    Page(s): xx
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (23 KB)  

    Provides an abstract of the keynote presentation and a brief professional biography of the presenter. The complete presentation was not made available for publication as part of the conference proceedings. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Model-based testing of concurrent programs with predicate sequencing constraints

    Page(s): 3 - 10
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (344 KB) |  | HTML iconHTML  

    A predicate sequencing constraint logic (PSCL) is proposed to represent test purpose for testing of concurrent programs. The advantage of PSCL rests in its capability of expressing not only sequencing relationships among I/O events, but also data dependencies between event parameters. A PSCL-based symbolic test case generation method is also proposed to automatically derive symbolic test cases that incorporate given data dependency constraints as verdict conditions. The method works in a syntactic way without referring to concrete program states and the derived test cases allow for dynamic test data selection according to the response from, the software under test. A case study shows the PSCL-based test case generation can achieve transition coverage with smaller number of test steps. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Test order for class-based integration testing of Java applications

    Page(s): 11 - 18
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (248 KB) |  | HTML iconHTML  

    This paper presents an improvement to existing class test ordering strategies by including coupling measures to reduce non-determinism and decrease the number of stubs to be produced. Our novel strategy aims to lift the known methods from class hierarchies to component-based product lines in which so-called connectors between components are key entities for structuring, assembling and integrating software architectures, and in which tighter coupling of classes inside components and looser coupling between classes in different components are fundamental to component-based architecture composition. The paper also evaluates the new method and confirms the expected reductions in the number of stubs generated and the improved test ordering. Two recent test order strategies for C++ are compared with our novel approach through experiments conducted on two mini product lines written in Java. The new proposed test ordering strategy is more deterministic through measuring coupling, which is at the heart of component-based product line architectures. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • On the test case definition for GUI testing

    Page(s): 19 - 26
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (488 KB) |  | HTML iconHTML  

    GUI testing is an area of growing importance, facing a number of severe challenges. A few methods have been proposed for GUI testing. However it is still not clear how to define GUI test cases and how many actions should be comprised of a GUI test case. In this paper we propose an approach that defines GUI test cases as a sequence of primitive GUI actions and treats GUI test suites as an inner hierarchy of formal language. This is not only theoretically solid but also practically convenient. The dimension of a GUI test suite and the order of a GUI test case can be defined uniquely. A convenient procedure is available that generates higher-order test cases from lower-order test cases. Three testing experiments with a real-world Internet browser reveal that second-order test cases may significantly outperform first-order test cases in GUI testing and should be generated to perform particular GUI functions. In addition, the number of actions applied during testing should be used to replace the number of tests performed during testing to evaluate the effectiveness of GUI testing processes. This paper provides a potential link between formal language theory and GUI testing. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Peer reviews in real life - motivators and demotivators

    Page(s): 29 - 36
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (248 KB) |  | HTML iconHTML  

    Peer reviews are an efficient quality assurance method in software development. Several reviewing methods exist to match the needs of different organizations and situations. Still, peer reviews are not practiced as commonly as one would suppose. This study aims at finding out what types of reviewing methods are in use in software companies, surveying the most important benefits of peer reviews and investigating reasons for not utilizing reviews. The study is carried out in companies locating in the Oulu region, but the results can be generalized to all small software companies. The results show that companies that use reviews have adjusted the process for their own needs. The main motivator for arranging reviews is the decreased amount of defects in products while the other aspects of reviews, such as process improvement or knowledge sharing are not considered as important. The main demotivator for reviews is lack of time and people resources. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Towards the UML evaluation using taxonomic patterns on meta-classes

    Page(s): 37 - 44
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (232 KB) |  | HTML iconHTML  

    In order to evaluate the design quality of the UML, understanding meta-classes is a key activity as they are the primary weapons by which the UML specifies the application domains. The paper introduces taxonomic patterns for clustering the UML meta-classes based on the observation of their evolution and fitness. The result sets of the patterns assist in finding the evidence of the concerns about the UML design and quality. It not only helps to find out problematic meta-classes, possible design defects of the UML and the inconsistency between the UML meta-models and the application domains; but also provides valuable information for guiding the development and evaluation of the UML. The work can be the basis of further quality analysis of the UML meta-models. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A preliminary evaluation of software inspection tools, with the DESMET method

    Page(s): 45 - 52
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (232 KB) |  | HTML iconHTML  

    Software inspections are established means of ensuring quality in software engineering. The traditional paper-based inspections are considered too laborious for widespread usage, and thus tool support for inspection has evolved. In parallel, generic document-processing tools such as Microsoft Word and Adobe Acrobat have developed support for features that can be utilized in inspections. This study aims to evaluate these two categories of tools with respect to their abilities to support software inspections. For this evaluation, the DESMET method will be employed, and a feature analysis of the tools will be conducted. The results of the evaluation show that the generic document producing tools provide many features applicable to inspections that even the dedicated tools lack. On the other hand, some features, such as support for metrics-based process improvement, are more effectively applied in the tools especially designed to support inspections. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Identification of categories and choices in activity diagrams

    Page(s): 55 - 63
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (272 KB) |  | HTML iconHTML  

    The choice relation framework (CHOC'LATE) provides a systematic skeleton for constructing test cases from specifications. An early stage of the framework is to identify a set of categories and choices from the specification, which is not a trivial task when this document is largely informal and complex. Despite the difficulty, the identification task is very important because the quality of the identified categories and choices will affect the comprehensiveness of the test cases and, hence, the chance of revealing software faults. This paper alleviates the problem by introducing a technique for identifying categories and choices from the activity diagrams in the specification. This technique also helps determine the relations between some pair of choices in the choice relation table - an essential step of CHOC'LATE for the subsequent generation of test cases. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Test case generation by OCL mutation and constraint solving

    Page(s): 64 - 71
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (232 KB) |  | HTML iconHTML  

    Fault-based testing is a technique where testers anticipate errors in a system under test in order to assess or generate test cases. The idea is to have enough test cases capable of detecting these anticipated errors. This paper presents a method of fault-based test case generation for pre- and postcondition specifications. Here, errors are anticipated on the specification level by mutating the pre- and postconditions. We present the underlying theory by giving test cases a formal semantics and translate this general testing theory to a constraint satisfaction problem. A prototype test case generator serves to demonstrate the automatization of the method. The current tool works with OCL specifications, but the theory and method are general and apply to many state-based specification languages. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Action machines - towards a framework for model composition, exploration and conformance testing based on symbolic computation

    Page(s): 72 - 79
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (248 KB) |  | HTML iconHTML  

    We report on a framework for model composition, exploration, and conformance testing based on symbolic execution. The foundations of this framework are given by so-called action machines, a variation of labeled transition systems which communicate over synchronously stepped actions and constraints attached to them. The implementation is based on XRT, an exploration engine for .NET CIL code which supports symbolic computation. The main application is in the area of model-based conformance testing, where our approach addresses practical problems users at Microsoft have in applying model-based testing technology. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Cost and response time simulation for Web-based applications on mobile channels

    Page(s): 83 - 90
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (800 KB) |  | HTML iconHTML  

    When considering the addition of a mobile presentation channel to an existing Web-based application, a key question that has to be answered even before development begins is how the mobile channel's characteristics will impact the user experience and the cost of using the application. If either of these factors is outside acceptable limits, economical considerations may forbid adding the channels, even if it would be feasible from a purely technical perspective. Both of these factors depend considerably on two metrics: The time required to transmit data over the mobile network, and the volume transmitted. The PETTICOAT method presented in this paper uses the dialog flow model and Web server log files of an existing application to identify typical interaction sequences and to compile volume statistics, which are then run through a tool that simulates the volume and time that would be incurred by executing the interaction sequences on a mobile channel. From the simulated volume and time data, we can then calculate the cost of accessing the application on a mobile channel. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Quality assurance in the design of Web information systems

    Page(s): 91 - 98
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (416 KB) |  | HTML iconHTML  

    Despite the fact that several integrated development methods for Web information systems (WISs) have been proposed, quality assurance for such systems has hardly been addressed. In this paper some quality criteria are postulated and investigated by combining semi-formal and formal methods. On a high level of abstractions WISs can be described by abstract locations and transitions between them. These so-called story spaces can be formalised using abstract state machines (ASMs), which permit to verify, whether user-tailored versions are compatible with user preferences. Furthermore, ASMs provide a framework for refinement, which permits the integration of story spaces with extended views on databases. This leads to further proof obligations for consistency that can be formalised in the logic associated with ASMs. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Stochastic voting algorithms for Web services group testing

    Page(s): 99 - 106
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (256 KB) |  | HTML iconHTML  

    This paper proposes a stochastic voting for testing a large number of Web services (WS) under group testing. In the future, a large number of WS would be available and they need to be tested and evaluated in real time. While numerous test input generation techniques are available to generate test inputs, the oracle or the expected output of these test input is often difficult to obtain. One way to obtain the oracle in this case is to give the same input to multiple WS and to establish the oracle by a majority voting. This is based on the assumption that faulty WS often would not produce consistent results, and thus if a majority can be reached, the oracle can be established statistically. However, even correct WS may still produce slightly different outputs, and thus the majority-voting scheme must be carefully designed to distinguish correct but slightly variant output from truly incorrect output. This paper proposes a hierarchical classification based on simulated annealing and multi-dimensional Chi-square statistical techniques to analyze data to see if a majority can be reached. The algorithm is evaluated by a comprehensive simulated data as well as actual data. The data show that the proposed algorithm is effective even in a difficult situation where clusters of WS produce clusters of output. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Verification of C programs using slicing execution

    Page(s): 109 - 116
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (280 KB) |  | HTML iconHTML  

    The paper presents a novel method, namely slicing execution, to verify C programs with respect to temporal safety properties. The distinguished feature is that it only simulates the execution of the relevant statements under abstraction criteria and checks the properties on the fly. The abstraction criterion begins with a proper initial set of program variables and may be iteratively refined according to spurious counter-examples. Provided that the properties to be verified usually involve only a few variables in practical programs, slicing execution may have the same precision as path-sensitive simulation with the cost close to standard flow-sensitive dataflow analysis. The presented method has been used to verify the initial handshake process of SSL protocol based on the C source code of openssl-0.9.6c. The experiment results confirm our claim and show that slicing execution is not only practical but also effective. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Automatic generation of analyzable failure propagation models from component-level failure annotations

    Page(s): 117 - 123
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (240 KB) |  | HTML iconHTML  

    Model-driven and component-based software engineering methodologies are currently key factors for the successful construction of complex software systems. To effectively apply these methodologies to mission- and safety-critical systems, component-based models should also support hazard analysis techniques and enable the automatic construction of safety cases. This paper outlines a technique, which annotates components with modular failure mode assumptions, described in the failure propagation transformation notation (FPTN) and generates an analyzable failure propagation model for the complete system. Based on this technique, a model-based safety evaluation is possible, which enables the automatic generation of safety cases based on system models. Consequently, a consistency between the safety case and the system model can be ensured, even if the system's architecture is changed. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Formal fault tree analysis of state transition systems

    Page(s): 124 - 131
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (288 KB) |  | HTML iconHTML  

    Fault tree analysis (FTA) is a traditional deductive safety analysis technique that is applied during the system design stage. However, traditional FTA does not consider transitions between states, and it is difficult to decompose complex system fault events that are composed of multiple normal components' states rather than individual component failures. To solve these problems, we first propose two different fault events of fault trees, and then present a formal fault tree construction model by introducing the concept of transition rules for event decomposition, in which the semantics of gates and minimal cut sets of fault trees are revised compared with traditional FTA. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.