问题定义和可行性研究 问题定义主要是弄清“用(客)户需要解决什么问题”, 提交关于问题性质、工程规模的系统目标与范围的说明 文档。 可行性研究是确定所定义的问题是不是能够实现,值不 值得实现。为此必须从抽象的概念出发,对项目做一次 简化的需求分析和粗略的系统概要设计,寻求一种至数 种在技术、经济、运行和法律诸方面都可行的解决方案, 并给出可行性论证报告
问题定义和可行性研究 问题定义主要是弄清“用(客)户需要解决什么问题” , 提交关于问题性质、工程规模的系统目标与范围的说明 文档。 可行性研究是确定所定义的问题是不是能够实现,值不 值得实现。为此必须从抽象的概念出发,对项目做一次 简化的需求分析和粗略的系统概要设计,寻求一种至数 种在技术、经济、运行和法律诸方面都可行的解决方案, 并给出可行性论证报告
需求分析和开发计划 需求分析(阶段)的任务是分析用户对软件系统的全部 需求,确定目标系统的逻辑模型,即目标系统是“做什 么”的,并通过需求规格说明文档准确地表达。 开发计划的任务是在软件项目经过可行性研究和需求分 析之后,制定出主要包括成本估计、资源配置、工程进 度安排的软件项目开发和管理文档
需求分析和开发计划 需求分析(阶段)的任务是分析用户对软件系统的全部 需求,确定目标系统的逻辑模型,即目标系统是“做什 么”的,并通过需求规格说明文档准确地表达。 开发计划的任务是在软件项目经过可行性研究和需求分 析之后,制定出主要包括成本估计、资源配置、工程进 度安排的软件项目开发和管理文档
软件开发时期各阶段任务 软件开发时期的任务是设计和实现已定义的,并经过需 求分析的软件系统。 软件开发时期通常划分成软件设计、软件实现和软件测 试三个阶段。 软件测试也可以分解到软件实现的各个活动中,可重新 划分成编码和单元测试、集成测试、系统测试三个阶段。 甚至,还可以认为软件测试不是一个独立的阶段,因为 它应该和所有软件生产活动并行进行
软件开发时期各阶段任务 软件开发时期的任务是设计和实现已定义的,并经过需 求分析的软件系统。 软件开发时期通常划分成软件设计、软件实现和软件测 试三个阶段。 软件测试也可以分解到软件实现的各个活动中,可重新 划分成编码和单元测试、集成测试、系统测试三个阶段。 甚至,还可以认为软件测试不是一个独立的阶段,因为 它应该和所有软件生产活动并行进行
软件设计阶段任务 软件设计阶段是为目标系统的逻辑模型设计出一种 (不惟一的)软件实现模型,确定软件的总体结构、 数据结构、算法细节和用户界面,并给出软件设计的 详尽的软件设计说明文档。 软件设计阶段分成总体设计和详细设计两个子阶段。 总体设计是从需求规格说明文档导出软件结构图 详细设计为软件结构图中的各个模块的数据结构、算 法和模块接口等进行细节设计,并给出过程性描述
软件设计阶段任务 软件设计阶段是为目标系统的逻辑模型设计出一种 (不惟一的)软件实现模型,确定软件的总体结构、 数据结构、算法细节和用户界面,并给出软件设计的 详尽的软件设计说明文档。 软件设计阶段分成总体设计和详细设计两个子阶段。 总体设计是从需求规格说明文档导出软件结构图。 详细设计为软件结构图中的各个模块的数据结构、算 法和模块接口等进行细节设计,并给出过程性描述
软件实现阶段任务 软件实现阶段的任务是把软件的设计用一种程序设计语 言实现。实现阶段一般分成编码和系统集成两个步骤 (或子阶段)进行。 编码是根据目标系统的性质和实际开发环境,选取一种 适当的程序设计语言,把详细设计的模块过程性描述 “翻译”成所选定程序语言的源程序。 对于多模块的系统集成是把所有的程序模块,按照它的 软件结构组装(集成)成一个完整的软件系统
软件实现阶段任务 软件实现阶段的任务是把软件的设计用一种程序设计语 言实现。实现阶段一般分成编码和系统集成两个步骤 (或子阶段)进行。 编码是根据目标系统的性质和实际开发环境,选取一种 适当的程序设计语言,把详细设计的模块过程性描述 “翻译”成所选定程序语言的源程序。 对于多模块的系统集成是把所有的程序模块,按照它的 软件结构组装(集成)成一个完整的软件系统