您的当前位置:首页正文

软件工程实验报告

2020-06-07 来源:客趣旅游网
 软件工程概论 实验报告 学 号: 姓 名: 提交日期: 成 绩: 1 2014-04-27 东北大学秦皇岛分校 软件工程 实验报告 【实验编号】 1 【实验名称】 Microsoft Visio 软件的使用 【实验目的】 1) 掌握 Visio 的工作环境及组成; 2) 掌握用 Visio 软件绘制图表的基本操作; 3) 能熟练全用 Visio 软件绘制各种较复杂的专业图表; 4) 掌握各种图表文档创建方法. 【实验内容】 使用Microsoft Visio 来设计任意一个系统的数据流图模型。 【实验结果】上交所制作的流程图,书写实验小结。 实验步骤参考: 1) 通过打开模板并向图表添加形状来开始创建图表。 2) 在图表中移动形状并调整形状的大小。 3) 向图表添加文本。 4) 连接图表中的形状。 5) 设置图表中形状的格式。 6) 保存图表以示完成,并向演示图表。 柜员终端储户柜员账户ATMATMATM 分行计算机中央计算机分行计算机账户储户账户账户 东北大学秦皇岛分校计算机与通信工程学院 第1页 指导教师:吕艳霞 软件工程 实验报告 【实验编号】 2 【实验名称】 软件系统结构化分析 【实验目的】 掌握结构化系统需求分析的方法。 【实验内容】 用结构化分析技术进行软件系统需求分析,得出系统得数据流图和数据字典。 【实验结果】 ATM站中央计算机分行计算机柜员ATM界面储户银行卡电话线站号分行代码电话线总行柜员终端数据库账户储户信息卡权限事务事务事务系统问题域子系统结构 东北大学秦皇岛分校计算机与通信工程学院 第2页 指导教师:吕艳霞 软件工程 实验报告 【实验编号】 【实验名称】 【实验目的】 3,4 软件系统结构化设计 掌握结构化系统设计的方法。 【实验内容】 系统设计的原则:模块化、抽象化、逐步求精和信息隐蔽。 1)数据设计 给出系统的数据详细设计即给出数据库表的设计以及表之间的关系; 2)系统功能结构设计 给出系统所包含的功能结构图; 3)给出逐个模块的程序描述。(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等【实验结果】 (1)数据库表及表之间的关系 字段信息 字段名称 类型 宽度 小数位数 空特性 Userrname varchar 20 姓名 UserID Char 18 N 身份证号 TelNum Char 20 电话 Address Varchar 100 地址 CardID 1、客户表(user) 2、账户表(account) 字段信息 字段名称 类型 CardID Char 卡号 Varchar 账户余额 Accountbalance Identify Char 身份证号 Password Varchar 密码 Type Char 类型 Max Varchar 最大值 宽度 6 12 18 10 10 20 CardID 小数位数 空特性 N N N N 3、账单(reckoning) 字段信息 字段名称 类型 CardID 卡号 更Char 新Affairtype 帐户Char 事务类型 Tradetime Date 交易时间 Tradenum Char 交易金额 宽度 6 2 6 4 CardID 小数位数 空特性 N N N N 4、事务表(account) 字段信息 字段名称 类型 affairID Char 事务ID Affairname char 事务名称 宽度 2 12 affairID 小数位数 空特性 N N 东北大学秦皇岛分校计算机与通信工程学院 第3页 指导教师:吕艳霞 软件工程 实验报告 柜员终端储户柜员账户ATMATMATM(2)系统功能结构设计图 分行计算机中央计算机分行计算机账户储户账户账户 东北大学秦皇岛分校计算机与通信工程学院 第4页 指导教师:吕艳霞 软件工程 实验报告 现金兑换卡 分行代码 卡号 接收输入 卡号 验卡 分行代码 选定分行 分行代码错 分行名 卡号错 卡信息 验证密码 储户 密码 帐号 卡权限 正确密码 密码错 无效帐户 显示出错信息 出错信息 检查帐户 事务失败 帐户 余额 事务类型 金额 更新帐户 储户 现金帐单 现金额 帐单数据 产生输 东北大学秦皇岛分校计算机与通信工程学院 第5页 指导教师:吕艳霞 软件工程 实验报告 (3)

东北大学秦皇岛分校计算机与通信工程学院 第6页 指导教师:吕艳霞 软件工程 实验报告 源代码: 程序 // ************************************ // * * // * function.h * // * * // ************************************ #include class consumer; class ATM // ATM取款机 { public: ATM(consumer& cn):cnsm(cn) { } 东北大学秦皇岛分校计算机与通信工程学院 第7页 指导教师:吕艳霞 软件工程 实验报告 void welcome(); // 登陆界面 bool check_passwd(char n[],char pwd[]); // 核对密码 void change_passwd(); // 修改密码 void fetchmoney(); // 取款 void information(); // 查询信息 void exitATM(); // 退出系统 void functionshow(); // 功能界面 void lock(); // 锁机 private: int times; // 记录密码输入次数 consumer& cnsm; }; class consumer // 用户 { public: friend class ATM; consumer(char Name[],char Num[], float Money,char Password[]); protected: char* get_name(); // 取得姓名 char* get_num(); // 取得卡号 char* get_passwd(); // 取得密码 float get_money(); // 取得余额 void set_passwd(char pwd[]); // 设置密码 void set_money(float m); // 取钱 private: char passwd[8]; // 用户密码 char name[20]; // 用户姓名 char num[20]; 东北大学秦皇岛分校计算机与通信工程学院 第8页 指导教师:吕艳霞 软件工程 实验报告 float money; }; // ************************************ // * * // * consumer类的成员函数 * // * * // ************************************ #include\"function.h\" #include consumer::consumer(char Name[], char Num[],float Money,char Password[]) { strcpy(name,Name); strcpy(num,Num); money=Money; strcpy(passwd,Password); } float consumer::get_money() { return money; } char* consumer::get_name() { return name; } char* consumer::get_num() { return num; } char* consumer::get_passwd() { return passwd; } void consumer::set_money(float m) { money-=m; } void consumer::set_passwd(char pwd[]) { strcpy(passwd,pwd); } // ************************************ // * * // * ATM类的成员函数 * // * * // ************************************ #include \"function.h\" 东北大学秦皇岛分校计算机与通信工程学院 第9页 指导教师:吕艳霞 软件工程 实验报告 #include #include void ATM::welcome() { times=0; cout<<\"$ 欢迎使用若雪银行ATM自动取款机!~! \"<\\\\\"; cin>>n; while(n<1||n>4) { cout<<\"请输入正确的操作序号!\"<\\\\\"; cin>>n; } switch(n) { case 1: change_passwd(); break; case 2: fetchmoney(); break; case 3: information(); break; case 4: exitATM(); break; } }while(true); } void ATM::change_passwd() { char pwd[8],repwd[8]; times=0; do { cout<>pwd; if(!check_passwd(cnsm.get_num(),pwd)) times++; else break; }while(times<3); if(times==3) lock(); 东北大学秦皇岛分校计算机与通信工程学院 第11页 指导教师:吕艳霞 软件工程 实验报告 int t=0; do { cout<<\"请输入新密码:\"; cin>>pwd; cout<<\"请再输入一次新密码:\"; cin>>repwd; if((t=strcmp(pwd,repwd))!=0) cout<<\"你输入的两次密码不一样, 请重新输入!\"<\\\\\"<>m; while(m<=0) { cout<<\"请输入正确的数字!\"<\\\\ \"; cin>>m; } if(cnsm.get_money()-m<0) { cout<<\"对不起,你的余额不足!\"<\\\\ \"; cin>>ch; while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y') { cout<<\"$ >\\\\\"; cin>>ch; } }while(ch=='y'||ch=='Y'); } 东北大学秦皇岛分校计算机与通信工程学院 第12页 指导教师:吕艳霞 软件工程 实验报告 void ATM::information() { cout<<\"**********************************\"< #include\"function.h\" void main() { consumer c1(\"jim\ // 先构造一个用户 ATM atm(c1); atm.welcome(); } 东北大学秦皇岛分校计算机与通信工程学院 第13页 指导教师:吕艳霞 软件工程 实验报告 东北大学秦皇岛分校计算机与通信工程学院 第14页 指导教师:吕艳霞

因篇幅问题不能全部显示,请点此查看更多更全内容