安徽工业大学软件工程实验报告

合集下载

软件工程实验报告简版

软件工程实验报告简版

软件工程实验报告软件工程实验报告实验目的本实验旨在通过实践,加深对软件工程基本理论和方法的理解,提高软件开发能力。

具体目的包括:1. 熟悉软件开发过程中的需求分析、系统设计、编码和测试等阶段;2. 学习使用软件工程中常用的工具和方法;3. 实践软件工程实验,提高解决问题的能力。

实验背景随着信息技术的快速发展,软件已成为现代社会中不可或缺的一部分。

而软件工程作为一门学科,研究软件开发过程中应用工程原理和方法,旨在提高软件开发的效率和质量。

本实验从实践角度出发,通过设计和开发一个简单的软件系统,来加深对软件工程的理解和掌握。

实验内容1. 需求分析在需求分析阶段,我们需要明确软件系统的功能需求、非功能需求和用户需求等。

根据实验要求,本系统需要具备以下功能:- 用户登录和注册功能;- 商品管理功能,包括商品的增加、删除、修改和查询等;- 订单管理功能,包括订单的、查询和取消等。

2. 系统设计在系统设计阶段,我们需要进行系统结构设计、数据库设计和接口设计等。

具体设计如下:- 系统结构设计:本系统采用分层架构,包括表示层、应用层和数据层,实现了模块间的解耦和易扩展性。

- 数据库设计:使用关系型数据库存储用户信息、商品信息和订单信息等。

- 接口设计:设计了用户登录、商品管理和订单管理等接口,使得系统功能模块化和重复利用性增强。

3. 编码实现在编码实现阶段,我们需要根据需求和设计,使用合适的编程语言进行编码。

这里我们选择使用Python语言进行开发,使用Django框架进行Web应用开发。

具体编码实现的步骤包括:1. 搭建开发环境:安装Python运行环境和Django框架,并进行环境配置;2. 创建Django项目和应用;3. 根据系统设计细化的接口,编写视图函数和URL映射;4. 创建数据库模型并进行迁移,确保数据的持久化;5. 编写模板文件,实现页面的动态展示;6. 编写表单验证逻辑和数据库操作逻辑;7. 运行和测试系统,根据测试结果进行调试和优化。

安徽工业大学汇编第二次实验报告

安徽工业大学汇编第二次实验报告

汇编语言实验报告姓名:黄国荣专业:软件工程班级:104班学号:109074254指导老师:陆勤内容一编写一个程序,显示AL寄存器中的两位16进制数1、思路:首先将要十六进制数放到AL寄存器中,将AL中的数据放到DL中,将DL中的数逻辑右移4位,判断是否大于9,如果小于9则加30H将其转化为对应数字的ascii码输出,如果大于9就加37H将其转化为对应字母的ascii码输出。

2、写出源程序清单。

CODE SEGMENTASSUME CS:CODESTART:MOV AL,3EHPUSH AXMOV DL,ALMOV CL,4SHR DL,CL ;逻辑右移CMP DL,9JBE NEXT1 ;如果小于9ADD DL,7NEXT1:ADD DL,30H ;转化为对应的ascii码,显示数字MOV AH,2INT 21HPOP AXMOV DL,ALAND DL,0FH;将低位取出CMP DL,9JBE NEXT2 ;如果小于9ADD DL,7NEXT2:ADD DL,30HMOV AH,2INT 21HMOV AH,4CHINT 21HCODE ENDSEND START内容二编写一个程序,判别键盘上输入的字符;若是1—9字符,则显示之;若为A—Z或a—z字符,均显示“c”;若为回车字符<CR>(其ascii码为0DH),则结束程序,若为其他字符则不显示,继续等待新的字符输入。

DATA SEGMENTMESSAGE DB 0AH,0DH,'$'DATA ENDSCODE SEGMENTASSUME CS:CODE ,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AH,1 ; 接收并回显INT 21HCMP AL,0DH ;如果输入的是回车键,退出JZ DONECMP AL,'0' ;判断是否在‘0~9’范围内JB NEXTCMP AL ,'9'JA CHARUPMOV DL,ALMOV AH,2 ;如果在‘0~9’范围内则输原样输出INT 21HLEA DX,MESSAGE ;换行MOV AH,9INT 21HJMP STARTCHARUP:CMP AL,41H ;与’A‘比较JB NEXTCMP AL,5AH ;与‘Z’比较JA CHRDNDISPC: ;显示‘C’MOV DL,'C'MOV AH,2INT 21HLEA DX,MESSAGE ;换行MOV AH,9INT 21HNEXT:JMP STARTCHRDN:CMP AL,61HJB NEXTCMP AL,7AHJA NEXTJMP DISPCDONE:MOV AH,4CHINT 21HCODE ENDSEND START补充实验统计不同成绩段学生的人数一、实验目的:1、掌握分支、循环、子程序调用、DOS功能调用等基本的程序结构。

软件工程实验报告

软件工程实验报告

软件工程实验报告软件工程实验报告一、实验目的本次实验的目的是通过实践,熟悉软件工程的基本知识和方法,掌握软件开发的流程和规范。

通过完成一个小规模的软件开发项目,培养学生的软件开发能力和团队合作能力。

二、实验步骤2.1 需求分析,我们需要明确软件的需求,确定软件的功能和特性。

