Engineering Information Integration
The development of complex modern products, such as automotive and electronic devices, requires many experts from diverse disciplines, including experts in system specifications, software development, mechanical design, electronic design, prototyping, and quality assurance. Experts in different disciplines use different applications that store their data in different databases, which frequently prevents us from understanding the relationships among the data or the comprehensive definition of the entire system. This means we cannot understand the impacts of a change in one part of the design. In addition, we may lose track of the master data that was used in the architectural decisions, especially if the data is replicated and independently modified in each application.
The purpose of this research is to develop a collaboration infrastructure that enables traceability and impact analysis for various engineering artifacts by integrating engineering information stored and managed in distributed applications. For example, we are studying technologies for 1. capturing, representing, and manipulating data relationships across different applications, and 2. providing a virtually unified database of engineering information stored in distributed applications.
1. Technology for capturing, representing, and manipulating data relationships across different applications
The technology we are developing helps users capture and represent models of data relationships within large quantities of diverse data. Our key algorithm automatically identifies hidden relationships in existing data and thus makes it easier to construct correct relationship models with reduced work.
We are also developing a method for describing architectural variability as a set of graph rewriting rules. This is leading to algorithms to efficiently seek the most appropriate architectures. The method is based on the fact that a system’s architecture is composed of multiple layers of components with various constraints among the components. To develop useful tools, we are leveraging our technical expertise in programming language design, compilers, and model transformations.
2. Technology for providing a virtually-unified database of engineering information stored in distributed applications
This technology is used to construct an infrastructure for managing cross-domain knowledge. We want to provide comprehensive views of engineering information, identifying where the master data is stored within each application. The infrastructure is built using the Open Services for Lifecycle Collaboration (OSLC), which is a standardized method for software lifecycle tools to share data based on the concept of Linked Data. To achieve our objectives, we are also developing technologies for transforming diverse applications' APIs into RESTful Web services as well as transforming application-specific data into the Resource Description Framework (RDF).