当前位置:文档之家› 面向对象系统分析和设计综合实验报告

面向对象系统分析和设计综合实验报告

面向对象系统分析和设计综合实验报告
面向对象系统分析和设计综合实验报告

实验名称:实验4 设计模型实验2 学期:2017-2018学年第二学期

一、实验目的

1.熟练使用面向对象设计原则对系统进行重构;

2.熟练使用面向对象编程语言(JAVA或C++)实现几种常见的设计模式,包括单例模式、策略模式、装饰模式和适配器模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。

二、实验要求

1. 选择合适的面向对象设计原则对系统进行重构,正确无误地绘制重构之后的类图;

2. 结合实例,正确无误地绘制单例模式、策略模式、装饰模式和适配器模式的结构图;

3. 实现单例模式、策略模式、装饰模式和适配器模式,代码运行正确无误。

三、实验内容

1. 现实生活中,居民身份证号码具有唯一性,同一个人不允许有多个身份证号码,第一次申请身份证时将号码分配给居民,如果之后因为遗失等原因补办时,还是使用原来的身份证号码,不会产生新号码,现使用单例模式模拟该场景。

1)类图

2)实现代码:

public class IdClient {

public static void main(String[] args) {

();

();

}

}

package Refactoring1;

public class IdentityCardNo {

private static IdentityCardNo instance;

private String no;

private IdentityCardNo() {

}

public static IdentityCardNo getInstance() {

if (instance == null) {

"第一次办理身份证,分配新号码");

instance = new IdentityCardNo();

("No21");

"身份证号码为:" + ());

} else {

"重复办理身份证,获取旧号码!");

}

return instance;

}

public String getNo() {

return no;

}

public void setNo(String no) {

= no;

}

}

2. 每一麻将局都有两个骰子,因此骰子就应当是双例类。现使用多例模式模拟该场景。

1)类图

2)实现代码:

import class Dice {

private static Dice die1 = new Dice();

private static Dice die2 = new Dice();

private Dice() {

}

public static Dice getInstance(int whichOne) {

if (whichOne == 1) {

return die1;

} else {

return die2;

}

}

public synchronized int dice() {

Date d = new Date();

Random r = new Random());

int value = ();

value = (value);

value = value % 6;

value += 1;

return value;

}

}

import class DiceClient {

private static Dice die1, die2;

public static void main(String[] args) {

die1 = (1);

die2 = (2);

"第一骰子骰出: " + ());

"第二骰子骰出: " + ());

}

}

3. 某软件公司为某电影院开发了一套影院售票系统,在该系统中需要为不同类型的用户提供不同的电影票(MovieTicket)打折(Discount)方式,具体打折方案如下:学生凭学生证可享受票价8折优惠;

年龄在10周岁及以下的儿童可享受每张票减免10元的优惠(原始票价需大于等于

20元);

影院VIP用户除享受票价半价优惠外还可进行积分,积分累计到一定额度可换取电

影院赠送的奖品。

该系统在将来可能还要根据需要引入新的打折方式。

试使用策略模式设计并编程模拟实现该影院售票系统。

1)类图

2)实现代码:

public interface Discount {

public double calculate(double price);

}

public class MovieTicket {

private double price;

private Discount discount; 某软件公司欲开发一款飞机模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征,需要模拟的飞机种类及其特征如表1所示:

表1 飞机种类及特征一览表

飞机种类起飞特征飞行特征直升机(Helicopter)垂直起飞(VerticalTakeOff)亚音速飞行(SubSonicFly)客机(AirPlane)长距离起飞(LongDistanceTakeOff)亚音速飞行(SubSonicFly)歼击机(Fighter)长距离起飞(LongDistanceTakeOff)超音速飞行

(SuperSonicFly)鹞式战斗机(Harrier)垂直起飞(VerticalTakeOff)超音速飞行

(SuperSonicFly)为将来能够模拟更多种类的飞机,试采用策略模式设计并模拟实现该飞机模拟系统。

1)类图

2)实现代码:

public class plane {

private state state;儿子、妈妈、父亲三人合作画一幅画,儿子负责画出一朵花的轮廓,妈妈负责涂上颜色、父亲负责将画裱在画框里。现请使用装饰模式模拟这个过程。?

1)类图

2)实现代码:

public interface painting {

public String Draw();

}

public class Son implements painting{

@Override

public String Draw() {

"儿子用笔画出了花的轮廓");

return"儿子用笔画出了花的轮廓";

}

}

public class Father implements painting{

private painting painting;某公司想通过网络传输数据,但是担心文件被窃取。他们的所有数据都采用字符的方式传送。现在他们开发了一个数据加密模块,可以对字符串进行加密,以便数据更安全地传送。最简单的加密算法通过对字母向后移动6位来实现,同时还提供了稍复杂的逆向输出加密,还提供了更为高级的求模加密,让每一位与6求模。

用户先使用最简单的加密算法对字符串进行加密,再对加密之后的结果使用复杂加密算法进行二次加密,再对二次加密结果用高级加密算法进行第三次加密。现请使用装饰模式模拟这个过程。?

1)类图

2)实现代码:

public class ConcreteEncrypt implements EncryptComponet{

private EncryptComponet encryptComponet;

public ConcreteEncrypt(EncryptComponet encryptComponet) {

super();

= encryptComponet;

}

public void encrypt() {

();

}

}

public interface EncryptComponet {

public abstract void encrypt();

}

public class RawData implements EncryptComponet{

public void encrypt() {

"这是要发送的数据");

}

}

public class ReversEncrypt implements EncryptComponet{ public ReversEncrypt(EncryptComponet encryptComponet) {

addReservesEncrypt();

}

private void addReservesEncrypt() {

"反向加密");

}

@Override

public void encrypt() {

}

}

public class SuperEncrypt implements EncryptComponet{ public SuperEncrypt(EncryptComponet encryptComponet) { addSuperEncrypt();

}

private void addSuperEncrypt() {

"最高加密算法");

}

@Override

public void encrypt() {

}

}

public class TranslateEncrypt implements EncryptComponet{ public TranslateEncrypt(EncryptComponet encryptComponet) { addTranslateEncrypt();

}

private void addTranslateEncrypt() {

"移动加密");

}

@Override

public void encrypt() {

}

}

public class Client {

public static void main(String[] args) {

EncryptComponet s0,s1,s2,s3;

s0 = new RawData();

s1 = new TranslateEncrypt(s0);

s2 = new ReversEncrypt(s1);

s3 = new SuperEncrypt(s2);

();

}

}

7.现需要设计一个可以模拟各种动物行为的机器人,在机器人中定义了一系列方法,如机器人叫喊方法cry()、机器人移动方法move()等。如果希望在不修改已有代码的基础上使得机器人能够像狗一样叫,像狗一样跑,使用适配器模式进行系统设计。

1)类图

2)实现代码

public interface Robot {

public void cry();

public void move();

}

public class Dog {

public void barks(){

"狗在叫");

}

public void run(){

"狗在跑");

}

}

public class Dogadapter extends Dog implements Robot{

@Override

public void cry() {

barks();

}

@Override

public void move() {

run();

}

}

public class Client {

public static void main(String[] args) {

Dogadapter dogrobot = new Dogadapter();

();

();

}

}

3)实现结果

8. 在NBA作为外籍中锋,我需要翻译,具体场景描述如下:?

姚明刚来到NBA,身材够高,球技够好;

但是英语不是很懂,听不懂教练的战术安排;

球员分为前锋、中锋和后卫;

教练会给球员分配进攻、防守任务。

现请使用适配器模式模拟这个场景。

1)类图

2)实现代码:

public abstract class Player

{

protected String name;

public Player(String name)

{

= name;

}

public abstract void attack();

public abstract void defense();

}

public class Guards extends Player

{

public Guards(String name)

{

super(name);

}

public void attack()

{

"后卫" + name + "进攻");

}

public void defense()

{

"后卫" + name + "防守");

}

}

public class Center extends Player {

public Center(String name)

{

super(name);

}

public void attack()

{

"中锋" + name + "进攻");

}

public void defense()

{

"中锋" + name + "防守");

}

}

public class ForeignCenter

{

private String name;

public void attack()

{

"外籍中锋" + name + "进攻"); }

public void defense()

{

"外籍中锋" + name + "防守"); }

public String getName()

{

return name;

}

public void setName(String name) {

= name;

}

}

public class Forwards extends Player

{

public Forwards(String name)

{

super(name);

}

public void attack()

{

"前锋" + name + "进攻");

}

public void defense()

{

"前锋" + name + "防守");

}

}

public class Translator extends Player

{

private ForeignCenter wjzf = new ForeignCenter();

public Translator(String name)

{

super(name);

(name);

}

public void attack()

{

();

}

public void defense()

{

();

}

}

public class Client {

public static void main(String[] args)

{

Player b = new Forwards("巴蒂尔");

();

Player m = new Guards("麦克格雷迪");

();

Player ym = new Translator("姚明");

();

();

}

}

3)实现结果:

《管理信息系统》课程设计实验报告

《管理信息系统》课程设计实验报告 课程名称:管理信息系统 指导老师: ******* 院系:商学院 专业班级: ******** 姓名: ******** 学号: ******** 实验日期: 2011.7.11 实验地点:一机房

《管理信息系统》课程设计任务书 一.课程设计目的及意义: 《管理信息系统》课程设计是在完成《管理信息系统》课程学习之后的一次实践性教 学,是本课程理论知识的一次综合运用。通过本课程设计,能够进一步加深对信息、信息系 统、管理信息系统等基础理论知识的理解,能初步掌握结构化的生命周期法、面向对象法等 系统工程方法,进一步加强熟练应用管理信息系统的操作技能,并能够借助于管理信息系统 解决实际问题。 二.课程设计要求: 1.本课程设计时间为一周。 2.本课程设计以教学班为单位进行上机操作及实验。 3.按照任务要求完成课程设计内容。 三.课程设计任务要求: 1.任务内容:进入山东轻工业学院主页,在“网络资源”区域进入“网络教学平台”,输入各自的用户名和密码(学生学号及密码),进入本网络教学平台系统,在充分熟悉本系统 的前提下,完成下列任务要求。 2.任务要求: ①按照课程讲解的系统分析步骤和理论对本系统进行系统分析。 ②绘制不少于 3 个的主要业务流程图。 ③描述上述主要业务流程图的逻辑处理功能。 ④分析本系统的优缺点,提出改进意见,并描述改进的逻辑处理功能,绘制业务流 程图。 四.课程设计评分标准: 按照《管理信息系统课程设计大纲》的要求,本课程 1 学分,采用百分制计分,其中 任务要求②占30 分,任务要求③占30 分,任务要求④占30 分,考勤及实践表现占10 分。五.本课程设计自2011 年 6 月 27 日至 2011 年 7 月 1 日。

电力系统分析实验报告四(理工类)

