zoukankan      html  css  js  c++  java
  • 最终作业

    一、请回望暑假时的第一次作业,你对于软件工程课程的想象

    1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

    • 达到我的期待和目标:
    • 1.增强了自己的代码能力
    • 2.明白了一整个软件开发的流程
    • 3.学习到了一下android开发知识
    • 4.最主要的是遇到了一个很不错的开发团队!
    • 不足:
    • 1.由于时间紧迫,对于开发的学习都比较零碎,基本上是遇到问题了,再去学解决问题的方法。缺乏系统化的学习,所以对于一些知识的理解只停留在表面,没有深入。对于各个部分的知识还不能有效的串接。
    • 2.自己虽然是开发组的组长,但是自己对android开发的也只是初步了解,只能帮助队友入门,很难再起到其他作用了,自己对于分工也做的不是很好,每个人的进度也没有跟的很紧,所以导致我们组的开发进度较慢,所以自己在这方面的能力还有待提高!

    2)总结这门课程的实践总结和给你带来的提升,包括以下内容:

    1、统计一下,你在这门软件工程实践中,完成了多少行的代码;

    作业序号 代码量 备注
    1 300 个人作业-词频统计
    2 300 第二次结对作业
    3 1850 Alpha冲刺阶段
    4 100 团队作业-项目测评
    5 200 团队现场编程-抽奖系统
    6 1250 Beta冲刺
    总计 4000

    2、软工实践的各次作业分别花了多少时间?(做一个列表)

    作业名称 耗时(h) 做了啥
    软工实践第一次作业 1.5 研究makedown......
    个人作业-词频统计 20.5 设计思路,复习c++,写代码,代码,测试
    第三次作业-结对作业(原型设计) 5.5 学习并使用Axure RP 8
    第四次作业 - 团队展示 1 写博客...
    第五次作业 - 结对作业2 18.5 改自己的词频统计代码,学习python爬虫
    第六次作业 - 团队答辩 1 写博客....
    项目UML设计 3 学习ProcessOn、UML设计,绘制用例图
    需求分析报告 10 浏览众多APP原型设计,学习墨刀,APP原型设计
    Alpha 冲刺 (1/10) 7 组内分工,优化原型,学习xml和shape
    Alpha 冲刺 (2/10) 6 前端
    Alpha 冲刺 (3/10) 9 短信验证
    团队现场编程实战(抽奖系统) 3 python学习,海报设计
    Alpha 冲刺 (4/10) 8 前端
    Alpha 冲刺 (5/10) 8 前端
    Alpha 冲刺 (6/10) 8 前端
    Alpha 冲刺 (7/10) 12 搭建服务器,尝试使用okhttp框架建立连接
    Alpha 冲刺 (8/10) 14 okhttp学习和使用
    Alpha 冲刺 (9/10) 12 服务器与app的基本交互
    Alpha 冲刺 (10/10) 10 对接
    Alpha 事后诸葛亮 1 写博客
    项目测评(团队) 6 增量原型设计
    BETA 版冲刺前准备(团队) 1 分配任务,写博客
    Beta 冲刺(1/7) 7 前端
    Beta 冲刺(2/7) 7 前端
    Beta 冲刺(3/7) 7 前端
    Beta 冲刺(4/7) 7 前端
    Beta 冲刺(5/7) 4 标数据集
    Beta 冲刺(6/7) 8 算法对接
    Beta 冲刺(7/7) 10 对接测试,挑bug
    Beta答辩总结 1 写博客
    本次作业 4 写博客
    总计 221

    3、哪一次作业让你印象最深刻?为什么?

    • Alpha冲刺
      • 可怜的实验班,一周也就6天满课,偶尔周日早上还要课,中间还有考试。然后在这么惨的大学生活里,还有挤时间做软工,真是太凄惨了。那段时间平均每天凌晨1点半睡觉,真的是伤不起啊。这连续两周的熬夜,头发都要熬没了,怎么能不印象深刻。
      • 虽然很惨,但是做出来成就感还是很高的,同时也学到了很多东西。也认识了许多小伙伴,得到了很多人的帮助,强大的队友真好啊

    4、累计花了多少个小时在软工实践上?平均每周花多少个小时?

    • 软工实践课程也算在呢的话,加上小组开会谈论啦,大于在270个小时吧
    • 软工从开学第一周到十七周基本结束,共17周,平均270/17=15.8个小时

    5、学习和使用的新软件;

    • visual studio 2017 :开发c++控制台程序
    • Android studio 3.0.0 :andoid开发基本工具
    • Axure RP 8:原型设计
    • Eclipse:写java的服务器后台代码
    • Photoshop:这个大家都知道吧
    • Typora:写makedown的工具

    6、学习和使用的新工具;

    • github:这个一开始觉得好难用,而且没有必要啊,还各种冲突,但是后来...,你懂得,大型真香现场
    • Tomcat:方便快捷搭建服务器。

    7、学习和掌握的新语言、新平台;

    • java:以前学的基本上都忘光了,现在又重新学,初步掌握吧。
    • python:只是了解到一些皮毛
    • Process On:是一个在线画流程图/uml图等的平台,简洁易用。
    • github:软工结束后,主要用于找代码()。

    8、学习和掌握的新方法;

    • UML设计:特别是用例图,这个东西是真的好用,能让你很清晰的了解到APP的功能,可以让你的开发过程更加清晰

    9、其他方面的提升。

    • 找学习资料更快了,我觉得这个很重要啊!
    • 对android开发了解更进一步了
    • 团队协作能力++,我想放眼所有实践课程,没有比这更能增加你这方面能力的了。

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

    • 最开始真正意义上的软工实践,是那个个人项目-词频统计,当时根本不知道控制台程序是什么o(╥﹏╥)o后来请教了同学才懂得。也明明了什么单元测试啦,算是第一次了解到软件工程的规范了吧。第一次作业做了几十个小时,想想就觉得自己很心酸,但是最后做出来还是很有成就感的。
    • 后来进入一个团队,大佬云集啊,我是谁,我在哪,我是怎么跟他们一起做的,懵逼三连。一开始负责前端,以为自己划划水就过去了,然后发现前端这种东西也好难。后来队友解决不掉的服务器交互,也移交到我这里,连续好几个熬夜终于算是弄出来了,索性没有拖累团队。哎,人菜就要多努力。
    • 再后来负责对接测试,确实心酸,尤其是跟算法的对接,两边都很懵逼,“这块不应该是你们来做的吗”,“啊,我们以为是你们做的啊”,一开始没沟通好,后面是真的难受啊,还好大家都很强,还是在最后期限交上了一份不错的答卷

    三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。 特别地,特别地,下一届要不要中途换队员?

    • 对下一届学弟学妹们(和开学初的我)的建议和告知:
    • 听说下一届你们软工实践就必修了!真是替你们开心呀
    • 对于软工实践这门课,首先要先找好队友,对于一个10人左右的团队来说,最好个方面的人才都要有,这样才好便于分工。
    • 对于个人来说,一定要找适合自己的团队,既不能让自己在大佬云集的团队被埋没,也不能又当爹又当妈的什么事都自己做。所以在这节课开始出,一定要有一技之长,或开发或美工等等
    • 对大一的我的建议:
    • emmmm那个时候我还在数学系,你应该有点先见之明早点开始学计算机啊!!!

    (2)特别地,特别地,下一届要不要中途换队员(强制的、彻底的从一队换到另一队)? 假设依旧是一个90+人数的大班

    • 对于这个我先分两个情形吧,自愿的和强制的

    • 对于自愿的:当然是鼓励啊,队友的变换更能体现一个团队的调节能力、应变能力。以及新队员能否对团队任务快速接手,这些方面的能力,是我们十分必要的。也是未来在一个团队中,我们需要面对和必然会面对的。

    • 对于强制的:虽然换队友虽好,正如上面所说。但是,强制还是不要了,对于一个刚从软工实践中解脱出来的人,软工实践大多数人都是从零开始,甚至从负开始,对于这样的一个团队,学习本组需要的技术会耗掉大量的时间,突然告诉你,你要换组了,这将会增加这位同学和团队的整体时间消耗。同时团队有一个大佬就很好了,大佬再被换走,岂不是太惨了。

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

    • 萌芽:团队PM是带着想法来找到我们的,虽然这个想法还不成熟,但是我们都有一个大概的构想,开了一次会议后,各自分工,各司其职。
    • 磨合:刚开始的团队难免会出现一些问题,就对这个项目而言,我们也都质疑过它的可行性和实用性,但是质疑归质疑,没有更好的方案进行替代,我们还是按照我们最初的构想在往下走。就我们开发组而言,每个人都比较好说话,所以我们算是一个很和平的小团队,很感谢强大的队友,对于给的任务,都不会拒绝。但是还是会有点小摩擦,比如队友服务器搞不定的时候要跟我换任务,我一开始是拒绝的,但是心想身为小组长,多做点是应该的。最后结果还是可以接受的。
    • 规范:我认为我们的团队正处于这么一个阶段,每个人分工明确,可以互相帮助,交流也比较流畅,能够在组长分配任务之前先开始做一部分,明白自己在团队中的定位。
    • 创造:现在团队我还没有到创造的阶段,团队大多数人还只能停留在自己的工作上,角色还不能根据项目的需求自由转换。

    五、怎样证明你学会了软件工程?

    1)研发出符合用户需求的软件

    由于服务器受限(贵的服务器买不起,差的服务器算法跑不了,所以只能把服务器搭在本地),所以没有什么用户,也不知道符不符合。但是我们几个用着挺开心的。

    2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件

    3)并且通过数据展现软件是可以维护和继续发展的。

    首先我们的开发过程中有整理对应参考的文档和我们自己的文档,以及一些代码规范。

    所以我们的产品是易维护且可继续发展

    img

    • 部分文档截图
      img

    4)对着这个检查表:http://xinz.cnblogs.com/p/3852177.html 检查一下,自己如果去企业面试,这些常见的问题是否都能回答,并在此总结。

    请在随笔中用数据证明上述内容或侧重选择之一。

    七、个性发挥,包括图文、照片和创意等

    我叫杨喜源,来自计算机四班,虽然不强但也不菜

    • 附上一张结对照片吧。

    • 再来一张我们第一张合影吧。
  • 相关阅读:
    160. Intersection of Two Linked Lists
    155. Min Stack
    TensorRT caffemodel serialize序列化
    141. Linked List Cycle
    异或运算的性质及应用
    136. Single Number
    【leeetcode】125-Valid Palindrome
    c++函数参数类型-引用、指针、值
    【linux基础】linux远程登录SSH
    【leetcode】122-Best Time to Buy and Sell Stock II
  • 原文地址:https://www.cnblogs.com/comeony/p/10239657.html
Copyright © 2011-2022 走看看