本文目录一览

1,设计文档怎么写

1.设计目的:求素数素数就是仅能衩1和它自身整除的整数。判定一个整数n是否为素数就是要判定整数n能否被除1和它自身之外的任意整数整除,若都不能整除,则n为素数。程序设计时i可以从2开始,到该整数n的1/2为止,用i依次去除需要判定的整数,只要存在可以整除该数的情况,即可确定要判断的整数不是素数,否则是素数。2.参数设置:(1)范围:1000以内(2)3.设计步骤:(1)编程、调试实现设计要求(2)运行,观察显示结果(3)验算4.操作方法:(1)(2)5.预期结果:显示1-1000内的所有素数//求素数#include<stdio.h>void main() int i,j,sum=0; for(i=2;i<=1000;i++) for(j=2;j<i;j++) if(i%j==0) break; if(i==j) printf("%5d",i); }}

设计文档怎么写

2,如何写好项目方案设计文档

事实上,撰写项目规划和设计文档,最重要的不是文档的模版和格式,而是里面的具体内容,它往往需要结合实际客观环境因素来综合考虑,平衡取舍,是一个需要充分脑力活动的工作。尽管如此,在大多数情况下,还是有一些相对通用的指导原则可以帮助我们更好的完成这项工作。 首先,需要有明确项目背景,目标,以及核心需求分析 换句话说,就是这个项目从产品或业务的角度,最核心的推动力是什么?再换句话说,痛点是什么? 有痛点自然就有目标,你希望项目最终以什么方式解决问题,能达成什么目标。 背景和目标的阐述,必须要能够自然合理的推导出下一部分内容:项目的核心需求/功能是什么。 如果项目背景,目标的描述不能起到这个作用,那这一节内容就没写好,因为项目方案文档就缺乏了根本的出发点,后续的内容都没有了好坏对错判断的基本依据。 举个例子,如果我想构建一个数据交换服务或ETL系统,那么上述各环节的内容可能是(简化的写): 背景 : 当前数据ETL链路极端难用,效率低下,稳定性差,维护代价高,用户抱怨多等等。 目标 : 用户全自助,简单易用;可维护性好;性能高;可靠性好。 核心需求 : 比如针对“用户全自助,简单易用”这点(其它目标可以类似分析推理),可能是: 提供统一的,标准化的配置后台:用配置的形式表达ETL业务语意,屏蔽下层实现细节。 提供完善的错误反馈信息/机制:让用户能自助解决使用中遇到的问题。 ETL业务流程标准化:将最佳实践沉淀下来,通过配置的方式让用户选择,减少重复工作,降低用户开发的难度,规避使用姿势错误可能造成的问题。 其次,需要对现状和问题进行充分的收集和分析 从方案文档的角度来说,放在这里,是为了进一步细化问题,分析目标,核心需求与当前现状的差距在哪里,具体有哪些实际问题需要解决。为后续具体的实现方案,准备必要的输入信息,确定工作的优先级,重要性,项目迭代的步骤等等。 需要强调的是,现状和问题分析,要围绕前面的核心需求的条目展开,两者是强关联的,不要相互脱节,各讲各的 最后,是输出解决方案 定完需求目标,分析完问题和现状,接下来才是规划具体做什么,怎么做,什么时候做 做什么: 做什么和前面项目目标的要求刚好截然相反,需要输出明确的可执行的事项,而不是模糊的不可执行的要求。 具体做的每一件事情,都要和前面的核心需求和现状问题对应上。如果你发现有些工作,和前面的目标没有任何关联性,那么考虑一下目标是否需要再评估调整,或者这件事情根本就是不重要的。 要做的事项列表,是一个经过归纳思考以后的总结,而不只是一个个零散的事情的随机列表。需要有重点和优先级。如果有必要,以归类,分组等形式结构化的组织相关联的事项。 完整的事项列表,应该是一个和最终目标对应的完整解决方案,而不仅仅只是完成目标工作中的某一个环节。 比如面向用户的终端产品项目,需要包括整个产品的交互逻辑,业务流程的规范设计等等,而不仅仅是对底层系统实现和后台功能点的设计。 这点很多同学也很容易忽略,总觉得功能和架构的实现才是有挑战,需要规划的内容,而产品的形态并没有花心思去琢磨,事后开发前端时才来考虑。实际上后者可能才是真正影响项目成功的关键,也很可能会影响到底层架构的设计和取舍。类比一下,好比一个用户产品都开发完了,才来考虑埋点,数据采集和数据分析的工作,这时候就很被动了。 怎么做: 前期方案文档,没有必要列出详细的技术方案细节,只需要一个整体的技术方向选型和初步的架构设想。但是,如果是涉及到核心需求能否有效满足的关键的技术点,有可能影响整体的架构或产品实现的,那就有必要就可能的方案的进行详细的评估并得出初步的结论。 无关架构或进度安排的方案细节,没有必要写太多,可以后续再补充。 方案中有不明确的地方,即使没有时间调研,也不要简单的略过不写,要在文档中明确的把问题写出来,给出下一步调研的方向计划等。归根到底,方案文档中,对每一个已知重要的问题,都需要一个明确的结论或者可以后续跟进的计划,以免事后遗漏。 再强调一下,做什么和怎么做就是手段,既然是手段,就要写得足够具体,具体到有明确的可落地实施的事情,有明确可以衡量的标准,或者针对当前存在的一个具体问题,不要在这个地方又写得像目标,没有明确的可执行的点。 继续举上文数据交换服务的例子,针对其中的一个核心需求: ETL业务流程标准化:将最佳实践沉淀下来,通过配置的方式让用户选择,减少重复工作,降低用户开发的难度,规避使用姿势错误可能造成的问题。 这个内容要写具体的要做的事项。以下方式来写可能就是不合格的,因为不够具体,还没有足够思考: 总结最佳实践 生成标准的流程 总结常见的错误 以下内容可能就更加明确,更加可落地一些: 统一当前增量数据导入的存储,合并,归档方案 将常见合并,去重逻辑标准化,通过配置自动生成任务脚本 制定ODS快照表生命周期管理方案,规范存储路径和命名方式,定期清理过期数据。 什么时候做,谁来做: 这是做什么和怎么做的进一步延伸,需要强调的是整个项目如何实施的整体步骤计划,而不仅仅是简单的列一下每项工作的人员和排期, 需要分析系统可能的迭代步骤(包括可能的短期应急和长期解决方案),上下游依赖梳理,需要协同进行的工作,最终项目上线时可能的业务迁移,数据迁移,系统集成等等外围工作的安排。 如果不是工期严格要求,deadline为导向的项目,整体的依赖和步骤往往才是在项目规划阶段需要重点阐述的内容,也是有可能对整体产品的进度,风险产生影响的事项 而具体工作工期的安排,说实话,多数情况下,反到没有那么重要。如果整体工作和步调没考虑周全,工期排得再科学,再精细,也毫无意义。 总结一下,什么时候做什么事,最重要的目的,不在于工期的计算,甚至也不是人力资源的安排,而是为了理顺事情依赖关系,控制可能的意外风险,提升项目开发进度的可控性。 总体原则: 项目方案规划文档的根本目标是统一认识: 明确问题,确定重点,阐明路径,控制风险。 文档的撰写方式,是目标和需求先行,围绕出发点,逐步递进展开。 文档的基本要素: 背景,目标,核心需求,现状问题分析,关键方案难点解析,总体实施路径,工作事项列表,进度计划安排。 再细化到一些注意事项: 核心需求,必须是核心的,一定要实现的内容!不能缺,也不能滥。 问题现状,工作事项,必须呼应核心需求,要有明确的相关性,不要无的放矢。 围绕最终目标,输出完整的端到端的解决方案,而不是局部环节的方案。需要从最终产品/功能形态的角度考虑要做的事,而不是仅仅考虑底层技术实现。 事项目标列表,不要仅仅罗列要做什么事,更重要的是说明想要得到的结果,而不仅仅是描述实现手段。 所有工作事项,需要明确思考过实施步骤,重要性和优先级,结合目标和需求,进行抽象归纳,而非简单随机罗列。 要有明确的计划排期,但更重要的是,要完整的分析思考可能的上下游和周边工作依赖。排期只是结果,完整的梳理才是关键。

如何写好项目方案设计文档


文章TAG:设计文档怎么写  设计文档怎么写  
下一篇