{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Introduction\n", "In my [previous blog post](https://www.feststelltaste.de/spotting-co-changing-files/), we've seen how we can identify files that change together in one commit.\n", "\n", "In this blog post, we take the analysis to an advanced level:\n", "\n", "* We're using a more robust model for determining the similarity of co-changing source code files\n", "* We're checking the existing modularization of a software system and compare it to the change behavior of the development teams\n", "* We're creating a visualization that lets us determine the underlying, \"hidden\" modularization of our software system based on conjoint changes\n", "* We discuss the results for a concrete software system in detail (with more systems to come in the upcoming blog posts).\n", "\n", "We're using [Python](https://www.python.org/) and [pandas](https://pandas.pydata.org/) as well as some algorithms from the machine learning library [scikit-learn](http://scikit-learn.org/) and the visualization libraries [matplotlib](https://matplotlib.org/), [seaborn](https://seaborn.pydata.org/) and [pygal](http://www.pygal.org/) for these purposes." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# The System under Investigation\n", "\n", "For this analysis, we use a closed-source project that I developed with some friends of mine. It's called \"DropOver\", a web application that can manage events with features like events' sites, scheduling, comments, todos, file uploads, mail notifications and so on. The architecture of the software system mirrored the feature-based development process: You could quickly locate where code has to be added or changed because the software system's [\"screaming architecture\"](https://8thlight.com/blog/uncle-bob/2011/09/30/Screaming-Architecture.html). This architecture style lead you to the right place because of the explicit, feature-based modularization that was used for the Java packages/namespaces:\n", "\n", "![](resources/dropover_package_structure.png)\n", "\n", "It's also important to know, that we developed the software almost strictly feature-based by feature teams (OK, one developer was one team in our case). Nevertheless, the history of this repository should perfectly fit for our analysis of checking the modularization based on co-changing source code files. \n", "\n", "The main goal of our analysis is to see if the modules of the software system were changed independently or if they were code was changed randomly across modules boundaries. If the latter would be the case, we should reorganize the software system or the development teams to let software development activities and the surrounding more naturally fit together." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Idea\n", "We can do this kind of analysis pretty easily by using the version control data of a software system like Git. A version control system tracks each change to a file. If [more files are changed within one commit](https://www.feststelltaste.de/spotting-co-changing-files/), we can assume that those files somehow have something to do with each other. This could be e. g. a direct dependency because two files depend on each other or a semantic dependency which causes an underlying concepts to change across module boundaries.\n", "\n", "In this blog post, we take the idea further: We want to find out the degree of similarity of two co-changing files, making the analysis more robust and reliable on one side, but also enabling a better analysis of bigger software systems on the other side by comparing all files of a software system with each other regarding the co-changing properties." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Data\n", "We use a [little helper library](https://github.com/feststelltaste/software-analytics/blob/master/notebooks/lib/ozapfdis/git_tc.py) for importing the data of our project. It's a simple git log with change statistics for each commit and file ([you can see here how to retrieve it](https://www.feststelltaste.de/reading-a-git-repos-commit-history-with-pandas-efficiently/) if you want to do it manually)." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
shafile
18c686954backend/pom-2016-07-16_04-40-56-752.xml
497c6ef96backend/src/test/java/at/dropover/scheduling/i...
63f7cf92cbackend/src/main/webapp/app/widgets/gallery/js...
73f7cf92cbackend/src/main/webapp/app/widgets/gallery/vi...
9ec85fe73backend/src/main/java/at/dropover/files/intera...
\n", "
" ], "text/plain": [ " sha file\n", "1 8c686954 backend/pom-2016-07-16_04-40-56-752.xml\n", "4 97c6ef96 backend/src/test/java/at/dropover/scheduling/i...\n", "6 3f7cf92c backend/src/main/webapp/app/widgets/gallery/js...\n", "7 3f7cf92c backend/src/main/webapp/app/widgets/gallery/vi...\n", "9 ec85fe73 backend/src/main/java/at/dropover/files/intera..." ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from lib.ozapfdis.git_tc import log_numstat\n", "\n", "GIT_REPO_DIR = \"../../dropover_git/\"\n", "git_log = log_numstat(GIT_REPO_DIR)[['sha', 'file']]\n", "git_log.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In our case, we only want to check the modularization of our software for Java production code. So we just leave the files that are belonging to the main source code. What to keep here exactly is very specific to your own project. With Jupyter and pandas, we can make our decisions for this transparent and thus retraceable." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
shafile
9ec85fe73backend/src/main/java/at/dropover/files/intera...
5053bfea33b8backend/src/main/java/at/dropover/scheduling/i...
5066ab9ad48ebackend/src/main/java/at/dropover/scheduling/i...
50700732e9cbbackend/src/main/java/at/dropover/files/intera...
5078ba1fd215backend/src/main/java/at/dropover/framework/co...
\n", "
" ], "text/plain": [ " sha file\n", "9 ec85fe73 backend/src/main/java/at/dropover/files/intera...\n", "5053 bfea33b8 backend/src/main/java/at/dropover/scheduling/i...\n", "5066 ab9ad48e backend/src/main/java/at/dropover/scheduling/i...\n", "5070 0732e9cb backend/src/main/java/at/dropover/files/intera...\n", "5078 ba1fd215 backend/src/main/java/at/dropover/framework/co..." ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prod_code = git_log.copy()\n", "prod_code = prod_code[prod_code.file.str.endswith(\".java\")]\n", "prod_code = prod_code[prod_code.file.str.startswith(\"backend/src/main\")]\n", "prod_code = prod_code[~prod_code.file.str.endswith(\"package-info.java\")]\n", "prod_code.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Analysis" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We want to see which files are changing (almost) together. A good start for this is to create this view onto our dataset with the `pivot_table` method of the underlying pandas' DataFrame. \n", "\n", "But before this, we need a marker column that signals that a commit occurred. We can create an additional column named `hit` for this easily." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
shafilehit
9ec85fe73backend/src/main/java/at/dropover/files/intera...1
5053bfea33b8backend/src/main/java/at/dropover/scheduling/i...1
5066ab9ad48ebackend/src/main/java/at/dropover/scheduling/i...1
50700732e9cbbackend/src/main/java/at/dropover/files/intera...1
5078ba1fd215backend/src/main/java/at/dropover/framework/co...1
\n", "
" ], "text/plain": [ " sha file hit\n", "9 ec85fe73 backend/src/main/java/at/dropover/files/intera... 1\n", "5053 bfea33b8 backend/src/main/java/at/dropover/scheduling/i... 1\n", "5066 ab9ad48e backend/src/main/java/at/dropover/scheduling/i... 1\n", "5070 0732e9cb backend/src/main/java/at/dropover/files/intera... 1\n", "5078 ba1fd215 backend/src/main/java/at/dropover/framework/co... 1" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prod_code['hit'] = 1\n", "prod_code.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, we can transform the data as we need it: For the index, we choose the filename, as columns, we choose the unique `sha` key of a commit. Together with the commit hits as values, we are now able to see which file changes occurred in which commit. Note that the pivoting also change the order of both indexes. They are now sorted alphabetically." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sha3597d8a23b70ea7e3d3be4ca3e4ae692429b3b32
file
backend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.java00000
backend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java00010
backend/src/main/java/at/dropover/comment/boundary/CommentData.java00010
backend/src/main/java/at/dropover/comment/boundary/GetCommentRequestModel.java00000
backend/src/main/java/at/dropover/comment/boundary/GetCommentResponseModel.java00000
\n", "
" ], "text/plain": [ "sha 3597d8a2 3b70ea7e \\\n", "file \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "\n", "sha 3d3be4ca 3e4ae692 \\\n", "file \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 1 \n", "backend/src/main/java/at/dropover/comment/bound... 0 1 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 0 \n", "\n", "sha 429b3b32 \n", "file \n", "backend/src/main/java/at/dropover/comment/bound... 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 \n", "backend/src/main/java/at/dropover/comment/bound... 0 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "commit_matrix = prod_code.reset_index().pivot_table(\n", " index='file',\n", " columns='sha',\n", " values='hit',\n", " fill_value=0)\n", "commit_matrix.iloc[0:5,50:55]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As already [mentioned in a previous blog post](https://www.feststelltaste.de/calculating-the-structural-similarity-of-test-cases/#Analysis), we are now able to look at our problem from a mathematician' s perspective. What we have here now with the `commit_matrix` is a collection of n-dimensional vectors. Each vector represents a filename and the components/dimensions of such a vector are the commits with either the value 0 or 1. \n", "\n", "Calculating similarities between such vectors is a well-known problem with a variety of solutions. In our case, we calculate the distance between the various vectors with the cosines distance metric. The machine learning library scikit-learn provides us with [an easy to use implementation](http://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.cosine_distances.html)." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 0. , 0.29289322, 0.5 , 0.18350342, 0.29289322],\n", " [ 0.29289322, 0. , 0.29289322, 0.1339746 , 0.5 ],\n", " [ 0.5 , 0.29289322, 0. , 0.59175171, 0.29289322],\n", " [ 0.18350342, 0.1339746 , 0.59175171, 0. , 0.42264973],\n", " [ 0.29289322, 0.5 , 0.29289322, 0.42264973, 0. ]])" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.metrics.pairwise import cosine_distances\n", "\n", "dissimilarity_matrix = cosine_distances(commit_matrix)\n", "dissimilarity_matrix[:5,:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To be able to better understand the result, we add the file names from the `commit_matrix` as index and column index to the `dissimilarity_matrix`." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
filebackend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.javabackend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java
file
backend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.java0.0000000.292893
backend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java0.2928930.000000
backend/src/main/java/at/dropover/comment/boundary/CommentData.java0.5000000.292893
backend/src/main/java/at/dropover/comment/boundary/GetCommentRequestModel.java0.1835030.133975
backend/src/main/java/at/dropover/comment/boundary/GetCommentResponseModel.java0.2928930.500000
\n", "
" ], "text/plain": [ "file backend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.java \\\n", "file \n", "backend/src/main/java/at/dropover/comment/bound... 0.000000 \n", "backend/src/main/java/at/dropover/comment/bound... 0.292893 \n", "backend/src/main/java/at/dropover/comment/bound... 0.500000 \n", "backend/src/main/java/at/dropover/comment/bound... 0.183503 \n", "backend/src/main/java/at/dropover/comment/bound... 0.292893 \n", "\n", "file backend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java \n", "file \n", "backend/src/main/java/at/dropover/comment/bound... 0.292893 \n", "backend/src/main/java/at/dropover/comment/bound... 0.000000 \n", "backend/src/main/java/at/dropover/comment/bound... 0.292893 \n", "backend/src/main/java/at/dropover/comment/bound... 0.133975 \n", "backend/src/main/java/at/dropover/comment/bound... 0.500000 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "dissimilarity_df = pd.DataFrame(\n", " dissimilarity_matrix,\n", " index=commit_matrix.index,\n", " columns=commit_matrix.index)\n", "dissimilarity_df.iloc[:5,:2]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, we see the result in a better representation: For each file pair, we get the distance of the commit vectors. This means that we have now a distance measure that says how dissimilar two files were changed in respect to each other." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Visualization" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Heatmap\n", "To get an overview of the result's data, we can plot the matrix with a little heatmap first." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import seaborn as sns\n", "\n", "sns.heatmap(\n", " dissimilarity_df,\n", " xticklabels=False,\n", " yticklabels=False\n", ");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because of the alphabetically ordered filenames and the \"feature-first\" architecture of the software under investigation, we get the first glimpse of how changes within modules are occurring together and which are not.\n", "\n", "To get an even better view, we can first extract the module's names with an easy string operation and use this for the indexes." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
modulecommentcommentcommentcreatorcreator
module
comment0.0000000.500000.7500000.500000.711325
comment0.5000000.000000.5000000.000000.422650
comment0.7500000.500000.0000000.500000.711325
creator0.5000000.000000.5000000.000000.422650
creator0.7113250.422650.7113250.422650.000000
\n", "
" ], "text/plain": [ "module comment comment comment creator creator\n", "module \n", "comment 0.000000 0.50000 0.750000 0.50000 0.711325\n", "comment 0.500000 0.00000 0.500000 0.00000 0.422650\n", "comment 0.750000 0.50000 0.000000 0.50000 0.711325\n", "creator 0.500000 0.00000 0.500000 0.00000 0.422650\n", "creator 0.711325 0.42265 0.711325 0.42265 0.000000" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "modules = dissimilarity_df.copy()\n", "modules.index = modules.index.str.split(\"/\").str[6]\n", "modules.index.name = 'module'\n", "modules.columns = modules.index\n", "modules.iloc[25:30,25:30]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then, we can create another heatmap that shows the name of the modules on both axes for further evaluation. We also just take a look at a subset of the data for representational reasons." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "plt.figure(figsize=[10,9])\n", "sns.heatmap(modules.iloc[:180,:180]);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Discussion\n", "\n", "* Starting at the upper left, we see the \"comment\" module with a pretty dark area very clearly. This means, that files around this module changed together very often.\n", "* If we go to the middle left, we see dark areas between the \"comment\" module and the \"framework\" module as well as the \"site\" module further down. This shows a change dependency between the \"comment\" module and the other two (I'll explain later, why it is that way).\n", "* If we take a look in the middle of the heatmap, we see that the very dark area represents changes of the \"mail\" module. This module was pretty much changed without touching any other modules. This shows a nice [separation of concerns](https://en.wikipedia.org/wiki/Separation_of_concerns).\n", "* For the \"scheduling\" module, we can also see that the changes occurred mostly cohesive within the module.\n", "* Another interesting aspect is the horizontal line within the \"comment\" region: These files were changed independently from all other files within the module. These files were the code for an additional data storage technology that was added in later versions of the software system. This pattern repeats for all other modules more or less strongly.\n", "\n", "With this visualization, we can get a first impression of how good our software architecture fits the real software development activities. In this case, I would say that you can see most clearly that the source code of the modules changed mostly within the module boundaries. But we have to take a look at the changes that occur in other modules as well when changing a particular module. These could be signs of unwanted dependencies and may lead us to an architectural problem." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Multi-dimensional Scaling\n", "We can create another kind of visualization to check \n", "* if the code within the modules is only changed altogether and\n", "* if not, what other modules were changed.\n", "\n", "Here, we can help ourselves with a technique called [\"multi-dimensional scaling\"](https://en.wikipedia.org/wiki/Multidimensional_scaling) or \"MDS\" for short. With MDS, we can break down an n-dimensional space to a lower-dimensional space representation. MDS tries to keep the distance proportions of the higher-dimensional space when breaking it down to a lower-dimensional space.\n", "\n", "In our case, we can let MDS figure out a 2D representation of our dissimilarity matrix (which is, overall, just a plain multi-dimensional vector space) to see which files get change together. With this, we'll able to see which files are changes together regardless of the modules they belong to.\n", "\n", "The machine learning library scikit-learn gives us easy access to [the algorithm that we need for this task](http://scikit-learn.org/stable/auto_examples/manifold/plot_mds.html) as well. We just need to say that we have a precomputed dissimilarity matrix when initializing the algorithm and then pass our `dissimilarity_df` DataFrame to the `fit_transform` method of the algorithm." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[-0.5259277 , 0.45070158],\n", " [-0.56826041, 0.21528001],\n", " [-0.52746829, 0.34756761],\n", " [-0.55856713, 0.26202797],\n", " [-0.4036568 , 0.49803657]])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.manifold import MDS\n", "\n", "# uses a fixed seed for random_state for reproducibility\n", "model = MDS(dissimilarity='precomputed', random_state=0)\n", "dissimilarity_2d = model.fit_transform(dissimilarity_df)\n", "dissimilarity_2d[:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result is a 2D matrix that we can plot with `matplotlib` to get a first glimpse of the distribution of the calculated distances." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(8,8))\n", "x = dissimilarity_2d[:,0]\n", "y = dissimilarity_2d[:,1]\n", "plt.scatter(x, y);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With the plot above, we see that the 2D transformation somehow worked. But we can't see\n", "* which filenames are which data points\n", "* how the modules are grouped all together\n", "\n", "So we need to enrich the data a little bit more and search for a better, interactive visualization technique.\n", "\n", "Let's add the filenames to the matrix as well as nice column names. We, again, add the information about the module of a source code file to the DataFrame." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
xymodule
file
backend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.java-0.5259280.450702comment
backend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java-0.5682600.215280comment
backend/src/main/java/at/dropover/comment/boundary/CommentData.java-0.5274680.347568comment
backend/src/main/java/at/dropover/comment/boundary/GetCommentRequestModel.java-0.5585670.262028comment
backend/src/main/java/at/dropover/comment/boundary/GetCommentResponseModel.java-0.4036570.498037comment
\n", "
" ], "text/plain": [ " x y \\\n", "file \n", "backend/src/main/java/at/dropover/comment/bound... -0.525928 0.450702 \n", "backend/src/main/java/at/dropover/comment/bound... -0.568260 0.215280 \n", "backend/src/main/java/at/dropover/comment/bound... -0.527468 0.347568 \n", "backend/src/main/java/at/dropover/comment/bound... -0.558567 0.262028 \n", "backend/src/main/java/at/dropover/comment/bound... -0.403657 0.498037 \n", "\n", " module \n", "file \n", "backend/src/main/java/at/dropover/comment/bound... comment \n", "backend/src/main/java/at/dropover/comment/bound... comment \n", "backend/src/main/java/at/dropover/comment/bound... comment \n", "backend/src/main/java/at/dropover/comment/bound... comment \n", "backend/src/main/java/at/dropover/comment/bound... comment " ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dissimilarity_2d_df = pd.DataFrame(\n", " dissimilarity_2d,\n", " index=commit_matrix.index,\n", " columns=[\"x\", \"y\"])\n", "dissimilarity_2d_df['module'] = dissimilarity_2d_df.index.str.split(\"/\").str[6]\n", "dissimilarity_2d_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "OK, here comes the ugly part: We have to transform all the data to the format our interactive visualization library pygal needs for its [XY chart](http://www.pygal.org/en/stable/documentation/types/xy.html). We need to \n", "* group the data my modules\n", "* add every distance information \n", " * for each file as well as\n", " * the filename itself \n", " \n", "in a specific dictionary-like data structure.\n", "\n", "But there is nothing that can hinder us in Python and pandas. So let's do this!\n", "\n", "1. We create a separate DataFrame named `plot_data` with the module names as index\n", "1. We join the coordinates `x` and `y` into a tuple data structure\n", "1. We use the filenames from `dissimilarity_2d_df`'s index as labels\n", "1. We convert both data items to a dictionary\n", "1. We append each entry for a module to only on module entry\n", "\n", "This gives us a new DataFrame with modules as index and per module a list of dictionary-like entries with \n", "* the filenames as labels and\n", "* the coordinates as values." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "module\n", "comment [{'label': 'backend/src/main/java/at/dropover/...\n", "creator [{'label': 'backend/src/main/java/at/dropover/...\n", "files [{'label': 'backend/src/main/java/at/dropover/...\n", "framework [{'label': 'backend/src/main/java/at/dropover/...\n", "mail [{'label': 'backend/src/main/java/at/dropover/...\n", "scheduling [{'label': 'backend/src/main/java/at/dropover/...\n", "site [{'label': 'backend/src/main/java/at/dropover/...\n", "todo [{'label': 'backend/src/main/java/at/dropover/...\n", "Name: data, dtype: object" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_data = pd.DataFrame(index=dissimilarity_2d_df['module'])\n", "plot_data['value'] = tuple(zip(dissimilarity_2d_df['x'], dissimilarity_2d_df['y']))\n", "plot_data['label'] = dissimilarity_2d_df.index\n", "plot_data['data'] = plot_data[['label', 'value']].to_dict('records')\n", "plot_dict = plot_data.groupby(plot_data.index).data.apply(list)\n", "plot_dict" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With this nice little data structure, we can fill pygal's XY chart and create [an interactive chart](https://feststelltaste.github.io/software-analytics/notebooks/vis/checking_modularization/dropover.html)." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAIAAAAVFBUnAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdeVxU5f4H8O85s8IM+yaLKygiuSApSu62qy1kXbPuFbNSSzOxn9dyS/F6yxa7pImalpq2edW6WfcWGZmZZrmjoiKKyC7bzMBsZ57fH2MjsQwIM5wBPu9Xf5zznec88x208ct5nvM8nMFgIAAAAABwHF7sBAAAAADaGxRYAAAAAA6GAgsAAADAwVBgAQAAADgYCiwAAAAAB0OBBQAAAOBgKLAAAAAAHAwFFgAAAICDocACAAAAcDAUWAAAAAAOhgILAAAAwMFQYAEAAAA4GAosAAAAAAdDgQUAAADgYCiwAAAAABwMBRYAAACAg6HAAgAAAHAwFFgAAAAADoYCCwAAAMDBpGInAM4ll8vFTgEA6hcXF5eSkhIXFyd2IgBQP6PR2OxrcQcLAAAAwMFQYAEAAAA4GAosAAAAAAdDgQUAAADgYCiwAAAAABwMBRYAAACAg2GZBgAAqM1cLVxJy6+8ovOL8gobFcRLOLEzAmhjUGABAMCfmPXC/5795XpGualKkHvKw4YHjnpjIMejxgK4BRgiBACAP7n2U1Hp2UpTlUBExkpjwa8lpecqxU4KoI2xdweLXchkFzMb7YKLiOR6RjouJQAAEJM2X2/UGYlu3LIy64WqIr1fHy9xswJoW+wWWBczhU+2cGoPe220GsmkKSiwAADaDZ9eajcfRXXpjU1CZCqpV3e1uCkBtDmNzMHi1B4UEGivgUOzcZKysrKUlJSlS5eKnQgAQBsQHBfQ/b7QK2kFgsEiUfK3JYZ7dlWJnRRAG9MhJrlrNJoDBw6InUVzWCyWzz777MSJE5GRkU8++aRUWvvP69ixY7t37zabzffdd9/w4cNFSRIA2hmOo6GL+/V5ooc2v9qru1od4iZ2RgBtj7MKrMOHD3/66adXrlxhjO3atcsW/+677/bs2WMwGMaOHTtp0iSO41544YXx48d/+OGHCQkJnp6eW7ZsmThx4sMPP9xQ3NpPenr6tm3biGj06NGTJ0/meZ6Ipk2bNmvWrPfee4/juLlz50ZFRRFRQkKC0WgsKChISEiwXlszHxeXkpJy+PDhRx999PPPP8/Ly3vllVdqNZgxY8bzzz8vCMLcuXN/++03UZIEgHbJq4faqwdGBgGaySkF1v79+xctWpSUlNSzZ8+a8b17965Zs2bevHkSieTNN980GAyJiYkHDx7Mzc2dOXPmsmXLAgICnnvuuWXLlj388MMNxYkoLS1t9erV8+bNk0ql69at0+l006dPJ6JDhw7l5eUtWLDg5MmTixcv3rlzJxElJyfn5+evWLEiOTnZGR/Wqfbs2bNlyxatVtu5c+f//e9/dQus2bNnb926lef5ZcuW1dvDRx99ZDt+8sknEUccccQRRxzxJsYfe+wxai6nFFhr165dvnz5qFGjasU3bdq0cuXKmJgYIvL29l64cGFiYqJGo1mxYkVUVNSsWbPWr18fHR09e/ZsImooTkSpqamrVq2Kjo4movDw8MTERGuBZTab165d26NHj7i4uA0bNlgbR0dHe3h4yGQya/u2paysbMaMGYIg3HvvveXl5XUb6HS63r17V1dXHzp0aNy4cXUb9O3bt96eEUccccQRRxzxpsdvFWcwGBp6zfLNl5avdtmf5E7FRfz4BP6+B2rGBg4ceODAAXd391ptY2JifvnlF6VSSUR6vX7IkCHHjx+PjIzMzMwkoloHDcWt/XTv3t3WbWZmZkZGRs0GtY5zcnKmTZv23XffNelH4krGjRs3ceLEqVOnHjx48PXXX//iiy+I6MMPPySixMREIoqJidm/fz9jbOTIkceOHavbg1wub9WMAaDJ4uLiUlJS4uLixE4EAOpnNBqbfa1T7mCpVCqNRlO3wPLw8KioqLAWWBUVFX5+fs3r39PTc/78+R4e9taPqInj2sTDjvV47rnnkpOTDx06dOLEiX/+85/W4Lp16+iPAmvAgAFTp07leR4z3AHApVQV6isua90DlVjiATompxRYQ4YMSUlJWb58uUQiqRmPi4vbuHHjwoULiSg1NXXMmDHN6z82NjY9PX3evHkymawp7f38/IqKivLz84ODg5v3jmIZN25cv379srOzly9fHhQUZA1u377d1mDDhg2//vqrVCodNGiQSDkCANSW+enl46nnzXpBIpd0GRM0dHE/7LQDHY1TCqz58+fPmTMnPj4+NDSUajy199JLL82cOXPkyJGCIERFRb311lvN63/hwoVJSUnx8fHBwcHWlQvsPxjo7u4+derUcePGdenShef5NvQUIRF17ty5c+fONSMRERG2Y5lMdscdd7R6UgAADdLlVx9ff0Gb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\n", "image/svg+xml": [ "Pygal-0.6-0.6-0.4-0.4-0.2-0.2000.20.20.40.40.60.60.80.8-0.8-0.8-0.6-0.6-0.4-0.4-0.2-0.2000.20.20.40.40.60.60.80.8backend/src/main/java/at/dropover/comment/boundary/AddCommentRequestModel.java-0.5259276975: 0.4507015829119.29194982344649128.90953072375777backend/src/main/java/at/dropover/comment/boundary/ChangeCommentRequestModel.java-0.568260408: 0.2152800057103.96466832041452205.12007304736608backend/src/main/java/at/dropover/comment/boundary/CommentData.java-0.527468288: 0.3475676143118.73415269494701162.29600179566137backend/src/main/java/at/dropover/comment/boundary/GetCommentRequestModel.java-0.5585671323: 0.2620279749107.47428449843548189.98684638682545backend/src/main/java/at/dropover/comment/boundary/GetCommentResponseModel.java-0.4036568016: 0.4980365699163.5622177712679113.58627499263565backend/src/main/java/at/dropover/comment/boundary/GetCommentsRequestModel.java-0.5259276975: 0.4507015829119.29194982344654128.90953072375777backend/src/main/java/at/dropover/comment/boundary/GetCommentsResponseModel.java-0.4036568016: 0.4980365699163.56221777126777113.58627499263548backend/src/main/java/at/dropover/comment/boundary/GetRangedCommentsRequestModel.java-0.568260408: 0.2152800057103.96466832041456205.12007304736608backend/src/main/java/at/dropover/comment/boundary/TimeDiffRequestModel.java-0.4147573032: 0.5811446997159.543091428674686.68255734264642backend/src/main/java/at/dropover/comment/boundary/TimeDiffResponseModel.java-0.527468288: 0.3475676143118.73415269494708162.29600179566148backend/src/main/java/at/dropover/comment/delivery/rest/CommentResource.java0.07714522861: 0.4283990998337.6448117216835136.12927816783514backend/src/main/java/at/dropover/comment/delivery/rest/CommentsResource.java0.02463492751: 0.4720324257318.632559588647122.0043221393941backend/src/main/java/at/dropover/comment/entity/Comment.java-0.527468288: 0.3475676143118.73415269494706162.29600179566148backend/src/main/java/at/dropover/comment/entity/gateway/CommentGateway.java-0.1632027752: 0.2339968372250.62270839568666199.0610707261709backend/src/main/java/at/dropover/comment/entity/gateway/aws/CommentSorter.java-0.5717542733: -0.5151148729102.69965466508009441.5630977721995backend/src/main/java/at/dropover/comment/entity/gateway/aws/DynamoDbCommentGateway.java0.6436212785: -0.04010977441542.7471490255338287.7947109082569backend/src/main/java/at/dropover/comment/entity/gateway/exception/NotSoManyCommentsAvailable.java-0.4329342137: -0.7038373507152.96183025179639502.6562335443685backend/src/main/java/at/dropover/comment/entity/gateway/inmemory/InMemoryCommentStorage.java-0.08142417311: 0.4072767141280.23204922185164142.96700513829757backend/src/main/java/at/dropover/comment/entity/pojo/PojoComment.java-0.1632027752: 0.2339968372250.62270839568666199.06107072617084backend/src/main/java/at/dropover/comment/interactor/AddComment.java0.1053186267: 0.4731287826347.8454721159285121.64941008857545backend/src/main/java/at/dropover/comment/interactor/ChangeComment.java-0.04509227716: 0.2192197351293.38663321246617203.84470603669888backend/src/main/java/at/dropover/comment/interactor/CommentResponseBuilder.java-0.332372681: 0.1916741092189.3718521835673212.7617607525812backend/src/main/java/at/dropover/comment/interactor/CreateTimeDiff.java-0.09694486371: 0.2043352372274.6125178772353208.66310743410065backend/src/main/java/at/dropover/comment/interactor/GetComments.java-0.07479877009: 0.3609258285282.63088964069925157.97168812610835backend/src/main/java/at/dropover/comment/interactor/GetRangedComments.java-0.2229104302: 0.3197433741229.00453125436545171.30324940319997backend/src/main/java/at/dropover/comment/interactor/exception/CommentNotFoundException.java-0.4958959225: 0.2748586598130.1654673066939185.8333042087147backend/src/main/java/at/dropover/comment/interactor/exception/PostNotInPastException.java-0.4036568016: 0.4980365699163.56221777126774113.58627499263565backend/src/main/java/at/dropover/comment/interactor/validation/CommentRequestValidator.java-0.1344921807: 0.3951372925261.01786993843797146.89677197133813backend/src/main/java/at/dropover/creator/boundary/CreatorData.java-0.4036568016: 0.4980365699163.5622177712678113.58627499263565backend/src/main/java/at/dropover/creator/entity/Creator.java-0.2668803585: 0.5888462348213.0844671026793584.18942068192337backend/src/main/java/at/dropover/creator/entity/exception/CreatorNotPersistentException.java0.7947647026: -0.2523519347597.4712093783364356.50162524600694backend/src/main/java/at/dropover/creator/entity/gateway/CreatorGateway.java0.5781792643: -0.2109045549519.0527490807939343.0843024444714backend/src/main/java/at/dropover/creator/entity/gateway/CreatorKey.java0.6412651718: -0.421651007541.8940802956572411.3070269707997backend/src/main/java/at/dropover/creator/entity/gateway/aws/DynamoDbCreatorGateway.java0.6562323307: 0.05936022908547.3131960375111255.5943365873324backend/src/main/java/at/dropover/creator/entity/gateway/inmemory/InMemoryCreatorGateway.java0.6015469476: -0.2056244786527.5134182885315341.3750391017202backend/src/main/java/at/dropover/creator/entity/pojo/PojoCreator.java-0.1853411728: -0.1349752306242.60712311074542318.50450373219496backend/src/main/java/at/dropover/creator/interactor/FormatCreatorNicely.java-0.4881675326: -0.2729155897132.9636629731086363.15848022903083backend/src/main/java/at/dropover/files/boundary/DownloadFileRequestModel.java0.5439953902: 0.6199465293506.6758931225851474.12165059868761backend/src/main/java/at/dropover/files/boundary/DownloadFileResponseModel.java0.5641276865: 0.5941709592513.965135148520782.46570386515037backend/src/main/java/at/dropover/files/boundary/ListFilesResponseModel.java0.5439954082: 0.6199465146506.675899654272974.12165537798307backend/src/main/java/at/dropover/files/boundary/ReportAbuseRequestModel.java-0.3813815826: -0.6658214166171.62734159514784490.34973644349765backend/src/main/java/at/dropover/files/boundary/ReportAbuseResponeModel.java-0.3368303535: -0.7112717568187.75787565470964505.06289533706223backend/src/main/java/at/dropover/files/boundary/UploadFileRequestModel.java0.5903429576: 0.5562578532523.456822182335394.73891347799037backend/src/main/java/at/dropover/files/boundary/UploadFileResponseModel.java0.5810931179: 0.5716894634520.107759605022789.74340120629103backend/src/main/java/at/dropover/files/delivery/rest/FilesResource.java0.6005631845: 0.3512711513527.1572300451608161.0970948493486backend/src/main/java/at/dropover/files/entity/UploaderInformation.java0.4034112216: 0.2423874077455.77499170749206196.34487991264297backend/src/main/java/at/dropover/files/entity/gateway/StreamingFileGateway.java0.4627344209: 0.33895385477.2539701079554165.08444481083814backend/src/main/java/at/dropover/files/entity/gateway/inmemory/FileWithMetadata.java-0.548445451: -0.5569884948111.13901222323881455.11840339934065backend/src/main/java/at/dropover/files/entity/gateway/inmemory/InMemoryFileGateway.java0.531420227: 0.3382007993502.12284033497036165.3282219664747backend/src/main/java/at/dropover/files/entity/gateway/s3/S3FileGateway.java0.5091523571: 0.387498729494.06037738655715149.36952352296117backend/src/main/java/at/dropover/files/entity/pojo/PojoUploaderInfo.java0.4515143976: 0.2532002155473.191568880004192.84456376824096backend/src/main/java/at/dropover/files/exception/FileNotPersistentException.java0.2344643639: 0.1277598115394.60489390520985233.45206171470699backend/src/main/java/at/dropover/files/exception/FileTransferException.java0.2344643639: 0.1277598115394.60489390520985233.45206171470693backend/src/main/java/at/dropover/files/exception/InvalidFileException.java0.2344643639: 0.1277598115394.60489390520985233.45206171470699backend/src/main/java/at/dropover/files/interactor/DownloadFile.java0.4447170769: 0.3991240109470.73048273732223145.60619369606752backend/src/main/java/at/dropover/files/interactor/ListFiles.java0.4846594903: 0.4186450625485.1923162882577139.28684971276311backend/src/main/java/at/dropover/files/interactor/ReportAbuse.java0.5118081328: 0.07212368597495.02194637762506251.4625574064312backend/src/main/java/at/dropover/files/interactor/UploadFile.java0.4784537019: 0.4513004966482.94540451051057128.71565072814263backend/src/main/java/at/dropover/files/validation/FileTransferValidator.java0.3323938889: 0.1938713439430.06195241941407212.05047314452412backend/src/main/java/at/dropover/framework/autoupdate/Autoupdate.java0.2385861316: -0.03195842345396.0972503509475285.1559601006867backend/src/main/java/at/dropover/framework/autoupdate/DynamoDBCurrentVersionDeterminor.java0.2385861316: -0.03195842345396.0972503509474285.1559601006868backend/src/main/java/at/dropover/framework/autoupdate/IllegalUpdateScriptsException.java0.3109741223: 0.03772588981422.3065597892238262.59779288758716backend/src/main/java/at/dropover/framework/autoupdate/UpdateScript.java-0.4910547485: -0.6198796309131.91829712820018475.4774870774338backend/src/main/java/at/dropover/framework/autoupdate/scripts/UpdateToV1.java0.2385861316: -0.03195842345396.0972503509474285.1559601006868backend/src/main/java/at/dropover/framework/boundary/DropoverModel.java-0.2635039827: 0.2022542625214.30694166726155209.33675940166432backend/src/main/java/at/dropover/framework/boundary/RequestModel.java-0.2635039827: 0.2022542625214.30694166726155209.33675940166432backend/src/main/java/at/dropover/framework/boundary/ResponseModel.java-0.4418365104: 0.343564942149.73860157116545163.59174466009415backend/src/main/java/at/dropover/framework/boundary/SiteDependentRequestModel.java-0.7495340101: 0.0380755172238.331461978476064262.484611694592backend/src/main/java/at/dropover/framework/boundary/SynchronousDeliveryInteractorBoundary.java-0.1632027752: 0.2339968372250.62270839568666199.0610707261709backend/src/main/java/at/dropover/framework/configuration/ConfigurationFile.java0.6599427555: -0.1153122187548.6566187708204312.1392044246152backend/src/main/java/at/dropover/framework/configuration/GatewayFactory.java0.7254736606: 0.4058800446572.3832031371055143.4191342160338backend/src/main/java/at/dropover/framework/configuration/InterceptorFactory.java0.5144144067: -0.2457234823495.9655924070469354.35586631471585backend/src/main/java/at/dropover/framework/configuration/MisconfigurationException.java0.2333809691: -0.7659113901394.2126322975838522.7508071236258backend/src/main/java/at/dropover/framework/delivery/LocaleDeterminator.java0.2650999034: -0.1508402904405.697014671636323.64033209502657backend/src/main/java/at/dropover/framework/delivery/rest/jerseyconfiguration/GenericDropoverMessageBody.java-0.07187990908: 0.309791331283.6877131643532174.5249192645594backend/src/main/java/at/dropover/framework/delivery/rest/jerseyconfiguration/InteractorException2Status.java-0.2371640763: 0.1517957953223.84375503375503225.67114639296852backend/src/main/java/at/dropover/framework/delivery/rest/jerseyconfiguration/JsonMessageBody.java-0.07187990908: 0.309791331283.6877131643532174.5249192645594backend/src/main/java/at/dropover/framework/delivery/rest/jerseyconfiguration/XMLMessageBody.java-0.01971991502: 0.3354501744302.57313064441144166.21865271549729backend/src/main/java/at/dropover/framework/dependencyinjection/GuiceConfig.java-0.1590442549: -0.2583749485252.1283717542532358.4513919125724backend/src/main/java/at/dropover/framework/entity/aws/AWS.java-0.3431133837: -0.3336897415185.48299718194355382.83225492131214backend/src/main/java/at/dropover/framework/entity/aws/BetweenWrapper.java-0.6332873272: -0.118970234280.42056065566511313.32337518194385backend/src/main/java/at/dropover/framework/entity/aws/ConditionWrapper.java-0.08339774936: 0.7402681668279.5174822018960335.1711969010085backend/src/main/java/at/dropover/framework/entity/aws/KeyValue.java-0.002788331017: -0.09708118612308.70350006283064306.237464686119backend/src/main/java/at/dropover/framework/entity/gateway/CreatedAtComparator.java-0.3435330901: 0.5946955524185.3310352847380882.2958828267731backend/src/main/java/at/dropover/framework/entity/gateway/exception/InvalidGatewayConfigurationException.java-0.4910547196: -0.6198796493131.91830759663642475.4774930404956backend/src/main/java/at/dropover/framework/entity/gateway/exception/InvalidPersistentDataException.java-0.4036568016: 0.4980365699163.56221777126765113.58627499263565backend/src/main/java/at/dropover/framework/entity/gateway/exception/PersistenceMechanismNotAvailableException.java-0.362259761: 0.5786715019178.5507239866469787.4831795715819backend/src/main/java/at/dropover/framework/exception/InvalidRequestException.java0.2344643639: 0.1277598115394.60489390520985233.45206171470699backend/src/main/java/at/dropover/framework/exception/NotPersistentException.java0.2344643639: 0.1277598115394.60489390520985233.45206171470699backend/src/main/java/at/dropover/framework/internationalization/Translation.java-0.1747442834: 0.2826239617246.4439080629938183.31952498016176backend/src/main/java/at/dropover/framework/util/DoubleMap.java0.2344643639: 0.1277598115394.60489390520985233.45206171470699backend/src/main/java/at/dropover/mail/boundary/SendMailToCreatorRequestModel.java0.593989117: -0.4884725128524.7769765253942432.93844771786513backend/src/main/java/at/dropover/mail/boundary/SendMailToCreatorResponseModel.java0.6863959445: -0.3952630544558.2344480350827402.7647336075289backend/src/main/java/at/dropover/mail/entity/channel/MailChannel.java0.6565215241: -0.4393028246547.4179034614066417.02126356950333backend/src/main/java/at/dropover/mail/entity/channel/common/MailChannelValidator.java0.7251811111: -0.3287793653572.2772806096563381.242670659041backend/src/main/java/at/dropover/mail/entity/channel/email/EmailChannel.java0.5626897487: -0.170398357513.4445051802176329.97165856296056backend/src/main/java/at/dropover/mail/entity/channel/inmemory/InMemoryMailChannel.java0.7050840992: -0.3533974168565.0008139024494389.21201261249394backend/src/main/java/at/dropover/mail/interactor/SendMailToCreator.java0.5993611111: -0.1295634625526.7219988112619316.75260918539306backend/src/main/java/at/dropover/mail/interactor/validation/SendMailValidation.java0.5284406614: -0.1391473882501.04403767819787319.8551122654369backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingDateRequestModel.java0.3727994082: -0.6592698728444.6914614084704488.2288743141537backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingDateResponseModel.java0.2089254535: -0.7137311722385.3580948182256505.85905594364544backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingRequestModel.java-0.05852578908: -0.7700173349288.52280058803984524.0799812790133backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingResponseModel.java-0.3600924638: -0.5755447075179.33543099789054461.1254102842855backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingUserRequestModel.java0.2916149654: -0.6838599016415.29724611861883496.18914478862183backend/src/main/java/at/dropover/scheduling/boundary/AddSchedulingUserResponseModel.java0.2916149654: -0.6838599016415.29724611861246496.18914478862354backend/src/main/java/at/dropover/scheduling/boundary/DeleteSchedulingUserRequestModel.java0.47354552: 0.1503717717481.1683133346624226.132130529003backend/src/main/java/at/dropover/scheduling/boundary/DeleteSchedulingUserResponseModel.java0.8240568252: 0.1806275013608.0769230769231216.33776252042497backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingDateRequestModel.java0.3393352788: -0.6670569848432.5752013182706490.7497138807207backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingDateResponseModel.java0.3393352788: -0.6670569848432.57520131826243490.74971388072544backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingRequestModel.java0.4506787743: -0.6799884613472.8890171622728494.9358842730484backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingResponseModel.java-0.1591623919: -0.6550902068252.08559825698265486.87583515308233backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingsRequestModel.java0.2068545032: 0.7820705997384.608271868720721.638936528858494backend/src/main/java/at/dropover/scheduling/boundary/GetSchedulingsResponseModel.java0.04446670711: -0.7855633485325.8129943993315529.1125281793281backend/src/main/java/at/dropover/scheduling/boundary/SetFinalDateRequestModel.java-0.1426526679: -0.7871167196258.0632260159343529.6153846153846backend/src/main/java/at/dropover/scheduling/boundary/VoteForSchedulingDateRequestModel.java0.3273798071: -0.3410457836428.2465183968173385.2135487818324backend/src/main/java/at/dropover/scheduling/boundary/VoteForSchedulingDateResponseModel.java0.4104325488: 0.653339155458.3171832707546463.31180835774853backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingDateResource.java0.2795048049: -0.4498208437410.9125554711031420.4261508684548backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingDatesResource.java0.3947244326: -0.3368111257452.62979127743836383.84270768448977backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingResource.java0.120953795: -0.4618023879353.50645207092487424.30480971293775backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingUserResource.java0.4818972275: 0.1198272954484.19219179454467236.01997144860314backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingUsersResource.java0.4000971298: -0.2610838424454.5750681211314359.328313558162backend/src/main/java/at/dropover/scheduling/delivery/rest/SchedulingsResource.java0.06909242246: -0.4304071294334.7291555975381414.141554046598backend/src/main/java/at/dropover/scheduling/entity/Scheduling.java-0.0150781634: -0.7524776211304.2537561632621518.4020348810318backend/src/main/java/at/dropover/scheduling/entity/SchedulingDate.java0.2375415206: -0.4796558112395.71903107308754430.08430997060833backend/src/main/java/at/dropover/scheduling/entity/SchedulingKey.java0.3585504386: -0.09329811484439.5323783757656305.0128109528848backend/src/main/java/at/dropover/scheduling/entity/SchedulingUser.java0.2916149654: -0.6838599016415.2972461186127496.1891447886234backend/src/main/java/at/dropover/scheduling/entity/exception/SchedulingNotPersistentException.java-0.2052213166: -0.6189289312235.40917722713945475.1697270797341backend/src/main/java/at/dropover/scheduling/entity/gateway/DateKey.java0.1483539942: 0.8168362627363.427162573299310.384615384615358backend/src/main/java/at/dropover/scheduling/entity/gateway/LoadSchedulingDate.java-0.1426526688: -0.7871167194258.0632257180669529.6153845536498backend/src/main/java/at/dropover/scheduling/entity/gateway/SchedulingGateway.java0.01759736283: -0.5962856484316.084488997614467.83965614814883backend/src/main/java/at/dropover/scheduling/entity/gateway/aws/DynamoDbSchedulingGateway.java0.471093016: -0.4012998088480.28034236391926404.71894837964487backend/src/main/java/at/dropover/scheduling/entity/gateway/inmemory/InMemorySchedulingGateway.java0.06809405953: -0.5984549878334.3676812341413468.5419134917934backend/src/main/java/at/dropover/scheduling/entity/pojo/PojoScheduling.java0.04066716473: -0.578358549324.43730513204963462.0363054706993backend/src/main/java/at/dropover/scheduling/entity/pojo/PojoSchedulingDate.java0.3038561473: -0.4193030291419.72937526075606410.54694085185605backend/src/main/java/at/dropover/scheduling/entity/pojo/PojoSchedulingUser.java0.2916149654: -0.6838599016415.2972461186127496.1891447886234backend/src/main/java/at/dropover/scheduling/exception/DuplicateKeyException.java0.2874916188: 0.6345770534413.8043179890698369.38546545457746backend/src/main/java/at/dropover/scheduling/exception/DuplicateSchedulingPositionException.java-0.2688984157: -0.4790094994212.35379499232462429.8750862813332backend/src/main/java/at/dropover/scheduling/interactor/AddScheduling.java-0.110234006: -0.4776326188269.80095674954055429.4293632518559backend/src/main/java/at/dropover/scheduling/interactor/AddSchedulingDate.java0.3619119777: -0.421139415440.74948109000565411.1414146898305backend/src/main/java/at/dropover/scheduling/interactor/AddSchedulingUser.java0.2396682939: -0.3949439392396.4890656996743402.66142981286816backend/src/main/java/at/dropover/scheduling/interactor/DeleteSchedulingUser.java0.47354552: 0.1503717717481.16831333465717226.13213052900056backend/src/main/java/at/dropover/scheduling/interactor/GetScheduling.java-0.006551278758: -0.5218582613307.34106050891165443.7460637158698backend/src/main/java/at/dropover/scheduling/interactor/GetSchedulingDate.java0.2670070997: -0.3592987886406.3875476932139391.1224014202186backend/src/main/java/at/dropover/scheduling/interactor/GetSchedulings.java-0.01095380645: -0.3124404134305.7470500995596375.9534342088473backend/src/main/java/at/dropover/scheduling/interactor/SetFinalDate.java-0.1426526688: -0.7871167194258.06322571633774529.6153845532916backend/src/main/java/at/dropover/scheduling/interactor/VoteForSchedulingDate.java0.365932131: -0.3384440307442.20504630265236384.371310789165backend/src/main/java/at/dropover/scheduling/interactor/VoteOption.java0.288635806: 0.7688700308414.2185905047950325.912217347571755backend/src/main/java/at/dropover/scheduling/interactor/validation/SchedulingRequestValidator.java-0.02978290453: -0.4424797629298.92965327461553418.04970027338817backend/src/main/java/at/dropover/site/boundary/CreateSiteRequestModel.java-0.4036568016: 0.4980365699163.56221777126765113.58627499263565backend/src/main/java/at/dropover/site/boundary/CreateSiteResponseModel.java-0.5800514034: 0.349462509399.6955368799282161.68258744122107backend/src/main/java/at/dropover/site/boundary/GetSiteRequestModel.java-0.07187990908: 0.309791331283.6877131643532174.5249192645594backend/src/main/java/at/dropover/site/boundary/GetSiteResponseModel.java-0.5877055339: 0.335964025696.92422809389485166.05230908102618backend/src/main/java/at/dropover/site/boundary/LocationData.java-0.6216550383: -0.484652595584.63222968206279431.70186621648276backend/src/main/java/at/dropover/site/boundary/SiteData.java-0.24639726: 0.6693162316220.500723047872558.13971797162441backend/src/main/java/at/dropover/site/delivery/rest/SiteResource.java-0.1559937763: 0.126825361253.23284969177485233.75456152686286backend/src/main/java/at/dropover/site/delivery/rest/SitesResource.java-0.01778229888: 0.6120688082303.27467768860776.67182211635065backend/src/main/java/at/dropover/site/entity/Location.java0.3107899911: 0.4525357847422.23989193461597128.31576392236667backend/src/main/java/at/dropover/site/entity/Site.java-0.5298142095: 0.2282583203117.88477171362366200.91874022623125backend/src/main/java/at/dropover/site/entity/exception/SiteNotPersistentException.java-0.1185827787: 0.1915897556266.7781408656778212.78906763684614backend/src/main/java/at/dropover/site/entity/gateway/SiteGateway.java-0.03744291752: 0.5121186931296.156214628016109.02761789840241backend/src/main/java/at/dropover/site/entity/gateway/aws/DynamoDbSiteGateway.java0.6330489094: 0.1215266328538.9192420436372235.46986288650777backend/src/main/java/at/dropover/site/entity/gateway/inmemory/InMemorySiteGateway.java0.1066849362: 0.5253535047348.3401678124528104.74325204783327backend/src/main/java/at/dropover/site/entity/pojo/PojoLocation.java0.3014891593: 0.398857105418.87236678268863145.69259634054674backend/src/main/java/at/dropover/site/entity/pojo/PojoSite.java-0.04268298613: 0.4137074792294.2589582152315140.8852414411008backend/src/main/java/at/dropover/site/interactor/CreateSite.java-0.02652114955: 0.07102289099300.1106274210118251.81890614671215backend/src/main/java/at/dropover/site/interactor/GetSite.java-0.05015846834: 0.1513691199291.55233209181364225.80926950105078backend/src/main/java/at/dropover/site/interactor/GetSiteData.java-0.07301341794: 0.5121894278283.27730690474084109.00471971758219backend/src/main/java/at/dropover/site/interactor/namegeneration/AlphabeticBase26Encoder.java-0.362259761: 0.5786715019178.550723986646987.48317957158162backend/src/main/java/at/dropover/site/interactor/namegeneration/BaseEncoder.java-0.241805142: 0.3015375308222.16337786019275177.19683488331071backend/src/main/java/at/dropover/site/interactor/namegeneration/RandomSiteNameGenerator.java-0.2861617736: 0.1995331371206.1033011666909210.21764061435107backend/src/main/java/at/dropover/site/validation/SiteDependentRequestValidator.java0.273470409: 0.1931659341408.7276992861618212.2788280236088backend/src/main/java/at/dropover/todo/boundary/AddTodoListRequest.java-0.7416473358: -0.177515555141.18696721509006332.2756339827159backend/src/main/java/at/dropover/todo/boundary/AddTodoListResponse.java-0.5991538244: -0.344824244492.7791788170643386.4367100192216backend/src/main/java/at/dropover/todo/boundary/AddTodoRequestModel.java-0.6628256406: -0.0748322232969.72570937054013299.0350427877008backend/src/main/java/at/dropover/todo/boundary/ChangeTodoRequestModel.java-0.7914209186: -0.0689259070823.1655907126178297.1230533841831backend/src/main/java/at/dropover/todo/boundary/DeleteTodoListRequestModel.java0.3662752985: 0.04045557318442.32929597028266261.7141413030445backend/src/main/java/at/dropover/todo/boundary/DeleteTodoListResponseModel.java-0.2490537808: -0.7171878264219.5388842871001506.9780421023039backend/src/main/java/at/dropover/todo/boundary/DeleteTodoResponseModel.java0.8185674635: 0.01012427989606.0894058385151271.5329707327272backend/src/main/java/at/dropover/todo/boundary/GetAllTodoListsRequest.java-0.7040671881: -0.191633199854.79350207831961336.8457900691533backend/src/main/java/at/dropover/todo/boundary/GetAllTodoListsResponse.java-0.7004100737: -0.376756363656.11762288955311396.7737579159525backend/src/main/java/at/dropover/todo/boundary/GetAllTodosRequest.java-0.6268712629: -0.290243182782.74360642014211368.76775901001776backend/src/main/java/at/dropover/todo/boundary/GetAllTodosResponse.java-0.7499658783: -0.144877090238.175096708465155321.7099282356321backend/src/main/java/at/dropover/todo/boundary/GetTodoListRequestModel.java0.4191003954: 0.09226016612461.455525271852244.94398722743574backend/src/main/java/at/dropover/todo/boundary/GetTodoListResponseModel.java-0.2098851319: 0.7676440037233.720563171794526.309106159556336backend/src/main/java/at/dropover/todo/boundary/GetTodoRequestModel.java-0.7066857045: -0.0587265887553.845423456784125293.8213357156709backend/src/main/java/at/dropover/todo/boundary/GetTodosRequestModel.java-0.8224718315: 0.0423520562111.923076923076938261.1002128666834backend/src/main/java/at/dropover/todo/boundary/GetTodosResponseModel.java-0.4798393264: 0.4851272922135.97903241854178117.76525922148545backend/src/main/java/at/dropover/todo/boundary/TodoData.java-0.4986648431: 0.5476236218129.162932268802297.53398209501478backend/src/main/java/at/dropover/todo/boundary/TodoRequestModel.java-0.665375992: 0.202923004868.80231103534935209.120274524847backend/src/main/java/at/dropover/todo/delivery/rest/TodoResource.java-0.1149753248: -0.07402581102268.0842812121719298.7739914562766backend/src/main/java/at/dropover/todo/delivery/rest/TodolistResource.java0.1631687514: -0.1422118486368.79109865651617320.8471376950425backend/src/main/java/at/dropover/todo/delivery/rest/TodolistsResource.java0.2584825751: 0.4771337254403.30109782915446120.35293223825295backend/src/main/java/at/dropover/todo/delivery/rest/TodosResource.java-0.2035569329: 0.02568985686236.01179579484813266.4940907938711backend/src/main/java/at/dropover/todo/entity/Todo.java-0.6900909977: -0.225365695559.85382074528154347.76565487491007backend/src/main/java/at/dropover/todo/entity/TodoList.java-0.5962720014: -0.263837555193.82259211484885360.2197439052013backend/src/main/java/at/dropover/todo/entity/gateway/TodoGateway.java-0.4073374909: -0.1534806358162.22956129811112324.4950632246258backend/src/main/java/at/dropover/todo/entity/gateway/TodoKey.java-0.3937341006: -0.4580783776167.15490129034922423.0992751446458backend/src/main/java/at/dropover/todo/entity/gateway/aws/DynamoDbTodoGateway.java0.6624867594: 0.08872873232549.5777188732917246.08718101603012backend/src/main/java/at/dropover/todo/entity/gateway/inmemory/InMemoryTodoGateway.java-0.4000709573: -4.599060483e-05164.86053401422907274.8252850511364backend/src/main/java/at/dropover/todo/entity/gateway/validation/TodoValidation.java0.1005065415: -0.1940325505346.10317440552393337.62250656548235backend/src/main/java/at/dropover/todo/entity/pojo/PojoTodo.java-0.3711914251: -0.1820169703175.31686231287046333.73282960024875backend/src/main/java/at/dropover/todo/entity/pojo/PojoTodoList.java-0.2788799324: -0.2016895724208.73981624513354340.1012334483429backend/src/main/java/at/dropover/todo/interactor/AddTodo.java-0.28592904: 0.014739849206.18756631618498270.0388212615082backend/src/main/java/at/dropover/todo/interactor/AddTodoList.java-0.07314341343: -0.215906646283.2302398151108344.70357661026065backend/src/main/java/at/dropover/todo/interactor/ChangeTodo.java-0.4378135592: -0.008696025615151.19517980017946277.62546958376333backend/src/main/java/at/dropover/todo/interactor/DeleteTodo.java0.4261223288: 0.01342557889463.9979363102072270.4642760500356backend/src/main/java/at/dropover/todo/interactor/DeleteTodoList.java0.4261223288: 0.01342557889463.9979363101771270.46427605007926backend/src/main/java/at/dropover/todo/interactor/GetAllTodoLists.java-0.3216624119: -0.1872847102193.2496881902145335.4380994287467backend/src/main/java/at/dropover/todo/interactor/GetAllTodos.java-0.380042769: 0.05471981834172.1120819428489257.09652777590605backend/src/main/java/at/dropover/todo/interactor/GetTodo.java-0.3213730109: 0.02148403534193.35447079517007267.85559700092904backend/src/main/java/at/dropover/todo/interactor/GetTodoList.java-0.2092322919: -0.1915048157233.95693506023437336.8042296634011backend/src/main/java/at/dropover/todo/interactor/exception/TodoListNotPersistedException.java0.7037818772: 0.2095801808564.5293221591282206.9652172043571backend/src/main/java/at/dropover/todo/interactor/exception/TodoNotFoundException.java-0.5717885824: 0.1360670276102.68723248523895230.762854335878backend/src/main/java/at/dropover/todo/interactor/validation/TodoRequestValidator.java-0.3347483404: 0.05593311869188.51170408415678256.70375886048043commentcreatorfilesframeworkmailschedulingsitetodo" ], "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pygal\n", "\n", "xy_chart = pygal.XY(stroke=False)\n", "[xy_chart.add(entry[0], entry[1]) for entry in plot_dict.iteritems()] \n", "# uncomment to create the interactive chart\n", "# xy_chart.render_in_browser()\n", "xy_chart" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This view is a pretty cool way for checking the real change behavior of your software including an architectural perspective. \n", "\n", "### Example\n", "Below, you see the complete data for a data point if you hover over that point:\n", "\n", "![](resources/cm_example.png)\n", "\n", "You can see the following here:\n", "* In the upper left, you find the name of the module in the gray color\n", "* You find the complete name of the source code file in the middle\n", "* You can see the coordinates that MDS assigned to this data point in the color of the selected module\n", "\n", "Let's dive even deeper into the chart to get some insights that we can gain from our result.\n", "\n", "### Discussion\n", "\n", "#### Module \"mail\"\n", "\n", "![](resources/cm_mail.png)\n", "\n", "As already seen in the heatmap, we can see that all files of the \"mail\" module are very close together. This means that the files changed together very often. \n", "\n", "*In the XY chart, we can see this clearly when we hover over the \"mail\" entry in the legend on the upper left. The corresponding data points will be magnified a little bit.*\n", "\n", "#### Module \"scheduling\"\n", "\n", "![](resources/cm_scheduling.png)\n", "\n", "Another interesting result can be found if we take a look at the distribution of the files of the module \"scheduling\". Especially the data points in the lower region of the chart indicate clearly that these files were changed almost exclusive together.\n", "\n", "*In the XY chart, we can take a look at the relevant data points by selecting just the \"scheduling\" data points by deselecting all the other entries in the legend.*\n", "\n", "#### Modules \"comment\", \"framework\" and \"site\"\n", "\n", "![](resources/cm_comment.png)\n", "\n", "The last thing I want to show you in our example is the common change pattern for the files of the modules \"comment\", \"framework\" and \"site\". The files of these modules changed together very often, leading to a very mixed colored region in the upper middle. In case of our system under investigation, this is perfectly explainable: These three modules were developed at the beginning of the project. Due to many redesigns and refactorings, those files had to be changed all together. For these modules, it would make sense to only look at the recent development activities to find out if the code within these modules is still co-changing.\n", "\n", "*In the XY chart, just select the modules \"comment\", \"framework\" and \"site\" to see the details.*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Summary\n", "We've seen how you can check the modularization of your software system by also taking a look at the development activities that is stored in the version control system. This gives you plenty of hints if you've chosen a software architecture that also fits the commit behavior of your development teams.\n", "\n", "But there is more that we could add here: You cannot only check for modularization. You could also e. g. take a look at the commits of your teams, spotting parts that are getting changed from too many teams. You could also see if your actions taken had any effect by checking only the recent history of the commits. You can also redefine what co-changing means e. g. you define it as files that were changed on the same day, which would kind of balance out different commit styles of different developers.\n", "\n", "But for now, we are leaving it here. You can experiment with further options on your own. You can find [the complete Jupyter notebook on GitHub](https://github.com/feststelltaste/software-analytics/blob/master/notebooks/Checking%20the%20modularization%20of%20software%20systems%20by%20analyzing%20co-changing%20source%20code%20files.ipynb)." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.4" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }