1 软件项目开发流程:
需求分析→概要设计→详细设计→编码实施→测试→产品提 交→维护
2 系统必须做什么?
获取用户需求,从用户角度考虑,用户需要系统必须完成哪些工作,也就是对目 标系统提出完整、准确、清晰、具体的要求。
提交的主要文档:软件需求规格说明书:以书面形式准确地描述软件需求。
( 结构化需求模型:数据流图、数据字典、状态图)
(面向对象需求模型:用例图、类图、顺序图等)
3 软件需求管理的过程:
(1) 需求确认:需求获取→需求分析→需求规格编写→需求验证
(2) 需求变更
4 需求的五个基本性质:必要的、无歧义的、可测试的、可测量的、可跟踪的
5 需求获取方式:自悟、访谈、小组会、快速建立软件原型
自悟特点:不用与用户交流,但对需求人员的要求太高,一般不现实。
访谈:(1) 正式访谈: 系统分析员将提出一些事先准备好的具体问题。
(2)非正式访谈:分析员将提出一些用户可以自由回答的开放性问题,以 鼓励被访问人员说出自己的想法。
(3)调查表:注意对客户分类:经过仔细考虑写出的书面回答可能比被访 者对问题的口头回答更准确。
(4)现场观察:用一段时间,完整旁观原始系统的使用情况,使用人员,在 此基础上与客户做进一步交流。
条件:(1)系统分析员能够正确提出问题;(2)被访谈人能够准确表达出需 求并被分析员准确捕捉。(3)谨防“完美蠕型”
小组会的优点:开发者与用户不分彼此,齐心协力,密切合作;及时讨论并求精; 有能导出规格说明的具体步骤。
6 快速建立软件原型是最准确、最有效、最强大的需求分析技术。快速原型就是快 速建立起来的旨在演示目标系统主要功能的可运行的程序;构建原型的要点是, 它应该实现用户看得见的功能,省略目标系统的“隐含”功能。
建模: 就是建立模型,通过对客观事物建立一种抽象的方法,用来表征事物并获 得对事物本身的理解,是对事物的一种无歧义的书面描述。
建模原则:现实世界能够映射到模型;模型能够描述现实世界;模型行为能够正 确反映现实世界方法。
最杰出的建模: 地图
7 UML (Unified Modeling Language 统一建模语言)为面向对象软件设计提供统 一的、标准的、可视化的建模语言。适用于描述以用例为驱动的软件设计的全过 程。
RUP(统一过程)是用例驱动的软件开发方法。
UML 不是一种程序设计语言,而是一种可视化的建模语言,比 C++、Java 这样 的程序设计语言抽象层次更高,适用于任何面向对象的程序设计语言。UML 不 是工具或知识