This package is my report for the architectural recovery assignment on the Software Architecture course at ITU in Spring 2021. The purpose is to recover meaningful views from a software project. I went with the default example, the Zeeguu-Api for analysis.
After some initial struggles with parsing the python AST trees in R I settled on the following :
reticulate
for calling those python scripts from Rdata.tree
for parsing yaml (and directories) into data.tree objects that could then be converted into igraph objectsigraph
behind the scenes and for implementations of different graph algorithmstidygraph
for a tidy interface to manipulate the graphsggraph
for plotting graphsFurthermore, I am using 📦tidyverse
for most of the data manipulation and additional plotting. The documentation website is built using 📦pkgdown
.
You can install this package from github. R dependencies should be installed automatically for reproducing what worked out. For dependencies for things that didn’t work out and python, some debugging might be required. Please ask :)
remotes::install_github("benjaminschwetz/Rchitecture")
For the assignment, I made some summary and a dependency view. They are in vignette(zeeguu_api, package = "Rchitecture)
shochastics/edgebundle
. I think my graph was too messy. for the algorithm. see edgebundling_failed()
. Depends on datashader (python) package.generate_dependency_graph()