Re: Can OCL assist in describing Design Pattern?



Date view Thread view Subject view Author view

stuart kent (stuart@mclellankent.com)
Thu, 28 Dec 2000 21:35:05 +0000


Yang Shunxiang Yang wrote: > > Hi, > > Is there any feasible way to describe Design Pattern both with ease and accuracy? I have an idea, but I do not know whether it's feasible or not. Here it is: > 1. model the design patterns using UML. > 2. add necessary description for the constraints in Design Patterns uing OCL or something like this. This is necessary because UML model is far from enough to describe a design pattern. > 3. record these 2 in a pattern lib. > 4. user can select a 'pattern' from the pattern lib, and when CASE tool trying to instantiate a design pattern, it refer both to the UML model and the OCL description. > > But there're some problems: > 1. Is there any extension of UML that support design pattern description? > 2. Is OCL ideal for this task? Or just a subset of it is enough? How to apply OCL description to the UML model of design pattern? for example, how to describe Abstract Factory in GoF pattern book? > 3. Is there any way to use OCL visually? See http://www.cs.ukc.ac.uk/people/staff/sjhk/cds.html > 4. Is there any other way to realize the goal I described above? > > I put forward this question in order to get the solution for this problem: Currently, the CASE tools supporting design patterns are hard to extend. For example, togetherJ is a nice UML tool supporting Design pattern. But to add new patterns to the pattern lib, users have to program in java. If togetherJ can support the way I described above, it will be much more convinient for users to add his/her new patterns to the pattern lib, and reuse them later. I'm in the process of writing a paper on this. I don't know if it is the same idea as you have above (it depends what you mean by "model the design patterns using UML" - what do you think the model would look like?). I'd be happy to send you a copy of the paper as soon as it is written (mid Jan I hope) - abstract factory is indeed one of the examples I use. You might also like to look at http://www.cs.concordia.ca/~faculty/eden/lepus/ for another approach to formalising design patterns, though I suspect it is not what you are after. Stuart -- ukc home - http://www.cs.ukc.ac.uk/people/staff/sjhk uml'2000 - http://www.cs.york.ac.uk/uml2000 puml group - http://www.puml.org/


Date view Thread view Subject view Author view