西华大学实验报告(理工类) 开课学院及实验室: 实验时间 : 年 月 日 一、实验目的 1)初步掌握电力系统物理模拟实验的基本方法。 2)加深理解功率极限的概念,在实验中体会各种提高功率极限措施的作用。 3)通过对实验中各种现象的观察,结合所学的理论知识,培养理论结合实际及分析问题的能力。 二、实验原理 所谓简单电力系统,一般是指发电机通过变压器、输电线路与无限大容量母线联接而且不计各元件的电阻和导纳的输电系统。 对于简单系统,如发电机至系统d 轴和g 轴总电抗分别为d X ∑和q X ∑,则发电机的功率特性为 当发电机装有励磁调节器时,发电机电势q E 随运行情况而变化,根据一般励磁调节器的性能,可认为保持发电机'q E (或' E )恒定。这时发电机的功率特性可表示成 或 这时功率极限为 随着电力系统的发展和扩大,电力系统的稳定性问题更加突出,而提高电力系统稳定性和输送能力的最重要手段之一,就是尽可能提高电力系统的功率极限。从简单电力系统功率极限的表达式看,要提高功率极限,可以通过发电机装设性能良好的励磁调节器,以提高发电机电势、增加并联运行线路回路数;或通过串联电容补偿等手段,以减少系统电抗,使受端系统维持较高的运行电压水平;或输电线采用中继同步调相机、中继电力系统等手段以稳定系统中继点电压。 (3)实验内容 1)无调节励磁时,功率特性和功率极隈的测定 ①网络结构变化对系统静态稳定的影响(改变戈): 在相同的运行条件下(即系统电压U-、发电机电势E 。保持不变.罚芳赆裁Ll=E 。),分别 测定输电线单回线和双回线运行时,发电机的功一角特性曲线,&豆甍辜授冁蝮和达到功率极 限时的功角值。同时观察并记录系统中其他运行参数(如发电极端毫玉萼蔫交化。将两种 情况下的结果加以比较和分析。 实验步骤如下: a)输电线路为单回线; b)发电机与系统并列后,调节发电机,使其输出的有功和无ZZ 蔓专零: c)功率角指示器调零; d)逐步增加发电机输出的有功功率,而发电机不调节震磁: e)观察并记录系统中运行参数的变化,填入表1.3中: f)输电线路为双回线,重复上述步骤,将运行参数填入表l 。毒=:

面向对象程序设计实验报告完整版

资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 综合实验报告 面向对象程序设计 专业名称: 物联网工程 ___班级: _____ 级2班__ ___________姓名: 你哥哥 学号: 02051928 信息科学与工程学院 二零一三年七月

第一题: (1) 1.1题目概述 (1) 1.2设计思路 (2) 1.3设计说明与调试分析 (2) 1.4编码实现 (2) 1.5程序运行结果 (5) 1.6设计心得 (5) 第二题: (6) 2.1题目概述 (6) 2.2设计思路 (7) 2.3设计说明与调试分析 (7) 2.4编码实现 (7) 2.5程序运行结果 (11) 2.6设计心得 (11)

第一题: 1.1题目概述 用抽象类设计计算二维平面图形图形面积的程序, 在基类TDshape中设计纯虚函数area()和printName(), area()用于计算几何图形的面积, printName()用于打印输出几何图形的类名, 如Triangle类的对象就打印输出”Triangle”。每个具体形状的类则从抽象类TDshape派生, 各自需要定义其它独有的数据成员和成员函数, 而且定义area()和printName()的具体实现代码, 如图所示。 要求编写以TDshape为接口的函数, 借以访问具体类如

Triangle和Rectangle类的成员函数area(), printName ()。1.2设计思路 由简到繁, 逐步实现。 1.3设计说明与调试分析 编写基类TDshape->编写虚函数->编写继承类Triangle ->实例化TDshape和Triangle ->调用基类虚函数实现调用继承类相应函数->同样的方式处理继承类Rectangle. 1.4编码实现 #include using namespace std; class TDshape{ public: virtual void area()=0; virtual void printName()=0; }; class Triangle:public TDshape{ private: double width,height;

基于单片机的温度数据采集系统实验报告

基于单片机的温度数据采集系统实验报告 班级:电技10—1班 姓名:田波平 学号:1012020108 指导老师:仲老师

题目:基于单片机的温度数据采集系统 一.设计要求 1.被测量温度范围:0~120℃,温度分辨率为0.5℃。 2.被测温度点:2个,每5秒测量一次。 3.显示器要求:通道号2位,温度4位(精度到小数点后一位)。 显示方式为定点显示和轮流显示。 4.键盘要求: (1)定点显示设定;(2)轮流显示设定;(3)其他功能键。 二.设计内容 1.单片机及电源模块设计 单片机可选用AT89S51及其兼容系列,电源模块可以选用7805等稳压组件,本机输入电压范围9-12v。 2.存储器设计 扩展串行I2C存储器AT24C02。 要求: AT24C02的SCK接P3.2 AT24C02的SDA接P3.4 2.传感器及信号转换电路 温度传感器可以选用PTC热敏电阻,信号转换电路将PTC输出阻值转换为0-5V。 3.A/D转换器设计 A/D选用ADC0832。 要求: ADC0832的CS端接P3.5 ADC0832的DI端接P3.6 ADC0832的DO端接P3.7 ADC0832的CLK端接P2.1 4.显示器设计。 6位共阳极LED显示器,段选(a-h)由P0口控制,位选由P2.2-P2.7控制。数码管由2N5401驱动。 5.键盘电路设计。 6个按键,P2.2-P2.7接6个按键,P3.4接公共端,采用动态扫描方式检测键盘。 6.系统软件设计。 系统初始化模块,键盘扫描模块,数据采集模块,标度变换模块、显示模块等。 三.设计报告要求 设计报告应按以下格式书写: (1)封面; (2)设计任务书; (3)目录; (4)正文;

系统设计实验报告

系统设计实验报告——远程在线考试系统

目录软件需求说明书························1 引言··························· 1.1编写目的······················· 1.2背景························· 1.3定义························· 1.4参考资料······················· 2 程序系统的结构························ 3 程序设计说明·························