通过与项目发起人的沟通,了解他们的需求和期望,进而进行需求分析和规划。

在这个阶段,我们需要明确软件的功能模块、用户界面设计等。

2.2 技术选型根据需求分析的结果,我们需要选择合适的技术栈来实现软件的开发。

我们需要评估各种技术的优缺点,选择适合自己团队的技术。

,我们还需要评估各种开发工具和框架,选择合适的工具来提高开发效率。

2.3 设计阶段在设计阶段,我们需要进行系统设计和详细设计。

系统设计阶段确定软件的整体框架和结构,包括软件的层次结构、模块划分和接口设计等。

详细设计阶段则重点关注各个模块的实现细节,包括算法设计和数据结构设计等。

2.4 编码实现在完成系统设计和详细设计后,我们就可以开始进行编码实现了。

在编码实现阶段,我们需要按照事先确定的设计进行代码编写,并进行代码的和调试。

,我们还需要关注代码的质量和可读性,使用一些良好的编码规范和设计模式。

2.5 阶段在编码实现完成后,我们需要对软件进行,确保软件的功能和性能都符合要求。

阶段包括单元、集成和系统等。

我们需要编写用例,并执行用例进行,发现并修复软件中的bug。

2.6 部署与维护在通过后,我们可以将软件部署到目标机器上进行运行。

在部署之前,我们需要进行一些配置和优化工作,确保软件能够在目标环境中正常运行。

,我们还需要进行软件的维护工作,及时修复bug和优化性能。

三、实验结果经过团队的共同努力,我们成功完成了本次实验的软件开发项目。

我们按照软件工程的流程和规范进行开发,保证了软件的质量和可维护性。

软件具备了项目发起人的需求,功能和性能都符合要求。

四、实验通过本次实验,我们对软件工程的基本知识和方法有了更深入的理解。

软件工程实验报告总结

软件工程实验报告总结

软件工程实验报告总结(3篇)经过这学期软件工程实验的学习,深深感到用户需求对软件的重要性。

成功的软件产品是建立在成功的需求基础之上的,而高质量的需求来源于用户与开发人员之间有效的沟通与合作。

当用户有一个问题可以用计算机系统来解决,而开发人员开始帮助用户解决这个问题,沟通就开始了。

需求获取可能是最困难、最关键、最易出错及最需要沟通交流的活动。

对需求的获取往往有错误的认识:用户知道需求是什么,我们所要做的就是和他们交谈从他们那里得到需求,只要问用户系统的目标特征,什么是要完成的,什么样的系统能适合商业需要就可以了,但是实际上需求获取并不是想象的这样简单,这条沟通之路布满了荆棘。

首先需求获取要定义问题范围,系统的边界往往是很难明确的,用户不了解技术实现的细节,这样造成了系统目标的混淆。

其次是对问题的理解,用户对计算机系统的能力和限制缺乏了解,任何一个系统都会有很多的用户或者不同类型的用户,每个用户只知道自己需要的系统,而不知道系统的整体情况,他们不知道系统作为一个整体怎么样工作效率更好,也不太清楚那些工作可以交给软件完成,他们不清楚需求是什么,或者说如何以一种精确的方式来描述需求,他们需要开发人员的协助和指导,但是用户与开发人员之间的交流很容易出现障碍,忽略了那些被认为是认为是""很明显很明显""的信息。

最后是需求的确认,因为需求的不稳定性往往随着时间的推移产生变动,使之难以确认。

为了克服以上的问题,必须有组织的执行需求的获取活动。

需求获取活动要完成的任务或者步骤的过程如下:1、编写项目视图和范围文档系统的需求包括四个不同的层次:业务需求、用户需求和功能需求、非功能性需求。

业务需求说明了提供给用户新系统的最初利益,,反映了组织机构或用户对系统、产品高层次的目标要求,初利益它们在项目视图与范围文档中予以说明。

用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明。

软件工程 实验报告

软件工程 实验报告

软件工程实验报告软件工程实验报告一、引言在当今信息化时代,软件已经成为人们生活和工作中不可或缺的一部分。

软件工程作为一门学科,旨在通过系统化的方法和工具,提高软件的质量、可靠性和可维护性。

本实验旨在通过实际操作,加深对软件工程的理解和应用。

二、实验目的本实验的主要目的是通过软件开发过程中的需求分析、设计、编码和测试等环节,掌握软件工程的基本原理和方法。

同时,通过实验操作,培养学生的团队合作能力和解决问题的能力。

三、实验内容本次实验的内容是开发一个简单的学生信息管理系统。

该系统主要包括学生信息的录入、查询和删除功能。

具体的实验步骤如下:1. 需求分析:明确系统的功能需求和性能需求,了解用户的需求和期望。

2. 系统设计:根据需求分析的结果,设计系统的架构和模块,确定数据结构和算法。

3. 编码实现:根据系统设计的结果,使用合适的编程语言和开发工具,编写系统的源代码。

4. 软件测试:对编写完成的系统进行测试,包括单元测试、集成测试和系统测试等。

5. 系统部署:将测试通过的系统部署到实际的运行环境中,进行性能测试和用户验收测试。

四、实验结果与分析经过团队的共同努力,我们成功地完成了学生信息管理系统的开发。

系统具有良好的用户界面和交互性,能够满足用户的基本需求。

