博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
点评主流软件开发技术
阅读量:6969 次
发布时间:2019-06-27

本文共 1890 字,大约阅读时间需要 6 分钟。

  hot3.png

点评主流软件开发技术

■ 河北秦皇岛 谷俭政

--------------------------------------------------------------------------------

当前软件工程领域和软件产业界的热点技术包括原型开发方法、C/S与B/S结构、软件构件、软件复用等。本文针对这些当今软件开发的主流技术加以评述,以期对实际工作做出指导。

原型法

原型法是近年来提出的一种以计算机为基础的系统开发方法,利用原型法开发系统时首先构造一个功能简单的原型系统,然后通过对原型系统逐步求精,不断扩充完善得到最终的软件系统。

原型就是模型,原型系统就是应用系统的模型。它是待开发的实际系统的缩小比例模型,但是保留了实际系统的大部分性能。这个模型可在运行中被检查、测试、修改,直到它的性能达到用户需求为止,随之这个工作模型很快就能转换成需要的目标系统。

原型法的主要优点在于它是一种支持用户的方法,使得用户在系统生存周期的设计阶段起到积极的作用,能减少系统开发的风险。特别是在大型项目的开发中,由于用户对系统功能认识的模糊性,使得对项目需求的分析难以一次完成,往往会造成已完成的项目多次修改,应用原型法则会避免这种风险。

原型法的概念既适用于系统的重新开发,也适用于对系统的修改;利用原型法开发系统需要有良好的软件开发环境、工具的支持。原型法也可以与传统的生命周期方法相结合使用,以便扩大用户参与需求分析、初步设计及详细设计等阶段的活动,加深对系统的理解。

微软公司通常采用“同步-稳定产品开发法”进行项目开发。典型项目的生命周期包括三个阶段:

1. 计划阶段:完成项目的功能说明和进度表的制定;

2. 开发阶段:写出完整的的源代码;

3. 稳定化阶段:完成产品,使之能够批量生产。

这三大阶段以及阶段间内在的循环方法与传统的“瀑布”式开发方式很不相同,后者是由需求、详尽设计、模块化的代码设计与测试、集成测试以及系统测试组成的。而微软的三个阶段更像是风险驱动的、渐进的“螺旋”式的生命周期模型。

构造原型是在计划阶段具体说明一件新产品或一个新版本的最好方法,这从许多方面来说特别是在系统可用性方面都使开发前测试成为可能,并且有助于对与用户交互情况做出良好的理解,同时也能使产品说明更加紧凑。

微软的开发人员通常采用VB构造用户界面原型,对于构造计算机屏幕模型之类的工作,画笔(Paintbrush)也是一个很好用的工具。通过原型法可以使死板的说明变成有生命的文件。

C/S与B/S结构

管理信息系统平台模式大体上分为四种:主机终端模式、文件服务器模式、C/S模式和B/S模式。主机终端模式由于硬件选择有限,硬件投资得不到保证,已被逐步淘汰。而文件服务器模式只适用小规模的局域网,对于用户多、数据量大的情况就会产生网络瓶颈,特别是在互联网上不能满足用户要求。因此,现代企业管理信息系统平台模式应主要考虑C/S模式和B/S模式。

● C/S结构

两层结构的C/S(Client/ Server)模式在上个世纪八九十年代得到大量的应用。C/S结构由两部分构成:前端是客户机,通常是PC;后端是服务器,运行数据库管理系统,提供数据库的查询和管理。

但两层的C/S结构存在以下几个局限:它是单一服务器且以局域网为中心的,所以难以扩展至大型企业广域网或Internet;受限于供应商;软、硬件的组合及集成能力有限;难以管理大量的客户机。

因此,三层C/S结构应运而生。三层结构的C/S模式是伴随着中间件技术的成熟而兴起的,核心思想是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次。三个层次的划分是从逻辑上来分的,具体的物理分法可以有多种形式。

三层C/S结构具有以下优点:具有灵活的硬件系统构成;提高程序的可维护性;利于变更和维护应用技术规范;进行严密的安全管理;越关键的应用,用户的识别和存取权限设定愈重要。

● B/S结构

基于Web的B/S(Browser/ Server)方式其实也是一种客户机/服务器模式,只不过它的客户端是浏览器。

B/S结构中处于第一层的是客户端,处于第二层的是应用服务器,由一台或者多台服务器组成,该层具有良好的可扩充性,可以随着应用的需要增加服务器的数目。处于第三层的是数据层,由数据库系统和遗留系统组成。

B/S的优势在于:简化了客户端;简化了系统的开发和维护;用户操作变得更简单;适用于网上信息发布。

软件构件技术

转载于:https://my.oschina.net/tadcat/blog/148158

你可能感兴趣的文章
对素数的判断和素数个数的判断
查看>>
TP之msubstr()
查看>>
星河时空尽头的我没理由放弃挨打的痛苦
查看>>
hibernate多对多关系
查看>>
一些比较优秀的代码总结
查看>>
bootstrap_04_列表
查看>>
WEB面试题
查看>>
w7无线网络密码破解
查看>>
focus-hooks
查看>>
Deep Learning 工具收集
查看>>
jqGrid的分页
查看>>
iOS7 隐藏状态栏
查看>>
获取类的属性列表、方法列表、实例变量列表
查看>>
学习笔记:逻辑运算符也有优先级区别
查看>>
小蚂蚁学习Redis笔记(12)——Redis重要特性——发布及订阅消息
查看>>
Docker with CentOS
查看>>
js单双引号嵌套传值问题
查看>>
Unity 消息发送机制 解析
查看>>
浅析网络端口及端口防御
查看>>
PDF文件在线压缩的方法
查看>>