zoukankan      html  css  js  c++  java
  • 课程总结

    软工程件结课总结

    根据 10 周时间的软件工程课程经历,写出至少包含以下内容的个人总结,并为本课程提出建议。

    1. 请回望第一次作业,你对于软件工程课程的想象

      第一次作业要求配置编程环境及建立代码仓库,并与集成开发环境进行集成。了解到软件工程对团队合作的较高要求。自己对计算机有些兴趣,但并非擅长的领域。但能认识到当前社会对计算机编程、软件工程能力的强烈需求。当今社会,无论你是否是从事于软件编程,都需要掌握一定的编程技术。因此,在学习中,我认真学习软件工程的相关知识,加深Python编程练习。努力完成软件工程课程下发的各项任务,让自己对软件的开发与维护有基本的了解并掌握相关的基础技能。

    1)对比开篇博客你对课程目标和期待,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

      对Python编程及基本的程序编写与运行bug修改有了基本了解,并通过课程实践加深了不同编程知识的搜集与整理,扩大了编程基础知识面。对利用Python及相关模块完成一项软件项目有了基本实践操作及认知。

      不足之处:对Python的编程熟练程度仍需加强,未能完全独立靠一个人来完成整个项目的开发,需要进一步学习。

    2)总结这门课程的实践工作和给你带来的提升,包括以下内容:统计一下,你在这门软件工程实践中,完成了多少行的代码;软工实践的各次作业分别花了多少时间?(做一个列表)哪一次作业让你印象最深刻?为什么?累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答。学习和使用的新软件和工具;学习和掌握的新语言、新平台;学习和掌握的新方法;其他方面的提升。

      通过练习及实践大约完成了1000行左右的代码。前3次左右由于从Python基础编程学习开始,每次作业大约需要20h左右,后面的作业由于难度增加,每次作业大约25h。诗词游戏项目的完成让我印象最为深刻,它包括了代码编写与界面交互,让人能够直接领会到编程学习与现代生活的联系。目前为止,累计花了大约200h在软件工程实践上,平均每周约20h。学习的新软件及工具:Python、pycharm、码云代码仓库、process on在线UML工具等。提高了自己对软件工程一个完整项目的完成所需要的各项技能的了解及相关实践。

    2.  写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析

      虽然优秀的程序员的工作效率往往数倍于平庸的程序员,但若是缺乏合理的配置,优秀的成员未必能构成优秀的团队。大型软件开发项目的团队需要和外科手术组一样妥善分工,各司其职协调配合。概念完整性是项目顺利完成的必要保障,为获得概念完整性,架构设计由精简的架构设计小组负责,具体实现则围绕核心概念展开,架构设计和具体实现既相分离,又相辅相成。将设计概念传达到整个开发团队是贯彻概念完整性的必然要求。以诗词游戏软件的开发经验为例,要贯彻概念完整性,需要在团队中保持良好顺畅的沟通和交流,采用形式化定义等技术来确保概念被精确地定义和传达。一个合适的团队结构,能更大地改进交流的效率,让团队更能把注意力集中在最主要的目标——解决用户需求上面。我们要对一个软件进行全面和系统的测试,以保证软件的各个模块都能共同工作,在各方面都能满足用户的要求。团队合作能力,个人能力均需要过硬,但也需要团队的力量。讲义中先以一个较为杂乱程序代码实例引出代码规范对两人合作的重要性,接下来引出代码风格规范的相关具体要求,例如缩进、括号、行宽、分行、命名等。结对编程是个渐进的过程,一个成功的软件团队, 成功的企业需要很多合作。

    3.  对下一届实践的建议:

    1)对于后来的学弟学妹,你有什么想建议、告知和期许想要告诉他们呢?

      在进行完整的编程项目之前,需要抓紧时间熟悉了解所需的各类软件及工具,如python基础编程以及相关模块工具的使用。若时间比较紧张,可在具体的编程过程中进行学习,方法为借鉴并学习他人的代码,认真读取每行代码并进行注释,了解各个函数及模块的应用方法。总之,不要害怕困难,从一点一滴开始积累,最终获得较为丰富的知识技能。

    2)你认为一个组的人数应当在多少比较合适?

      对于诗词游戏这种相对较小的项目开发,我认为2-4人的规模是较为合适的。每个人可以负责相应的模块并在最后进行合成组装、运行、测试。对于比较大型的项目,人数应该有所增加,但人数不宜过多。

    3)个人/结对/团队作业应该控制在怎样的规模?

      个人作业由于单靠个人来完成,作业应保持较小型的规模,例如比较基础的编程实践。结对作业需要两个人的配合,作业任务可有所增加,但规模仍不宜过大,可进行小型项目初始阶段的开发。团队由于人数增加,作业量可进一步增大,例如进行项目的深入开发。

    4)本次课程中印象最深刻最要感谢的同学是谁?为什么?

      印象最深的同学是李肖华及路遥。他们均能在编程实践中进行认真学习并能很好的完成各项编程实践作业。同时,他们认真并追求完美的心态也让人印象深刻。自己需要很好的向他们学习。

    5)实践活动还应该增加哪些环节?

      可增加学习编程技巧讨论,以便使各成员能够从他人的经验及技巧中对自己的编程能力及认知获得有效改善。

    4.  分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》讲义“人、绩效和职业道德”)

      萌芽阶段,个人的角色和职责不清楚,做事的规程往往被忽略。每个人都忙着适应环境、团队结构、角色、日常流程等。正是由于这些原因,严重的问题不一定能够及时地提出来讨论。重要的事情并不能够真正得到解决。磨合阶段,在该阶段,团队成员们开始逐步熟悉和适应团队工作的方式,并且确定各自的存在价值。规范阶段成员们就很多事情取得了一致。角色和职责定义得非常清楚。通过聆听、讨论,成员互相之间更加了解,随着项目的发展和成员们的互动,一些成文或不成文的规则逐步建立起来了。创造阶段,团队可以创造一些有意义的东西。角色和职责能够根据项目的要求自然地转换,没有人为此担心或发牢骚。在这样的情况下,所有人都能把大部分精力花在工作上。就最终结果而言,我们团队最终较好得完成了诗词游戏的编程、运行、封装、测试。但这主要归功于主要成员的努力,自己对项目的付出不及他们,今后有必要向这些成员学习。

    5.  怎样证明你学会了软件工程? 请用数据证明上述内容。

      阅读并学习了一下参考文献,并根据编程实践进行相关对应学习。对每次作业均能及时完成。学堂在线最终学习成绩88.13分。

    [1]     Adams Wang译. 人月神话[M],1995

    [2]     张春晖译, Python编程入门经典[M], 清华大学出版社,北京,2011

    [3]     袁国忠译,Python编程从入门到实践[M],人民邮电出版社,2015

    [4]     王海鹏译,Python程序设计[M],人民邮电出版社,2017

    [5]     刘强,学堂在线-软件工程,清华大学,https://next.xuetangx.com/course/THU08091000367/15162212.1

     

  • 相关阅读:
    CSS 样式书写规范
    css等比例分割父级容器(完美三等分)
    右上角标的效果
    webstorm 激活破解方法大全
    ios开关按钮
    javascript功能封装
    Ajax 跨域
    javascript常用实例的实现与封装
    使用CSS完成元素居中的七种方法
    美化加载失败的图片
  • 原文地址:https://www.cnblogs.com/yangfeiyue/p/12891093.html
Copyright © 2011-2022 走看看