1引言 1.1编写目的 本文档的编写目的是为远程在线考试系统项目的设计提供: a.系统的结构、设计说明; b.程序设计说明; c. 程序(标识符)设计说明 1.2背景 随着网络技术的飞速发展,现在很多的大学及社会上其它的培训部门都已经开设了远程教育,并通过计算机网络实现异地教育。但是,远程教育软件的开发,就目前来说,还是处于起步的阶段。因此,构建一个远程在线考试系统,还是有很大的实际意义的。 根据用户提出的需求,本项目组承接该系统的开发工作 a.开发软件系统的名称:远程在线考试系统 b.本项目的任务提出者:福州大学软件学院 c.用户:各类大专院校学校、中小学校。 1.3定义 远程在线考试系统 远程在线考试系统是基于用Browser/Web模式下的,可以实现考试题库管理、多用户在线考试、自动阅卷功能的系统。

1.4参考资料 ?GB 8566 计算机软件开发规范 ?GB 8567 计算机软件产品开发文件编制指南?软件设计标准 ?《ASP与SQL-Server2000》清华大学出版社?《可行性研究报告》 ?《项目计划文档》 ? 2程序系统的结构 3程序1(标识符)设计说明

3-系统分析实验报告

管理信息系统实验报告 实验3 系统分析 课程名称:管理信息系统 指导教师:王玮 班级:信管1401 学号: 姓名:唐赛赛 时间: 2016.04.06 地点: 3 号机房

一、实验目的 1.了解开发Visio解决方案的基本概念和关于Visio工具的一些基本的操作和应用; 2.掌握系统分析阶段数据流程图的画法; 二、实验步骤和实验结果: 使用Visio中提供的“组织结构图”模具,绘制下面例题的组织结构图,附在图后。 2、使用Visio绘制“业务流程图模具”和“数据流程图模具”(1)创建“业务流程图模具” 先在“框图”-〉“基本形状”中找到圆角矩形,右击选择“添加到我的形状”-〉“添加到新模具”。之后出现“另存为”对话框,把新模具命名为“业务流程图”,把圆角矩形形添加到了新模具“业务程图”中。用同样的思路,先在“框图”-〉“基本形状”中找到圆形,右击选择“添加到我的形状”-〉“添加到模具“业务程图”中;在“框图”-〉“基本形状”找到矩形,在“流程图”中的“IDEFO图表形状”找到动态连接线,在“流程图”中的“SDL图表形状”中找到文档,多文档,添加到模具“业务程图”中。可以通过设置“动态连接线”属性来改变其形状。如下图:

添加完成后,我们就可以在画业务流程图时打开该模具,业务流程图所有的元素都会在一个模具中显示出来。(2)创建“数据流程图模具”先在“框图”-〉“基本形状”中找到圆形(或是“流程图”中的“混合流程图形状”中找到外部实体2 ),右击选择“添加到我的形状”-〉“添加到新模具”(注,使用外部实体2来表示外部实体的时候,请将之旋转180度使用)。之后出现“另存为”对话框,把新模具命名为“数据流程图”,这样我们就把圆形形添加

面向对象分析与设计实验报告

面向对象分析与设计实验报告 题目:宿舍管理系统 学号:200*********** 姓名:****** 班级:09软件*****04 完成时间:2011.11.09

目录 1 系统功能需求 (3) 1.1管理系统模块 (3) 1.2查询学生模块 (3) 1.3学生管理模块 (4) 1.4资料修改模块 (5) 1.5楼栋管理模块 (6) 1.6出入登陆模块 (6) 2 建立需求模型 (7) 2.1 划分子系统 (7) 2.2 识别参与者 (8) 2.3 识别用况 (8) 2.4 对需求进行捕获与描述 (9) 3 系统分析 (11) 3.1 寻找类 (11) 3.2 建立状态机图 (12) 3.3 建立类图 (12) 3.4 建立顺序图 (13) 4 系统设计........................................................................... 1错误!未定义书签。 4.1 问题域部分设计 (14) 4.2 人机界面部分设计 (14) 5 总结 (16) 参考文献 (17)

1.系统的功能需求 我校学生公寓现为手工管理,效率低、易出错、手续繁琐,而且耗费大量的人力,物力,财力。故设计一个学生公寓管理系统,管理学生住宿情况,员工情况,处理学生离校,管理人员来访情况等功能。通过此系统,后勤人员可以对学生公寓的各项情况实行电脑化管理,以提高工作效率,也使得公寓管理所需的各项信息能方便快速进行录入,查询,删除和更新。 面对学生公寓管理工作的特点以及该管理工作的具体问题, 本系统可以解决以下问题: (1)录入公寓各学生的基本情况。 (2)全面查询学生的基本情况。 (3)对学生离校进行处理。 (4)每学期对学生住宿进行注册。 (5)对来访人员进行出入管理。 (6)对学生的财务进行登记管理。 (7)对楼栋物资和楼栋的管理。 (8)对各项情况进行修改,删除,更新。 (9)友好的操作界面, 以及简单快速的操作. (10)多种查询方式。 本系统针对学生公寓管理日常的工作程式, 对学生公寓的各项情况例如:学生信息,学生个人财产信息,来访人员信息等进行有效管理,并能通过各方法进行快速方便的查询。使学生公寓管理工作运作简明、清晰,各状况一目了然,使学生公寓管理工作更加科学化、规范化。 1.1管理系统模块:实现用户退出功能。 1.2查询学生模块:该模块包括五个子模块 1.按学号查询——实现按学号查询学生信息 2.按姓名查询——实现按姓名查询学生信息 3.按学生班级查询——实现按学生班级查询学生信息 4.按家庭住址查询——实现按家庭住址查询学生信息 5.混合查询——实现按混合查询学生信息

