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

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维护

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

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

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

友情链接:    彩票计划红包聊天室   彩天堂app-首页   鸿博彩票-首页   幸运飞艇概率技巧   幸运飞艇公式规律