开发文档如何编写,项目开发文档编写

首页 > 实用技巧 > 作者:YD1662024-03-04 02:58:42

前言

对于如何让技术人员写好开发文档,这是一个很常见的问题。

本次不过多分享理论,而是通过分享我们团队新成员编写的第一份真正的开发文档,作为成例,给大家参考和借鉴。

对于新人,一开始就明确高标准、提高专业要求,是很有价值的。

需求背景

有一天,有位YesDev的企业客户和我们提到:“黄总, 上次说的客户管理的流程下,手工选择发送【反馈信息】,方式为短信,企业微信,钉钉,邮件。 四种方式的配置信息和客户管理进行 关联配置。 发送后有发送记录可以进行管理,检索和导出。 发送内容可以根据需求自动生成。 其中短信可以进行模板管理和分配,短信发送接口配置(建议阿里云短信)。”

于是,我们产品经理整理并设计了以下的产品方案和PRD。

开发文档如何编写,项目开发文档编写(1)

以下,则是对应的技术开发人员在完整需求开发的同时,编写整理的开发文档。内容包含:开发分支、单元测试、SQL数据库变更、核心流程的时序图、新增的API接口、单元测试覆盖率报告、新增的配置文件等。

使用的研发协同工具

YesDev,一款更友好的研发协同工具。

开发文档成例分享需求背景

用户需要一个可以管理自己客户及客户联系人的功能,并且在需求需要反馈时,可以选择发短信或者邮件进行通知

仓库地址

https://codeup.aliyun.com/xxxxxxx/yesinew/yesinew_www.git 使用的是codeup云效。后端开发分支

mxh_test实现思路

  1. 用户需要可以配置短信和邮箱服务的后台录入功能
  2. 用户需要进行客户名单的管理,包括但不限于客户分组、客户管理、客户联系人等功能,并且对以上的功能可添加、编辑、删除以及查看
  3. 前端需增加反馈功能模块,用户可以获取录好的客户名单,进行邮件/短信通知,并且记录反馈通知信息
  4. 用户可以查看某个需求的发送给客户的反馈列表,也可以在企业管理后台,进行发送反馈记录的查看和导出记录
新增接口(基于PhalApi开源接口框架)修改的接口文件变更(基于PhalApi开源接口框架)

config/sms.php | 22 data/phalapi_pro.sql | 101 src/app/Common/Api.php | 17 - src/base/Common/Sms.php | 70 src/base/Common/ToolUtil.php | 67 src/base/Common/UrlUtil.php | 5 src/base/Domain/AppSms.php | 73 src/base/Domain/Base.php | 8 - src/base/Domain/Customer.php | 348 ---- src/base/Domain/CustomerFeedback.php | 350 src/base/Domain/Notes.php | 11 - src/base/Domain/Sms.php | 2 - src/base/Domain/SmsConfig.php | 243 src/base/Model/Customer.php | 5 - src/base/Model/CustomerContacts.php | 5 - src/base/Model/CustomerFeedback.php | 72 src/base/Model/CustomerGroup.php | 6 - src/base/Model/SmsConfig.php | 11 src/base/Model/SmsTemplate.php | 11 src/platform/Api/AppSiteConfig/AppSiteConfig.php | 6 - src/platform/Api/Customer/Customer.php | 218 - src/platform/Api/Customer/Feedback.php | 150 src/platform/Api/Notes.php | 11 - src/platform/Api/Sms/Sms.php | 184 数据库变更(使用MySQL数据库)

