当前位置:文档之家› 软件工程实验报告

软件工程实验报告

软件工程实验报告
软件工程实验报告

中南大学

软件工程实验报告

院系:信息科学与工程学院专业:计科1204 学号:

姓名:

实验1 需求分析实验任务书

1)阅读“办公自动化烟站管理项目”用户需求说明书以及用户需求规格说明书,理解用户需求说明书和用户需求规格说明书里的内容组织方式以及它们之间的差别。

答:用户需求说明书:用户需求说明书是用户的需求,需要和用户确认的;

是根据与现场实际客户进行沟通,把客户的需求进行整理,CMMI中有标准的模板,重点是站在客户的角度讲产品功能。

需求规格说明书:是从业务规则讲起的,细一点偏向于软件的概要设计。是从开发、测试的角度去讲产品功能,里面要包含原型界面、业务接口、活动图等。需求规格说明书是系统需求主要是对内的。

2)掌握撰写需求说明书需要的各种技术工具,如:

VISIO或MS PowerPoint,

MS Project 和

Powerdesigner等工具;

答:我选择的工具是GUI Design Studio,同时也有VISIO,我通过查阅相关资料自学了GUI Design Studio和VISIO软件。

3)使用VISIO或MS PowerPoint完成部分界面原型设计;

答:我选择问卷管理模块

“烟站项目问卷调查收集模块”主要针对省公司烟叶处提出的13张调查表(见附件),而进行的个性化开发的软件系统,通过该管理模块,省公司烟叶处可以快速向全省各县下达调查表,并以站(点)为单位,按年度收集调查表中的相关调查的数据,供以后管理分析。

用户界面

问卷填写及跟踪事件流图

问卷填写提交流程

省公司领导

省公司领导市公司领导市公司领导县公司问卷收集

人员

县公司问卷收集人员否

没通过

通过

审批是否通

审批是否通

提交表格

按步骤填写问卷

调查表

开始

是否填写完

查看退回记录,并打回给市公司

提交表格

完成

通过

查看退回记录,并打回给县公司

4)理解“需求跟踪矩阵”并自己可以编辑。

答:需求跟踪矩阵的作用:

(1) 在需求变更、设计变更、代码变更、测试用例变更时,需求跟踪矩阵是目前经过实践检验的进行变更波及范围影响分析的最有效的工具,如果不借助RTM ,则发生上述变更时,往往会遗漏某些连锁变化。

(2)RTM 也是验证需求是否得到了实现的有效工具,借助RTM ,可以跟踪每个需求的状态:是否设计了,是否实现了,是否测试了。

实验2 设计实验室任务书

1)阅读“办公自动化烟站管理项目”用户总体设计说明书、概要设计说明书、详细设计说明书,理解三个层次设计说明书的用途,以及内容组织方式和它们之间的差别;

答:概要设计就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每个模块的功能等等。同时,还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。

详细设计阶段就是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。

概要设计阶段通常得到软件结构图

详细设计阶段常用的描述方式有:流程图、N-S图、PAD图、伪代码等

2)掌握撰写设计说明书的各种技术工具,如:VISIO或MS PowerPoint,MS Project 和Powerdesigner等工具。PDM文件需要Powerdesigner来打开阅读和编辑;

答:通过学习Powerdesigner,可以知道。利用Power Designer可以制作数据流程图、概念数据模型、物理数据模型,还可以为数据仓库制作结构模型,也能对团队设计模型进行控制。他可以与许多流行的软件开发工具

曾用其开发银行管理系统:(UML建模如下)

3)使用VISIO或MS PowerPoint完成部分详细设计中的界面设计。

答:选择机构人员管理部分:

在编人员管理

功能编号

功能说明

根据机构的实际情况对在编人员进行维护,包括在编人员的基本信息、与岗位的匹配。

功能:1.查询 -- 实现按姓名、工号、所属单位、有效性、文化程度、政治面貌和技术等级、性别、婚否、岗位状态、岗位名称进行查询。

2.新增 -- 新增一个在编人员,填写人员基本信息。

3.岗位 -- 人员与岗位进行匹配。

4.删除 -- 逻辑删除,将该人员有效位置为0。

5.修改 -- 更改人员信息。

对其完善后,加上基本信息页面:

实验3 编码及测试实验

1)使用Visual Studio .net 平台打开“办公自动化烟站管理”项目文件,阅读管理端的部分项目代码,学习其开发架构以及编码风格;

答:通过理解代码,我了解并学习了C#编程。C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。

C#使得C++程序员可以高效的开发程序,且因可调用由 C/C++ 编写的本机原生函数,因此绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。

2)对已有的模块调试并编译通过,并针对实验1和实验2中的需求和设计说明书,选择一个模块进行开发。

编译通过得到登陆界面:

选择备耕管理模块

备耕管理

1、翻耕

2、整地起垄

3、土壤改良

4、农资准备

土壤改良模块:

农资准备模块代码:

using System;

using System.Collections.Generic;

using System.Text;

using MySql.Data.MySqlClient;

using System.Configuration;

using System.Data;

using TobaccoStation.DataAccess;

namespace TobaccoStation.Business.BeiGeng

