软件工程实践总结-程序员宅基地

技术标签: ViewUI  python  markdown  前端  

软件工程实践总结

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

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

  • 通过这次软工实践,我从其他同学(大佬)方方面面学到了许多。不管是编程技巧,团队协作,文档书写,格式排版,代码规范,细节把握,不畏难精神等等方面都受益匪浅。非常感激所有队员,特别是队长张扬同学。
  • 首先通过这门课程,我学会了如何从0开始到做成一款漂亮的软件。大致了解了一款软件的制作流程,很必要的是,文档对于一款软件的重要性。在课程开始,老师先通过几个小任务,让我们熟悉一下打代码的感觉,之后循序渐进,教会我们如何构思策划软件,如何书写文档,如何分工制作出一款软件,如何评测软件以及答辩注意的事项,从方方面面锻炼了我们。
  • 其次我也因这门课熟悉了许多超棒的软件工具,就IDE来讲:比如我最喜欢用的pycharm,就是因为我们团队需要Python编程,因此我接触到了pycharm。实不相瞒,过去我从来不知道如何利用强大的IDE来找bug,在练习过程中,逐渐学习了pycharm的设置断点,监视变量,错误返回等等强大实用的功能。除了IDE还有许多工具,比如编写markdown文档的Typora,超级好用!强大的数据库MySQL以及最终我们使用的轻量级数据库SqLite;在线制作类图,数据流图,活动图等各种图的Processon;以及方便强大的原型开发工具Axure等等。相信他们对我之后非常有帮助。
  • 还有就是第一次与团队一起完成这款软件,实现我们的初衷。这份尝试很有价值,虽然我的贡献可能不多,但我在过程中认识到,一款优秀的软件离不开良好的团队管理与优秀的Leader。大家一起努力完成一件产品的感觉真的很棒。虽然有时候会很累,比如一次大家在活动室工作,从晚上八点一直工作到凌晨2点,全员都在,尽管很累,但是很有意义。
  • 不足的话,因为团队分工协作,然后大家都是第一次,经验不足,导致团队交流不是特别流畅。我是负责后端的,因此往往做着做着,就没顾上前端的进度,需求,导致做完之后才发现这往往不是他们所要的,或者类型与前端需求不一致等等问题。好在这种问题到了后来就越来越少了。还有就是比较遗憾,没能参与到前端工作中:过去一直认为前端的工作没有什么技术含量,只是做做界面,做做交互,做做按钮等等。直到这次我才意识到,前端的工作量,往往会比后端还大,遇到的困难可能比后端还多,比如:涉及到两个进程间的通信(后来利用管道通信解决)否则派生出另一个进程,容易造成程序假死。

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

1、统计一下,你在这门软件工程实践中,完成了多少行的代码
  • 大概2000行吧。。。具体也不记得了开始用c++写,后来用Python写后代码量明显少了许多。
2、软工实践的各次作业分别花了多少时间?(做一个列表)
作业 时间min
准备 60
第二次作业 1285
结队1 670
团队作业1 40
结队2 2195
团队作业2 775
需求分析报告 1265
Alpha冲刺 1385
现场编程 300
项目测评 80
Beta冲刺 800
最终展示 300
3、哪一次作业让你印象最深刻?为什么?
  • 第一次吧。头一回听说在开学前就有作业的(不过现在又知道了,期末考最后一门结束后他还是有作业,一门两学分的课,硬生生的变成了10学分的课TT)当时学完markdown语法,写完博客后自己觉得有些丑,也不知道在写些什么,排版注意事项。后来看了看其他同学的!!!一些大佬markdown用起来贼6,写得非常好看,特别美观,还有些炫酷的动画。内容也逻辑清晰,叙述明白,那时才意识到,厉害的大佬真的是什么都会,不仅编程厉害,博客也写得好。如何使用Github,当时看起来7788,学了好久也没明白是怎么回事。。。
4、累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答
  • 累计花了150个小时在软工上,平均每周花7.5个小时。
    • 曾经的回答:除去上课时间,我会花额外3~5天的时间学习这门课,每天至少2个小时。如果到时候认为强度不够,会继续多花时间练习。
