Software Operation Logic and Protocol Specification
Each project requires communication between software components
that should be specified accurately. Protocol description
should be divided into two parts:
- Message format. Logical format in the first place, but
byte or bit (depending whether ascii or binary encoding is
used) level details are quite likely needed as the excact
message encoding needs to be designed anyway.
- Protocol operations. When and why each of the messages
is sent, what is the meaning of the message, what actions
it triggers, how the message is responded, etc
Protocol description should reveal the operational logic of
the software, including how various error conditions are
acted on and what are the alternative actions, if any,
depending on the protocol state.