前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从软件技术演变到软件项目管理的进步

从软件技术演变到软件项目管理的进步

作者头像
博文视点Broadview
发布2020-06-12 11:20:29
5480
发布2020-06-12 11:20:29
举报
文章被收录于专栏:博文视点Broadview

世界上万事万物,都要经历从低级到高级的演化过程,软件项目管理也不例外。从几十年前的原始的DOS下的编程到高级过程语言编程,再到现在流行的面向对象语言编程,也经历了从低级到高级的变化过程。在这个演变过程中,软件项目管理的实质内容也在不断转变

20世纪90年代,无论是国内还是国外,应用软件技术主体还都处于DOS(个人电脑操作系统)下的编程状态。

那时的编程以代码行为单位,逐字逐句地进行编写,若要做个点击按钮,要写几十行代码,是很正常的事。光调试一个按钮代码,就需要花费几个小时的时间,编写语言主要为汇编、C、Basic等。编写工具跟现在Windows里的写字板一样,几乎全靠程序员个人的能力来解决编写问题。当时开发出来的应用软件主要是二维平面界面,如部分银行至今还在使用的前台服务系统:一个蓝色的或黑色的界面,一条条命令式的提醒功能,一个个跳跃式的屏幕输入功能,以及一个线框式的提示界面。碰到软件问题时,往往只能重启电脑。

在该模式下,软件开发工作量很大。想一想,所有的功能都得一个个字母敲进去,然后编译成可执行的软件功能。一旦编写方向出错,那产生的后果是很严重的!显然,那时的技术关注度很高,先要保证功能能正常实现,对软件系统应用的舒适度等要求,很多时候是奢谈!

在我们很熟悉的微软公司的Windows系列操作系统里至今还保留了一个DOS操作系统二维界面功能,虽然很古老,但是一道非常有用,尤其是IT技术人员,经常要通过它来处理些技术问题。

20世纪90年代后期,以微软Windows图形界面为代表的操作系统正式进入普通用户电脑中,于是面向对象语言逐步发挥了它的优势。如早期的VB,VC,Delphi,Foxbase等,这些开发工具无一例外,都采用了面向对象的开发技术。这使得与按钮类似的功能无须再大量编程,通过工具栏功能道接拿过来使用即可。这样,程序员的注意力就可以集中在具体的业务处理算法上,软件系统开发效率明显提高。开发时,由以代码行为工作量计算单位,开始转向以功能模块为单位进行计算。

由于相关开发技术处于应用起步阶段,从1995年到2005年,这期间的面向对象开发工具,本身也不太成熟,如有些开发工具,光是摆弄软件界面就非常麻烦,甚至要通过界面定位代码来辅助编程。自然,代码开发工具的自动纠错、智能提醒等功能也很弱,编程人员为一个代码错误,往往发愁几天的现象还依然存在。不过,这一阶段软件系统应用功能和界面外观已经大幅改观,至少已经由二维平面界面变成了三维立体界面。但是,还是存在界面功能呆板、操作不方便、外观效果单一等问题。

给我印象比较深的是,从2006年左右起,在个人电脑中运行日常软件开始顺畅起来——在这以前使用个人电脑,要么内存不够,要么硬盘空间不够,要么操作系统莫名出错,要么软件应用系统运行很卡,反正磕磕绊绊的,总有各种问题。而在2006年后,内存等问题加速解决了——包括价格、功能、成熟度等因素,而相应的软件开发工具也日趋成熟,功能也大大的丰富。在软件界面上安放一个按钮很轻松,用鼠标轻轻一拖,就可以摆放到相应位置。像按钮这样的功能,可以做到不需要编写任何代码,即可在界面上按要求设置。几乎同时,互联网应用开始进入成熟期,短短几年,电商网购已经深入到人们的日常生活之中。这一阶段的软件系统应用功能已经朝智能方向发展,如手机里的智能二维码扫描搜索、大数据智能分析应用、智能图像识别、智能语音识别……人们对软件应用系统不再满足于日常功能的操作要求,而是要求有更好的舒适的操作体验。

从上述应用软件及其相关技术的变化过程可以看出,现在开发技术日趋成熟一般应用技术不再是关注重点,更多的是要侧重关注软件使用者的更全面的使用要求。

关于对软件使用者的关注,让我想起了一件非常有意思的事。

2013年,我第一次上京东网购商品。当我在网站注册完毕,选择好需要购买的商品,去支付时,竟然花了半个小时也支付不成功!这让我非常惊讶!好歹我也是个有20多年经验的IT专业人士,竟然搞不定在线支付,简值太不可思议了!

其支付界面如图

原来,我第一次在该网站购物选择的是用购物卡进行在线支付,该支付界面首先要求输入卡号,然后选择卡号,再输入密码并确认,最后是提交订单确认。上述动作存在两个问题:一是输入确认过程有些拖泥带水;二是输入过程避免不了会发生卡号、密码输入出错的问题。作为一名普通消费者,依次输入完信息后,自然希望给予正确的提示,包括出错提示。可惜部分操作步骤,在输入有误时没有给出友好的、及时的提醒(更不要说感知式的智能提示了),害得我反复尝试了半个小时,才慢慢明白过来。这次购物让我体验很糟糕,差点儿放弃在其上购物了。由此可见,好的软件系统必定需要深入考虑使用者的良好体验,才能把软件做得更好,而不是简单地堆叠几个软件功能。

由此可见,枪也好,软件系统也好,首先它们都有逐步成熟的过程;其次,必须为人的使用,而精益求精。越到后期,越要注重人本身的使用体验要求,而不仅仅局限于功能或技术本身!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-03-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 博文视点Broadview 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档