1

Topic: Strange state machine

Once again there was a problem of implementation of process of the coordination and again speculation... Encountered amusing article: Why Developers Never Use State Machines http://www.skorks.com/2011/09/why-devel … -machines/ Bodrenkoe the beginning: The problem is that you almost never create an object fully formed with all the behavior it is ever going to need, rather you build it up over time.... So, early on you do not feel like your objects' state machine behavior is complex enough to warrant a "full-blown" state machine (YAGNI and all that jazz), but later on - when it IS complex enough - you feel like you've invested too much time/effort to replace it with something that has equivalent functionality It was completed  by the naive thesis: We seem to shy away from state machines due to misunderstanding of their complexity and/or an inability to quantify the benefits Formal    machines  all are clear. Here only... There were no to me still tasks under   machines. Here my typical task - is the request, at it 3 serial stages of the coordination. A stage 3 but a state at the request one - "the request for the coordination". The coordination can ends with three variants - the request is coordinated, the request is not coordinated, the coordination is delayed. It already statuses of the request which it receives "coordination" after a stage. Further there are automatic coordination (if a row of conditions) and "bunched coordination" - (parallel) too with the rules is fulfilled - or for group coordinates the first or all group should coordinate. The automatic coordination is easy can work some times after "the manual coordination" and complete the group coordination, the coordination of a stage and the request coordination. And and in any cases generally all coordination can be transited and completed on the automatic machine right after coordination start. It would Seem the machine arises . But boundaries of entities are blurred. . The State of the request like also is connected to a state of process of the coordination, but details of process of the coordination can be very difficult and seriously change thus, without being reflected in any way in the logician connected to the request. And the request  the machine happens not painfully that is necessary, if at the request simple system of states. In a similar situation the main sense  machines - pretentiousness, somehow  disappears. Or it is necessary under any other "corner" on this problem to look?

2

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> In a similar situation the main sense  machines - pretentiousness, somehow  disappears. Or it is necessary under any other "corner" on this problem to look? At you the unpretentious task which it is possible  2-mja flags. Try to implement any in the slightest degree serious a TV set the protocol, for example SIP where states can be 20 + and without the stejt-car you will not manage, especially  and that  a time check was though any.

3

Re: Strange state machine

Hello, Kernan, you wrote: K> Hello, IQuerist, you wrote: IQ>> In a similar situation the main sense  machines - pretentiousness, somehow  disappears. Or it is necessary under any other "corner" on this problem to look? K> at you the unpretentious task which it is possible  2-mja flags. You obviously did not face processes of coordination K> Try to implement any in the slightest degree serious a TV set the protocol, for example SIP where states can be 20 + and without the stejt-car you will not manage, especially  and that  a time check was though any. Well here there were at me requests where over 15 states, simple as , with two - three branchings, I even did not think to get under them  the machine. So an amount not an index.

4

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> it would Seem the machine arises . But boundaries of entities are blurred... : and here  to mix "a request state" and "a business operation state in which the request" participates. Space apart, register invariants for each state, register passage rules, actually all. On a subject... And on a subject already for me answered, I will subscribe: mkamoski o 4 years ago Never use them? What? A state-machine is as simple as a non-nullable foreign key. It is an "abstract idea", a design principle. Implementation is secondary. You have some nice thoughts and evangelization here in your article, but you are mistaken that "developers never use state machines". Heck a boolean variable is a state machine - holds exactly one value from a finite set of values. Etc. Just saying. Thanks.

5

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> Hello, Kernan, you wrote: K>> Hello, IQuerist, you wrote: IQ>>> In a similar situation the main sense  machines - pretentiousness, somehow  disappears. Or it is necessary under any other "corner" on this problem to look? K>> at you the unpretentious task which it is possible  2-mja flags. IQ> you obviously did not face coordination processes Probably I not so strongly got a grasp of your specificity. Fluently looking at the previous message, it seemed to me that at you should be  from 3 and 3-5 events. IQ> well here there were at me requests where over 15 states, simple as , with two - three branchings, I even did not think to get under them  the machine. So an amount not an index. I re-read your post once again, at me the impression is added that you not absolutely understand as to build  machines proceeding from the requirements and what problems they solve. Well and as though "we realize article message that it was necessary to use stejt-cars too late and we do not do it with  the beginning since it too difficult", it is obvious that all complexity in a head, laziness and banal absence of engineering will to use large enough tool on start. [] if  with .. Imperative , our program it not that other as the banal stejt-car with set of passages. [\zanudamod]

