2010 Ultimate 是一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。Visual Studio Test Professional 2010是质量保障团队的专用工具集,可简化测试规划和手动测试执行过程。Test Professional 与开发人员的 Visual Studio 软件配合运行,可在整个应用程序开发生命周期内实现开发人员和测试人员之间的高效协作。
13
第2章 基于VC的图的遍历算法的动态演示系统的设计过程
2.1 系统的可行性
对于一个软件开发项目来说,首先进行可行性分析是值得的。可行性分析实质是大大压缩和简化了设计过程,主要在较高层次上以较抽象的方式进行,其目的是在尽可能短的时间内以最小的代价确定该项目是否能够开发,是否值得开发。可行性分析首先要对问题进行定义,初步确定问题的规模和目标;然后在高层次上分析现有系统,确定现有系统的物理模型和逻辑模型;再根据有关问题,在高层次上设计银决有关问题的新系统的若干种可能的解决方案;最后,对每一种方案研究它的可能性[7]。可行性研究主要从经济、技术、操作等诸方面来研究新系统每种解决方案的可行性,并作出明确的结论供用户参考。 2.1.1 技术可行性
在动态演示系统中,用到的开发平台是.NET。用到的编程语言是Microsoft Visual C++。Microsoft Visual C++是一种现代的面向对象的程序开发语言,它使得程序员能够在新的微软的.NET平台上快速开发种类丰富的应用程序。.NET平台提供了大量的工具和服务,能够最大限度地发掘和使用计算和通信能力。在动态演示系统中,涉及到很多的对象实体。 2.1.2 基础可行性
本人在大学四年期间,接受了比较系统的关于数据结构算法、visualC++的相关专业知识方面的教育,具有了很好的理论基础。并且通过指导老师的认真指导,本人脑海中以初步有了本系统的映像。
本人此次设计的指导老师认真负责,使得我能够较早的开始准备工作,所以本人有教宽裕的时间来完成此次设计。同时本人能很好的应用我系现有资源,系里为我们能够顺利完成毕业设计做了充分准备,保证了我们能够方便的使用系电脑机房进行相关的实验测验,使得我们有了很好的硬件保障。 2.1.3 操作可行性
鉴于本系统的特点,Windows友好的用户界面和本系统良好的安全性设置,可以使系统操作员很好的掌握使用方法。在开发过程中,还尽量给操作员以方便,考虑到操作员的实际情况大大提高工作效率。而且该系统简单易操作,易维护,
14
减少了不必要的麻烦。
2.2 系统需求分析
软件的需求分析是从用户的业务中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出我们的软件产品。这个步骤是对用户业务需求的一个升华,是一个把用户业务优化,转化为软件产品,从而提升管理并产生质的飞跃。这一步是否成功,直接关系到开发出来的软件产品能否得到用户的认可,顺利交付给客户,客户能否真正运用我们的产品来帮助他(她)解决业务或管理问题。按照软件工程对软件开发过程的描述,需求阶段我们可以细分为需求调研和需求分析两个阶段。需求调研需要充分细致地了解客户目标,用户业务内容、流程等。这是一个对需求的采集过程,是进行需求分析的基础准备
[8]
。需求是开发者和用户交互的一个过程,任何一方的不投入都会导致项目的失
败。当然,由于用户不是专业人士,开发者有权利告诉用户应该采用何种态度来对待项目的需求。 2.2.1 用户需求分析
《数据结构》作为信息类专业的一门核心专业课,对《编译原理》等后续课程的学习极其重要。但该课程涉及大量的概念、定义、模型和算法,尤其是图的算法显得很抽象和深奥。用传统的“粉笔+黑板”形式很难将算法的执行过程动态地演示出来,影响了教学效果。因此有必要对图的算法的动态演示进行研究,设计《数据结构》算法演示系统,,帮助学生更快地掌握算法的精髓与实质。
传统的《数据结构》算法是基于以TurboC为代表的DOS开发坏境,可视化效果很差。而这种坏境给学习者的理解和深入探讨带来很大的问题。后来,随着多媒体技术的发展,《数据结构》的教学开始运用教学幻灯片的形式来讲授,这些教学幻灯片大多数都是静态的图片或者是一些基本的算法。这种教学模式弥补了传统的黑板板书的不足,较大地提高了教学质量。不过这种教学模式在可视性和交互性方面都存在较大的不足。目前,还有一种教学模式是采用flash动画演示并配加一定的文字说明的方式,这种方式可以在很大程度上揭示算法原理,唯一的遗憾就是这种动画演示的内容不是很全面,而且在与学习者的交互性方面存在不足,不能让学习者自己输入相关的参数。因此,急需一款可视性,交互性极强的动态演示系统,使得老师能过形象生动的向学生演示,大大改善传统教学的弊端,使复杂的难以理解的数据结构算法通过教师的课堂演示和学习者的不断
15
自我交互式操作试验变得通俗明朗,有效地提高教学的质量和效果。
2.3 开发工具及类库的选择
根据系统需求确定开发平台为Windows XP(SP2)、Visual Studio
2010。
主要开发工具为 Microsoft Visual C++。
Visual Studio 2008 提供了高级开发工具、调试功能、数据库功能和
创新功能,帮助在各种平台上快速创建当前最先进的应用程序。
Visual Studio 2008 包括各种增强功能,例如可视化设计器(使
用 .NET Framework 3.5 加速开发)、对 Web 开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008 为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持 AJAX 的 Web 应用程序。
2.4 系统总体方案设计
本系统共分为两个对话框:初始化对话框、演示对话框。初始化对话框:用于对数据的初始化,创建结点、创建弧,然后显示图,重新排列结点位置,使之具有简洁美观。最后创建完成。初始化对话框也可以有退出,保证程序设计的合理性。和思维的严密性。
演示对话框:该对话框有五部分,分别是:图的搜索顺序演示、程序调用的堆栈模拟、示例源程序代码显示、当前变量值显示、其它按钮(用于控制对话框显示)。按结构化程序设计思想和实际的分析,分析得出图2.1系统功能模块图:
16
深度优先搜索 初 始化对话框 创创显完退 建建示出 成 结弧 图 点 图2.1 系统功能模块图
17
演示对话框 退 出自单终 动步止演演演示 示 示