The search functionality is under construction.

Author Search Result

[Author] Shinji KUSUMOTO(12hit)

1-12hit
  • QoS Analysis of Real-Time Distributed Systems Based on Hybrid Analysis of Probabilistic Model Checking Technique and Simulation

    Takeshi NAGAOKA  Akihiko ITO  Kozo OKANO  Shinji KUSUMOTO  

     
    PAPER-Model Checking

      Vol:
    E94-D No:5
      Page(s):
    958-966

    For the Internet, system developers often have to estimate the QoS by simulation techniques or mathematical analysis. Probabilistic model checking can evaluate performance, dependability and stability of information processing systems with random behaviors. We apply a hybrid analysis approach onto real-time distributed systems. In the hybrid analysis approach, we perform stepwise analysis using probabilistic models of target systems in different abstract levels. First, we create a probabilistic model with detailed behavior of the system (called detailed model), and apply simulation on the detailed model. Next, based on the simulation results, we create a probabilistic model in an abstract level (called simplified model). Then, we verify qualitative properties using the probabilistic model checking techniques. This prevents from state-explosion. We evaluate the validity of our approach by comparing to simulation results of NS-2 using a case study of a video data streaming system. The experiments show that the result of the proposed approach is very close to that of NS-2 simulation. The result encourages the approach is useful for the performance analysis on various domain.

  • A Study on the Current Status of Functional Idioms in Java

    Hiroto TANAKA  Shinsuke MATSUMOTO  Shinji KUSUMOTO  

     
    PAPER

      Pubricized:
    2019/09/06
      Vol:
    E102-D No:12
      Page(s):
    2414-2422

    Over the past recent decades, numerous programming languages have expanded to embrace multi-paradigms such as the fusion of object-oriented and functional programming. For example, Java, one of the most famous object-oriented programming languages, introduced a number of functional idioms in 2014. This evolution enables developers to achieve various benefits from both paradigms. However, we do not know how Java developers use functional idioms actually. Additionally, the extent to which, while there are several criticisms against the idioms, the developers actually accept and/or use the idioms currently remains unclear. In this paper, we investigate the actual use status of three functional idioms (Lambda Expression, Stream, and Optional) in Java projects by mining 100 projects containing approximately 130,000 revisions. From the mining results, we determined that Lambda Expression is utilized in 16% of all the examined projects, whereas Stream and Optional are only utilized in 2% to 3% of those projects. It appears that most Java developers avoid using functional idioms just because of keeping compatibility Java versions, while a number of developers accept these idioms for reasons of readability and runtime performance improvements. Besides, when they adopt the idioms, Lambda Expression frequently consists of a single statement, and Stream is used to operate the elements of a collection. On the other hand, some developers implement Optional using deprecated methods. We can say that good usage of the idioms should be widely known among developers.

  • A New Conformance Testing Technique for Localization of Multiple Faults in Communication Protocols

    Yoshiaki KAKUDA  Hideki YUKITOMO  Shinji KUSUMOTO  Tohru KIKUNO  

     
    PAPER

      Vol:
    E78-D No:7
      Page(s):
    802-810

    Conformance testing techniques are required for the efficient production of reliable communication protocols. A lot of conformance testing techniques have been developed. However, most of them can only decide whether an implemented protocol conforms to its specification. That is, the exact locations of faults are not determined by them. This paper presents some conditions that enable to find locations of multiple faults, and then proposes a test sequence generation technique under such conditions. The correctness proof and complexity analysis of the proposed technique are also given. The characteristics of this technique are to generate test sequences based on protocol specifications and interim test results, and to find locations of multiple faults in protocol implementations. Although the length of the test sequence generated by the proposed technique is a little longer than the one generated by the previous one, the class to which the proposed technique can be applied is larger than that to which the previous one can be applied.

  • An Abstraction Refinement Technique for Timed Automata Based on Counterexample-Guided Abstraction Refinement Loop

    Takeshi NAGAOKA  Kozo OKANO  Shinji KUSUMOTO  

     
    PAPER-Model Checking

      Vol:
    E93-D No:5
      Page(s):
    994-1005

    Model checking techniques are useful for design of high-reliable information systems. The well-known problem of state explosion, however, might occur in model checking of large systems. Such explosion severely limits the scalability of model checking. In order to avoid it, several abstraction techniques have been proposed. Some of them are based on CounterExample-Guided Abstraction Refinement (CEGAR) loop technique proposed by E. Clarke et al.. This paper proposes a concrete abstraction technique for timed automata used in model checking of real time systems. Our technique is based on CEGAR, in which we use a counter example as a guide to refine the abstract model. Although, in general, the refinement operation is applied to abstract models, our method modifies the original timed automaton. Next, we generate refined abstract models from the modified automaton. This paper describes formal descriptions of the algorithm and the correctness proof of the algorithm.

  • Experimental Evaluation of Two-Phase Project Control for Software Development Process

    Osamu MIZUNO  Shinji KUSUMOTO  Tohru KIKUNO  Yasunari TAKAGI  Keishi SAKAMOTO  

     
    PAPER

      Vol:
    E81-A No:4
      Page(s):
    605-614

    In this paper, we consider a simple development process consisting of design and debug phases, which is derived from actual concurrent development process for embedded software at a certain company. Then we propose two-phase project control that examines the initial development plan at the end of design phase, updates it to the current status of the development process and executes the debug phase under the new plan. In order to show the usefulness, we define three imaginary projects based on actually executed projects in a certain company: the project that executes debug phase under initial plan, the project that applies the proposed approach, and the project that follows a uniform plan. Moreover, to execute these projects, we use the project simulator, which has already been developed based on GSPN model. Judging from the number of residual faults in all products, we found that project B is the best among them.

  • On a Measurement Environment for Controlling Software Development Activities

    Shinji KUSUMOTO  Ken-ichi MATSUMOTO  Tohru KIKUNO  Koji TORII  

     
    LETTER-Reliability

      Vol:
    E74-A No:5
      Page(s):
    1051-1054

    This letter describes system architecture of a measurement environment called GINGER that helps programmer productivity by automatically collecting and analyzing data about software development activities. Based on the result of analysis, the environment gives programmers feedback so that they can recognize and improve their activities. The first prototype system of GINGER is currently implemented in a UNIX environment. We expect that the proposed environment will improve the overall productivity of programmers and the quality of resulting products.

  • A New Metric for Cost Effectiveness of Software Reviews

    Shinji KUSUMOTO  Ken-ichi MATSUMOTO  Tohru KIKUNO  Koji TORII  

     
    PAPER

      Vol:
    E75-D No:5
      Page(s):
    674-680

    This paper describes a new metric for evaluating the cost effectiveness of software reviews. The proposed metric is based on the degree to which costs needed for detecting all faults from software are reduced by software reviews in a project. The metric can be interpreted as combining two conventional metrics proposed by Fagan (1976) and Collofello and Woodfield (1989). As the proposed metric is normalized by virtual testing cost, we can compare the values of it among any different kind of projects. Using an experimental evaluation of the conventional metrics and the proposed metric for data collected in an industrial environment, we show the validity and usefulness of the proposed metric. In addition, we present a method to estimate a value of the proposed metric by using only the values which can be computed during the software reviews.

  • Comparing Reading Techniques for Object-Oriented Design Inspection

    Giedre SABALIAUSKAITE  Shinji KUSUMOTO  Katsuro INOUE  

     
    PAPER-Software Engineering

      Vol:
    E87-D No:4
      Page(s):
    976-984

    For more than twenty-five years software inspections have been considered an effective method for defect detection. Inspections have been investigated through controlled experiments in university environment and industry case studies. However, in most cases software inspections have been used for defect detection in documents of conventional structured development process. Therefore, there is a significant lack of information about how inspections should be applied to Object-Oriented artifacts, such as Object-Oriented code and design diagrams. In addition, extensive work is needed to determine whether some inspection techniques can be more beneficial than others. Most inspection experiments include inspection meetings after individual inspection is completed. However, several researchers suggested that inspection meetings may not be necessary since an insignificant number of new defects are found as a result of inspection meeting. Moreover, inspection meetings have been found to suffer from process loss. This paper presents the findings of a controlled experiment that was conducted to investigate the performance of individual inspectors as well as 3-person teams in Object-Oriented design document inspection. Documents were written using the notation of Unified Modelling Language. Two reading techniques, namely Checklist-based reading (CBR) and Perspective-based reading (PBR), were used during experiment. We found that both techniques are similar with respect to defect detection effectiveness during individual inspection as well as during inspection meetings. Investigating the usefulness of inspection meetings, we found out that the teams that used CBR technique exhibited significantly smaller meeting gains (number of new defect first found during team meeting) than meeting losses (number of defects first identified by an individual but never included into defect list by a team); meanwhile the meeting gains were similar to meeting losses of the teams that used PBR technique. Consequently, CBR 3-person team meetings turned out to be less beneficial than PBR 3-person team meetings.

  • Extended Metrics to Evaluate Cost Effectiveness of Software Inspections

    Giedre SABALIAUSKAITE  Shinji KUSUMOTO  Katsuro INOUE  

     
    LETTER-Software Engineering

      Vol:
    E87-D No:2
      Page(s):
    475-480

    Software inspection is one of the most effective methods to detect defects. However, inspections are not always worthwhile. This letter proposes an inspection cost model to describe inspections-related costs and extended metrics to evaluate the cost effectiveness of software inspections.

  • Empirical Evaluation of Method Complexity for C++ Program

    Motoyasu TAKEHARA  Toshihiro KAMIYA  Shinji KUSUMOTO  Katsuro INOUE  

     
    LETTER-Software Engineering

      Vol:
    E83-D No:8
      Page(s):
    1698-1700

    This letter empirically evaluates the way how to calculate the complexity of methods, that is used in the definition of WMC(Weighted Method per Class), one of the Chidamber and Kemerer's metrics. With respect to the results of our experiment, Halstead's Software Science metric is the most appropriate one to evaluate the complexity of the methods.

  • A New Verification Framework of Object-Oriented Design Specification for Small Scale Software

    Eun Mi KIM  Shinji KUSUMOTO  Tohru KIKUNO  

     
    PAPER-Verification

      Vol:
    E80-D No:1
      Page(s):
    51-56

    In this paper, we present a first step for developing a method of verifying both safety and correctness of object-oriented design specification. At first, we analyze the discrepancies, which can occur between requirements specification and design specification, to make clear target faults. Then, we propose a new design review method which aims at detecting faults in the design specification by using three kinds of information tables. Here, we assume that component library, standards for safety and design specification obtained from the Booch's object-oriented design method are given. At the beginning, the designers construct a design table based on a design specification, and the verifiers construct a correctness table and a safety table from component library and standards for safety. Then, by comparing the items on three tables, the verifiers review a given design specification and detect faults in it. Finally, using a small example of object-oriented design specification, we show that faults concerning safety or correctness can be detected by the new design review method.

  • Effectiveness of an Integrated CASE Tool for Productivity and Quality of Software Developments

    Michio TSUDA  Sadahiro ISHIKAWA  Osamu OHNO  Akira HARADA  Mayumi TAKAHASHI  Shinji KUSUMOTO  Katsuro INOUE  

     
    PAPER-Software Engineering

      Vol:
    E89-D No:4
      Page(s):
    1470-1479

    This is commonly thought that CASE tools reduce programming efforts and increase development productivity. However, no paper has provide quantitative data supporting the matter. This paper discusses productivity improvement through the use of an integrated CASE tool system named EAGLE (Effective Approach to Achieving High Level Software Productivity), as shown by various data collected in Hitachi from the 1980s to the 2000s. We have evaluated productivity by using three metrics, l) program generation rate using reusable program skeletons and components, 2) fault density at two test phase, and 3) learning curve for the education of inexperienced programmers. We will show that productivity has been improved by the various facilities of EAGLE.