5、学习和使用的新软件
  • IDE:强烈推荐pycharm!!!
  • 原型工具:Axure
  • 制图工具:Processon(在线制图网站)
  • 数据库:MySQL+可视化工具MySQLWorkbench
  • 思维导图工具:X-mind
  • 代码管理工具:Github
  • Markdown编辑工具:Typora
  • 团队任务协作管理工具:Leangoo(在线网站)
7、学习和掌握的新语言、新平台
  • Python语言
  • Markdown语言
  • 熟悉macOS 平台
8、学习和掌握的新方法
  • 如何使用Github管理代码(包括下载别人的代码,合并代码等等)
  • 用Pycharm Debug,监事数据等
  • 怎么制图
  • 如何写Markdown
  • 如何确定自己的工作量等
9、其他方面的提升。
  • 团队协作经验大大提高啦~
  • 交往能力,语言表达能力也有提高~
  • 还认识了许多有趣的朋友。

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

  • 团队分工协作,然后大家都是第一次,经验不足,导致团队交流不是特别流畅。我是负责后端的,因此往往做着做着,就没顾上前端的进度,需求,导致做完之后才发现这往往不是他们所要的,或者类型与前端需求不一致等等问题。好在这种问题到了后来就越来越少了。还有就是比较遗憾,没能参与到前端工作中:过去一直认为前端的工作没有什么技术含量,只是做做界面,做做交互,做做按钮等等。直到这次我才意识到,前端的工作量,往往会比后端还大,遇到的困难可能比后端还多,比如:涉及到两个进程间的通信(后来利用管道通信解决)否则派生出另一个进程,容易造成程序假死。同时,一款优秀的软件离不开良好的团队管理与优秀的Leader。

三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,对于同期的TA们,对于后来的学弟学妹:

1)你有什么想建议、告知和期许想要告诉他们呢?

  • 怕吃苦,千万别选软工!
  • 差学分,能不选软工就别选!

想真正学到些有用的,不怕苦的,喜欢团队合作的,选吧!

2)特别地,特别地,下一届要不要中途换队员(强制的、彻底的从一队换到另一队)?

  • 不要,坚决不要。

3)假设依旧是一个90+人数的大班,身在一个格外大的班级,竞争强劲,你认为一个组的人数应当在多少比较合适?

  • 人数太多不好:分工难,容易有人摸鱼,倒不是真的不想做事,的确是因为没啥可做,其他人任务都领了。和别人一起做一项任务吧,有时候对方做上头了,就全做了,根本不需要自己。甚至有时候会出现1+1<1的现象。
  • 人少些其实无所谓。
  • 个人觉4~7个人差不多。

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

  • 每周认认真真花3~5个小时能解决的那种。这学期就有几个星期任务量很大,有几个星期就很闲,这样个人觉得也不好。

5)这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?

  • 肯定是组长张扬啦~也要感谢团队中每一个人,大家都帮助,鼓励过对方。
  • 希望下次还能与你们合作呀~

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

  • 之后补这一块内容。。。

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

  • 基于可靠的调查,成功做出一款深受用户喜爱的软件产品并配备完整详细的文档。

转载于:https://www.cnblogs.com/Tony-chenjw/p/10241752.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/dong1208/article/details/102437568

智能推荐

Docker 快速上手学习入门教程_docker菜鸟教程-程序员宅基地

文章浏览阅读2.5w次,点赞6次,收藏50次。官方解释是,docker 容器是机器上的沙盒进程,它与主机上的所有其他进程隔离。所以容器只是操作系统中被隔离开来的一个进程,所谓的容器化,其实也只是对操作系统进行欺骗的一种语法糖。_docker菜鸟教程

电脑技巧:Windows系统原版纯净软件必备的两个网站_msdn我告诉你-程序员宅基地

文章浏览阅读5.7k次,点赞3次,收藏14次。该如何避免的,今天小编给大家推荐两个下载Windows系统官方软件的资源网站,可以杜绝软件捆绑等行为。该站提供了丰富的Windows官方技术资源,比较重要的有MSDN技术资源文档库、官方工具和资源、应用程序、开发人员工具(Visual Studio 、SQLServer等等)、系统镜像、设计人员工具等。总的来说,这两个都是非常优秀的Windows系统镜像资源站,提供了丰富的Windows系统镜像资源,并且保证了资源的纯净和安全性,有需要的朋友可以去了解一下。这个非常实用的资源网站的创建者是国内的一个网友。_msdn我告诉你

