The work in core will to be to create the possibility of runtime
separation of things like diagram, code generation, reverse
engineering and critics. With this I'm concerned that compile time
separation of these things may be redundant work and also achieves
your concern over memory size etc.

I'm certainly not against learning what some AOP etc may bring us and
this may help demostrate some concepts.

As you are setup as a subproject of argouml my fears are allayed
somewhat but I am concerned about ArgoUML splitting into another
development stream.

Regards

Bob

2010/4/16 Marcus Vinícius de Ávila Couto <[email protected]>:
> Hi Linus and Bob,
>
> I also agree with you that we can apply SPL concepts directly on the
> core ArgoUML. However, by starting as a separate project, we believe
> it will be easy to convince people to adopt SPL (moreover, there will
> be no risky to break the core).
>
> Therefore, the current focus of our implementation is to allow users
> to generate customized versions of ArgoUML system, given their
> specific interests.  We envision a version of the system where it will
> be possible to end-users to generate -- at download time -- a versions
> that will contain just the features they actually use, thus minimizing
> the overall system size, memory usage, among other gains.
>
> Currently, our implementation is based on preprocessor directives. But
> we also have plans to investigate other solutions, such as
> aspect-oriented programming and feature-oriented programming.
>
> Regards,
>
> Marcus Vinícius
>
>
>
>> Hello Marcus and Bob!
>>
>> I agree that all the work put into untangling the different functions of
>> ArgoUML and putting them into separate trees/projects/compilation units,
>> could be done directly to the ArgoUML project.
>>
>> When it comes to controlling what parts that are to be enabled and what
>> parts are not, I am not convinced that the preprocessor (i.e. before
>> compile) selection is better than the current run-time selection. I am eager
>> to see how this will work though.
>>
>>         /Linus
>>
>>
>> On Fri, Apr 9, 2010 at 10:13 AM, Bob Tarling <[email protected]> wrote:
>>
>> > Hi Marcus
>> >
>> > The intent of ArgoUML is to do something very similar in the core
>> > product that you are doing externally.
>> >
>> > We are moving to a more modular architecture where we now already have
>> > the model element property panels and sequence diagrams built as
>> > separate components. Even though those components are by default
>> > provided with ArgoUML the application should run fine without them.
>> >
>> > Moving out other existing subsystems into modules is happening more
>> > slowly as it doesn't move the product forward from the users
>> > perspective. However we do want to see other parts broken out into
>> > separate modules in particular the other diagrams and the cognitive
>> > subsystem.
>> >
>> > This should be done in core ArgoUML though. What is the advantage in
>> > having another project for this rather than contributing to the core
>> > product?
>> >
>> > Regards
>> >
>> > Bob
>> >
>> >
>> > 2010/4/3 Marcus Vinícius de Ávila Couto <[email protected]>:
>> > > Hello dear ArgoUML developers,
>> > >
>> > > I am a master student at PUC Minas, Brazil. I started a research about
>> > > software product lines (SPL), which are basically a  methodology that
>> > > advocates that software should be designed and implemented by
>> > > composing together particular features (or variabilities) with a
>> > > pre-defined set of core components. The ultimate goal is to promote
>> > > the generation of systems that meet the requirements of particular
>> > > users, domains or environments.
>> > >
>> > > Despite years of research in this field, we have not many concrete
>> > > examples of systems implemented following this methodology. For
>> > > example, it is common to have systems that use preprocessor directives
>> > > (e.g. #ifdef and ifndef) to support low-level variabilities (such as
>> > > different APIs or application specific  configuration options), but
>> > > not high-level features. On the other hand, there are attempts to
>> > > implement end-users features  using technologies such as AOP.
>> > > However, such attempts are based on  small and fairly simple systems.
>> > >
>> > > Therefore in my research I am trying to implement a real-world SPL, in
>> > > order to better evaluate the benefits and limitations of this
>> > > methodology. For this purpose, I have selected the ArgoUML. More
>> > > specifically, I have already extracted the following features from the
>> > > system:
>> > >
>> > > * Logging
>> > > * Cognitive/Critics/ToDoItem
>> > > * Activity Diagram
>> > > * State Diagram
>> > >
>> > > In other words, at this moment, I have generated a version of ArgoUML
>> > > where the mentioned features can be easily enabled (or disabled) before
>> > > compilation. As I said before, my goal is to evaluate the benefits of
>> > > SPL and its ability to generate software customized to the needs of
>> > > particular end-users. All the source code of this initial work can be
>> > found
>> > > in the ArogoUML-SPL SVN repository.
>> > >
>> > > After this initial step, I would like to iterate more closely with the
>> > > ArgoUML developers. There are a lot of others features that could be
>> > extract
>> > > from this application, for example the others UML Diagrams. A lot of
>> > tests
>> > > and
>> > > merges between the last stable version of ArgoUML and the last version of
>> > > ArgoUML-SPL
>> > > is necessary too (we worked with ArgoUML v0.28.1), so we are looking
>> > > for developers interested in help us. All suggestions are wellcome.
>> > >
>> > > All developers interested in help us are wellcome. Thanks for your time
>> > and
>> > > attention.
>> > >
>> > > We wait for your contact.
>> > >
>> > > Best regards,
>> > >
>> > > Marcus Vinicius de Ávila Couto
>> > > Master Student
>> > > PUC Minas, Brazil
>> > >
>> > >
>> >
>> > ------------------------------------------------------
>> >
>> > http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=2530078
>> >
>> > To unsubscribe from this discussion, e-mail: [
>> > [email protected]].
>> > To be allowed to post to the list contact the mailing list moderator,
>> > email: [[email protected]]
>> >
>
> ------------------------------------------------------
> http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=2585082
>
> To unsubscribe from this discussion, e-mail: 
> [[email protected]].
> To be allowed to post to the list contact the mailing list moderator, email: 
> [[email protected]]
>

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=2585102

To unsubscribe from this discussion, e-mail: 
[[email protected]].
To be allowed to post to the list contact the mailing list moderator, email: 
[[email protected]]

Reply via email to