During the last weeks the Software Analytics and Evolution research team at the Software Competence Center Hagenberg (which is the group i am actually working in) built a software tool for parsing large scale legacy software systems, such as C, C++ but also FORTRAN, Structured Text (IEC 61131 Machinery and Robot programs) or Matlab source code with the goal to analyse its structure by using a Neo4J graph database and Cypher queries. As you can see within this demo video, the tool is able to visualize important aspects and metrics as well as the software architecture and structure of the analyzed software system. The tool is meant for supporting companies to develop and maintain their large software systems and code bases.
Did you ever wonder how or why startups choose a very specific kind of database for implementing their solution? According to ‘the-software-behind-facebook‘ Facebook for example uses a multitude of different database technologies to fulfill their immense scalability requirements. After 30 years of relational database technology domination, at last some other very interesting database, persistance, caching and query approaches appeared on the market. Most of the time these approaches are distinguised into the categories RDBMS – also know as Polyglot Persistence and NOSQL, while NOSQL is the overall term for a really wide spectrum of approaches and technologies such as:
- Graph Databases