系统分析和设计方法之全书总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/seacean2000/article/details/89838467

全书总共分为四部分,每一部分都有需要仔细去学习并且需要与现实中遇到的项目做对比,这是我第一次尝试做全书总结。

  1. 系统分析和设计的基础
  2. 系统分析
  3. 系统设计
  4. 系统构造和实现以及之后的工作

1.系统分析和设计的基础

系统有五个关键要素:系统类型、系统参与者、业务驱动力、技术驱动力、系统的生命周期阶段。这五个要素可以剖析系统在大方向上的组成,看待系统的视角则从三个不同的出发点进行,三个出发点是:业务知识、业务过程、业务通信。这些视角是可以在系统生命周期的各个阶段进行观察。系统开发过程可以采用能力成熟度模型进行调整,并且开发过程中遵循一些基本的开发原理,如及早发现问题及时修改等,然后是开发策略,如模型驱动策略、快速应用开发策略等。系统分析和设计也是项目管理当中的最重要的前半场,很大一部分的项目失败时因为系统分析阶段需求获取出问题,当然还有其他原因。

2.系统分析

系统分析的常用方法是模型驱动分析法、加速系统分析法等,无论何种方法都是为了加速分析过程的。系统分析的一般过程如下:

  • 第一步,范围定义阶段,交付物是项目章程,简单分析一下项目是不是值得
  • 第二步,问题分析阶段,交付物是可行性研究报告,深入研究,解决关键性的问题
  • 第三步,需求获取阶段,交付物是项目需求,需要采用各种需求获取技术,获得并整理成需求
  • 第四步,逻辑设计阶段,交付物是各种逻辑设计图,只用UML工具对需求进行建模并验证需求
  • 第五步,决策分析阶段,交付物是建议的可行性方案,主要是对可行性方案做对比和决策

一般来说,项目都需要根据这个过程裁剪或者做适应性的调整以满足现实中项目的需要。项目章程阶段是第一次检查项目是否进行下去的点。可行性分析报告在不同的书中讲的有差别,不过本质上是一致的,包括:组织可行性、经济可行性、技术可行性、运行可行性、环境可行性、文化政治法律可行性、风险评估等。每个可行性方向上都要做出评估,同时针对每个可行性的方案在这些方面也要评估。需求的获取一般来说可以通过:文件资料、调研和实地访问、观察工作环境、调查表、面谈、原型、联合需求计划等技术完成,这部分的内容从成本上来说,文件资料是最低的方式,面谈是成本最高的。逻辑设计阶段需要使用UML先设计用例图,验证每个需求是不是理解一致,其次是设计数据模型,然后是过程模型,最后是数据模型和过程模型的同步。在进行逻辑设计的过程中,尽可能遵循系统分析的原则,分解用例到可以进行建模再处理。

3.系统设计

扫描二维码关注公众号,回复: 6629922 查看本文章

系统设计常用方法是模型驱动、快速应用开发。系统设计的一般过程如下所示:

  • 第一步,设计应用框架,设计整个系统所有物理节点上的系统、系统间的交互等
  • 第二步,设计系统数据库
  • 第三步,设计系统接口
  • 第四步,打包设计说明,归档各种设计文件为成果
  • 第五步,修改项目计划,根据设计的信息调整项目计划

设计的方案采取的实现方法有两种,自主研发和外包采购,有时也会出现两者结合使用。设计应用框架是先从系统分析逻辑设计阶段的数据流图转化为物理数据流图,然后合并前置条件,再然后是网络设计,确定系统的网络情况,接下来是数据分布和数据技术选型,再接下来过程分布和技术选型,最后是确定人机边界。整个应用框架的设计是从逻辑设计转化为物理设计,物理设计还是范围远远高于软件设计的范围。设计数据库的时候,我们首先要考虑文件存储和数据库存储的问题,那种更合适。如果选用数据库设计,我们一般要遵循着:确定数据库设计的目标和约束条件;选择合适的数据库模式,是选用mysql还是oracle;设定数据完整性和访问完整性,需不要做数据检查和级联动作;设定数据库的常用角色,当然包含角色的权限;数据库的分布和复制,选择数据库的物理地点和备份方式;生成数据库原型,可以方便的进行数据测试和维护;规划数据库的容量,根据实际业务数据的增长进行容量调整,包括数据结构的调整和分表;最后是生成数据库结构,这个数据库结构是一个满足应用系统基本运行条件的,包含基础初始化数据。系统接口的设计包括了输出设计、输入设计、用户界面设计。这一部分的设计要遵循一些要求,输出设计要根据输出的位置不同做调整,如内部输出、外部输入、回转输出等;输入设计要遵循收集的数据一定不是现在系统保存或可计算出来的,只能收集有用的数据,输入的数据要做合理的验证;用户界面设计要满足人的操作要求,人类工程学可以给出一些指南优化用户体验。接口设计的一般过程是:从逻辑设计中转化出物理设计的需要;选择合适的组件进行物理设计;调整组件的物理布局和风格;如果有需要则生成源文件做归档;最后是交给用户评审做改进。

4.系统构造和实现以及之后的工作

通过前面的介绍我们基本都知道系统构造是准备要做什么了。系统实现则是将构造完成的软件包部署到生产环境进行运行。系统实现的一般过程是:系统测试,做测试,验证系统的功能正常、运行正常,当然还是在测试环境;准备转换计划并执行,这个阶段主要是做好新旧系统的转换,会进行系统验证测试,此测试包含了验证测试、确认测试、审计测试;安装数据库,做新旧数据库的转换;最后是用户培训,因为大部分的用户都不是it技术类的,所以要在培训材料制作中仔细考虑这个沟通的细节。系统正式运行之后,就出现了一个公共的系统知识上下文背景,应用系统的资料库、代码库、业务数据库。后续的工作都要基于这种背景下进行。系统运维的一般过程是:发现问题,进行确认;对程序进行测试,找出发生问题的代码库版本;研究、调试、修复问题;测试程序。后续的系统改进一般来说都是新功能的上线,大范围的更新基本是没有的,除非有完备的资料信息和专业的IT人员,要不然怎么会出现20年前的代码还在运行中,也没有人敢动它呢!

猜你喜欢

转载自blog.csdn.net/seacean2000/article/details/89838467