进销存系统软件
从事软件开发工作必须具备哪些知识

1.首先热爱这个专业。只有这样,才会从 抽象的理论中找到实实在在的快乐。如果 

不热爱她,或者只 因为这是个热门专业,那么极 力要求放弃这个专业,因为计算机是 一把双刃剑,学好了会飞黄腾达,学不好 毕业后会极其痛苦,高不成低不就,没有发 展潜力,如同学 英语专业的人到了美国一样。 

2.不要用 功利眼光对待这个学科,这绝对 不是点点鼠标就能挣钱的专业。不要去想做网站 挣钱,不要想 靠点击率增加广告,这个在4年前已经过时,如果现在仍然这么想,千万别 说出来,因为会觉得很土。计算级 专业的成就感总是伴随着身体上的痛苦而来,肩周 炎,颈椎病,眼睛干涩,掉头发,腰椎间盘突出,关节炎

3.搞明白计算机“科学”与“技术”的含义。做,做图片,做flash,玩游戏,上网, 听歌,录mp3,搞电影字幕,装windows,改注册表,为软件皮肤……这通通 不叫计算机科学 与技术,如果是计算机的学生,会做以上事情,那是应该的,不会做,也没什么丢人 的,需要的 不是让别人称作“高手”。 

4.明确最 终的专业方向是软件还是硬件。方向是网络?网络不是专业方向。网络是最优 秀的软件工程师、最优秀 的硬件工程师编译原理、数据库原理、软件工程之类课程后,仔细的 听一听硬件课程,软 件工程 绝对不是背背就能过的课,计算机 理论可能是一个人就能研究出来,软件工程是成 千万网 软件工程师几十年来失败的教训凝结成的结晶,请认真听课。不要问应该学什么 语言,计算机 专业的人必须具备任何语言1小时上手的能力,最起码要在10分钟把"hello world"做出来。如果说 有必须学的两种语言,那他们是c++与java,学他们不是在学语言, 而是在学thinking in c++,thinking in java,一个是 软件的基础理论,一个是面向对象。

是根据 用户要求建造出软件系统或者系统中的软件部分的过程。软件开 发是一项包括需求捕捉、需求分析、设计、实现和 测试的系统工程。软件一 般是用某种程序设计语言来实现的。通常采 用软件开发工具可以进行开发。软件分 为系统软件和应用软件,并不只 是包括可以在计算机上运行的程序,与这些 程序相关的文件一般也被认为是软件的一部分。 软件设 计思路和方法的一般过程,包括设 计软件的功能和实现的算法和方法、软件的 总体结构设计和模块设计、编程和调试、程序联 调和测试以及编写、提交程序。

1计划

对所要 解决的问题进行总体定义,包括了 解用户的要求及现实环境,从技术、经济和社会因素等3个方面 研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得 的效益和开发进度作出估计,制订完 成开发任务的实施计划。

2分析

软件需 求分析就是对开发什么样的软件开发公司的一个 系统的分析与设想。它是一 个对用户的需求进行去粗取精、去伪存真、正确理解,然后把 它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段 的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需 求规格说明书文档并最终得到用户的认可。需求分 析的主要方法有结构化分析方法、数据流 程图和数据字典等方法。本阶段 的工作是根据需求说明书的要求,设计建 立相应的软件系统的体系结构,并将整 个系统分解成若干个子系统或模块,定义子 系统或模块间的接口关系,对各子 系统进行具体设计定义,编写软 件概要设计和详细设计说明书,数据库 或数据结构设计说明书,组装测试计划。在任何 软件或系统开发的初始阶段必须先完全掌握用户需求,以期能 将紧随的系统开发过程中哪些功能应该落实、采取何 种规格以及设定哪些限制优先加以定位。系统工 程师最终将据此完成设计方案,在此基 础上对随后的程序开发、系统功 能和性能的描述及限制作出定义。

3设计

软件设 计可以分为概要设计和详细设计两个阶段。实际上 软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行 程序的程序单元。可以是一个函数、过程、子程序、一段带 有程序说明的独立的程序和数据,也可以是可组合、可分解 和可更换的功能单元。模块,然后进行模块设计。概要设 计就是结构设计,其主要 目标就是给出软件的模块结构,用软件结构图表示。详细设 计的首要任务就是设计模块的程序流程、算法和数据结构,次要任 务就是设计数据库,常用方 法还是结构化程序设计方法。

4编码

编码是 指把软件设计转换成计算机可以接受的程序,即写成 以某一程序设计语言表示的“源程序清单”。充分了 解软件开发语言、工具的 特性和编程风格,有助于 开发工具的选择以及保证软件产品的开发质量。

当前软 件开发中除在专用场合,已经很 少使用二十世纪80年代的高级语言了,取而代 之的是面向对象的开发语言。而且面 向对象的开发语言和开发环境大都合为一体,大大提 高了开发的速度。

5测试

软件测 试的目的是以较小的代价发现尽可能多的错误。要实现 这个目标的关键在于设计一套出色的测试用例(测试数 据与功能和预期的输出结果组成了测试用例)。如何才 能设计出一套出色的测试用例,关键在 于理解测试方法。不同的 测试方法有不同的测试用例设计方法。两种常 用的测试方法是白盒法测试对象是源程序,依据的 是程序内部的的逻辑结构来发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用例设 计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法 和黑盒法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接 口错误包括内部/外部接口、资源管理、集成化以及系统错误。黑盒法 用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。

6维护

维护是 指在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对软件 产品所进行的一些软件工程的活动。即根据 软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠 正运行中发现的错误。编写软件问题报告、软件修改报告。

一个中等规模的软件,如果研 制阶段需要一年至二年的时间,在它投入使用以后,其运行 或工作时间可能持续五年至十年。那么它 的维护阶段也是运行的这五年至十年期间。在这段时间,人们几 乎需要着手解决研制阶段所遇到的各种问题,同时还 要解决某些维护工作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还 可以使它扩展功能,提高性能,为用户 带来明显的经济效益。然而遗憾的是,对软件 维护工作的重视往往远不如对软件研制工作的重视。而事实上,和软件研制工作相比,软件维 护的工作量和成本都要大得多。

在实际开发过程中,软件开 发并不是从第一步进行到最后一步,而是在任何阶段,在进入 下一阶段前一般都有一步或几步的回溯。在测试 过程中的问题可能要求修改设计,用户可 能会提出一些需要来修改需求说明书等。

友情链接:    23选5开奖结果查询   K8计划聊天室   118彩票   K8彩苹果APP下载   彩票平台代理