团队作业—预则立&&他山之石(改)
首先特别感谢刘乾学长腾出他宝贵的时间接受我的采访,为我们提出宝贵的建议,深表感谢。
- 1.他山之石,可以攻玉。借鉴前人的经验可以使我们减少很多走弯路的地方,这也是本次采访的目的,参考历届学长的经验,让我们的项目进行的更顺利。本次采访在星期六的下午进行,事先预约了助教学长,在不影响他的情况下(虽然还是感觉影响了。)开始了采访,历经一个小时,针对助教学长所担任PM的软剑攻城队和他们的项目大学物理实验系统以及前期他们的博客软剑攻城队,有针对性的提出我们小组的疑惑及问题。学长认真的解答了我们的疑惑,下面是由我和组员整理出来的采访对话的重要问题和答案:
- .采访者:学长你好,第一个问题,你们那学长第一个问题,就是你们的系统,那现在还有学校还有再用么?我有大概浏览了你们的博客,你们当时做的是那个大物实验系统嘛!
- .学长:恩恩,现在又有一支队伍接手了,我们只是数据库被删了,代码什么的还是在的。明天应该就可以恢复正常运行。
- .采访者:那学长第二个问题,学长你能给我们一些什么建议呢?任何方面都行,我借鉴借鉴。
- .学长:
- (1) 尽早确定框架,不要纠缠过多。确定了就开始学,很纠结就咨询咨询高手。这个时候是最好的学习技术的使其,确定了框架以后开发的同学就去学习技术,产品经理就去确定需求,并制定好开发的优先级。PM最好能找一个比较厉害的同学(不管是不是在队里的,都行)定制一下整个项目的路线图,然后把每个人的工作量与实际情况考虑清楚。最好是能够根据不同人的熟练度分配不同难度的任务。早开始,多操心。
- (2) Scrum一定要做到敏捷,不要聊闲话,不要在会议上讨论只涉及到一小部分同学的细节处理方案。有问题下来私聊,scrum就用来汇报情况。
- (3) Alpha阶段先实现一个MVP(Minimal Viable Product),其他一切从简。比如Alpha阶段就没必要实现邮件激活账号,忘记密码找回这种功能了(当然如果框架内置了非常方便的解决方案,那随手一加也可以)。一定要保证核心需求的开发时间占开发总时长的70%以上。同时,建议在Alpha阶段没结束就Release一个版本出来,然后就可以建起用户群,收集反馈等。先有用户,再考虑下一步做哪些需求。
- (4) 最后就是,贡献一定要符合实际情况,也不要简单地用时间来衡量。解决一个问题,使用一个框架快速开发这些都是有价值的,提前确定好贡献评估方法。跟大家讲清楚,打酱油是没分的,要想获得首先得付出。
- .采访者:对于第一点,如果我们在开发过程中遇到了瓶颈怎么办呢学长?
- .学长:这要看是什么瓶颈了,是性能瓶颈,还是指因为遇到奇怪bug导致的开发瓶颈,还是因为其他课程占用太多时间导致的精力瓶颈?
- .采访者:就比如开发瓶颈,开发的时候不熟悉语言还去翻书。因为我们组都是初学者到时候不知道能不能实现出来。
- .学长:这个是很正常的,我现在也经常需要翻看文档。边做边学习,这是最正常不过的事情了~遇到不会的就去查文档,或者你们查工具书也可以。
- .学长:所以roadmap很重要,你们需要请教一个高手给你们制定一下学习的路线,每个人分配的任务都是有专门的方向的,比如有人写前端就只要学前端就行,有人写后端就去看看后端的相关知识。
- .采访者:我们组长是这么分的,我们写app嘛有前端Android和后端服务器。
- .学长:对,这样对你们是有好处的,比如A同学和B同学都是初学者,今天都学习了一天,怎么知道A同学学习的效果更好呢?在学习阶段,组长不好衡量每个同学的产出如何,这时候就可以考虑使用“学习的成果”来衡量,这样的话,前端Android的同学就要开始自己做一些demo来熟悉语言。
- .采访者:学长那照书上实现了demo,觉得会用了,但是有一些复杂的布局还是感觉实现不出来。
- .学长:可以要求学习后必然有产出,比如A同学在学习的过程中写了一个小小的界面出来,已经可以运行在手机上了,然后让能力强的同学把这三个控件组合到一个页面里,能力稍强的那一位就把这个布局写出来,能力弱一些的就把那三小块一个一个写出来,我之前做过一些UWP开发,虽然不是安卓开发,大体就是先用代码确定面板,再确定控件。到后期大家都比较熟悉了,任何一个页面都可以这样拆分来做,这样每个同学都有事情做。
- .采访者:那学长可以边学习边开发么,边学习语言。
- .学长:可以啊,边做边学习,这是最正常不过的事情了~得知道Java的最基本语法,比如安卓,你得知道Activity吧,首先要把语言最基础的部分知道,然后就开始一个一个小demo做,学习就是这样的,“做中学”就是这么来的嘛,没有人是把一本安卓书啃完,再合上书去码代码的。
- .采访者:学长那对于里面的第二个问题,站立式会议内容就讲一些今天的任务之类的么。
- .采访者:就是敏捷开发嘛,站立式会议。
- .学长:恩,对,就讲三个内容今天干了啥,明天要干啥,遇到了什么困难(简短说)。至于怎么解决困难,私下聊,当然如果涉及到全组的进度,那一起聊也可以。
- .采访者:那在阿尔法阶段只实现主要功能吗?
- .学长:就比如我记得有一组要实现手机验证,我记得这个是收费的,而且需要引入额外控件,它并非是核心功能,只是一个成熟软件需要的东西。不是不做,是放在后面来做,所以还是考虑考虑,做个传统的注册登录,先实现核心功能。
- .采访者:所以阿尔法阶段要主要实现核心功能。。嗯好那最后一个问题吧,正好四点结束。团队之间如果起了冲突怎么办,就是针对一些分配,比如一些人有课没完成任务这种类似的,学长你们那时候是怎么协调的呢。有起过矛盾么?
- .学长:有啊,非常多,有课没完成任务那就在他没课的时候催着点。
- .采访者:学长你们在代码冲刺阶段每天都到几点啊,是不是没时间搞其他事情了?
- .学长:恩 基本上是这样的,每天1点多?第二天还要起来上课 并不敢熬太多。
- .采访者:好的学长,针对你上面给的四条建议以及其他,我也会传达给我的组员。那没什么采访的了谢谢学长耽误了你宝贵的时间。以后有问题会再提的。感谢学长!!!
- .学长:没事哈哈。
- 2.在随笔中,描述组员在上述两项任务中的分工和工作量比例。
- 1.组长确定采访哪个队并决定如何采访。
- 2.采访问题是由李方凯 ,柯豪燊,黄阳正想出来的并确定控制采访时间。
- 3.采访是由我采访并写出博客,张富华做记录。
- 4.文档的善后及整理郑荣尧,黄逸飞做的。下面附上比例表:
组员姓名 | 李自强 | 张富华 | 李方凯 | 柯豪燊 | 郑荣尧 | 黄逸飞 | 杜实得 | 黄阳正 |
---|---|---|---|---|---|---|---|---|
百分之 | 11 | 11 | 11 | 11 | 11 | 11 | 20 | 11 |
- 3.心得:采访了学长之后,对一些事情有了清晰地认识,比如对于Android怎么学怎么写有了一些想法,懂得了一些方法,知道了自己做的是对的。对于阿尔法阶段也明确了要实现主功能是什么。也对团队整体如何维护有了一些思路。在敏捷开发中也有了一些思路,应该怎么主持。还有知道了一些之前不知道的事情,总之全是干货,受益匪浅。再次感谢学长。
团队作业—预则立&&他山之石(改)的更多相关文章
- 2016福州大学软件工程第二次团队作业——预则立&&他山之石成绩统计
第二次团队作业--预则立&&他山之石成绩统计结果如下: T:团队成绩 P:个人贡献比 T+P:折算个人成绩,计算公式为T+T/15*团队人数*P 学号 组别 Team P T+P 03 ...
- 团队作业—预则立&&他山之石
团队作业-预则立&&他山之石 Deadline: 2017.10.24 22:00pm 作业要求 一.确立团队选题,建立和初步熟悉团队git的协作方式.项目后续的代码.文档都要通过gi ...
- 团队作业—预则立&&他山之石(人月神教)
1.团队任务 GitHub issues 1.2 团队计划 2.访谈任务 2.1采访对象 采访团队:龙威零式 采访时间:2017.10.23 采访形式:微信群 2.2采访内容 问:你们选题的时候有哪些 ...
- 第二次团队作业——预则立&&他山之石
Deadline: 2016.10.16 22:00pm 一.确立团队选题,建立和初步熟悉团队git的协作方式.项目后续的代码.文档都要通过github增量式管理.实现文档的版本化和增量式管理. 二. ...
- 17秋 软件工程 团队第三次作业 预则立&他山之石
题目:团队作业-预则立&&他山之石 团队: 我说嘻(xì)哈(hà)你说侠 17秋 软件工程 团队第三次作业 预则立&他山之石 1.确立团队选题,建立和初步熟悉团队git的协作 ...
- 软工团队 - 预则立&&他山之石
软工团队 - 预则立&&他山之石 团队任务计划 时间 人员 任务 10.23-10.29 张昭锡 初拟Android代码规范 李永盛 初拟PHP代码规范 刘晨瑶 初拟Git代码规范 刘 ...
- 【项目 · Wonderland】预则立 && 他山之石
[软 工 实 践 · 团 队 作 业] 预则立&&他山之石 标签:WonderLand Part 0 · 简要目录 Part 1 · 团队计划 Part 2 · 团队访谈 Part 3 ...
- 第二次团队作业 -- 预则立&&他山之石
我说的都队 031402304 陈燊 031402342 许玲玲 031402337 胡心颖 031402203 陈齐民 031402209 黄伟炜 031402233 郑扬涛 一.团队任务计划 周数 ...
- 预则立&&他山之石--团队计划、访谈优秀前辈
团队计划&访谈内容 一.团队计划 序号 任务内容 计划完成时间 主要负责人 备注 1 对接教师报课系统 决定是否重构代码 2016.10.16 陈少铭.黄家俊 阅读CourseManageme ...
随机推荐
- [日常] DNS的迭代查询过程
DNS是应用层协议,端口号为tcp/53和udp/53 DNS查询过程,比如访问www.test.com1.客户机查询www.test.com2.查询首选DNS服务器,Linux下/etc/resol ...
- [HTML5] Canvas绘制简单形状
使用canvas来进行绘画,它像很多其他dom对象一样,有很多属性和方法,操作这些方法,实现绘画 获取canvas对象,调用document.getElementById()方法 调用canvas对象 ...
- idea入手配置
一.编码配置 utf-8 二.注释模板(Java Doc) 三.Live Templates 快捷键模板, 如配置logger,(类似 sout)
- Java Tools &Tools APIs
java 启动Java应用程序 javac Java编译器javac读取用Java编写的源文件,并将它们编译为字节码类文件. 用法: javac <options> <source ...
- Mybatis源代码分析之parsing包
parsing,从字面上理解就是编译解析的意思,那么这个包中的内容就应该和mybatis配置文件的编译解析有关系.本文首先会按照引用层次来分别介绍这个包中各个类的作用,而后再用实际的例子解释它们是如何 ...
- Go 语言实现 HTTP 层面的反向代理
最近对 Go 语言的反向代理使用得偏多,其实在大概两年前就写过 TCP 层面的代理,而且那时也是用的 Go 语言,不同之处在于之前只是偶尔尝试一下使用,最近是因为工作需要使用的.相比较于 TCP 层面 ...
- ASP.NET Core 2 学习笔记(十三)Swagger
Swagger也算是行之有年的API文件生成器,只要在API上使用C#的<summary />文件注解标签,就可以产生精美的线上文件,并且对RESTful API有良好的支持.不仅支持生成 ...
- 用python实现一个简单的聊天功能,tcp,udp,socketserver版本
基于tcp协议版本 服务器端 import socket server = socket.socket() server.bind(('127.0.0.1', 8001)) server.listen ...
- python中作用域
Python 中,一个变量的作用域总是由在代码中被赋值的地方所决定的. 函数定义了本地作用域,而模块定义的是全局作用域.如果想要在函数内定义全局作用域,需要加上global修饰符. 变量名解析:LEG ...
- Flutter Stack布局中定位的方式
前言 想要记录一下Stack布局中,定位的两种方式 代码 //……省略无关代码…… child: new Column( children: <Widget>[ new SizedBox( ...