Computer Software
Print ISSN : 0289-6540
Volume 39, Issue 3
Displaying 1-10 of 10 articles from this issue
  • Hiroaki TAKADA
    2022 Volume 39 Issue 3 Pages 3_1-3_2
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS
  • Yuki IGARASHI, Hideyuki KAWABATA, Kenji KONO, Shigeru CHIBA, Jin NAKAZ ...
    2022 Volume 39 Issue 3 Pages 3_3
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS
  • Ryota YAMAMOTO, Norihiro YOSHIDA, Hiroaki TAKADA
    2022 Volume 39 Issue 3 Pages 3_4-3_16
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    Embedded system is a computer system that is embedded in various devices. Compared to enterprise systems, embedded systems require not only interaction with users but also interaction with hardware devices. Therefore, the characteristics of the development artifacts are different from enterprise systems. In this paper, we focus on the source code and requirement specifications of embedded systems, and explain the analysis methods to support the extraction and understanding of technical debts that reduce the efficiency of reuse and maintenance. In the analysis of requirements specifications, we found that analysis based on domain knowledge and domain constraints are challenges, and that there is a high demand for high-level functional safety. For source code analysis, the issues are the granularity of the analysis, the usage of dynamic analysis by runtime information, and the usage of technology to obtain information near to runtime information statically.

    Download PDF (614K)
  • Takafumi KUBOTA, Kenji KONO
    2022 Volume 39 Issue 3 Pages 3_17-3_32
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    C++ has been widely used for developing various system software such as compilers, web browsers, and so on. However, as software is growing in size and complexity, long build times of the C++ projects has been problematic. This article introduces and discusses three effective methods to improve build times of the C++ projects (i.e., Unity Builds, Zapcc, and C++ Modules). First, we introduce the background of long build times in large C++ projects and analyze breakdowns of the build times to identify the bottleneck in the build processing. Then, we describe each method and indicate how much it can improve the build performance. We also discuss future work in this research area.

    Download PDF (2048K)
  • Tomoki NAKAMARU, Tetsuro YAMAZAKI
    2022 Volume 39 Issue 3 Pages 3_33-3_46
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    In this survey paper, we explain the implementation technique of a fluent API to enable a type checker to detect incorrect chaining of method invocations, from its basics to the latest research paper in 2019. Specifically, we explain the basic idea that such an implementation can be regarded as a syntax checker on top of a type system, and outline research papers from 2010 to 2019, each of which proposes a technique to realize a syntax checker on top of a type system. We also explain existing/missing techniques to put such implementation techniques into practice.

    Download PDF (1071K)
  • Eunjong CHOI, Yuji FUJIWARA, Norihiro YOSHIDA, Osamu MIZUNO
    2022 Volume 39 Issue 3 Pages 3_47-3_59
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    To improve the quality and productivity of software, developers frequently perform code searches. To support this task, many previous research studies have proposed code clone search approaches that search a set of code clones (similar code fragments) of an input code fragment. In this survey paper, we investigate code clone detection techniques and evaluation metrics used in the previous studies. In detail, at first, we categorize code clone detection techniques and then introduce code search approaches in each category. Then, we further elaborate evaluation metrics used in previous studies. Finally, we discuss possible future research directions on code clone search.

    Download PDF (604K)
  • Mana YAMAMOTO, Hokuto TOGASHI, Karen ONISHI, Yoshinari TAKEGAWA, Keiji ...
    2022 Volume 39 Issue 3 Pages 3_60-3_66
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    In this paper, our aim is the design and implementation of a grade management application that handles comprehension test results and comprehension test pass-week estimation results for a programming exercise class. From the results of an interview about the advantages and disadvantages of the test result management sheet that has been used in the lecture targeted in this research, it became clear that, there are various points for improvement, such as the difficulty of discovering, from the data, students who will fail (un-credited students) or students who not being sufficiently challenged. Based on these interview results, we defined the functional requirements of our application. Specifically, we implemented an application that has a functions such as a function to visualize un-credited students or over-achieving students in the form of a list, using the estimation results of the pass-week prediction model. Using the prototype of the proposed application, we conducted a subject experiment to find whether un-credited students can be correctly identified, and obtained the result that the detection accuracy of the proposed method was 12% higher than that of the test result management sheet.

    Download PDF (714K)
  • Ryota KAMOSHIDA, Fuyuki ISHIKAWA
    2022 Volume 39 Issue 3 Pages 3_67-3_81
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    Growing demand for machine learning (ML) data analysis leads to the shortage of data scientists. Novice data scientists who do not have enough time to study ML data analysis beforehand sometimes engage in ML data analysis projects due to the shortage of data scientists. We have developed an open source Python library, MALSS to address the problem. MALSS helps users develop a machine learning model by automating the data analysis pipeline of the supervised learning. Furthermore, MALSS helps the users acquire knowledge about the ML data analysis by giving them an analysis report after the analysis. The report represents the process and results of the analysis and shows the common pitfalls in ML data analysis, which prevents automated data analysis from making the workflow of ML data analysis a black box. However, it is difficult for the analysis report to help ML data analysis in accordance with the input training data and the results of the subprocesses of the modeling processes. To handle the problem, we extend MALSS so that it can help ML data analysis in accordance with the training data and the results of the subprocesses. We confirmed that users using the proposed extended MALSS outperformed those using the conventional MALSS in an evaluational experiment and acquired basic knowledge about supervised ML data analysis the same as those using the conventional MALSS.

    Download PDF (1196K)
  • Yao Faustin DATE, Makoto HAMANA
    2022 Volume 39 Issue 3 Pages 3_82-3_87
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS

    We present a tool GSOL, a confluence checker for GHC. It checks the confluence property for rewrite rules in a Haskell program by using the confluence checker SOL (Second-Order Laboratory). The Glasgow Haskell Compiler (GHC) allows programmers to use rewrite rules to optimize Haskell programs in the compilation pipeline. Currently, GHC does not check the confluence of the user-defined rewrite rules. If the rewrite rules are not confluent then the optimization using these rules may produce unexpected results. Therefore, checking the confluence of rewrite rules is important. We implement GSOL using the plugin mechanism of GHC. and provide three usages. We demonstrate confluence checking in the Arrow library.

    Download PDF (816K)
  • Kazuyuki SHUDO
    2022 Volume 39 Issue 3 Pages 3_88-3_89
    Published: July 22, 2022
    Released on J-STAGE: September 22, 2022
    JOURNAL FREE ACCESS
feedback
Top