• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Design Pattern Extraction tool

 
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi

I want a tool that extract design patterns from the java. I have
searched alot but could not find it.Is there any such tool available?
If not kindly suggest me the most effective way to extract design
pattern as i have to analyze almost 1000 revisions of the software. I
urgently need it for my thesis.

Hoping for quick and fruitful suggestions.

Regards
Lehmia kiran
 
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I hate to break it to you, but I don't think such a tool can exist. Design patterns aren't something that you apply mechanically, but that you adapt to your context while you use them. So doing the reverse mechanically is unlikely to work well, if at all.
 
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yeah--such a tool would be pretty difficult to create.

You *might* be able to look at some of the aspect identification tools and see if they could be adapted, but even that seems a daunting task. I might have looked for such a tool a little earlier in your process since it appears to be central to your thesis--not something to put off.

Are you trying to identify the *introduction* of design patterns (you mention you're analyzing revisions of existing code), or code that uses design patterns? I'd believe that discovering the introduction of design patterns to existing code would be marginally easier, but even then.

OTOH, you may have given me an idea of an interesting problem to solve.
 
lehmia kiran
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
My task in the thesis to analyze design patterns which are implemented in the code in one revision, and then go for next revision and see is there any change in code if yes then see is there change in design pattern or not.
For example,
In revision1 there is no design pattern implemented in the code but in the revision2 to achieve the functionality Singleton design pattern is implemented, then the change reported from revision1->revsion2 will be none->singleton design pattern.

The real problem that i am facing during my thesis to analyze the code manually and to see which design pattern is implemented, which is quite a tough job .





 
David Newton
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Like I said, I think even that would be a very difficult job to automate--particularly since many design patterns have an essentially unlimited way they can be implemented. I'm not saying it's impossible, and it might be even something I start to look at, but such a tool is probably a dissertation in itself--and even then it would likely be incomplete.
 
lehmia kiran
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

There exists a tool to analyze micro patterns so i thought it might be possible that tool would exists for patterns also.

anyways if you are interested in extracting design patterns problem then micro pattern evoluation and design pattern induction might be helpful for you.

And thanks for your replies.

 
lehmia kiran
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
During my research , i came to read the paper Automatic design pattern detection which is giving me smell that a tool exists that extract design patterns. I thought to share this knowledge with all.

regards
Lehmia kiran
 
David Newton
Author
Posts: 12617
IntelliJ IDE Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
That's an interesting read; thanks.
 
He's my best friend. Not yours. Mine. You can have this tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic