用户分析

我们应当怎样做需求分析

北战南征 提交于 2020-01-11 16:04:32
阅读笔记1 读了这篇关于软件需求分析的博客之后,令我大有感触。我觉得这篇文章写得实在是太好了,完全可以绘制成一本关于软件需求分析的书。 此书主要从客户的一些需求分析作为出发点,对用户的需求作大量的研究,从不同的角度做分析。一个需求分析的是否彻底决定了项目的成功与否。但是从现实中来说,很难做到不停的调研,对用户的需求能够彻底的了解,直至到达用户需要的场景。对于一些基层人员,像这种专门做软件开发设计的,在开展一个项目之前,必须要了解用户的需求,用户在什么样的工作环境下的需求,对于最基层工作人员的工作情况了解,不能让此系统软件给工作人员造成了负担。要做到好的需求结果,我认为需要,大胆和用户沟通不要怕说错、有不懂业务问题一定要问用户不要怕打扰别人了、多写各类软件文档不要怕麻烦、多百度一下很多 问题能解决、多推敲在用户需求上能否在扩展更有用的东西、系统界面一定要美观,很多开发人员都不太重视界面,只注重一些功能的实现,每次先完成一些项目的功能之后,可以先让用户看看,是否按着他的一些思路,对于一些对此专业一窍不通的用户,可能会有一些天马行空的想法,在这个时候你不能拒绝用户的想法,这样会让用户感到反感。对于这种情况分析人员只能调查为什么用户会有这样的想法,这种想法对于用户的利益,然后分析人员 可以通过其他的解决方法进行解决。 我们应当怎样做需求分析:子用例与扩展用例 这部分里用例图中

胡泽锐:移动开发即服务——腾讯云移动开发平台技术分享

一曲冷凌霜 提交于 2020-01-11 09:09:57
欢迎大家前往 腾讯云+社区 ,获取更多腾讯海量技术实践干货哦~ 作者:胡泽锐,2010 年毕业加入腾讯,先后负责过QQ空间、网页应用、移动应用、移动游戏相关的工作,有着丰富的平台产品经验以及大前端开发经验,目前在腾讯云负责前端以及终端相关的工作,提出并推动移动开发平台产品的落地。 很高兴能和大家分享移动开发的历史、现状、以及未来,一起探索面向云端的全新模式——移动开发即服务。正因为有了移动开发即服务的理念,才有了移动开发平台这个产品。传统模式下,大家都是以单个产品或者能力的方式提供服务,比如推送的就提供推送的服务,分析的就提供分析的服务。也许在单个产品下,能做到体验的极致,在接入使用,或者管理上能做到很方便。但对整个移动开发来讲,这种单品的割裂会导致整个移动开发体验的不流畅、不完善,各个产品之间的割裂会导致整个移动开发的节奏也是割裂的,我们无法完整地做到一件事情从头到尾只在一个平台上做,所以腾讯云提出一个全新的模式——移动开发即服务。 这里面包含两个概念,一是要做移动开发整体的事,我们要服务移动开发整个的生命周期。二是做服务的事,服务这里也包含两点:一是我们的开发体验必须要做到完善,二是使用体验也要尽力做到最好。 移动开发平台 下图是腾讯云和腾讯内的各个产品合作,深度整合各个产品,联合推出的全新的移动开发平台。如果只是看功能的话,这些产品都不是什么特别新的东西,比如移动分析

商业智能学习笔记

