【软件工程】初识软件

来源:互联网 发布:开票税点怎么算法 编辑:程序博客网 时间:2024/06/05 17:49

            随着微电子技术的进步,计算机硬件在计算速度、存储容量、外部设备等方面发生了翻天覆地的变化。主机成本每2-3年降低50%,内、外存几乎每年降低40% …伴随着计算机硬件的发展,软件的研制和应用也在发生着巨大的变化,但是软件的发展不是不是很顺利。有的软件开发耗费了大量的人力、财力,结果半途而废。软件已经成为限制计算机系统发展的关键因素。

        从宏观上看,软件的组成由程序和文档组成。 程序是用程序设计语言描述的、适合于计算机处理的语句序列;文档是一种数据媒体和其记录的技术数据或信息。 文档详细记录了用户的需求,是专业人员和用户之间通信交流的桥梁,是编写程序过程中重要的指导思想,是开发过程中管理和运行阶段维护的主要工具。

   在这里,我把生活中常见或常用的软件从功能、工作方式、规模、使用频度上简单分了一下类。

   功能:系统类,支撑类,应用类

   我们整天和电脑打交道,Windows系列的系统,Linux系统应经再熟知不过了,系统是一个超级软件,管理控制和维护计算机系统的各种资源,操作系统就是计算机的灵魂,没有它,电脑就没有什么价值了。

    支撑类的软件可以简单理解为应用软件的开发工具,起辅助作用。例如:vb6.0,C++,Office等。应用软件常见的有QQ,飞信,浏览器等。

    工作方式:实时类,嵌入式类

    实时类的软件是当接收输入后在规定的时间内给出合理的输出;嵌入式类将计算机嵌入在某一系统中,使其成为该系统重要组成部分。我觉得二者区别实时类的永远不能停下来,嵌入式的可以单独实现某个功能。

    规模:小型,中型,大型

    这个划分主要是依据程序的大小。小型的不超过2K,中型在5K-50K之间,大型50K-100K之间。

    使用频度:常用,不常用

    根据软件使用的频率分为常用的和不常用的。像一些人口普查软件一般每隔四五年用一次,而像机房收费软件,银行账务软件等是要常年运行的。

 

    软件给我们的生活带来的超乎想象的好处,然而事物都有两面性。在享受软件的好处同时,我们不得不面临一个现实问题—软件危机

    软件开发中有很多困难,这些困难解决不好就会造成非常可观的经济损失。这些困难主要有

    (1)用户需求描述不精确

    (2)开发人员开发的产品与用户期望的不一致

    (3)大型软件多人参与,水平不一致

    (4)开发人员难免产生疏漏和错误

    (5)方法和工具的局限性

   软件做出来以后最终是要让用户满意才行,用户提出的只是一些想法,说出了自己的需要,而开发软件是开发人员做的。俗话说“说和做是两码事”。比如,有人想让你用刻刀雕刻一只狼,给你描述了狼的一些特点和形状等等,根据这些描述你雕刻出来的东西就可能更像一条狗,显然别人会不满意的。 有可能是他描述的狼描述的不准确,也有可能是自己的水平不高,在雕刻过程中难免会忽略一些细节问题,导致做出的东西貌似神离。 其实这些,也和雕刻的方法或工具有关,现在我们有了3D打印机,可以用它来雕刻,做出的东西是及其逼真的。

   做软件和雕刻也是一样的,这些困难使我们在软件开发成本和进度的估计上不准确,软件质量上难以保证,可维护性差,结果造成开发成本上升等一些列严重问题。

 

 

1 0