软件工程学习心得体会

发布时间:2020-03-30 04:25:26

软件工程学习心得体会

  学习了这门课程, 还有老师们的多元化教课,不但让我从理论上掌握软件工程,还有从不同的实例,让理论和实践得到了很好的结合整一个学期下来总的来说还是学到了很多东西的有很多地方是值得肯定的其实在我看来软件工程与其说是一门课程不如说是一门思想是一个如何去分析和处理问题的过程应该说其范畴已经远远不止局限于该门课程成为了一个综合的一个能够解决问题的思想集合

  要学习软件工程学会如何系统的思考以及养成良好的编码习惯想学好软件工程就必须知道软件工程的目标过程和原则软件工程目标生产具有正确性可用性以及开销合宜的产品正确性指软件产品达到预期功能的程度

  可用性指软件基本结构实现及文档为用户可用的程度开销合宜是指软件开发运行的整个开销满足用户要求的程度这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题它们形成了对过程过程模型及工程方法选取的约束

  软件工程过程生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤软件工程过程主要包括开发过程运作过程维护过程它们覆盖了需求设计实现确认以及维护等活动需求活动包括问题分析和需求分析问题分析获取需求定义又称软件需求规约需求分析生成功能规约设计活动一般包括概要设计和详细设计概要设计建立整个软件系统结构包括子系统模块以及相关层次的说明每一模块的接口定义详细设计产生程序员可用的模块说明包括每一模块中数据结构说明及加工描述实现活动把设计结果转换为可执行的程序代码确认活动贯穿于整个开发过程实现完成后的确认保证最终产品满足用户的要求维护活动包括使用过程中的扩充修改与完善伴随以上过程还有管理过程支持过程培训过程等 软件工程的原则是指围绕工程设计工程支持以及工程管理在软件开发过程中必须遵循的原则

  pad它是用结构化程序设计思想表现程序逻辑结构的图形工具pad也设置了五种基本控制结构的图示并允许递归使用hipo:hipo图是由一组ipo图加一张hc图组成它是美国ibm公司在软件设计中使用的主要表达工具hc图既是层次图用于表示软件的分层结构hc图中的每一个模块均可用一张ipo图来描述ipo 图由输入处理和输出三个框组成需要时还可以增加一个数据文件框这种图形的优点是能够直观地显示输入处理输出三者之间的联系还有测试方法:按照测试过程是否在实际应用环境中来分有静态分析与动态测试测试方法有分析方法(包括静态分析法与白盒法)与非分析方法(称黑盒法)静态分析技术不执行被测软件可对需求分析说明书软件设计说明书源程序做结构检查流程分析符号执行来找出软件错误动态测试技术当把程序作为一个函数输入的全体称为函数的定义域输出的全体称为函数的值域函数则描述了输入的定义域与输出值域的关系还学习了其他很多工具语言方法等虽然不是都学得很透彻但我相信在今后的学习中一定会慢慢的完善的

软件工程对于初学者来说知识基础较薄弱对一些应用操作概念工具方法等理解起来较为困难要能从整体概念上较好地理解和把握学好软件工程不是仅仅把几本专业书籍细致地看几遍然后上机练习几次就可以成功学习过程中要注意多看多练要注意结合实际更要多思考面对错误不要一范就问要尝试自己去解决但是还要注意什么都学肯定是什么都学不透的要集中精力打攻坚战学习软件工程首先要明白自己的学习目标究竟是什么根据自己的实际工作出发有针对性的在相应的学习方向上进行提高制定出详细的学习规划还要注意与其他科目的相辅相成就像我们在学习面向对象分析的时候要结合大一学习的面向对象及其方法学这一专业科目进行研究拓展;在学习语言时要看看与c语言的联系多思多想把从各个科目学到的知识通汇贯通

  在软件工程的学习中我了解到了软件并非是一些代码这么简单在开发软件的过程中编写代码的工作量其实只占不到所有工程量的30%,而后期的管理和维护更是占了60%80%之多一个完整的项目规划须包括软件的定义可行性分析报告项目开发计划软件需求说明书概要设计说明书详细设计说明书用户操作手册测试计划测试分析报告开发进度报告项目开发总结报告软件维护手册软件问题报告软件修改报告等多个文档每个文档都要上级验收审查而文档数量众多要做好这点真的不是很容易而恰恰写好文档正能保证完成软件工程其中一个目的的关键既研究如何用最小的开销做出生存期较长的软件再加上各个阶段都要进行周密的策划详细的分工部署和人员安排且各阶段要据具体情况不断的反复才能达成所以代码只是开发软件这个浩大的工程的一个小小的过程

  而编码的学习中我更了解到形成自己独特的规范的编码风格是非常重要的事因为这影响到了软件后期繁重的维护大家都要阅读你的程序如果你写的程序毫无规范可言那么别人怎么能读懂你的程序?读不懂程序维护又从何谈起呢?所以我们在今后的学习中一定要注意这方面的培养在写程序的过程中要逐步的在规范的基础上形成属于自己的风格即方便自己的修改也方便日后他人的阅读

  在学习中我们还要注意比较三种方法的优缺点例如传统方法虽然使软件摆脱了混乱和无序但其在适应需求变化的方面不够灵活而且传统方法要么面向行为要么面向数据缺乏两者的有机结合而面向对象方法的程序设计和问题求解更符合人们日常自然的思维习惯适合大型复杂及交互性比较强的系统形式化方法则是一中基于形式化数学变换的软件开发方法它可将系统的规格说明转换为可执行的程序在今后的学习中要注意多读书多思考多练习多讨论不断熟悉书本的基础并以此为基础将其扩散开来应用于今后的实践不断锻炼自己向一名合格的程序设计师迈进

以上这篇是软件工程学习心得体会就为您介绍到这里希望它对您有帮助如果您喜欢这篇文章请分享给您的好友

软件工程学习心得体会

相关推荐