Our research
- Code Clone
- A code clone is a code portion in source files that is identical or similar to another. Clones make it hard to modify the source files consistently. We developed clone detection algorithms, CCFinder, and Gemini.
- Software Bill of Materials (SBOM)
- Utilizing a comprehensive SBOM of the software components used in software development to achieve continuous management of security risks and copyright infringement risks is becoming increasingly important, and there is a growing demand for technologies that automatically generate SBOMs and analyze the software ecosystem using SBOMs. This research aims to promote the widespread adoption of SBOM through surveys and technical development.
- Software Component Retrieve and Reuse
- Efficient and effective reuse of existing software is a key to improving productivity in software development. We proposed a novel approach, SPARS, for ranking and retrieving software components.
- Program Dependence Analysis
- Software systems are getting larger and more complex. It is challenging to find faults in a sophisticated program without tool support. We have been studying the Program Dependence Analysis technique that applies to program debugging and maintenance.
Open access to our research outcomes
We not only publish the results of our research outcomes as papers, but also provide them to software developers as tools that they can use in practice. The following tools have been published so far.
- CCFinder and related tools — Detects code clones within source code
- ICCA
- CCFinder X
- SPARS — Software component search engine
- SPARS-J (internal access only)
- FL
- PRET
- MASU — Metrics measurement framework
- Amida — Runtime states analyzer for Java programs
- Clofile Search — Origin search tool for cloned OSS fileset
- nod4j — Shows the values of variables in the Java program execution
- CCX — SaaS code clone analyzer