DROP TABLE IF EXISTS `pp_sms_config`; CREATE TABLE `pp_sms_config` ( `id` int(11) NOT NULL AUTO_INCREMENT, `access_key` varchar(255) NOT NULL DEFAULT '' COMMENT '短信服务商的access_key', `access_secret` varchar(255) NOT NULL DEFAULT '' COMMENT '短信服务商的access_secret', `config_status` tinyint(2) NOT NULL DEFAULT 0 COMMENT '邮箱状态:1-开启 0-关闭', `admin_id` int(11) NOT NULL DEFAULT '0' COMMENT '管理员ID', `add_time` datetime DEFAULT NULL COMMENT '创建时间', `app_key` varchar(100) NOT NULL DEFAULT '公司标识', `created_staff_id` int(11) NOT NULL DEFAULT '0' COMMENT '创建员工ID', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT = '短信配置表'; DROP TABLE IF EXISTS `pp_sms_template`; CREATE TABLE `pp_sms_template` ( `id` int(11) NOT NULL AUTO_INCREMENT, `sms_sign` varchar(255) NOT NULL DEFAULT '' COMMENT '短信签名', `template_code` varchar(255) NOT NULL DEFAULT '' COMMENT '短信模板Code', `template_detail` text COMMENT '短信模板详情', `template_status` tinyint(2) NOT NULL DEFAULT 0 COMMENT '邮箱状态:1-开启 0-关闭', `admin_id` int(11) NOT NULL DEFAULT '0' COMMENT '管理员ID', `add_time` datetime DEFAULT NULL, `app_key` varchar(100) NOT NULL DEFAULT '', `created_staff_id` int(11) NOT NULL DEFAULT '0' COMMENT '员工ID', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT = '短信模板表'; DROP TABLE IF EXISTS `pp_customer_group`; CREATE TABLE `pp_customer_group` ( `id` int(11) NOT NULL AUTO_INCREMENT, `group_name` varchar(100) NOT NULL DEFAULT '' COMMENT '分组名称', `customer_num` int(10) NOT NULL DEFAULT 0 COMMENT '分组下的客户人数(冗余)', `admin_id` int(11) NOT NULL DEFAULT '0' COMMENT '管理员ID', `add_time` datetime DEFAULT NULL COMMENT '创建时间', `app_key` varchar(100) NOT NULL DEFAULT '公司标识', `created_staff_id` int(11) NOT NULL DEFAULT '0' COMMENT '员工ID', PRIMARY KEY (`id`) )ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT = '客户分组表'; DROP TABLE IF EXISTS `pp_customer`; CREATE TABLE `pp_customer` ( `id` int(11) NOT NULL AUTO_INCREMENT, `customer_name` varchar(255) NOT NULL DEFAULT '' COMMENT '客户名称', `customer_level` varchar(20) NOT NULL DEFAULT 'A' COMMENT '客户等级,A-E', `group_id` int(10) NOT NULL DEFAULT 0 COMMENT '分组ID', `feedback_num` int(10) NOT NULL DEFAULT 0 COMMENT '反馈次数(冗余)', `customer_status` tinyint(1) NOT NULL DEFAULT 1 COMMENT '客户状态:1-开启 0-隐藏', `customer_remark` text COMMENT '客户备注', `admin_id` int(11) NOT NULL DEFAULT '0' COMMENT '管理员ID', `add_time` datetime DEFAULT NULL COMMENT '创建时间', `app_key` varchar(100) NOT NULL DEFAULT '公司标识', `created_staff_id` int(11) NOT NULL DEFAULT '0' COMMENT '员工ID', PRIMARY KEY (`id`) )ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT = '客户表'; 注意事项

  1. 新增了./config/sms.php,

第71行 ./config/sms*.php

  1. 新增模块客户反馈,需要在两个表配置权限

INSERT INTO `pp_operation`(`id`, `project`, `path`, `title`, `white_list`) VALUES (440, 'platform', '/customer', '主模块 - 客户管理', NULL); INSERT INTO `pp_operation`(`id`, `project`, `path`, `title`, `white_list`) VALUES (441, 'platform', '/customer/list', '客户管理模块 - 客户列表', NULL); INSERT INTO `pp_operation`(`id`, `project`, `path`, `title`, `white_list`) VALUES (442, 'platform', '/customer/detail', '客户管理模块 - 客户详情', NULL); INSERT INTO `pp_operation`(`id`, `project`, `path`, `title`, `white_list`) VALUES (443, 'platform', '/customer/feedback', '客户管理模块 - 客户反馈记录', NULL); INSERT INTO `pp_operation`(`id`, `project`, `path`, `title`, `white_list`) VALUES (444, 'platform', '/service-config/sms', '服务配置 - 短信服务配置', NULL);单元测试(使用PHPUnit)

开发文档如何编写,项目开发文档编写(2)

开发文档如何编写,项目开发文档编写(3)

开发文档如何编写,项目开发文档编写(4)

首页 123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.