{

class NongZiZhunBei

{

public NongZiZhunBei()

{ }

#region 删除

public void OperDelete(string c_id)

{

if (string.IsNullOrEmpty(c_id))

return;

string sql = "update T_FARMLAND_READY set c_sys_flag=0 where c_id in ({0})";

sql = string.Format(sql, c_id);

TobaccoStation.DataAccess.DataBase.ExecuteNonQuery(sql);

}

#endregion

#region 更新

public void update(T_FARMLAND_READY obj)

{

string sql2 = @" update T_FARMLAND_READY set

C_FARMER_ID = '{0}',

C_YEAR = '{1}',

C_MUCK = '{2}',

C_FERTILIZER = {3},

C_DRUG = '{4}',

C_PLASTIC = '{5}',

C_DUST = {6},

C_REMARK = '{7}',

C_MENDER = '{8}',

C_MODIFY_TIME = '{9}',

C_ASSISTANT = '{10}'

where c_id = '{11}'";

sql2 = string.Format(sql2, obj.C_FARMER_ID,

obj.C_YEAR,

obj.C_MUCK,

obj.C_FERTILIZER,

obj.C_DRUG,

obj.C_PLASTIC,

obj.C_DUST,

obj.C_REMARK,

obj.C_MENDER,

obj.C_MODIFY_TIME,

obj.C_ASSISTANT,

obj.C_ID);

DataBase.ExecuteNonQuery(sql2);

}

#endregion

#region 新增

public void insert(T_FARMLAND_READY obj)

{

string sql2 = @" insert T_FARMLAND_READY (C_ID,

C_FARMER_ID,

C_YEAR,

C_MUCK,

C_FERTILIZER,

C_DRUG,

C_PLASTIC,

C_DUST,

C_REMARK,

C_SYS_FLAG,

C_CREATOR,

C_CREATE_TIME,

C_ASSISTANT) values (

'{0}','{1}','{2}','{3}',{4},'{5}','{6}',{7},'{8}',1,'{9}','{10}','{11}')";

sql2 = string.Format(sql2, System.Guid.NewGuid().ToString(),

obj.C_FARMER_ID,

obj.C_YEAR,

obj.C_MUCK,

obj.C_FERTILIZER,

obj.C_DRUG,

obj.C_PLASTIC,

obj.C_DUST,

obj.C_REMARK,

obj.C_CREATOR,

obj.C_CREATE_TIME,

obj.C_ASSISTANT);

DataBase.ExecuteNonQuery( sql2);

// https://www.doczj.com/doc/8616302808.html,mit();

//}

//catch (Exception ex)

//{

// trans.Rollback();

// throw ex;

//}

//}

}

#endregion

#region 查询

public DataTable GetNongZiZhunBeiInfo(string c_year,

string group_id,

string farmer_name,

string assist_id

)

{

DataTable dt;

string sql = @" select fa.*,f.c_name as farmer_name,f.C_GROUP_ID,f.c_address,p.c_personnel_name,f.c_town_id,

f.c_village_id,f.c_team_id ";

sql += " from T_FARMLAND_READY fa ";

sql += " inner join V_FARMER f on f.c_id=fa.C_FARMER_ID";

if (!group_id.Equals(""))

{

sql += " and f.C_GROUP_ID='" + group_id + "'";

}

if (!farmer_name.Equals(""))

{

sql += " and f.C_NAME like '%" + farmer_name + "%'";

}

sql += " left join t_org_personnel p on f.C_TECHNICIAN_ID=p.c_personnel_id ";

//sql += " inner join t_contract_tobacco c on c.c_no=fa.C_NO ";

sql += " where fa.C_SYS_FLAG=1 ";//and fa.C_END_DATE>=TIMESTAMP('" + start_date + "') and fa.C_END_DATE<=TIMESTAMP('" + end_date + "')";

if (!c_year.Equals(""))

{

sql += " and fa.c_year='" + c_year + "'";

}

sql += " order by c_create_time desc, f.C_GROUP_ID,f.c_name ";

if (!assist_id.Equals(""))

{

sql += " and fa.C_ASSISTANT='" + assist_id + "'";

}

try

{

dt = TobaccoStation.DataAccess.DataBase.ExecuteDataTable(sql);

}

catch

{

dt = null;

}

return dt;

}

#endregion

}

public struct T_FARMLAND_READY

{

public string C_ID;

public string C_FARMER_ID;

public string C_YEAR;

///

/// 农家肥

///

public string C_MUCK;

///

/// 化肥

///

public string C_FERTILIZER;

///

/// 农药

///

public string C_DRUG;

///

/// 农膜

///

public string C_PLASTIC;

///

/// 火土灰

///

public string C_DUST;

public string C_REMARK;

public string C_SYS_FLAG;

public string C_CREATOR;

public string C_CREATE_TIME;

public string C_MENDER;

public string C_MODIFY_TIME;

public string C_ASSISTANT;

}

}

3)将实验1、实验2以及实验3的实验内容,撰写并提交实验报告。

重庆邮电大学-软件技术基础--实验报告(耿道渠)

《软件技术基础》实验报告 实验名称:顺序表的操作 班级学号姓名 第9 周星期 2 、5,6 节成绩 一、实验目的: 1、掌握顺序表结构的实现方式; 2、掌握顺序表常用算法的实现; 3、熟悉利用顺序表解决问题的一般思路; 4、参照给定的顺序表的程序样例,验证给出的顺序表的常见算法,领会顺序表结构的优点和不足。 二、实验内容: 1、设计一个静态数组存储结构的顺序表,要求编程实现如下任务:(1)建立一个顺序表,首先依次输人整数数据元素(个数根据需要键盘给定)。 (2)删除指定位置的数据元素(指定元素位置通过键盘输入),再依次显示删除后的顺序表中的数据元素。 (3)查找指定数据的数据元素(指定数据由键盘输入),若找到则显示位置,若没有找到则显示0。 2、使用顺序表实现一个电话本的管理程序,电话本中的每条记录包括学号、姓名、手机号码和固定电话四项。要求实现菜单、初始化、添加、删除和显示等功能。 三、实验结果:

四、实验中遇到的问题及解决方法: 第一次编写C++,感觉力不从心,回去多看看PPT。

五、实验心得体会: 对顺序表的一些常用语句不熟悉,对顺序表的整体思路理解不深刻以后要加强练习 附:源程序(自行编写或修改的程序。若为修改程序请注明修改部分的功能,若为书上实例则可不附。) #include #include #include #include #define MAXSIZE 20 using namespace std; int num; typedef struct { string student_number; string name; string tel; string home_phone; int id; } TEL; void shuaxin(TEL *); void delet(TEL *);

软件工程实验报告

软件工程实验报告 姓名:冯巧 学号 实验题目:实验室设备管理系统 1、系统简介: 每天对实验室设备使用情况进行统计,对于已彻底损坏的作报废处理,同时详细记录有关信息。对于有严重问题(故障)的要即时修理,并记录修理日期、设备名、修理厂家、修理费用、责任人等。对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。新设备购入后立即对新设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容。 2、技术要求及限定条件: 采用C#语言设计桌面应用程序,同时与数据库MySql进行交互。系统对硬件的要求低,不需要网络支持,在单机环境下也能运行,在局域网环境下也能使用。方案实施相对容易,成本低,工期短。 一:可行性分析 1、技术可行性分析 计算机硬件设备,数据库,实验室设备管理软件与实验室设备管理系统的操作人员组成,能够实现实验室设备管理的信息化,提高工作效率,实现现代化的实验室设备管理。系统需要满足实验室设备管理(包括对实验设备的报废、维修和新设备的购买)、实验室设备信息查询(包括按类别进行查询和按时间进行查询)、实验室设备信息统计报表(包括对已报废设备的统计、申请新设备购买的统计和现有设备的统计)。这些功能框图如下图所示: 2、经济可行性分析 依据用户的现实需求、技术现状、经济条件、工期以及其他局限性因素等等因素,考虑到工期的长短、技术的成熟可靠、操作方便等因素,本方案具备经济可行性。

3、系统可选择的开发方案 ①方案A用C#开发系统的特点是:开发工具与数据库集成一体,可视化,开发速度较快,但数据库能够管理的数据规模相对较小。系统对硬件的要求低,不需要网络支持,在单机环境下也能运行,在局域网环境下也能使用。方案的实施相对容易,成本低,工期短。 ②方案B:以小型数据库管理系统为后台数据库,该前台操作与数据库分离,也能够实现多层应用系统。系统对硬件的要求居中,特别适合在网络环境下使用,操作方便。但系统得实现最复杂,成本最高,工期也较长。 二:软件需求分析 1.软件系统需求基本描述: 实验室设备管理系统是现代企业资源管理中的一个重要内容,也是资源开发利用的基础性工作。实验室设备在信息化之前,在用户系统管理、设备维修管理、设备的增删改查管理等方面存在诸多不利于管理的地方,不适应现代的企业管理形势和资源的开发利用。 2.软件系统数据流图(由加工、数据流、文件、源点和终点四种元素组成): 1)顶层数据流图 2)二层流程图 3)总数据流图

软件工程综合实践报告

专业资料 软件工程综合实践 报告 企业用电管理系统设计 专业 学生姓名 班 级 学号 指导教师 完成日期 信息工程学院

目录 1.项目名称:企业用电管理系统......................................... 错误!未定义书签。 1.1编写目的..................................................................... 错误!未定义书签。 1.2背景说明..................................................................... 错误!未定义书签。 1.3开发环境..................................................................... 错误!未定义书签。 2. 软件介绍.......................................................................... 错误!未定义书签。 2.1目标 ............................................................................ 错误!未定义书签。 2.2用户的特点 ................................................................. 错误!未定义书签。 2.3假定与约束 ................................................................. 错误!未定义书签。 3. 需求分析.......................................................................... 错误!未定义书签。 3.1对功能的规定.............................................................. 错误!未定义书签。 3.2对性能的规定.............................................................. 错误!未定义书签。 3.2.1精度 ......................................................................... 错误!未定义书签。 3.2.2时间特性要求........................................................... 错误!未定义书签。 3.2.3灵活性...................................................................... 错误!未定义书签。 4. 软件的基本结构............................................................... 错误!未定义书签。 4.1数据管理能力要求....................................................... 错误!未定义书签。5.详细设计......................................................................... 错误!未定义书签。 6.部分编码 ........................................................................... 错误!未定义书签。 6.1企业信息查询代码 ....................................................... 错误!未定义书签。 6.2企业用电信息查询代码: ............................................ 错误!未定义书签。 6.3删除企业用电信息代码: ............................................ 错误!未定义书签。 6.4删除用电企业信息代码: ............................................ 错误!未定义书签。 7. 软件核心技术,存在问题等 ............................................. 错误!未定义书签。

