第一篇:实验二
北京理工大学珠海学院实验报告
ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级:10自动化 学号:100104031036 姓名:傅万年 指导教师:雷剑刚 成绩: 实验题目:练习选择结构 实验时间:2011-4-19
题目一:1.编程判断输入整数的正负性和奇偶性。代码:#include
题目二:2.有3个整数a、b、c,由键盘输入,输出其中最大的数。代码:#include 题目三:3.分别使用if语句和switch语句,以10分为一段,分别输出实际成绩和所在分数段。 代码:#include printf(“please input the score:”);scanf(“%d”,&score);if(score>=90)printf(“good”);else if(score>=80&&score<=89)printf(“beter”);else if(score>=70&&score<=79)printf(“middle”);else if(score>=60&&score<=69)printf(“ok”);else printf(“no ok”);} 结果截图: 实验小结:通过本次实验我知道了路径问题将影响实验,所以实验前一定要设好路径。 实验二 总账管理系统初始设置 【实验目的】 1.掌握用友ERP-U8管理软件中总账管理系统初始设置的相关内容。 2.理解总账管理系统初始设置的意义。 3.掌握总账管理系统初始设置的具体内容和操作方法。 【实验内容】 1.总账管理系统参数设置。 2.基础档案设置:会计科目、凭证类别、外币及汇率、结算方式、辅助核算档案等。 3.期初余额录入。 【实验准备】 引入“实验一”账套数据: 1.以系统管理员身份注册进入系统管理。 2.选择“实验一”账套数据所在的D盘,找到帐套文件UfErpAct.Lst,单击“确认”按钮,引入账套。 【实验要求】 以帐套主管“陈明”的身份进行总账初始设置。 【实验步骤】 1.登录总账。 双击打开桌面的“企业应用平台”,以“陈明”的身份登入。在“业务”选项卡中,单击“财务会计——总账”选项,展开总账下级菜单。 2.设置总账控制参数。 3.设置基础数据:外币及汇率、凭证类别、结算方式、项目目录,建立会计科目等。 4.输入期初余额:录入完后,要试算平衡,若试算不平衡会影响下面的操作。 【实验心得】 通过这次实验,掌握了总账管理系统的概念、功能及与其他系统的关系、设置控制系数、设置基础数据、输入期初余额等内容。总账管理系统是财务及企业管理软件的核心系统,适用于各行业账务核算及管理工作。总账管理系统既可以独立运行,也可以同其他系统协同运行。总账管理主要功能有:初始设置、凭证管理、出纳管理、账簿管理、辅助核算管理和月末处理。总账管理系统的重要地位不可忽视,其他管理如:工资管理、固定资产、应收应付款、资金管理、成本管理、存货管理等都是在围绕着总账管理来运作的。总账管理系统最后一步是期末处理,主要包括银行对账、自动转帐、对账、月末处理和年末处理。手工做账数量不多但是业务种类繁杂时间紧迫,而在计算机操作下许多期末处理具有规律性,不但减少会计人员的工作量而且加强了财务核算的规范性。 通过对总账管理的学习,我基本掌握了总账管理中系统初始化、日常业务处理和期末业务处理的内容、工作原理和应用方法。了解了总账系统与其他子系统之间的关系、总账管理中错误凭证的修改方法、银行对账的方法和各种账表资料的作用和查询方法。 一、实验目的 1. 熟练掌握step()函数和impulse()函数的使用方法,研究线性系统在单位阶跃、单位脉冲及单位斜坡函数作用下的响应。2. 通过响应曲线观测特征参量和 n对二阶系统性能的影响。 3. 熟练掌握系统的稳定性的判断方法。 二、实验内容 1.观察函数step()和impulse()的调用格式,假设系统的传递函数模型为 s23s7G(s)4s4s36s24s 1可以用几种方法绘制出系统的阶跃响应曲线?试分别绘制。 2.对典型二阶系统 n2G(s)22s2snn (1)分别绘出n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线,分析参数对系统的影响,并计算=0.25时的时域性能指标(2)绘制出当=0.25,p,tr,tp,ts,ess。 n分别取1,2,4,6时单位阶跃响应曲线,分析参数n对系统的影响。 432(3)系统的特征方程式为2ss3s5s100,试用二种判稳方式判别该系统的稳定性。 (4)单位负反馈系统的开环模型为 G(s) K(s2)(s4)(s26s25) 试分别用劳斯稳定判据和赫尔维茨稳定判据判断系统的稳定性,并求出使得闭环系统稳定的K值范围。 三、实验结果及分析 1.可以用两种方法绘制系统的阶跃响应曲线。(1)用函数step()绘制 MATLAB语言程序: >> num=[ 0 0 1 3 7]; >> den=[1 4 6 4 1 ]; >>step(num,den); >> grid; >>xlabel('t/s');ylabel('c(t)');title('step response'); MATLAB运算结果: (2)用函数impulse()绘制 MATLAB语言程序: >> num=[0 0 0 1 3 7]; >> den=[1 4 6 4 1 0]; >> impulse(num,den); >> grid; >> xlabel('t/s');ylabel('c(t)');title('step response'); MATLAB运算结果: 2.(1)n2(rad/s),分别取0,0.25,0.5,1.0和2.0时的单位阶跃响应曲线的绘制: MATLAB语言程序: >> num=[0 0 4]; >> den1=[1 0 4]; >> den2=[1 1 4]; >> den3=[1 2 4]; >> den4=[1 4 4]; >> den5=[1 8 4]; >> t=0:0.1:10; >> step(num,den1,t); >> grid >> text(2,1.8,'Zeta=0'); hold Current plot held >> step(num,den2,t); >> text(1.5,1.5,'0.25'); >> step(num,den3,t); >> text(1.5,1.2,'0.5'); >> step(num,den4,t); >> text(1.5,0.9,'1.0'); >> step(num,den5,t); >> text(1.5,0.6,'2.0'); >> xlabel('t');ylabel('c(t)');title('Step Response '); MATLAB运算结果: 实验结果分析: 从上图可以看出,保持 n2(rad/s)不变,依次取值0,0.25,0.5,1.0和2.0时,系统逐渐从欠阻尼系统过渡到临界阻尼系统再到过阻尼系统,系统的超调量随的增大而减小,上升时间随的增大而变长,系统的响应速度随的增大而变慢,系统的稳定性随的增大而增强。相关计算: n2(rad/s),=0.25时的时域性能指标p,tr,tp,ts,ess的计算: (2)=0.25, n分别取1,2,4,6时单位阶跃响应曲线的绘制: MATLAB语言程序: >> num1=[0 0 1]; >> den1=[1 0.5 1]; >> t=0:0.1:10; >> step(num1,den1,t); >> grid; hold on >> text(2.5,1.5,'wn=1'); >> num2=[0 0 4]; >> den2=[1 4]; >> step(num2,den2,t);hold on >> text(1.5,1.48,'wn=2'); >> num3=[0 0 16]; >> den3=[1 16]; >> step(num3,den3,t);hold on >>text(0.8,1.5,'wn=4'); >> num4=[0 0 36]; >> den4=[1 36]; >> step(num4,den4,t);hold on >> text(0.5,1.4,'wn=6'); >> xlabel('t');ylabel('c(t)');title('Step Response '); MATLAB运算结果: 实验结果分析: 从上图可以看出,保持=0.25不变,n依次取值1,2,4,6时,系统超调量不变,延迟时间、上升时间、峰值时间、调节时间均减小,系统响应速度变快,稳定性变强。 3.特征方程式为2ss3s5s100的系统的稳定性的判定:(1)直接求根判定稳定性 MATLAB语言程序及运算结果: >> roots([2,1,3,5,10]) ans= 0.7555 + 1.4444i; 0.75550.9331i; 判定结论: 系统有两个不稳定的根,故该系统不稳定。(2)用劳斯稳定判据routh()判定稳定性 MATLAB语言程序及运算结果和结论: >> den=[2,1,3,5,10]; >> [r,info]=routh(den) r = 2.0000 3.0000 10.0000 432 1.0000 5.0000 0 -7.0000 10.0000 0 6.4286 0 0 10.0000 0 0 Info= 所判定系统有 2 个不稳定根! >> 4.开环模型为 G(s)K(s2)(s4)(s26s25)的单位负反馈系统稳定性的判定(劳斯判据判定)(系统特征方程式为D(s)=(s+2)(s+4)(s2+6s+25)+K=0): MATLAB语言程序及运算结果和结论: (取K=200) den=[1,12,69,198,200]; [r,info]=routh(den) r = 1.0000 69.0000 200.0000 12.0000 198.0000 0 52.5000 200.0000 0 152.2857 0 0 200.0000 0 0 info = 所要判定系统稳 继续取K的值,试探: (取K=350) den=[1,12,69,198,350]; [r,info]=routh(den) r = 1.0000 69.0000 350.0000 12.0000 198.0000 0 52.5000 350.0000 0 118.0000 0 0 350.0000 0 0 info = 所要判定系统稳定! (取K=866.3) den=[1,12,69,198,866.3]; [r,info]=routh(den) r = 1.0000 69.0000 866.3000 12.0000 198.0000 0 52.5000 866.3000 0 -0.0114 0 0 866.3000 0 0 info = 所判定系统有 2 个不稳定根! (取K=866.2) den=[1,12,69,198,866.2]; [r,info]=routh(den) r = 1.0000 69.0000 866.2000 12.0000 198.0000 0 52.5000 866.2000 0 0.0114 0 0 866.2000 0 0 info = 所要判定系统稳定! (取K=866.25) den=[1,12,69,198,866.25]; [r,info]=routh(den) r = 1.0000 69.0000 866.2500 12.0000 198.0000 0 52.5000 866.2500 0 105.0000 0 0 866.2500 0 0 info = 所要判定系统稳定! (取K=866.26) den=[1,12,69,198,866.26]; [r,info]=routh(den) r = 1.0000 69.0000 866.2600 12.0000 198.0000 0 52.5000 866.2600 0 -0.0023 0 0 866.2600 0 0 info = 所判定系统有 2 个不稳定根!结论: 由试探可得,在K=866.25系统刚好稳定,则可知时系统稳定的K值范围为0 本次实验我们初步熟悉并掌握了step()函数和impulse()函数的使用方法以及 判断闭环系统稳定的方法。 在实验中,我们根据内容要求,写出调试好的MATLAB语言程序,并调用step() 函数 s23s7G(s)4s4s36s24s1在取不同的n和不 同和impulse()函数求出了控制系统的时在单位阶跃和单位脉冲作用下的瞬态响应,然后记录各种输出波形,并根据实 验结果分析了参数变化对系统的影响。 控制系统稳定的充要条件是其特征方程的根均具有负实部。因此,为了判别系统 的稳定性,就要求出系统特征方程的根,并检验它们是否都具有负实部。MATLAB中对多 项式求根的函数为roots()函数。所以我们可以直接求根判定系统的稳定性。 我们也可 以用劳斯稳定判据判定系统的稳定性,劳斯判据的调用格式为:[r, info]=routh(den),该函数的功能是构造系统的劳斯表,其中,den为系统的分母多项式系数向量,r为返回的routh表矩阵,info为返回的routh表的附加信息。在实验中我们通过调用 G(s)这两个函数,判定了系统 K(s2)(s4)(s26s25)的稳定性并求得了使其稳定的K值范围。 整个实验过程的操作和观察使得我们对二阶系统的动态性能及其参数对其的影响、系统的稳定性及其判定有了更深刻的认识,也深深的体会到了Matalab软件的功能的强 大并意识到了掌握其相关应用的必要性。 DROPTABLEsc DROPTABLEstudent DROPTABLEcourse CREATETABLEstudent(snochar(8)notnullprimarykey, snamevarchar(8)notnull, sexchar(2)notnullcheck(sex='男'orsex='女')default'男', birthsmalldatetimenotnull, classnochar(3)notnull, entrance_datesmalldatetimenotnull, home_addrvarchar(40),);CREATETABLEcourse(cnochar(3)notnullprimarykey, cnamevarchar(20)notnull, total_periorsmallintcheck(total_perior>0), credittinyintcheck(credit>0 andcredit<=6),);createtablesc(snochar(8)notnull, cnochar(3)notnull, gradetinyintcheck(grade>=0 andgrade<=100), primarykey(sno,cno), foreignkey(sno)referencesstudent(sno), foreignkey(cno)referencescourse(cno),);altertablestudentaddstaturenumeric(4,2);--增加列 altertablestudentaddconstraintstudent_stature_checkcheck(stature<3.0);--增加约束 altertablestudentaddsdeptchar(20);altertablestudentaddpostcodechar(6)check(postcodelike('[1-9][0-9][0-9][0-9][0-9][0-9]'));altertablestudentdropconstraintstudent_stature_check;--删除约束 altertablestudentdropcolumnstature; altertablestudentaddconstraintstudent_entrance_date_checkcheck(entrance_date>birth);--定义了约束名 altertablescaddconstraintsc_grade_checkdefault 0 forgrade;altertablescdropconstraintsc_grade_check; insert intostudent(sno,sname,sex,birth,classno,entrance_date,home_addr,sdept,postcode)values('20110001','张虹','男','1992/09/11','051','2011/09/01','南京','计算机系','200413');insert intostudent(sno,sname,sex,birth,classno,entrance_date,home_addr,sdept,postcode)values('20110002','林红','女','1991/11/12','051','2011/09/01','北京','计算机系','100010');insert intostudent(sno,sname,sex,birth,classno,entrance_date,home_addr,sdept,postcode)values('20110103','赵青','男','1993/05/11','061','2011/09/01','上海','软件工程','200013'); insert intocourse(cno,cname,total_perior,credit)values('001','高数','96','6');insert intocourse(cno,cname,total_perior,credit)values('002','C语言程序设计','80','5');insert intocourse(cno,cname,total_perior,credit)values('003','Java语言程序设计','48','3');insert intocourse(cno,cname,total_perior,credit)values('004','Visual_Basic','48','4'); insert intosc(sno,cno,grade)values('20110001','001','89');insert intosc(sno,cno,grade)values('20110001','002','78');insert intosc(sno,cno,grade)values('20110001','003','89');insert intosc(sno,cno,grade)values('20110002','002','60');insert intosc(sno,cno,grade)values('20110103','001','80'); updatecourse setcredit=4,total_perior=64 wherecno='002'; updatesc setgrade=grade*0.8 wherecno='002';delete fromsc where'C语言程序设计'=(selectcname fromcourse wherecourse.cno=sc.cno);delete fromsc;select* fromsc 实验二:需求分析报告 实验学时:2 课后2学时 实验类型:技能性 一、目的与任务 目的:明确需求分析任务的重要性,掌握需求分析的主要具的使用方法和步骤,写出需求规格说明书。 二、实验安排 1、装有Offic软件,Visio 2010的微机系统.2、实验安排方式:本实验为开放实验,各组可同时进行实验,每组8-10人。 三、实验内容及步骤 1、选择一个管理系统(人事管理系统、工资管理系统、学生档案管理系统等)。 2、软件工程的原理对该系统的问题进行分析; 3、分析系统的数据需求获得当前系统的物理模型,然后抽象出当前系统的逻辑模型,再建立目标系统的逻辑模型;理出系统的数据流程图; 4、用Visio 2010画出该系统的数据流图,用结构化分析方法对整个系统进行分析细化,用数据流图描绘系统的逻辑模型,描绘信息在系统中流动和处理的情况;数据流图是分析和设计的工具,它主要描述系统完成的功能而不是系统的物理实现。 5、在Microsoft Word文档下写出该系统的数据字典,用数据字典对人们不了解的条目进行解释,对所有被加工引用的数据流和数据存储进行解释; 6、用小说明来描述最底层的基本加工逻辑,小说明并不描述具体的加工过程,而只是这个加工的输入数据和输出数据的逻辑关系。 7、用Visio 2007画出该系统的IPO图,它的基本形式是左边框中列出有关的输入数据,在中间的框中列出主要的处理,在右边的框中列出产生的输出数据; 8、用层次方框图或Warnier图对系统进行说明;层次方框图是由树型结构的一系列多层次的矩形框描绘数据的层次结构数型结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表这个数据的子集,最底层的各个框代表组成这个数据的实际数据元素。 四、思考题 1、软件需求分析在整个软件生存周期中的地位? 2、在软件需求分析中要完成哪些任务,所完成的资料在以后的工作中起什么作用? 3、做需求分析的过程中有没有做社会调研? 附录一: 实验要求 软件工程实验要求学生采用“项目小组”的形式,结合具体的开发项目进行设计。具体要求如下: 1.班级按项目小组进行分组,每组不得超过10人 2.每个项目小组选出项目负责人或项目经理,由项目经理召集项目组成员讨论、选定开发项目 3.项目中的每项任务要落实到人且规定该任务的起止日期和时间 4.每个项目小组必须按照《软件工程实验指导书》附录中给定的文档规范标准提供项目文档 5.题目自定或采用附录二中的题目 6.软件开发的方法自定(结构化或面向对象的方法学) 附录二: 实验题目 题目一:“教务管理系统之子系统——学院课程安排” 1.系统简介 每个学期的期中,学校教务处向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务和要求给出各个课程的相关限制(如:任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。 假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。2.限定条件 (1)每位教师的主讲课程门数不超过2门/学期:讲师以下职称的教师不能承担学院定主课的主讲任务。(2)学院中层干部的主讲课时不能超过4学时/周。 (3本学期出现严重教学事故的教师不能承担下各学期的主讲任务。 (4)本系统的输入项至少包括:教务处布置的教学计划,学院教师自报的授课计划和学院定的有关授课限制条件。(5)本系统的输出项至少包括:教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。 题目二:“学校教材定购系统” 1.系统简介 本系统可以细化为两个子系统:销售系统和采购系统 销售系统的主要工作过程为:首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生可以到书库领书。 采购系统的主要工作过程为:若是教材脱销,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知给教材发行人员。 以上功能要求在计算机上实现。2.技术要求和限制条件 (1)当书库中的各种书籍数量发生变化(包括进书和出书)时,都应修改相关的书库记录,如库存表或进/出库表。(2)在实现上述销售和采购的工作过程时,需考虑有关的合法性验证。 (3)系统的外部项至少包括:教师、学生和教材工作人员。(4)系统的相关数据存储至少包括:购书表、库存表、缺书登记表、待购教材表、进库表和出库表。 题目三:“机票预定系统” 1.系统简介 航空公司为给旅客乘机提供方便,需要开发一个机票预定系统。各个旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码(护照号码)、旅行时间、旅行始发地和目的地,航班舱位要求等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。 2.技术要求和限制条件(1)在分析系统功能时要考虑有关证件的合法性验证(如身份证、取票通知和交款发票)等。(2)对于本系统还应补充一下功能: 1.旅客延误了取票时间的处理 2.航班取消后的处理 3.旅客临时更改航班的处理(3)系统的外部输入项至少包括:旅客、旅行社和航空公司。 题目四:“学校内部工资管理系统” 1.系统简介 假设学校共有教职工约1000人,10个行政部门和8个系。每个月20日前各个部门(包括系和部门)要将出勤情况上报人事处,23日前人事处将出勤工资、奖金及扣款清单送到财务处。财务处于每个月月底将教职工的工资表做好并将数据送银行。每个月3日将工资条发给每个单位。若由员工调入或调出、校内调动、离退休变化,则由人事处通知相关部门和财务处。 2.技术要求和限制条件 (1)本系统的数据存储至少包括:工资表、部门汇总表、扣税款表、银行发放表等。 (2)除人事处、财务处外,其他职能部门和系名称可以简化表示。 (3)工资、奖金、扣款细节由学生自定义。 题目五:“实验室设备管理系统” 1.系统简介 每学年要对实验室设备使用情况进行统计、更新。其中:(1)对于已彻底损坏的做报废处理,同时详细记录有关信息。(2)对于由严重问题(故障)的要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。(3)对于急需修改但又缺少的设备,需以“申请表”的形式送交上级领导请求批准购买。新设备购入后要立即进行设备登记(包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同时更新申请表的内容。 (4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等查询。 2.技术要求及限制条件 (1)所有工作由专门人员负责完成,其他人不得任意使用。(2)每件设备在做入库登记时均由系统按类别加自动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。 (3)本系统的数据存储至少包括:设备记录、修理记录、报废记录、申请购买记录。 (4)本系统的输入项至少包括:新设备信息、修理信息、申请购买信息、具体查询统计要求。本系统的输出项至少包括:设备购买申请表、修理/报废设备资 金统计表 题目六:“校园代金卡系统” 1.系统简介 校园代金卡系统配套符合金融标准的金融设备——自助缴费机(带圈存功能),以银行卡为辅助,从真正意义上实现全方位的现代化校园管理,实现校园货币电子化。它以非接触式IC卡又称射频卡为操作手段,配合校园计算机网络,实现整个学校的全方位智能卡网络化管理,将先进的IC卡技术服务用于学校的教学、科研、管理和生活等方面。用IC卡取代借书证、餐票、计算机房的上机卡、通道出入证件等;并作为校园信息查询卡,使教师和学生可以轻松查询教学设备、教室情况、图书音像资料、校园活动等各类信息。整个系统的建成,为学校从各项日常管理事务到各种长期数据处理提供科学的解决方案,以节约学校的人力物力,在提高学校管理能力的基础上,亦能为学校带来一定的经济效益。师生手持一张智能卡就可以实现学校全部事务,实现学校的各种消费的无纸币流通。 2.校园代金卡系统功能要求 在代金卡系统的功能要求中,首先应该划分出系统必须完成的所有功能。 校园代金卡系统能够运用于解决学生和教职工的消费既管理问题,包括购物消费、购饭消费、迟到、早退学生登记、图书借阅、机房上机、学生成绩查询、校园综合信息查询、学生身份验证等。其中校园代金卡系统又分为一卡通中心平台、银行接口子系统、图书管理系统、消费管理系统、学生学籍管理系统、身份验证识别系统、门禁考勤系统等子系统,各个系统所实现功能也不相同,主要分为: 一卡通中心平台 校园代金卡的一卡通中心平台实现了对校园卡的发放、挂失、取消等管理,能够传输和处理数据系统,交易数据,结算清算各种费用,在没有工作人员参与的情况下自己也能进行一系列的工作,节省时间和人力。 银行接口子系统 校园代金卡的银行接口子系统能实现银行卡和学生校园卡帐号对应,两卡分离,学生家长持银行卡,学生持校园代金卡。家长使用银行系统的全国异地通存通兑业务,给学生银行卡中汇款。通过设在校园内的圈存机,可以实现银行卡到校园卡的电子钱包圈存并可自助查询银行帐户余额。这样学生不必从银行取出现金然后再对校园卡进行充值,节约了人力,方便了学生充值校园代金卡。 附录三: 软件开发文档指南 可行性研究报告 可行性研究报告的编写目的是:说明该软件开发项目的实现在技术、经济和社会条件方面的可行性;评述为了合理地达到开发目标而可能先择的各种方案;说明论证所选定的方案。可行性研究报告的编写内容要求如下: 1.1 引言 1.1.1 编写目的 1.1.2 背景 1.1.3 定义 1.1.4 参考资料 1.2 可行性研究的前提 1.2.1 要求 1.2.2 目标 1.2.3 条件、假定和限制 1.2.4 进行可行性研究的方法 1.2.5 评价尺度 1.3 对现有系统的分析 1.3.1 数据流程和处理流程 1.3.2 工作负荷 1.3.3 费用开支 1.3.4 人员 1.3.5 设备 1.3.6 局限性 1.4 所建议的系统 1.4.1 对所建议系统的说明 1.4.2 数据流程各处理流程 1.4.3 改进之处 1.4.4 影响 1.4.4.1 对象设备的影响 1.4.4.2 对软件的影响 1.4.4.3 对用户单位机构的影响 1.4.4.4 对系统动行的影响 1.4.4.5 对开发的影响 1.4.4.6 对地点和设施的影响 1.4.4.7 对经费开支的影响 1.4.5 局限性 1.4.6 技术条件方面的可行性 1.5 可选择其他系统方案 1.5.1 可选择的系统方案1 1.5.2 可选择的系统方案2 …… 1.6 投资及收益分析 1.6.1 支出 1.6.1.1 基本建设投资 1.6.1.2 其他一次性支出 1.6.1.3 非一次性支出 1.6.2 收益 1.6.2.1 一次性收益 1.6.2.2 非一次性收益 1.6.2.3 不可定量的收益 1.6.3 收益/投资比 1.6.4 投资回收周期 1.6.5 敏感性分析 1.7 社会条件方面的可行性 1.7.1 法律方面的可行性 1.7.2 使用方面的可行性 1.8 结论 项目开发计划 编制项目开发计划的目的是用文件的形式,把对于在开发过程中各项工作的负责人员、开发进度所需经费预算、所需软、硬件条件等问题作出安排记载下来,以便根据本计划开展和检查本项目的开发工作。编制内容要求如下: 2.1 引言 2.1.1 编写目的 2.1.2 背景 2.1.3 定义 2.1.4 参考资料 2.2 项目概述 2.2.1 工作内容 2.2.2 主要参加人员 2.2.3 产品及成果 2.2.3.1 程序 2.2.3.2 文件 2.2.3.3 服务 2.2.3.4 非移交产品 2.2.4 验收标准 2.2.5 完成项目的最迟期限 2.2.6 本计划的审查者与批准者 2.3 实施总计划 2.3.1 工作任务的分解 2.3.2 接口人员 2.3.3 进度 2.3.4 预算 2.3.5 关键问题 2.4 支持条件 2.4.1 计算机系统支持 2.4.2 需要用户承担的工作 2.4.3 需由外单位提供的条件 2.5 专题计划要点 3 软件需求说明书 软件需求说明书的编制是为了使用户的软件开发者双方对该软件的起初规定有一个共同的理解,使之成为整个开发工作的基础。编制软件需求说明书的内容要求如下: 3.1 引言 3.1.1 编写的目的 3.1.2 背景 3.1.3 定义 3.1.1 参考资料 3.2 任务概述 3.2.1 目标 3.2.2 用户的点 3.2.3 假定与约束 3.3 需求规定 3.3.1 对功能的规定 3.3.2 对性能的规定 3.3.2.1 精度 3.3.2.2 时间特性要求 3.3.2.3 灵活性 3.3.3 输入输出要求 3.3.4 数据管理能力的要求 3.3.5 故障处理要求 3.3.6 其它的专门的要求 3.4 运行环境规定 3.4.1 设备 3.4.2 支持软件 3.4.3 接口 3.4.4 控制 数据需求说明书 数据要求说明书的编制目的是为了向整个开发时期提供关于处理数据的描述和数据采集要求的技术信息。编制数据要求说明书的内容要求如下: 引言 编写目的 背景 定义 参考资料 数据的逻辑描述 静态数据 动态输入数据 动态输出数据 内部生成数据 数据约定 数据的采集 要求和范围 输入的承担者 处理 影响 概要设计说明书 概要设计说明书可称作系统设计说明书,这里说的系统是指程序系统,编制的目的是说明对程序的系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。编制概要设计说明书的内容要求如下: 5.1 引言 5.1.1 编写目的 5.1.2 背景 5.1.3 定义 5.1.4 参考资料 5.2 总体设计 5.2.1 需求规定 5.2.2 运行环境 5.2.3 基本设计概念和处理流程 5.2.4 结构 5.2.5 功能需求与程序的关系 5.2.6 人工处理过程 5.2.7 尚未解决的问题 5.3 接口设计 5.3.1 用户接口 5.3.2 内部接口 5.3.3 外部接口 5.4 运行设计 5.4.1 运行模块组合 5.4.2 运行控制 5.4.3 运行时间 5.5 系统数据结构设计 5.5.1 逻辑结构设计要点 5.5.2 物理结构设计要点 5.5.3 数据结构与程序的关系 5.6 系统出错处理设计 5.6.1 出错信息 5.6.2 补救措施 5.6.3 系统维护设计 6 详细设计说明书 详细说明书可称作程序设计说明书。编制目的是说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关内容合并概要设计说明书。对详细设计说明书的内容要不得要求如下: 6.1 引言 6.1.1 编写目的 6.1.2 背景 6.1.3 定义 6.1.4 参考资料 6.2 程序系统的组织结构 6.3 程序1(标识符)设计说明 6.3.1 程序描述 6.3.2 功能 6.3.3 性能 6.3.4 输入项 6.3.5 输出项 6.3.6 算法 6.3.7 流程逻辑 6.3.8 接口 6.3.9 存储分配 6.3.10 注释设计 6.3.11 限制条件 6.3.12 测试计划 6.3.13 尚未解决的问题 6.4 程序2(标识符)设计说明 …… 数据库设计说明书 数据库设计说明书的编制目的是对于设计中的数据库所有标识、逻辑结构和理结构作出具体的设计规定。其内容要求如下: 7.1 引言 7.1.1 编写目的 7.1.2 背景 7.1.3 定义 7.1.4 参考资料 7.2 外部设计 7.2.1 标识符和状态 7.2.2 使用它的程序 7.2.3 约定 7.2.4 专门指导 7.2.5 支持软件 7.3 结构设计 7.3.1 概念结构设计 7.3.2 逻辑结构设计 7.3.3 理结构设计 7.4 运用设计 7.4.1 数据字典设计 7.4.2 安全保密设计 8 用户手册 用户手册的编制是要使用非专门术语的语言,充分地描述该软件系统工程所具有的功能及基本的使用方法。使用户(或潜在用户)通过本手册能够了解该软件的用途,并且能够确定在什么情况下,如何使用它。具体的内容要求如下: 8.1 引言 8.1.1 编写目的 8.1.2 背景 8.1.3 定义 8.1.4 参考资料 8.2 用途 8.2.1 功能 8.2.2 性能 8.2.2.1 精度 8.2.2.2 时间特性 8.2.2.3 灵活性 8.2.3 安全保密 8.3 运行环境 8.3.1 硬设备 8.3.2 支持软件 8.3.3 数据结构 8.4 使用过程 8.4.1 安装与初始化 8.4.2 输入 8.4.2.1 输入数据的现实背景 8.4.2.2 输入格式 8.4.2.3 输入举例 8.4.3 输出 8.4.3.1 输出数据的现实背景 8.4.3.2 输出格式 8.4.3.3 输出举例 8.4.4 文卷查询 8.4.5 出错处理与恢复 8.4.6 终端操作 9 操作手册 操作手册的编制是为了向操作人中提供该软件每一个运行的具体过程和有关知识,包括操作方法的细节。具体的内容要求如下: 9.1 引言 9.1.1 编写目的 9.1.2 背景 9.1.3 定义 9.1.2 参考资料 9.2 软件概述 9.2.1 软件的结构 9.2.2 程序表 9.2.3 文卷表 9.3 安装与初始化 9.4 运行说明 9.4.1 运行表 9.4.2 运行步骤 9.4.3 运行1(标识符)说明 9.4.3.1 运行控制 9.4.3.2 操作信息 9.4.3.3 输入-输出文卷 9.4.3.4 输出文段 9.4.3.5 输出文段的复制 9.4.3.6 启动恢复过程 9.4.4 运行2(标识符)说明 9.5 非常规过程 9.6 远程操作 10 模块开发卷宗 模块开发卷宗是在模块开发过程中逐步编写出来的,每完成一个模块或一级密切相关的模块的复审时编写一份,应该把所有的模块开发卷宗汇集在一起。编写的目的是记录和汇总低层次开发的进度和结果,以便于对整个模块开发工作的管理和复审,并为将来的维护提供非常有用的技术信息。具体的内容要求如下: 10.1 标题 10.2 模块开发情况表 10.3 功能说明 10.4 设计说明 10.5 源代码清单 10.6 测试说明 10.7 复审的结论 11 测试计划 11.1 引言 11.1.1 编写目的 11.1.2 背景 11.1.3 定义 11.1.4 参考资料 11.2 计划 11.2.1 软件说明 11.2.2 测试内容 11.2.3 测试1(标识符)11.2.3.1 进度安排 11.2.3.2 条件 11.2.3.3 测试资料 11.2.3.4 测试培训 11.2.4 测试2(标识符)…… 11.3 测试设计说明 11.3.1 测试1(标识符)11.3.1.1 控制 11.3.1.2 输入 11.3.1.3 输出 11.3.1.4 过程 11.3.2 测试2(标识符)…… 11.4 评价准则 11.4.1 范围 11.4.2 数据整理 11.4.3 尺度 测试分析报告 测试分析报告的编写是为了把组装测试和确认测试的结果、发现及分析写成文件加发记载,具体的编写内容要求如下: 12.1 引言 12.1.1 编写目的 12.1.2 背景 12.1.3 定义 12.1.4 参考资料 12.2 测度概要 12.3 测试结果及发现 12.3.1 测试1(标识符)12.3.2 测试2(标识符)…… 12.4 对软件功能的结论 12.4.1 功能1(标识符)12.4.1.1 能力 12.4.1.2 限制 12.4.2 功能2(标识符)…… 12.5 分析摘要 12.5.1 能力 12.5.2 缺陷和限制 12.5.3 建议 12.5.4 评价 12.6 测试资源消耗 13 开发进度月报 开发进度月报的编制目的是及时向有关管理部门汇报项目开发的进展和情况,以便函及时发现或处理开发过程中出现的问题。一般地,开发进度月报是以项目组为单位每月编写的。如果被开发的软件系统规模比较大,整个工程项目被划分给若干个分项目组承担,开发进度月报将以项目组为单位按月编写。具体的内容要求如下: 13.1 标题 13.2 工程进度与状态 13.2.1 进度 13.2.2 状态 13.3 资源耗用与状态 13.3.1 资源耗用 13.3.1.1 工时 13.3.1.2 机时 13.3.2 状态 13.4 经费支出与状态 13.4.1 经费支出 13.4.1.1 支持性费用 13.4.1.2 设备购置费 13.4.2 状态 13.5 下个月的工作计划 13.6 建议 项目开发总结报告 项目开发总结报告的编制是为了总结本项目开发工作的经验,说明实际取得的开发结果以及对整个开发工作的各个方面的评价。具体的内容要求如下: 14.1 引言 14.1.1 编写目的 14.1.2 背景 14.1.3 定义 14.1.4 参考资料 14.2 实际开发结果 14.2.1 产品 14.2.2 主要功能和性能 14.2.3 基本流程 14.2.4 进度 14.2.5 费用 14.3 开发工作评价 14.3.1 对生产效率的评价 14.3.2 对产品质量的评价 14.3.3 对技术方法的评价 14.3.4 出错原因的分析第二篇:实验二
第三篇:实验二
第四篇:实验二
第五篇:软件工程实验二