08 2011 档案
摘要:在这个课里面,我是最另类的,我是一个旁听生。虽然我是另外二十一个人的师兄,但其实我很惭愧地说,我的编程能力很弱,没有过多少编程经验。所幸我的伙伴Haifeng做得比较好,使得我的拙劣不会彰显得太过火。言归正传,我和Haifeng要做的是在微软学术搜索的基础上增加作者查找,地理位置查找还有关键字查找三项功能,工期大概是十天,所用的开发平台是Silverlight。接到这个题目,我还是很高兴的,因为个人以为这个题目比其他题目更有实际意义。其他花哨的功能都不如能按作者查询,地理位置查询来得实在。但很遗憾,在工程结束的时候,我们只在一定程度上完成了前两项工作,最后一项按关键字查询的工作由于种种原因没能
阅读全文
摘要:(由于公司政治的原因,ANDROID是不被允许的,特此公布我们的紧急替代方案——“叫你睡!”闹钟) Need: 你是不是每天都用手机设置闹钟? 你是不是闹钟一响手就条件反射的摁掉了,结果还是没能起床? 你希不希望有一款闹钟能真正叫醒自己? 我的答案:是是是。 由于现代社会大家白天都非常疲劳,再加上丰富的夜生活或者加班,导致早上起不了床成为了一个普遍性的问题,有意志强者能自强不息,但大多数人总需要借助闹钟来帮助自己按时起床,随着手机成为人手必备的装备,手机闹钟自然也就有了刚性的市场需求。 在苹果应用市场和安卓应用市场的调研发现,"alarm"类别下充满着各种充满创意的闹钟应用
阅读全文
摘要:历时两个星期的pair work总算告一段落,在最后presentation结束之际,回顾之前经历的种种困难以及克服后的喜悦,想跟大家分享我们的成果与收获。Pair work的项目是对academic map进行一些补充和修改,项目的分配原则是大家玩一个number game,按赢者的先后顺序选题目。我很庆幸自己猜中了,首先选了一个觉得很有意义的项目,就是对机构下的author进行多种排序。源代码对作者是按其论文的citation count来排序的,然后把作者呈螺旋形展示。我们的目的是不仅按citation count ,还要按publication count来排序,并且能给用户一个选择的
阅读全文
摘要:结对编程是什么?在此模式下,一对程序员并肩作战,平等互补进行开发工作。两个程序员并排坐在一台电脑前,同对一台显示器,使用同一个键盘,同一个鼠标进行工作。一起分析,一起测试,一起设计,一起编程。这个图很好的说明了结对编程那么结对编程中两个人如何扮演角色?应该是驾驶员,和领航员的角色。驾驶员是控制键盘输入的人,而领航员是起到领航,提醒的作用。为什么结对编程?(结对编程的经济学意义)你说工程量是一定的,如果两个人编程,那么编程速度就会提高一倍,时间就会节省一半,为什么要编程?1:首先不得不承认,每个在各自独立设计,实现软件的过程中不免要犯各种错误。在结对编程中,因为有随时的复审和交流,每个人都有强项
阅读全文
摘要:1+1 >, =, <2 ?记软件工程之结对编程pair-programming顾名思义,结对编程技术是一个非常简单和直观的概念:两位程序员肩并肩地坐在同一台电脑前合作完成同一个设计。一个很有意思的问题是,这种编程方法能够带来必然的好处吗?两位程序员的时间、精力和能力各为1,那结对编程能使产出大于2吗?抑或是,很不幸的会小于等于2?首先,结对编程能带来哪些可能的好处?更好的想法——持续不断的头脑风暴和思维碰撞、更大的知识库、有更多的脑力解决设计问题;更好的质量——更少的漏洞、想法的即时认证、始终如一的方法;更全面的认识——经验共享与知识共享、对于为什么做、怎么做和做什么有更深入的理
阅读全文
摘要:摘要本文详细阐述了我组团队项目的具体方案及其概念设计和分析。引言如今的手机游戏纷繁多样,仅仅纸牌类游戏就已经数不胜数,AndroidMarket上供人下载的Card & Casino游戏就已经达到了380多款,各款游戏的规则不尽相同,为了寻找自己想要的玩法,可能要根据需要去下载相应的游戏。另一方面,这些游戏或只能与电脑对战,没有与人一决胜负的快感,或通过游戏运营商的服务器对战平台与他人比赛,耗费手机流量。我们的项目,就是针对这两个问题,给出了一套解决方案。应用场景当我们与朋友在一起,想要寻求一种娱乐方式,却又因为条件受限,不能进行,例如:火车长途漫漫,怎么去打发无聊的时光呢?要保持安静
阅读全文
摘要:前面的话;刚踏入科研圈子,接着便迎来了软件工程这个为期近三个月的大课,五人组成的近两个月的团队项目确实不是一件小事,要确定一个切实可行,能够有些创新,又能适合团队的项目很是困难。目前恰好有 Microsoft Academic Search和bing 搜索引擎的资源,所以就想了高校申请指南,现在想法和目标都不健全,目前我就用NABC方法对此进行分析,还请大家多多指正,多多评论。1) N(Need 需求:这个创意到底解决了用户的什么需求?) 每年秋季,尤其是大四的同学就开始为各种出路做准备,大部分选择了继续学习。那么如何选校读master或者Ph.D是大家很头疼的问题。尤其是选择出国,申请什么.
阅读全文
摘要:软件工程双人项目终于完工了,回首过去的一个多星期,紧张忙碌中也学到了很多知识。不仅仅熟悉了Silverlight编程的相关技能,同时也了解了团队项目中协作分工的方法。我们的双人项目是基于微软学术搜索的Academic Map的一个工程。目标是为其增加一些新功能。具体来说,我组的任务是下面两个:精简组织:由于组织众多,全部显示在地图,会显得很杂乱。因此,我组想到了可以在界面中增加一个密度调节工具,让用户选择显示组织的多少。作者详情:在浏览一个组织内部的众多作者时,当鼠标悬停在作者的照片上,可以显示作者的详细信息,如专业领域、相关作者等。下面具体阐述两个任务的细节。精简组织一开始的想法是根据组织的
阅读全文
摘要:高级软件工程的pair project正式结束了。我和徐海峰同学经过一个星期的努力圆满完成了以下任务: 1、 修改Academic map中代表各机构的圆圈颜色显示模式,将单调的四种颜色模式改 为按照红橙黄绿青蓝紫的颜色变化顺序表示各个机构。 2、在各个机构中的中心显示区,根据作者数目排序显示出该机构的前三位的研究领域。 我们预期我们的...
阅读全文
摘要:为什么要花时间写一个团队blog?除了帮助自己记录和精炼团队合作中的点点滴滴,我们更希望能给每一个读者:灵感,分享我们的,激发你的;技术,分享我们的tricks,bugs,从语言、算法、到具体的应用实现;经验,分享我们编程的、读书的、合作的经验;人品,通过帮助一帮菜鸟进步,见证一堆白痴成长,积攒您的人品;最后,自然是我们取得每一点成果时的喜悦!
阅读全文
摘要:一、上网行为检测应用 是不是一直告诉自己不要刷新人人、围脖、QQ了? 是不是无济于事手还是不受控制地不时拿起手机按下了刷新? 是不是想知道自己到底消耗了多少光阴在GPRS上但没有办法统计自己完全不受控制的行为? 是不是想有人能帮助监督你,不至于浪费太多光阴? 我的答案:是是是是。 所以,我们设想能做一个手机上的应用,实现监测某些特定网络行为(比如登陆人人,刷新围脖等)的功能,并能将这些数据的统计信息给出可视化的展示,最好还能有些许分析;在此基础上,希望还能设置对这些特定行为的限定,比如一天围脖刷新超过20次即禁止该行为,等等。经过向和田老湿商量,他表示他也深有同感,若有此类应用将立马尝试,他还
阅读全文
摘要:知己知彼,百战不殆。 为了打探敌情,加强对“软件工程”课程之难度、耗时的了解,我通过人人留言和吃饭扯淡的方式访谈了两位师兄,分别是科大牛炜清师兄和在MSRA进修的田飞田老湿。一、中国科大计算机系的软件工程课Q1 : Howuseful is it for the students? 牛炜清:学习效果因人而异,对于很多人来说,作用不是很多,因为适逢考研,或者出国,或者……基本上,一个小组三个人到四个人,很难做到所有人都有较大工作量来保证收获。Q2:OMG~ So how much code has the student written? What kinds of project didthe
阅读全文
摘要:以铜为鉴,可以正衣冠; 以人为鉴,可以明得失; 以师兄师姐为鉴,可以平路途。三个问题 在软件工程开课之际,邹欣老师就首先布置了一个调查作业,让我们采访学过软件工程的师兄或师姐,谈谈他们在学了软件工程之后的想法。正巧,我知道微软又来了一位科大的研究生师姐,并且是软件工程专业的,于是我就在Lync上采访了Yueshan Wang 师姐。师姐很认真地回答了我的问题,我记得第一个问题足足隔了五六分钟她才发过来,下面是她的回答:Q:How useful is it for the students?A:学习这门课程,可以对于软件设计的总体流程掌握清楚,可以在软件设计过程中明确各个时段应该开始或者同时进.
阅读全文
摘要:每年秋季,大四的同学就开始为各种出路做准备,大部分选择了继续学习。那么如何选校读master或者Ph.D是大家很头疼的问题。尤其是选择出国,申请什么学校、什么教授,都需要我们花费不少心思去挖掘。哪个学校科研做得好? 哪个比较牛?学校对学生申请的要求是什么?种种信息需要去归纳和整理。学术搜索是一个论文的数据库,包含着海量的信息,如果我们能有效地利用其中的信息,并且结合Bing搜索引擎或许能为高校申请起到帮助。这个基于Academic Search的应用主要面向的就是申请高校的学生。以高校和教授为搜索主体。用户可以从很粗糙的level上进行多项选择(如地理位置,专业,学校,是否提供offer)等.
阅读全文
摘要:数字世界信息庞杂,学术论文如雨后春笋层出不穷,如何有效地归类和整理这些数据呢?各种检索系统,分类方法复杂多样,却淡漠了论文期刊原有的形状。我们的想法,就是还原论文以自然和真实感。 具体来说,这个想法就是按照论文所在的学术期刊分门别类。用户的搜索从期刊库(学术门类)->书架(期刊名称)->书(发行日期)->论文,一步步细化。通过友好的用户界面,去模拟真实的传统论文查阅过程。 例如,在应用的主界面上,可以显示一个个建筑物,上面标示以数学、物理、计算机等诸学科门类,用户可以通过点击进入其中某一个学科领域,显示这个领域的书架。此时用户可以继续放大视图,按既定的排列顺序查找所需的期刊,
阅读全文
摘要:上学年,一个软件工程小组制作了一款名为“呆呆”的聊天软件,主要面向情侣使用。然而,在QQ如此盛行的年代,开发这样的一款PC软件,似乎意义不大。手机则不然。手机比电脑蕴含了更多的个人信息。手机知道你最近给什么人打过电话、发过短信,手机知道你每天设什么时候的闹钟几点起床,手机甚至知道你去过哪些地方的行动轨迹。亲密的情侣之间,这些信息应该是可以被分享的,需要被分享的。 于是,张宁同学萌生出了做一个移动版呆呆的想法。 呆呆与前面的微社区的不同之处,在于它的底层通讯是要借助于互联网或者SMS的,需要进行远距离点对点的通讯。底层通讯由于已有现成的借口可供调用,不需要专门设计。它的侧重点更偏向于信息的共享.
阅读全文
摘要:是否曾经为火车上如何打发时光而烦恼? 几个朋友凑在一起没有带纸牌? 想把手机上的照片分享给一群人? 看到附近的PPMM却不知如何搭讪? 我们周围的人,或许在空间上与我们近在咫尺,内心却可能飘零在别处。 于是有人开始思考,手机上是不是可以有这样的一款软件,能够在真实世界的基础上,同身边的人进一步的虚拟互动? 于是,微社区的想法应运而生。 微社区是一个平台,基于Wi-Fi或者蓝牙,面向100米范围内的人群。在应用推广初期,主要针对朋友之间的交互,在拥有相当数量的用户基础后,可以考虑延伸到普通陌生人之间的沟通。 微社区可以分解为三个层次。最底层是物理网络,需要建立稳定的多对多的连接,以满足上层多种.
阅读全文