软件工程实验报告

实验一 一、实验室名称 综合实验楼 二、试验项目名称 图书管理系统 三、实验目的 1.了解和使用甘特图,系统流程图,线性时间图来描绘系统开发流程和进度 2.学会使用visio绘制常用的流程图。 四、实验内容 图书管管理系统更便于对图书进行分类和管理,对借阅者进行时间限定,使得借书的效益更高更安全。提高工作效益,便于操作,能有效地对数据进行更新、查询,并能在一定程度上实现了自动化。图书管管理系统的主要功能为:书目管理、借阅证管理、借还图书、查询、缴费。书目管理主要是针对管理员身份而言的(比如新增书目,删除书目等等);借阅证管理分为五部分:注册、补发、挂失、暂停、注销;借还图书:借书、还书;查询:图书查询、借阅时间缴费主要是计算超期罚款并交纳费用。 五、试验方案分析与设计 整理分析图书管理流程以及每个用户的权限。对功能进行整合。 六、实验器材(设备,元器件) 台式电脑 七、实验步骤 1.对图书管理系统进行分析,整合用户权限和操作 2.根据用户操作流程画出系统流程图 3.对系统做出概要分析,拟定开发流程 4.绘制出甘特图 5.绘制线性时间图 八、实验数据记结果分析

系统流程图: 甘特图: 线性时间图: 九、实验结论 成功绘制出图书管理系统的系统流程图,甘特图,线性时间图。 十、实验总结 对系统流程的理解直接决定业务逻辑的正确与否,错误的系统流程将导致系统开发逻辑设计不合理。甘特图和线性时间图能直观的展示出系统开发的进度,有利于监督项目开发,调整开发进度。

实验二 一、实验室名称 电子楼512 二、试验项目名称 需求分析 三、实验目的 1.学会如何根据客户的需求整合需求分析报告 2.了解和使用IDEF1X图和UML类图对系统做出概要设计 3.学会使用visio绘制IDEF1X图和UML类图 四、实验内容 1、请从下面的描述中找出绘制数据流图的四种成分并用Visio绘制数据流图。 某培训中心要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。 (1) 如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。 (2) 如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。 (3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。 2、有一简单选课系统,用文字描述如下,试用IDEF1X图和UML类图描述该系统的信息模型,并用Visio绘制该IDEF1X图和UML类图。 1)基本描述:在该系统中,有学院、教师、课程、学生等实体,他们的属性分别是:学院:学院编号、学院名称、地址、联系电话、院长等基本属性; 教师:教师编号、姓名、性别、年龄、职称、所在学院等属性; 课程:课程编号、课程名称、课程性质(必修/选修)、学分、开课学院等属性; 学生:学号、姓名、性别、年龄、入学时间、学院等属性。

软件工程实验报告(总)

信息工程学院 软件工程实验报告 专业: 班级: 学号: 姓名: 指导老师:

实验一:软件开发的过程计划 实验课时:2课时 一、实验目的 项目计划的目的是为项目的研发和管理工作制定合理的行动纲领,以便所有相关人员按照计划有条不紊地开展工作。 ⑴估计项目的总体规模、工作量和成本。 ⑵制定项目计划,重点放在产品生命周期中的主要关键任务。 ⑶制定项目时间表和预算。 二、实验环境 1.硬件环境 P4以上的个人计算机环境,要求内存不少于512MB,硬盘不小于20G.。 2.软件环境 操作系统:Windows XP 数据库:Sql Server 2000以上或Access 2003以上 3.通用工具软件 通用绘图工具:MicroSoft V isio 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、你认为怎样分工是最合理的? 答:该项目已经采取项目经理制,但是在具体开发过程中,情况也许会比预计的复杂,因此,在了解了各组员的工作风格的情况下,根据性格类型进行工作分配,比如:外向而且善于交流的,可以给他安排和客户交流沟通,让客户随时了解我们 的工作情况,并且反应客户的需求改变;为了让项目更好的组织和管理,可以采取 主程序员负责制;这样,在项目经理的带领下,内部安排主程序员和副程序员,工 作员有问题的话,内部自己解决,只要按时汇报工作就可以了。 五、实验内容: 项目背景 项目名称:银行计算机储蓄系统 随着社会经济的发展,XX银行的业务不断增长,传统的依靠手工的存取款业务办理方式已经不能满足不断增长的业务需求。其一,业务需求的增加需要消耗大量人力物力资源;其二,业务复杂化导致人工处理方式出错率增加,从而引起储户不满。一方面可以减轻银行业务员的工作量,另一方面可以减少工作的出错率,从而提高工作效率。现在计算机网络的告诉发现使越来越多的人更喜欢在网购物、在家存款取款。在这样的背景下,很明显现在的银行储蓄系统已经不能满足人们越益增长的需求,急切需要建立一个新的、高效的、方便的、互联的计算机储蓄系统。为解决此问题,拟为其开发计算机储蓄系统。 项目进度: 项目在项目经理的制度下,在整个开发过程中,树立“里程碑”,而且严格按照计划进行,各阶段任务必须完成,现把任务进度历程绘制如下:

