欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 读后感 > 软件工程思想读后感

软件工程思想读后感

时间:2020-06-07 15:12

求一篇《软件工程导论》(第五版)的读后感,2000字左右,谢谢大家了,急用

1、软件工程是一门指导软件开发和维护的工程学科,主要研究软件开发和维护的工程技术和软件项目管理等内容,其中涉及如何保证软件产品的质量和可靠性,如何提高软件开发效率和拥护满意度等。

2、软件工程目标:生产具有正确性、可用性以及开销合宜的产品。

正确性指软件产品达到预期功能的程度。

可用性指软件基本结构、实现及文档为用户可用的程度。

开销合宜是指软件开发、运行的整个开销满足用户要求的程度。

这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。

3、软件生产历经4大阶段分别为:程序设计阶段(1946-1956年)、软件开发阶段(1956-1968年)、软件工程阶段(1968年以后)、计算机辅助软件工程阶段4、常见的软件过程模型:边改边做模型、瀑布模型、演化模型、增量迭代模型、喷泉模型5、软件过程的研究,标志着人们为解决软件危机问题,把关注的焦点由编程转移到了软件开发的整个过程,包括分析、设计、编程和测试4个核心阶段和需求调研、运行与维护两个延伸阶段说明软件质量、软件开发效率、软件的可靠性、可维护性问题涉及了软件生存周期的所有阶段。

6、软件生存周期:一个软件从定义到开发、使用和维护,直到最终被弃用,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期。

软件的生存周期可分为八个阶段:①问题定义;②可行性研究;③需求分析;④总体(概要)设计;⑤详细设计;⑥编码与单元测试;⑦综合测试;⑧软件维护。

7、需求分析:系统开发前期需求分析很重要,它是为了有效解决用户问题的需要进行的一项工程活动,所需要考虑的需求问题是功能需求、数据需求、性能需求和接口需求,开发者承担分析任务,核心是用户。

其步骤有三个:①获取客户需求,客户泛指某个人或机构部门等,一般方法是调查,包括访谈、座谈、问卷、跟班和收集资料,需求规约可表达用户的软件价值。

②建立需求模型,它是用户需求的图解,一些常用的模型有:业务树图、用例图、活动图。

分别用于结构化需求建模、系统业务举例和反映系统工作流程。

③进行需求验证,要验证的主要内容有:有效性验证、一致性验证、完整性验证、现实性验证和可检验性验证。

感悟:了解了什么是“软件危机”,透过软件工程于解决“软件危机”的重要性、软件工程三条重要线索、软件工程知识体系函括内容及软件工程各类生存期模型,我对软件工程思想及“工程化”软件开发的流程有了较系统的了解,透过软件工程的起源,认识到:实现软件工业的产业化,软件工程必须是真正意义上的工程化。

从软件开发三条线索(开发、管理、改进)来看,软件开发的过程必须规范化(各阶段都必须形成相应文档;编码必须依照通用可读性严格遵照编程规范……);软件项目管理的核心是项目规划和项目跟踪控制,保证软件工程开发的成功完成,软件开发流程的规范化在软件项目中有着重要的作用,通过不断地优化和规范过程,企业可以提高软件生产能力。

从需求分析到维护,透过软件的开发流程具体实施的学习,我对软件项目开发的流程有了更深的理解,例如通过需求规格说明书、可行性研究说明书、数据库设计说明书、需求分析说明书、总体设计说明书、详细设计说明书等六份作业的完成虽然很不完善,但仍让我对需求分析建模和设计中用到的方法有了更好的理解并熟悉了六份文档的格式。

学了这门课才知道软件开发中每一阶段都有文档的产生,其管理与应用也是一门大学问……此外,这门课程里讲授了很多我以前从未接触过的方法和软件如UML模型、MVC模型、visio的强大绘图建模功能、这些知识不仅能应用于软件工程,也能应用于其他的很多领域,这门课结束了,但这些方面学习我还将继续的。

我为什么要选择软件工程 英语作文

软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义:   Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

  IEEE:软件工程是开发、运行、维护和修复软件的系统方法。

  Fritz Bauer:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。

  软件工程学的内容  软件工程学的主要内容是软件开发技术和软件工程管理。

  软件开发技术包含软件工程方法学、软件工具和软件开发环境;软件工程管理学包含软件工程经济学和软件管理学。

  专业简介  是计算机领域发展最快的学科分支之一,国家非常重视软件行业的发展,对软件人才的培养给予了非常优惠的政策。

