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

Open Community Projects

Standards and Frameworks

Clone this wiki locally