生活的天平本不平衡,只有通过努力改变其偏向。

软件工程之系统设计概述

2008-10-21

软件生存周期:

  • 可行分析与项目开发计划 -> 需求分析 ->  概要设计 -> 详细设计 ->  编码 -> 测试 -> 维护。可行分析与项目开发计划:要解决什么问题?用什么方法解决?是否可行?费用大概多少?时间大概多长?
    主要参与人员:用户、项目负责人和系统分析师。
    产生文档:可行性分析报告和项目开发计划。
  • 需求分析:确定系统必需要做什么,并不是具体解决问题,确定软件的功能、性能、数据、界面等,确定系统的逻辑模型。
    主要参与人员:用户、项目负责人和系统分析师。
    产生文档:需求说明书
  • 概要设计:将软件的各个功能需求转化为需要的体系结构。确定系统由哪些模块组成,模块间调用关系以及确定系统的数据结构。
    主要参与人员:软件设计师和系统分析师
    产生文档:概要设计说明书。
  • 详细设计:确定各个模块的详细功能及实现方法。
    主要参与人员:软件设计师和程序员
    产生文档:详细设计文档
  • 编码:将上面的设计转化成具体的代码。
    主要参与人员:软件设计师和程序员
    产生文档:软件开发方档
  • 测试:为了保证系统的稳定性,需要进行严格的测试。确保系统的功能完整性和稳定性。
    主要参与人员:另一个部门的软件设计师或系统分析师以及测试人员
    产生文档:软件测试计划和测试报告。
  • 维护:这个阶段是软件生命期中最长一部分,是指系统交付使用后到软件报废这段时间,期间需要对所发现的Bug进行修复。

软件生存期模型:

  1. 瀑布模型,将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。主要适合一些软件需求明确的软件项目。主要缺点:由于其是一种线性的模型,缺乏灵活性,特别不适合前期需求不明确的软件。
  2. 演化模型,由于许多系统的前期需求不明确,本模型先根据已有一些确定的模型,生成一个初始的演示版本。然后根据用户提出意见和建议,进行修改。重复这一过程,最终完善系统。
  3. 螺旋模型,由于一些大型系统,通过演化模型生成的初始演示版本无法满足要求,通过螺旋模型将瀑布模型和演化模型结合起来进行实施。一般分为四个步骤:一、制定计划。二、风险分析。三、实施工程。四、用户评估。
  4. 喷泉模型,这是一种以对象为驱动的模型,适合面向对像的开法方式。喷泉模型具有迭代性和无间隙性。迭代性是指不断完善系统;无间隙性是指开发活动之间不存在明显间隙。不像瀑布模型那有各个阶段有明显的划分,而是这个阶段交叉、迭代进行。

软件开发方法:

  1. 结构化方法。结构化方法是由结构化分析、结构化设计、结构化程序设计构成。它是一种面向数据流的开发方法。主要思想是自顶向下、表层分解,它的基本原则是功能分解和抽象。
  2. Jackson方法。是一种面向数据结构的开发方法。
  3. 维也纳开发方法。是一种基于模型的开发方法。主要思想将软件系统当作模型来描述。
  4. 面向对像开发方法。主起思想是以人认识世界的方法和思维方法来解决系统问题。
作者:lonkil | 分类目录:本站原创 | 标签:

2 条评论

  1. meng 说道:

    提到“文档”就头晕,现在天天看,天天写…那些牛人都几十页地写!!!

    • lonkil 说道:

      你忘了曾经的AND了?也是一写几十页,不就扯么,插图就是啦。像我这样表达能力这么差的人都能整个差多,何况你呢?
      国内的企业严格按软件工程来的,可能都没有。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>