Skip to content

DPG Contribution Readiness Framework

Shruti Agarwal edited this page Jan 31, 2024 · 6 revisions

DPG Contribution Readiness Framework v1.0

Objective
1 For DPG Builders & Adopters

- Evaluate the readiness of their products to receive high-quality open-source contribution

- Identify best practices that can be incorporated to improve their Contribution Readiness Level.

2 For Open Source Contributors

- Gauge the readiness level of different DPG products to receive quality contribution.

Guidelines for Understanding the Framework
1 The framework comprises 3 categories- (1) Documentation & Code (2) Community Engagement and (3) Project Management
2 Each category has 5 points which are equally valuable, and levels within the category are awarded basis of completion of the number of points within a category
3 Implementing more sub-points within each category will help the product mature on the same, level up & enable quality contribution.
4 The overall level is the lowest level you have achieved within the 3 categories
5 The information listed in brackets under each sup-point is prescriptive and not mandatory. These details should be added depending on their relevance to the DPG.

Evaluation Criteria

# Achievement Criteria (For a Category) Maturity Level
1 Achieved 1/5 criteria within a category Novice
2 Achieved 2/5 criteria(s) within a category Beginner
3 Achieved 3/5 criteria(s) within a category Intermediate
4 Achieved 4/5 criteria(s) within a category Advanced
5 Achieved 5/5 criteria(s) within a category Expert
DPG Contribution Readiness Framework
1 Documentation & Code Benchmark Examples
1.1 Detailed product & code documentation is available

(Product - Hardware, software, libraries, API references, tech skills | Code - tutorials, blogs, videos etc.)

Link
1.2 Product installation steps, description & vision are available as part of ReadMe Link
1.3 Maximum code coverage via comprehensive test cases is available

(It should run effectively via circle CI/GitHub actions etc)

Link
1.4 Readily accessible & functional sandbox environment exists

(via a publically available URL)

Link
1.5 Technical Architecture of the DPG is present with relevant details

( Architecture diagrams, technical specifications, APIs, algorithms, frameworks)

Link
2 Community Engagement
2.1 Planned use cases are listed as issues on the product repository Link
2.2 Good First Issues & contribution guidelines are listed

(contribution process, preferred workflow, coding conventions, testing process, submitting PRs)

Link
2.3 Active contribution management with timely response and closure

(Pull requests should be reviewed & closed within 1-2 weeks with timely feedback/guidance)

Link
2.4 A channel/forum for active communication with contributors should exist

(e.g.: Discord, GitHub, Slack etc.)

Link
2.5 Working Group Meetings/Events with the community with MOM for public access

(scrum calls, roadmap & feature discussions etc. conducted at monthly/quarterly intervals)

Link
3 Project Management
3.1 Use of open licenses to enable usage of relevant libraries & code re-use by adopters Link
3.2 Public project management boards (e.g.: JIRA, GitHub) & public assigning of tickets

(for internal & external team members)

Link
3.3 Issue tickets are being created as per a defined ticket taxonomy

(proper labels, tags & headers to exists | C4GT issue ticket taxonomy can be referred)

Link
3.4 Public product roadmaps at a defined interval made available

(Product goals, milestones, planned features etc.)

Link
3.5 Public release management to ensure a smooth transition between versions

(sharing versioning, release plans, changelogs, upgrade instructions etc)

Link

Dedicated Mentoring Program

C4GT Contribution Sprints

C4GT Bounty projects

Open Community Projects

Augtoberfest

Standards and Frameworks

Clone this wiki locally