数据采集系统实验报告

学院名称: 电气信息工程学院 专 业: 测控技术与仪器 班 级: 09测控1W 姓 名: 胡建兵 学 号: 09314111 指导教师姓名: 朱 雷 2012 年 11 月 JIANGSU TEACHERS UNIVERSITY OF TECHNOLOGY 数据采集系统实验报告

实验2——A/D采集模块设计 一.实验目的 学习用状态机实现对ADC0809,AD574A等A/D转换器的采样控制。 二.实验原理 图1和图2分别为ADC0809的引脚图,转换时序图和采样控制状态图。时序图中,START为转换启动控制信号,高电平有效;ALE为模拟信号输入选通端口地址锁存信号,上升沿有效;一旦START有效后,状态信号变EOC变为低电平,表示进入状态转换,转换时间约为100us。转换结束后,EOC将变为高电平。此外外部控制可使OE由低电平变为高电平(输出有效),此时,ADC0809的输出数据总线D【7...0】从原来的高阻态变为输出数据有效。由状态图也可以看到,状态st2中需要对ADC0809工作状态信号EOC进行测试,如果为低电平,表示转换没有结束,仍需要停留在st2状态中等待,直到变成高电平后才说明转换结束,在下一时钟脉冲到来时转向状态st3。在状态st3,由状态机向ADC0809发出转换好的8位数据输出允许命令,这一状态周期同时可作为数据输出稳定周期,以便能在下一状态中向锁存器锁入可靠的数据。在状态st4,由状态机向FPGA中的锁存器发出锁存信号(LOCK的上升沿),将ADC0809的输出数据进行锁存。 图2.1 ADC0809工作时序

图2.2 控制ADC0809采样状态图程序如图实例1所示,其结构框图如图3所示。 图2.3 采样状态机结构框图

系统分析实验报告

天津职业技术师范大学课程设计大学学籍管理系统的设计与开发 专业:软件工程 班级学号:软件1002-17 学生姓名:靳利强 指导教师:龚良波老师 二〇一三年七月

一.需求分析 1.课程名称:大学教务信息系统的设计与开发 2.设计目的: 为方便学校做好学生学籍管理工作,设计一个学生学籍管理系统,在设计过程中作了系统分析和总体设计,软件设计采取模块化的设计思路。 3.需求概述 该学生学籍管理系统主要对学生学籍信息、成绩信息进行管理,提供一个平台,供学籍管理人员增删改查学生信息、学生成绩信息。系统分为学生信息管理、学生成绩管理、信息查询等几个模块。学籍管理人员登录成功后可以对学生信息管理、学生成绩管理、信息查询等模块进行操作,如学生信息添加、修改、删除和查询;学生成绩登记、修改、删除和查询;查询信息等。 4功能需求: 1)功能齐全:界面操作灵活方便,设计包括以下基本功能: 2)学生信息管理、教师信息管理、财务信息管理、班级信息管理、课 程信息管理、成绩信息管理、打印信息管理、教室信息管理、综合信息查询、系统管理等,至少实现其中的三个功能,且每个功能至少包括两个子功能。 3)按照软件工程的要求进行分析、设计和开发。 4)界面友好:界面友好、输入有提示、尽量展示人性化。 5)可读性强:源程序代码清晰、有层次、主要程序段有注释。

6)健壮性好:用户输入非法数据时,系统应及时给出警告信息。 二.概要设计 1.功能模块: 2数据流图: (1)学生端

(2)管理员端

学生端功能: A 登录,学生登录后,验证成功,进入其信息展示页。 管理员端功能: B 登录,管理员登录后,验证成功,进入学生信息列表,可以对学生信息进行修改,删除,按班级查询,按学号查询,按名字查询。上传图片,更新图片等操作。 三.详细设计及实现 数据库设计: 学生表: 教师表:

面向对象技术-实验报告

实验报告 课程名称Java程序设计 实验项目实验一类、对象与构造函数 实验二派生类与继承 系别___________理学院_____________ 专业/班级_________电技1302____________姓名______蔡超月____________ 实验日期_______________________ 成绩_______________________ 指导教师夏红科

一、实验题目:实验一类、对象与构造函数 实验二派生类与继承 二、实验内容: (1)创建一个雇员类,该类中有数据成员有姓名、家庭住址和邮政编码等,其功能有修改姓名、显示数据信息。 要求:雇员类的定义作为.h保存 雇员类功能函数的实现放在.cpp中。 雇员类的使用放在单独的.cpp文件中,该文件使用#include编译预处理命令包含类定义的头文件,在main()函数中使用雇员类创建几个对象并显示信息。 (2)定义一个哺乳动物类,再由此派生出人类、狗类和猫类,这些类中均有speak()函数,请设计相应的类层次结构并加以实现,观察在调用过程中,到底使用了哪个类的speak()函数。 (3)设计一个能细分为矩形、三角形、圆形和椭圆形的图形类,使用继承将这些图形分类,找出能作为基类部分的共同特征(如宽,高,中心点等)和方法(如初始化、求面积等),并设计多种继承模式来测试继承的属性。 三、程序清单及结果:(需要标明实现程序对应的实验内容,并给出合理的程序注释及运行结果) 1)程序清单及注释 内容1: #include #include using namespace std; class employee { protected: string name1; string address1; string shi1; string sheng1; string post1; char name[10]; char address[20]; char shi[10]; char sheng[10]; char post[7]; int num; public: shuru(); void changename(char str[]); void display();

温度采集实验报告