好久不见. 提交于 2020-01-11 02:29:32
商业智能 ,又称 商务智能 ,英文为 Business Intelligence ,简写为 BI 。 商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具 。这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供应商等来自企业所处行业和竞争对手的数据以及来自企业所处的其他外部环境中的各种数据。而 商业智能能够辅助的业务经营决策,既可以是操作层的,也可以是战术层和战略层的决策 。为了 将数据转化为知识 ,需要利用 数据仓库 、 联机分析处理( OLAP )工具 和 数据挖掘 等技术。因此,从技术层面上讲,商业智能不是什么新技术,它 只是数据仓库、 OLAP 和数据挖掘等技术的综合运用 。 商业智能的概念于 1996 年最早由加特纳集团( Gartner Group )提出,加特纳集团将商业智能定义为: 商业智能描述了一系列的概念和方法,通过应用基于事实的支持系统来辅助商业决策的制定 。 商业智能技术提供使企业迅速分析数据的技术和方法,包括收集、管理和分析数据,将这些数据转化为有用的信息,然后分发到企业各处 。 可以认为, 商业智能是对商业信息的搜集、管理和分析过程,目的是使企业的各级决策者获得知识或洞察力( insight ),促使他们做出对企业更有利的决策 。商业智能一般由数据仓库、联机分析处理、数据挖掘、数据备份和恢复等部分组成

反网络爬虫

百般思念 提交于 2020-01-10 07:44:31
网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。 但是当网络爬虫被滥用后,互联网上就出现太多同质的东西,原创得不到保护。 于是,很多网站开始反网络爬虫,想方设法保护自己的内容。 他们根据ip访问频率,浏览网页速度,账户登录,输入验证码,flash封装,ajax混淆,js加密,图片,css混淆等五花八门的技术,来对反网络爬虫。 防的一方不惜工本,迫使抓的一方在考虑成本效益后放弃 抓的一方不惜工本,防的一方在考虑用户流失后放弃 参考: 美国高级情报官员透露,美国国家安全局前雇员斯诺登仅仅是利用普通的网络爬虫软件(Webcrawler),从国安局网络里面截取大量的机密文件与资料. 反网络爬虫:越来越成为一种新的行业 因为搜索引擎的流行,网络爬虫已经成了很普及网络技术,除了专门做搜索的Google,Yahoo,微软,百度以外,几乎每个大型门户网站都有自己的搜索引擎,大大小小叫得出来名字得就几十种,还有各种不知名的几千几万种,对于一个内容型驱动的网站来说,受到网络爬虫的光顾是不可避免的。 一些智能的搜索引擎爬虫的爬取频率比较合理,对网站资源消耗比较少,但是很多糟糕的网络爬虫,对网页爬取能力很差,经常并发几十上百个请求循环重复抓取,这种爬虫对中小型网站往往是毁灭性打击,特别是一些缺乏爬虫编写经验的程序员写出来的爬虫破坏力极强,造成的网站访问压力会非常大

地理文本处理技术在高德的演进(下)

笑着哭i 提交于 2020-01-09 06:40:25
​在 【上篇】 里,我们介绍了地理文本处理技术在高德的整体演进,选取了几个通用query分析的点进行了介绍。下篇中,我们会选取几个地图搜索文本处理中特有的文本分析技术做出分析,包括城市分析,wherewhat分析,路径规划,并对未来做一下展望。 四、query分析技术演进 4.1 城市分析 在高德地图的检索场景下,从基础的地图数据索引、到在线召回、最终产品展示,均以市级别行政单位为基础粒度。一次完整的检索需求除了用户输入的query外,还会包含用户的图面城市以及用户位置城市两个城市信息。 通常,大多数的搜索意图都是在图面或者用户位置城市下,但是仍存在部分检索意图需要在其他城市中进行,准确的识别出用户请求的目标城市,是满足用户需求的第一步,也是极其重要的一步。 在query分析策略流程中,部分策略会在城市分析的多个结果下并发执行,所以在架构上,城市分析的结果需要做到少而精。同时用户位置城市,图面城市,异地城市三个城市的信息存在明显差异性,不论是先验输出置信度,还是用后验特征做选择,都存在特征不可比的问题。 在后验意图决策中,多个城市都有相关结果时,单一特征存在说服力不足的问题,如何结合先验置信度和后验的POI特征等多维度进行刻画,都是我们要考虑的问题。 原始的城市分析模块已经采用先验城市分析和后验城市选择的总体流程 但是原始的策略比较简陋,存在以下问题: 问题1

