arch.md 3.4KB

Arch notes

Workflow

[ Repo ]

   | 1      init(type,args) # init repo:
   |                        # * type can be Filesystem or other,
   |                        # * args can be root, connection string...
   |        load(stm)       # obtain STM from repo
   v n

[ STM ]

   | 1      parse_head()        # parse text and fill out metadata properties
   |        gen_sts(stm,args)   # generate a number of STS from a STM
   |                            # * stm - STM object
   |                            # * args - args specify ranges from where
   |                            #          STMs are generated; typically
   |                            #          Cartesian product
   v n

[ STS ] = STM + ARGS

   | 1      gen_task(sts,args)  # a task (or a number of) can be created
   |                            # from STS.  In less managed scenarios (e.g.
   |                            # Beta testing) STS can be served right
   |                            # away, and task ID will be generated off-site
   |                            # e.g. using embedded JS, at time of report
   v n

[ TSK ] = STS + TID

More graphical, from HTTP POV

/release/rc.stm

+------------------[ vcs rev: 123 ]-----+
| STM # Source file                     |
+---------------------------------------+
| Name: Release Client                  |
| Component: ~                          |
| Description: Basic release criterion  |
| Owner: some.guy@example.com           |
| Various ISTQB BS: this; that...       |
|                                       |
| Here the body sterts...               |
|                                       |
| # Main #                              |
| 1. Check A                            |
|    > result is a                      |
| 2. Check IMAPIsm        {proto==imap} |
| 2. Check POP3ism        {proto==pop3} |
|    > result is OK                     |
+---------------------------------------+


GET /release/rc.stm?os=7&proto=imap
Accept: text/plain

+---------------------------------------+
| STS # Slave template                  |
+---------------------------------------+
| Stm: /release/rc.stm                  |
| Stm Revision: 123                     |
| Params: os=7; proto=imap              |
|                                       |
| Here the body starts...               |
|                                       |
| # Main #                              |
| 1. Check A                            |
|    > result is a                      |
| 2. Check IMAPIsm                      |
|    > result is OK                     |
+---------------------------------------+

GET /release/rc.stm?os=7&proto=pop3
Accept: text/html

+---------------------------------------+
| HTML # Generated from STS             |
+---------------------------------------+
| # HTML version of above...            |
| # With POP3 step instead of IMAP step |
|                                       |
:                                       :
'                                       '

Service API

+----------------------
| SVC
+----------------------
|