Skip to content

1. Standards & Development Process Flow

Ulrond edited this page Dec 20, 2024 · 32 revisions

Overview

This document serves as a comprehensive guide and resource center for software development within the RDKCentral org, covering a wide range of topics from coding standards and testing methodologies to frequently asked questions and specific technology overviews.

Here's a breakdown of the content:

  • Standards & Best Practices: This section provides detailed guidelines on coding standards, documentation practices, branching strategies, and interface development, ensuring consistency and quality across projects.
  • Testing Methodologies: It outlines various testing levels and frameworks, including Test-Driven Development (TDD) and system interface testing, emphasizing the importance of robust testing in the development life-cycle.
  • Code Examples & Advanced Topics: This section offers practical code examples for dynamic library loading and plugin development, and delves into advanced concepts like virtual device development and control plane overviews.
  • FAQ & Troubleshooting: A comprehensive FAQ section addresses common challenges and questions related to Git workflows, Vagrant setup, C macros, testing techniques, and RDK-specific tools.
  • Technology Overviews: Provides concise explanations of key technologies and frameworks used within the organization, such as the UT-Core framework and RDK Docker tool-chain.

By centralizing this information, the document aims to streamline development processes, reduce on boarding time for new developers, and promote best practices across the organization.

1.0 Getting Started with Contribution

To contribute to the RDK, you'll need to choose a delivery model:

RDK Central Partners: If you're an RDK Central partner, you might be eligible to contribute as a Tier 1 developer. Please contact [RDK Support Team](mailto:[email protected]) to confirm your eligibility.

1.1 Coding Standards: Useful reading on coding standards

This section offers resources and guidelines on coding standards, including recommended reading, issue/milestone descriptions, commit message conventions, and semantic versioning.

2. General Information

This section provides general information on key topics like documentation standards, branching strategies, interface modification procedures, and repository access policies.

3. Testing

This section outlines testing standards and best practices, covering various levels and types of testing, including TDD and system interface testing.

4. Code Examples

This section provides code examples demonstrating key standards like dynamic library loading and plugin implementation.

5. Virtual Device

This section provides an overview of the virtual device (vDevice) and its control plane.

6. Training Material

This section provides resources to help you get started with contributing to the project.

Currently available training:

7. FAQ

The FAQ section provides quick answers to common questions, saving users time and effort. Organized by topic, it offers easy access to essential information.

Clone this wiki locally