Skip to content

Instantly share code, notes, and snippets.

@Candicepan
Last active October 14, 2022 06:40
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Candicepan/87a95e5fc22fc202b74c2fba757b5bac to your computer and use it in GitHub Desktop.
Save Candicepan/87a95e5fc22fc202b74c2fba757b5bac to your computer and use it in GitHub Desktop.
TiDB Hackathon 2022 RFC Template

TiDB Hackathon 2022 RFC 模板,本文档提供了中英文格式,如下:

为什么要写设计文档

设计文档展现了一个项目的实施方案,可以帮助阅读者更快了解项目的设计思路。

* 标为必填项

*设计文档模板

  • 团队名称:团队登记表中团队名称
  • 作者:列出项目团队所有成员名字
  • 项目进展:如有拆分好的 PR 或 issue 可以列出链接

项目介绍

一段简单的介绍即可,帮助文档阅读者了解设计文档的简要信息。

背景&动机

这个设计文件的背景和所要解决的问题是什么?它支持哪些用例?

这部分不需要太多细节,但必须写明项目的动机或背景。写清楚项目的需求从何而来、项目本身解决了什么问题。

项目设计

这一部分可以对设计进行详细的解释;合理清楚地说明该功能将如何实现,通过实例剖析案例,如何使用功能等。

  • 应用组:应用本身的架构设计,以及使用 TiDB 的具体功能解决了什么问题
  • TiDB 产品组:说明主要想要实现/完善/改进 TiBD 的什么功能,会如何进行实现

这部分可以描述关键算法的伪代码,API 接口,UML 图等,以及还会修改哪些组件。

设计文档讲解视频(可选)

可以录制简单的设计文档讲解视频,辅助评委对项目有更清晰的理解。

Why write a Request for Comment (RFC)

An RFC shows a project's implementation plan. It helps readers quickly understand the project's design idea.

* indicates required

*RFC template

  • Team name: Team name in the registration form

  • Authors: Names of all team members

  • Project process: If you have sub-pull requests or sub-issues, list their links here.

Project description

A brief introduction that helps readers understand your RFC

Background & motivation

What's the background of your design? What's the problem you're trying to solve? What use cases does your project support?

This section doesn't need much detail, but you must introduce your project's motivation or background. You need to tell readers where your project's requirements come from and what problem your project solves.

Project design

Give a detailed explanation of your design, including your application's architectural design and what problem you want to solve by using TiDB's feature. Explain how you'll implement your design, analyze cases using examples, and introduce how to use your feature.

You can write pseudocode of the important algorithms, API interfaces, UML diagrams, and components you'll modify.

An RFC explanation video (optional)

You can record a short RFC explanation video to let judges have a better understanding of your project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment