软件架构设计:设计的中心思想
?以业务逻辑建模,而不是以数据库为中心建立系统模型
对信息系统的设计,应紧紧专注于将企业生产的系统抽象转化为信息系统的模型,能够准确、完整、清晰地了解业务逻辑和业务流程,并且对业务的变化作预先考虑,是项目成功的关键。开发人员容易出现的问题是以关系数据库设计或数据控件的设计代替系统建模,造成的问题是以数据为中心,其结果是系统与数据紧密耦合,难以实现业务逻辑的变化和扩展。
?软件是否满足了用户的期望
为了实现这个目标,完善准确的需求收集和需求分析,是项目成功设计的前提。否则无论这个软件再先进,从用户角度看,也是失败的软件。因此,在设计前期,对需求分析所必须的资源和时间投入,必须有足够的重视和充分的计划。
?必须要考虑非软件的因素
任何一个项目都是为了用户实现其业务目的,软件工程也不例外。同时,企业用户作为一个实体,其决策收到其行业特点、用户、市场、上级主管部门、决策人员的个性、企业的定位、企业的现状、长远发展规划、历史因素等综合情况的影响,因此,在架构设计上,应综合考虑这些因素。
设计原则
?在可能的情况下,按照“统一规划、统一架构、统一标准”的原则,
?以良好的设计模式来保证系统的先进性、合理性和应用扩展性。
?系统的模块之间应用和交互,尽可能采用松耦合,以实现系统的灵活性和实用性,延长系统的生命周期,保护用户的投资。
?采用以SOA作为体系架构的核心,以保证系统级别和部件级别重复使用和业务重组,便于用户长远的。
?系统的开放性要求能软件实现三个无关性:通讯组件的网络及协议无关性,数据来源无关性和用户对流程无关性。
?采用有效的需求分析手段,力图实现准确到位的需求分析,为良好的人机界面设计提供坚实的基础。高度重视用户界面的设计,作到符合不同用户的实际经验和使用习惯,减少对信息系统的畏惧感,提高用户使用信息系统的信心,真正使系统成为提高生产管理效率的有效工具。
?尽可能采用经过实际运行检验的成熟模块,从而节省开发资源和缩短开发周期,确保项目按时交付使用。
项目管理
阳光风云的项目管理,是在传统RUP 和XP 之间寻找一个平衡点的项目管理。我们称为“实用最好”的项目管理思想的贯彻。因为我们认识到,没有一种方法可以完全适用于不同的项目类型和客户。只有把握住管理过程中的一些核心不变因素,在简洁、有效、实用的前提下才是现实可行的。为此,我们在项目管理过程中坚持如下的一些基本原则:
?确定最适合的团队
包括选择称职的项目经理、合格的成员。特别是项目经理必须要了解成员,合理安排人员和工作。
?风险的预估和备用方案
充分估计项目的风险,是项目管理的核心。其风险包括人员风险、技术风险、需求膨胀、进度压力、质量风险等。必须要设定备用方案。
?分解原则
大的项目必须要进行分解。
?持续构建和尽早发布
在可能的情况保证每日构建的成功。在可能的情况尽早发布给产品经理或用户试用。
?测试驱动
测试的编写应该在代码的实施之前。
?全局规划,分步实施,步步见效
小步成功可以极大的减轻压力,避免质量风险
?合理的使用文档和工具
文档和管理工具的使用在必要时必不可少,但是过度使用带来的问题更多。
?简单有效
项目的技术和构架的、产品的选用都应该坚持这个原则。
?平衡原则
更多倾向RUP 还是XP,完全依据项目的特征和用户的情况而定,做好必要的平衡。