[Seaside] [Ann] Deltawerken & Storyboard

Gastón Dall' Oglio gaston.dalloglio at gmail.com
Wed Sep 5 15:30:17 UTC 2012


Very probably, in next months, we begin a medium size app in Seaside, and
Deltawerken would be a good choise.
I go study this framework.

Thanks, and regards.

2012/9/5 Stephan Eggermont <stephan at stack.nl>

> Hello
> At the last Camp Smalltalk we finally managed to release the Deltawerken
> application framework
> for Seaside and Storyboard, an example application using it. Here is a
> first description (to be expanded
> and improved).
> What is Deltawerken?
> Deltawerken is a Seaside application level framework, allowing fast
> application development
> for medium-sized applications. We have used an earlier extended version of
> it to build a system
> with about 150 domain classes. Complexity was deliberately and
> systematically pushed from
> the application to the framework. It uses a declarative way to describe
> domain classes somewhat
> similar to Magritte or Mold. It uses Announcements, jQuery and jQueryUI.
> Storyboard
> Storyboard is a multi-user agile planning board with drag and drop
> support.  It shows how little
> code is needed to build a complete application with Deltawerken.  It
> consists of 39 classes,
> of which 7 are announcements (very simple). It allows you to quickly enter
> stories, estimate and prioritize them.
> In addition to stories you can add issue, documentation and chore cards.
> The cards are colored based
> on their story state. More details can be entered/viewed by expanding the
> card. In the expanded view
> a change history is shown. Other users of Storyboard can be invited to
> participate.
> Core domain classes are:
> User, Project, Iteration, Story, Member
> Some stories:
> A user can have projects (s)he participates in.
> A user can have invitations for other projects
> A user can create projects
> By creating a project or by accepting an invitation, a user becomes a
> member of the project
> A member can invite other users to participate in a project.
> A member can search for other users to invite.
> Each member can have its own view on the project, the projectsettings
> Each member can add a story to the project
> A project has 4 projectviews, for done, current, backlog & icebox
> By default, the projectsettings show the 4 projectViews
> Adding a story is done by entering its storyName
> A new story is added to the icebox
> A story can be started after it has been estimated
> A story can be dragged from the icebox to current or the backlog
> A story that is done can no longer be prioritized
> A story that is accepted can no longer be changed
> A story can have a description
> A story can be a bug, chore or documentation
> Only (feature) stories are estimated
> ...
> Deltawerken Features
> User management
> Field descriptions with validation for domain classes (somewhat similar to
> Magritte descriptions).
> Builders for forms and reports.
> Search support.
> ...
> Deltawerken Components
> DEField and its descendants are used to describe domain classes.
> DEComponent is the base WAComponent equivalent. It knows the current user
> (if any) and announcer.
> DEPageChoice is a DEComponent that switches what it shows based on
> announcements.
> There are a number of addPage: variants
> DEEditComponent  allows the editing of a single domain object. It can edit
> new or existing ones, using
> a copy of the original to allow reverting changes. It can generate a div
> or table based layout. It can have a
> header and/or a footer, and an infoText between the header and the form.
> For required fields,
> it can show a *. Focus can be set on a specific field.
> DEEditForm extends DEEditComponent with action buttons for save and cancel.
> ...
> Getting started
> StoryBoard provides a good overview of the power of Deltawerken. If you
> start it the first time,
> it shows a welcome screen, showing the number of users and projects.
> Please make sure
> you change the password of the administrator. In a workspace:
> (SBUser userWithId: 'Admin') password: '<your new password>'
> The application uses SBMain, a WAComponent, as its entrypoint. It has two
> children,  an SBLoginForm and a DEPageChoice initially showing SBPublicHome.
> Then register yourself as a new user:
> StoryState and StateTransition provide a state machine for the stories,
> allowing them to
> move from #initial (unestimated) through #started to #finished, #delivered
> and
> #accepted or #rejected leading again to #started.
> When you are logged in, you arrive at the overview of your projects
> You can create a new project, respond to an invitation to participate in a
> project,
> view a storyboard of a project or view a team page of a project
> The team page shows the current members and allows you to search for users
> to invite.
> The storyboard of a project shows the four panes for done, current,
> backlog and icebox.
> Iterations are shown in grey. By delivering an iteration, the accepted
> stories
> are moved to done. and a new iteration is started. A story can be expanded
> to show
> more details.
> History
> Deltawerken is a spin-off from the work we did developing a Seaside
> application for a start-up,
> using GLASS and Seaside 2.8. We focused on pushing out complexity from the
> application to
> the framework. When we started giving Seaside workshops, we wanted to
> provide the
> participants with an environment where they didn't need to write a lot of
> code to make things work.
> It was also used in our experiments to create a Naked Objects like user
> interface (if you were
> wondering where the noXXX method names came from).
> Last year it was upgraded from Scriptaculous to jQuery, and we developed
> StoryBoard.
> Installing
> Deltawerken has been tested with the Seaside one click 3.0 and 3.1 and a
> Pharo 1.4
> It should run in Gemstone too. The metacello configuration does not load
> Seaside,
> but has the needed code for that commented out.
> See the instructions on the wiki page of:
> http:ss3.gemstone.com/ss/Deltawerken
> http:ss3.gemstone.com/ss/StoryBoard
> License
> Have fun,
>   Diego & Stephan
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/seaside/attachments/20120905/74419c1f/attachment.htm

More information about the seaside mailing list