配置程序集的版本策略
在实际工作中版本策略被使用得比较多本节将借助分析这个面试题来简要介绍集版本策略和配置思路方法 所涉及到知识点 • 版本策略基本原理 • 集版本策略配置 分析问题 当个集通过名字、版本、文化和公钥进行加载时CLR允许员指定该集哪些版本可以代替目前版本进行加载这些都是通过版本策略来实现所谓版本策略就是个集版本重定向把加载当前这个版本定向到加载可替... [阅读全文]
代码审查:怎样做好代码审查
我们把代码审查叫做CR即Code Review它是项目进展到编码阶段非常重要品质保证活动但是很多时候我们CR工作都流于形式在CR过程中不能发现本质问题主要有以下 4点原因: CR时目性不强缺乏针对性CR根本目是保证品质但不能把它做为次CR活动直接目标这样目标太泛泛让我们在CR活动过程中抓不住重点 2CR活动时参和角色不合理参和CR活动人大多是技术合格但业务不合... [阅读全文]
协同软件:基于工作流的协同软件Software
工作流管理系统是“种在工作流形式化表示驱动下通过软件Software执行而完成工作流定义、管理及执行系统”其主要目标是对业务过程中各活动发生先后次序及同活动相关相应人力或信息资源进行管理而实现业务过程自动化 在企业日常工作中绝大多数属于流程类工作比如业务分级审批工作、各类申请表单、公文签审、业务处理等通过现代技术手段将企业内诸多繁琐复杂业... [阅读全文]
dj误区:有关设计模式的几点误区续
如果我们预测到了这种变化那么就可以设计个抽象来隔离它我们在前面代码中所选定抽象对于这种变化来说反倒成为种障碍可能你会觉得奇怪:还有什么比定义个Shape类并从它派生出Square类和Circle类更贴切结构呢?为何这个贴切模型不是最优呢?很明显这个模型对于个形状顺序比形状类型具有更重要意义系统来说就不再是贴切了(这段承接了前面章节事例只是为了介绍说明后面道理用)... [阅读全文]
不要将默契式管理和人性化管理划等号
学而优则仕在中国还是个挺普遍现象给批判得也很多!但是原话是“仕而优则学学而优则仕”见于论语·子张其真正含义并不是我们片面理解“学习优秀就去做官”同样“仕而优则学”难道是告诉管理者:“做好了官有余力则学习!”如果你认定等我有余力才学习吗?呵呵那你永远也没有... [阅读全文]
学习实践科学发展观:持续集成: 实战指南
0. 持续集成工具作用 降低风险? No 提高质量? No 快速反馈? Yes ! 工具本身并不能降低项目风险, 提高代码质量. 工具唯能做是给你快速反馈. 你收到反馈的后行为, 才是降低风险, 提高质量关键 (好几天不check in, 工具再牛也白搭; 失败build不修复, 工具也无能为力) 所以持续集成是个以人为核心过程, 工具只是在这个过程中我们要用到... [阅读全文]
流程图:持续集成: 流程指南
像" 版本控制", "配置管理"样, "每日构建", "持续集成(Continuous Integration, 简称CI)"等实战也成为现代软件Software开发必备配置. 个好CI环境, 能够让你实时监控软件Software开发状态, 随时获得可工作软件Software版本, 能够提供给开发团队(Team),管理团队(Team),甚至市场人员快速而有效反馈... [阅读全文]
敏捷开发方法:敏捷过程思路方法
敏捷思路方法横空出世 传统计划驱动开发思路方法不仅没有获得良好效果并且由于强调过分过程控制所以在开发过程中要产生大量文档以跟踪检查设计各阶段进度设计状态因此给员管理者带来很多额外工作量这也是计划驱动思路方法直为人诟病地方因此被称为重量级思路方法这种思路方法个后果就是大量开发时间被用在开发文档撰写和维护上而真正花在代码上时间就相对少了;另外个后果就是由于主要依赖过... [阅读全文]
驱动开发:计划驱动软件Software开发过程时代
神话破灭 但是随着软件Software规模扩大和软件Software复杂度提高无序开发过程开始显示出它弱点首先开发质量没有保证软件Software随着软件Software复杂度增加而增加几次恶性软件Software导致巨大损失导致软件Software危机出现软件Software危机让人们开始怀疑到底能不能开发出可靠软件Software其次开发进度经常拖延由于开发... [阅读全文]
大型网站架构:稳定高效大型系统架构---集群中间件开发
个偶然机会使我接处到Corba中间件当时公司还特意让我北京borland公司学习段时间我对其visibroke中间件佩服 5体投地从理论上讲:如果你架设中间层可以实现多台并发运行又能实现负荷平衡还能实现故障热切换那么你就有了99.99999%稳定中间件服务器对此我在学习时间倾赋了所有时间和精力就连女朋友吵着去看长城我都不想去 那现在来说稳定中间件应该是什么样子呢... [阅读全文]
电脑入门:需求模式入门
除了无关紧要系统所有系统需求本质上彼此相似或者它们出现在大部分系统中——而且可能数量众多例如:可能有很多查询功能每个功能都有自己特有需求当定义个业务系统时相当大比例需求归属相对少量类型以致方式定义同样类型所有需求是值得下功夫因此我们引入需求模式概念描述使用需求模式每个需求应该怎样定义 需求模式:定义种特定类型需求思路方法 需求模式应用于单... [阅读全文]
额外动作条:额外需求
很多情况下需求只说了必须要说是不够:可能(或者在些情况下总是)需要定义附加需求讲清楚含义需求模式中“额外需求”节解释了需要考虑哪些额外需求以及在什么情况下需要考虑它指导除了定义主要需求的外还需要做什么应该考虑其他什么事情?还应该说些什么?如果没有需要进步定义事情需求模式“额外需求”节可以是空例如个必须遵循个特定标准... [阅读全文]
需求模式的开发考虑和测试考虑
“开发考虑”节目是帮助设计和实现软件Software开发人员满足这种类型需求它提供了提示和建议指出不要忘记些事情“开发考虑”节应该以开发人员语言编写 " width="229" border="0" alt="" /本节可以看成是个非常资深开发人员给予个年轻开发人员种指导如果个初出茅庐工程师向个头发花白纵观全局工程... [阅读全文]
架构模式:软件Software需求模式的领域和基础架构
些类型需求依赖于基础架构就像!未找到引用源!未找到引用源中“!未找到引用源“中讨论需求模式使我们有机会确定种类型需求所依赖基础架构而不必为某个需求考虑而且我们可以进步讨论每个基础架构——也就是当为系统需要基础架构定义需求时必须记住但是它不可能非常详细也不可能针对实际需求每个组织每个系统区别要求会使需求差别极大为了清楚起见它们被称作基础架构概述不能指望... [阅读全文]
软件Software需求模式组
当几个需求模式有共同特性可以建立个需求模式组用于描述它们共同方面而不必在每个模式中重复个需求模式组不是个需求模式:不能建立这种类型需求但是个组可以包含下列出现在需求模式定义中任何部分:“额外需求”“开发考虑”和“测试考虑”包括哪部分而省略其他部分原则是是否有些事情值得说任何时候如果某部分出现... [阅读全文]
软件Software需求模式的间的关系
当使用个需求模式时应该描述建立这种类型需求需要知道所有事但是个模式可能会些原因引用其他模式需求模式的间关系存在两种基本类型:1. 引用 个需求模式可以在定义中提到另个模式个模式引用另外个模式有几个原因:a. 个需求定义些东西包含(有)另外个需求定义些东西b. 个模式需求例子使用了第 2个模式需求例子定义信息例如个需... [阅读全文]
软件Software需求模式分类
需求可以按多种方式分类(例如按功能和非功能分类)使用需求模式有个优点如果对模式分类自动就对使用这些模式需求分类分类告诉我们些使用模式需求本性使用这些分类其他方式是按照分类找到需求以及统计需求人们喜欢统计(至少有些人通常他们是高级行政人员我们应该让他们高兴)对系统需求统计可以在很多方面有用可以帮助大概了解系统复杂性和规模为了这个目标需要对每个需求标记所需统计数值(... [阅读全文]
同步转移模式:转移需求模式
通常使用个需求模式时结果是得到想要需求然而模式可能比这个要隐蔽些:它可能引导你采取不是很明显但是更好方式得到需求它解释明显方式可能引起困难(通常是针对开发人员)建议如何避免这些问题使用区别方式陈述需求并且达到同样目标转移需求模式或者解释另外种方式或者转向个完全区别需求模式——或者兼而有的需求模式比只是说“如果你想要&middo... [阅读全文]
需求模式和思路方法的多样性
没有唯正确或者最好制定或表述需求思路方法对于给定系统没有唯套完美需求区别需求思路方法以区别方式分解问题得到需求粒度以及表达方式也区别本节中“需求思路方法”词只是表示概括定义需求种方式或者是定义某些类型需求每种思路方法可能有自己套需求模式它们可能是这种思路方法承认标准模式独特表现方式或者它们是这种思路方法特定模式我们可以提供各种各样需求思路... [阅读全文]
软件测试用例:软件Software需求模式用例
完全可能对于些需求模式编写用例这些需求模式产生需求要求提供明确功能(或者不止个功能)例如对于查询需求模式可以编写个用例展示典型查询功能步骤需求模式用例和需求模式是归纳关系这是种正式UML概念它是“是种”关系可以应用于任何合适环境中个需求模式对使用它得到需求可能要求不止个功能例如配置需求模式要求对每个可配置数据项有建立读取(查询)修改删除功... [阅读全文]
企业和商业软件Software项目需求管理的区别
企业业务软件Software工程项目和商业软件Software产品项目上项目无论是需求重点实现方式项目管理(project management)等方面都有极大区别现在软件Software工程有关研究并没有关注此中区别实际上其中绝大部分还集中在较简单产品项目上对于需求变动要大得多企业软件Software项目来说对需求进行分级管理是非常必要也是生死悠关 企业... [阅读全文]
信息技术综合实践课:实战信息架构
什么是信息架构?是种艺术科学或手艺?谁来建立信息架构?必须具备哪些条件?这些问题是我们这些信息架构师要解决问题我们写文章也出书我们在邮件列表上争论在研讨会上热情辩论头也秃了夜也熬了这真是严肃主题 然而某种很有影响力东西正在发酵那不是我们智力运作下理论及对自身存在痛苦认知所能控制我们正被信息架构包围起来点都不夸张 你曾在晚上经过纽约市时代广场吗?那是相当奇特景象你... [阅读全文]
实验室设计准则:而向对象设计的准则
所谓优秀设计就是权衡了各种原因从而使得系统在其整个生命周期中总开销最小设计对大多数软件Software系统而言60%以上软件Software费用都用于软件Software维护因此优秀软件Software设计个主要特点就是容易维护 指导软件Software设计几条基本原理这些原理在进行面向对象设计时仍然成立但是增加了些和面向对象思路方法密切相关新特点... [阅读全文]
两种信号系统学说:组织系统的两种方案
把子系统组织成完整系统时有水平层次组织和垂直块组织两种方案可供选择 1.层次组织 这种组织方案把软件Software系统组织成个层次系统每层是个子系统上层在下层基础上建立下层为实现上层功能而提供必要服务每层内所包含对象彼此间相互独立.而处于区别层次上对象彼此间往往有关联实际上在上、下层的间存在客户供应商关系低层子系统提供服务相当于供应商上层子... [阅读全文]
抽象画:抽象工厂(AbstractFactory)
直觉得设计模式是非常抽象(事实上MS也是)所以就想把它说白话点儿让人更容易理解 有关抽象工厂(Abstract Factory)模式网上个非常流行例子麦当劳和肯德基故事具体如何说我已经忘了但是我想自己描述遍希望能让自己加深对设计模式思想理解也希望对大家有所帮助 既然叫抽象工厂那定有工厂(废话)那么我们可以... [阅读全文]
线性时不变系统:系统设计的变和不变
首先我们讨论范围是针对基于数据库应用设计还有很多应用不会基于数据库来实现那就暂时不在我们讨论范围内 在的前对分层设计讨论中金色海洋同学觉得分层没有解决数据库表字段改动造成各个层次代码变动问题那么 我就以系统变和不变做题来回答这个疑问 首先对系统代码改动是不可回避问题能够适用所有情况万能组件就我现在看来还没有发现此类非地球物种那么 在系统设计中哪些应该变那些是不应... [阅读全文]