6

Re: Strange state machine

Hello, Kernan, you wrote: K> I re-read your post once again, at me the impression is added that you not absolutely understand as to build  machines proceeding from the requirements and what problems they solve. K> well and as though "we realize article message that it was necessary to use stejt-cars too late and we do not do it with  the beginning since it too difficult", it is obvious that all complexity in a head, laziness and banal absence of engineering will to use large enough tool on start. A message  that evidence of necessity of usage of the stejt-car in the modern projects appears not at early stages of the project.  laziness here there is nothing. K> [] K> If  with .. Imperative , our program it not that other as the banal stejt-car with set of passages. K> [\zanudamod] Yes, but a problem that in the modern (iterated) projects all passages by the known become closer to the project middle.

7

Re: Strange state machine

Hello, Sinix, you wrote: S> Hello, IQuerist, you wrote: IQ>> it would Seem the machine arises . But boundaries of entities are blurred... S> Kep: and here  to mix "a request state" and "a business operation state in which the request" participates. Space apart, register invariants for each state, register passage rules, actually all. Yes here the problem of iterative projects that else yesterday there was no especial "a business operation state", is more true it was finite but was empty or almost empty, and today analysts talked over with customers and the yesterday's unpretentious coordination turns in high-grade and  difficult business process... Worse that, always it would be desirable to manage "with small losses" (since periods always draw in) and to manage the simple decision that certainly not always it turns out.

8

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> and today analysts talked over with customers and the yesterday's unpretentious coordination turns in high-grade and  difficult business process... Well here as... Or we find a biz-analyst (still to find, that problem still), or we try to work for it, or permanently we attack a rake "yes  knew?!!" The third variant the most fascinating, approximately as with the free falling: all problem in the last centimeters

9

Re: Strange state machine

Hello, Sinix, you wrote: S> Hello, IQuerist, you wrote: IQ>> and today analysts talked over with customers and the yesterday's unpretentious coordination turns in high-grade and  difficult business process... S> Well here as... Or we find a biz-analyst (still to find, that problem still), or we try to work for it, or permanently we attack a rake "yes  knew?!!" The third variant the most fascinating, approximately as with the free falling: all problem in the last centimeters I can not in my case (a system intrabuilding) to abuse neither analysts, nor customers. On all press, from all demand observance of processes new business with minimum budgets. I on the first similar operation started to accept such situation as a reality. And now when 10 years "in a subject" me simply amaze other state of affairs))) However in such situation  are even serious plus - ... The code and over-engeniring in 99 % of cases to you will be created by problems in the near future. So it is necessary to watch closely very much all time that you do.

10

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> I can not in my case (a system intrabuilding) to abuse neither analysts, nor customers. On all press, from all demand observance of processes new business with minimum budgets. Not, what to abuse? On the contrary it is necessary to care and cherish. The good analyst and good QA in a command is a gift of gifts, principal dialogue to adjust. In sense, except "blood from a nose it is necessary" it is necessary to learn also about "here customers intend to ask such hogwash". Not for implementation, clear business and that correctly priorities to place. Not always it turns out, but at least it is necessary to try precisely.

11

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> In a similar situation the main sense  machines - pretentiousness, somehow  disappears. Or it is necessary under any other "corner" on this problem to look? Here glance: http://kellabyte.com/2012/05/30/clarify … a-pattern/ And here: https://lostechies.com/jimmybogard/2013 … ariations/

12

Re: Strange state machine

Hello, IQuerist, you wrote: IQ> Yes, but a problem that in the modern (iterated) projects all passages by the known become closer to the project middle. It not so. If in the project there is a skilled engineer to it it will be obvious where the project will develop, but skilled engineers normally have no power or they should cave in under the manager. Moreover there is a whole class of typical tasks (protocols, aha) which 30 effectively dare years with usage of stejt-cars.

13

Re: Strange state machine

Hello, Kernan, you wrote: K> Hello, IQuerist, you wrote: IQ>> Yes, but a problem that in the modern (iterated) projects all passages by the known become closer to the project middle. K> it not so. If in the project there is a skilled engineer to it it will be obvious where the project will develop, but skilled engineers normally have no power or they should cave in under the manager. Book any conditions... In real life  there is a flow of projects and even if to the skilled engineer it is clear where the project will develop, whether that this development will be paid by customers for it circumstance absolutely unknown, and for planning of efforts the key.>>> moreover there is a whole class of typical tasks (protocols, aha) which 30 effectively dare years with usage of stejt-cars. Quite right.