软件工程实验报告最终版

合肥师范学院实验报告册 2012 / 2013 学年第一学期 系别计算机科学与技术系 实验课程软件工程 专业计算机科学与技术 班级2010级计算机应用 姓名马军福董国运李思贤 学号1010411024 1010411008 1010411076 指导教师范庆春

实验一:结构化方法建模的基本应用 1.实验目的 (1)了解Visio工具软件的功能特色、安装、工作环境和基本操作等基本知识; (2)掌握应用Visio工具的基本使用方法和基本绘图操作; (3)熟悉结构化分析建模的基本应用。 2.实验内容 (1)使用Visio 建立期刊管理系统的实体-关系图; (2)使用Visio 建立期刊管理系统的数据流图。 3. 实验要求 使用Visio 建立期刊管理系统的实体-关系图、数据流图。数据流图要绘 制三层。 4.实验结果和体会 (1)需求陈述 在图书管理系统中,管理员要为每个读者建立借阅账户,,账户内存储读者的个人信息和借阅记录信息。持有借阅卡的读者可以通过管理员借阅、归还期刊,读者可通过互联网或图书馆内查询终端查询期刊信息和个人借阅情况,以及续借期刊。 借阅期刊时,先输入读者的借阅卡号,系统验证借阅卡的有效性和读者是否可继续借阅图书,无效则提示其原因,有效则显示读者的基本信息。然后输入要借阅的书号,系统查阅图书信息数据库,显示图书的基本信息。最后提交借阅请求,若被系统接受则存储借阅纪录,并修改可借阅图书的数量。归还期刊时,输入读者借阅卡号和期刊号,系统显示读者和期刊的基本信息供管理员人工审核。如果有超期借阅或丢失情况,先转入过期罚款或期刊淘汰处理。然后提交还书请求,系统接受后删除借阅纪录,并登记修改可借阅期刊的数量。 期刊管理系统包括:1.读者信息管理a:借阅请求b归还请求c:查询请求d:修改自身信息2.期刊管理a:修改书目、出版日期、编辑b:增加书目数据、删除书目数据。3.期刊借阅a:增加所借读者信息b:删除所借读者信息4.期刊查询a:已借出图书列表b:未借出图书列表5.期刊的征订6.期刊内容登记题目、作者姓名、作者单位7.期刊内容查询

软件工程 实验报告

v1.0 可编辑可修改 院系:计算机科学学院 专业:计算机科学与技术 年级: 2013级 课程名称:软件工程 组员:司少武(1135) 兰少雄(1136) 张宇(1133) 纳洪泽(1132) 指导教师:刘卫平 2015年 12月 26 日

聊天室 1 前言 即时消息系统的研究现状 即时消息系统[1](Instant Messenger,IM)是一种在后 PC 时代兴起的,以Internet 网络为基础的,允许交互双方即时地传送文字、语音、视频等信息,能够跟踪网络用户在线状态的网络应用软件。即时消息系统产生有着深刻的社会原因:人们都有渴望社交,获得社会尊重、实现自我的需求,这正是即时消息软件风行的原动力,而物质文明的日益发达所带来副作用,又使得人们习惯与周围的人保持距离,以致人们更愿意对陌生人敞开心扉,在网络中可以跨越年龄、身份、行业、地域的限制,达到人与人、人与信息之间的零距离交流。从这点上讲,即时消息系统的出现改变了人们的沟通方式和交友文化,大大拓展了个人生活交流的空间。 本工程的主要内容 随着互联网逐步普及,人们的生活和工作也越来越离不开信息网络的支持,而聊天室是人们最常见,最直接的网上交流的方式。本聊天系统以聊天交流为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实最贴近的实用型网站。本文所介绍的网络聊天系统是基于开放的JAVA应用程序开发设计的,其主要特性是能动态、实时的完成信息的传递,且具有高效的交互性,更有效的处理客户请求,且具有脱离数据库技术方法,易于维护和更新的特点。 2 需求分析 本系统所要实现的主要功能是当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端当用户发送聊天信息时,服务端将会收到客户端用Socket传输过来的聊天信息对象,然后将其强制转换为Chat对象,并将本次用户的聊天信息对象添加

电子科技大学软件技术基础实验报告4

电子科技大学通信与信息工程学院标准实验报告 (实验)课程名称软件技术基础实验 电子科技大学教务处制表