在需求分析阶段,我们与用户进行了充分的沟通和交流,确保了系统的功能和性能需求的准确性和完整性。

在系统设计阶段,我们采用了模块化设计的思想,将系统分为若干个模块,每个模块负责一个具体的功能。

这样不仅提高了系统的可维护性,还便于团队成员之间的合作和协作。

在编码实现阶段,我们选择了Java作为开发语言,并使用Eclipse作为开发工具。

通过合理地划分和组织代码,提高了代码的可读性和可重用性。

同时,我们也注重代码的注释和文档的编写,方便后续的维护和修改。

在软件测试阶段,我们采用了黑盒测试和白盒测试相结合的方法,对系统进行了全面的测试。

通过测试,我们发现了一些潜在的问题和bug,并及时修复和优化。

软件工程实验报告总结

软件工程实验报告总结
3
4
4
4
等边三角形
条件2“真”条件3“真”
4
3
4
5
直角三角形
条件3“假”
条件4“真”
5
2
4
5
一般三角形
条件4“假”
(3)条件覆盖
对于第一个判断:条件0<a<200取真为T1,取假为F1;
条件0<b<200取真为T2,取假为F2;
条件0<c<200取真为T3,取假为F3;
对于第二个判断:条件a<b+c取真为T4,取假为F4;
总结 :经过一学期的软工实验,深刻感到其重要性的同时也学到了不少的东西 ,将对我在今后的软件开发过程中起极大的作用。
篇二
实验一软件工程标准化文档
一、实验目的
1.了解国家标准GB/T8567-2006
2.熟悉软件产品开发文件的基本内容
二、实验内容
1.搜索和下载国家标准GB/T8567-2006。
2.通过阅读国家标准GB/T8567-2006,将以下文字填写完整:
软件工程实验报告总结(3篇)
经过这学期软件工程实验的学习,深深感到用户需求对软件的重要性。成功的软件产品是建立在成功的需求基础之上的,而高质量的需求来源于用户与开发人员之间有效的沟通与合作。当用户有一个问题可以用计算机系统来解决,而开发人员开始帮助用户解决这个问题,沟通就开始了。
需求获取可能是最困难、最关键、最易出错及最需要沟通交流的活动。对需求的获取往往有错误的认识:用户知道需求是什么,我们所要做的就是和他们交谈从他们那里得到需求,只要问用户系统的目标特征,什么是要完成的,什么样的系统能适合商业需要就可以了,但是实际上需求获取并不是想象的这样简单,这条沟通之路布满了荆棘。首先需求获取要定义问题范围,系统的边界往往是很难明确的,用户不了解技术实现的细节,这样造成了系统目标的混淆。

安徽工业大学软件工程实验报告.docx

安徽工业大学软件工程实验报告.docx
}
/* This module is to accept monthinfo, and print the numbered dates of the
month. */
void printmonth(struct info monthinfo)
{
int i,j,k;
printf("%s",dent);
/* set gap between numbers of dates */
#define dent " "
/* set right margin. */
struct info {
int month;
int firstdayofmonth;
int daysofmonth;
int leap;
}monthinfo;
《软件工程》实验报告
姓 名:江文杰
学 号:139074333
班 级:网133
指导老师:周兵
一.实验目的
1.能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。
2.在软件系统开发过程中,能综合利用一门编程语言和软件工程等多门课程的知识。
3.培养良好的软件开发习惯,了解软件企业文化。
4.掌握结构化数据流分析技术。
printf("一%s二%s三%s四%s五%s六%s日\n\n",gap,gap,gap,gap,gap,gap);
}
/* This module is to accept monthinfo, amd print monthly head like"一 月" */
void printhead(struct info monthinfo)

软件工程实践报告(5个)

软件工程实践报告(5个)

软件工程实践实验报告姓名:学号:班级:计算机科学与技术实验一软件需求分析1软件需求分析任务分析 ATM自动提款机系统。

ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。

ATM是英文Automatic Teller Machine的缩写。

在ATM自动取款机上可以进行账户查询、修改密码和转账的业务。

作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。

ATM自动取款机系统向用户提供一个方便、简单、及时、随时随地可以随心所欲存取款的互联的现代计算机化的网络系统。

可以大大减少工作人员,节约人力资源的开销,同时由于手续程序减少也可以减轻业务员的工作负担,有效地提高了整体的工作效率和精确度。

减少了用户办理业务的等待时间;用户可以随时随地可以随心所欲存取款,并且操作简单易懂。

我们所需要的是建立一个与后台用户数据信息数据库绑定的集查询,存款,取款,转账等功能为一体的ATM自助服务系统。

实验目的学习图形工具软件VISIO,掌握结构化需求分析方法,熟练绘制数据流图;学习快速原型工具的使用。

基本要求(1)针对银行ATM系统进行需求分析工作,了解银行ATM系统的功能、流程;(2)安装VISIO2003以上版本软件,熟练应用Visio绘制DFD图,绘制银行ATM系统数据流图,完成系统的软件逻辑模型;(3)安装Axure RP Pro 或者Balsamiq Mockups快速原型软件,学习绘制软件原型,完成银行ATM系统的软件原型。

2 ATM自动柜员机业务系统需求分析需求分析:由于科技发展迅速,几乎所有的银行都配备了简易的人工操作的ATM自动取款机。

