学习笔记分类的最新日记

       由于学习的原因,《操作系统》的实验需要在Linux的环境下运行,曾经想过在网站的FTP上实验,但是后来想想不太好,毕竟这是对外的实验,与学校提供的校内站点的Linux实验站点不同,再说我对Linux仅是新手,顶多是入门级,最对是在实验室实验时联系了相关的命令行,还有就是帮www.zhilong.info安装Movable Type时使用了SSH时练习了Unix 命令行,也曾在Windows下安装VMWare Workstation 6来安装虚拟的Fedora 7来实验,但是看到同学安装的OpenSUSE秀的3D桌面效果我就心动了,比之前用的Vista的3D效果好多了,想安装Windows,Linux的双操作系统,毕竟一跑虚拟机我的Windows就卡的一塌糊涂。思考了很久昨天终于下决心安装Fedora 8,我觉得很像Mac,比RedHat 9好看多了,虽然同出自RedHat。

我们计算机学院真能搞活动,今天晚上学生会&分团委弄的SUN的UNIX和Solaris讲座,科协举办北大测试的讲座,同时举行,像我这种一学期难得去听次讲座的人,遇到这两个讲座都想听,没办法阿,将来是想做个程序测试工程师的,现在呢对Unix/Linux比较热衷。6点赶到教室,竟然都满了,还有好多人站在后面,其中不乏一大批大一大二去等着盖章的学弟学妹。像我和室友这样什么都没带,纯粹来听讲座的还真没几个。人又多,那就得有取舍,最后还是听北大测试的讲座,虽然知道那就是个做广告性质的讲座,但是说不定能有点收获呢?这年代听讲座能有大收获真是太少了。

    近两个小时,只听到了几点关心的内容,比如之前上《软件工程》没听到的V模型,迭代模型和敏捷方法。这几个概念对我来说是新知识。

在V模型中,测试过程被加在瀑布模型开发过程的后半部分。个人理解Coding前分析设计和测试是同步的。V Model.jpg

单元测试所检测代码的开发是否符合详细设计的要求。集成测试所检测此前测试过的各组成部分是否能完好地结合到一起。系统测试所检测已集成在一起的产品是否符合系统规格说明书的要求。而验收测试则检测产品是否符合最终用户的需求。

    迭代模型是RUP(Rational Unified Process,统一软件开发过程,统一软件过程)推荐的周期模型。在RUP中,迭代被定义为:迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。所以,在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:(至少包括)需求工作流程、分析设计工作流程、实施工作流程和测试工作流程。

迭代模型的选择使用条件

      1、在项目开发早期需求可能有所变化。

  2、分析设计人员对应用领域很熟悉。

  3、高风险项目。

  4、用户可不同程度地参与整个项目的开发过程。

  5、使用面向对象的语言或统一建模语言(Unified Modeling Language,UML)。

  6、使用CASE(Computer Aided Software Engineering,计算机辅助软件工程)工具,如Rose(Rose是非常受欢迎的物件软体开发工具。)。

  7、具有高素质的项目管理者和软件研发团队。

迭代模型的优点:

与传统的瀑布模型相比较,迭代过程具有以下优点:

  1)降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。

  2)降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。

  3)加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。

  4)由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。

About 敏捷方法     
          XP(Extreme Programming极限编程)的思想源自Kent Beck和Ward Cunningham在软件项目中的合作经历。XP注重的核心是沟通、简明、反馈和勇气。因为知道计划永远赶不上变化,XP无需开发人员在软件开始初期做出很多的文档。XP提倡测试先行,为了将以后出现bug的几率降到最低。
        其他关于敏捷方法可参见敏捷方法(中文资料)或者敏捷方法(English)
  另外我还了解了原来软件测试也需要了解项目管理的知识,有协调和管理的能力。而一个软件开发人员3-5年就要考虑转管理岗位,可是那位高级讲师说要精通一门编程语言要工作两年以后,我在思考那精通后转到管理岗位,那精通了这门语言有何用?管理者都需要掌握几门语言。
  最近由于学习的原因,开始使用Linux操作系统,当然是使用虚拟机来安装了,毕竟安装Windows&Linux双操作系统很烦,自己也由于经常安装操作系统而害怕再安装双操作系统,怕出问题,还会返璞归真好。用VMWARE WORKSTATION 6再次安装Fedora 7,由于看不惯中科红旗Linux的仿 Windows,和RedHat的界面,最后选择了RedHat旗下的Fedora这个系统有点像Mac,有点喜欢。安装完全功能要1165个文件,竟然在我拔掉网线,关掉卡巴斯基和Windows木马防火墙及360安全卫士后花了一个半小时,真崩溃。拔网线是为了防止内部局域网有ARP攻击,现在ARP攻击越来越狠了,必须引起足够的重视 。
 也许Linux比Window安全点 ,没有那没多的安全防范问题 ,但是在Linux上安装 软件那才是最头疼的事 ,就拿安装 Java插件来说吧 ,Windows轻松一点直接安装,Linux还要在 终端下面一行一行的输入代码来解压,然后再配置,晕阿,真烦。虽然是学软件的,Java老师也说了编程的只会在Windows下编程 而 不了解其他操作系统下面的编程就太失败了,Windows仅是众多操作系统中的一种而已(原话记不得了,大概就这个意思),看着老师用IBM装着Fedora,再听听他的话,我之前确实不屑Windws,决定好好研究一下Unix&Linux,现在看来 是要好好研究了,但是从一个小程序的安装来看,Windows无疑是强大的。毕竟还是支持Winows的软件多,EXE文件一大把,虽然其中不乏病毒,但是Linux下面输代码来安装软件确实让 长时间使用Windows的我有点 不适应。还是慢慢研究,慢慢适应吧。
PS:特喜欢Fedora下的这个 简体中文输入法。比微软的拼音好多了。
      最近在学习Perl语言编程,学习笔记应该会跟上。

支持2008北京奥运会

支持2008北京奥运会!I'm a Chinese!

为地震灾区的人民祈福!