The table might be at least a good first step towards getting a diagram.  I
thinking it would only work as multiple diagrams.  With boxes that say "To
diagram n" with a single arrow going in, or "From diagram n" with a single
arrow coming out.  Maybe that's what you mean by sub-state diagrams.  Or
are the HttpSM states already grouped into "higher level" states?

On Thu, Dec 5, 2019 at 10:38 AM Alan Carroll
<solidwallofc...@verizonmedia.com.invalid> wrote:

> I think any additional documentation of the HTTP state machine and its
> transitions would be very useful. However, I'd much prefer it to be in
> plant-UML format. As a first pass, just sequencing the basic states would
> be good. If needed, sub-state diagrams showing particular states would be
> the next step.
>
> On Wed, Dec 4, 2019 at 10:30 AM Walt Karas <wka...@verizonmedia.com
> .invalid>
> wrote:
>
> > It probably would be hard to diagram it in 3-dimensional space, much less
> > two.  But maybe we could do a table with the columns Start State, Event,
> > New State, Notes.  Perhaps we could create the source document in JSON
> > format or something.  It would be nice if we could convert it with code
> to
> > RST, but also load it into a spreadsheet.  So we could sort on either
> Start
> > State or New State.
> >
> > The problem with real-world state machines is that they don't really
> have a
> > small number of discrete states.  They have a state vector with multiple
> > variables, with a huge number of potential states.  An often-effective
> > cheat is to make fake distinctions between events that really reflect
> state
> > differences.  For example, considering "receive bytes when buffer empty"
> > and "receive bytes when buffer not empty" as distinct events.  But maybe
> > our state machine is so complex it would overwhelm this cheat strategy.
> >
>

Reply via email to