电子科技大学 实验报告 一、实验室名称:校公共机房 二、实验项目名称:二叉树和哈夫曼树 三、实验学时:4学时 四、实验原理: 使用VS2010等C语言集成开发环境(IDE),在微型计算机上对程序进行编辑、编译、连接与运行。通过上机练习掌握二叉树的建立、插入删除,遍历等方法和过程,掌握递归函数在二叉树建立,遍历中的应用,掌握哈夫曼树的最小路径和建立过程。 五、实验目的: 1.熟练二叉树和哈夫曼树的概念和基本操作方法。 2.掌握课程平台使用方法。 六、实验内容: 上机完成所有函数,编程实验,调试运行程序并完成报告。 七、实验器材(设备、元器件): 硬件要求:普通pc机,1G内存,100G硬盘空间即可。 软件要求:Windows 7,包括C编译器的IDE。 八、实验步骤、实验编程与运行结果: 下面建立该二叉树并展示输出结果: #include #include typedef struct bnode

{ int data; struct bnode *lc,*rc; }; struct bnode* create() { struct bnode *tree=NULL; char ch; ch=getchar(); if(ch=='_') tree=NULL; else { tree=(struct bnode *)malloc(sizeof(struct bnode)); tree->data=ch; tree->lc=create(); tree->rc=create(); } return tree; } //先序遍历(根左右)--递归 int preorder(struct bnode *root) { putchar(root->data); if(root->lc!=NULL) preorder(root->lc); if(root->rc!=NULL) preorder(root->rc); } //中序遍历--递归 int inorder(struct bnode *root) { if(root->lc!=NULL) inorder(root->lc); putchar(root->data); if(root->rc!=NULL) inorder(root->rc); } //后序遍历--递归 int postorder(struct bnode *root) { if(root->lc!=NULL) postorder(root->lc); if(root->rc!=NULL)

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

《软件工程》实验报告 姓名:江文杰 学号:139074333 班级:网133 指导老师:周兵

一.实验目的 1.能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。 2.在软件系统开发过程中,能综合利用一门编程语言和软件工程等多门课程的知识。 3.培养良好的软件开发习惯,了解软件企业文化。 4.掌握结构化数据流分析技术。 5.掌握结构化程序设计的基本概念与技术,并且养成良好的编码风格。 6.掌握单元测试的一般步骤及技术。 7.掌握集成测试的一般步骤和技术。 二.实验内容 1.软件需求分析 ①、功能需求分析 ·输入一个年份(1-3000),然后显示12个月的月历 ·能解决闰年和平年问题 ·能输出显示结果 ②、运行需求分析 ·操作系统:Windows9x, Windows2000, Windows XP及更高版本 ③、数据流图

软件结构图: 2.软件设计与编码 #include #include #include #include #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;

软件工程标准实验报告

南昌航空大学科技学院实验报告 年月日 课程名称:软件工程A 实验名称visio完成可行性研究的图形文档(数据流图) 班级:姓名:同组人: 指导教师评定:签名: 一、实验目的和要求 1.熟悉visio的工作环境; 2.明确软件工程中数据流图的基本结构,掌握数据流图的常见模式; 3.理解数据流图的控制结构。 二、实验内容和步骤(及流程图) 1、完成图3.10,3.27,4.9。 2、为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员键入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期,利息等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。 三、实验结果(及调试过程) 四、实验体会

南昌航空大学科技学院实验报告 年月日 课程名称:软件工程A 实验名称:visio完成需求分析中的图形文档 班级:姓名:同组人: 指导教师评定:签名: 一、实验目的和要求 1、熟悉visio的各种工具 2、模拟完成需求分析中所要使用的各种图形工具 3、能用visio完成不同行为的状态转换图 二、实验内容和步骤 1、复印机的工作过程大致如下:未接到复印命令时处于闲置状态,一旦接到复印 命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。用状态转换图描述复印机的行为。 2、请用状态转换图描述自己在A TM机上取款的行为过程。 三、实验结果 四、实验体会

计算机软件技术基础实验报告Word版

计算机软件基础实验报告 姓名学号实验目的 1. 掌握C语言程序设计方法,并学会上机调试。 2. 熟悉Huffman编码源程序,并构造Huffman树。 实验内容 1.试设计一算法,从包括n个元素的数组中,求最大和最小元素,并使得当n 个元素为有序排列时,元素之间的比较次数仅为n-1次。 2.在给出的Huffman编码源程序基础上,要求画出Huffman树,求出与等长编 码相比时的压缩比。 实验要求 1.根据实验内容编写算法,并用 C 语言进行程序设计。 2. 将所编程序在计算机上调试通过,并全面测试。 实验结果 1.以一个含有8个元素的一维数组{1,2,3,5,7,8,9,12}为例,设计程序如下: #include int maxArray(int x ,int y); int minArray(int x ,int y); int main(void) { int i = 0 ; int array[8]={ 1,2,3,5,7,8,9,12} ; printf; do { scanf("%d",&array[i]); i++; } while(i < 8); int maxTemp = array[0]; int minTemp = array[0]; int maxIndex = 0; int minIndex = 0; for(i=1;i<8;i++)

maxTemp = maxArray(array[i] , maxTemp); minTemp = minArray(array[i] , minTemp); } for(i=0;i<8;i++) { if (maxTemp == array[i]) { maxIndex = i; } if (minTemp == array[i]) { minIndex = i; } } printf; return 0; } 运行结果如下: 2.Huffman编码源程序 #include #include #include #include #include typedef struct {unsigned int weight; //结点权值 unsigned int parent,lchild,rchild; //结点的父指针,左右孩子指针 }HTNode,*HuffmanTree; //动态分配数组存储哈夫曼树 typedef char **HuffmanCode; //动态分配数组存储哈夫曼编码表 void CreateHuffmanTree(HuffmanTree &,unsigned int*,int ); //生成哈夫曼树 void HuffmanCoding(HuffmanTree,HuffmanCode &,int ); //对哈夫曼树

