Apps

Introduction

Apps is the term that we use for containers of requirements (user stories).  Other tools commonly refer to this as a project.   

Available Commands

GET /apps

GET /apps/{app_id}

GET /apps/{app_id}/requirements

GET /apps/{app_id}/suggested_tests

GET /apps/{app_id}/glossary

GET /apps/{app_id}/trace

POST /apps/{app_id}/requirements

App (singular)

POST /app/

PUT /app{app_id}


List Apps

GET https://api.scopemaster.com/v1/apps

Returns a list of the first 100 apps for which the user (who created the API key) has access. Each app includes meta information under the stats object.

Get an App

GET https://api.scopemaster.com/api/v1/apps/{app_id}  

e.g.

GET https://api.scopemaster.com/api/v1/apps/AP976797889

Returns the app excluding the requirements (user stories)

Example response:

{
	"id": "AP72f6ed657b",
	"lang": "en",
	"title": "Example web shopping cart 6",
	"description": "This is just an example that you can learn with. .",
	"owner_id": "1",
	"org_id": "OR30c8746905",
	"created_utc": "1572969724",
	"updated_utc": "1573230864",
	"access_level": "OWNER",
	"external_project_id":"jira-or-azure-devops-project-id",
	"url": "https://api.scopemaster.com/v1/apps/AP72f6ed657b",
	"requirements_url": "https://api.scopemaster.com/v1/apps/AP72f6ed657b/requirements",
	"stats":{
		"test_count": 132,
		"test_scenario_count": 44,
		"cfp_total_estimate": 74,
		"requirements_count": 12,
		"cfp_total_extrapolated": 81,
		"rtype_nfrs_count": 0,
		"rtype_functionals_count": 12,
		"rtype_tasks_count": 0,
		"rtype_constraints_count": 0,
		"version": "1.8.1",
		"q_ambiguous_count": 1,
		"q_missing_count": 38,
		"q_duplicate_count": 3,
		"q_total_defect_count": 43,
		"q_complex_count": 1,
		"q_score": 56.15833333333333,
		"q_sized_stories": 11
		}
	},
       "permissions": [
         {
            "permission": "OWNER",
            "first_name": "Jim",
            "last_name": "Smith",
            "email": "[email protected]",
            "user_id": "1343",
            "org_id": "OR19bc102f90"
         }
      ]
}

Glossary Arrays (Updated)

GET /apps/{app_id}/glossary

Note this endpoint output has been rationalised and simplified.  Scroll to the bottom to see the previous output.

This will append the glossary (data dictionary) arrays of :

Users

  • Suggested users (ScopeMaster guesses) 
  • Confirmed users (Your confirmed glossary entries) 

Objects

  • Detected functional objects (functional intent detected for this object)
  • Confirmed objects (Your confirmed/glossary entries)
/** Updated output  **/
      
 "users": [
        {
            "name": "user",
            "occurrence_count": 176,
            "confirmed": false
        },
       {
            "name": "client",
            "occurrence_count": 15,
            "confirmed": true,
            "glossary": {
                "id": "GL759ae8b662",
                "word": "client",
                "definition": "customer",
                "created_utc": "1665744488",
                "udpated_utc": "0",
                "user_id": "1"
            }
        },
        {
            "name": "operator",
            "occurrence_count": 67,
            "confirmed": false
        }
    ],
   
    "objects": [
       {
            "name": "enterprise edition",
            "occurrence_count": 1,
            "occurrences": [
                "RQ9ec8efb768"
            ],
            "confirmed": false
        },
        {
            "name": "entity",
            "occurrence_count": 3,
            "occurrences": [
                "RQdef929dda4",
                "RQ833a53cd82",
                "RQ011d0ec261"
            ],
            "confirmed": true,
            "glossary": {
                "id": "GL2a2d6df4cd",
                "word": "entity",
                "definition": "a reusable thing",
                "created_utc": "1665738952",
                "updated_utc": "1665740397",
                "user_id": "1",
                "json": "{\"attributes\":[{\"name\":\"name\",\"datatype\":\"String\"}]}"
            }
        },
    ],

The Stats Sub object

Each app has a stats sub object that contains summary information about the results of the ScopeMaster analysis for all the requirements in the app.

