|(no subject) [message #670527 is a reply to message #670250]
||Sat, 14 May 2011 18:18
| Marcel Bruch
Registered: July 2009
On 13.05.11 10:30, Matthias Zimmermann wrote:
> interested? indeed!
> the best outcome would be to have code recommending for
> scout within the scout package.
That's exactly what we have in mind. Great!
> could you please point us to the working of the mechanisms
> used to harvest existing code bases, anonymisations
> performed, and generation of the 'learning' part of code
The simplest/most straight-forward approach is as follows:
1. You create a separate workspace containing all example projects you
wish to analyze (i.e., all applications you have that use Scout APIs).
2. Next you add the code recommenders nature to these projects. This is
simply done by selecting all projects and choosing "Add Recommenders
Nature to project" from context menu.
Thereafter, a full workspace build is performed any all analyzes are run
on your code. This may take a while depending on the size of your
workspace. After the workspace build is done, for each Java class a
corresponding JSON file is created in
<project-name>/.recommenders/data/<Java Class Name>/ folders. These
files contain the data we use to create recommendation models from.
3. Next, we need these JSON files to create models from, i.e., you need
to send these files to our server. So far we have no tool support for
this. But creating a simple export wizard that collects the codes
summaries, anonymizes the data, and sending them to the server should be
Regarding anonymized data. The bare minimum we need to generate models
for Scout contains the following information:
For each variable in code we find, we collect
(ii) the set of methods that have been invoked on it
(iii) the context, i.e., the name of the (framework) method we observed
Is this anonynous enough? We may come up with a simple export Wizard that
(i) anonymizes the data,
(ii) shows a export preview to let you see what is actually shared with
the community, and finally
(iii) creates a zip file which you can send per email
in just a week or two. Andreas Frankenberger is already working on such
an approach to support Android (see
Please let me know what you think.
Powered by FUDForum
. Page generated in 0.29802 seconds