软件工程实验报告 三

模版 实验三 详细设计

 

课程

班级

学  号

姓  名

实验时间

软件工程导论

12广电2

120701240

吴联棒

2013.12.21

 

 

 

软件工程实验报告 三

一、实验名称

系统详细设计

二、实验目的

根据需求分析、概要设计,完成系统的详细设计

三、实验主要内容

详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。

四、实验原理

1、模块说明。说明该模块需要实现什么功能,还有设计要点。
2、流程逻辑。用流程图说明该模块的处理过程。
3、算法。不一定有,如果涉及一些比较特殊的算法或关键模块,就写一下算法的伪代码或用流程图说明。
4、限制条件。该模块的功能有哪些限制,比如用户ID不能重复,只能查询自己权限范围内的用户。
5、输入项。每个子模块可以看做一个”方法“,我传给你什么,你给我输出什么。比如删除用户,输入项就是用户ID。
6、输出项。删除用户的输出项,就是不能在查询模块里查询到已删除的用户

五、实验结果

详细设计

目录

一、用户界面设计

二、系统实现.

3.1通用功能类的实现

3.2申报开票模块的实现

四、总结和展望

4.1总结

4.2展望

 

一、用户界面设计

本系统的设计思路主要是实用、简便、灵活、稳定。整个系统有完整的组织框架和模块分工,但由于涉及篇幅限制,这里我着重介绍下登记和申报开票模块。因为这两个模块是整个征收管理系统运行的核心模块,包涵了本系统80%的业务功能。对于界面设计我们遵循以下几个原则:

一、控件的位置拖放安排
  在绝大多数的程序界面设计中,并不是所有的元素都具有相同的重要性,所以应抓住重点,将较重要的元素定位在对用户来说处在一目了然的位置是非常重要的,可以尝试根据“功能”和“关系”来组成一个逻辑信息组。按照控件在功能上的联系,将它们放在一起,在视觉效果上也要比将它们分散在屏幕的各处要好得多。
  二、控件的大小与一致性编排
  控件的大小设置是程序设计时经常遇到的问题,虽然操作非常简单,却很难决定控件的大小。合理设置控件的大小以达成一致性是界面设计中的重要问题之一,一致性的外观将体现应用程序的协调性。如果缺乏一致性就会使界面混乱无序,会对用户的使用带来不便。
  三、合理利用空间,保持界面的简洁
  界面设计最重要的原则就是简洁与明了。对于应用程序而言,如果界面看上去很难,则可能程序使用本身也比较复杂,而在设计时稍稍深入考虑一下,便有助于创建看上去和用起来都很简单的界面。

  四、合理利用颜色、图像和显示效果来达成内容与形式的统一
  依据许多程序设计人员的经验,应当尽量限制应用程序所用颜色的种类,而且色调也应该保持一致。

在大部分窗口中,我们都广泛采用了树型结构的框架图做索引(如图3.9),这样做的目的一方面是将原本很复杂的资料结构化,一目了然的反映实际业务,另一方面操作起来通用性强,便于操作员理解。可是这样做的代价是脚本处理非常麻烦,因为虽然窗口上东西很少,按纽通用,可是实际上不同的对象对同一个按纽的处理办法差异很大,而且树型窗口刷新速度较慢,不适合大量数据的显示。所以,我们将这种结构定义在窗口中的一级构架内,减少树型窗口的数据量。另外,将同一按纽下不同功能尽量定义成类或者存储过程,方便调用,减少脚本量,也提高了响应速度。

二、系统实现

一、系统功能函数设计

为了实现系统的正常运作,需要大量的函数作为基础,结合相应的函数,才能使得系统准确无误的运行相对应的系统功能,以下是所有功能函数的设计及其功能简介:

 

1、函数声明及结构体的构造:

首先是构造了一个struct student的结构体,结构体内部包括了学生的姓名,学号,性别,年龄,备注之后,该部分同时声明了

Delete删除函数;Dispaly显示函数;Getinfo输入函数;Modfiy修改函数;Save保存函数;Search查询函数。 

2、主函数:

首先输入密码,成功进入程序,失败重新输入,并且该主函数中有一个switch函数,switch函数中特定的数字对应着特定的函数:1对应输入函数,2对应显示函数,3对应保存函数,4对应删除函数,5对应修改函数,6对应查询函数,7推出函数。

 

3、输入函数:

首先是输入密码,再根据函数的提示,输入要输入的人数,之后再根据函数中的循环结构,依次输入姓名、学号、性别、年龄及备注,直至输入到达目标。同时该函数还能自动显示学生信息并且返回主菜单。 

4、查询函数:

首先按照自己的意愿输入特定的数字,转而进入switch函数中的特定的查询函数(按姓名,学号,性别,年龄)或直接退回主函数界面。

4.1 按姓名函数查询:

              首先按要求输入想查询学生的姓名,然后将输入的学生的姓名与已经输入的姓名进行逐个字的对比,看是否完全一致,若一致则将该学生的信息显示出来,并返回主菜单;若不一致,则输出此学生不存在。

4.2按ID函数查询:

首先按要求输入想查询学生的学号,然后将输入的学生的学号与已经输入的学号进行逐个字的对比,看是否完全一致,若一致则将该学生的信息显示出来,返回主菜单;若不一致,则输出此学生不存在。

 

5、删除函数:

首先按照自己的意愿输入特定的数字,转而进入switch函数中的特定的删除函数(按姓名或按ID),或直接退回主函数界面。

首先按要求输入想查询学生的学号,然后将输入的学生的学号与已经输入的学生信息进行逐个字的对比,看是否完全一致,若一致则将该学生的信息删除(既将后一个客户的信息代替将要删除的客户的信息),并显示删除后的内容,并返回主菜单;若不一致,则输出此学生不存在。

 

6.保存函数:

首先打开D盘寻找是否处在c:\\student.txt.文件,若存在,打开该文件,若不存在,创建一个c:\\student.txt文件,并打开。然后将学生信息写入文件。 

 

 

三、总结

4.1总结

设计的课题是去年C程序设计时使用的课题,比较容易简单,但还是需要有语言严密性,需要我们有清晰的思路。通过对软件工程的认识,知道了好程序的特点,以及带来的好处,为程序的编写方便带来了不少的好处。并且通过与他人的程序进行比较,也了解到了自己编写程序的不足之处和考虑不周到的地方,值得多多的学习。学习了系统的需求分析后,更懂得一个令人满意的系统需要多方面考虑和沟通,也让我们作为一个程序员更有条理的编写程序。但碍于自己的能力有限,有些不能达到十分的完美,甚至可以说是零基础,也激发自己多去了解。

参考文献 

[1] 《UML基础教程》张瑜 清华大学出版社

[2] 《信息系统开发方法教程》 陈佳著 清华大学出版社

[3] 《UML和模式应用》姚淑珍 机械工业出版社

[4] 《UML系统分析设计与应用案例》冀振燕人民邮电出版社

posted @ 2013-12-22 21:33  吴联棒  阅读(491)  评论(0编辑  收藏  举报