《软件工程导论》实验报告

《软件工程导论》实验报告

ID:35606189

大小:181.50 KB

页数:18页

时间:2019-03-31

《软件工程导论》实验报告_第1页
《软件工程导论》实验报告_第2页
《软件工程导论》实验报告_第3页
《软件工程导论》实验报告_第4页
《软件工程导论》实验报告_第5页
资源描述:

《《软件工程导论》实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、软件工程导论实验报告学院:班级姓名学号、2012年5月5日实验一::项目计划、分析和设计[实验日期]2012年4月14日[实验目的]初步了解结构化分析、设计方法的原理、步骤以及各阶段的文档,练习撰写简要的需求文档、设计文档。[实验内容]根据周围的实际应用需求,自选一个小型的C语言应用项目,依据项目可行性研究的结果,进行需求分析和设计,编写简要的需求文档、设计文档。[实验原理和步骤]当前的建模方法主要有传统的结构化分析、设计方法(SA/D)和面向对象分析、设计方法(OOA/D)两种,以下只对SA/D进行说明。分析

2、阶段:结构化分析(SA)是一种建模技术,它通过一定方法帮助开发人员定义系统需要什么功能,系统需要存储和使用哪些数据,以及为完成这些功能,系统需要什么样的输入和输出以及如何把这些功能结合在一起来完成任务。结构化分析方法的实质是采用一组分层数据流图及相应的数据字典作为系统的模型,从总体来看是一种强烈依赖数据流图的自顶向下的建模方法。由事件列表、数据流图、实体关系图、数据流定义、数据字典、结构化英语、状态转换图等最终构成系统的分析模型。设计阶段:分总体设计和详细设计两阶段。总体设计阶段的任务主要是确定系统由哪些模块组

3、成,以及这些模块之间的相互关系;详细设计阶段的任务主要是设计每个模块的处理过程。总体设计又称为概要设计或初步设计,它的基本目的就是回答“概括地说,系统应该如何实现?”这个问题。总体设计通常由系统设计和结构设计两个阶段组成。系统设计阶段确定一个合理的、具体的实现方案;结构设计阶段确定软件的结构,即确定系统由哪些模块组成,以及这些模块之间的相互关系。【方案+体系结构】常用的结构化设计(SD)方法有面向数据流分析(DFA)的设计方法和面向数据的设计方法【如Jackson方法(JSD)和逻辑构造程序方法(LCP)(一般

4、用于详细设计)】。DFA方法以数据流图为基础,它定义了把DFD(变换型数据流,事务型数据流及混合型)变换成软件结构图(SC)的不同映射方法。DFA设计技术实施的通用步骤:(1)复查并精化DFD;(2)确定DFD类型;(3)把DFD映射到系统模块结构,设计出模块结构的上层;(4)基于DFD逐步分解高层模块,设计出下层模块〈初步结构〉;(5)根据模块独立性原理,精化模块结构,得到更为合理的软件结构;(6)模块接口描述;(7)修改和补充数据词典;(8)制定测试计划。详细设计阶段的任务主要是确定每个模块的处理过程,包括

5、(1)确定每个模块的算法。(2)确定每一个模块的数据组织。(3)为每个模块设计一组测试用例。(4)编写详细设计说明书。详细设计阶段采用的方法是结构化程序设计(SP),与SA,SD方法衔接。目标是给出可以直接用以编码的程序逻辑结构,强调清晰第一。【实验结果】1、功能:构建一个选修课的管理系统,其中每个学生的信息由:学号、姓名、班级、成绩等几项数据构成,通过链表进行数据管理,实现以下基本功能:插入、删除、查询、浏览、初始化、导入、导出等2、IPO图:数据输入处理输出菜单中选择功能浏览选课情况查询选课学生插入选课学生

6、将链表中选课情况导入文件删除学生记录修改学生成绩学生成绩录入系统初始化将文件中选课情况导入链表退出3、设计数据结构运用链表构造该系统,同时朱门运用typedef定义结点结构体类型,并通过定义和调用函数来实现各个功能模块主菜单页面:各选项功能4、伪代码Typedefstructst{cahrnum[10],name[9],bclass[11];floatscore1,score2,score;structst*next;}stud;charmenu();stud*load();stud*search(stud*,

7、int*);voidsave(stud*);voidscorein(stud*);voidinsert(stud*);voiddeletel(stud*);voidchange(stud*);voidbrowse(stud*);表头While(1){Switch(choice){case1:printf(“浏览选课情况:”);浏览选项case2:printf(“查询选课学生:”);浏览选项…………case0:printf(“退出选修课系统:”);是否保存数据到文件If(Yes)保存并退出;else直

8、接退出}if(choice=='0')break;printf(“按任意键继续………”)}主菜单页面Voidbrowse(stud*head){inti=0;stud*p;p=head->next;while(p!=NULL){输出结果}Voidinsert(stud*head){插入新结点;do{输入学生具体信息}while(条件);}Stud*search(stud*hea,int

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。