课程设计任务书 题目基于AD590的温度测控系统设计 系(部) 信息科学与电气工程学院 专业电气工程及其自动化 班级电气092 学生姓名刘玉兴 学号090819210 月日至月日共周 指导教师(签字) 系主任(签字) 年月日

摘要 温度是工业生产和自动控制中最常见的工艺参数之一。过去温度检测系统设计中,大多采用模拟技术进行设计,这样就不可避免地遇到诸如传感器外围电路复杂及抗干扰能力差等问题;而其中任何一环节处理不当,就会造成整个系统性能的下降。随着半导体技术的高速发展,特别是大规模集成电路设计技术的发展, 数字化、微型化、集成化成为了传感器发展的主要方向。 以单片机为核心的控制系统.利用汇编语言程序设计实现整个系统的控制过程。在软件方面,结合ADC0809并行8位A/D转换器的工作时序,给出80C51单片机与ADC0908并行A /D转换器件的接口电路图,提出基于器件工作时序进行汇编程序设计的基本技巧。本系统包括温度传感器,数据传输模块,温度显示模块和温度调节驱动电路,其中温度传感器为数字温度传感器AD590,包括了单总线数据输出电路部分。文中对每个部分功能、实现过程作了详细介绍。 关键词:单片机、汇编语言、ADC0809、温度传感器AD590

Abstract Temperature is the most common one of process parameters in automatic control and industrial production. In the traditional temperature measurement system design, often using simulation technology to design, and this will inevitably encounter error compensation, such as lead,complex outside circuit,poor anti-jamming and other issues, and part of a deal with them Improperly, could cause the entire system of the decline. With modern science and technology of semiconductor development, especially large-scale integrated circuit design technologies, digital, miniaturization, integration sensors are becoming an important direction of development. In the control systems with the core of SCM,assembly language programming is used to achieve the control of the whole system.Combining with the operation sequence of ADC0809,the interface circuit diagrams of 80C51 SCM and ADC0809 parallel A/D conveger ale given.The basic skills of assembly language programming based on the operation se—quenee of the chip ale put forward.This system include temperature sensor and data transmission, the moduledisplays

操作系统课程设计实验报告

河北大学工商学院 课程设计 题目:操作系统课程设计 学部信息学部 学科门类电气信息 专业计算机 学号2011482370 姓名耿雪涛 指导教师朱亮 2013 年6月19日

主要内容 一、设计目的 通过模拟操作系统的实现,加深对操作系统工作原理理解,进一步了解操作系统的实现方法,并可练习合作完成系统的团队精神和提高程序设计能力。 二、设计思想 实现一个模拟操作系统,使用VB、VC、CB等windows环境下的程序设计语言,以借助这些语言环境来模拟硬件的一些并行工作。模拟采用多道程序设计方法的单用户操作系统,该操作系统包括进程管理、存储管理、设备管理、文件管理和用户接口四部分。 设计模板如下图: 注:本人主要涉及设备管理模块

