Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Buckminster » Question about global specification configuration feature
Question about global specification configuration feature [message #376004] Fri, 23 May 2008 11:33 Go to next message
Gabor Guta is currently offline Gabor GutaFriend
Messages: 1
Registered: July 2009
Junior Member
Hi!

I'm curious what do you think about the following feature request (if
you think it is useful, I will submit it to the Bugzilla of the project).

Regards,
Gabor Guta
------------------------------------------------------------ ----------------
Feature request: global component specification extension support for
static analysis

In the end of a "state of art" build process, static analysis tools (like
PMD or FindBugs) and dependency analyzers (JDepend and Dependency Finder)
are applied. Currently the only way to that is to create separate CSPEX
and ant files manually for each component. Creating manually the component
specification extension requires much effort and is error-prone.

The following functionality is required to achieve this result in a
reasonable way: A global component specification (GCSPEC) is created for a
defined set of components. Then Buckminster creates instances (on the fly)
of the GCSPEC for each component (e.g.: by inserting the appropriate path
expressions); runs the prescribed actions and finally collects and merges
the produced output files to a single central file.

Base line requirements:
- Support the following tools:
-- Dependency Finder or JDepend
-- PMD, FindBugs, and CheckStyle
- support headless build
- examples that show how further tools can be integrated

Open questions:
- Are these tools integrated easier through their eclipse plug-in or
through their antTask interfaces?
- If the integration done with antTask, how the results will be displayed
in the GUI
- If the integration done with eclipse plug-in interface, how the tool
will be triggered and how the result filtered

Area where we need assistance:
- How it can be integrated to the Buckminster environment
Re: Question about global specification configuration feature [message #376005 is a reply to message #376004] Fri, 23 May 2008 17:21 Go to previous message
Henrik Lindberg is currently offline Henrik LindbergFriend
Messages: 2509
Registered: July 2009
Senior Member
Hi Gabor,
At one point we discussed if we should support component inheritance and
the equivalence of interfaces.

A component would then reference a super component and inherit its
actions. To make this useful, the notion of abstract actions/attributes
would also need to be included.

The main reason why we have not done this is that the undertaking is
quite big.

Another approach would be an AOP type approach where a cross cutting
concern like the ones you mention gets injected into the components. In
a way, the CQuery Advisor Nodes plays such a role. (Maybe a solution is
to write a CSPEX injector Advisor node?)

The OO approach (inheritence) has the benefit that when you find a
single component you also find its full API. The downside is that you
have to modify each component and have it point to a super component.

The AOP approach has the benefit that it is outside of the components
and that you do not have to touch the original at all. The downside is
that you can't find the full API given only a component. Some external
scope is needed that defines the cross cutting concerns and advice -
maybe the CQuery can take that role as it is already "advising" on other
things.

More ideas, anyone?
Regards
- henrik
Previous Topic:Buckminster & Working Sets
Next Topic:Problems with Solaris
Goto Forum:
  


Current Time: Tue Apr 23 12:48:08 GMT 2024

Powered by FUDForum. Page generated in 0.03203 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top