↓全部展开↑
今日更新
技术新闻
精彩专题
IBM软件技术专区
最新更新
新闻专区
WebSphere
DB2
Tivoli
Lotus Notes
教程和案例
培训与认证
微软开发专区
最新更 新
VB/VC
C#&J#
.NET特 区
Web Services
XML
Windows 世界
Office
培训与认证
技术文档中心
编程语言
最新更新
JAVA
DELPHI
PowerBuilder
C/C++
VC/VB
培训与认证
开发者之家
网络通信
最新更新
专题荟萃
技术前沿
组网建网
通信天地
产品方案
网络入门
无线局域网专区
路由器专 区
Cisco认证
综合布线培训
网管员世界
网络安全
最新更新
技术专题
安全技术精粹
安全公告
产品方案
防火墙专区
IDS专区
Symantec认证
Check Point认证
网管员世界
LINUX/UNIX
最新更新
基础知识
技术开发
桌面应用
企业应用
精彩问答
开放系统世界
Red Hat认证
Turbolinux认证
SCO认证
开发者之家
软件工程与管理
最 新更新
软 件工程
软件测试
项目管理
CMM
软件工程培训
数据库开发
最新更新
SQL Server
DB2
ORACLE
PowerBuilder
MYSQL
ORACLE认证
Sybase认证
开发者之家
WEB开发
最新更新
ASP
JSP
PHP
XML/SOAP
JavaScript
HTML
CSS
企业应用与开发
最新更新
应用开发
应用分析
解决方案
成功案例
ERP专区
SCM专区
CRM专区
网络存储专区
电子政务专区
企业网建设专区
BOSS专区
企业信息化培训
移动开发
无线开发
BREW
SMARTPHONE
J2ME
SymbianOS
K-JAVA
资源中心
最新更新
在线教程
软件下载
例程源码
培训和认证
原创专栏
俞良松
王凯明
马金虎
雷年胜
陶 刚
陈立峰
曹江华
更多原创
开放系统世界
人才与培训
技术天地论坛
开发者之家
网管员世界
只谈网事
WLAN无限未来
培训与认证社区
厂商列表
IBM
Microsoft
社区推荐
·
女性身体内部人体受孕..
·
十部顶级的变态与情色..
·
感情放纵让我毁了两个..
·
当我撞见姐姐和男友在..
·
卖淫少女惨遭泄愤民工..
·
偷拍街上的走光mm绝对..
·
百度打击google的广告
·
港娱乐圈与黑社会揭秘
赛迪网
>>
技术应用
>>软件工程
最新更新
|
C# & J#
|
VB/VC
|
.NET
|
Web Services
|
XML
|
Windows
|
Office
|
社区
最新更新
|
J2SE
|
DELPHI
|
PowerBuilder
|
C/C++
|
VC
|
互动社区
最新更新
|
专题荟萃
|
WLAN
|
组网建网
|
通信天地
|
路由技术
|
网络入门
|
互动社区
最新更新
|
技术专题
|
数据库及Web安全
|
病毒
|
方案
|
漏洞
|
基础入门
|
黑客攻防
|
安全动态
|
Windows
|
Linux
|
最新更新
|
基础知识
|
技术开发
|
桌面应用
|
企业应用
|
精彩问答
|
开放系统世界
|
互动社区
最新更新
|
软件工程
|
软件测试
|
项目管理
|
CMM
|
软件工程培训
最新更新
|
SQL Server
|
DB2
|
ORACLE
|
PowerBuilder
|
MYSQL
|
互动社区
最新更新
|
ASP.NET
|
J2EE
|
PHP
|
XML
|
JavaScript
|
最新更新
|
应用开发
|
技术应用
|
解决方案
|
成功案例
|
ERP专区
|
CRM专区
|
SCM专区
无线开发
|
BREW
|
SMARTPHONE
|
J2ME
|
Symbian OS
|
K-JAVA
在线教程
|
软件下载
|
例程源码
|
培训和认证
编程语言
|
网络通信
|
网络安全
|
LINUX
|
软件工程
|
数据库
|
企业应用
|
移动未来
|
资源中心
关键字:
面向对象;软件开发;过程
来 源:
UML
面向对象软件开发和过程 (1)
作者:林星
发文时间:2005.08.17
面向对象发展到今天,已经出现了许许多多优秀的实践、方法和技术。很多的技术都能够有效地提高软件质量,而要用好这些技术,我们需要从过程和管理的角度来看待它们,而不是为了使用技术而使用技术。此系列文章包括:代码是核心、案例实战(上)、案例实战(下)、重用、优化代码的组织、针对契约设计、业务建模。
在一个有效的组织中,必定拥有杰出的一线人才。软件设计也是一样的,一线人才的素质决定了软件的质量。从敏捷的观点来看,代码是检验软件过程是否有效的最终标准。目前为止,以及在短时间的未来,我们都不太可能完全脱离代码进行软件设计。所以,软件过程中的任何一个活动都是为了能够产出优秀的代码。所以,代码才是核心。
1. 代码是软件开发的基础
编码是软件开发过程中最基本、最底层的技艺,然而也是最重要的技艺。任何一个领域的专家都需要花费大量的时间来进行基本技艺的锻炼,木匠需要花费大量的时间来锻炼他们对各种工具的掌握,厨师则需要练习刀工和火候。程序员也是一样的,对我们来说,语言的各种特性必须要了然于胸。而对软件的管理也需要从代码做起。
从2000年到现在,国内兴起了一股软件工程热,需求管理、配置管理、甚至CMM。面对纷至沓来的各种方法学、UML、OOA,大家似乎已经热衷于这些概念本身了,却往往忽略了软件开发中最基本的元素——代码。在和很多软件组织的接触过程中,我们认为大多数组织急切需要的并不是这些工程理论,不是说这些理论不重要,而是这些组织的症结不在于此。很多的组织连代码的质量都管理不好,又何谈其它呢?代码管理是基础的基础,从管理的角度上来看,任何一个组织的管理都需要一个从上至下的管理过程,有基层的管理人员,也有高层的管理人员。对代码的管理就是软件开发中的基层管理,它起到的作用就是能够把需求、设计的思路贯彻到最终的代码中。
“管理无大事”。对软件的管理也是一样,大部分的问题都是由于很小的原因引起的。例如,一个产品如果后期在debug上花费了大量的时间,那么,这种现象是由于什么原因引起的?一种可能的原因是前期的代码设计中对代码质量的把握不严。每一次代码功能的演化并不会产生太多的问题,但是当代码累积越来越多的时候,问题也就慢慢出现了。那么如何解决呢?可以加强QA的力量,也可以引入复审,还可以引入单元测试。总之,要有一种方法对代码进行控制。
软件的开发过程就象是一部精密的机器,任何一个环节的变化,都会对其它的环节产生影响。把软件过程按照瀑布的形式进行划分是一种分解的处理思路,但同时我们还应该看到不同活动之间的相互影响。软件开发中的生命周期模型也是一个层次模型,从业务建模一直到软件实现,需要跨越数个层次,同样会出现执行不力的情况,例如,代码设计偏离需求、偏离设计的情况比比皆是。
如何避免这种情况呢?这就需要我们从源代码的角度,反思其上游的实践活动,是否足以约束代码设计?就拿XP来说,他解决这个问题的方式是尽快的进入代码开发阶段,从代码开发中发现问题,并在下一轮的开发中解决。这种思路是正确的,但XP毕竟是方法论,他不会告诉你过于细节的东西,尽管XP已经提供了大量面向代码的实践。因为方法论的抽象级别比较高,使得他必须舍弃部分的细节。而这篇文章告诉你的,就是这些细节。就像我们在下一节中讨论的例子,需要在代码中加入对异常的处理,那么,异常的源头在哪里呢?是需求,在需求中,我们发现了一些业务的非正常的处理序列,发现了一些业务实体的限制性的要求,所以在代码实现中,就需要有相应的异常处理。在例如,一个优秀的异常处理,还需要让客户端程序员了解可能发生的异常,以保证不同代码间正确的集成。
1
2
3
下一页>>
赛迪网推出“IT博客”,花不到一分钟就完成注册
【
评论
】 【
推荐
】 【
大
中
小
】 【
打印
】 【
关闭
】
·Linux专区·
·黑客攻防·
·
Linux下添加硬盘、分区、格式化任务详解
·
FreeBSD服务器的安装与优化之优化篇
·
初学者入门:FreeBSD服务器的安装与优化
·
金企鹅杯两岸四地开源软件大赛圆满结束
·
如何提高Linux系统安全性的十大招数
·
构筑Linux防火墙之为个人用户设置防火墙
·
谁更安全?黑客眼中的防火墙与路由器
·
识破骗局 练就识别QQ活动真伪火眼金睛
·
应用安全大有可为:目的、挑战、总结
·
道高一尺魔高一丈:安全防御的动感魅力
·
警惕网络“内”院起火 积极谋求安内之路
·
HHCTRL漏洞被黑客利用 疯狂传播木马
·中国信息化·
·成功案例·
·
ERP普及化是饮鸩止渴 精细化才是应用之道
·
赛门铁克第八期《互联网安全威胁报告》解析
·
抢食“数字工商” 国产中间件杀出血路
·
从IBM等操作系统的发展看软件创新的启示
·
服务成就蓝色快车 品牌是怎样炼成的?
·
三大技术应用大会合为一体甲骨文上演三重奏
·
南阳教育城域网 拆掉学校间的“围墙”
·
金算盘助申意美步入信息化快车道
·
不为人知的索尼信息化 谁是幕后英雄?
·
InforBus/Q在穗高速路联网收费系统中的应用
·
J2EE构建最新金融理念和运作模式的网上银行
·
食品安全令人担心 信息化能否保驾护航
*
姓 名:
更多资料
了解方案
认识厂商
*
单位名称:
详细需求信息请在此处填写!
*
联系电话:
*
电子邮件:
◆ 相关文章
◆ 站内热点推荐
·
Java初学者入门经典:面向对象的思维方法
·
论软件开发中的三种重要角色
·
杀毒软件和防火墙都成了黑客的"帮凶"?
·
从C++到Java——理解面向对象的关键所在
·
从C++到Java——理解面向对象的关键所在
·
网管员论坛
·
开发者之家
·
WLAN无限未来
·
我是如何掉进C#的……
·
中国“人件”非正式调查
合作网站:
IBM dW中国网站
LinuxAID
软件工程专家网
中国系统分析员
UMLChina
MATRIX
Mobile2008
JavaResearch
华储网
UML软件工程组织
中国JAVA手机网
JAVA中文站
金山在线
海量科技