Monday, 15 October 2007

OSGi services

I think I'm finally starting to "get" where Peter Kriens was coming from in his blog entry on OSGI design techniques.

When initially designing the system it is important to define what services are going to be used (get, register, listen). I've been trying to force this in to a UML component diagram but this is implementation specific, which is what the UML is good for, as Peter says, but it is not so useful for the level of analysis that Peter's design technique is aimed at.

I also found this article from IBM describing a UML profile for services, which may be useful.

I really need to get to grips with UML profiles!

My next 6 weeks I will be documenting the design of a new OSGi based system that I am architecting at work, as well as continuing that design and giving it some detail, so I think I will have plenty of chance to get up to speed with UML properly. My aim is prove the design that is in my head (and partially implemented) before spending too much (more) time writing code to support it. At that point I will also be getting a couple of team members to help me out, so I want the design of the system to be clear in order to aid in delegating the implementation work.

Bit of ramble there but I think my conclusion is... the OSGi Design Technique is going to be a useful analysis tool and UML is going to be good to show how it needs to be/has been implemented. Of course, now I need to find a (preferably free/opensource) tool that can help me do the types of diagrams that Peter produces.

No comments: