SharePoint 项目的死法(二)
说实话, 做SharePoint项目或者任何信息化项目并不是个容易的事情, 但成功的IT项目对于一个企业来说也许意味着很多, 从我的观察来看, 大部分的成功的信息化项目给企业所带来的回报都远远超过其所花的成本, 而很多回报都是隐形的, 所以, 困难不是项目失败的接口, 我们更应该做好.
另外SharePoint项目当然也是IT信息化项目, 所以, 大部分信息化项目失败的原因当然对SharePoint项目有同样的借鉴意义.
下面是我经验上和观察上的SharePoint项目失败原因:
- 没有定义成功
一个项目之所以成功, 是因为有了衡量成功的指标, 比如上了一个项目, 目标到底是降低成本, 降低多少, 还是提高收益, 提高多少? 不定义衡量成功的指标, 一句话, 你永远都不知道成功. 而定义项目成功指标的简单原则就是SMART,有兴趣的朋友可以自行GOOGLE, 在此不再赘述.
- 公司政治
此为制约大部分项目(不仅仅是IT项目)的重大失败原因, 不赘述.
- 不知道SharePoint是什么
有个玩笑是这样的, 有个SharePoint顾问向一个客户解释自己的职业, 当然, 他的解释很精彩, 从门户到文档管理到搜索到商业智能等等, 最后, 客户说, 嗯, 知道了, 你就是个做网站的.(嗯, 也许这是很多资深SharePoint顾问沦为美工的真正原因J )
说实话, 的确很难定义SharePoint是个什么样的产品,它包含很多个模块,一个相对比较正确的定义是”面向企业的协作平台, 包括门户,社区,内容管理和搜索等模块”, 这里面包含两层含义:
1) SharePoint是个平台, 这个意味着,利用SharePoint构建大部分协同应用是容易的, 但它的大部分功能并不是面向最终的业务用户的, 大部分不经过定制和调整的功能, 是无法直接面向用户的,一句话, 原生的SharePoint的目标客户是IT人员, 而不是最终用户;
2) SharePoint本身也包括很多的模块,包括搜索,文档管理和调查等等, 有一些模块也是开箱即用的, 在进行定制的时候要充分考虑这些模块的可用性,没必要重新发明轮子,而SharePoint也留有足够的空间来进行扩展.
在对SharePoint进行定制的时候, 要充分考虑利用其自身的特点, 而不是两眼一抹黑的拿起开发工具, 一通乱来, 殊不知, 这样的结果往往要么是重复发明轮子,要么就是还不如用ASP.net开发工具呢. 要知道, 实现一个功能也许并不难, 但和平台融入才能发挥这个平台的最大作用.
在SharePoint推广过程中, 由于涉及到对SharePoint的扩展, SharePoint很可能需要和其他的产品来进行对接, 这时候, 对相关的如Windows Ad, RMS, Exchange, Project Server等产品的了解也是必须的.(别忘了, MS是个商业公司, 人家要靠卖Licence活着的)
SharePoint 项目的死法(二)的更多相关文章
- SharePoint 项目的死法(三)
拙劣的供应商(团队) 坦率来说, 说这个原因需要一点勇气, 但在我从业的经历中, 充斥这大量的这样的案例, 没有什么实施经验的团队, 对产品几乎没什么了解的供应商, 三脚猫的开发人员,之前只会做做微软 ...
- SharePoint 项目的死法(一)
SharePoint是Microsoft的一个巨NB的产品, 从可查到的数据来看, 财富500强中已经有超过80%的企业已经使用了SharePoint的不同版本,从项目实施的经验来看, 个人感觉这个数 ...
- 社交APP经典死法18种,听野路子产品菜狗怎么说
点这里 社交APP经典死法18种,听野路子产品菜狗怎么说 时间 2015-04-06 11:24:53 虎嗅网相似文章 (4)原文 http://www.huxiu.com/article/112 ...
- 你做电商死法TOP10:你中了几枪?
有相关报道说淘宝目前只有3%的店铺能够盈利,其余97%的店铺基本上都成了炮灰.这是一个非常可怕的数字,都说不赚钱的电商是犯罪,那么,是什么原因导致了会有如此庞大的电商群体一如既往的走在这千军万马的不归 ...
- Visual Studio 2013 添加一般应用程序(.ashx)文件到SharePoint项目
默认,在用vs2013开发SharePoint项目时,vs没有提供一般应用程序(.ashx)的项目模板,本文解决此问题. 以管理员身份启动vs2013,创建一个"SharePoint 201 ...
- vue项目使用qrcodejs2生成二维码
最近写项目遇到一个需求,根据后台给的地址生成二维码,在网上找了下,qrcodejs2使用还是比较多,试了下也能实现需求,就整理下使用方法,方便以后使用 1. 安装包 cnpm i qrcodejs ...
- 如何在 NET 程序万种死法中有效的生成 Dump (上)
一:背景 相信很多人都知道通过 任务管理器 抓取dump,虽然简单粗暴,但无法满足程序的无数种死法,比如: 内存膨胀,程序爆炸 CPU爆高,程序累死 应用无响应,用户气死 意外退出,和人生一样 既然手 ...
- Laravel大型项目系列教程(二)之用户管理
Laravel大型项目系列教程(二) 一.前言 本节教程将大概实现用户的注册.修改个人信息.管理用户功能. 二.Let's go 1.创建用户注册视图 $ php artisan generate:v ...
- Redis缓存项目应用架构设计二
一.概述 由于架构设计一里面如果多平台公用相同Key的缓存更改配置后需要多平台上传最新的缓存配置文件来更新,比较麻烦,更新了架构设计二实现了缓存配置的集中管理,不过这样有有了过于中心化的问题,后续在看 ...
随机推荐
- angularJS1笔记-(18)-$http及用angular实现JSONP跨域访问过程
官网上的解释为: The $http service is a core AngularJS service that facilitates communication with the remot ...
- Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning
在经过前面Caffe框架的搭建以及caffe基本框架的了解之后,接下来就要回到正题:使用caffe来进行模型的训练. 但如果对caffe并不是特别熟悉的话,从头开始训练一个模型会花费很多时间和精力,需 ...
- ZOJ2760_How Many Shortest Path
给一个图,求从某个点到另一个点的最短路有多少条?所有的路都不共边. 首先从终点开始Spfa标记最短距离,然后建图. 建图的时候,如果满足两点之间的最短路只差为两点之间的边长,那么在网络流的模型中连接一 ...
- python中OS模块操作文件和目录
在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...
- hbase 跳转过滤器skipfilter
用于跳过整个行键,需要和其他过滤器一起使用,本例SkipFilter和ValueFilter过滤器组合使用过滤不符合条件的行, 如果不配合SkipFiter,ValueFilter只过滤单元值包含的列 ...
- hbase 分页过滤(新老API的差别)
在hbase2.0以前分页过滤必须以上一次的最后一行+空字节数组作为下一次的起始行, 因为scan扫描的时候是包含起始行的,为了既能准确定位起始行,但又不重复把上一次的最末一行加入下一页, 所以,权威 ...
- oracle 月份中日的值必须介于 1 和当月最后一日之间
解决方法: 1.用时间字段去关联字符串字段导致此错误.. 如果1.解决不了就看 2.把date'2017-01-01' 换成 to_date('2017-01-01','yyyy-mm-dd')
- 【转】iBatis.Net的SqlMap.config文件
转自:http://www.xuebuyuan.com/579671.html iBatis.Net基本的运行环境配置主要由两个文件组成,分别是SqlMap.config和Provider.con ...
- Android热修复原理(一)热修复框架对比和代码修复
在Android应用开发中,热修复技术被越来越多的开发者所使用,也出现了很多热修复框架,比如:AndFix.Tinker.Dexposed和Nuwa等等.如果只是会这些热修复框架的使用那意义并不大,我 ...
- 单点登录(十六)-----遇到问题-----cas4.2.x登录成功后报错No principal was found---cas中文乱码问题完美解决
情况 我们之前已经完成了cas4.2.x登录使用mongodb验证方式并且自定义了加密. 单点登录(十五)-----实战-----cas4.2.x登录mongodb验证方式实现自定义加密 但是悲剧的是 ...