Proposal by Benjamin Van Ryseghem for Nautilus

Proposed by Benjamin Van Ryseghem (profile, biography) Don't forget to submit this proposal to official Google Melange site too!

How will I do that project

The first step is to really separate the widgets in different classes and hierarchies and then to introduce Spec.

Then ensure the trait integration.

Introduce plugins for better instant feedback.

Of course, during those steps, and as soon as they are reported, bugs will be fixed (and the whole Pharo infrastructure if needed).

What methodologies will I use

Since it's hard to right unit tests for UIs, maybe users feedback is a good indicator.

More tests should be introduced to cover procedural methods.

Suggested timeline and milestones

2 weeks to separate the widgets.

1 week to ensure trait support.

2 weeks to introduce spec.

2 week for introducing good plugins.

globally 1 week for bug fixing (even if this time will be distributed among other steps)

Where I see the risks

Spillting the widget can be a bit tricky. But on the other, it will introduce a better design and proper APIs

How the results will look like

Nautilus should be cleaner, more stable, and easier to extend :)

Updated: 4.4.2012