Field Name Description
version
The analysis engine version number.  This affects the rules for determining functional intent (and therefore size) of each story.  This is different from the API version.
requirements_count
The total number of requirements (of all types) in the app
test_count The number of suggested individual test checks.
test_scenario_count
The number of suggested test scenarios (both positive and negative test scenarios)
rtype_functionals_count
The number of requirements marked as functional (default).  Currently only these requirements are analysed and sized.
rtype_nfrs_count
The number of requirements marked as NFR Non functional requirement
rtype_tasks_count
The number of requirements marked as a task
rtype_constraints_count
The number of requirements marked as a project constraint
q_sized_stories
The number of requirements for which functional intent (and therefore size) was detected.
q_ambiguous_count
The number of requirements for which no functional intent was detected. i.e.
q_sized_stories + q_ambiguous_count = rtype_functionals_count
q_missing_count
Suggested number of missing stories based on the CRUD analysis across all the functional requirements.
q_duplicate_count
Suggested number of duplicate stories based on the CRUD analysis across all the functional requirements.
q_complex_count
Suggested number of stories that may be too complicated or too large.
q_total_defect_count
Total number of suggested possible defects in the requirements.
q_score
ScopeMaster's combined weighted score out of 100 for the overall quality of the requirements based on the other q_ values.

Get Requirements

GET https://api.scopemaster.com/api/v1/apps/{app_id}/requirements  

Returns an array of requirements for the given app_id

Example:

[
{
	"app_id": "AP36220daad2",
	"id": "RQfcfade02e0",
	"title": "Add my search term to the search box. ",
	"ref": "MG-342",
	"body": "Add my search term to the search box. Press go to start the search. Display a list of searched products, really fast. Only show products that are in inventory. Create this page in javascript so that it displays very fast. Verify that this can be don",
	"notes": null,
	"external_id": "MG-342",
	"created_utc": "1573059235",
	"updated_utc": "0",
	"cfp": 0,
	"analysis":[],
"links_from": [
        {
            "id": "91",
            "link_type": "RELATES",
            "link_from": "RQ76508350cf",
            "link_to": "RQ9932f1ecc4",
            "label": "menu click"
        }
    ],
    "links_to": [],
    "tags": [
        {
            "tag_id": "TGee69b34767",
            "label": "discuss with customer"
        },
        {
            "tag_id": "TGd00ec1abc9",
            "label": "sprint 1"
        }
    ],
},

{
	"app_id": "AP36220daad2",
	"id": "RQ7a3b4af019",
	"title": "As a [site] editor I can save information",
	"ref": "MG-101",
	"body": "As a [site] editor I can save information in a trainers-only section [so that only trainers see it.]",
	"notes": null,
	"external_id": "MG-101",
	"created_utc": "1573059298",
	"updated_utc": "0",
	"cfp": 0,
	"analysis":[]
}
]

POST App

POST https://api.scopemaster.com/api/v1/app/  

Creates an app (aka project) container. Returns the json object containing the attributes of the created app. title and description are the only required fields, all others are optional. Default language is "en", other allowable values are it, es, pt, fr. Once a language has been set, it may not be changed. Fields beginning "external_" can be used for synchronisation with an external repository.

{

	"title": "Example web shopping cart 6",
	"description": "This is just an example that you can learn with. .",
        "lang":"en",
        "external_project_id":"jira-or-azure-devops-project-id",
        'external_endpoint'=>'https://dev.azure.com/mycompany/',
	'external_api_token_name'=>'a name of a token',
	'external_api_token_value'=>'the_token_value'
}

response will be:

"app":{
        "id": "APxyz123",
	"title": "Example web shopping cart 6",
	"description": "This is just an example that you can learn with. .",
        "lang":"en",
        "external_project_id":"jira-or-azure-devops-project-id",
        "external_endpoint"=>"https://dev.azure.com/mycompany/",
	"external_api_token_name"=>"a name of a token",
	"external_api_token_value"=>"the_token_value",
        "org_id":"OR30c8746905"

}

PUT App

PUT https://api.scopemaster.com/api/v1/app/{app_id}  

Returns the json object containing the updated attributes of a created project container (aka app)


title and description and the four external_xxx are the only fields that may be changed.

{

	"title": "Example web shopping cart 6",
	"description": "This is just an example that you can learn with. .",
        "lang":"en",
        "external_project_id":"jira-or-azure-devops-project-id",
        'external_endpoint'=>'https://dev.azure.com/mycompany/',
	'external_api_token_name'=>'a name of a token',
	'external_api_token_value'=>'the_token_value'
}
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us