Initial commit.

 - qa-tools public release which includes:
    - trace-based coverage tool
    - quality metrics measurement and tracking setup
    - associated in-source documentation.

Signed-off-by: Basil Eljuse <basil.eljuse@arm.com>
diff --git a/quality-metrics/data-generator/tfa_metrics/tfa_defects.py b/quality-metrics/data-generator/tfa_metrics/tfa_defects.py
new file mode 100755
index 0000000..8725909
--- /dev/null
+++ b/quality-metrics/data-generator/tfa_metrics/tfa_defects.py
@@ -0,0 +1,43 @@
+#!/usr/bin/env python3
+
+__copyright__ = """
+/*
+ * Copyright (c) 2020, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ */
+ """
+
+""" tfa_defects.py:
+
+    Retrieves TF-A defects from GitHub
+
+"""
+
+from github import GitHub, ApiError, ApiNotFoundError
+
+try:
+    token = "<GitHub Access Token>"
+    gh = GitHub(access_token=token)
+
+    # Please note that currently 'open' defects are reported
+    # In future, labels='bug' would be used for defect density
+    open_bug_issues = gh.repos(
+        'ARM-software')('tf-issues').issues.get(state='open', labels='bug')
+
+    bugCounter = 0
+
+    TFA_URL = "https://github.com/ARM-software/tf-issues/issues/"
+
+    for issue in open_bug_issues:
+        print("Found open bug with id: %s: %s, %s" %
+              (issue.number, issue.title, issue.state))
+        bugCounter += 1
+
+        print("\t url for this issue is: %s" % (TFA_URL + str(issue.number)))
+
+    print("@@ Total number of open bugs: %d" % (bugCounter))
+
+except ApiNotFoundError as e:
+    print(e, e.request, e.response)