我们的团队项目
项目计划及成员分配
在这次团队合作项目开发练习上,我们团队决定采用敏捷开发流程,开发出一款基于互联网短地址压缩的信息分享交流平台。
这个项目已经由完成了基本功能,所以我们想借着此次软件工程团队练习的机会,团队多人合作,通过学习的软件工程课程的理论知识,一边体验团队开发与个人开发的不同之处,一边继续完善并扩充此平台。
网站演示地址:iShare网址压缩分享平台
采用敏捷开发流程,实时将我们的最新成果展示在我们的平台上。
技术上,采用PHP+MySQL方式进行网站开发,选取Laravel框架提升团队开发效率。人员分配上,王远远与邹鹏华可以负责网站前端的设计,吕忠恒可以负责数据库的维护,李宝全与何宇峰可以负责网站后台开发。
NABCD模型
Need
随着智能手机以及移动网络的快速发展,网络用户获取和使用信息的行为方式也发生极大地改变。知识的生产、复制、分发变得比以往任何时候更容易,人们获取信息的方式越来越便捷,知识的获得成本越来越低。另外,人们在网络上的活动更加频繁。
为快速分发内容,以美国脸书网(Facebook)和推特网(Twitter)为代表社交网络对消息体的尺寸有严格的限制,比如推特网和国内的新浪微博(Weibo)等,都规定消息体内容长度不超过 140 字。在有限的表达空间中显示更多内容,使用超链接,引导用户点击是一种不错的做法。
但是如果这个链接非常的长,以至于将要占用内容的一半篇幅,这肯定是不能被允许的。微博系统会自动判别网址,并将其压缩,所以短网址压缩系统应运而生了。所谓短网址压缩系统,就是使用某种规则、算法,将较长的 URL 地址映射到相当短的地址,然后再将短地址用在社交媒体上。
但目前短网址系统仍存在很多的问题。以微博系统举例,由于目标网址在进行压缩时会造成信息丢失,所有的网址在压缩之后都是无规则的62进制字符串,用户无法从短网址上判断链接的安全性。这也造成了大量广告链接,无效链接,甚至是无效链接充斥在这些社交媒体上,不仅影响着用户的使用体验,也在危害着互联网安全。
Approach
我们希望建造出一个一短地址压缩技术为依托的互联网信息分享网站。首先,我们希望改进的是短网址压缩算法,希望在进行网址压缩的同时,保留一些有效信息,使用户可以再某种程度上通过短地址判断链接安全性。
其次,建立有效的链接管理与回收机制,尽量减少无效链接与广告链接的存在。
再者,对短地址点击信息,浏览信息等信息进行统计,并回送给用户。
最后,以数据为基础,建议一个有用的信息推荐算法,让用户可以在上面找到自己喜欢的信息。
Benefit
目前为止,我们对上面所有的做法都做到了简单的处理。
在网址压缩时,短网址前4位是对网站域名信息的压缩,这也保证了对于同一个域名下的所有网址,他们压缩成的短地址的前4位是固定相同的。这使得用户在对某些他们熟悉的网站的信息具有一定的辨识率。
对于回收机制,我们会在网址进行压缩前判断网页的有效性,对于不存在的网页链接的压缩请求,我们会给用户一个错误信息。在进行链接跳转时,我们也会对目标网页的有效性进行判断,对于已经失效的网页,我们停止跳转,向用户回送信息,并且将此链接信息从网站里删除。
信息统计方面,我们统计了链接的访问量信息( 包括日访问量与月访问量 ),访问系统信息,访问地址信息等,并以图表的方式显示在相应页面上。
Competitiors
由于使用广泛且实现原理相对简单,网络上现在已有很多短网址服务,据统计已超过 610 种,国外的如谷歌 ( Google ) 的 goo.gl,推特 ( Twitter ) 的 t.co,ShortURL,TinyURL,Bit.ly 和 Is.gd 等;国内的如新浪 ( Sina )的 t.cn,腾讯 ( Tencent ) 的 url.cn,百度 ( Baidu ) 的 dwz.cn和网易 ( Neteasy ) 的 126.am 等都是专业和稳定的短地址服务。
但是目前多数短网址生成服务均是将目标网址统一压缩,生成的短网址是无规则的多位字符,造成目标网址信息丢失,缺乏安全性。所以我们认为我们的系统还是有一定的竞争力的。
Delivery
(待完善)
附1 关于 " 我们希望建造出一个一短地址压缩技术为依托的互联网信息分享网站。首先,我们希望改进的是短网址压缩算法,希望在进行网址压缩的同时,保留一些有效信息,使用户可以再某种程度上通过短地址判断链接安全性 " 的例子与解释。(ps 由于本周备考,所以现在才进行改进,还请老师见谅)
在短地址压缩算法中,我们对 URL 信息分割成 URL 首部与站内 URL 两部分。如 http://www.cnblogs.com/dreamarchitect/p/5356945.html#3420523 会被分割成 http://www.cnblogs.com 与 dreamarchitect/p/5356945.html#3420523 两部分。并分别对两部分进行压缩。
如此,对于同一域名下的所有 URL 压缩成的短地址前 4 位相同。例如
这样,对于用户较为熟知的网站,用户能更为熟悉的通过短地址的前 4 位来判断短地址的目标 URL,依次简单断定短地址安全性。