【Shopee】Knowledge

PRD

PRD(Product Requirement Document),即产品需求文档,是产品开发过程中的核心文档,用于将商业目标、市场需求转化为具体可执行的产品功能和技术规范。以下是其关键要点:

📄 一、定义与定位

  1. 核心作用

    PRD是产品从“概念化”转向“图纸化”的关键文档,承接商业需求文档(BRD)和市场需求文档(MRD),用专业语言描述产品的功能细节、交互逻辑及技术指标。

    • 承上启下:继承BRD的商业目标和MRD的市场分析,转化为开发团队可落地的需求说明书。

⚙️ 二、作用与价值

  1. 统一团队认知

    • 为开发、测试、设计、运营等部门提供明确的产品蓝图,确保各方对功能实现的理解一致。
  2. 降低开发风险

    • 通过详细定义功能逻辑、边界条件和异常处理,减少开发偏差和后期返工。
  3. 支撑项目流程

    • 开发依据PRD拆分任务,测试据此编写用例,交互设计师基于其设计用户流程。

📋 三、核心内容(PRD文档结构)

PRD通常包含以下模块,需兼顾全面性与细节:

模块内容说明示例
文档概述版本记录、作者、修订历史版本号v1.0,修订时间2025-06-05
产品目标项目背景、商业痛点、预期目标解决用户注册流程分散问题
用户与场景用户角色画像、使用场景普通用户、管理员、访客
功能清单功能列表、优先级(Must/Should/Could)用户注册(高)、第三方登录(中)
流程图与交互业务流程、页面交互逻辑、原型图注册流程图、错误提示规则
非功能需求性能、安全、兼容性要求响应时间≤1.5s,支持Chrome/Firefox
异常处理错误码、异常状态说明E01:验证码错误(10001)
数据与埋点数据结构、监控指标用户表字段、登录埋点事件

(完整模板可参考)

🔗 四、与其他文档的关系

  • BRD(商业需求文档):面向决策层,论证产品商业价值(市场潜力、盈利模式)。
  • MRD(市场需求文档):分析用户需求与市场定位,指导产品设计方向。
  • PRD:聚焦技术实现,将前两者转化为开发语言。三者关系可概括为: ​BRD(为什么做)→ MRD(为谁做)→ PRD(怎么做)​

💡 五、撰写建议

  • 工具支持:使用原型工具(如即时设计)搭配流程图工具,实现交互逻辑可视化。
  • 评审机制:需经开发、测试、设计多部门评审,确保需求无歧义。
  • 模块化拆分:大型产品可按功能模块拆分为子PRD,便于迭代管理。

三文档对比速览

类型定义核心目的主要受众内容重点关键输出
BRD商业需求文档证明产品商业价值可行性决策层、投资者市场分析、盈利模式、风险评估商业模型、财务预测
MRD市场需求文档定义产品市场定位与用户需求产品经理、市场团队用户画像、竞品分析、功能规划用户调研、市场策略
PRD产品需求文档提供技术实现规格说明开发、测试、设计师功能细节、交互逻辑、数据规则原型图、用例描述、接口文档

总结

PRD是产品落地的“心脏”🫀,将战略转化为可执行的战术,其质量直接影响开发效率和产品成功率。撰写时需平衡商业目标与技术细节,确保每个功能描述清晰、可测试、无二义性。

SSH Key

SSH Key(Secure Shell Key)是一种基于非对称加密技术的身份验证机制,主要用于安全地远程登录服务器、执行命令或传输文件,而无需输入密码。以下是其核心要点:

🔐 一、基本概念

  1. 密钥对组成
    • 私钥(Private Key):存储在用户本地设备(如个人电脑),必须严格保密,权限通常设置为600(仅所有者可读写)。
    • 公钥(Public Key):可公开分享,需上传到目标服务器的~/.ssh/authorized_keys文件中,用于验证私钥持有者的身份。
  2. 认证原理
    • 当用户通过SSH连接服务器时,服务器用公钥加密随机字符串发送给客户端。
    • 客户端用私钥解密后传回字符串,服务器验证成功则允许登录。全程无需传输密码,安全性更高。

⚙️ 二、核心用途

  • 免密远程登录:适用于服务器管理、批量运维等场景。
  • 自动化操作:在CI/CD流程、脚本任务中自动执行远程命令或文件传输(如scp/rsync)。
  • 版本控制认证:Git等系统通过SSH Key安全推送/拉取代码。

🛠️ 三、生成与配置步骤

  1. 生成密钥对(以Linux/macOS为例):

    ssh-keygen -t ed25519 -C "your_email@example.com"  # 推荐ED25519算法
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"  # 或使用4096位RSA
    
    • -t指定算法(ED25519更安全高效,RSA兼容性更好)。
    • 生成文件默认路径:~/.ssh/id_ed25519(私钥)和~/.ssh/id_ed25519.pub(公钥)。
  2. 部署公钥到服务器

    ssh-copy-id user@remote_host  # 自动追加公钥至远程服务器的authorized_keys
    

    或手动复制公钥内容到服务器~/.ssh/authorized_keys

⚠️ 四、安全注意事项

  1. 私钥保护
    • 设置强密码(passphrase)加密私钥,即使文件泄露也无法直接使用。
    • 禁止共享私钥,权限需严格限制(chmod 600 ~/.ssh/id_rsa)。
  2. 服务器配置加固
    • 禁用密码登录:编辑/etc/ssh/sshd_config,设置 PasswordAuthentication no
    • 定期审计authorized_keys文件,移除未授权公钥。
  3. 算法与密钥强度
    • 避免使用弱算法(如1024位RSA),推荐2048位以上RSA或ED25519。

🔄 五、与传统密码登录对比

特性SSH Key认证密码认证
安全性抗暴力破解(私钥不传输)易受暴力破解/中间人攻击
便捷性免密登录,适合自动化需每次输入密码
管理成本可多密钥对管理不同服务需定期更新密码

💎 总结

SSH Key通过非对称加密机制,在保障安全的前提下简化远程操作流程,是服务器管理、自动化部署及代码协作的基础工具。其安全性高度依赖私钥的保密性和配置规范性,合理使用可显著降低系统风险。

Licensed under CC BY-NC-SA 4.0
Last updated on Oct 13, 2025 00:17 CST
comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy