第一章 绪论
1.1 研究背景和意义
1.1.1 研究背景
计算机软件最开始是在计算机专业人员的专业用语,可随着 IT 技术的不断发展,渐渐地进入了大多数人们的视野,和计算机、网络一同深入人们的生活。但是,由于软件本身的复杂程度和专业性,它所带来的问题也不可避免地困扰着人们的生活。而软件的质量更是众人关注的焦点,之所以软件项目会很容易出现失误或失败,是因为目前缺少一套完善的评估标准。实践证明,管理问题成为了软件工程项目的成功或失败的主要因素,而不是技术的问题,其中质量管理的作用是至关重要的。
很多软件企业都为了在这激烈的竞争环境中生存,避免被竞争淘汰,把产品质量作为企业的一个重要目标,因为用户为了保证自己的业务能顺利完成,当然希望选用优质的软件。质量不佳的软件产品不仅会使开发方的维护费用和用户的使用成本大大增加,还可能产生其他的风险,对公司信誉造成影响。现在越来越多的企业认识到质量管理在对软件生产的各个环节积极影响是必然的是不可或缺的,它可以帮助企业降低在软件产品生产过程中各个环节的风险。因此软件质量管理将逐渐成为衡量各企业软件质量的重要标准。
1.1.2 研究目的和意义
对软件质量的管理,特别是中国正式加入 WTO 之后,中国软件市场已经是世界市场的一部分,中国软件企业已经直接面对国际 IT 企业的残酷竞争,中国企业除了要在国内占领市场之外,还应该放眼世界,走出国门,这样才能更好的生存和发展。如何进入国际市场,成为了所有一切的前提。中国软件要赢得国际市场的信任和青睐,首先必须达到国际标准,通过国际标准的认证。现在想在软件产业化方面有所作为的企业,已经充分意识到加强国际标准认证的重要性和紧迫性。
通过质量管理 AP 公司将按照国际标准,建立一套适合于自己发展的,更为科学的规范。使公司在这种高竞争的大环境下,产生出可靠的、高质量的产品。
1.2 国内现状
在软件项目实施中,受进度、成本两个因素的影响,它的质量管理与产品开发有着很大的差别。国内的企业要想赢得国际市场的信任,从项目一开始就要重视产品质量,好的质量加上好的服务才让企业拥有更强的市场竞争能力。为了更好的实现质量控制与管理,我国软件行业在 20 世纪末引入 CMM,具备一定发展规模的软件企业开始重视并着手质量管理和过程能力的改进。
在教学软件方面,随着教育信息化的推动和发展,教学软件在教育教学与管理中发挥着重要作用,它的广泛应用必将有效地促进现代化和教育信息化建设。教学软件质量的优劣性直接影响到教育信息化的推动和发展。据调查目前开发的教学软件种类多达 3000 多种,包括资源库、网络教学系统、电子图书馆、学科学习软件等各种系列的软件,涉及的教育面包含了技能教育、基础教育、素质教育、高等教育等领域。教学软件的发展也带来一些质量不平衡的缺点。在教学软件发展初级阶段有的软件公司没有正确理解教学软件的意义,往往是认为是将书本上的东西照搬进了计算机,采用固定的内容、题库式教学而已。大多数的教学软件缺乏科学性、权威性、自主性和交互性。可以概括为“质量不高,可用性差,跟不上教育改革的步伐;研发环节薄弱;缺乏创新”。没有教学方法、技术和理论创新的教学软件是不能够让学校和学生认可的。为了能够改变这种现象,笔者认为要从软件质量管理方面入手进行改进,保证教学软件质量应建立良好的企业文化;建立软件质量的管理机制;加强对软件的测试;实现教育理论与软件技术的融合;加强教学软件开发过程的管理和改进;引入 CMM/CMMI 管理机制等重要措施来提高和保证教学软件质量。
1.3 论文研究目标和内容
AP 公司为了解决这种传统管控方法自身带来的问题、彻底避免其所造成的损失,我们将对公司的质量的重视与管控逐渐推升到体系的、制度的、文化的层面上来。由此出发提出了“推进质量工程、建设质量文化”的目标,并引入了 CMM 能力成熟度模型和 ISO9000 质量管理体系。制定《质量工程建设纲要》,理顺各业务流程,明确关键控制点,消除质量隐患,减少资源浪费,提升服务质量和效率,来帮助的要求我们更好的实现目标,形成一套有效的内部管理流程和规范。
第二章 软件质量管理相关知识
2.1 软件质量
2.1.1 软件质量的定义
什么是质量。质量就是指软件产品可以满足用户的功能、性能需求的能力。ISO9000 中给出了一个广义的质量概念:质量是一组固有特性满足要求的程度。而IEEE 则给出了软件质量的定义:质量是系统、部件或过程满足客户和用户明确需要或期望的不同程度。它与 ISO2000 的定义非常相近。
第三章 系统分析..........9
3.1 项目介绍 .............9
3.2 需求获取与分析 ..................9
第四章 系统总体设计..............21
4.1 系统总体设计 ...........21
4.2 系统架构设计 ...................23
4.3 具体模块设计 ....................24
4.4 设计阶段的质量保证措施 ...............34
第五章 具体功能模块的实现..............35
5.1 用户登录模块的实现 .............35
5.2 管理员功能模块的实现 ..............38
5.3 教师功能模块的实现 ...............41
5.4 学生功能模块的实现 ..............44
5.5 数据库模块的实现 ................ 48
5.6 客户端接口模块的实现 ................51
第七章 结论
在我们实际的软件项目中己经开始应用 CMM 的软件过程管理,并形成相应的方案文档,我们会在整个项目中坚决执行这个方案。现在这个项目已经成功上线运行,这说明本文所提的这个解决方案在理论和实际上都是可行的。
为了能让项目成功地按预期进行交付,得到了双赢的局面,在项目跟踪与监控过程,我们合作方以及客户进行沟通,全面的记录了客户的所需所想,从而制订了一个有效的合理的计划。在实施计划中,很好的对项目计划进行了跟踪和监控,并在最小单位的计划发生偏离时及时采取措施,尽量避免计划偏离的扩大化,保证整体项目计划的一致性。
软件质量保证过程方面,通过组织对各个阶段产物的评审和同行评审,保证了各个阶段产物的质量。
项目计划阶段,由我方管理人员和合作方管理人员进行有效的评审,得到一个有效的计划;
需求阶段,我们对用户的需求进行了大量的收集,之后对这些收集来的需求举行了专门的例会,相关人员全部到场对需求进行评审工作,确保了需求的一致性。在开发上我们也同时对设计和代码开发阶段开展评审工作,保证了它们的有效性、正确性。出现的问题绝大部分在测试环节上都得到了解决。因为此次软件上线后问题很少,相比于以前的产品需要修改的问题部分也少了很多,没有发现性能上的缺陷,也没有出现能够导致软件需要下线修改的重大问题,可以说全面软件质量的管理保证了项目的成功。
本文在 CMM 能力成熟度模型的基础上,结合教学软件项目独有的特点,针对其在开发过程中所存在的问题,在保证目标完整性的前提下对 CMM 中的过程加以修改,提出了基于 CMM 理论的教学软件项目的软件过程方法,并通过一个典型的教学软件项目来实例化地讲解本方案在实际运用中的操作流程。
正因为我们建立了正确的质量管理机制,使得我们在技术进步上才能有所保障;只有我们获得了管理基础,才能让我们实现技术提升。因此为了今后能将向CMM 更高的级别进行过渡,我们要更好的研究和落实 CMM2 等级标准,形成软件工程以及软件技术的管理。
参考文献:
[1] 软件项目管理实践 [M]. 贾洛特 清华大学出版社 2006
[2] 企业战略管理 [M].张东升 李艳双 机械工业出版社 2005
[3] CMMI 成功项目管理 [M]. James Persse(美) 李晓丽译 机械工业出版社 2008
[4] CMM 和集成化软件研发管理 [M]. 林锐 电子工业出版社 2008
[5] 在软件能力成熟度模型 CMM 方法及其应用 [M].杨一平 人民邮电出版社 2008
[6] CMM 精粹--集成化过程改进实用导论 [M].Dennis http://www.1daixie.com/dxjylw/ M. Ahern(Richard Turner)AaronClouse 陈波译 清华大学出版社 2005[7] ISO9000 质量管理体系 [M]. 柴邦衡 机械工业出版社 2006
[8] 新编 ISO9001 标准理解与应用 [M]. 文放怀 广东经济出版社 2006
[9] ISO9001 质量管理体系标准的理解和实施 [M]. 党继祥 西北工业大学 2007
[10] 项目管理知识体系指南 [M].美国项目管理协会 电子工业出版社 2008