软件工程(六)——需求分析

需求分析是软件开发期的第一个阶段,是关系到软件开发成败的关键步骤。需求分析的任务就是明确系统必须完成那些工作,下面是对需求分析这一章做的简要总结。

导图:

解释说明:

我将需求分析这一章分为过程,方法,工具三个内容。其中过程就是要明确需求分析的任务与步骤。需求分析方法包括面向对象分析方法与结构化分析方法。需求分析的图形工具,描述复杂的数据关系和逻辑处理功能,正所谓一张图胜过千言万语。

一、过程

1、文章开头也说过,需求分析的任务,不是确定系统怎么做,而是明确系统必须完成那些工作,是对系统目标提出的最完整,准确的需求。在看书中的需求分析具体任务的时候,觉得很熟悉,这不就是自考书中编过的知识网嘛,只不过,把总体规划,详细调查等等换成了需求分析而已。

首先,是分析阶段,包括目标和数据需求;其次是设计阶段,包括逻辑模型建立以及需求规格说明书的编写;最后是审核阶段,也就是需求分析评审。

2、再看需求分析的步骤就更简单了,既然是分析,首先,我们要先找材料吧,也就是调查研究;其次,找好材料了,我们就众多的材料中总结出一个框架,也就是所谓的分析建模;然后,根据所建模型进行描述,也就是所说的编写SRS;最后,把编好的SRS与用户最初的需求进行对比验证,减少需求不清等问题。

二、方法

需求分析方法里最主要的是面向对象和结构化的分析方法(面向数据流)

1、结构化分析方法

使用数据流图,数据字典,结构化语言,判定树,和判定表等工具。来建立结构化说明书的目标文档。

2、面向对象分析方法

面向对象分析就是把实体——联系图中的概念与面向对象程序设计的概念结合在一起形成的一种分析方法。

总结:

在软件工程总结的东西多了的时候,便会发现,所有的步骤几乎都可以用分析,设计,实现,评审等几个步骤来归纳总结,这不就是系统开发的步骤嘛,这就可以抽象出一个类模板了,学习起来也挺简单的!

时间: 2024-12-12 06:11:51

软件工程(六)——需求分析的相关文章

软件工程 六、七章读书笔记

第六章 在第六章中主要是介绍了Scrum的方法论,在此方法的理论中,其原则主要强调了一个团队的互动互助的开发过程,重点强调了在一个项目里,一个团队是如何通过沟通产生进步,且这个沟通绝不是说有通信便可称之为“沟通”了,而是要有面对面的实时交流,虽然现在的通讯方式早已变得十分强大,但面对面的沟通仍是最有效率的交流方式,故而在此基础上又提出了一个新的团队合作活动——“每日立会”,这是在Sprint中我认为是十分有效的一个活动,将问题摆在明面上,大家互相了解各自的进度,一起解决项目中的问题,持续更新团队

【转】软件工程之需求分析(思维导图)

转自:https://blog.csdn.net/Elsa15/article/details/83858342 最近软工课程进行到需求分析部分,课程项目也进行到该阶段,课本上的文字实在是太无聊了,在网上看到这篇博文感觉条理很清晰,用思维导图的方式展现出来,理解起来也相对容易,感谢原作者的辛苦总结,原文见上链接. 软件需求分析阶段研究的对象是软件项目的用户要求,如何准确表达用户的要求,怎 样与用户共同明确将要开发的是一个什么样的系统,是需求分析要解决的主要问题.也就是说需求阶段的任务并不是确定系

软件工程数独——需求分析1

点击放大图片 功能需求与性能需求 一级.二级数据流图 原文地址:https://www.cnblogs.com/harrypotterjackson/p/12178228.html

软件工程数独——需求分析2

点击图片放大. 命令分析 数独生成 数独求解 数独终局格式化打印 原文地址:https://www.cnblogs.com/harrypotterjackson/p/12179243.html

对软件工程的个人困惑

