维利安娜对此做出了很多应对措施,但是,结果并没有像她期望的那样,握手机器人仍然存在故障可能性,反而可能方程式的约束性会随着握手机器人的行为比列而有所增加,寿命上限后期,还要考录软件的生命周期和硬件老化问题,如果这样一批机器人发行,那么机器人可能永久性的被世界政府封杀,再没有美好未来。
每一次实验都将是困难重重,有的时候,就算花再大的力气也是竹篮打水一场空,甚至,有的人究其一生,还是没有达到自己所期望的目标,但是科学的魅力让很多人甘愿飞蛾扑火,在所不惜。
当然,这需要运气,可能在偶然的机会,千里马知遇伯乐,或者伯乐知遇千里马,这都是万幸之中的几率。
维利安娜就是这样一个被科学恩宠的女人,而且这个女人从来不会尝试失败的滋味,因为这是一个愿意为科学献上所有的女人,不管需要多少时间,需要多少资源,她都会不顾一切,直到山穷水尽,直到肌肤消瘦,失败也就意味着人生的结束,没有重新再来的机会,“不管是怎样的路,这个女人都会赌上全部。”这是哈鲁斯·弗拉里对维利安娜的最终评价。
哈鲁斯·弗拉里与维利安娜的奇遇,正是因为这种可能工程式,普林斯顿大学提供给学生使用的计算机实验室只有三个,其中只有一个是硬件操作室,维利安娜作为攻读博士位的借读生,其实她的真实年龄比正常的大学生还要小,很多人都只会认为维利安娜只是一个大一的学员,作为借读生,在专业中维利安娜并没有被区分开来,“就像普通大学生一样就好”这是她自己向学院申请的,她放弃了所有博士位攻读生的权利,因为哪些东西对她来说都是没有必要。
独立的实验室?
她更喜欢从别人的困惑中或者失败中发现新的可能性。
所以她经常会一个人留下来为导师收拾实验室,这一举动获得了导师的绝好口碑,甚至有的时候将实验室的门卡都交给维利安娜保管。
握手机器人故障发生后,维利安娜更是增加了呆在实验室的时间,从硬件开始分析,但是她并没有找到问题所在。
因为问题根本不是出在硬件上。
维利安娜发现问题所在的一次偶然就是在哈鲁斯·弗拉里的软件学讲座上。
那节课上哈鲁斯·弗拉里讲述的是软件危机问题。
“软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重的问题。这些问题绝不仅仅是不能正常运行软件才具有的,实际上,几乎所有软件都不同程度的存在着这些问题。”哈鲁斯·弗拉里在讲座中描述什么是软件危机。“概括地说,软件危机包含下述两个问题,如何开发软件,以满足对软件日益增长的需求,如何维护数量不断膨胀的已有软件,鉴于软件危机的长期性和症状不明显得特征,近年来有人建议把软件危机更名为“软件萧条(depression)”或者“软件困扰(affliction)”。不过“软件危机”这个词强调了问题的严重性,而且也已经为绝大多数软件工程师所熟悉,那么。。。。。。。”
哈鲁斯·弗拉里环视了一周,这门课本来在计算机专业中就是人们,今天又只是例行讲座,大概很多学生都不是自愿来的,他看到很多学员都只是空手,桌上什么也没有,有的带着笔记本,但是笔记本并没有翻开,连里面的白页都看不见,或者连筆盖都还没有拧开。
他的眼睛停在了一个方向,那里坐着一个女生,女生很安静,但是表情有些严肃,面对着大银幕,荧幕上其实什么也没有,哈鲁斯·弗拉里不喜欢幻灯片,那种东西需要浪费很多时间准备,他喜欢那些凭记忆学习的学生,这样的学生就算没有天赋,也肯付出努力。
“那么,接下来,我希望有同学回答我几个问题,如果答案是我可以接受的范围之类的,我可以作为导师亲自辅导他的一门课程,这是我哈鲁斯·弗拉里在这次讲座上的承诺。”
哈鲁斯·弗拉里的讲座不多,但是仍然还是会有学生是自愿来听的原因是在每次讲座结束后,他总是会挑选几个比较认真听他讲座的学员进行知道,而这一次是一门课程。
原本很多低着头的学员都抬起头来,因为那些被哈鲁斯·弗拉里稍微辅导过的人,在他的课程领域内,不管是不是他教导的课程,毫无意外那些学员都是以高分PASS的,这才是那个承诺的真正魅力。
“请问,您说的是真的吗?”维利安娜,站了起来问道。
不过她的发言也暴露了她的意图和这是他第一次来听哈鲁斯·弗拉里的讲座的信息。
“这位同学是第一次来听我的讲座吗?”
“是的,虽然并不是第一次听您讲课,但是我觉得您的指导方式很特别,会引发一个人的大脑冲动,而且我的同学们都对您的评价相当高,所以我觉得是一个不错的机会。”维利安娜答道。
“大脑冲动?百分之十的神经冲动才可能引发一次大脑冲动,那已经相当于离魂的概率了,对你来说,我真的可以得到那么高的评价吗?”哈鲁斯·弗拉里笑着说道。
“这只是一个评价,您可以不介意,我只是遇到了一些麻烦,如果可以得到这个机会,我会很感激您的,作为一位科学领导者,您在计算机领域内的名声相信很多人都知道,虽然,作为教授只是一时,但是能在这种情况下得到您的教导,我相信我会感谢您。”
“感谢我?看来你不想基督教徒,我在这里听到最多的感谢的话是:感谢上帝给我这个机会。你是一个有趣的学员,对于你出于什么原因,需要这个机会,这些都不可能成为我丢失公平的理由,但是,我可以让你得到第一个机会,当今社会上软件危机已经表现出相当多的典型,你认为产生这些软件危机的原因是什么?”哈鲁斯·弗拉里笑道。
“很高兴因为我的举动幸运的得到这次机会,那么感谢您亲自指导的机会了。”
“有自信固然好,但是过度自满可就不是好事了。”
“自满其实是绝对的自信,不过这是自满还是自信,其实只是取决于您的观念。”维利安娜的话无意让很多人惊讶,作为一个女学员这样的勇气固然可嘉,但是这样的态度未免过于狂妄,如果是那些威信早定的老教授早就已经发飙了。然后很多学员已经开始议论纷纷了。
“当然,希望我的回答会让您满意。”维利安娜说道:“软件危机的各种表现主要取决于用户,以及成本,因为软件开发的成本和进度往往很难估算的很准确,有些程序员会为了赶进度和节约成本所采取的一切权益之策,而这样的做法又往往损害了软件产品的质量,从而不可避免的引起客户的不满,导致用户对“已完成”的软件系统不满意的想象经常发生,软件的质量也往往靠不住。这一系列的原因,都与软件商业化有关,因为一旦商业化,那么也就意味着与利益相关,在利益之间,人性以及道德便会有涣散现象,想要避免这样的现象,这需要资深的开发人员,以及一家责任制化的公司,同时满足这两个条件,这可以降低软件危机的可能性,但是想要做到更好,仅仅如此是不够的。”
“如果这就是你的答案?我想你可以成为一名营销员或者经济学者,而不是一名软件工程的学员。”
“当然,这样的答案并不会让您满意,但是这确实是软件危机的起因,只不过,在软件开发和维护的过程中,存在着许多严重问题,产生软件危机的原因可以分成两方面,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。”维利安娜停顿了一下,接着说道:“软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件,由于软件缺乏“可见性”,在书写程序代码并计算机上测试运行之前,软件开发过程情况进展较难衡量,软件的质量也较难评价,因此,管理和控制软件开发过程中相当困难。此外,软件在运行过程种不会因为使用时间过长而被“用坏”,如果运行中发现了错误,很可能是遇到了一个正在开发时期引入测试阶段没能检测出来的错误。因此,软件维护通常意味着改正火修改原来的设计,这就是客观上使软件较难维护。
同时,软件也不同于一般程序,它的特有的显著特点是规模庞大,而且,程序复杂性将随着程序规模的增加而呈指数上升,为了在预定时间内开发出规模庞大的软件,必须由很多人分工合作,然而,如何保证每个人完成的工作合在一起确实能够构成一个高质量的大型软件系统,更是一个极端复杂困难的问题,这不仅涉及许多技术问题,诸如分析算法、设计方法、形式说明方法、版本控制等,更重要的是必须有严格而科学的管理。
软件本身独有的特点确实给开发和维护带来了一些客观困难,但是人们在开发和使用计算机系统的长期实践中,也确实积累和总结出许多成功的经验,比如,教授您曾经在软件防御中,使用具有攻击性的伪代码作为动态感应,成功避免了黑客对浏览器的成功篡改,您还在这些伪代码中设置了标记指针,只要是进入了这些伪代码的攻击范围的黑客都会被标记,然后您可以以牙还牙的是对方计算机或者服务器种下千仞(千仞与光剑都是计算机病毒,是攻击系统和防御系统最常用的病毒之一,千仞作为攻击病毒,侵入系统之后如千万把刀刃型数据立即隐藏在数据之中,无形无影,踪迹难寻。)。。。。。。”