ASE past project:interview & analysis
采访往届ASE课程学员李潇,他所在的团队blog戳这里http://www.cnblogs.com/smart-code/
Q1:师兄你觉得在团队项目中,有哪些需要注意的事情?
A1:团队合作吧。首先是分工,大家在提Proposal的时候都是异想天开,最终实践的时候想法要实际。这就要求组员们充分讨论自己的team work,实现的功能都要well define,定下各阶段的milestone,合理分配任务;然后要进行充分的沟通和协调,每天拿出10~12分钟大家碰个头开个小会,分享一下彼此的进展,有什么bug不能藏起来,有困难,找队友;最后你们可以选一个PM,每天协调分工,督促进展。我们当时每天都会写daily scrum,记录下进展,彼此鼓励~
Q2:那像现在很多同学自己组里也有很多事情要忙,又该怎么协调时间呢?
A2:首先任务分配要合理,自己也要有时间规划。每天开会就是碰个头,如果是个饭团的话直接就在吃饭的时候讨论掉了。特别感谢当时mentor对我们的支持,实际上Coding是很辛苦的部分,不花足够的时间也根本搞不定。
Q3:那你们最后搞定了吗?
A3:当然搞定了~(具体戳这里http://blog.sina.com.cn/s/blog_6e3160cb01015h29.html)软件开发的整个历程,从设定scenario, feature list, schema, 到daily scrum都 是我们队员一起讨论,共同解决的。有些同学本身不是CS出身的,这门课程让我们接触到了正规的软件开发流程,学习到了软件开发的系统思想。就算最后的成品低于预期,回想一下,那时候大家一起努力还真是非常充实呢!
Q4:作为这门课程的往届学员,给这门课程提点建议吧?
A4:这门课程其实很有挑战,老师只扮演一个引导和把关的角色,具体的问题要团队和个人来解决~大家一定要认真对待这门课程,作为一个团队共同努力,这样才能避免不必要的工作,提高效率。还是前面所说的那样,团队合作最重要!
----------------------------------------------------------------------------我是分析的分割线-------------------------------------------------------------------------------------------------------------------
我们Azure Wrapper的每位成员都认真浏览了smart code组和其他组的blog,进行了横向的比较和纵向的分析。除却具体的项目分析,在进行团队项目时,总结起来大致有这么几个要点:
团队合作很重要,BigPicture不能少;
勤总结来勤沟通,合理分工效率高;
性能测试补bug,阶段总结出新意;
进度须赶直须赶,莫待最后deadline;
冯晓云
1.“Smart Code”小组做的是一个将搜索结果以树的形式展示出来的软件,当用户想要持续关注某一条新闻的发展时,只需要输入关键词,然后软件会生成一棵挂着搜索结果的树,以后会自动地从网上抓取结果,在树上长成新枝。用户不想关注某一条新闻,可以将其剪掉。这本身是一个非常有趣的idea,UI界面的互动性很强,也增强了整个开发过程的趣味,很能调动起大家的积极性。
2.每天都会写daily scrum,记录下大家的工作分配和完成情况,分析当前工作进展,分配新的工作任务面对的问题以及相应的解决方案,并贴出来Burndoan & Burnrate。他们组的daily scrum写的比较认真,善于总结,整个工作的进程推进也比较有条不紊,因此可见团队之间充分沟通,协作并进对于团队项目的重要性。
3.虽然是在初始阶段对团队项目进行了充分的讨论,依照个人能力进行了分工。实际完成时仍然面对着许多挑战和变化,这时候就要及时做出相应的调整。并且随着项目的深入,也会有一些新的想法出现,在保持大框架不变的情况下,对软件功能做出相应的调整和补充,不要被原来定下的东西框死。
林建平
1, 做得好的地方。
比较炫酷的桌面设计,多棵树的自适应生长,比较好地解决了数据同步问题。
2, 可以改进的地方。
(1)可以做出3D的自适应生长树。
(2)在工作安排上,我们一开始并不需要定死每个人负责的部分,有些开发能力比较强的同学可以同时负责多个部分,对于没什么开发经验的同学可以主要负责其中一块,这样的工作安排会比较有弹性,不会出现任务比较紧张但是只能依靠一个人开发其他人却什么也做不了的情况。
张葳
优点:该软件可以针对特定关键词,结合Bing相关接口,实时获取关注点的发展动态,使得持续获取信息更为便捷,免去重复搜索和回溯事件发展进程的麻烦。同时,原始信息的访问也十分便捷,这就特别适用于关注热点事件。若能结合用户反馈,对根据关注度对节点大小进行调整或增删节点则会使用户更为方便。
朱玉影
1.虽然知道在大的项目中时间规划是重要的,但是在其实这个良好的习惯应该从小项目开始养成,想想自己最近做的大数计算项目就是完全没有想过怎么安排时间,任务。并且虽然知道自己码代码速度不够高,但是完全没有估计过,但这对于我们预估要多长时间完成任务是有很大帮助的。看了前辈的博客发现他们在开始之前都会估计代码量是多大,需要多长时间来完成,进而合理安排时间
2.看到有的师兄在做整个项目时会有意识地计算每部分的时间花费,这样在项目结束时能够更好的反思自己的不足之处,得到大的提高。
3.我看了好几个小组的博客发现在项目后期普遍时间不够,原本想要实现的没能够实现或者有bug不能用,所以顺利完成一个项目我觉得核心就在于从前期到后期历时2个多页的详细时间规划与分工安排。并且这需要我们在一开始就知道我们的idea到底要怎么实现,实现那些功能,并且中途不能随意改变。
周以舟
1、任务分配时,要注意个任务间的耦合度不能过大,尽量保持不同任务间的关系不是串行二是并行,以免出现任务间互相等待的局面。
2、工作量分配要动态调整。每一个阶段通过一些统计数据来记录组每个成员的负载量,在下一阶段要据此调整工作量,使每个人都在合适的工作量下达到较高的效率。
3、刚入手时,具体细节不宜讨论过多,先做出整体框架,预留足够多的接口,在项目发展的过程中不断完善细节。
ASE past project:interview & analysis的更多相关文章
- Project Management Process
Project Management ProcessDescription .............................................................. ...
- FlexPaper 2.3.6 远程命令执行漏洞 附Exp
影响版本:小于FlexPaper 2.3.6的所有版本 FlexPaper (https://www.flowpaper.com) 是一个开源项目,遵循GPL协议,在互联网上非常流行.它为web客户端 ...
- Salience Model
Who is a stakeholder? Simply anyone with a stake in the project either direct or indirect. PMBOK say ...
- Oracle EBS Model Function Technical
♡.Oracle EBS(ERP)Oracle 是公司名字,这个我估计大家都知道.EBS是E-Business Suite的缩写,简单的说,就是Oracle做的一个企业级的信息化软件或者系统,里面包含 ...
- Leetcode-Combinations Sum II
Given a collection of candidate numbers (C) and a target number (T), find all unique combinations in ...
- cvpr2015papers
@http://www-cs-faculty.stanford.edu/people/karpathy/cvpr2015papers/ CVPR 2015 papers (in nicer forma ...
- Analysis of Web.xml in Hello1 project
一.web.xml文件介绍 The web.xml file contains several elements that are required for a Facelets applicatio ...
- 【interview——Ali】project interview_18 summer
完全没有准备的一次面试……意外 两部分:Word2vec + 中位数 (还有聊对科研的想法和自己研究能力的评价? word2vec //解释模型 原本是one-hot,存在缺点:稀疏和无法表现语义,词 ...
- 微软BI 之SSAS 系列 - 在SQL Server 2012 中开发 Analysis Services Multidimensional Project
SQL Server 2012 中提供了开发 SSAS 项目的两种模型,一种是新增加的 Tabular Model 表格模型,另一种就是原始的 Multidimensional Model 多维模型. ...
随机推荐
- Matplotlib 精简实例入门
Matplotlob 简明实例入门 通过几个实例,快速了解matplotlib.pyplot 中最为常见的折线图,散点图,柱状图,直方图,饼图的用法 如果您需要更为详细的内容,请参考官方文档: htt ...
- 我们是怎么实现Grpc CodeFirst
前言: Grpc默认是ProtoFirst的,即先写 proto文件,再生成代码,需要人工维护proto,生成的代码也不友好,所以出现了Grpc CodeFirst,下面来说说我们是怎么实现Grpc ...
- display:flex 简单记录
1.有写了 display:flex:这个就是 采用了 flex布局的 元素 这个元素可以 写 6个属性: flex-direction : row | column | row-reverse ...
- css 重排与重绘
css 重绘与重排 我们要知道当浏览器下载完页面的所有资源后,就会开始解析源代码. HTML 会被解析成 DOM Tree,Css 则会被渲染成 CSSOM Tree,最后它们会附加到一起,形成渲染树 ...
- GANs和低效映射
生成对抗网络(GANs)被誉为生成艺术领域的下一纪元,这是有充分理由的.新技术一直是艺术的驱动因素,从颜料的发明到照相机再到Photoshop-GAN是自然而然的.例如,考虑下面的图片,由埃尔加马勒发 ...
- Lack of free swap space on Zabbix server
在模板(Template)里找到Linux OS模板,修改触发器 配置>模板>Template OS Linux>触发器 找到swap关键字 修改 {Template OS Linu ...
- mybatis入门二-----增删改查
一.使用MyBatis对表执行CRUD操作——基于XML的实现 1.定义sql映射xml文件 userMapper.xml文件的内容如下: <?xml version="1.0&quo ...
- 使用SpringCloud将单体迁移至微服务
使用SpringBoot构建单体项目有一段时间了,准备对一个老项目重构时引入SpringCloud微服务,以此奠定后台服务能够应对未知的业务需求. 现在SOA架构下的服务管理面临很多挑战,比如面临一个 ...
- ML-Agents(六)Tennis
目录 ML-Agents(六)Tennis 一.Tennis介绍 二.环境与训练参数 三.场景基本结构 四.代码分析 环境初始化脚本 Agent脚本 Agent初始化与重置 矢量观测空间 Agent动 ...
- Python操作Oracle数据库:cx_Oracle
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...