对软件工程的困惑来源于软件工程本身的定义,在许家珆著作的<软件工程-理论与实践>一书中,"软件工程"是一门指导计算机软件系统开发和维护的工程学科.软件工程起源于”软件危机“的出现. 在软件工程没有出现之前工程师是如何对计算机系统软件进行开发和维护的,软件工程师是如何对通过软件工程对计算机系统进行开发和维护的,这种开发和维护对计算机的发展以及对于未来软件的发展有哪些重要的改变和影响. 如何能从个人技能方面提高对软件工程联系的计算机领域整体理解和学习,从软件工程的需求分析.设计

现代软件工程 第7~9章作业 第2题——张功

我们团队设计的四则运算软件的需求功能大概有如下内容: 1.注册功能:用户能够通过本系统进行注册账号. 2.登陆功能:用户能够通过本系统进行登陆账号. 3.查看及修改个人信息功能:用户能够通过本系统进行查看个人信息,如有需要可对其进行修改. 4.学习功能:用户能够通过本系统,进行基础运算的运算过程的学习或回顾. 5.自主出题功能:用户能够通过本系统给自己出题进行测试,系统将计算出答案,并与用户实际答案进行比对,获得测试结果. 6.测试功能:用户能够通过本系统进行四则运算测试,包括简单四则运算.混合

软件工程与程序算法

软件工程包括需求分析.概要设计.详细设计.代码实现和维护五个部分.而具体的程序编码只占其中的一小部分.算法是在代码设计中的基础,提供了解决问题的方法.软件工程是应用计算机科学.数学及管理科学等原理,开发软件的工程.软件工程借鉴传统工程的原则.方法,以提高质量.降低成本.其中,计算机科学.数学用于构建模型与算法,工程科学用于制定规范.设计范型(paradigm).评估成本及确定权衡,管理科学用于计划.资源.质量.成本等管理.

软件研发部管理制度

为加强对公司软件研发部门工作管理,缩短开发周期,提高软件开发质量,降低开发成本,提高开发效率,特制定软件研发部管理制度. 第一章.总则 为保证日常工作正常有序的进行,让开发中各个环节更紧凑,更可控,需要尽可能实现软件研发部项目管理的正规化,工作过程的流程化,以便提高软件质量和开发效率,达到项目能按质按量按期交付的目标. 1.软件开发总体遵循项目管理和软件工程的基本原则. 2.项目管理涉及项目立项.项目计划和监控.配置管理. 3.软件工程涉及需求分析.系统设计.软件实现.系统测试.用户测试.试运行

产品经理 - 学习书籍

1 启示录:打造用户喜爱的产品 Marty Cagan 2 产品经理第一本书 哥乔斯 3 产品经理第二本书 哥乔斯4 人人都是产品经理 苏杰 二 逻辑思考 学会提问:批判性思维指南 简单逻辑学:改变思维方式第一书 批判性思维:带你走出思维的误区 思考,快与慢 清醒的艺术 金子塔原理 三 创新能力 赖声川创意学 这也能想到,巧妙解答无厘头问题 打开餐巾纸之适用技巧 别做正常的傻瓜 idea+打开设计师的创意百宝箱 颠覆式创新 创新者的窘境 四 时间管理 高效人士的七个习惯 番茄工作法图解 搞定:无

四象限分析法

很多事情的处理可以按照不同性质进行多个维度的划分,这样复杂的事情可以通过清晰的逻辑划分而简单化. 比如:工作繁琐的事情可以按照事件的重要性和紧急度进行这两个维度的划分,如图所示. 根据重要性和紧急度两个维度可以将事情划分为四个象限:第一象限的事情是首先要进行处理的,第二象限的事情是应该在第一象限处理后进行处理的,第三象限的事情可以在重要的事情处理完成后,在闲暇的时间内进行处理,第四象限的事情是不在预期范围内突然发生的事情,比如,在你处理第二象限的事情时,来了一个电话,也许不重要,但是你必须要接这