vue2封装对话框el-dialog组件_<el-dialog 封装成组件 vue2-程序员宅基地

文章浏览阅读1.2k次。vue2封装对话框el-dialog组件_

MFC 文本框换行_c++ mfc同一框内输入二行怎么换行-程序员宅基地

文章浏览阅读4.7k次,点赞5次,收藏6次。MFC 文本框换行 标签: it mfc 文本框1.将Multiline属性设置为True2.换行是使用"\r\n" (宽字符串为L"\r\n")3.如果需要编辑并且按Enter键换行,还要将 Want Return 设置为 True4.如果需要垂直滚动条的话将Vertical Scroll属性设置为True,需要水平滚动条的话将Horizontal Scroll属性设_c++ mfc同一框内输入二行怎么换行

redis-desktop-manager无法连接redis-server的解决方法_redis-server doesn't support auth command or ismis-程序员宅基地

文章浏览阅读832次。检查Linux是否是否开启所需端口,默认为6379,若未打开,将其开启:以root用户执行iptables -I INPUT -p tcp --dport 6379 -j ACCEPT如果还是未能解决,修改redis.conf,修改主机地址:bind 192.168.85.**;然后使用该配置文件,重新启动Redis服务./redis-server redis.conf..._redis-server doesn't support auth command or ismisconfigured. try

实验四 数据选择器及其应用-程序员宅基地

文章浏览阅读4.9k次。济大数电实验报告_数据选择器及其应用

随便推点

灰色预测模型matlab_MATLAB实战|基于灰色预测河南省社会消费品零售总额预测-程序员宅基地

文章浏览阅读236次。1研究内容消费在生产中占据十分重要的地位,是生产的最终目的和动力,是保持省内经济稳定快速发展的核心要素。预测河南省社会消费品零售总额,是进行宏观经济调控和消费体制改变创新的基础,是河南省内人民对美好的全面和谐社会的追求的要求,保持河南省经济稳定和可持续发展具有重要意义。本文建立灰色预测模型,利用MATLAB软件,预测出2019年~2023年河南省社会消费品零售总额预测值分别为21881...._灰色预测模型用什么软件

log4qt-程序员宅基地

文章浏览阅读1.2k次。12.4-在Qt中使用Log4Qt输出Log文件,看这一篇就足够了一、为啥要使用第三方Log库,而不用平台自带的Log库二、Log4j系列库的功能介绍与基本概念三、Log4Qt库的基本介绍四、将Log4qt组装成为一个单独模块五、使用配置文件的方式配置Log4Qt六、使用代码的方式配置Log4Qt七、在Qt工程中引入Log4Qt库模块的方法八、获取示例中的源代码一、为啥要使用第三方Log库,而不用平台自带的Log库首先要说明的是,在平时开发和调试中开发平台自带的“打印输出”已经足够了。但_log4qt

100种思维模型之全局观思维模型-67_计算机中对于全局观的-程序员宅基地

文章浏览阅读786次。全局观思维模型,一个教我们由点到线,由线到面,再由面到体,不断的放大格局去思考问题的思维模型。_计算机中对于全局观的

线程间控制之CountDownLatch和CyclicBarrier使用介绍_countdownluach于cyclicbarrier的用法-程序员宅基地

文章浏览阅读330次。一、CountDownLatch介绍CountDownLatch采用减法计算;是一个同步辅助工具类和CyclicBarrier类功能类似,允许一个或多个线程等待,直到在其他线程中执行的一组操作完成。二、CountDownLatch俩种应用场景: 场景一:所有线程在等待开始信号(startSignal.await()),主流程发出开始信号通知,既执行startSignal.countDown()方法后;所有线程才开始执行;每个线程执行完发出做完信号,既执行do..._countdownluach于cyclicbarrier的用法

自动化监控系统Prometheus&Grafana_-自动化监控系统prometheus&grafana实战-程序员宅基地

文章浏览阅读508次。Prometheus 算是一个全能型选手,原生支持容器监控,当然监控传统应用也不是吃干饭的,所以就是容器和非容器他都支持,所有的监控系统都具备这个流程,_-自动化监控系统prometheus&grafana实战

React 组件封装之 Search 搜索_react search-程序员宅基地

文章浏览阅读4.7k次。输入关键字,可以通过键盘的搜索按钮完成搜索功能。_react search