软件需求分析


任务


解决目标系统“做什么”问题

深入描写叙述软件的功能和性能

确定软件涉及到的约束和软件接口

定义软件的其它有效需求

特点


一致性、完整性、限时性、有效性、可验证性

需求分析的过程


问题识别


建立分析所须要的通信途径

分析与综合


从信息流和信息结构出发,逐步细化全部的软件功能。找出联系,接口特性和设计上的约束。分析他们是否满足功能要求,是否合理

编制需求分析阶段的文档


软件需求说明书

数据要求说明书

初步的用户手冊

改动完好与确定软件开发实施计划

评审


系统定义的目标是否与用户的要求一致

系统需求分析阶段提供的文档资料是否齐全

文档中的全部描写叙述是否完整,清晰,准确反映用户的需求

与全部其它系统成分的重要接口是否都已经描写叙述

软件需求分析的方法


SA:面向数据流的结构化分析方法

JSD:面向数据结构的Jackson方法

DSSD;结构化数据系统开发方法

OOA:面向对象的分析方法

软件需求分析的原则


分解、化简和抽象

抽象


在開始建立分析模型前先理解问题
开发模型
记录需求的起源和原因
使用需求视图
给予需求优先级
删除排除性

分解


纵向分解和横向分解

数据流图(DFD)


特性


抽象性,概括性,层次性

主要图形元素



数据流与数据加工的关系





检查和改动DFD的原则


仅仅能有四种图形元素
每一个加工至少有一个输入数据流和一个输出数据流
数据流图的主图必须包含四种基本元素,缺一不可
须要添加编号
子图要与主图相应
每一个元素必须有名字。不同意有控制流

数据流图的作用


系统分析员能够用它自定向下分析系统信息流程
可在图上画出须要计算机处理的部分
依据数据存储。进一步做数据分析。想数据库设计过度
依据数据流方向,定出存取方式
相应一个处理过程,用相应的语言、判定表等工具表达处理方法

DFD的优缺点


整体概念强。每一层强调“干什么。须要什么。给出什么”
能够反映数据的流向和处理过程
自定向下分析,easy急躁发现系统各部分的逻辑错误。easy改正
easy与计算机处理相对比
不直观。须要概括、抽象、修正
没有计算机,人工绘制太麻烦,工作量大

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

软工视频总结Part Three的更多相关文章

  1. 【软件project】——软工视频总结

    软件project是一门研究用project化方法构建和维护有效的.有用的和高质量的软件的学科.它涉及程序设计语言.数据库.软件开发工具.系统平台.标准.设计模式等方面. 软工,基本的六阶段:制定计划 ...

  2. [2017BUAA软工助教]第0次个人作业

    学习别人的经验和体会 零.前言 我认为人生就是一次次地从<存在>到<光明>. 一.软件工程师的成长 0.这是一个博客索引 同学们在上这门课的时候基本都是大三,觉得在大学里,到教 ...

  3. 2017年秋软工-领跑衫获奖感言&我最感谢的人

    啥都不说,先上幅图.获得领跑衫,开心. 一.回忆 这是我第二次来上恩师杨的软件工程,第一次是2016年春,那时候我还是本科三年级的学生.忘了第一次为啥去蹭课,印象中是我的榜样亮哥把我给忽悠过去的?我也 ...

  4. [2019BUAA软工助教]第0次个人作业

    [2019BUAA软工助教]第0次个人作业 一.前言 我认为人生就是一次次地从<存在>到<光明>. 二.软件工程师的成长 博客索引 同学们在上这门课的时候基本都是大三,觉得在大 ...

  5. 福大软工 · 第十二次作业 - Beta答辩总结

    第三视角Beta答辩总结 博客链接以及团队信息 组长博客链接 成员信息(按拼音排序) 姓名 学号 备注 张扬 031602345 组长 陈加伟 031602204 郭俊彦 031602213 洪泽波 ...

  6. [2018福大至诚软工助教]alpha阶段小结

    [2018福大至诚软工助教]alpha阶段小结 一.得分 1. 冲刺(7次 Scrum) 150分 1)第1篇(25分) 项目 评分标准 各个成员在 Alpha 阶段认领的任务 (6分)视详细程度给分 ...

  7. 2018软工实践K班总结

    再回首一学期的软工实践,首先还是要感谢两位助教童鞋帮我承担了作业发布.打分以及与学生的问题沟通等.从这次的软工实践80人+开始,之后的实践课变为必修,故如何能更有效地组织大班实践环节是一个需要持续探讨 ...

  8. 2017软工实践K班总结

    回首一学期的软工实践,从暑假开始陆续布置作业,经历个人.结对与团队等大小作业.也经历了不少同学被吓跑.第一周就退选的情况,能坚持下来的都是胜利者,至少你们有一颗愿意挑战的心.首先感谢助教谢涛付出的巨大 ...

  9. 福大软工 · 第十一次作业 - Alpha 事后诸葛亮(团队)

    福大软工·第十一次作业-Alpha事后诸葛亮 组长博客链接 本次作业博客链接 项目Postmortem 模板 设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描 ...

随机推荐

  1. python爬虫系列:Scrapy安装与使用

    这篇博文主要写Scrapy框架的安装与使用 Scrapy框架安装 命令行进入C:\Anaconda2\Scripts目录,运行:conda install Scrapy 创建Scrapy项目 1)进入 ...

  2. C++ Primer 学习笔记与思考_3 ---头文件那些事儿(extern)

    (一)extern在头文件里的使用方法 由于头文件包括在多个源文件里.而且变量的定义仅仅能出现一次,所以在头文件里. 仅仅能够声明不能够出现定义. 我们能够在头文件里用extern声明全局变量,这样在 ...

  3. BZOJ 3105 线性基 高斯消元

    思路: 按照从大到小排个序 维护两个数组 一个是消元后的 另一个是 按照消元的位置排的 不断 维护从大到小 (呃具体见代码) //By SiriusRen #include <cstdio> ...

  4. Oracle学习系类篇(四)

    .分析函数 分析函数oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组,然后计算基于组的邹忠统计值,并且每一组的每一行都可以返回一个统计值. 分析函数和聚合函数的不同之处 ...

  5. 依赖注入Unity框架

    依赖注入和控制反转是对同一件事情的不同描述,从某个方面讲,就是它们描述的角度不同.依赖注入是从应用程序的角度在描述,可以把依赖注入描述完整点:应用程序依赖容器创建并注入它所需要的外部资源:而控制反转是 ...

  6. DB2报“数据库日志已满”问题解决

    用控制中心直接改会比较容易一点,在数据库名称上点右键-->配置-->日志-->日志文件大小.主日志文件数.辅助日志文件数改大一点. 也可用命令行db2cmd db2 update d ...

  7. Python2以及Python3中的除法

    前言 在讨论话题之前,我们先说下程序中除法的三种情况: 1. 传统的除法,我称之为整型地板除.在C.C++.Java中常见,特点是整数相除舍弃小数取整,浮点数相除则保留小数(如果有). >> ...

  8. Mysql干货收集

    mysql优化:https://www.cnblogs.com/duanxz/tag/mysql/default.html?page=1

  9. ios 人魔七七

    http://www.cnblogs.com/qiqibo/category/533488.html

  10. 洛谷P1004 方格取数

    网络流大法吼 不想用DP的我选择了用网络流-- 建模方法: 从源点向(1,1)连一条容量为2(走两次),费用为0的边 从(n,n)向汇点连一条容量为2,费用为0的边 每个方格向右边和下边的方格连一条容 ...