本专业培养掌握计算机软件基本理论知识,熟悉软件开发和管理技术、能够在计算机软件领域中从事软件设计、开发和管理的高级人才。

  主修课程  该专业除了学习公共基础课外,还将系统学习离散数学、数据结构、算法分析、面向对象程序设计、现代操作系统、数据库原理与实现技术、编译原理、软件工程、软件项目管理、计算机安全等课程,根据学生的兴趣还可以选修一些其它选修课。

  毕业去向  除考取国内外名牌大学研究生外,主要毕业去向是计算机软件专业公司﹑信息咨询公司﹑以及金融等其它独资、合资企业。

  培养目标  本专业培养适应社会发展需求,德、智、体、美全面发展,具有扎实的计算机应用理论和知识基础,掌握软件工程领域的前沿技术和软件开发方法,具有较强的实践能力和创新精神,具备较强的软件项目的系统分析、设计、开发和测试能力,能够按照工程化的原则和方法从事软件项目开发和管理的应用型人才。

  就业方向  本专业学生毕业后可以从事各级各类企事业单位的办公自动化处理、计算机安装与维护、网页制作、计算机网络和专业服务器的维护管理和开发工作、动态商务网站开发与管理、软件测试与开发及计算机相关设备的商品贸易等方面的有关工作。

  就业前景分析  目前我国的软件行业规模不是很大,有些软件企业在软件制作上,也只是采用了一些软件工程的思想,距离大规模的工业化大生产比较还是有一定的差距;原因有管理体制的问题,市场问题,政策问题,也有软件工程理论不全面和不完善的问题。

所以软件工程的研究和应用,以及我国软件行业的进一步发展,都需要一定的既有软件工程的理论基础和研究能力,又有一定的实践经验的软件工程科学技术人员来推动。

软件工程的前途是光明的。

  软件服务外包属于智力人才密集型现代服务业。

大量著名外包企业落户宁波。

主要就业去向包括软件外包与服务企业、信息产品与服务企业,担任程序员、软件测试员、项目经理等工作岗位  技能考证  软件设计师、系统分析师、网络工程师、计算机办公软件应用、微机系统维修员、计算机网络管理员、计算机程序员、网络编辑员  开设软件工程专业的高校  辽宁工程技术大学、清华大学 、青岛科技大学、哈尔滨工业大学、北京大学、南开大学、天津大学、东北大学、吉林大学、复旦大学、同济大学、东南大学、浙江大学、厦门大学、山东大学、武汉大学、湖南大学、中山大学、重庆大学、重庆邮电大学、西安邮电大学、四川大学、云南大学、中南大学、郑州大学、南京大学、华中科技大学、北京交通大学、北京邮电大学、北京理工大学、国防科技大学、西安交通大学、北京工业大学、华南理工大学、电子科技大学、上海交通大学 西北工业大学、西北工业大学明德学院、大连理工大学、河北师范大学软件学院、华东师范大学、西安电子科技大学、北京航空航天大学、中国科学技术大学、中南大学、深圳大学、太原理工大学、湖南涉外经济学院、长沙学院、南京信息工程大学、浙江万里学院等

我高中毕业没考上大学,可以去学软件工程吗

出来就业如何

如果我去找工作,没有文凭怎么办啊》

?匦路⑾秩砑?こ痰谋局省?acobson等撰写了三篇文章详细阐述Semat思想,本刊将陆续刊载,本文是其中第二篇。

这种行为可以从很多地方看出来,很多团队草率地丢弃昂贵的过程和工具的投资,甚至在尝试它们之前。

每个项目都采用新方法。

每次工作发生变化,在手头真正的工作取得进展前,他们必须学习新方法。

这是没有效率的,人们不能从经验中学习,因为他们永远从头开始。

底线是,没有什么新事物能够被适当地固定下来即使经过几种现代软件开发趋势,最流行的软件开发方法仍然是规范型的瀑布开发或自由hacking。

作为一个行业,我们没有什么真正可以坚守的东西,而且一切似乎没有什么变化。

最新横扫行业的趋势是敏捷。

现在,我们可以很明确地说,敏捷运动对软件产业做出了非常积极的 [1] 贡献。

它提醒我们,软件开发中,人是第一位的,也是最重要的。

事实上,这不是什么新观念,但这是重要的,而且这一点似乎被以前更加技术导向的趋势所忽视,比如说面向对象和Java编程。

通过展现一系列优点,敏捷宣言创造了某种强健和适应力强的东西,可以抵挡下一次趋势带来的变革风浪。

[2]许多声称支持敏捷哲学的敏捷方法,却没能做到这一点,这是非常让人遗憾的。

对一项将人的价值放在过程和工具之上的运动来说,这确实带给了我们很多新的过程和工具。

其中的大部分已经显示出效率,通过将团队带回到之前完成的开发软件工作。

