个人博客-week7
团队任务收获及个人感想
团队任务已经进行了一个多月的时间,我很荣幸能和软剑攻城队的小伙伴们度过这一个月的开发时光。在这一个月的时间里,我亲身经历了一个软件从想法到实现,从创意到实体的过程。同时我也在和组员的共同探索中渐渐明白了如何用工程化的方法去完成软件开发的任务。现在的我对之前读过的一些软件工程方面的文章有了更深刻的见解,一些以前不明白的道理在有了这次小组软件开发的经历之后渐渐有了一些体会。下面就结合之前读过的一些软工方面的文章谈谈我的理解。
个人认为,在团队软件开发的过程中最重要的事情就是团队的分工和协调。一个好的软件开发团队,不仅要有综合素质过硬的队员,更要有良好的团队管理机制,个人认为这种机制主要有三个最重要的方面:队员的分工,队员间的配合以及团队进度的安排。前两个方面是安排的好坏直接决定了整个团队的进度安排。由于之前大家都没有团队开发的经验,对于团队管理并不是很了解,所以一开始在这方面走了一些弯路。项目经理刘乾同学原本想将开发工作与管理工作尽量分开进行,让PM尽可能承担统筹安排的任务而不要涉及具体的开发任务。然而由于小组成员能力的问题,一些关键的技术问题还是需要他来解决,这在很大程度上分散了PM作为管理人员的注意力。针对这个问题,我们小组进行了一定的分工调整,将一些具体进度安排工作交给开发人员去协调,PM只掌握总的进度,同时PM也兼任一些攻坚任务,这样PM既随时了解了组员的开发状态,又能够发挥其在程序开发方面的能力,可谓是一举多得。经过此番调整,我们开发人员有了更大的自由度,尤其对于一些工作量较大的任务,我们可以根据重要程度自由安排完成时间(在不影响团队整体进度的情况下),这使得团队自下向上有了更高的自由度,从而增加了团队软件开发的效率。
同时队员间的配合也是一个团队工作质量的重要决定因素。我们小组开发的项目是物理实验报告生成网站,在这个网站下,用户可以根据自己输入的实验原始数据生成一份自己独有的实验报告。这就要求我们掌握每一个物理实验的具体信息(包括预习报告,数据处理,配图,公式等),这个信息采集的过程式十分漫长的,因此我们决定先重点做好部分基础实验。在实验信息的采集中,我们采用了并行式的任务分配模式,即多个组员同时处理一个报告的不同方面,我负责整理文字,黄雨萌同学负责处理公式及表格的内容,这就要求我们两个人在任务时间协调上要尽量保持一致。在实际工作中,我发现这样的协调是比较困难的,这就考研了组员间的配合能力,如果组员间缺少沟通,就极易导致因为沟通不畅而引发的任务衔接不当问题,例如有时候实验公式已经处理完但是我的报告还没有写完。在经历了几次教训之后,我们决定在两人开始任务之前先确定好各自的完成时间,一有变化及时通知对方一遍做出调整。在经过一定的磨合之后,这样的配合机制保证了我们两人任务都能够顺利完成。
软件的工程化开发是一个系统性的过程,仅凭这一个多月的学习是远远不够的,我希望自己能在今后的开发过程中继续加深对软工的认识,掌握更多工程化方法。长路漫漫,我很庆幸能够有软剑攻城队的小伙伴相伴!
个人博客-week7的更多相关文章
- 软工个人博客-week7
Part 1 No Silver Bullet - Essence and Accidents of Software Engineering软件工程中没用通用的方法或者技术让软件工程在短 ...
- 个人博客week7
IBM大型机之父佛瑞德·布鲁克斯(Frederick P. Brooks, Jr.)在1986年发表的一篇关于软件工程的经典论文,便以<没有银弹:软件工程的本质性与附属性工作>(No Si ...
- 个人博客作业Week7(阅读文章,心得体会)
Alpha阶段结束了,内心可以说是五味杂陈.不是说我们的产品拿不上台面那般差劲,复杂的心绪主要来源于和别的队的比较,别的队才刚刚发布没多久访问量和注册量就破百了,并且还发起了找bug送红包的活动.可能 ...
- 【个人博客作业Week7】软件工程团队项目一轮迭代感想与反思
(发布晚原因:发到团队博客了 一.关于银弹 在佛瑞德·布鲁克斯于1986年发布的<没有银弹:软件工程的本质性与附属性工作>这篇软件工程的经典论文中,作者向我们讲述了软件工程没有银弹这样的理 ...
- Z-XML团队年终博客整理
一个优秀的团队一定有逻辑清晰,风格优雅,严格规范的博客. ------图灵 大三上转眼间已经到了收官阶段,我们的软工课也逐渐接近尾声.在二轮迭代即将结束的时候,当我们梳理一路走来的软工课,我们发现自己 ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- 一步步开发自己的博客 .NET版(11、Web.config文件的读取和修改)
Web.config的读取 对于Web.config的读取大家都很属性了.平时我们用得比较多的就是appSettings节点下配置.如: 我们对应的代码是: = ConfigurationManage ...
- 一步步开发自己的博客 .NET版(10、前端对话框和消息框的实现)
关于前端对话框.消息框的优秀插件多不胜数.造轮子是为了更好的使用轮子,并不是说自己造的轮子肯定好.所以,这个博客系统基本上都是自己实现的,包括日志记录.响应式布局.评论功能等等一些本可以使用插件的.好 ...
- 【原】Github+Hexo+NextT搭建个人博客
摘要 GitHub 是一个开源项目的托管网站,相信很多人都听过.在上面有很多高质量的项目代码,我们也可以把自己的项目代码托管到GitHub,与朋友们共享交流.GitHub Pages 是Github为 ...
随机推荐
- Django框架的简介
Django框架的背景 Django是一款基于Python开发的全栈式一体化Web 应用框架.2003 年问世之初,它只是 美国一家报社的内部工具,2005 年 7 月使用 BSD 许可证完成了开源. ...
- Linux Cluster
一.Linux集群类型.系统扩展方式及调度方法 1.概念 Linux cluster,Linux集群系统是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作. ...
- percona-toolkit大表操作DDL使用
1. 系统与安装数据库 [root@zhang ~]# cat /etc/redhat-release # 也可以使用其他版本 CentOS Linux release (Core) [root@zh ...
- 修改Github上提交日志
bash: git rebase -i HEAD~5:假定你要修改的日志位于当前版本(HEAD)的前4次提交中. vi: pick -> reword:在自动打开的vi编辑器中,上下选择你要修改 ...
- 美人鱼 hdu 5784
Peter has a sequence a1,a2,...,ana1,a2,...,an and he define a function on the sequence -- F(a1,a2,.. ...
- Spring AOP失效之谜
每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code 什么是AOP1 AOP(Aspect Oriented Programming),即面向切面编 ...
- 第一行代码 3-2-2 软件也要拼脸蛋-UI界面-更强大的滚动条- 卡片
<LinearLayout android:orientation="vertical" android:layout_width="match_parent&qu ...
- Qt+QGis二次开发:加载栅格图层和矢量图层
一.加载栅格图像 加载栅格图像的详细步骤在下面代码里: //添加栅格数据按钮槽函数 void MainWindow::addRasterlayers() { //步骤1:打开文件选择对话框 QStri ...
- Linux Kernel 4.21已更新:优化AMD 7nm Zen2架构
导读 AMD 7nm Zen2处理器预计将于明年第一季推出,采用下一代7nm EPYC. Linux Kernel 4.21已经更新,以优化AMD 7nm EPYC Rome(罗马)处理器. AMD ...
- NodeJS之path模块
NodeJS之path模块 常用的主要有如下工具函数: 1. path.basename(path[, ext]) 2. path.extname(path) 3. path.dirname(path ...