软件工程实验报告(总)

信息工程学院软件工程实验报告 专业: 班级: 学号: 姓名: 指导老师:

实验一:软件开发的过程计划 实验课时: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、你认为怎样分工是最合理的? 答:该项目已经采取项目经理制,但是在具体开发过程中,情况也许会比预计的复杂,因此,在了解了各组员的工作风格的情况下,根据性格类型进行工作分配,比如:外向而且善于交流的,可以给他安排和客户交流沟通,让客户随时了解我们 的工作情况,并且反应客户的需求改变;为了让项目更好的组织和管理,可以采取 主程序员负责制;这样,在项目经理的带领下,内部安排主程序员和副程序员,工 作员有问题的话,内部自己解决,只要按时汇报工作就可以了。 五、实验内容: 项目背景 项目名称:银行计算机储蓄系统 随着社会经济的发展,XX银行的业务不断增长,传统的依靠手工的存取款业务办理方式已经不能满足不断增长的业务需求。其一,业务需求的增加需要消耗大量人力物力资源;其二,业务复杂化导致人工处理方式出错率增加,从而引起储户不满。一方面可以减轻银行业务员的工作量,另一方面可以减少工作的出错率,从而提高工作效率。现在计算机网络的告诉发现使越来越多的人更喜欢在网购物、在家存款取款。在这样的背景下,很明显现在的银行储蓄系统已经不能满足人们越益增长的需求,急切需要建立一个新的、高效的、方便的、互联的计算机储蓄系统。为解决此问题,拟为其开发计算机储蓄系统。 项目进度: 项目在项目经理的制度下,在整个开发过程中,树立“里程碑”,而且严格按照计划进行,各阶段任务必须完成,现把任务进度历程绘制如下:

软件工程综合实践报告

软件工程综合实践 报告 企业用电管理系统设计 专业 学生姓名 班级 学 号 指导教师 完成日期 信息工程学院

目录 1.项目名称:企业用电管理系统 ........................................... 错误!未定义书签。 1.1编写目的..................................... 错误!未定义书签。 1.2背景说明..................................... 错误!未定义书签。 1.3开发环境..................................... 错误!未定义书签。 2. 软件介绍 ............................................................................... 错误!未定义书签。 2.1目标......................................... 错误!未定义书签。 2.2用户的特点................................... 错误!未定义书签。 2.3假定与约束................................... 错误!未定义书签。 3. 需求分析 ............................................................................... 错误!未定义书签。 3.1对功能的规定................................. 错误!未定义书签。 3.2对性能的规定................................. 错误!未定义书签。 3.2.1精度....................................... 错误!未定义书签。 3.2.2时间特性要求............................... 错误!未定义书签。 3.2.3灵活性..................................... 错误!未定义书签。 4. 软件的基本结构 ................................................................... 错误!未定义书签。 4.1数据管理能力要求............................. 错误!未定义书签。5.详细设计 ............................................................................... 错误!未定义书签。 6.部分编码 ................................................................................. 错误!未定义书签。 6.1企业信息查询代码............................. 错误!未定义书签。 6.2企业用电信息查询代码:....................... 错误!未定义书签。 6.3删除企业用电信息代码:....................... 错误!未定义书签。 6.4删除用电企业信息代码:....................... 错误!未定义书签。 7. 软件核心技术,存在问题等 ............................................... 错误!未定义书签。 8. 实验心得 ............................................................................... 错误!未定义书签。

软件工程实验报告_学生成绩管理系统

软件工程实验报告 学生成绩管理系统的设计与实现 学生姓名 学号 班级 成绩 指导教师 年月日

目录 1 课题描述 (3) 2 可行性研究 (4) 2.1 编写目的 (4) 2.2 项目背景 (4) 2.3 定义(术语) (4) 2.4 数据流程和处理流程 (4) 2.5 可行性分析的前提 (5) 2.6 可行性分析 (5) 3 需求分析 (7) 3.1 学生成绩管理系统功能需求 (7) 3.2 学生成绩管理系统性能要求 (8) 3.3 数据流图 (8) 3.4 数据字典 (9) 3.5 学生信息管理系统逻辑结构图 (12) 3.6 用户信息实体关系图 (12) 4 概要设计 (13) 4.1 编写目的 (13) 4.2 项目背景 (13) 4.3 任务概述 (13) 4.4 总体设计 (13) 4.5接口设计 (17) 4.6数据结构设计 (17) 5 详细设计 (19) 5.1 系统程序流程图 (19) 5.2 界面设计 (21) 5.3 程序界面截图 (22) 5.4 程序源代码 (27) 6 软件测试 (58) 7 总结 (62)