但在重新聚焦到这上面之前,许多人已经迷失或迷茫,因为将新术语引入旧事物后,让人觉得这一切似乎是全新的。

这个对旧思想的不断重新包装和品牌重树让软件开发团队的工作方式剧烈摇摆。

对他们的工作和产品任意命名,而不是让人们远离浪费时间的工作,将精力重新聚焦在对高质量软件的开发上。

即使有些方法能够像敏捷哲学一样正确、有益,但相关的信息可能会在摇摆和炒作中丢失。

我们已经开始看到对敏捷的反弹,我们担心的是利益将会丢失,当早期使用者投入下一个趋势,而晚期大众则重新主张自己的权利,拒绝采纳这些显然不再流行的东西。

有可能会发生的事情是,我们增加更多时髦的词汇和相互冲突的名词,最终为这一切喧嚣所累!很显然,我们需要停止对流行和永远令人失望的简单答案的追逐,同时不能阻碍创新和新想法。

为了做到这一点,人们需要停止对旧思想不断重新包装和品牌重树。

相反,他们应侧重于帮助人们了解如何建立优秀的软件。

但我们如何才能重点推动这一变化?我们认为,这个理论就在眼前我们要做的只是抓住它。

首先,我们应该从所有流行的方法、过程和实践开始,并从中提炼出软件工程的真理。

然后,我们可以描述和捕捉一个最小集合的基本概念,以最小独立过程的形式我们将这个本质物的最小集合称之为内核。

然后以这个内核为出发点,我们可以分析现有的过程和方法,并确定它们所包含的实践。

从内核开始,我们可以找到一种描述实践的方式,使它们能够进行比较和结合。

现在所说的这种创造理论的方法本身并不是理论。

这是我们已经做过的事情。

通过研究一些方法,包括XP、Scrum和统一过程,我们的团队已经确定了20多个内核元素,我们总是做的事情或产生的东西。

从表面上看,在这些被研究的方法和我们的工作方式中,有可能会出现很大差异;但在实质上,它们有相同的DNA。

举例来说,你可以捕捉功能或用例或用户故事的条件,你可以在没有生命周期与统一过程的生命周期,甚至瀑布生命周期(就像有些人仍然在坚持的那样)的情况下使用这些条件。

这些方法肯定有一个共同基础,能够以小的简单的内核要素集的形式被捕获。

现在,还不能冒失地声称,我们的内核提供了必要的理论。

需要有比我们更多、更大的头脑来做到这一点。

但是,我们会将它作为一项证据,证明它的能力和我们需要的理论就近在眼前。

许多大公司都有自己的方法或过程,也就是一系列标准方法,搭配自己对更具体业务的想法。

这些过程通常要用一本厚书或网站来介绍,大量资金被投入到归档工作中。

有时,人们被训练使用这些过程,有时只是被简单告知它们在哪儿。

在现实中,过程常常被忽视;仅有的被实际使用的部分是,组织中形成了口头传统的那些。

这被解释成重新发现的自然法则:人们不看过程的书籍。

新的思路引入到组织中,旧过程退出流行,而有关它们的书成为摆设。

在某些大公司甚至会出现多个过程。

例如,大型系统集成商可能有十个或二十个不同的过程。

有时它们很相似,但相似性背后隐藏着差异。

如果贵公司采用这种实践观,你就不需要因为一些新的性感的东西正成为流行,而抛弃整个工作方式。

相反,你只需要对现有的工作方式进行改进,一次改进一个实践。

你甚至可以采取那些被其他公司使用的实践,而不用丢掉似乎运作良好的现有实践。

作为开始,你需要将现在的工作方式看作一个实践集合。

然后寻找你的痛点,然后修补目前的工作方式,通过删除没用的实践,代之以解决这些薄弱环节的实践。

一旦你理解了内核和它的使用,就很容易做到这一点。

在具有多种不同工作方式的大型组织,你可以使用此方法先后改进每个工作方式,而不必强迫大家使用相同的方法或过程。

这种做法将使新实践更容易被采纳,而无须改变其他实践。

想象一下,几年前,你已经引入了内核,并描述你的实践。

然后,你将能够轻松引入Scrum,通过用Scrum取代项目管理中现有的实践,而无须对其他实践进行任何重大修改。

展望未来,Scrum将很有可能被新的实践代替,你将能够很容易地做到这一点了。

如果我们的技术学院或大学教授学生软件工程基础知识,然后训练学生在一系列良好的实践中使用该基础,那将是非常棒的。

教育将会更合乎逻辑,因为它着重以独特的想法,而不是特定的思想,来形成每个方法、过程或方法论。

我相信学生们会喜欢的。

这里也为相关研究留下了很多空间。

