S stands for Services
Every web app needs a backend - to provide data, and for saving state. In the world of SAS, this is provided either by Stored Processes (in v9) or Job Execution Services (Viya).
By placing all services in a 2 level folder structure, backend permissions can be enforced at both app and role level.
Services are defined in terms of inputs / outputs. Data in, data out. The beauty of the 4GL language of SAS, means your backend (data) logic is very understandable - and hence, maintainable!
They are also innately testable - it's easy to "mocha" up a test harness in any number of frameworks and apply assertions to the response JSON.
Back to R Forward to T