Please Mathias don't read to not lose your time.
On 16/11/12 13:52 +0100, Mathias Behrle wrote:
> * Betr.: " Re: [tryton] Invoice workflow improvement" (Thu, 15 Nov 2012
> 21:10:26 +0100):
>
> > On 15/11/12 20:44 +0100, Mathias Behrle wrote:
> > > > At least, "Posted" will be more consistant with the Statements (and
> > > > probably with the coming Payment or any other similar documents).
> > >
> > > It must not be consistent, because an invoice is not a bank statement
> > > neither a payment.
> >
> > They have a similar workflow:
> > - a draft state
> > - a validate state where record is readonly, waiting for final approval
> > - a "posted" state where things are recorded in the accounts
>
> For me the correct approach is to project business logic on the program, not
> the other way.
As you can see in my explaination, I don't speak at all about the code,
program or techniques but only on the workflow (when I say workflow, I
don't mean the "workflow engine"). I describe what happens for the user
when he performs an action, and the action/result should be named base
on that. This is the discoverability of the software, a very important
feature.
> It may be fine for you to detect common workflow steps in
> different models and that you want a uniform naming. This must absolutely not be
> the case for the user.
(Here again, workflow means user process not the workflow engine)
This is exactly what eases the adoption of Tryton, using the same design
approch for all the aspect of the business. Once you learn how the
invoice works (draft, validate and posted), you will directly understand
the statement because it is the same logic that is used and it is the
same for any similar document that will be developed in the future.
> The user just wants/has to work with the program and he has to find the
> accustomed and usual steps of tasks to manage his everyday business. If
> he won't find them or they are too strange, he won't get familiar with your
> program and refrain from using it.
There are no such standard. What you have are users who know one program
and want the same but it is not possible. In such case, it is better
that the users keep the one he knows.
> For which audience do you want to write the program? If it is just for yourself
> it is no problem to name steps like you understand the logic of your code. If
> you want your program to be attractive for business users, you should
> preferably take into account their perspective.
That what I do when I make a proposal, I do a lot of search and thought
before making a proposal. I compare with other existing solution like
Openbravo, SAP etc. And clearly all those programs have their own vision
about business and their own terms.
But it seems that I'm seen as a coder only and nothing else because I do
codereview. But to reminde to everyone, the current design (business
workflow) of the application has been done by Bertrand and Me 5 years
ago and it is still there. According to new comers it is a key aspect of
Tryton.
> > So here, clearly it was already found by the German translators that
> > "Opened" was not good enough but they did not talk about it. That's not
> > team playing.
>
> If you read carefully my statements you will be able to detect, that
> almost no other term than 'Invoiced' will meet the requirements of a direct
> translation for Germany.
It doesn't because of the supplier invoice.
But more over, changing the sense of a field with translation is a really
bad idea and weaken the solution because it breaks the modularity.
For example, you can have a module that extend the module to add new
concept on it. So the developer base his work on the english terms and
what they describe. But if the sense is changed in a language then the
new concept could be incomprehensible.
People must understand that translation is just about translate and not
about customization of the solution for their country.