人们可以随时随地进行交易,不再受银行的服务时间的约束,取款也很方便快捷,可以减少排队等待时间。

ATM机系统的主要功能:1.取款2.存款3修改密码4..凭条打印5.转账6. 余额查询7.交易明细查询。

⒈取款持卡人在ATM机上提取现金。

软件工程实验报告1[1]本月修正2023简版

软件工程实验报告1[1]本月修正2023简版

软件工程实验报告1软件工程实验报告1概述本文档是对软件工程实验1的实验报告,主要介绍了软件工程的基本概念和实验的目的、背景以及实验环境、实验过程和实验结果等方面的内容。

实验目的本次实验的主要目的是让学生了解软件工程的基本概念,熟悉软件开发的过程、方法和工具,培养学生的软件工程实践能力。

实验背景随着软件行业的迅速发展,软件工程作为一门学科已经成为计算机科学与技术领域中非常重要的一个方向。

软件工程的目标是通过系统化和科学化的方法开发、维护和管理软件,以提高软件质量和开发效率。

实验环境本次实验使用的实验环境为以下几个方面的内容:- 操作系统:Windows 10- 编程语言:Python 3.7- 集成开发环境(IDE):PyCharm实验过程本实验的具体过程如下:1. 确定实验需求:阅读实验要求,理解实验任务和目标。

2. 设计实验方案:根据实验要求,制定合理的实验方案,包括实验流程、数据收集、实验分析等。

3. 实施实验方案:根据设计的实验方案,利用PyCharm进行编程,实现实验要求。

4. 收集和整理实验数据:在实验过程中,记录实验数据,包括数据量、测试结果等。

5. 分析实验数据:对实验数据进行分析,得出实验结论。

6. 撰写实验报告:根据实验过程和实验结果,撰写实验报告。

实验结果经过实验,我们得出了以下的实验结果:1. 在实验环境中,我们成功地完成了实验任务。

2. 我们的实验数据表明,使用Python3.7和PyCharm进行开发可以很好地满足实验要求。

3. 实验结果分析表明,所使用的实验方案是合理可行的。

总结通过本次实验,我们对软件工程的基本概念有了更深入的了解,掌握了软件开发的过程、方法和工具。

同时,我们也提高了我们的实践能力和解决问题的能力。

通过实验过程的实践,我们更加明确了软件工程的重要性,以及我们作为软件工程师的责任和使命。

参考文献- , 软件工程导论, 清华大学出版社, 2019.- , 软件工程实践, 电子工业出版社, 2018.。

软件工程实验报告

软件工程实验报告

软件工程实验报告摘要:本实验报告旨在对软件工程的基本概念、原则及实践进行探讨,并通过一个具体的软件工程项目实例进行实验验证。

在本次实验中,我们将使用敏捷软件开发方法来开发一个简单的任务管理系统。

通过此实验,我们能够更好地理解软件工程的重要性,并学习到如何在项目开发中应用软件工程的知识和技能。

1. 引言软件工程是指将系统化、规范化、可量化的方法应用于软件的开发、运行和维护等各个环节。

软件工程旨在提高软件开发的效率和质量,并保证软件项目的顺利进行。

本实验旨在帮助我们理解软件工程的理论和实践,并实际应用软件工程的方法和技术进行项目开发。

2. 实验目的本实验的主要目的如下:- 了解软件工程的基本概念和原则;- 学习软件开发的常用方法和技术;- 通过实践项目,掌握软件工程的开发流程和方法;- 分析和解决软件开发过程中可能遇到的问题。

3. 实验环境本次实验所需的环境和工具如下:- 操作系统:Windows 10- 开发工具:Eclipse- 开发语言:Java- 版本控制工具:Git- 项目管理工具:Trello4. 实验过程本次实验的任务是开发一个简单的任务管理系统。

该系统的主要功能包括用户注册、任务发布、任务分配、任务完成情况统计等。

在实验过程中,我们将使用敏捷软件开发方法进行项目管理和开发。

4.1 项目规划在项目规划阶段,我们明确项目的目标和范围,并制定项目计划。

首先,我们定义了系统的功能需求和非功能需求,然后进行任务的优先级排序,并确定了每个迭代的目标和时间安排。

同时,我们还制定了项目风险管理计划,以确保项目能够按计划进行。

4.2 需求分析在需求分析阶段,我们与客户进行需求沟通,并详细记录客户的需求。

然后,我们对收集到的需求进行澄清和整理,最终形成需求规格说明书。

在需求分析过程中,我们使用UML建模工具绘制用例图、活动图、类图等,便于理解和描述系统的需求。

4.3 设计阶段在设计阶段,我们根据需求规格说明书进行系统设计。

软件工程实验报告

软件工程实验报告

软件工程实验报告学号:姓名:专业:年月实验一:白盒测试一、实验目的巩固白盒测试知识,对于给定的待测程序,能熟练应用基本控制流覆盖方法设计测试用例;能够执行白盒测试过程,并撰写白盒测试分析报告。

二、实验内容白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,一般用来分析程序的内部结构。

测试规划基于产品内部结构进行测试,检查内部操作是否按规定执行,软件各个部分功能是否得到充分使用,则这种测试方法称为白盒测试方法。

白盒测试将被测程序看做一个打开的盒子,测试者能够看到被测源程序,可以分析被测程序的内部结构,此时测试的焦点集中在根据其内部结构设计测试用例。

