如何理解程序设计和架构设计中“简单”这个词?

简单是如何服务于敏捷开发,怎么样的简单有助于真正的敏捷?很多人将简单理解成,直观,易懂,但这并非是简单。

所说的“简单”,可以理解为“恰如其分”,即不会置架构设计于不顾,亦不会以风险驱动过度架构,选择适当的技术、设计降低项目中的风险。

先理解一下,什么是敏捷里的简单?

其设计源自kent beck的极限编程。 kent beck是解释过这个实践的含义的:

即:通得过测试、揭示意图、没有重复、没有不必要的元素。主要表现在管理、沟通、需求分析、系统设计四个过程中。

1.团队管理

平行组织的、自组织的团队是敏捷开发团队的特点,团队成员之间上下级关系淡化、没有管理和被管理关系,成员之间的关系变得更加简单。团队目标一致、团结协作、各司其职是敏捷开发所追求的目标。

2.简单沟通

其在沟通中不要求繁文缛节的文档,表现的是面对面,即直接沟通,因此。

3.需求管理

在敏捷开发过程中决定需求是否采纳和优先级排序的标准是商业价值,进而保证敏捷开发交付呈现的是商业价值,而非单纯的功能。其追求在复杂的业务中提取简单的场景,注重实效。不进行需求变更设置复杂的控制,坚持“拥抱变化”。

4系统设计

敏捷开发的系统设计遵循KISS(Keep it simple and stupid)原则,,即尽量保持设计简单。敏捷开发的系统设计遵循Just Enough原则,也就是够用就好,不做功能预测,不追求超前设计和过度设计。设计的风格上遵循最小化设计(little design up front)的原则,在能把握整体风险的情况下,利用演进的方式对架构进行调整,结合重构、TDD、持续集成等方式来降低架构演进过程中对局部代码修改造成的风险。


因酷教育软件以下简称(inxedu)开发出国内首家Java版开源网校源代码建站系统,并免费提供给非商业用途用户使用,是用户体验最好、运营功能最全、性价比最高的在线教育软件,不仅解决了开发技术难和成本过高的难题,而且在此功能基础上还可以安装其他提供商开发的应用,这样小型机构就可以自主掌握一款独一无二的网校系统。 因酷开源教育软件提供课程管理、直播管理、班级管理、讲师管理、资讯管理、社区互动,网校管理、考试管理,因酷云视频等。 管理者可以针对不同的用户设置不同的权限,限制特定用户的访问.不同的角色拥有不同的管理权限,老师可以使用因酷云视频提供的点播和直播服务,也可以使用第三方的云视频服务,并且可以添加修改课程和课程专业, 对课程进行推荐分类。课程发布后,可以通过讲师和专业快捷方便的搜索到课程,每个课程都有介绍页面,学生可以查看课程的基本信息介绍和预览课时,再决定是否购买课程。购买课程后,学生可以重复观看。同时学生可以收藏自己喜欢的课程,并分享到其他平台。 演示站:http://demo1.inxedu.com 账号:demo@inxedu.com 密码:111111 网站功能模块: 课程功能 咨询功能 问答功能 首页banner推荐 播放模块: 个人心模块 个人资料模块 修改头像模块 收藏课程模块 问题总结: 项目导入如果get set报错请添加lombok插件就可以正常使用了 技术框架: 核心框架:Spring Framework 视图框架:Spring MVC 持久层框架:MyBatis 3 JS框架:jQuery 富文本:kindeditor 开发环境: 建议开发者使用以下环境,这样避免版本带来的问题 IDE:eclipse,idea DB:Mysql5.5 JDK:JAVA 7 tomcat:tomcat 7.0.68已上
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值