先插播一则广告,我建立一个圈子,讨论软件质量和开发效率,欢迎大家加入。
http://devmgr.group.iteye.com/
本文想采用头脑风暴的方式,大家一起想影响软件质量的因素,便于我们采用QFD(质量机能展开)方法改进软件质量。
我先首先介绍一些软件的质量特性,就是“XX性”,参考McCall,boehm,iso9126模型,其它自己杜撰的。
.正确性(correctness)
.可靠性(reliability)
.完整性(integrity)
.可用性(usability)
.效率性(efficiecy)
.可维护性(maintainability)
.可扩展性(extensibility)
.可测试性(testablity)
.互操作性(interoperablility)
.灵活性(flexibility)
.可重用性(reuseablility)
.可移植性(portablility)
.明确性(clarity)
.可修改性(modifiablity)
.可恢复性(resilience)
.可理解性(understandablity)
.有效性(validity)
.功能性(functionality)
.普遍性(generality)
.经济性(economy)
.透明性(transparency)
.合理性(rationality)
.可验证性(verificablity)
.可追踪性(traceability)
.简单性(simplicity)
.一致性(consistency)
以下是我的砖头,有些是客观的,有些是主观的,道行尚浅,欢迎继续拍砖:
1)项目管理与计划(☆☆☆☆☆)
.进度计划,估算是否合理,满足合理性;
.是否遗漏,满足完整性;
.细分的任务是否明确,满足明确性和可追踪性;
.是否建立了沟通机制,满足透明性。
.里程碑是否明确,满足明确性和可验证性。
项目计划和管理的不好,会直接影响软件质量。
2)需求分析(☆☆☆☆☆)
.是否描述了所有需求,满足了完整性。
.是否清晰阐述需求,满足明确性。
.是否正确描述需求,满足正确性。
.是否简单明了,不用副词和形容词,满足准确性和可理解性。
.是否容易测试,满足可测试性。
这是影响软件质量最大的因素。
3)设计(☆☆☆☆)
.是否容易理解,满足可读性和可理解性。
.数据库和架构是满足可扩展性。
.数据库是否考虑到性能,满足可扩展性和效率性。
.数据库的范式是否合理,满足合理性。
.架构是否考虑到性能问题,满足可扩展性和效率性。
.架构是否考虑周到,满足完整性。
.架构模块是否划分合理,满足可重用性。
.模块设计是否考虑性能问题,满足效率性。
.界面设计是否容易操作和使用,满足易用性和可用性。
非常重要,会影响软件的性能,可用性。
4) 测试(☆☆☆☆)
.测试用例是够合理覆盖业务流程,满足完整性。
.测试策略是否制定,满足经济性。
确保软件能够履行职责,直接影响软件质量。
5) 编码实现与集成(☆☆☆☆☆)
.编码是否考虑了性能问题,满足对设计的可追踪性;
.编码是否进行测试,满足性能和功能的可验证性,功能的合理性。
.代码是否规范,满足可读性,可理解性和可维护性。
.代码是够满足可扩展性。
.代码意图是够明确,满足明确性。
.代码命名是否合理,满足一致性。
.是够进行单元测试和持续集成,满足效率性,正确性,有效性。
实现好不好,影响功能符合性,修改的可维护性。
6) 技术评审(☆☆☆☆)
.预审质量是够合格,满足充分性。
.评审方式(桌查,轮查,走查,审查)选择是够合理,满足合理性。
.评审人员是够选择合格,满足合理性。
.评审缺陷是否记录,满足可追踪性。
.评审检查表是否合理,满足可验证性。
7) 沟通(☆☆☆☆)
.是够满足及时性,有效性。
.是够满足充分性,确保理解一致。
.需求分析和客户沟通不好,需求就会不明确。
.开发和需求,设计人员沟通不好,就会错误的去实现功能,造成浪费。
8) 培训(☆☆☆)
通过培训,可以使人获取用于工作的技能,从而间接影响软件质量。
.需求分析培训。
.架构设计培训。
.数据库设计培训。
.模块设计培训。
.界面设计培训。
.单元测试培训。
9) 管理(☆☆☆☆)
.配置管理,满足可追踪性,可恢复性,可维护性。
.质量保证,满足可执行性。
.制度,制度合理,人积极性高,间接影响软件质量。
管理得好,效率高,间接影响软件质量。
10)人(☆☆☆☆☆)
.IQ,逻辑思维能力强,能够透彻理解需求,分析条理清楚,直接影响软件质量。
.EQ, 有毅力,自律,勇气,遇到问题不退缩,间接影响软件质量。
.TQ, 是否好好利用时间,提高个人工作效率,间接影响软件质量。
.领导,好的领导可能会影响一批人,能够使团队凝聚在一起,从而直接影响软件质量。
.技术水平高低,对技术的熟悉程度,直接影响软件质量。
11)公司(☆☆☆)
.是否有好的氛围,轻松,有利于发挥个人能力,高效率的工作,直接影响软件质量。
.是否奖罚分明,影响心情,直接影响软件质量。
.是否有重视质量的文化,不用说,直接影响软件质量。
.职责是否清楚,满足明确性,如果一个人什么都做,什么都做不精,职责不清,间接影响软件质量。
12)客户(☆☆☆☆)
.客户信息化程度高,IT素养高,容易沟通,间接影响软件质量。
.客户积极配合,进行阶段软件演示,提交问题,间接影响软件质量,这个非常重要。
13)方法学(☆☆☆)
.采用迭代开发,分阶段交付,增强了反馈,充分沟通。间接影响软件质量。
.方法学选择缺乏指导,会间接影响软件质量。
回帖原则:
如果是新的主题,请继续我的标号,主题尽可能简短,分条阐述和软件质量的关联。
如果是补充,指出原标号和标题,进行补充。
权当一个游戏罢了。
从软件质量想开去......
猜你喜欢
转载自gurudk.iteye.com/blog/231393
今日推荐
周排行