记住Kurt Lewin的话:没有什么比一个好的理论更实用了。

一个好的理论使得学习和开发你的知识更容易,而不会带来过分的崇拜。

这将是聪明的。

大多数大学教授们在学术生涯中,从来没有真正的机会来实践大规模的软件开发。

但是他们仍然不得不教授软件工程,这当然是不容易或者只是依葫芦画瓢。

他们只能这样做,因为这门课在课程表上,而不是因为他们确实有什么可教的。

他们没有传授理论,只是一套想法或一个特定的方法。

当被问及此事时,一名成功的计算机科学家、教授软件工程课程的教授说:令人惊讶的是,学生们喜欢沐浴在我们交给他们的烂泥塘里。

我知道这么说并不严肃,但是可以肯定这位老师并不为他做的事情而感到自豪。

一个理论,将从根本上改变这种局面。

学生将学习软件的基础知识。

他们将得到一种语言,来沟通软件过程、实践、模式,等等。

可以想象,他们将会得到一种以内核为语法的语言和描述过程构成成分的时间的语言结构。

这样的语言需要是可执行的,这样实践才会变得生动。

我说这些是为了表明这些实践不仅是规范,而且也可执行。

当一个项目进行时,这些实践将开始运行,而且活动实例、工作产物,实例、技能角色将被真实物创造和填充。

这些方面似乎能与实践模式很好地吻合,有非常有趣的语义规则需要确定和定义。

向学生打开了一个全新的世界,可以帮助他们了解软件工程的基本原理。

更不用说,为对实践和理论感兴趣的研究人员打开了一个全新的世界。

回顾自己1987年后的职业生涯,许多人建议我写一本有关方法论的书。

当时Objectory有一些新的想法,比如说用例、用例驱动的开发(这是一个测试驱动设计、合作、序列图、组件和基于组件的开发)。

其余的大部分内容都没什么特别的。

实施、单元测试、系统测试、性能测试、配置、规划都是相当传统的。

当然,我有整个生命周期的经验,但我不是所有事情的世界级专家。

然而,为了写书,我不得不包含整个生命周期的内容,即使其中很多不是我的专长。

随着我们寻找的新理论,没有任何必要再说明不包含创新的内容。

你不需要写一本书来发布新想法,然后把软件开发团队需要做的一切都放进去,而只需要描述你的新实践或新模式,也许第二天你就能向全世界发布了。

全世界的任何好点子都可以贡献出来并获得成功。

终于,软件团队将能够摆脱亦步亦趋地追随潮流所造成的无休止的摇摆,成为严格意义上的软件工程团队。

团队在坚实的基础上通过优秀的软件开发实践建设和扩展知识。

这个基础不会频繁变化,不会强迫你一遍又一遍学习同样的事情。

它可以让你通过自己的总结,而不是出席的课程来展示专业。

它可以让你轻松和无缝地引进新思路和新队友,而不会造成性能骤降或精力浪费。

团队最终能够不断改进和适应他们的工作方式,迎接他们每天面对的挑战。

他们将能够开发自己的知识和技能,以一种能够让他们顺利地和来自不同背景、团队和组织的其他人合作的方式,而不必一遍又一遍地重复学习同样的事情了。

最后的话我们对软件工程的了解缺乏一个基本理论。

因此,我们不断用略有不同的词再造旧方法,掩盖了真正的创新,同时让抛弃旧的不好的部分,利用新的好的部分变得困难。

该理论将帮助我们大大改进软件工程教育。

这将帮助我们在面对身边涌现的新想法时的反应不那么天真。

最后,它也将帮助我们更快地接受新的思想。

这一理论的真正受益者将是软件行业,这一点已经在许多公司得到证明。

我们将能够方便地教育我们的人员,让他们加快速度;改进我们生产产品的方式;系统地重新设计(比重构程度更强)我们的产品;不断改进我们的工作方式。

其结果将是更好的软件、更快的速度和大幅降低的成本。

正如上面提到的,我们需要齐心协力才能做到这一点。

从Scott Ambler最近的一篇文章理论需要战略中可以看到这种势头已经开始,但仍有许多工作要做。

我们已经证明它的有效性,但我们仍然要做许多工作才能建立一个公认的标准,必须在一组专家和权威之间建立共识才能完成这点。

我们期待着与这些专家的合作。

Hackers and Painters读后感

IT学子,完全没必要担心IT行业的未来发展,在未来的几十年,软件开发行业依旧求贤若渴。

  软件工程师不仅薪资待遇高,而且职场生命周期长,新技术都是在基础知识之上发展而成,懂得基础就可以研发新的软件功能。

所以在职年龄越大,项目经验就越丰富,就更加受用人单位的欢迎的。

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片