Question:
How do you document, plan, draw a general scheme of the project, so as not to keep everything in your head and return at any time and quickly enter?
Ex. a relatively simple web service and its client. A simple protocol for their communication for CRUD and a little more. The service also connects to Amazon services for data storage. The client has multi-threaded event chains inside itself.
The same entity is represented slightly differently inside the client ( ActionScript
), in the server ( php
) and stored in the database ( Amazon SimpleDB
) – differences like an empty VS
text string. null
, string / array / serialized object.
Is it worth trying to fit it into one schema, or to split the protocols separately, separate algorithms and events inside the client, a separate class diagram?
I was far from planning and did not bother drawing diagrams before, but here for the first time I feel the need for some kind of system.
Share yours?
Answer:
There is a classic that has been proposed since the days of OOP: a layered scheme.
There is a general scheme of the project (at the module level).
There is an internal scheme of the modules (several details are possible until it satisfies).
If necessary, a call diagram is drawn.
If necessary, makes a table (many tables) about the rules of data exchange.