系统需求分析怎么写
1.计算机毕业论文中需求分析怎么写
帮你在5173论文网找到一篇,他们网站还有很多资料可以参考的。下面就是你要的可行性分析: 可行性分析分析 可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。本网站的可行性分析主要从经济可行性和技术可行性两方面进行说明。 2.1 经济可行性分析 经济可行性分析是对项目的经济效益进行评价,本课件发布网站作为一个毕业设计,无需开发经费,所以本网站在经济上是可行的。 2.2 技术可行性分析 技术上的可行性分析主要从软、硬件两方面分析实现网站开发的可行性。 该教务信息发布网站采用了当前新兴的Browser /Server模式,即浏览器/服务器模式。B/S模式,是一种从传统的二层CS模式发展起来的新的网络结构模式,其本质是三层结构CS模式。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。 参考资料: /678.html
麻烦采纳,谢谢!
2.需求分析怎么写
1. 引言1.1 编写目的:编写此文档的目的是进一步定制软件开发的细节问题,便于用户与开发商协调工作.本文档面向的读者主要是项目委托单位的管理人员.希望能使本软件开发工作更具体.1.2 项目背景1.2.1项目委托单位:****公司1.2.2开发单位:***公司1.3 定义1.4 参考资料2. 任务概述2.1 目标:<1> 决策支持:根据公司的要求及时提供所需报表及文件,并在适当时候对各部门领导给予销售及进货等方面的提示<2>提高效率:利用软件进行管理,避免人工管理的失误以及 延迟性,从而实现高效率的管理.2.2 运行环境:<1> 硬件方面:Pentium级处理芯片 1兆显存的兼容显卡 256色,800*600的兼容显示器 标准兼容打印机<2>软件方面: WIN95操作系统2.3 条件与限制: 编程用计算机一台 完成期限2000/7/1 无资金供给3. 数据概述数据流程图如下: 3.1 静态数据:包括系统登录密码,各数据库所在位置,系统分析原始数据3.2 动态数据:包括各数据库内各项显示数据,用户登录信息,系统时间3.3 数据库描述: 人事管理数据库:公司内人员的个人详细信息,包括档案信息 销售管理数据库:当日销售记录及以前的销售统计,用于销售分析 财务管理数据库:公司内部账目及收支情况详表 技术管理数据库:公司所需各技术档案的详细记录(包括文档) 3.4 数据字典:<1>数据流词条描述: 1.数据流名:登录信息 来源:用户的输入 去向:系统内部检验部分 组成:用户名,密码 流通量:每次登录输入一次 2.数据流名:登录结果 来源:系统 去向:用户 组成:返回信息 流通量:每次登录返回一次 3.数据流名:输入修改信息 来源:用户 去向:系统判断部分 组成:根据各数据库内容而不同 流通量:依用户输入而定 4.数据流名:反馈信息 来源:系统判断部分 去向:用户 组成:系统经判断后发回的字符数据 流通量: 依系统当前信息而定 5.数据流名:识别信息 来源:系统内部检验部分 去向:系统判断部分 组成:系统各数据库的标识信息 流通量:用户每次输入流通一次 6.数据流名:处理信息 来源:系统判断部分 去向:各数据库处理部分 组成:读取/修改标识,读取/修改的变量名称 流通量:用户每次输入流通一次 7.数据流名:读取修改 来源:系统判断部分 去向:系统各数据库 组成:读取/修改标识,读取/修改内容 流通量: 用户每次输入流通一次<2>数据文件词条描述: 1.数据文件名:人事数据 简述:存储人员信息 数据文件组成:人员的各项信息(以CString类型为主) 2.数据文件名:销售数据 简述:存储当日及从前的销售记录 数据文件组成:销售的各项信息 3.数据文件名:财务数据 简述:存储财务管理信息 数据文件组成:财务管理的各项记录 4.数据文件名:技术数据 简述:存储公司内部使用的技术档案信息 数据文件组成:技术档案名称,内容<3>加工逻辑词条描述: 1.加工名:检验 简要描述:判断用户的许可性 输入数据流:登录信息 输出数据流:登录结果 加工逻辑:判断是否与系统内部用户信息相符合 2.加工名:判断 简要描述:判断用户的操作并进行相应的读取/存储工作 输入数据流:输入修改信息 输出数据流:反馈信息 加工逻辑:判断用户的操作->调用数据库->读取/修改->反馈 3.加工名:人事档案管理 简要描述:对人事数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 4.加工名:销售统计 简要描述:对销售数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 5.加工名:财务统计 简要描述:对财务数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 6.加工名:技术管理 简要描述:对技术统计数据库进行相应要求的操作,并与判断部分交互信息 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息<4>源点及汇点词条描述: 名称:用户 简要描述:既是源点又是汇点,发出动作信息给"检验"和"判断"加工,通过交互界面接受反馈信息有关数据流:登录结果,登录信息,输入修改信息,反馈信息 数目:一个4. 功能需求4.1 功能划分 可细分为四部分:人事管理,销售管理,财务管理,技术档案管理4.2 功能描述<1>人事功能: (1)能对公司内部的所有人员有关档案详细资料记录并保存。
(2)能对数据库内人事档案的数据进行查阅和修改。 (3)能按部门或姓名检索人员。
(4)当某员工的雇用期限达到整年时,按时提醒。<2>销售统计功能 (1)按日对公司的销售情况进行统计,包括销售额销售数量各地区销售比例不同销售方式的销售量比例以及销售毛利润情况 (2)制定销售情况的月报表季报表以及年报表对销售情况进行分析,对不同销售人员的业绩进行评定<3>财务管理功能 (1)协助财务人员进行计算机管理,对库存情况进。
3.如何写系统需求分析
学生选课系统需求分析 第一部分 需求分析 1.系统功能模块基本划分本系统划分为三个子系统:系统管理系统:系统维护学生选课系统:学生选课操作教师查询系统:学生选课情况查询 2. 系统维护 2 1 2. 1 . 1 . 学生基本资料维护目标:针对学生的基本资料进行添加、删除、更新、查询。
2. 1 . 2. 学生基本资料维护概述:前提条件: 管理员要对学生基本资料进行添加、删除、更新或查询。角色: 各级别的系统管理员输入: 学生基本属性(学号、姓名、系部、班级、密码、选课总学分) 。
基本流程: 登录管理员系统→验证当前用户权限→选择“学生基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 学生基本资料报表。
2 2 2. 2. 1 . 教师基本资料维护目标:针对教师的基本资料进行添加、删除、更新、查询。 2. 2. 2. 教师基本资料维护概述:前提条件: 管理员要对教师基本资料进行添加、删除、更新或查询。
角色: 各级别的系统管理员输入: 教师基本资料(工号、姓名、系部、密码、相关资料)基本流程: 登录管理员系统→验证当前用户权限→选择“教师基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 教师基本资料报表。
2 3 2. 3. 1 . 课程基本资料维护目标:针对课程的基本资料进行添加、删除、更新、查询。 2. 3. 2. 课程基本资料维护概述:前提条件: 管理员要对课程基本资料进行添加、删除、更新或查询。
角色: 二级系统管理员输入: 课程基本资料(课程号、课程名、课程简介、上课时间、上课地点、学时、学分、人数上线、当前人数、教师号)基本流程: 登录管理员系统→验证当前用户权限→选择“课程基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 课程详细资料。
2 4 2. 4. 1 . 系部资料维护目标:针对系部资料进行添加、删除、更新、查询。 2. 4. 2. 系部维护概述:前提条件: 管理员要对系部资料进行添加、删除、更新或查询。
角色: 一级系统管理员输入: 系部资料(系号、系名称)基本流程: 登录管理员系统→验证当前用户权限→选择“系部资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 无 2 5 2. 5. 1 . 管理员维护目标:设置各级管理员权限 2. 5. 2. 管理员维护概述:前提条件:角色: 一级管理员输入: 管理员权限基本流程: 登录系统→验证权限→设置管理员权限→验证设置→成功更新或失败返回输出: 2 6 2. 6. 1 . 修改密码目标:正确的修改管理员登录密码 2. 6. 2. 修改密码概述:前提条件: 用旧密码正确登录角色: 各级管理员输入: 旧密码、新密码、验证密码基本流程: 登录选课系统→验证权限→输入旧密码、新密码、验证密码提交→验证旧密码是否正确、新密码和验证密码是否相同→成功或失败(一天内不能超过3 次)输出: 成功或失败信息 2 7 2. 7. 1 . 系统设置目标:通过系统设置来修改系统环境变量 2 . 7 . 2 . 系 统 设 置 概 述 :前提条件:角色: 一级管理员输入: 系统设置基本流程: 登录设置系统→验证权限→输入系统设置(学校名称、总学分设置等)输出: 3. 学生选课 3 1 3. 1 . 1 . 课程预览目标:让学生可以详细的了解课程情况 3. 1 . 2. 课程预览概述:前提条件: 学生正确登录角色: 学生输入: 无基本流程: 登录学生选课系统→验证当前用户权限→查看课程信息输出: 课程详细信息。
3 2 3. 2. 1 . 选课目标:学生可以选择要选修的课程 3. 2. 2. 选课概述:前提条件: 正确登录、点击选课项角色: 学生输入: 选择要修的课程基本流程: 登录选课系统→验证权限→选择要学的课程→提交表单→验证提交的数据(最多不能超过规定的学分)输出: 选课情况 3 3 3. 3. 1 . 退课目标:由于主观或客观原因要求退课 3. 3. 2. 退课概述:前提条件: 正确登录、选择退课项角色: 学生输入: 选择要退的课程基本流程: 登录选课系统→验证权限→删除要退的课程→验证提交的数据(不能删除空数据)输出: 成功或失败的信息 3 4 3. 4. 1 . 修改密码目标:正确的修改学生登录密码 3. 4. 2. 修改密码概述:前提条件: 用旧密码正确登录角色: 学生输入: 旧密码、新密码、验证密码基本流程: 登录选课系统→验证权限→输入旧密码、新密码、验证密码提交→验证旧密码是否正确、新密码和验证密码是否相同→成功或失败(一天内不能超过3 次)输出: 成功或失败信息 4. 教师课程查询 4 1 4. 1 . 1 . 查询课程目标:正确查找课程人数情况 4. 1 . 2. 查询课程概述:前提条件: 正确登录角色: 教师输入:基本流程: 登录系统→验证权限→查看某课程报名人数情况输出: 课程报名人数情况 4 2 4. 2. 2. 修改密码目标:正确的修改密码 4. 2. 3. 修改密码概述:前提条件: 正确登录角色: 教师输入: 旧密码、新密码、验。
4.软件的需求分析怎么写啊
1. 引言1.1 编写目的:编写此文档的目的是进一步定制软件开发的细节问题,便于用户与开发商协调工作.本文档面向的读者主要是项目委托单位的管理人员.希望能使本软件开发工作更具体.1.2 项目背景1.2.1项目委托单位:****公司1.2.2开发单位:***公司1.3 定义1.4 参考资料2. 任务概述2.1 目标:<1> 决策支持:根据公司的要求及时提供所需报表及文件,并在适当时候对各部门领导给予销售及进货等方面的提示<2>提高效率:利用软件进行管理,避免人工管理的失误以及 延迟性,从而实现高效率的管理.2.2 运行环境:<1> 硬件方面:Pentium级处理芯片 1兆显存的兼容显卡 256色,800*600的兼容显示器 标准兼容打印机<2>软件方面: WIN95操作系统2.3 条件与限制: 编程用计算机一台 完成期限2000/7/1 无资金供给3. 数据概述数据流程图如下: 3.1 静态数据:包括系统登录密码,各数据库所在位置,系统分析原始数据3.2 动态数据:包括各数据库内各项显示数据,用户登录信息,系统时间3.3 数据库描述: 人事管理数据库:公司内人员的个人详细信息,包括档案信息 销售管理数据库:当日销售记录及以前的销售统计,用于销售分析 财务管理数据库:公司内部账目及收支情况详表 技术管理数据库:公司所需各技术档案的详细记录(包括文档) 3.4 数据字典:<1>数据流词条描述: 1.数据流名:登录信息 来源:用户的输入 去向:系统内部检验部分 组成:用户名,密码 流通量:每次登录输入一次 2.数据流名:登录结果 来源:系统 去向:用户 组成:返回信息 流通量:每次登录返回一次 3.数据流名:输入修改信息 来源:用户 去向:系统判断部分 组成:根据各数据库内容而不同 流通量:依用户输入而定 4.数据流名:反馈信息 来源:系统判断部分 去向:用户 组成:系统经判断后发回的字符数据 流通量: 依系统当前信息而定 5.数据流名:识别信息 来源:系统内部检验部分 去向:系统判断部分 组成:系统各数据库的标识信息 流通量:用户每次输入流通一次 6.数据流名:处理信息 来源:系统判断部分 去向:各数据库处理部分 组成:读取/修改标识,读取/修改的变量名称 流通量:用户每次输入流通一次 7.数据流名:读取修改 来源:系统判断部分 去向:系统各数据库 组成:读取/修改标识,读取/修改内容 流通量: 用户每次输入流通一次<2>数据文件词条描述: 1.数据文件名:人事数据 简述:存储人员信息 数据文件组成:人员的各项信息(以CString类型为主) 2.数据文件名:销售数据 简述:存储当日及从前的销售记录 数据文件组成:销售的各项信息 3.数据文件名:财务数据 简述:存储财务管理信息 数据文件组成:财务管理的各项记录 4.数据文件名:技术数据 简述:存储公司内部使用的技术档案信息 数据文件组成:技术档案名称,内容<3>加工逻辑词条描述: 1.加工名:检验 简要描述:判断用户的许可性 输入数据流:登录信息 输出数据流:登录结果 加工逻辑:判断是否与系统内部用户信息相符合 2.加工名:判断 简要描述:判断用户的操作并进行相应的读取/存储工作 输入数据流:输入修改信息 输出数据流:反馈信息 加工逻辑:判断用户的操作->调用数据库->读取/修改->反馈 3.加工名:人事档案管理 简要描述:对人事数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 4.加工名:销售统计 简要描述:对销售数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 5.加工名:财务统计 简要描述:对财务数据库进行相应要求的操作,并与判断部分交互 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息 6.加工名:技术管理 简要描述:对技术统计数据库进行相应要求的操作,并与判断部分交互信息 输入数据流:处理信息,读取修改 输出数据流: 读取修改, 处理信息 加工逻辑:判断用户要读取/修改的内容->反馈用户所需信息<4>源点及汇点词条描述: 名称:用户 简要描述:既是源点又是汇点,发出动作信息给"检验"和"判断"加工,通过交互界面接受反馈信息有关数据流:登录结果,登录信息,输入修改信息,反馈信息 数目:一个4. 功能需求4.1 功能划分 可细分为四部分:人事管理,销售管理,财务管理,技术档案管理4.2 功能描述<1>人事功能: (1)能对公司内部的所有人员有关档案详细资料记录并保存。
(2)能对数据库内人事档案的数据进行查阅和修改。 (3)能按部门或姓名检索人员。
(4)当某员工的雇用期限达到整年时,按时提醒。<2>销售统计功能 (1)按日对公司的销售情况进行统计,包括销售额销售数量各地区销售比例不同销售方式的销售量比例以及销售毛利润情况 (2)制定销售情况的月报表季报表以及年报表对销售情况进行分析,对不同销售人员的业绩进。
5.项目需求分析怎么写
项目需求分析的概念 需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段结束后,要求得到:1.SRS文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan. 从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。
狭义上理解:需求分析指需求的分析、定义过程。 一、为什么要需求分析 需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死. 需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计. 二、需求分析的任务 简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.三、需求分析的过程 需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审. 问题识别 就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标. 分析与综合 逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型). 制订规格说明书 即编制文档,描述需求的文档称为软件需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交. 评审 对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。
四、需求分析的方法 需求分析的方法有很多.这里只强调原型化方法,其它的方法如:结构化方法,动态分析法等(个人认为,对初学者不必深究这些方法,实际上我也从来没用过这些方法)在此不讨论. 原型化方法是十分重要的(是软考等常考的知识点).原型就是软件的一个早期可运行的版本,它实现了目标系统的某些或全部功能. 原型化方法就是尽可能快地建造一个粗糙的系统,这系统实现了目标系统的某些或全部功能,但是这个系统可能在可靠性,界面的友好性或其他方面上存在缺陷.建造这样一个系统的目的是为了考察某一方面的可行性,如算法的可行性,技术的可行性,或考察是否满足用户的需求等.如,为了考察是否满足用户的要求,可以用某些软件工具快速的建造一个原型系统,这个系统只是一个界面,然后听取用户的意见,改进这个原型.以后的目标系统就在原型系统的基础上开发. 原型主要有三种类型(软考考过):探索型,实验型,进化型.探索型:目的是要弄清楚对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性.实验型:用于大规模开发和实现前,考核方案是否合适,规格说明是否可靠.进化型:目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。 在使用原型化方法是有两种不同的策略:废弃策略,追加策略.废弃策略:先建造一个功能简单而且质量要求不高的模型系统,针对这个系统反复进行修改,形成比较好的思想,据此设计出较完整,准确,一致,可靠的最终系统.系统构造完成后,原来的模型系统就被废弃不用.探索型和实验型属于这种策略。
追加策略:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,发展成为最终系统。进化型属于这种策略.。
6.怎样写一个系统的需求分析
方法
⑴首先调查组织机构情况
包括了解该组织的部门组成情况,各部门的职能等,为分析信息流程作准备。
⑵然后调查各部门的业务活动情况
包括了解各个部门输入和使用什么数据,如何加工处理这些数据,输出什么信息,输出到什么部门,输出结果的格式是什么。
⑶协助用户明确对新系统的各种要求
包括信息要求、处理要求、完全性与完整性要求。
⑷确定新系统的边界
确定哪些功能由计算机完成或将来准备让计算机完成,哪些活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。
常用的调查方法有:
⑴跟班作业
通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。
⑵开调查会
通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。
⑶请专人介绍。
⑷询问
对某些调查中的问题,可以找专人询问。
⑸设计调查表请用户填写
如果调查表设计得合理,这种方法是很有效,也很易于为用户接受的。
⑹查阅记录
即查阅与原系统有关的数据记录,包括原始单据、账簿、报表等。
通过调查了解了用户需求后,还需要进一步分析和表达用户的需求。
分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。
7.项目需求分析怎么写
项目需求分析的概念 需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
(这个和我在微软体验到的又不太一样,微软的需求分析大多是市场人员和用户协助小组的人去评估用户的接受程度,这一点也可以理解,因为公司的性质有根本差别)在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。需求分析阶段结束后,要求得到:1.SRS文档(System Requirement Specification); 2.DRM 文档;3.Acceptance Plan. 从广义上理解:需求分析包括需求的获取、分析、规格说明、变更、验证、管理的一系列需求工程。
狭义上理解:需求分析指需求的分析、定义过程。 一、为什么要需求分析 需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个for linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,痕不得找块豆腐一头撞死. 需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位.大家一定要对需求分析具有足够的重视.在一个大型软件系统的开发中,他的作用要远远大于程序设计. 二、需求分析的任务 简言之,需求分析的任务就是解决"做什么"的问题,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求.三、需求分析的过程 需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审. 问题识别 就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标. 分析与综合 逐步细化所有的软件功能,找出系统各元素间的联系,接口特性和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型). 制订规格说明书 即编制文档,描述需求的文档称为软件需求规格说明书.请注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一阶段提交. 评审 对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。
四、需求分析的方法 需求分析的方法有很多.这里只强调原型化方法,其它的方法如:结构化方法,动态分析法等(个人认为,对初学者不必深究这些方法,实际上我也从来没用过这些方法)在此不讨论. 原型化方法是十分重要的(是软考等常考的知识点).原型就是软件的一个早期可运行的版本,它实现了目标系统的某些或全部功能. 原型化方法就是尽可能快地建造一个粗糙的系统,这系统实现了目标系统的某些或全部功能,但是这个系统可能在可靠性,界面的友好性或其他方面上存在缺陷.建造这样一个系统的目的是为了考察某一方面的可行性,如算法的可行性,技术的可行性,或考察是否满足用户的需求等.如,为了考察是否满足用户的要求,可以用某些软件工具快速的建造一个原型系统,这个系统只是一个界面,然后听取用户的意见,改进这个原型.以后的目标系统就在原型系统的基础上开发. 原型主要有三种类型(软考考过):探索型,实验型,进化型.探索型:目的是要弄清楚对目标系统的要求,确定所希望的特性,并探讨多种方案的可行性.实验型:用于大规模开发和实现前,考核方案是否合适,规格说明是否可靠.进化型:目的不在于改进规格说明,而是将系统建造得易于变化,在改进原型的过程中,逐步将原型进化成最终系统。 在使用原型化方法是有两种不同的策略:废弃策略,追加策略.废弃策略:先建造一个功能简单而且质量要求不高的模型系统,针对这个系统反复进行修改,形成比较好的思想,据此设计出较完整,准确,一致,可靠的最终系统.系统构造完成后,原来的模型系统就被废弃不用.探索型和实验型属于这种策略。
追加策略:先构造一个功能简单而且质量要求不高的模型系统,作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,发展成为最终系统。进化型属于这种策略.。
8.如何写系统需求分析
学生选课系统需求分析 第一部分 需求分析 1.系统功能模块基本划分本系统划分为三个子系统:系统管理系统:系统维护学生选课系统:学生选课操作教师查询系统:学生选课情况查询 2. 系统维护 2 1 2. 1 . 1 . 学生基本资料维护目标:针对学生的基本资料进行添加、删除、更新、查询。
2. 1 . 2. 学生基本资料维护概述:前提条件: 管理员要对学生基本资料进行添加、删除、更新或查询。角色: 各级别的系统管理员输入: 学生基本属性(学号、姓名、系部、班级、密码、选课总学分) 。
基本流程: 登录管理员系统→验证当前用户权限→选择“学生基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 学生基本资料报表。
2 2 2. 2. 1 . 教师基本资料维护目标:针对教师的基本资料进行添加、删除、更新、查询。 2. 2. 2. 教师基本资料维护概述:前提条件: 管理员要对教师基本资料进行添加、删除、更新或查询。
角色: 各级别的系统管理员输入: 教师基本资料(工号、姓名、系部、密码、相关资料)基本流程: 登录管理员系统→验证当前用户权限→选择“教师基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 教师基本资料报表。
2 3 2. 3. 1 . 课程基本资料维护目标:针对课程的基本资料进行添加、删除、更新、查询。 2. 3. 2. 课程基本资料维护概述:前提条件: 管理员要对课程基本资料进行添加、删除、更新或查询。
角色: 二级系统管理员输入: 课程基本资料(课程号、课程名、课程简介、上课时间、上课地点、学时、学分、人数上线、当前人数、教师号)基本流程: 登录管理员系统→验证当前用户权限→选择“课程基本资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 课程详细资料。
2 4 2. 4. 1 . 系部资料维护目标:针对系部资料进行添加、删除、更新、查询。 2. 4. 2. 系部维护概述:前提条件: 管理员要对系部资料进行添加、删除、更新或查询。
角色: 一级系统管理员输入: 系部资料(系号、系名称)基本流程: 登录管理员系统→验证当前用户权限→选择“系部资料维护” →管理员添加、删除或修改更新→验证输入或修改的数据→验证通过: 更新数据库, 验证不通过: 给出提示信息要求用户重新输入。输出: 无 2 5 2. 5. 1 . 管理员维护目标:设置各级管理员权限 2. 5. 2. 管理员维护概述:前提条件:角色: 一级管理员输入: 管理员权限基本流程: 登录系统→验证权限→设置管理员权限→验证设置→成功更新或失败返回输出: 2 6 2. 6. 1 . 修改密码目标:正确的修改管理员登录密码 2. 6. 2. 修改密码概述:前提条件: 用旧密码正确登录角色: 各级管理员输入: 旧密码、新密码、验证密码基本流程: 登录选课系统→验证权限→输入旧密码、新密码、验证密码提交→验证旧密码是否正确、新密码和验证密码是否相同→成功或失败(一天内不能超过3 次)输出: 成功或失败信息 2 7 2. 7. 1 . 系统设置目标:通过系统设置来修改系统环境变量 2 . 7 . 2 . 系 统 设 置 概 述 :前提条件:角色: 一级管理员输入: 系统设置基本流程: 登录设置系统→验证权限→输入系统设置(学校名称、总学分设置等)输出: 3. 学生选课 3 1 3. 1 . 1 . 课程预览目标:让学生可以详细的了解课程情况 3. 1 . 2. 课程预览概述:前提条件: 学生正确登录角色: 学生输入: 无基本流程: 登录学生选课系统→验证当前用户权限→查看课程信息输出: 课程详细信息。
3 2 3. 2. 1 . 选课目标:学生可以选择要选修的课程 3. 2. 2. 选课概述:前提条件: 正确登录、点击选课项角色: 学生输入: 选择要修的课程基本流程: 登录选课系统→验证权限→选择要学的课程→提交表单→验证提交的数据(最多不能超过规定的学分)输出: 选课情况 3 3 3. 3. 1 . 退课目标:由于主观或客观原因要求退课 3. 3. 2. 退课概述:前提条件: 正确登录、选择退课项角色: 学生输入: 选择要退的课程基本流程: 登录选课系统→验证权限→删除要退的课程→验证提交的数据(不能删除空数据)输出: 成功或失败的信息 3 4 3. 4. 1 . 修改密码目标:正确的修改学生登录密码 3. 4. 2. 修改密码概述:前提条件: 用旧密码正确登录角色: 学生输入: 旧密码、新密码、验证密码基本流程: 登录选课系统→验证权限→输入旧密码、新密码、验证密码提交→验证旧密码是否正确、新密码和验证密码是否相同→成功或失败(一天内不能超过3 次)输出: 成功或失败信息 4. 教师课程查询 4 1 4. 1 . 1 . 查询课程目标:正确查找课程人数情况 4. 1 . 2. 查询课程概述:前提条件: 正确登录角色: 教师输入:基本流程: 登录系统→验证权限→查看某课程报名人数情况输出: 课程报名人数情况 4 2 4. 2. 2. 修改密码目标:正确的修改密码 4. 2. 3. 修改密码概述:前提条件: 正确登录角色: 教师输入: 旧密码、新。