Hi Tom, Sorry to go off on a bit of a tangent there. The concept of a personal, project, group, and corporate libraries sounds like a good fit for both profiles and templates. I have something similar in ArgoPrint and have plans on adding VFS support there. I think the only caveat there must be that if you're working in a team environment like this, it would probably require you to lock shared files while you're editing them.
Mark On Tue, Aug 2, 2011 at 12:17 PM, Tom Morris <[email protected]> wrote: > That's a good workflow description/use case, but I think it ranges > quite a bit wider than just profile support (e.g. code generation). > > Going back to the original question, the design intent and underlying > support mechanisms consider profile resolution as something which > occurred through a search list of libraries, e.g. personal library, > project library, group library, corporate library. Some of this is > obscured in the current implementation, but I think a lot of the > underlying mechanisms are still in place. > > The other thing that this touches on is the general issue of > modularity and sub-models. Many of the same mechanisms that are used > to support profiles are intended to also support models which > reference other models. This would also help partition things so that > multiple people can work on parts of a model (collection) without > stepping on each other's toes. > > Tom > > On Tue, Aug 2, 2011 at 10:57 AM, Mark Fortner <[email protected]> wrote: > > Hi Thomas, > > Thanks for the reply. I think Profile support is one of those areas > where > > we haven't quite thought through how ArgoUML gets used in real-world > > software development projects. Or how it might get used if people > understood > > some of its intricacies like profiles. ;-) Here are a couple of > > case-in-points: > > > > Setting standards: Invariably as soon as you have two or more developers > > you want them to be able to share certain common pieces of information. > > Profiles containing commonly used stereotypes is one example; templates, > is > > another. In order to share information people tend to put up a wiki or > have > > a shared drive. For us this means we'd need to support more than one > kind > > of file system (perhaps through Commons VFS, or eventually the new Java > NIO > > file systems introduced in Java 7). But this kind of support also makes > > profile and template development easier for us, since we can publish them > > through the website. [ > http://argouml.tigris.org/issues/show_bug.cgi?id=6189] > > > > Evolving profiles: Typically profiles evolve as you're modelling. You > want > > to be able to create or modify profiles on the fly. Currently the only > way > > to do this is to to open a second instance of ArgoUML, and edit your > > profiles there, and then reload them in the first instance of ArgoUML. > This > > obviously isn't the most intuitive or efficient way of doing it. It > would > > be nicer if you could simply right-click on the Profiles folder in the > > Explorer and add a new profile there, or modify one of the existing > > profiles. When you create the profile you should then be allowed to > create > > stereotypes and tagged data elements directly from the Explorer. > > > > Design Reviews: At the end of all of this modelling, you usually have a > > design review. During the review you walk the attendees through the > > relevant parts of the design. You can add critics to elements in the > > design, but if you do there's no way to walk through the critics grouped > by > > the people that added them. For example, I'd like to be able to go > around > > the table and address the comments made by each person, but when you > order > > the critics "By Poster" you get a blank folder with no title, and a list > of > > critics. When you create the critic there's no way to specify the Poster > of > > the critic, perhaps it should just default to the System user name > property. > > > > Existing Code Bases: If you have an existing code base, you want to be > able > > to highlight those parts of the existing code base that will change. > Doing > > this with stereotypes is fine, but putting <<new>> in front of a method > > tends to get lost in some of the larger classes. It would be useful to > be > > able to turn the method compartment green (or perhaps some other color) > to > > highlight that it's new. You would want that kind of style information > to > > be included in the profile so that a standard color scheme is used by all > > developers. > > > > Code Generation: After the design is approved, you want to quickly > generate > > code and get on with the implementation. But there are often artifacts > > generated in the code that don't belong there, > > [http://argouml.tigris.org/issues/show_bug.cgi?id=6239]. You also want > to > > be able to add your own copyright header. > > [http://argouml.tigris.org/issues/show_bug.cgi?id=5093] Having editable > > templates means that the code you generate stands a greater chance of > > passing checkstyle reviews without additional manual editing. > > > > Testing: If you're a TDD shop (or just someone who wants better test > > coverage) you also want to be able to generate unit tests for the code > that > > you just generated. [ > http://argouml.tigris.org/issues/show_bug.cgi?id=4819] > > > > Hope this helps, > > Mark > > > > > > On Tue, Aug 2, 2011 at 1:11 AM, Thomas Neustupny <[email protected]> wrote: > >> > >> Hi Mark, > >> > >> you can't avoid the display of the whole (system specific) path in the > >> profile configuration. Also, there is no (relative) standard path to > >> profiles, you configure your profile directories in > edit->settings->profiles > >> (default XMI directories). Hm, maybe we could strip the displayed path > in > >> the profile configuration if it is one of the configured directories? > >> > >> Sharing profiles: share the XMI files. Everyone who uses it is > responsible > >> for the loading of the profile in her/his ArgoUML instance. But there is > >> another way to share profiles: wrap them in a module and share the .jar > file > >> (has just to be put into the ext/ directory of ArgoUML). Easier for the > >> recipients, but requires developer skills for the creator, unless you > use > >> the "module generator" module, here is a doc that demonstrate the idea > how > >> to do it: http://argouml-modulegenerator.tigris.org/documentation.html > >> So this module will create the sources of a profile module for you. I > can > >> help you with either that module or directly with the (reusable) profile > >> module sources in case you don't want to use the module generator. > >> > >> Thomas > >> > >> -------- Original-Nachricht -------- > >> > Datum: Mon, 1 Aug 2011 17:38:03 -0700 > >> > Von: Mark Fortner <[email protected]> > >> > An: [email protected] > >> > Betreff: [argouml-users] Making Profiles "Discoverable" > >> > >> > I've been tinkering with some profiles and I was wondering if there is > a > >> > directory that ArgoUML will always check to "discover" available > >> > profiles. > >> > Perhaps the .argouml directory? The reason I ask is that currently > the > >> > profiles show a complete path to any profile that you add in the > >> > explorer. > >> > However, I frequently move back and forth between Windows, Linux and > >> > MacOS > >> > X. It would be nice if there were a single directory that I could put > >> > my > >> > profiles, that would always be resolved regardless of the platform I > was > >> > using. > >> > > >> > Also, is there a way to share profiles? I would like to be able to > post > >> > some profiles on our intranet, and it would be useful to be able to > >> > specify > >> > an http-type URL for the profiles. > >> > > >> > Any suggestions will be appreciated, > >> > > >> > Mark > >> > > >> > ------------------------------------------------------ > >> > > >> > > http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2807930 > >> > > >> > To unsubscribe from this discussion, e-mail: > >> > [[email protected]]. > >> > >> -- > >> Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir > >> belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de > >> > >> ------------------------------------------------------ > >> > >> > http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2808098 > >> > >> To unsubscribe from this discussion, e-mail: > >> [[email protected]]. > > > > > > ------------------------------------------------------ > > http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2808261 > > To unsubscribe from this discussion, e-mail: [ > [email protected]]. > ------------------------------------------------------ http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2808263 To unsubscribe from this discussion, e-mail: [[email protected]].
