zoukankan      html  css  js  c++  java
  • 瀑布开发 迭代式开发 原型法----由系统边界问题引发出的遐想

      最近做需求规格说明书时,发现系统边界这一块很是有问题,觉得系统边界与参与者,用例关系相当于‘鸡生蛋,蛋生鸡’,无论是先写边界后描述参与者与用例,还是反过来想,总觉得矛盾重重,因此,如何做出一个成型的软件,就很有讨论价值了。

      软件工程中,有三种开发方式比较容易混淆。

      1.原型法

        即先快速做一个原型,原型不论对错,很多时候原型都是一个文档,一句话,一副图片,然后在这个原型上进行批判性修改,错了没有关系,说出错的理由,然后往正确的方向上偏移,慢慢的原型就会稳定下来。

      2.迭代式

        当原型稳定时,就会出现一个框架性的内容,根据需求上的优先级,对内容进行模块分割,然后逐渐增加模块数量和解决现有模块问题,确定版本号,一版一版的进行更新。

           3.瀑布模型

        迭代式开发中的每个模块版本,都需要经过瀑布模型的历程,从需求分析到软件测试。

      因此,这三种模型应该是互相嵌套使用,而不是独立可成体系的。

      话题转回系统边界的问题。

        从描述上来看,系统边界是最难以描述的内容,因此参阅了《thinking in UML 大象》边界章节。  

        举一个数学例子:

        2X+4Y = 10     对于此二元一次方程,X,Y可能存在N多解。

        但当我们知道X=1时,便已经确定下来Y=2。

        当X=3时,也知道Y=1。

        由此可见,万物守恒,总有其归宿。

        我们可以把参与者与用例设为式中的X,系统边界设想为Y,这时候就得出以下结论:

        参与者与用例 <=>系统边界。他们之间的关系为互相推导关系。

        当然系统边界实际过程中不是一个Y可以替代,参与者与用例也不是一个X可以替代。本文主要是论述系统边界与参与者,用例的关系。

        如有不正之处,还望指点。 

  • 相关阅读:
    经典小程序源码及其下载地址
    关闭ios虚拟键盘的几种方法
    从零开始学ios开发(十八):Storyboards(下)
    iOS应用程序生命周期(前后台切换,应用的各种状态)详解
    从零开始学ios开发(十九):Application Settings and User Defaults(上)
    关于IOS中的delegate必须知道的事情
    ios多线程和进程的区别(转载)
    ios各种手势,很有意思
    IOS中GPS定位偏移纠正(适用于Google地图)
    [iOS]深入浅出 iOS 之多线程 NSThread
  • 原文地址:https://www.cnblogs.com/zxwbky/p/10616107.html
Copyright © 2011-2022 走看看