创新产品的需求分析:未来的图书会是什么样子?

妖精的绣舞 提交于 2020-01-09 02:29:20
一、如何对需求不确定的创新产品进行分析和设计?简要总结一下有哪些方法和策略 在互联网行业,用户至上,以用户为中心进行产品设计的理念深入人心,满足用户需求也是产品工作的第一原则,因此产品的需求分析是一个项目在实现过程中十分重要的一环。而实现需求分析需要我们全面的考虑到包括用户层面的需求、业务人员的需求以及产品运营需求等等。但对于创新产品来说,这些都是无从得知的,并没有可供参考的概念。因此对于创新产品我们可以按如下的方法进行分析与设计: (1)在需求不明确的情况下,需要预测需求并明确方向。任何事物的产生都不会无迹可寻,任何创新产品都或多或少有着前任的影子。首先我们要通过确定产品的设计方向,提出一系列的预案,同时还可以参照同类的产品。 (2)之后可以按照需求调研的正常步骤,利用访谈法或者问卷调查法调查系统需求,结合第一步的结果,写出系统的相关事件.根据事件列表,归纳抽象出系统相关角色,建立角色列表,而后就建立角色用例图,根据角色和用例模型建立类图模型。再根据角色和用例规约建立界面模型,确定系统的部署需求,最后形成完整的需求规格说明书。 (3)由于是创新型的产品,并没有参照物,因此在产品的运营阶段要一直做好收集用户反馈的工作,积极修改并完善系统,因为用户的需求分析有时也是片面的,只有在实际的使用过程中一些问题才会浮出水面。 二、未来的图书是什么样的? 古人有云,书中自有黄金屋

WebView性能、体验分析与优化

我怕爱的太早我们不能终老 提交于 2020-01-09 01:03:26
在App开发中,内嵌WebView始终占有着一席之地。它能以较低的成本实现Android、iOS和Web的复用,也可以冠冕堂皇的突破苹果对热更新的封锁。 然而便利性的同时,WebView的性能体验却备受质疑,导致很多客户端中需要动态更新等页面时不得不采用其他方案。 以发展的眼光来看,功能的动态加载以及三端的融合将会是大趋势。那么如何克服WebView固有的问题呢?我们将从性能、内存消耗、体验、安全几个维度,来系统的分析客户端默认WebView的问题,以及对应的优化方案。 性能 对于WebView的性能,给人最直观的莫过于:打开速度比native慢。 是的,当我们打开一个WebView页面,页面往往会慢吞吞的loading很久,若干秒后才出现你所需要看到的页面。 这是为什么呢? 对于一个普通用户来讲,打开一个WebView通常会经历以下几个阶段: 交互无反馈 到达新的页面,页面白屏 页面基本框架出现,但是没有数据;页面处于loading状态 出现所需的数据 如果从程序上观察,WebView启动过程大概分为以下几个阶段: 如何缩短这些过程的时间,就成了优化WebView性能的关键。 接下来我们逐一分析各个阶段的耗时情况,以及需要注意的优化点。 WebView初始化 当App首次打开时,默认是并不初始化浏览器内核的;只有当创建WebView实例的时候,才会创建WebView的基础框架。

网站用户行为数据挖掘

