{
  "format": "dataset-manifest/1",
  "slug": "code-quality-and-collaboration-insights",
  "version": 1,
  "seed": "code-quality-and-collaboration-insights:1",
  "spec": {
    "format": "dataset/1",
    "slug": "code-quality-and-collaboration-insights",
    "name": "Code Quality and Collaboration Insights",
    "tagline": "Developer interactions, code quality checks, and plugin usage data from banking software projects.",
    "description": "Developers engage in rigorous software creation and maintenance, driving innovation and security in banking applications. They utilize a variety of tools and plugins to ensure that their code meets high standards of quality and compliance. The developers' interaction with code quality checks, version control records, and plugin usage reveals insights into the efficiency and effectiveness of different coding practices. Frequent adoption of specific plugins highlights preferences and trends among teams, while lesser-used tools may indicate gaps or areas for improvement in the development process.\n\nThe relational structure of this dataset includes several key tables: 'developers' captures individual programmer details and their roles within teams; 'plugins' lists the various tools available for enhancing coding practices; 'code_quality_checks' records outcomes from assessments that evaluate the integrity and security of code; 'version_control' tracks changes and history of code modifications; and 'plugin_usage' provides insights into which tools are being utilized and how frequently. Each row in these tables represents specific data points—individual developers, particular plugins, the results of quality checks, version histories, and instances of plugin interactions. This setup allows for complex queries and analyses, such as identifying which developers prefer certain plugins or correlating code quality outcomes with specific tools.\n\nThe dataset answers critical questions about development efficiency, tool effectiveness, and best practices within the banking sector's software development landscape. It serves as an excellent resource for practicing data analysis, providing opportunities to explore relationships between tools and developer performance. While the data offers rich insights, it's important to note that it is synthetic, designed specifically for educational purposes to help developers enhance their analytical skills.",
    "domain": "banking",
    "shape": "slowly-changing",
    "useCases": [
      "etl-pipelines",
      "teaching"
    ],
    "keywords": [
      "code quality",
      "developer collaboration",
      "banking software",
      "plugins",
      "version control",
      "coding practices"
    ],
    "locale": "en",
    "license": "CC0-1.0",
    "version": 1,
    "tables": {
      "developers": {
        "description": "This table captures details about the developers, including their unique identifiers and roles within the team. Each developer's record links to their activities and the tools they utilize.",
        "rows": 50,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each developer."
          },
          "full_name": {
            "kind": "fullName",
            "description": "The full name of the developer."
          },
          "role": {
            "kind": "enum",
            "values": [
              "frontend",
              "backend",
              "fullstack",
              "qa"
            ],
            "description": "The role of the developer within the team."
          },
          "email": {
            "kind": "email",
            "from": "full_name",
            "description": "The email address of the developer.",
            "nullable": true
          }
        }
      },
      "plugins": {
        "description": "This table lists the plugins available for the development environment, detailing their functionalities and usage patterns among developers.",
        "rows": 30,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each plugin."
          },
          "name": {
            "kind": "productName",
            "description": "The name of the plugin."
          },
          "description": {
            "kind": "sentence",
            "description": "A brief description of the plugin's functionality.",
            "nullable": true
          }
        }
      },
      "code_quality_checks": {
        "description": "This table records the code quality checks performed by developers, linking back to the developers and the plugins used during these checks.",
        "rows": 150,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each code quality check."
          },
          "developer_id": {
            "kind": "fk",
            "ref": "developers.id",
            "description": "Reference to the developer who performed the check."
          },
          "plugin_id": {
            "kind": "fk",
            "ref": "plugins.id",
            "description": "Reference to the plugin used for the quality check."
          },
          "check_date": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "The date when the quality check was performed.",
            "nullable": true,
            "when": {
              "column": "result",
              "in": [
                "fail"
              ]
            },
            "dayProfile": "business"
          },
          "result": {
            "kind": "enum",
            "values": [
              "pass",
              "fail"
            ],
            "description": "The outcome of the quality check."
          }
        }
      },
      "version_control": {
        "description": "This table encompasses records of version control events, showing how developers manage their code repositories and collaborate.",
        "rows": 200,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each version control record."
          },
          "developer_id": {
            "kind": "fk",
            "ref": "developers.id",
            "description": "Reference to the developer who made the commit."
          },
          "commit_message": {
            "kind": "sentence",
            "description": "The message associated with the commit.",
            "nullable": true
          },
          "commit_date": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "The date when the commit was made.",
            "dayProfile": "waking",
            "trend": "growing"
          }
        }
      },
      "plugin_usage": {
        "description": "This table tracks the usage of plugins by developers over time, highlighting trends in plugin adoption and popularity.",
        "rows": 100,
        "columns": {
          "id": {
            "kind": "pk",
            "description": "Unique identifier for each plugin usage record."
          },
          "developer_id": {
            "kind": "fk",
            "ref": "developers.id",
            "description": "Reference to the developer using the plugin."
          },
          "plugin_id": {
            "kind": "fk",
            "ref": "plugins.id",
            "description": "Reference to the plugin being used."
          },
          "usage_date": {
            "kind": "datetime",
            "from": "2023-01-01",
            "to": "2023-12-31",
            "description": "The date when the plugin was used.",
            "dayProfile": "business"
          },
          "usage_duration": {
            "kind": "int",
            "min": 1,
            "max": 120,
            "description": "Duration of plugin usage in minutes."
          }
        }
      }
    },
    "structure": "multi-table",
    "traits": [
      "timestamped",
      "categorical",
      "nullable"
    ],
    "analysisQuestions": [
      "Which plugins are most frequently used by developers?",
      "What is the average duration of plugin usage among developers?",
      "How do code quality check results vary by developer role?",
      "What trends can be observed in version control commits over time?",
      "How does the frequency of code quality checks correlate with plugin usage?"
    ],
    "suggestedQueries": [
      {
        "title": "Join Developers with Code Quality Checks",
        "sql": "SELECT d.full_name, c.check_date, c.result FROM developers d JOIN code_quality_checks c ON d.id = c.developer_id;",
        "dialect": "postgres"
      },
      {
        "title": "Count of Code Quality Check Results by Developer Role",
        "sql": "SELECT d.role, COUNT(c.result) AS total_checks, COUNT(CASE WHEN c.result = 'fail' THEN 1 END) AS failed_checks FROM developers d JOIN code_quality_checks c ON d.id = c.developer_id GROUP BY d.role;",
        "dialect": "postgres"
      },
      {
        "title": "Average Plugin Usage Duration by Developer",
        "sql": "SELECT d.full_name, AVG(pu.usage_duration) AS avg_duration FROM developers d JOIN plugin_usage pu ON d.id = pu.developer_id GROUP BY d.full_name;",
        "dialect": "postgres"
      },
      {
        "title": "Trends in Version Control Commits Over Time",
        "sql": "SELECT DATE(v.commit_date) AS commit_day, COUNT(v.id) AS total_commits FROM version_control v GROUP BY commit_day ORDER BY commit_day;",
        "dialect": "postgres"
      }
    ],
    "usageScenarios": [
      {
        "title": "Data Analysts in Banking",
        "body": "Data analysts in banking can utilize this dataset to analyze the effectiveness of different code quality checks and how they correlate with the developers' roles. By examining plugin usage patterns, they can identify which tools are most beneficial for enhancing code quality."
      },
      {
        "title": "Software Development Instructors",
        "body": "Instructors teaching software development can use this dataset to illustrate the importance of code quality and collaboration. They can create exercises that involve querying the dataset to extract insights about best practices in plugin usage and version control."
      },
      {
        "title": "ETL Pipeline Developers",
        "body": "ETL pipeline developers can leverage this dataset to design and implement data pipelines that extract, transform, and load information about code quality checks and developer interactions into a centralized data warehouse for further analysis."
      }
    ]
  },
  "counts": {
    "developers": 50,
    "plugins": 30,
    "code_quality_checks": 150,
    "plugin_usage": 100,
    "version_control": 200
  },
  "stats": {
    "developers": {
      "rows": 50,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 50,
          "min": 1,
          "max": 50
        },
        "full_name": {
          "nulls": 0,
          "distinct": 50,
          "min": "Amir Ali",
          "max": "Zara Wagner"
        },
        "role": {
          "nulls": 0,
          "distinct": 4,
          "min": "backend",
          "max": "qa"
        },
        "email": {
          "nulls": 2,
          "distinct": 48
        }
      }
    },
    "plugins": {
      "rows": 30,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "name": {
          "nulls": 0,
          "distinct": 29,
          "min": "Classic Kettle",
          "max": "Wireless Umbrella"
        },
        "description": {
          "nulls": 2,
          "distinct": 28
        }
      }
    },
    "code_quality_checks": {
      "rows": 150,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 150,
          "min": 1,
          "max": 150
        },
        "developer_id": {
          "nulls": 0,
          "distinct": 47,
          "min": 1,
          "max": 50
        },
        "plugin_id": {
          "nulls": 0,
          "distinct": 30,
          "min": 1,
          "max": 30
        },
        "check_date": {
          "nulls": 80,
          "distinct": 70,
          "min": "2023-01-02 13:16:48",
          "max": "2023-12-24 11:26:09"
        },
        "result": {
          "nulls": 0,
          "distinct": 2,
          "min": "fail",
          "max": "pass"
        }
      }
    },
    "version_control": {
      "rows": 200,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 200,
          "min": 1,
          "max": 200
        },
        "developer_id": {
          "nulls": 0,
          "distinct": 48,
          "min": 1,
          "max": 50
        },
        "commit_message": {
          "nulls": 16,
          "distinct": 183
        },
        "commit_date": {
          "nulls": 0,
          "distinct": 200,
          "min": "2023-01-06 07:44:49",
          "max": "2023-12-31 17:25:31"
        }
      }
    },
    "plugin_usage": {
      "rows": 100,
      "columns": {
        "id": {
          "nulls": 0,
          "distinct": 100,
          "min": 1,
          "max": 100
        },
        "developer_id": {
          "nulls": 0,
          "distinct": 43,
          "min": 1,
          "max": 50
        },
        "plugin_id": {
          "nulls": 0,
          "distinct": 29,
          "min": 1,
          "max": 30
        },
        "usage_date": {
          "nulls": 0,
          "distinct": 100,
          "min": "2023-01-03 14:28:49",
          "max": "2023-12-31 13:58:43"
        },
        "usage_duration": {
          "nulls": 0,
          "distinct": 71,
          "min": 2,
          "max": 120
        }
      }
    }
  },
  "artifacts": [
    {
      "file": "csv/developers.csv",
      "format": "csv",
      "table": "developers",
      "key": "datasets/code-quality-and-collaboration-insights/v1/csv/developers.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/csv/developers.csv",
      "bytes": 2343,
      "sha256": "6614445bd9cacedf1611ee2c5382e0bcde1952ac31fb2008a1c47dd4d34cddde",
      "rows": 50,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/plugins.csv",
      "format": "csv",
      "table": "plugins",
      "key": "datasets/code-quality-and-collaboration-insights/v1/csv/plugins.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/csv/plugins.csv",
      "bytes": 2194,
      "sha256": "add1ad04329540186f63158c60d1e3777c94e562bda8b8b409792c47ef134836",
      "rows": 30,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/code_quality_checks.csv",
      "format": "csv",
      "table": "code_quality_checks",
      "key": "datasets/code-quality-and-collaboration-insights/v1/csv/code_quality_checks.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/csv/code_quality_checks.csv",
      "bytes": 3742,
      "sha256": "316d5c39708e54763cdf85e3519e520ff64e2b3a46a151a8c4751ee33a37d194",
      "rows": 150,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/plugin_usage.csv",
      "format": "csv",
      "table": "plugin_usage",
      "key": "datasets/code-quality-and-collaboration-insights/v1/csv/plugin_usage.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/csv/plugin_usage.csv",
      "bytes": 3313,
      "sha256": "9bda3d161ad98a41505e9bf2dafdb04ce159bc5a6022f67aa101a74176b22b60",
      "rows": 100,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "csv/version_control.csv",
      "format": "csv",
      "table": "version_control",
      "key": "datasets/code-quality-and-collaboration-insights/v1/csv/version_control.csv",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/csv/version_control.csv",
      "bytes": 15943,
      "sha256": "c84dbd021e88626399281e13d0d43c137ffa1252bdc8a80a06c96a867cc95c78",
      "rows": 200,
      "contentType": "text/csv; charset=utf-8"
    },
    {
      "file": "code-quality-and-collaboration-insights.json",
      "format": "json",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/code-quality-and-collaboration-insights.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/code-quality-and-collaboration-insights.json",
      "bytes": 81035,
      "sha256": "6aece9454a1447a8ea1eaf138539a249049d877eff63d73a907485c9e3c6fad6",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    },
    {
      "file": "sql/postgres.sql",
      "format": "sql-postgres",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/sql/postgres.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/sql/postgres.sql",
      "bytes": 37465,
      "sha256": "dfe89fa802eaf7c283967b24ebdfb42ef2a92ac3d9cae08d3936591a5e3e272a",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mysql.sql",
      "format": "sql-mysql",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/sql/mysql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/sql/mysql.sql",
      "bytes": 36861,
      "sha256": "7d6a8e79315963d37d93e32c4db619e1ab44b5b4e6af742609b9b9351a39acb8",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/mssql.sql",
      "format": "sql-mssql",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/sql/mssql.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/sql/mssql.sql",
      "bytes": 38148,
      "sha256": "0239fd48f32415019d4ad50c324f42dc18c4512fa9cb3e2cbd72cd7717390041",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "sql/sqlite.sql",
      "format": "sql-sqlite",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/sql/sqlite.sql",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/sql/sqlite.sql",
      "bytes": 36573,
      "sha256": "e50e5c6ce3b04c7be2af3ffc3f9fc074fd8aef6d4d9a0d9c8232622f43e67f1e",
      "rows": null,
      "contentType": "application/sql; charset=utf-8"
    },
    {
      "file": "prisma/seed.ts",
      "format": "prisma-seed",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/prisma/seed.ts",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/prisma/seed.ts",
      "bytes": 69470,
      "sha256": "85c70ed70203ea5e5c50824f1f1766dea2e9c486a4aee7fc14f299d9f597ebdb",
      "rows": null,
      "contentType": "application/typescript; charset=utf-8"
    },
    {
      "file": "django/fixtures.json",
      "format": "django-fixture",
      "table": null,
      "key": "datasets/code-quality-and-collaboration-insights/v1/django/fixtures.json",
      "url": "https://database-sample-website.s3.eu-north-1.amazonaws.com/datasets/code-quality-and-collaboration-insights/v1/django/fixtures.json",
      "bytes": 105722,
      "sha256": "14741dc514909485a62dba72d1105badea0e5ad0455bca4fe08e1111ddb48105",
      "rows": null,
      "contentType": "application/json; charset=utf-8"
    }
  ],
  "publishedAt": 1788766247647,
  "updatedAt": 1788766247647
}
