1 产品研发模式慨述 产品研发模式是企业战略的重点.产品研发路线决定了一系列的管理手段和团队建设问题.也是企业的整理策略和经营思路.产品研发模式贯穿着整个产品的生命周期,从市场调研.立项.需求分析.慨要设计.详细设计.开发.测试.发布.维护等传统软件工程思想到现在流行的IPD,以市场为导向的商业模式都无不在改变传统的研发模式.以服务体验为核心的新思想更是SaaS模式的本质.我们不是以产品研发而开发,我们一定是为市场价值开发而研发. 2 几种主流的产品开发模式 l 以项目管理的职能式开发 这是企业…
1 引言 真正的问题,不是电脑是否具备思考能力,而是人类是否具备这种能力                     ________B.F.Skinner<计算机科学> SaaS模式不同于传统软件不仅仅体现在运营的服务上,同时在软件开发的方式和技术上也有很大的不同. 如何开发SaaS软件,开发SaaS软件将用到哪些技术这都是我们要研究的主要内容. 2 实现SaaS软件的关键技术 l SOA技术 SOA与SaaS被被称作挛生姐妹确实并不为过,SOA与SaaS是现代软件服务领域的二架马车,它们奔蹄狂…
1 建立并积累自己的开发体系 遵行业界的规定又有自己的特色是我们所追求的目标.成功的软件公司都有丰富而可复用的代码组件,几行代码在单个系统里可能无足轻重,但一旦可在大量的系统中可重复使用那就是价值不菲了.做单个项目不一定获利,但用前面的项目经验与代码改造成新项目的成本就少多了.所以,软件业一定要建立起自己的知识库并不断地积累,那将是取之不尽的财富. 2 建立可重用性的知识库 l 充分利用开发模板 利用我们自己开发的模板组装我们一般的页面,极大的减少了页面设计代码和开发代码,提高开发效率. 此模板…
1 引言 那些没有经验的问题解决者们,几乎无一例外,都是去匆忙地寻找解决办法,而不是先给要解决的问题下定义.                                               ________杰拉尔德.温伯格,<您的灯亮着吗?——发现问题的真正所在> 橘生淮南则为橘,生于淮北则为枳.SaaS虽然起源于美国,但在中国经过这几年的发展,已经初步表现出了自己的“中国特色”. 用“恰同学少年,风华正茂”来形容当前我国的SaaS可能最合适不过了,因为中国的SaaS就像意气奋发的…
1 引言 赚钱之道很多,但是找不到赚钱的种子,便成不了事业家.作为职业软件人,我们都寻求使用一种有效而经济的过程来建造一个能够工作的,有用的产品.                                            ________Grady Booch 企业的根本目标是“合法地赚取尽可能多的利润,使企业整体利益最大化”.企业所有的特定目标和行动(例如研发.营销等)都是围绕根本目标开展的,不能和根本目标抵触.SaaS商业模式更关注软件作为服务给企业所创造的经济利润. 2 Saa…
前言这次来介绍下Spring Boot中对单元测试的整合使用,本篇会通过以下4点来介绍,基本满足日常需求 Service层单元测试 Controller层单元测试 新断言assertThat使用 单元测试的回滚 正文Spring Boot中引入单元测试很简单,依赖如下: 本篇实例Spring Boot版本为1.5.9.RELEASE,引入spring-boot-starter-test后,有如下几个库: • JUnit — The de-facto standard for unit testi…
1 引言 横看成岭侧成峰,远近高低各不同. 不识庐山真面目, 只缘身在此山中.                                                  ________苏轼,< 题西林壁> “社会化大开发”是人们梦寐以求的事情,信息化的软件将象您自家的水管一样,当您需要时您只要拧开水龙头,自来水就会源源不断地送到您家.将来的软件也会这样,只要您能上网,您随时都可通过访问软件服务公司提供商的某个地址,您所需要的业务就可以在网上完成,这里您完全不需要把软件和数据库下载到本…
1 配置模式 中国企业很多是人治,管理弹性非常大,公司的政策经常变化,管理流程.业务变化也非常大,发展也非常快;一个公司今年是10个人,明年是100个人,后年可能是1000人.管理机制.方法处于经常变化的状态,对软件的要求非常大.而且同一个行业的两个企业卖的产品虽然一样,但是管理方式.方法.流程很多都不一样. ASP从多重租赁开始,可以快速实施;它包括很多模块,但配置的参数比较少,只能做一些简单的配置,简单地导入.导出.而SaaS增加了很多大型企业管理的特点,比如说工作流.业务流程的制定,有很强…
1 配置模式 中国企业很多是人治,管理弹性非常大,公司的政策经常变化,管理流程.业务变化也非常大,发展也非常快;一个公司今年是10个人,明年是100个人,后年可能是1000人.管理机制.方法处于经常变化的状态,对软件的要求非常大.而且同一个行业的两个企业卖的产品虽然一样,但是管理方式.方法.流程很多都不一样. ASP从多重租赁开始,可以快速实施;它包括很多模块,但配置的参数比较少,只能做一些简单的配置,简单地导入.导出.而SaaS增加了很多大型企业管理的特点,比如说工作流.业务流程的制定,有很强…
1 引言 软件的核心是它为用户解决领域相关问题的能力.               ________Eric Evans,<领域驱动设计> 传统的软件生命周期中,软件的维护占整个过程的70%以上.一个成功的软件公司要把一个软件产品推广卖好,不仅需要做产品研发,而且要花大量的精力来承担用户培训.软件实施安装和售后服务的责任.由于一个软件企业刚开始创立之时规模一般都较小,这样会导致软件企业难以关注到产品本身之外的各个环节.长此以往,软件企业疲于协调研发和服务的繁琐事情,有的最终被市场所淘汰. Sa…
1. 引言 未来将越来越不可预测,这是新经济最具挑战性的方面之一.商务和技术上的瞬息万变会产生变化,这既可以看作要防范的威胁,也可以看作应该欢迎的机遇.                                                                                                                                  ________Martin Fowler & Jim Highsmith,<敏捷宣…
1 我国SaaS市场现状 我国SaaS从ASP年代发展到今天,也有不少时间了.我国是个十几亿人的大国,国情复杂,各地贫富不均,发展不平衡.信息系统建设也是各树一帜,各地为王.特别是占有大量用户的中小企业,差距也很大.下面我们通过一份关于SaaS市场调研报告来阐述我国SaaS市场现状. 1.1 我国SaaS市场发展状况 计世资讯(CCW Research)研究认为,2006年是中国软件运营服务市场从导入期进入发展期的分界点.未来十年将是中国软件运营服务市场的黄金时期,其市场规模将保持高速增长态势.…
1 SaaS的特性 最早的SaaS服务之一当属在线电子邮箱,极大地降低了个人与企业使用电子邮件的门槛,进而改变了人与人.企业与企业之间的沟通方式.发展至今,SaaS服务的种类与产品已经非常丰富,面向个人用户的服务包括:帐务管理.文件管理.照片管理.在线文档编辑.表格制作.资源整合.日程表管理.联系人管理等等;面向企业用户的服务包括:在线存储管理.网上会议.项目管理.CRM(客户关系管理).ERP(企业资源管理).HRM(人力资源管理).STS(销售管理).EOA(协调办公系统).财务管理.在线广…
开始挑战第三十二关(Bypass addslashes) 0x1查看源代码 (1)代码关键点 很明显,代码中利用正则匹配将 [ /,'," ]这些三个符号都过滤掉了 function check_addslashes($string) { $string = preg_replace('/'. preg_quote('\\') .'/', "\\\\\\", $string); //escape any backslash $string = preg_replace('/\…
持续关注MongoDB博客(https://www.mongodb.com/blog)的同学一定会留意到,技术大牛Daniel Coupal 和 Ken W. Alger ,从 今年 2月17 号开始,在博客上持续发表了 如何在MongoDB中设计数据库模式的方法.截止到今日(4月20号),12种模式设计的方法已全部与读者见面.本人认为,此系列文章,总结的非常全面,很多地方有首创性,涵盖的场景也很多,并且有理论总结,也有案例分析.文中分享的很多知识使人"如听仙乐耳暂明",开卷受益,常读…
1 SaaS模式下的质量管理 质量管理是从事SaaS事业的企业管理的重要课题,质量管理的职能是质量方针.质量目标和质量指标的制定和贯彻实施,中心目标是促进产品质量.提高客户满意度. 软件质量要素包含以下两个方面,从技术角度讲,对软件整体质量影响最大的那些质量属性才是质量要素;从商业角度讲,客户最关心的.能成为卖点的质量属性才是质量要素. 1.1 质量管理的目标 l 商业模式决定质量目标 提高软件产品质量的最终目的是为了赢利,而不是创造完美无缺的产品.因此对于普通商业软件而言,并不是“质量越高越好…
1 引言 如果我们想要更多的玫瑰花,就必须种植更多的玫瑰树.                            ________姚群<成功激励格言精选> SaaS模式是个新兴的话题,有许多慨念还定义不清楚,其研究的内容又很复杂.我们从SaaS模式的软件平台成熟度上入手,分析SaaS模式中有代表并关键的模式.重点放在质量管理上.从质量管理上分析如何提高SaaS应用的质量. 2 SaaS模式研究的主要内容 SaaS模式所要研究与实现的内容非常多,我们分情况分重点可归纳如下: l SaaS的运营…
1 系统体系架构设计 软件开发中系统体系架构决定了一个系统稳定性.健壮性.可扩展性.兼容性和可用性,它是系统的灵魂.体系架构是架构师所关注的核心.良好的体系架构是系统成功的开端,否则,再好的代码与设计也无济于事. 2 当前.net主要的开发框架简介 l Castle Castle是针对.NET平台的一个开源项目,从数据访问框架ORM到IOC容器,再到WEB层的MVC框架.AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提供了很好的服务.其中关键的技术是ActiveRe…
http://blog.csdn.net/xiaominghimi/article/details/51586492 一用到跨平台的引擎必然要有引擎与各平台原生进行交互通信的需要.那么Himi先讲解React Native与iOS之间的通信交互. 本篇主要分为两部分讲解:(关于其中讲解的OC语法等不介绍,不懂的请自行学习) 1. React Native 访问iOS 2. iOS访问React Native     一:React Native 访问iOS 1. 我们想要JS调用OC函数,就要实…
简介 在上一篇博客:数据挖掘入门系列教程(十一点五)之CNN网络介绍中,介绍了CNN的工作原理和工作流程,在这一篇博客,将具体的使用代码来说明如何使用keras构建一个CNN网络来对CIFAR-10数据集进行训练. 如果对keras不是很熟悉的话,可以去看一看官方文档.或者看一看我前面的博客:数据挖掘入门系列教程(十一)之keras入门使用以及构建DNN网络识别MNIST,在数据挖掘入门系列教程(十一)这篇博客中使用了keras构建一个DNN网络,并对keras的做了一个入门使用介绍. CIFA…
一.结构体的介绍 /* 语法: struct 结构体名{ 成员列表; }; 切记切记有分号! 说明:成员列表就是指你要保存哪些类型的数据. 注意:上面的语法只是定义一个新的类型,而这个类型叫做结构体类型. 因为类型不能保存数据,所以我们要有结构体变量. 语法: struct 结构体名 变量名; 变量赋值的语法: 变量名.成员名 = 数据; 例: zs.age = 16; 输出结构体: 注意:没有任何格式化控制符能够一次性输出整个结构体 我们必须一个成员一个成员的输出 结构体:可以用来保存多个不同…
一.概述 在为前端提供http接口时,通常返回的数据需要统一的json格式,如包含错误码和错误信息等字段. 该功能的实现有四种可能的方式: AOP 利用环绕通知,对包含@RequestMapping注解的方法统一处理 优点:配置简单.可捕获功能方法内部的异常 缺点:aop不能修改返回结果的类型,因此功能方法的返回值须统一为Object类型 filter 在过滤器层统一处理 优点:配置简单 缺点:无法识别异常结果,须对返回结果进行额外的反序列化 拦截器  获取返回值不方便,且无法获取到String…
一.概述 1.jdk的线程池和任务调用器分别由ExecutorService.ScheduledExecutorService定义,继承关系如下: ThreadPoolExecutor:ExecutorService的实现类,其构造函数提供了灵活的参数配置,可构造多种类型的线程池,详细可参考JAVA进阶----ThreadPoolExecutor机制 ScheduledThreadPoolExecutor:ScheduledExecutorService的实现类,用于任务调度 2.spring…
上一篇博客我们介绍了rpm包管理之rpm命令管理,我们发现在使用rpm命令手动安装rpm包的时候,会发现安装遇到到的依赖让你痛不欲生,安装一个rpm时会要先先安装某个依赖的rpm,而安装这个依赖的rpm包是可能又必须先安装它所依赖的.在实际操作中,我们肯定是不会使用rpm命令手动安装软件包的,更简单的方法就是这篇博客我们将介绍RPM包管理——yum在线管理. 1.yum在线管理 yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUS…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 一.注册\登录 打开Genymotion官网,https://www.genymotion.com/ ,首先点击右上角的Sign in进行登录操作.如何登录就不细讲了,下面讲一下如何注册(备注:注册按钮在登录界面中). 注册 如果没有账号,则需要先注册.在登录界面,点击Create an account按钮打开注册界面. 注册界面如下:(使用谷歌浏览器翻译后的界面) 按照上面的提示输入相关内容,需要注意的是输入邮箱和密码后,系统会发送…
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 从eclipse迁移到AndroidStudio,要用原Eclipse的签名文件,这样才能保证转到AndroidStudio后更新的版本能够被已上线的的apk更新. 方案一 1.正常打包操作 2.选择eclipse用的签名文件,输入密码:别名的密码默认和签名文件密码相同 方案二[报错:未找到alias别名] 1.选中项目——>File —>Project Structure 2.选中app —>Signing 3.点击+…
HashMap 是 Map 基于哈希散列算法的实现,其在 JDK1.7 中采用了数组+链表的数据结构.在 JDK1.8 中为了提高查询效率,采用了数组+链表+红黑树的数据结构.本文所有讲解均基于 JDK1.8 进行讲解. public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable 从上面 HashMap 的定义可以看出,其继承了 Abstr…
在 Spring Boot 中做权限管理,一般来说,主流的方案是 Spring Security ,但是,仅仅从技术角度来说,也可以使用 Shiro. 今天松哥就来和大家聊聊 Spring Boot 整合 Shiro 的话题! 一般来说,Spring Security 和 Shiro 的比较如下: Spring Security 是一个重量级的安全管理框架:Shiro 则是一个轻量级的安全管理框架 Spring Security 概念复杂,配置繁琐:Shiro 概念简单.配置简单 Spring…
当学习了Java NIO和IO的API后,一个问题马上涌入脑海: 我应该何时使用IO,何时使用NIO呢?在本文中,我会尽量清晰地解析Java NIO和IO的差异.它们的使用场景,以及它们如何影响您的代码设计. Java NIO和IO的主要区别 下表总结了Java NIO和IO之间的主要差别,我会更详细地描述表中每部分的差异. IO                NIO 面向流            面向缓冲 阻塞IO           非阻塞IO 无 选择器 面向流与面向缓冲 Java NIO…
当我们新建一个GTP谱的时候,我们肯定是要用到节拍,是的,一个乐谱节拍设置的好不好,将直接影响你的乐谱效果好不好,设置节拍的步骤我们之前也有讨论过,今天主要跟大家讲的便是不完全小节. 不完全小节顾名思义就是从弱拍或次强拍起的小节叫做弱起小节也称之为称为不完全小节,弱起小节的歌曲的最后结束小节一般也是不完全的,首尾相加其拍数正好相当于一个完全小节. 下面给大家举个例子相信大家看的会更加明白一点了.首先我们先来看下这这个小节(如下图所示) 我们从头开始看,首先我们会看到第一个小节是1/4拍子,第二个…