Hi Adrian!

Thanks!! Nice feedback :D I'll reply each of your comments:


> - I really like that I can ship the diagrams with the code
>
>

Great, I personally think it's the coolest feature this project can offer.


> - if I understand correctly, the method names are hardcoded in the spec.
> Hence, when I document my software with a diagram and then I change the
> code, my diagram gets out of date. If you already have the diagram with the
> code, I think you miss an opportunity here.


Yes... that's true. This project was first planned for making "handmade"
diagrams, I mean, YOU choose what to show and how to show it (i.e. I'd like
to show that some objects share a type although they don't share a
hierarchy, but I really want to document they have polimorfism). That kind
of freedom makes me loose the opportunity to link the diagrams with actual
code and get them to be always up to date.

I'd like to think about how I can get closer to that, because it IS
confortable, but the diagram would have to be more complex and remember all
the time what parts are linked to actual code and what parts are customized
by the person who built it.

It could be interesting to design :P But in the [not very near] future.


> - I don't understand why, when I drag a box, there are suddenly two arrows
> shown (I guess the second arrow should be its shadow, but it does not really
> work)

Hmmm... I guess it is the shadow. It kind of bothers me too, I could try to
make it look different (or take it off completely). Do you notice something
similar with the boxes too?


> - I suggest to simplify menu labels like "Add new class box" to "New
> class". "New" implies that it gets added, and you don't need to say "box"
> because its clear from the context that this will be a box. It also avoids
> confusion about classboxes (for those who know classboxes).
>
>
 Great simple advice, thank you :)


> - One feature of the class diagram that would be very nice to
> have is associations.
>
- I couldn't figure out how to create relationships


Yes!
For now, you can describe how a class box associates with another in the
little workspace of the Diagram Browser like this:


   - aClassBox *hasA*: anotherClassBox *labeledAs*: 'variableName'
   - aClassBox *hasLotsOf*: anotherClassBox *labeledAs*: 'variableName'
   - aClassBox *uses*: anotherClassBox
   - aClassBox *inheritsFrom*: anotherClassBox
   - aClassBox *isATypeOf*: anInterfaceBox
   - aClassBox *implements*: anInterfaceBox
   - aClassBox *usesTrait*: aTraitBox

 This is the kind of stuff I *urgently* have to document :P



> - I suggest, instead of adding new type of diagrams, to first make the
> class diagram really good. You have a much larger impact if you do just one
> small thing but really well.
>

Thanks for that advice, and you're right, Stef says the same. I started
doing some REALLY simple object diagrams because I needed them for the next
week to use them at collage. But in the meantime I'm improving the project
generally too (in the meantime means until next week XD then I'll start
improving class diagrams upon all your feedback :D).

Thanks a lot!!!

I'll detail the list of features later, I'm pretty busy today :(

Carla


Cheers,
Adrian


>
> On Aug 19, 2010, at 16:56 , Carla F. Griggio wrote:
>
> > Hi everyone!
> > Well, here I am announcing the resulting project of my GSoC experience
> during the [your] summer: smallUML, a project to help us building diagrams
> and sharing them with any package of code.
> > My mentor was Stephane Ducasse and my co-mentor Geert Claes, so thanks to
> them for the guidance up to now, and also to Fernando Olivero who helped me
> a lot (hope to do some coding with you at ESUG! :P).
> >
> > You can gofer it:
> >
> > Gofer it
> >     squeaksource: 'smallUML';
> >     package: 'ConfigurationOfSmallUML';
> >     load.
> > (Smalltalk at: #ConfigurationOfSmallUML) project latestVersion load.
> >
> > And then open the Diagram Browser of the current little examples
> evaluating:
> >
> > DiagramDrawingDocumentation openDiagramBrowser  .
> >
> > This is beta and I'm still working on it, my work will continue after
> GSoC's deadline, so of course your welcome to give some feedback and think
> about what features would you like it to have and if you're confortable with
> the current features. It would be really nice if this helped to get all
> Pharo projects more documented, with visual diagrams that help understanding
> them at a glance.
> >
> > Talking about that... the current features are:
> >       • Open a Diagram Browser for an existing Category Diagrams Holder
> (this is a class ment to hold the created diagrams and there should be one
> per category, for now; you can browse DiagramDrawingDocumentation to see an
> example)
> >       • Create and edit diagrams programatically describing them with
> "diagram code" (the diagram code it's just a protocol of methods meant to
> describe diagrams, you can see some diagram code browsing
> DiagramDrawingDocumentation methods or each Class Box in the Diagram
> Browser)
> >       • Every diagram you build through the Diagram Browser it's saved as
> "diagram code", so you can share it as code that will reproduce your diagram
> :) That means that diagrams can 'travel' along it's package when you commit
> your changes with Monticello! And then they can be edited by anybody,
> they're not just a pretty picture.
> >       • You can export your diagram as a PNG picture or you can export
> it's "diagram code" as a workspace.
> >       • Only Class Diagrams can be built for now.
> >       • Class Boxes of a class diagram can be dragged to be easily
> positioned.
> > Some details that are missing:
> >       • It's funny, but I can't center the class boxes title! :P
> >       • I tried adding some scrollbars to the "whiteboard" where you can
> view your diagrams in the Diagram Browser, but if I did that the drag & drop
> of the class boxes worked funny :( I'll ask about that to you later.
> > On the way:
> >       • Tests and documentation, and a screencast showing every feature.
> >       • Lots of refactors: as I'm adding more kind of diagrams right now,
> so I'm doing a lot of refactors to make everything more flexible and
> improving all the messy code there.
> >       • A version of Minimal Connectors for anybody to use if they feel
> like connecting morphs for another project.
> >       • Some usability improvements.
> >       • Object diagrams
> >       • Sequence diagrams
> >       • Your feedback :D
> >
> > So I'd really appreciate if you can give it a try and tell me how you
> feel about it, I'd like it to be very usable.
> >
> > Cheers!
> >
> > Carla
> >
>
>  > _______________________________________________
> > Pharo-project mailing list
> > [email protected]
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to