Re: Orocos 'Overview' document updated

Peter Soetens <[email protected]> Fri, 10 Mar 2006 10:55:29 +0100
Newsgroups gmane.science.robotics.orocos.user
Organization FMTC
Message-ID <[email protected]>
On Wednesday 08 March 2006 23:17, Herman Bruyninckx wrote:
> On Tue, 7 Mar 2006, Peter Soetens wrote:
> > In the course of the release next week, the non-technical overview
> > documentation has been updated with figures illustrating my previous
> > 'Roadmap' mail and a high level example of an 'Orocos Component'.
> >
> > HTML version:
> > <http://people.mech.kuleuven.be/~psoetens/orocos/doc/orocos-overview.html
> >>
>
> Some remarks (the most important ones being the ones that suggest to remove
> stuff :-):
> - I think this document is too robot-centered, reflecting the status of two
>    year ago. The project now has more mature content, for more than "just"
>    robot applications.

I believe using a 'robot' is an ideal example to _explain a new user_ what a 
"component" looks like in Orocos. It's concrete, people are familiar with it. 
An improved documentation of the _other_ Orocos components in the 'component 
manuals' will broaden the insights of the interested user anyway.

> - The introduction of the section "3. Orocos Project Software Overview"
>    is old, to say the least.

It clearly separates this project from other projects which name(d) themselves 
"Orocos" as well. I do not understand how this can be 'old'.


> - I do not understand the meaning of the addition "(CORBA[v0.24.0])" in
>    3.1.1.

As noted above, it means this feature will appear in version 0.24.0.

> - "Persistent configuration" for the Properties: does this also mean that
>    the state of a controlle can be stored persistently?

I believe so. It is possible to use properties for every state variable in the 
control loop. A snapshot could be taken at any time to store a global state.
Orocos does not provide yet such a 'snapshot' component.

> - It might be useful to stress that the "realtime" in the "Realtime
>    Toolkit" stands for high determinism and thread-safety, and not in the
>    first place as a mandatory requirement to use an RTOS if one wants to
> use Orocos.

Good point.

> - "There are five distinct ways in which an Orocos component can be
>    interfaced: through its properties, events, methods, commands and data
>    flow ports." I would add here some sentence that explain that this level
>    of API has a lot of advantages for (realtime) control, because it offers
>    the services that all controlers want to use sooner or later, while
>    allowing to hide the nasty thread-safety implementation details behind
> the interface.

The advantages should be clear from the example that follows.

> - "Commands": I would add the clarification that a command cannot, in
>    general, be completely executed instantaneously, so the caller should
> not block and wait for its completion. But the TaskContext offers all
> functionalities to let the caller know about the progress in the execution
> of the command.

ok.

> - Figure 3 is not really about "implementation", is it?

It is too abstract, but technically, implementation is done with state 
machines and it 'shows' a state machine... needs work.

> - Figure 4 doesn't match very well with the three layers that you speak of
>    in the beginning of the document: RTT, Components, Application
> (Templates). This figure fits better in a developers-centered
> documentation, and not in this overview document, I think.

Ok.

> - I would _start_ with the application templates, because, as you say
>    yourself, this is also where the "normal user" will want to start
> working with Orocos.

Ok.

> - Section 4 "Vision" now reads like "blahblah"... I would throw it out, or
>    replace it by something more updated and condensed. (I know I wrote most
>    of this blahblah, but you should not save my feelings :-)
> - Also the history and bibliography are not appropriate for an overview
>    document, I think.

I'll move this stuff to the developer's manuals.

Thanks for the feedback,
Peter

-- 
Peter Soetens -- FMTC -- <http://www.fmtc.be>