Friday, 4 April 2008

Open-source Saffron-like UML tool

Saffron is / was an AIR-based UML tool that promised great things, but so far has yet to deliver even an Alpha.

Like many others I've binned my own UML tool project believing that Saffron was just around the corner and far exceeded my own project's limited capabilities.

The AS3 community's response to Saffron has been overwhelming - we want this tool. Badly.

Whatever the reasons for Sam's non-delivery on Saffron - and frankly it's not like he owes us as all we've invested is our hope - I’ve given up on Saffron appearing anytime soon.

Leaving behind the rumours, Saffron would be a fantastic tool and Sam has clearly solved a few of the usability issues that bug me about other UML tools. Whether or not he has been able to execute it, his concept is seriously good.

If a bunch of us got together I believe we could do this open-source quite rapidly. If there is interest I’m prepared to get the ball rolling - if we all want Saffron so badly then we need to deliver it ourselves!

I am looking to gather together contributors to work on the project, taking this (scaled down) vision as a starting point:


Project scope:

  • The tool will run on AIR in multiple windows.
  • It will allow you to generate AS3 stub code + asdoc comments from your diagrams.
  • It will allow you to generate diagrams from AS3 code (with asdoc comments).
  • It will allow you to add additional commenting to classes / functions.
  • It will stick as closely to UML 2 as is feasible and support the core OO concepts.
  • The API will be built with expansion for other languages in mind - all they would require is a new parser logic.
  • There will be autocomplete / prompting for classes already included in the project diagram.
  • Data / projects / configs will be held in XML files.

Ethos

  • There will be a focus on releasing usable builds as early and as often as possible - even if they are ugly! Provided we maintain backward compatibility it's more valuable to have a tool that helps us do some of what we need than nothing.
  • All project components / specs etc will be open-source and public.  
  • All development will be test driven - tests written before code.
  • Refactoring will be encouraged.
  • No effort is too small - write just one class that solidly delivers and passes its unit test and your contribution is valuable.
  • The project will be cross platform Flex / Flash to maximise the number of possible participants.  (Yes, it's a pain, but I think it's worth it).
If you're interested please say so below ... with the right approach and the right numbers of people this thing could fly quite quickly, don't you think?


12 comments:

Ashiq said...

when and where do i sign up?

- Faisal Abid
faisal @ g-unix . com

Jeroen said...

Sounds good... You should start a project at osflash.org ?

I've always wondered how a big open-source project like this is built up from the start, so I guess this would be a great opportunity to witness this first hand. :)

I guess I'm in, I'll keep checking this blog to see what's next to do :)

Stray said...

Great stuff! Thanks guys - I've been away for the weekend and done some research and a bit of planning - will post up my sketch of the project challenges and some possible approaches tomorrow.

I'll check out the osflash.org projects jeroen - it's my first go on an open source project as well - hopefully we'll work it out as we go :)

Lx

eco_bach said...

Disappointing to read(need to confirm this is true) that Saffron was bought by Microsoft, to be ported to Silverlight and released next year! Ouch! Please say it isn't true.
Anyways, there obviously IS a demand for this TODAY...hopefully something similar to Saffron, AND open source can be made available before then.
Will be attending Sam's workshop at FITC next week, and will get the full scoop.

CarnageBlood said...

If you start this project and need members let me know! I want to be part of this if it's something serious!

Stray said...

hi eco_bach ... I have my doubts about that particular story on the basis that I've never known a major software company (Apple / Microsoft / Adobe / Whoever) to buy into something as hot as Saffron and not make a big song and dance the moment the deal is done.

What possible reason would the software giants have to keep it a secret?

I've no idea what has happened to Sam or to Saffron - I saw he was still on the speakers list for FITC in April, but I haven't heard feedback from anyone who saw the presentation. Did you get to see it yourself?

Carnageblood - yes, I think I'm serious. I'm sorting out some work/life balance stuff at the moment but my new 'timetable' specifically includes time every week for working on this app, and I also have an application to build for a client which will require some cross-over functionality, so I'm hoping I can tailor that to fit both projects.

Welcome aboard :)

It's been a busy month for me but I'm hoping to build some momentum with this over the next 2 to 4 weeks. Do drop me a line with your contact details if you're serious about getting involved.

Lx

CarnageBlood said...

Send me an email at carnage@lavabit.com and we will discuss more!
Thank you!

Carnageblood said...

Also take a look at PureMVC (www.puremvc.org)!I think is a great framework and a good alternative to Caingorn!
Email me and let's set something like a roadmap.

CarnageBlood said...

What you please tell me what kind of design patterns this app would include?
Maybe a wizard for different types of patterns!

Maurits van Mierlo said...

I wanna help out if possible! Only problem is how will something like this be designed without Saffron :)

Dave Keen said...

I'd be up for contributing a class or two if this goes ahead. Give me a shout when stuff begins :)

Dave Keen
http://www.actionscriptdeveloper.co.uk

Air Tools said...

Nice guide! thank you!/I love it ! Very creative ! That's actually really cool Thanks.