拜拜、爱过 提交于 2020-01-08 02:37:34
回顾网站数据分析历史,从“您是第***位来访用户”到现在百家齐放的专业工具提供商,网站分析已经逐渐发展衍化成一门科学。但面对形态各异的分析数据,很多人仍然困惑于数据的来源,了解数据的收集原理,也许对你解决这些困惑有所帮助。 眼下网站分析数据主要有三种收集方式:Web日志、JavaScript标记和包嗅探器。 1. Web日志 下图是 Web日志收集数据 过程的示意图。 从上图可以看出网站分析数据的收集从网站访问者输入URL向网站服务器发出http请求就开始了。网站服务器接收到请求后会在自己的Log文件中追加一条记录,记录内容包括:远程主机名(或者是IP地址)、登录名、登录全名、发请求的日期、发请求的时间、请求的详细(包括请求的方法、地址、协议)、请求返回的状态、请求文档的大小。随后网站服务器将页面返回到访问者的浏览器内得以展现。 一些专业的工具厂商会有专门的处理服务器对大量的Log数据进行处理,并将处理后的数据存放入自己的数据库中。网站经营人员通过访问分析报表系统查看网站的分析数据。也有一些中小网站主出于成本的考虑不会求助于专业的工具厂商,他们会借助简单的网站日志分析软件完成对Log数据的处理,当然处理后的数据会有一定的局限性。 (版权归 数码林网站分析博客 所有,欢迎转载,但转载请注明出处。) 2. JavaScript标记 下图是 JavaScript标记收集数据 过程的示意图

关于JWT分析的文章转载

夙愿已清 提交于 2020-01-06 22:06:17
转载 JWT 超详细分析 本篇文章不讨论 Laravel 中 JWT 这个怎么使用,要这方面内容的可以看我另一篇文章 JWT 完整使用详解 。 在此我要从一个更深的层次来探讨 JWT 在实际运用中的使用以及其优缺点,以及 JWT 和 Oauth 2.0 这两者到底有什么差别和联系。 首先我们从 Token 入手,再联系到 JWT,然后分析 JWT 的优缺点和使用场景,最后再联系到 Oauth2.0。 一、Token token 是一串字符串,通常因为作为鉴权凭据,最常用的使用场景是 API 鉴权。 1. API 鉴权 那么 API 鉴权一般有几种方式呢?我大概整理了如下: cookie + session 和平常 web 登陆一样的鉴权方式,很常见,不再赘述。 HTTP Basic 将账号和密码拼接然后 base64 编码加到 header 头中。很显然,因为账号和密码几乎是『明文』传输的,而且每次请求都传,安全性可想而知。 HTTP Digest 将账号和密码加上其他一些信息拼接然后取摘要加到 header 头中。这个安全性比上面要好一点,因为如果是取摘要的话,即使信息段被截取,也无法轻易破解出来(当然也是有破解的可能)。 不过其实最大的问题还是:每次请求都要对账号、密码取一次摘要,也就是说每次请求都要有账号和密码,也就是说账号和密码要么缓存一下,要么就每次请求要去用户输一次密码

如何评测软件工程知识技能水平

♀尐吖头ヾ 提交于 2020-01-06 20:14:24
根据本课程的学习以及自身的知识和经验,您认为一个软件工程师的软件工程知识技能水平高低主要体现在哪些方面,请您简要总结一下:   1.具有优秀的学习能力,IT技术更新很快,软件工程师应具备的技能里很重要的一点就是学习能力。只有具备了学习能力,才能很快适应市场与业务的需要,有时候工作的需求不是你在学校就已经学过的,只能靠着之前积累的经验与快速学习熟悉新的知识,升华自己的能力,为以后成为架构师后者其他职位打下基础。   2.具有扎实的计算机专业知识,吃透高等数学、离散数学、算法等课程。(1)基础编程语言,编程语言是软件工程师必备的技能,不同方向的开发需要使用到不同的编程语言通常来说,软件工程师往往需要掌握多门编程语言。(2)算法。算法是软件工程师的重点知识技能,算法的掌握情况往往能够决定软件工程师的成长高度。(3)数据库。信息是以数据为中心的,因此与数据库的交互在所有软件中都是必不可少的,了解数据库操作和编程是软件工程师需要具备的基本素质之一。目前常用的数据库软件有Oracle数据库和SQL Server等。   3.具有对这个行业的热爱,才有能坚持与继续学习的动力。   4.具有良好的交流与沟通能力,现在的软件开发永远不是一个人的游戏,需要与团队成员协调沟通,分配好工作的任务与进度,才能够开发出高质量的软件。 一、选择题 1、软件工程的出现主要是由于( ) A.程序设计方法学的影响