Tomoyuki Yokogawa

Tomoyuki Yokogawa
Okayama Prefectural University · Department of Systems Engineering

Doctor of Engineering

About

73
Publications
4,510
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
228
Citations
Additional affiliations
April 2016 - present
Okayama Prefectural University
Position
  • Professor (Associate)
April 2007 - March 2016
Okayama Prefectural University
Position
  • Professor (Assistant)
May 2004 - March 2007
Okayama Prefectural University
Position
  • Research Assistant
Education
April 2001 - March 2004
Osaka University
Field of study
April 1999 - March 2001
Osaka University
Field of study
April 1999 - March 2001
Osaka University
Field of study

Publications

Publications (73)
Conference Paper
Any source code of a software product (production code) is expected to be tested to ensure its correct behavior. Whenever a developer updates production code, the developer should also update or create the corresponding test code to check if the updated parts still work correctly. Such a desirable co-evolution relationship between production and te...
Conference Paper
We develop a visual modeling environment aimed at assisting novice users to perform model checking using nuXmv. We propose a node-graph style visual modeling language that represents the data flow of the system to be checked in terms of nodes and edges, and provide an interface for describing it. The proposed visual modeling environment enables eve...
Article
Full-text available
Software effort estimation (SEE) models have been studied for decades. One of serious but typical situations for data-oriented models is the availability of datasets for training models. Cross-company software effort estimation (CCSEE) is a research topic to utilize project data outside an organization. The same problem was identified in software d...
Article
Visual script languages with a node-based interface have commonly been used in the video game industry. We examined the bug database obtained in the development of FINAL FANTASY XV (FFXV), and noticed that several types of bugs were caused by simple mis-descriptions of visual scripts and could therefore be mechanically detected. We propose a method...
Conference Paper
A successful naming of variables is key to making the source code readable. Programmers may use a compound variable name by concatenating two or more words to make it easier to understand and more informative. While each compound variable name itself may be easy-to-understand, a collection of such variables sometimes makes a "confusing" variable pa...
Article
Although the tube diameter and stenosis rate are important observations in the diagnosis using medical images of digestive organ, such as digestive systems, the diagnosis is based on the physician's subjective evaluation. On the other hand, automatic measurement of tube diameters by image processing has been used for blood vessels, which are tubula...
Chapter
Variables are fundamental elements of software, and their names hold vital clues to comprehending the source code. It is ideal that a variable’s name should be informative that anyone quickly understands its role. When a variable’s scope gets broader, the demand for such an informative name becomes higher. Although the standard naming conventions p...
Chapter
Methods (functions) are the fundamental components of the software. Programmers usually grasp a method’s behavior by looking at the method’s name. Hence, the name of a method should be a summary of what the method does. There has been a study utilizing Word2Vec, Doc2Vec, and the convolutional neural network (CNN) to evaluate the consistency between...
Preprint
Full-text available
Visual script languages with a node-based interface have commonly been used in the video game industry. We examined the bug database obtained in the development of FINAL FANTASY XV (FFXV), and noticed that several types of bugs were caused by simple mis-descriptions of visual scripts and could therefore be mechanically detected. We propose a method...
Chapter
Context: Recent progress in the use of commit data for software defect prediction has driven research on personalized defect prediction. An idea applying one personalized model to another developer came in for seeking an alternative model predicting better than one’s own model. A question arose whether such exemplary developer (bellwether) existed...
Conference Paper
Full-text available
Research on software effort estimation has been active for decades, especially in developing effort estimation models. Effort estimation models need a dataset collected from completed projects similar to a project to be estimated. The similarity suffers from dataset shift, and cross-company software effort estimation (CCSEE) gets an attractive rese...
Conference Paper
Full-text available
In this paper, we introduce visual programming for supporting to conduct model checking. We focus on the nuXmv model-checker and propose a visual programming language for describing an input model for nuXmv. Our visual programming language provides a node-graph style interface, where a data flow of a target system is represented as nodes and edges....
Conference Paper
Full-text available
This paper proposes a method for applying model checking for video game logic written by Unreal Engine 4 Blueprints. In this study, a model-checker NuSMV is used to verify game logic. We provide a method for representing behavior written in blueprints as SMV program which is an input for NuSMV. In Unreal Engine 4 Blueprints, game logic is described...
Conference Paper
Full-text available
CONTEXT: Automated bug localization is expected to help developers reducing effort and has been studied for years. One of the major approaches for this topic is Information Retrieval (IR) based bug localization. It takes a bug report and gives a ranking list of suspicious software modules based on the text similarity. Method-level bug localization...
Conference Paper
Full-text available
To enhance the efficiency of software testing, researchers have studied various test case prioritization (TCP) methods. A topic model-based TCP is one of the promising methods, which expresses test cases by topic vectors and prioritizes them in the order such that the set of already-prioritized test cases have the maximum dispersion in the vector s...
Article
Safety critical systems are often modeled using Time Petri Nets (TPN) for analyzing their reliability with formal verification methods. This paper proposed an efficient verification method for TPN introducing bounded model checking based on satisfiability solving. The proposed method expresses time constraints of TPN by Difference Logic (DL) and us...
Chapter
Static code analysis tools (code checkers) scan source programs and issue warnings to potentially-problematic parts. Programmers can utilize a code checker whenever they change their source code to make sure that their code changes do not carry high risks of decreasing the code quality. Although code checkers would be helpful to detect risky code c...
Conference Paper
Full-text available
Well-chosen variable names play significant roles in program comprehension and high-quality software development and maintenance. However, even though all variables have easy-to-understand names, attention needs to be paid to the similarity among those names as well because a highly similar pair of variables may decrease the readability of code and...
Chapter
Full-text available
Visual script languages with a node-based interface have commonly been used in the video game industry. We examined the bug database obtained in the development of FINAL FANTASY XV (FFXV), and noticed that several types of bugs were caused by simple mis-descriptions of visual scripts and could therefore be mechanically detected. We propose a method...
Conference Paper
Visual script languages with a node-based interface have commonly been used in the video game industry. We examined the bug database obtained in the development of FINAL FANTASY XV (FFXV), and noticed that several types of bugs were caused by simple mis-descriptions of visual scripts and could therefore be mechanically detected. We propose a method...
Article
Programmers are familiar with local variables, and in many cases, they can freely define the local variables they use. Thus, the properties of these variables are widely diverse, and this may cause variations in the quality of code. Although variables are named in accordance with coding conventions, the following matters have not received much atte...
Article
A heartbeat contact-less monitor system with a less burden on the human body is an effective solution to support the safety car with monitoring driver's condition. This paper shows the smart low power heartbeat monitor system with a UWB sensor. We have adopted the noise filtering for breath and body movement to get the accurate heart rate. We take...
Conference Paper
BACKGROUND: Prediction systems in software engineering often suffer from the shortage of suitable data within a project. A promising solution is transfer learning that utilizes data from outside the project. Many transfer learning approaches have been proposed for defect prediction known as cross-project defect prediction (CPDP). In contrast, a few...
Conference Paper
Full-text available
Automatic consistency checking for UML state machine diagrams and sequence diagrams has been expected since developers spend considerable effort to keep the consistency. We propose an automatic method for verifying consistency of UML diagrams using FDR model checker. We provide a process description of UML diagrams in CSPM. Our description supports...
Conference Paper
Full-text available
This paper describes the compact and low power AI DNN discriminator which is mounted on the small drone like a hobby type. By adopting this AI module, the effective plant monitoring system using the drone has been achieved. The experimental results applied to the pineapple fields in Okinawa are shown.
Conference Paper
This research aims to tackle a data shift problem of software effort estimation. Cross project defect prediction approaches were found to be helpful for the same problem of software defect prediction. We examined the CPDP approaches and explored its applicability and adaptability for the problem of software effort estimation.
Conference Paper
Full-text available
Comments in a source program can be helpful artifacts for program comprehension. While many comments are useful documents embedded in source programs, there are also poorly-informative comments in the real world. In order to quantitatively assess the value of comments, this paper proposes applying the Doc2Vec model to comment evaluation. Doc2Vec is...
Conference Paper
Full-text available
Safety critical systems are often modeled using Time Petri Net (TPN) for analyzing its reliability with formal verification methods. This paper proposed a safety verification method for TPN introducing unbounded model checking based on over-approximation of the state space. The proposed method expresses time constraints of TPN by Difference Logic (...
Conference Paper
Full-text available
Giving a name to a local variable is usually a programmer's discretion. Since it depends on the programmer's preference and experience, there is a lot of individual variation which may cause a variability in the code quality such as the readability. While there have been studies on the naming of local variables in the past, a relationship of names...
Conference Paper
Full-text available
Open source software (OSS) products have been widely used for information systems, and a successful quality management of OSS development has become one of key topics in the information technology world. Since the development and maintenance of an OSS product is driven by various developers, it would be worthy to focus on their contributions and th...
Article
Full-text available
To support successful quality managements of open source software (OSS) projects, this paper proposes to measure the balance of developers’ contributions to a source file as an entropy. Through an analysis of data collected from 10 popular OSS projects, the following trends are reported: a source file is more fault-prone as the developers’ contribu...
Conference Paper
Full-text available
This paper proposes an application of the survival analysis to bug-fix events occurred in source files. When a source file is modified, it has a risk of creating a bug (fault). In this paper, such a risk is analyzed from a viewpoint of the survival time—the time that the source file can survive without any bug fix. Through an empirical study with 1...
Conference Paper
Recently, model checkers, such as SPIN, have played an important role in the enhancement of software reliability. To promote the use of model checkers, we propose a visual programming language for SPIN model checkers for educational use. Our prototype is based on Google Blockly.
Conference Paper
Full-text available
Manual verification of the consistency between UML state machine diagrams and sequence diagrams is labor-intensive and prone to make mistakes. We provide an automatic tool written in Java that performs the verification by translating UML diagrams into a process description of CSP\(_M\) language. The tool takes in a PlantUML file and verifies the co...
Conference Paper
Full-text available
The naming of local variables is usually at the programmer's discretion. Thus, there is a diversity in naming local variables and this may cause variations in the code quality. Many coding conventions say that the name of a local variable can/should be short. This paper focuses on such conventions, and aims to explore the trends of local variables'...
Conference Paper
Full-text available
Many empirical studies have reported notable theories or methods for evaluating or predicting code quality through analyses of code repositories. This paper has yet another point of view: it focuses on " commits " rather than source code. That is to say, this paper proposes to evaluate commits themselves. When an aim of a commit is to fix a bug, th...
Conference Paper
Full-text available
This paper focuses on comments written in source programs. While comments can work for improving the read-ability of code, i.e., the quality of programs, there have also been concerns that comments can be added for complicated source code in order to compensate for a lack of readability. That is to say, well-written comments might be associated wit...
Chapter
Context: Recent studies empirically revealed a relationship between source code comments and code quality. Some studies showed well-written source code comments could be a sign of problematic methods. Other studies also show that source code files with comments confessing a technical debt (called self-admitted technical debt, SATD) could be fixed m...
Conference Paper
Full-text available
Open source software (OSS) products have been broadly utilized for the IT business as well as the personal use in recent years. Software companies can receive much benefit from OSS products in terms of cost to develop and maintain their products. However, there are also risks that products of interest might become no longer being successfully maint...
Conference Paper
Full-text available
This paper focuses on two types of artifacts—local variables and comments in a method (function). Both of them are usually used at the programer's discretion. Thus, naming local variables and commenting code can vary among individuals, and such an individual difference may cause a dispersion in quality. This paper conducts an empirical analysis on...
Chapter
Context: Cross-project defect prediction (CPDP) research has been popular. One of the techniques for CPDP is a relevancy filter which utilizes clustering algorithms to select a useful subset of the cross-project data. Their performance heavily relies on the quality of clustering, and using an advanced clustering algorithm instead of simple ones use...
Conference Paper
An increase of half-hearing person caused by progressive aging of society in our country leads to an increase in demand for a digital hearing aid with a DSP. Because of a hard physical limit for battery capacity which stems from its wearing form, the battery life of an existing digital hearing aid comes up to only about few days. In this paper, we...
Article
We propose a method for modelling navigation structure of web application using state machine diagrams. We assume that the navigation structure is described by a page flow diagram. The navigation structure is modelled as state machine diagrams representing page navigations, authentication and user operations. A model of page navigations is obtained...
Article
Full-text available
To carry out performance evaluation of an asynchronous system, the system is modeled as Time Petri Net (TPN) and an iteration of Petri net simulations produces its performance index. The TPN model needs to satisfy required properties such as deadlock freeness. We proposed a symbolic representation of TPN for SAT-based bounded model checking. In the...
Article
We developed a tool for modeling GALS systems by STPN, generating incidence matrices of the STPN, and estimating a performance index through an iteration of petri-net simulations using the matrices. To reduce the cost involved in modelling GALS systems, our tool supports to draw the STPN hierachically using reusable STPN modules which model common...
Article
To evaluate the performance of a large-scale digital system, the system can be modeled by stochastic timed Petri nets (STPN) and a performance index can be estimated based on the number of iterations in a Petri net simulation. When the performance evaluation is carried out in a large distributed environment, parallel calculation with incidence matr...
Conference Paper
Context: Cross-project defect prediction (CPDP)research has been popular. One of the techniques for CPDP isa relevancy filter which utilizes clustering algorithms to selecta useful subset of the cross-project data. Their performanceheavily relies on the quality of clustering, and using an advancedclustering algorithm instead of simple ones used in...
Article
To evaluate performance of a large scale digital system, the system is modeled by stochastic timed petri nets (STPN) and performance index is estimated through iteration of a petri net simulation. When the performance evaluation is carried out in a large distributed environment, parallel calculation with incidence matrices of STPN can make the petr...
Conference Paper
Full-text available
In the development of a software system using UML, consistency between state machine diagrams and sequence diagrams is crucial. This study proposes a verification method for the consistency of a sequence diagram and state machine diagrams. The proposed method represents state machine diagrams and a sequence diagram as processes, and can verify the...
Conference Paper
Stepwise regression has often been used for variable selection of effort estimation models. However it has been criticized for inappropriate selection, and another method is recommended. We thus examined the effects of Lasso, which is one of such variable selection methods. An experiment with datasets from PROMISE repository revealed that Lasso-bas...
Article
We developed low power consumption methods for cardiac pacemakers by introducing two novel power-saving methods to the control mechanism with a special focus on the "energy-consuming" clock oscillator. These two methods are: 1) a multi-clock method reducing clock pulses required for sensing (self-cardiac potential detection) and pacing (cardiac sti...
Conference Paper
Full-text available
In performance evaluation, asynchronous systems are modelled with Stochastic Timed Petri Nets (STPN), and verified through petri net simulations whether the STPN model satisfies properties required. As many of the properties do not depend on stochastic behaviors of the STPN, we have developed a method verifying the STPN using a model checker UPPAAL...
Article
Full-text available
During a software development phase where a product is progressively elaborated, it is difficult to guarantee that the refined product retains its original behaviors. In this paper, we propose a method to detect refinement errors in UML sequence diagrams using LTSA (Labeled Transition System Analyzer). The method integrates multiple sequence diagra...
Conference Paper
Some study claim that Base Functional Components (BFCs) contributes to effort at different levels and thus using BFCs instead of Function Points (FP) is better for effort estimation. This study examined the claim with sound filtration and extra-sample error, which were lacked in the past study. As a result, we confirmed that BFCs-based modelings us...
Conference Paper
Full-text available
During a software development phase where a product is progressively elaborated, it is difficult to guarantee that the refined product retains its original behaviors. In this paper, we propose a method to detect refinement errors in UML sequence diagrams using LTSA (Labeled Transition System Analyzer). In this method, behaviors of sequence diagrams...
Conference Paper
Background: In effort estimation model construction, it seems effective to window training project data so that only recently finished projects are used. This is because old projects might be less representative of an organization. The past study demonstrated windowing approach works with linear regression, which is one of global models. However, t...
Article
In this paper, we proposed a method for detecting consistency violation between state machine diagrams and a sequence diagram defined in UML 2.0 using SMV. We extended a method expressing these diagrams defined in UML 1.0 with boolean formulas so that it can express a sequence diagram with combined fragments introduced in UML 2.0. This extension ma...
Article
In this paper, we proposed a method for detecting consistency violation between UML state machine diagrams and communication diagrams using Alloy. Using input language of Alloy, the proposed method expresses system behaviors described by state machine diagrams, message sequences described by communication diagrams, and a consistency property. As a...
Article
Full-text available
SUMMARY Feature interaction is the term used in tele- phony systems to refer to inconsistent conflict between multiple communication services. Feature interaction is considered a ma- jor obstacle to developing reliable telephony systems and many approaches have been explored to resolve it. In this paper we present an automatic method for detecting...
Article
Model checking is a technique that can make a verification for finite state systems absolutely automatic. We propose a method for automatic verification of fault-tolerant concurrent systems using this technique. Unlike other related work, which is tailored to specific systems, we are aimed at providing an approach that can be used to verify various...
Conference Paper
Model checking is a technique that can make a verification for finite state systems absolutely automatic. We propose a method for automatic verification of fault-tolerant systems using this technique. Unlike other related work, which is tailored to specific systems, we are aimed at providing a general approach to verification of fault tolerance. Th...

Network

Cited By