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(args) # generate a number of STS from a STM
| # * 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
+----------------------
|