当前位置:首页 > 网上商城 > 正文内容

软件开发与软件工程

淘梦者2022-02-08 09:47:22网上商城233

软件开发 软件(Software)简单的说就是那些在计算机中能看的着,但摸不着的东西,概念性的说软件也称为“软设备”,广义地说软件是指系统中的程序以及开发、使用程序所需要的所有文档的集合。软件分为系统软件和应用软件。 软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。 软件被应用于世界的各个领域,对人们的生活和工作都产生了深远的影响。
软件开发的内容  不仅仅是用户需求,应该是开发中遇到的所有的需求。比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据......为了清楚地知道这些需求,你经常要和客户、项目经理以及项目伙伴交流。

设计
  编码前,肯定有个计划告诉你要做什么,结构是怎样等等。你一定要按照这个来做,否则可能会一团糟。

编程
  如果在项目截止日,你的程序不能跑起来或达不到客户的要求,你就拿不到钱。

测试
  目的是让你知道,什么时候算是完成了。如果你聪明,你就应该先写测试,这样可以及时知道你是否真地完成了。否则,你经常会不知道,到底有哪些功能是真正完成了,离预期目标还差多远。


  软件开发中,客户和开发人员都有自己的基本权利和义务。

客户
  定义每个用户需求的商业优先级;


  制订总体计划,包括用多少投资、经过多长时间、达到什么目的;


  在项目开发过程中的每个工作周,都能让投资获得最大的收益;


  通过重复运行你所指定的功能测试,准确地掌握项目进展情况;


  能随时改变需求、功能或优先级,同时避免昂贵的再投资;能够根据各种变化及时调整项目计划;


  能够随时取消项目;项目取消时,以前的开发工作不是一堆垃圾,已开发完的功能是合乎要求的,正在进行或未完成的的工作则应该是不难接手的。

开发人员
  知道要做什么,以及要优先做什么;


  工作有效率;


  有问题或困难时,能得到客户、同事、上级的回答或帮助;


  对工作做评估,并根据周围情况的变化及时重新评估;


  积极承担工作,而不是消极接受分配;


  一周40小时工作制,不加班。

编辑本段软件开发过程
  软件开发过程分为5个阶段:

分析
  软件需求分析就是回答做什么的问题。它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。

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

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


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

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

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


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


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

编辑本段软件开发专业专业培养 
  计算机:软件开发专业主要培养德智体全面发展,具有一定计算机软硬件维护、网络组建、维护管理的高级实用技术型人才。通过本专业的学习,能熟练掌握常用的计算机软件的使用、维护与技巧;在硬件方面学生应了解计算机硬件的发展,熟练掌握计算机组装的方法,能熟练运用应用软件检测计算机性能、故障的范围所在,掌握硬件故障的一般处理方法;在网络方面,学生应掌握目前流行网络的技术特点,掌握网络工程、网络维护、网络安全及应用方面的知识。能胜任一般网络工程方案的设计、组建、网络维护、及简单网站的建设与维护。同时,使学生了解由于IT技术的发展而引起的法律和道德方面的问题。

就业方向
  本专业毕业生适合的工作岗位是计算机程序设计师。适合于熟练地按照工程化的思路进行软件编制、软件测试的工作岗位,能担任各种企事业单位和各级工程建设部门、管理部门的计算机软件和硬件维护、网络的组建、维护等工作,也可从事计算机研究与应用、软件开发等方面的工作。就业范围为:计算机软件公司、具有软件开发能力的大型企业及事业单位、大专院校和科研院所。

编辑本段软件开发流程流程的总括
  软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。


  1 相关系统分析员和用户初步了解需求,然后用WORD列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。


  2 系统分析员深入了解和分析需求,根据自己的经验和需求用WORD或相关的工具再做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。


  3 系统分析员和用户再次确认需求。


  4 系统分析员根据确认的需求文档所例用的界面和功能需求,用迭代的方式对每个界面或功能做系统的概要设计。


  5 系统分析员把写好的概要设计文档给程序员,程序员根据所列出的功能一个一个的编写。


  6 测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能,然后验收。


软件工程


软件工程 (Software Engineering,简称为SE)是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件,嵌入式系统,人机界面,办公套件,操作系统,编译器,数据库,游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业,农业,银行,航空,政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。


基本信息  软件工程[1]一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义:


  

  
软件工程


(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。


  (2)、IEEE在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究


  (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。


  目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。


  (4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。


分享给朋友:

相关文章

哪家平台海外购物便宜?

哪家平台海外购物便宜?

之前到过好几个平台购买过东西,还对比了一下,iherb平台比较好,他们家的东西性价比高,价格比较优惠,东西也真,而且时常还有优惠活动,现在就在搞活动了,大概5折到7折,我已经买了好多,都是海外的一些牌子产品。...

京东商城笔记本电脑哪个品牌性价比高一点

京东商城笔记本电脑哪个品牌性价比高一点

1、联想,售后好,性能稳定性较好,相对价格较高,散热一般!2、神州,价格最低低,做工粗糙。3、惠普,性价比不错,不过兼容性不太好,散热不好!4、华硕,性价比比较好,做工也不错,散热较佳!5、宏基,价格较低,性价比高,散热差!6、SONY,性...

找一篇物流配送方案设计的论文

找一篇物流配送方案设计的论文

物流管理专业论文从物流现代化实践看物流管理专业物流管理,是世界尤其是中国近几年才发展起来的一门新兴学科,拥有广阔的发展前景和无限潜力,随着改革开放后的经济腾飞,物流业的发展程度已成为衡量我国现代化程度和经济发展效率的重要标志,尤其是经济全球...

第三方支付的实现原理

第三方支付的实现原理

除了网上银行、电子信用卡等支付方式以外还有一种方式也可以相对降低网络支付的风险,那就是正在迅猛发展起来的利用第三方机构的支付模式及其支付流程,而这个第三方机构必须具有一定的诚信度。在实际的操作过程中这个第三方机构可以是发行信用卡的银行本身。...

当当网物流配送模式 仓储结构是什么

当当网物流配送模式 仓储结构是什么

在配送模式上选择了第三方物流的方式。不同于卓越的物流模式——大型城市建立了自己独立的配送中心,以自身为主,同时相应的在物流高峰期借助一部分第三方的力量;小型城市及偏远地区以邮政方式为主,当当网基本完全采用第三方物流的配送模式。去年,中国互联...

网上的电影众筹真的假的?

网上的电影众筹真的假的?

众筹6000万,回报20亿,你心动了吗? 2019年,内地电影年全年度票房达到了642亿,已经实现2010年破百亿以来连续10年的增长了。期间,国内电影票房冠军从几亿上升到56.8亿,让很多人实现了一夜暴富。电影行业的欣欣向荣的景象让很多人...