三、设计要求 设备管理主要包括设备的分配和回收。 ⑴模拟系统中有A、B、C三种独占型设备,A设备1个,B设备2个,C设备2个。 ⑵采用死锁的预防方法来处理申请独占设备可能造成的死锁。 ⑶屏幕显示 注:屏幕显示要求包括:每个设备是否被使用,哪个进程在使用该设备,哪些进程在等待使用该设备。 设备管理模块详细设计 一、设备管理的任务 I/O设备是按照用户的请求,控制设备的各种操作,用于完成I/O 设备与内存之间的数据交换(包括设备的分配与回收,设备的驱动管理等),最终完成用户的I/O请求,并且I/O设备为用户提供了使用外部设备的接口,可以满足用户的需求。 二、设备管理函数的详细描述 1、检查设备是否可用(主要代码) public bool JudgeDevice(DeviceType type) { bool str = false; switch (type) { case DeviceType.a: {

系统分析实验报告2016

本科实验报告 课程名称:系统分析与设计 实验项目:《》实验实验地点: 专业班级:学号: 学生姓名: 指导教师: 2016年11月日

一、实验目的 通过《系统分析与设计》实验,使学生在实际的案例中完成系统分析与系统设计中的主要步骤,并熟悉信息系统开发的有关应用软件,加深对信息系统分析与设计课程基础理论、基本知识的理解,提高分析和解决实际问题的能力,使学生在实践中熟悉信息系统分析与设计的规范,为后继的学习打下良好的基础。 二、实验要求 学生以个人为单位完成,自选题目,班内题目不重复,使用UML进行系统分析与设计,并完成实验报告。实验报告(A4纸+电子版)在最后一次上课时提交(10周)。 三、实验主要设备:台式或笔记本计算机 四、实验内容 1 选题及项目背景 学生填写自选题目 2 定义 学生填写(对自选项目系统进行描述200-400字) 3 参考资料 学生填写 4 系统分析与设计 4.1需求分析 4.1.1识别参与者 学生填写 4.1.2 对需求进行捕获与描述 学生填写时删除以下括号内容 (内容要求1:对每个用例进行概要说明,参考以下格式: 用例名称:删除借阅者信息执行者:管理员 目的:完成一次删除借阅者信息的完整过程。) (内容要求2:选择其中一个用例(如下订单)给出其用例描述。格式参考下表

) 4.1.3 用例图 通过已掌握的需求,初步了解系统所要完成的功能。下面给出用例图。 4.1.4 分析与讨论 1)建模用例图的步骤、方法? 2)如何识别系统的参与者?应该如何划分用例,应注意哪些问题? 3)心得 4.2 建立对象模型 4.2.1 候选类的数据字典 学生填写 4.2.2定义类 (内容以“书籍信息”类为例列出该类的属性和操作如下: “书籍信息”类 ?属性 国际标准书号(ISBN):文本(String) 书名(name):文本

面向对象程序设计实验报告

. , 面向对象程序设计实验报告 班级:计算机科学与技术11-5 学号:0505 ( 姓名:高冉冉 日期:2012/7/2 \

题目3: 1.问题描述: 假设有图书类Book,包括书名、出版社名称、作者姓名、图书定价等数据成员。编程序完成Book类的设计,从键盘读入10本图书的各项数据,并将这10本图书的相关数据写入磁盘文件中,然后从中读出各图书数据,计算所有图书的总价值,并显示每本图书的详细信息,每本图书的信息显示在一行上。 2.实现代码: #include · #include #include #include<> using namespace std; class Book { private: char bookName[20]; etPrice(); - ioFile<>book[i]; cout<

数据采集与传输系统实验报告

(此文档为word格式,下载后您可任意编辑修改!) 数据采集与传输系统 摘要 该数据采集与传输系统以89C51及89C2051为核心,由数据采集模块、调制解调模块、模拟信道、测试码发生器、噪声模拟器、结果显示模块等构成。在本方案中仅使用通用元器件就较好的实现了题目要求的各项指标。其中调制解调模块、噪声模拟器分别采用单片机和可编程逻辑器件实现。本数据采集与传输系统既可对8路数据进行轮检,也可设置为对一路数据单独监控。本系统硬件设计应用了EDA 工具,软件设计采用了模块化的编程方法。传输码元速率为16kHz~48kHz的二进制数据流。另外,还使用了“1”:“01”、“0”:“10”的Manchester编码方法使数据流的数据位减少,从而提高传输速率。

一、方案设计与论证 首先,我们分析一下信道与信噪比情况。本题中码元传输速率为16k波特,而信号被限定在30k~50kHz的范围内,属于典型的窄带高速率数字通信。而信噪比情况相对较好。这是因为信号带宽仅为20kHz,而噪声近似为0~43kHz()的窄带白噪声,这样即使在信号和噪声幅度比值为1:1的情况下,带内的噪声功率仍然比较小,所以系统具有较高的信噪比。 方案一: 常用的数字调制系统有:ASK、FSK、PSK等。其中FSK具有较强的抗干扰能力,但其要求的的带宽最宽,频带利用率最低,所以首先排除。ASK理论上虽然可行,但在本题目中,由于一个码元内只包括约两个周期的载波,所以采用包络检波法难以解调,也不可行。另外,对于本题目,还可以考虑采用基带编码的方法进行传输,如HDB3码,但这种编码方法其抗干扰能力较差,因此也不太适合。 方案二: PSK调制方式具有较强的抗干扰能力,同时其调制带宽相对也比较窄,因此我们考虑采用这种调制方式。为了简化系统,在实际实现时,我们采用了方波作为载波的PSK调制方式。当要求的数据传输速率较低(≤24kbps)时,对原始数据处理的方法如下:

管理信息系统分析实验报告

《管理信息系统》 实验二 题目:系统分析 专业:信息管理与信息系统 班级:1106班 姓名 ************************* 指导教师:贺玉珍老师 完成日期:2014.4.28

运城学院超市管理系统设计分析说明书 一、系统目标:随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。 超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。 本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。 二、系统的初步调查 通过实地参观和学习,对超市的整体情况进行调研。了解超市的组织机构划分,充分了解超市进销存的流程的整体情况,对开发新系统的态度等。通过召开座谈会和个人访谈方法了解各个部门的主要职能及具体运作方式、过程等。 进行初步调研的具体内容为: (1)员工的规模:大约有多少员工,有多少是稳定的,有多少是浮动的; (2)员工管理人员的数量; (3)超市的商品销售状况 (4)客户编码方式; 三、可行性分析: 1.技术可行性研究,在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的超市对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。 2经济可行性研究,因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的,(1)超市有能力承担系统开发费用,(2)新系统将为企业带来经济效益3操作可行性研究,本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个超市管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的

《面向对象分析与设计》实验报告

《面向对象分析与设计》 实验报告 班级:计科09-4班 姓名:郑翼 学号:08093435

实验一用例图 一、实验目的 1.学会分析系统中的参与者和用例 2.掌握用例图的绘制方法 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 画出A TM系统的用例图 四、实验截图

五、实验体会 通过这次实验,理解了用例图的基本用法,并且初步掌握了Rational Rose软件的使用。对以后面向对象的学习都是十分重要的。

实验二交互图 一、实验目的 1.学会用协作图实现用例 2.掌握顺序图的绘制方法以及顺序图和协作图的相互转换。 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 画出A TM取款的顺序图,并转换为协作图。 四、实验截图 顺序图

协作图 五、实验体会 通过实验,学会了用协作图实现用例,掌握了顺序图的绘制方法以及顺序图和协作图相互转换的方法,进一步的加深了对软件的使用。

实验三类图 一、实验目的 1.理解类的基本概念 2.理解类间的关系 3.掌握类图的绘制方法 二、实验器材 1. 计算机一台; 2. Rational Rose 工具软件; 三、实验内容 分析选课系统中的类及关系,然后画出它们的类图。 四、实验步骤 1.分析 在选课系统中,通过分析可抽象出如下几个类: 1.学生类 2.管理员类 3.课程类 学生类和管理员类的属性较容易分析,这里只列出课程类的属性和方法:(1)课程名称 (2)开课教室 (3)课程号 (4)授课教师 (5)选课的学生 (6)开课起始时间 (7)允许选课的学生人数 (8)设置课程号 (9)设置课程名称 (10)查询课程号

数据采集AD转换实验报告

学生实验报告册 课程名称:___________________________________ 学院:______________________________________ 专业班级:___________________________________ 姓名:______________________________________ 学号:______________________________________ 指导教师:___________________________________ 成绩:______________________________________ 学年学期:2017-2018学年秋学期 重庆邮电大学教务处制

STAB! CUt OK ⑵ ADC0809引脚结构 ADC0809各脚功能如下: D7 ~ D0 : 8位数字量输出引脚。IN0 ~ IN7 : 8位模拟量输入引脚。 VCC +5V工作电压。GND地。 REF( +):参考电压正端。REF(-):参考电压负端。 START A/D转换启动信号输入端。 ALE地址锁存允许信号输入端。(以上两种信号用于启动A/D转换). EOC转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。 OE输出允许控制端,用以打开三态数据输出锁存器。 CLK时钟信号输入端(一般为500KHZ。 A B、C:地址输入线。 ⑶ADC0809对输入模拟量要求: 信号单极性,电压范围是0- 5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。 地址输入和控制线:4条 ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B, C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0 —IN7上的一路模拟量输入。通道选择表如下表所示。

管理信息系统实验报告分析

实验报告 课程:管理信息系统 一、实验目的 验证有关概念和理论,加深对概念和知识的理解和认识;熟悉和掌握Visual Basic 6.0 软件的使用方法;初步具备信息管理知识和制作数据字典、系统数据流程图的能力。运用课程讲授的管理信息系统的系统分析方法、模块化系统设计方法以及系统的调试方法进行人事档案管理信息系统的分析、设计、开发、实现与调试。 二、实验方法 面向对象法 三、实验环境及开发工具 1.硬件环境 在最低配置的情况下,系统的性能往往不尽如人意,但现在的硬件性能已经相当的出色,而且价格便宜,因此通常给服务器的配置高性能的硬件。 处理器:Interl Pentium II 266 MX 或更高 内存:64M 硬盘空间:2 GB 显卡:SVGA 显示适配器 显示器:液晶17寸 2.软件环境 操作系统:Windows/98/ME/2000/XP或更高版本 数据库:Microsoft Access 2000 3.实验开发工具:Visual Bisic 6.0程序系统 四、实验内容

(一)、系统分析 1、系统数据流程图 2、数据字典 3、系统中所有实体(包括实体的属性)以及实体之间的联系类型分析 人员的个人资料经过专业的处理部门的处理形成个人档案。档案包括自然情况,工作情况,简历,政治情况等各方面信息,内容比较庞大复杂。将档案信息传送到人员信息库。同时还综合考虑档案管理工作的性质,总结归纳出所需实现

的功能。为人事档案进行服务,对人事的变动、人事资料、以及人事资料的查询,统计等功能。总体上说具有编辑,查询,用户管理,图表统计等功能。然后将最终结果提交到人力资源管理部门,由人力资源管理人员进行审查,以便于对职工的调配。 4、典型处理的表达 档案完整添加用户档案到档案库 个人信息成功添加到档案库 修改用户档案信息 失败退回用户档案 退回用户档案 (二)、系统设计 1、子系统划分(或功能划分或模块划分) 功能划分 1、用户管理 功能:设置使用人事管理系统的用户及其使用权限。整个人事管理系统由多个功能模块组成,不同的模块完成不同的功能,所以可以为不同的职工分配不同的功能,使其具有不同的权限,完成其权限所对应的功能,从而很好地管理好整个系统。 2、辅助表管理 功能:通过它的这个功能可以有效的对本单位人事部门的扩充进行及时的计算机管理。只要管理员进行简单的数据字段添加即可。辅助表管理功能是高级管理员及中级管理员拥有的权限,它的功能是对数据库进行新表的添加。 3、档案编辑 功能:档案编辑模块中有4个子模块。他们是档案卡片、个人简历、家庭成员、历史档案等功能。这些功能因管理员的权限不同所表示出的功能使用也不同,普通管理员没有数据修改及删除的权利。在这些功能里详细的记录了所有单位员工的资料。 4、档案查询 功能:对档案卡片的查询功能,在这里可以查到符合程序要求的任何信息。

面向对象程序设计,实验报告

安徽工业大学 面向对象程序设计实验报告 实验课程:《C++语言程序设计》 学生姓名: 学号: 专业班级: 2011年 12 月 18 日

目录 实验1熟悉C++开发环境及简单程序设计和应用 (3) 实验2基本控制结构程序设计 (6) 实验3 类与对象 (10) 实验4友元函数与友元类 (13) 实验5数组与指针 (16) 实验6静态成员 (20) 实验7类的继承 (22) 实验8多态 (24)

安徽工业大学实验报告 学生姓名:张虹学号:6100409033 专业班级:网络工程091 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 实验1熟悉C++开发环境及简单程序设计和应用 一、实验目的 1.初步了解C++程序的编译、连接和运行的过程。 2.掌握和理解C++程序的结构。 二、实验内容 1.使用VC 2.运行一个简单的C++程序 3.编程求出对任意输入的两个整数,求出该两个整数的最大公约数和最小公倍数 三、实验步骤 1.启动VC 或

2.建立工程并输入以下程序 #include using namespace std; void main() { int i(1), sum(0); do { sum+=i; i++; }while(i<=10); cout<<"sum="<

3.保存文件、运行程序、退出VC程序、打开已经存在的文件 4.编程求出对任意输入的两个整数,求出该两个整数的最大公约数和最小公倍数编写以下代码: #include using namespace std; void main() { int a,b,c,d,i; cout<<"a="; cin>>a; cout<<"b="; cin>>b; for(i=1;i<=a && i<=b;i++) if(a%i==0 && b%i==0) c=i; for(i=a*b;i>=a && i>=b;i--) if(i%a==0 && i%b==0) d=i; cout<<"a和b的最大公约数为"<

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