白盒测试要求是对某些程序的结构特性做到一定程度的覆盖,或者说这种测试是“基于覆盖率的测试”。

测试内容包括语句覆盖测试、分支覆盖测试、条件覆盖测试、分支/条件覆盖测试、条件组合覆盖测试和基本路径测试。

三、程序代码要求:实现对不少于10个随机输入的数的冒泡排序算法。

#include<iostream>using namespace std;int main(){double a[100];int N;int i = 0, j = 0;cin >> N;//排序元素的个数for (i = 0; i <= N; i++){cin >> a[i];}for (i = 0; i < N-1 ; i++) {for (j = 0; j < N - 1 - i; j++){if (a[j] > a[j + 1]) {int tmp;tmp = a[j];a[j] = a[j + 1];a[j + 1] = tmp;}}}for (i = 0; i < N; i++){cout << a[i] <<" ";}cout << endl;return 0;}四、程序流程图五、测试内容(1)语句覆盖测试测试结果:①②测试结果分析:输入元素时需要输入的元素个数大于最初输入的元素个数。

软件工程实验报告(总)

软件工程实验报告(总)

软件工程实验报告(总)————————————————————————————————作者:————————————————————————————————日期:信息工程学院软件工程实验报告专业:班级:学号:姓名:指导老师:实验一:软件开发的过程计划实验课时:2课时一、实验目的项目计划的目的是为项目的研发和管理工作制定合理的行动纲领,以便所有相关人员按照计划有条不紊地开展工作。

⑴估计项目的总体规模、工作量和成本。

⑵制定项目计划,重点放在产品生命周期中的主要关键任务。

⑶制定项目时间表和预算。

二、实验环境1.硬件环境P4以上的个人计算机环境,要求内存不少于512MB,硬盘不小于20G.。

2.软件环境操作系统:Windows XP数据库:Sql Server 2000以上或Access 2003以上3.通用工具软件通用绘图工具:MicroSoft Visio 2003以上文本编辑工具:MicroSoft Word 2003以上4.CASE工具UML建模工具:Rational Rose 2000三、实验要求、实验内容1、实验要求:在进行实验之前,必须掌握软件开发过程的一些基础知识,准备参考资料和阅读相关的过程模型的文档。

2、实验内容熟悉RUP(Rational Unified Process)软件开发统一过程的思想,RUP(Rational Unified Process)是由Rational公司(现已是IBM公司的一部分)提出的过程模型,它软件工程史上最完整、最成熟、最优秀的过程模型之一。

学习软件开发的组织和管理,将项目开发各阶段的任务明确,掌握各阶段的里程碑,并熟悉相应的工具。

四、思考题1、项目开发首先要做的事是什么?答:进行需求分析和定义,了解客户或用户的需求,然后再进行后续。

2、你认为该软件应具备的最重要的特性是什么。

答:安全性、实用性、灵活性。

3、你认为怎样分工是最合理的?答:该项目已经采取项目经理制,但是在具体开发过程中,情况也许会比预计的复杂,因此,在了解了各组员的工作风格的情况下,根据性格类型进行工作分配,比如:外向而且善于交流的,可以给他安排和客户交流沟通,让客户随时了解我们的工作情况,并且反应客户的需求改变;为了让项目更好的组织和管理,可以采取主程序员负责制;这样,在项目经理的带领下,内部安排主程序员和副程序员,工作员有问题的话,内部自己解决,只要按时汇报工作就可以了。

软件测试实验报告

软件测试实验报告

软件测试实验报告《软件测试》实验报告书安徽⼯业⼤学计算机学院姓名马超专业软件⼯程班级132学号139074191指导教师刘卫红2016年 5⽉实验⼀⽤例设计与⿊盒测试⼀、实验⽬的(1)能够熟练应⽤⿊盒测试技术进⾏测试⽤例设计。

(2)对测试⽤例进⾏优化测试。

⼆、实验设备主流PC机⼀套,安装有主流的编程⼯具如MyEclipse、C、Visual C++三、实验内容为QQ的注册账号功能设计测试⽤例。

注册账号功能部分截图如下:等价类划分有效等价类编号⽆效等价类编号昵称不为空空密码长度为6-16个字符⾮长度为6-16个字符或9位以下纯数字不是9位以下纯数字不包含空格包含空格确认密码与密码栏输⼊⼀致与密码栏输⼊不⼀致性别男/⼥不选择(⽆法做到)⽣⽇选择合法有效⽇期不选择所在地选择合法有效地址不选择(⽆法做到)验证码验证正确验证不正确不验证⼿机号码输⼊合法有效⼿机号码输⼊⼿机号码不合法或⽆效不输⼊短信验证码输⼊正确验证码输⼊错误验证码不输⼊(有效与否由⼿机号码栏是否输⼊决定)不输⼊(有效与否由⼿机号码栏是否输⼊决定) 同意开通QQ空间勾选/不勾选我已阅读并同意相关服务条款和隐私政策勾选不勾选其中,密码栏和确认密码栏,⼿机号码栏和短信验证码栏之间有约束关系,采⽤因果图法原因:密码: 1 输⼊合法密码确认密码: 3 与密码栏⼀致2 输⼊合法密码 4 与密码栏不致结果: 5后续操作 6 报错O约束(唯⼀);1或2和3或4必须有且仅有1个为1。