1 课题描述 随着互联网的发展,利用INTERNET 技术来实现“无纸办公”这个概念已经深入人心,校园网作为学校信息化建设的一个平台在完成资源共享、互联网访问、教务管理、电子备课等方面发挥了重要作用。服务教学、提高教学水平和效果是校园网建设的核心目标和核心价值,本系统立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高高校的现代化管理水平,实现信息资源的共享。该项目主要是服务于教学方面,进一步方便教师的工作和学生的学习,从而从侧面达到提高学校的教学方面‘软件’质量。可以说它适用于每一所高校,因此很有开发价值。我们不敢说该产品是所有该系列产品中最好的,但是我们这里要强调的是它具有使用范围广,实用性强,使用简单,所花经费少等优点。我们可以肯定的说它将在高校的使用过程中其优点将得到最充分的体现。 主要功能有三方面: 管理员,登陆,进入系统,可以进行管理员操作,进行学生信息、教师信息、课程信息的编辑、查询、删除、修改、添加、打印等操作。 学生,登陆,进入系统,可以进行查询、修改、打印等操作。 教师,登陆,进入系统,可以进行查询、学生成绩录入、修改、打印等操作。 软件系统目标: (1)本系统具有很强的可靠行,可以对录入的学生信息进行效验,对数据进行修改、删除,规定各种权限。 (2)本系统中的模块具有很强的可续性,可以方便管理人员的修改与维护。 (3)本系统操作方便、灵活、简单。 (4)本系统可高效、快速的查询到学生的基本信息。

软件技术基础实验报告

《计算机软件技术基础》实验报告 专业_____________ 年级_____________ 学号_____________ 学生姓名_____________ 指导老师_____________ 南华大学计算机学院编

【实验报告】

I 实验要求 1.每次实验中有若干习题,每个学生至少应该完成其中的两道习题。 2.上机之前应作好充分的准备工作,预先编好程序,经过人工检查无误后,才能上机,以提高上机效率。 3.独立上机输入和调试自己所编的程序,切忌抄袭、拷贝他人程序。 4.上机结束后,应整理出实验报告。书写实验报告时,重点放在调试过程和小节部分,总结出本次实验中的得与失,以达到巩固课堂学习、提高动手能力的目的。 实验一线性表 【实验目的】 1.熟悉VC环境,学习如何使用C语言实现线性表的两种存储结构。 2.通过编程、上机调试,进一步理解线性表的基本概念,熟练运用C语言实现线性表基本操作。 3.熟练掌握线性表的综合应用问题。 【实验内容】 必做: 1.一个线性表有n个元素(n

软件工程 实验报告

院系:计算机科学学院专业:计算机科学与技术年级: 2013级 课程名称:软件工程 组员:司少武(1135) 兰少雄(1136) 张宇(1133) 纳洪泽(1132) 指导教师:刘卫平 2015年 12月 26 日

聊天室 1 前言 即时消息系统的研究现状 即时消息系统[1](Instant Messenger,IM)是一种在后 PC 时代兴起的,以Internet 网络为基础的,允许交互双方即时地传送文字、语音、视频等信息,能够跟踪网络用户在线状态的网络应用软件。即时消息系统产生有着深刻的社会原因:人们都有渴望社交,获得社会尊重、实现自我的需求,这正是即时消息软件风行的原动力,而物质文明的日益发达所带来副作用,又使得人们习惯与周围的人保持距离,以致人们更愿意对陌生人敞开心扉,在网络中可以跨越年龄、身份、行业、地域的限制,达到人与人、人与信息之间的零距离交流。从这点上讲,即时消息系统的出现改变了人们的沟通方式和交友文化,大大拓展了个人生活交流的空间。 本工程的主要内容 随着互联网逐步普及,人们的生活和工作也越来越离不开信息网络的支持,而聊天室是人们最常见,最直接的网上交流的方式。本聊天系统以聊天交流为主,为广大用户提供一个借助网络进行人际交往的平台,也是网络与现实最贴近的实用型网站。本文所介绍的网络聊天系统是基于开放的JAVA应用程序开发设计的,其主要特性是能动态、实时的完成信息的传递,且具有高效的交互性,更有效的处理客户请求,且具有脱离数据库技术方法,易于维护和更新的特点。 2 需求分析 本系统所要实现的主要功能是当用户聊天时,将当前用户名、聊天对象、聊天内容、聊天语气和是否私聊进行封装,然后与服务器建立Socket连接,再用对象输出流包装Socket的输出流将聊天信息对象发送给服务器端当用户发送聊天信息时,服务端将会收到客户端用Socket传输过来的聊天信息对象,然后将其强制转换为Chat对象,并将本次用户的聊天信息对象添加到聊天对象集Message中,以供所有聊天用户访问。 接收用户的聊天信息是由多线程技术实现的,因为客户端必须时时关注更新服务器上是否有最新消息,在本程序中设定的是3秒刷新服务器一次,如果间隔时间太短将会增加客户端与服务器端的通信负担,而间隔时间长就会让人感觉没有时效性,所以经过权衡后认为3秒最佳,因为每个用户都不可能在3秒内连续发送信息。 当每次用户接收到聊天信息后将会开始分析聊天信息然后将适合自己的信息人性化地显示在聊天信息界面上。

相关主题
文本预览
相关文档 最新文档