原因:⼿机号码: 1 输⼊短信验证码: 3输⼊2 不输⼊ 4 不输⼊结果: 7后续判断8 报错R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。

测试⽤例序号输⼊条件测试⽤例期望结果1 昵称412544热可以注册密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选2(已存在) 昵称412544热不可以注册密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选3 昵称昵称不可以为空密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 4昵称 412544热 6-12字符 9位⼀下纯数字密码 12345 确认密码 12345 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 5昵称 412544热9位⼀下纯数字密码 123456/1234567/12345678 确认密码 123456/1234567/12345678 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 6昵称 412544热可以注册密码 123456789/1234567890/12345678901/123456789012 确认密码123456789/1234567890/12345678901/123456789012 性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码 gbe(随机验证通过) ⼿机号码 157********短信验证码 345234(随机验证通过) 同意开通QQ 空间勾选我已阅读并同意相关服务条款和隐私政策勾选 7昵称 412544热 6-12字符密码 1234567890123 确认密码1234567890123性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服勾选务条款和隐私政策8 昵称412544热密码不⼀致密码123456789确认密码123456780性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选9 昵称412544热⽣⽇不可为确认密码2323rewew3性别男⽣⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选10 昵称4544热验证错误密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbMe(随机验证不通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选11 昵称412544热⼿机号不合法或⽆效密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码1575550370/⽆效⼿机号码短信验证码同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选12 昵称412544热短信验证码错误密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码34523(随机验证错误)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策勾选13 昵称4544热注册按钮不可⽤密码2323rewew3确认密码2323rewew3性别男⽣⽇农历1994年1⽉2⽇所在地中国安徽马鞍⼭验证码gbe(随机验证通过)⼿机号码157********短信验证码345234(随机验证通过)同意开通QQ空间勾选我已阅读并同意相关服务条款和隐私政策不勾选以下为补充补充测试⽤例编号主要操作及⽬的期望结果1 长时间离开页⾯长时间离开,重新操作2 输⼊全部正确并单击注册按钮查看是否跳转成功跳转页⾯3 检查所有下拉框是否正确且可⽤全部有效且可⽤4 在所有下拉框中分别输⼊错误信息⾃动转为默认值5 输⼊⼤⼩写字母可以区分6 能否点击查看《QQ号码规则》或《QQ空间跳转到相应页⾯服务协议》或《隐私政策》页⾯实验⼆Web测试⼀、实验⽬的掌握⽤例执⾏及缺陷报告的书写⽅法。

软件工程实践实验报告要求(5篇范例)

软件工程实践实验报告要求(5篇范例)

软件工程实践实验报告要求(5篇范例)第一篇:软件工程实践实验报告要求实验一---姓名---学号加封皮软件工程实践编写实验报告的要求试验报告一利用Visio绘制DFD图根据所选系统,利用Visio绘制系统相关的DFD图。

实验学时:8学时实验要求:试验报告二 UML工具的使用学习Rational Rose、StarUML等工具,针对所选系统进行模型分析和设计,完成用例图、类图、序列图、状态图、活动图等图形的绘制。

实验学时:16学时实验要求:1.下载、安装Rational Rose、StarUML等工具软件,学习软件使用;1.可以采用结构化方法对所选系统进行需求分析;2.采用Visio绘制系传统的DFD图; 3.提交绘制的图形和实验报告。

2.绘制用例图、类图、序列图、状态图、活动图等图形针对所选系统进行模型分析和设计。

试验报告三软件源代码管理实验学时:4学时实验要求:学习基于系统工具进行源代码版本管理实验要求:1.下载、安装SVN、Trac等工具软件,学习软件使用;2.对所选系统的源代码进行版本管理。

试验报告四使用软件测试工具学习Webstress、NUnit等各类软件测试工具,及Test Manager 测试管理工具,针对所选系统实现情况,编写测试计划、设计测试用例,掌握软件自动测试方法。

实验学时:4学时实验要求:1.下载、安装Webstress、NUnit和Test Manager等工具软件,学习软件使用;2.运用NUnit工具软件进行白盒测试用例设计及自动测试;3.运用Webstress工具软件进行性能自动测试;4.了解T est Manager测试管理工具的使用方法。

第二篇:软件工程实验报告实验三:面向对象的系统对象模型实验一、实验目的1: 熟悉面向对象分析的基本方法,加深理解对象模型、动态模型和功能模型的意义和作2: 学习使用rose工具进行面向对象分析的方法3:理解对象模型、动态模型和功能模型在rose系统中的表示4:学习用例图、类图、关联图、顺序图、状态图的绘制方法,了解其各自的作用二、实验环境1.硬件环境P4以上的个人计算机环境,要求内存不少于128MB,硬盘不小于20G.。

软件工程实验报告

软件工程实验报告

软件工程实验报告软件工程实验报告引言:软件工程是一门关于软件开发过程和方法的学科,旨在提高软件开发的效率和质量。

本次实验旨在通过实际操作,加深对软件工程理论的理解,并掌握软件开发的基本流程和技术。

实验目的:1. 理解软件开发的基本流程和方法。

2. 掌握软件需求分析和设计的技术和工具。

3. 熟悉软件测试和调试的过程和方法。

4. 培养团队合作和沟通的能力。

实验过程:1. 需求分析和设计阶段:在这个阶段,我们团队首先进行了需求收集和分析。

通过与客户的沟通和讨论,我们明确了软件的功能和用户需求。

然后,我们使用UML工具进行了系统的设计和建模,包括用例图、类图和时序图等。

这些图表为后续的开发工作提供了指导和参考。

2. 软件开发阶段:在需求分析和设计完成后,我们开始了软件的开发工作。

我们按照设计文档中的要求,使用合适的编程语言和开发工具,编写了软件的源代码。

在编码过程中,我们注重代码的可读性和可维护性,采用了一些编程规范和最佳实践。

3. 软件测试和调试阶段:在软件开发完成后,我们进行了系统的测试和调试工作。

我们首先进行了单元测试,对每个模块进行了功能和性能的测试。

然后,我们进行了集成测试,测试不同模块之间的交互和协作。

最后,我们进行了系统测试,模拟用户的使用场景,验证软件是否满足用户需求。

4. 项目管理和团队合作:在整个实验过程中,我们团队注重项目管理和团队合作。

我们使用了项目管理工具,对任务进行了分配和跟踪。

每周我们进行团队会议,讨论项目进展和遇到的问题。

我们还进行了代码的版本控制,确保团队成员之间的代码同步和协作。

实验结果:经过几周的努力,我们团队成功地完成了软件开发的任务。

我们开发了一个功能完善、稳定可靠的软件,并通过测试验证了其性能和质量。

客户对我们的软件给予了高度评价,并表示满意。

实验总结:通过本次实验,我们团队深入了解了软件工程的理论和实践,掌握了软件开发的基本流程和技术。

我们通过实际操作,加深了对软件需求分析、设计、开发、测试和调试的理解和掌握。

安徽工业大学软件工程实验报告

安徽工业大学软件工程实验报告
4.掌握结构化数据流分析技术。
5.掌握结构化程序设计的基本概念与技术,并且养成良好的编码风格。
6.掌握单元测试的一般步骤及技术。
7.掌握集成测试的一般步骤和技术。
二.实验内容
1.软件需求分析
①、功能需求分析
·输入一个年份(1-3000),然后显示12个月的月历
·能解决闰年和平年问题
·能输出显示结果
②、运行需求分析
break;
case 6: ss="六月";
break;
case 7: ss="七月";
break;
case 8: ss="八月";
break;
case 9: ss="九月";
break;
case 10: ss="十月";
break;
case 11: ss="十一月";
break;
case 12: ss="十二月";
}
/* This module is to accept inputyear() and check if it is correct. if it is
correct it return int year, otherwise ask user reenter */
int checkinput(void)
it, otherwise it return -1 */
int inputyear(void)
{
char s[80];
int i, y;
y=-1;
printf("请输入年份(1-3000):");
for(i=0;i<80;++i)

软件工程导论实验报告【最新】

软件工程导论实验报告【最新】

软件工程导论实验报告姓名:张胜男学号:091842153班级:软件0941指导老师:李伟安徽工业大学工商学院1、开发背景近年来,随着数据库技术的迅速发展以及数据库管理系统的光反应用,人们利用信息技术工作和搜索数据的能力大幅度提高,千千万万的数据库被应用于商业管理、政府办公、科学研究和工程开发等方面,特别是多媒体技术、网络技术与数据库的结合,使数据库有了更大的发展空间。

本文就公司人事管理系统的设计与实现进行了认真的分析研究,结合工作环境和管理需求,建立了一个高效、稳定的人事管理系统,达到了先进、安全、实用、可靠的目标,并对今后新的需求有很好的扩展性。

(1)公司人事管理系统开发的目的随着公司规模的扩大,经济体制的快速发展,公司组织管理会变得越来越庞大和困难,而信息的处理与使用也变得越来越重要。

它的内容对企业的决策者和管理者来说都至关重要,所以,人事管理系统应能够为用户提供充足的信息和快捷的查询手段。

建立一套人事管理系统能够加快物资的周转速度,提高生产效率,加强管理的信息化手段,提高本单位的经济效益。

从宏观上讲,顺应了社会的信息化、社会化潮流,缩短了整个社会化大生产的周期。

因此,开发这样一套管理软件成为很有必要的事情。

人事管理的对象是一个单位或若干单位种的员工的基本信息,这些信息是在变化的。

人事部门要为本单位、上级部门提供准确的统计数据。

由于人员众多、数据复杂、统计管理工作困难,以往每做一项工作,都需要花费很多的时间和精力。

传统的人工管理方式有诸如效率低,保密性差,查找、更新、维护困难等各种各样的缺点。

因此,人事管理系统能够味用户提供充足的信息和快捷的查询手段。

使用计算机对人事资料进行管理,会给应用者带来很多方便,例如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高人事管理的效率,同时,这也是企业的科学化、正规化管理以及与世界先进管理技术接轨的重要条件。

(2)公司人事管理系统的意义人的管理是一切管理工作的核心。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程》实验报告******学号:*********班级:网133指导老师:***一.实验目的1.能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。

2.在软件系统开发过程中,能综合利用一门编程语言和软件工程等多门课程的知识。

3.培养良好的软件开发习惯,了解软件企业文化。

4.掌握结构化数据流分析技术。

5.掌握结构化程序设计的基本概念与技术,并且养成良好的编码风格。

6.掌握单元测试的一般步骤及技术。

7.掌握集成测试的一般步骤和技术。

二.实验内容1.软件需求分析①、功能需求分析·输入一个年份(1-3000),然后显示12个月的月历·能解决闰年和平年问题·能输出显示结果②、运行需求分析·操作系统:Windows9x, Windows2000, Windows XP及更高版本③、数据流图软件结构图:2.软件设计与编码#include <stdio.h>#include <ctype.h>#include <stdlib.h>#include <math.h>#define firstdayof1 1/* 定义第一年的第一天,星期日=7 */ #define gap " "/* set gap between numbers of dates */#define dent " "/* set right margin. */struct info {int month;int firstdayofmonth;int daysofmonth;int leap;}monthinfo;int checkinput(void);int inputyear(void);int isleap(int y);void output(struct info);void printhead(struct info );void printmonth(struct info);struct info setinit(int);struct info setmonthinfo(struct info );/* 这个作用是判断年, 如果是闰年, return 1, 否则return 0 */int isleap(int y){return ((y%4==0 && y%100!=0) || y%400==0);}/* This module is to accept inputyear() and check if it is correct. if it is correct it return int year, otherwise ask user reenter */int checkinput(void){int y;do{y=inputyear();if(y<1 || y >3000){printf("\n输入错误!。

\n\n");y=0;}}while(y<1);return y;}/* This function is to accept the input year, if it is the integer, it returnsit, otherwise it return -1 */int inputyear(void){char s[80];int i, y;y=-1;printf("请输入年份(1-3000):");for(i=0;i<80;++i){s[i]=getchar();if(s[i]==27)exit(0);if(s[i]==10)break;}for(i=0;i<80;++i){if(s[i]==10) break;else if(!isdigit(s[i]))return y;}y=atoi(s);return y;}/*This module is to accept monthinfo, and print the whole year calender. */void output(struct info monthinfo){char ch;do{printhead(monthinfo);printmonth(monthinfo);printf("按任意键显视下一月, 按Esc键退出. \n");ch=getchar();if(ch==27)exit(0);monthinfo=setmonthinfo(monthinfo);}while(monthinfo.month<13);}/* This module is to accept monthinfo, amd print monthly head like"一月" */void printhead(struct info monthinfo){char *ss;printf("%s",dent);switch(monthinfo.month){case 1: ss="一月";break;case 2: ss="二月";break;case 3: ss="三月";break;case 4: ss="四月";break;case 5: ss="五月";break;case 6: ss="六月";break;case 7: ss="七月";break;case 8: ss="八月";break;case 9: ss="九月";break;case 10: ss="十月";break;case 11: ss="十一月";break;case 12: ss="十二月";}printf(" %s%s%s%s\n\n",gap,gap,gap,ss);}/* This module is to accept monthinfo, and print the numbered dates of the month.*/void printmonth(struct info monthinfo){int i,j,k;printf("%s",dent);printf("一%s二%s三%s四%s五%s六%s日\n\n",gap,gap,gap,gap,gap,gap);printf("%s",dent);for(i=1;i<monthinfo.firstdayofmonth;i=i+1){printf("%s ",gap);}k=monthinfo.firstdayofmonth;for(j=1;j<=monthinfo.daysofmonth;j=j+1){if(k>7){k=k-7;printf("\n\n%s",dent);};k=k+1;printf("%2d%s",j,gap);}printf("\n\n");}/* This module is to accept the monthinfo, and set the monthinfo of next month.*/struct info setmonthinfo(struct info monthinfo){int m;monthinfo.firstdayofmonth= (monthinfo.firstdayofmonth+ \monthinfo.daysofmonth-1)%7+1;monthinfo.month=monthinfo.month+1;monthinfo.daysofmonth=30;m=monthinfo.month;if(m==1 || m==3 || m==5 || m==7 || m==8 || m==10 || m ==12)monthinfo.daysofmonth=31;if(m==2){if(monthinfo.leap)monthinfo.daysofmonth = 29;elsemonthinfo.daysofmonth = 28;}return monthinfo;}/* This module is to initialize the monthinfo. */struct info setinit(int year){int i,days,total;struct info monthinfo;monthinfo.month=1;monthinfo.firstdayofmonth=firstdayof1;for(i=1;i<year;i=i+1){if(isleap(i))days=366;elsedays=365 ;monthinfo.firstdayofmonth=(monthinfo.firstdayofmonth+days-1)%7+1;}monthinfo.daysofmonth=31;monthinfo.leap=isleap(year);return monthinfo;}void main(){printf(" \t\t************************************ \n");p rintf(" \t\t欢迎使用万年历演示程序\n");p rintf(" \t\t************************************ \n");int year ;struct info monthinfo;year = checkinput();monthinfo = setinit(year);output(monthinfo);}3.单元测试①.白盒测试②.黑盒测试2015年三月四月五月六月2016年:三.总结和体会本次用C语言编写的万年历系统主要实现了年历、月历、日历的显示。

我根本就不喜欢敲代码了,看见代码就头疼。

所以感觉厌恶这门专业,对学习也不感兴趣了。

而且,还有一件更头疼的事是在写一个简单的程序时竟然老是出错,难一点的,复杂一点的程序竟然无从下手。

但是去看程序的参考答案时都看得懂,又感觉很容易。

相关文档
最新文档