太原理工大学软件开发环境与工具实验报告2016_第1页
太原理工大学软件开发环境与工具实验报告2016_第2页
太原理工大学软件开发环境与工具实验报告2016_第3页
太原理工大学软件开发环境与工具实验报告2016_第4页
太原理工大学软件开发环境与工具实验报告2016_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科实验报告课程名称: 软件开发环境与工具 实验项目:实验一、CASE工具PowerDesigner的使用 实验二、熟悉SQL语言 实验三、利用Axure制作网页原型 实验四、利用Visual Studio开发windows控制台应用程序 实验五、利用Visual Studio 2010开发Windows Form应用程序实验六、利用Visual Studio 2010进行Web应用程序设计实验地点: 逸夫楼501 专业班级: 软件1415班 学号:2014005960 学生姓名: 朱伟 指导教师: 李君婵 2016年 12 月 15 日实验一 CASE工具PowerDesiner的使用一、实

2、验目的安装PowerDesiner,并了解掌握PowerDesiner的主要功能和使用方法。二、实验设备与环境HP笔记本计算机+PowerDesiner三、实验要求1安装PowerDesiner。2了解CDM的主要设计元素和设计过程。3熟悉模型转换工具的使用。4熟悉P DM的主要设计元素和设计过程。5了解设计报告的生成方法。四、实验内容设计学生住宿管理的CDM、PDM (PDM模型包括:、通过CDM模型生成;、直接建立)。1学生管理(1)建立班级、院、专业的CDM、PDM模型;(2)建立学生信息的CDM、PDM模型,包括学号、姓名、院、专业、性别、 年级、班级、出生年月、籍贯、住宿费、押金、录

3、入日期及宿舍编号 等内容。2 宿舍管理 建立宿舍信息的CDM、PDM模型,包括有宿舍编号、宿舍名称、宿舍电 话、应住人数、录入日期等栏目。3 对学生管理、宿舍管理、班级、院、专业实体(或表)之间建立联系。五、实验步骤1运行PowerDesiner安装文件。2按照安装向导,安装PowerDesiner。3安装成功之后,进入PowerDesiner的CDM设计界面,了解CDM的主要设 计元素和设计过程。4分析住宿管理的需求,分析其中应含有的实体及其属性,建立实体联系, 设计住宿管理的CDM。5检测CDM,并进行模型转换,生成PDM。6优化PDM。7生成设计报告。8生成数据库创建脚本。实验结束后,整

4、理实验报告。6、 实验过程和结果1、 根据要求,运用case工具powerdesigner制作的学生住宿管理的CDM如下图:2、 检测CDM:3、转换工具转化后的学生宿舍管理的PDM如下图:4、 生成设计报告:5、 生成数据库创建脚本:7、 思考题:1、 CDM和PDM有什么区别?CDM是概念模型,用于数据库的概念结构设计阶段,表现数据库的逻辑结构。类似于数据库中的E-R图,CDM独立于DBMS与应用软件。PDM是物理模型,表现数据库的物理结构。PDM提供操作PDM与智能商务PDM,前者用于OLTP(联机事务处理)的物理结构设计,后者用于OLAP(联机分析处理)的物理结构设计。2、 如何使用P

5、DM生成创建数据库对象的脚本?在PowerDesigner的主窗体中,选择“Database”-“Generate Database”命令启动生成数据库的工具。然后设置产生数据库的一般脚本设置,脚本存放的位置。8、 实验心得:通过本次实验,基本掌握了PowerDesigner的使用,并且了解到怎么使用PowerDesigner建立CDM和PDM图,也学会了CDM如何转化成PDM、生成报告、以及生成数据库文件等等。刚开始做的时候,因为不熟悉,在定义主键的时候弹出错误提示框“This data item is already used”后来通过百度才将这个问题解决。在页面上右击,选择Model o

6、ptions,打开Model options窗口,在左侧树结构里第一个Model Settings里找到Data Item,去掉Unique Code的选项就可以正常。从这次项目设计的过程中,我能够深刻认识到今后一定要全面思考问题。在今后的学习工作中,要多接触各类项目,分析其建模、关系以及架构设计,并学会不同项目设计的流程。实验二 熟悉SQL语言一、实验目的学习简单SQL语句的使用,为后续学习和实验奠定基础。二、实验设备与环境HP笔记本计算机+Microsoft SQL Server三、实验要求编写简单的SQL语句,实现实验要求,掌握SELECT、INSERT、UPDATE、DELETE等语句

7、的用法。四、实验步骤:1.打开企业管理器。2.将教师提供的数据文件恢复成SM数据库。3.打开SQL Server 查询分析器。4.选择SM数据库。5.按照要求,在查询分析器中输入SQL语句,并执行,检查执行结果。6.保存正确执行的SQL语句。7.实验结束后,整理实验报告。五、实验过程和结果:1.编写一条SELECT语句,从表Student中查询满足条件:性别为女并且班级编号为030001的记录。select * from student where CLno= 030001 and SSex=女2. 编写一条SELECT语句,从表Course中查询满足条件:课程名称为计算机网络的记录,每条记录

8、只显示课程编号、课程名称、课程介绍3列。select Cno,Cname,CInfo from course where CName=计算机网络3. 编写一条SELECT语句,从表Student中查询满足条件:姓名为张强、赵丽、 周红、刘宏的学生的记录,并将结果存入自动生成的表Student3中。select * into student3 from student where Sname IN (张强,赵丽,周红,刘宏)4. 编写一条SELECT语句,从表Teacher中查询满足条件:TTcode列为空的记录并且DNO为0005的记录。select * from teacher where

9、TTcode is null and DNO=00055. 编写一条SELECT语句,从表Teacher和表TC中查询数据:显示教师与其讲授课程的基本信息。select * from teacher a , tc b where a.tno=b.tno6. 向表Student中添加数据:姓名:李梅,出生日期:1986-9-2,学号:03011,班级编号:030006。insert into student(Sname,Sbir,SNo,CLno)values(李梅,1986-09-02,03011,030006)7. 删除数据表Student中计算机专业的男学生的信息。Delete from

10、student where SSex=男8. 修改数据表Student中李刚的性别为男。update student set Ssex=男 where Sname=李刚6、 思考题:如何对查询结果进行排序?应当使用 Order By 语句对结果进行排序。如:查询SC表中的所有字段,在结果中显示所有及格学生的记录,并按学号降序排序。代码如下:Select * from sc where score=60 order by Sno desc.7、 实验心得: 通过本次实验,基本学会了使用SQL语言,掌握了SQL对数据进行操作的方法,掌握了用SQL创建各种查询的方法,学会利用已有的数据资源,使用SQ

11、L语句进行数据定义、数据更新及各种查询操作。现在学到的还只是一些基础性的知识,还应该更加努力,争取学到更深入、更专业的知识。实验三 利用Axure制作网页原型一、实验目的:安装Axure,熟悉Axure的开发环境与主要功能。熟练掌握Axure页面设计常用组件、页面间跳转、变量设置、动态面板等用法。二、实验设备与环境:HP笔记本计算机+Axure RP Pro 7.0三、实验要求:1、安装Axure。2、熟悉Axure开发环境与熟悉常用组件。掌握利用Axure进行原型设计的方法。四、实验步骤:1、安装Axure;2、运行Axure;3、设计百度主页面,相关设计素材见实验指导压缩包;4、设计教务系

12、统相关页面;5、生成原型,并使用浏览器检查原型系统。五、实验过程和结果:1、设计实现如图所示的百度主界面原型.(1)将图片和文本框以及提交按钮拖入主窗体,并且设置他们的交互行为,为他们添加当鼠标单击时打开另一个链接的用例:(2)发布预览,在浏览器页面的显示效果如下:2、设计实现如图所示的教务系统中系统登录、主界面、查询等页面原型(1)系统登录页面:a、将素材添加到主窗体中。b、设置页面交互样式为当页面载入时,设置焦点在账号对应的文本框中。c、在重设按钮上添加当鼠标单击时账号和密码所对应的文本框内容为空,即清空文本框。d、添加一个隐藏的动态面板,用来实现账号密码输入错误时的交互行文。e、在登录按

13、钮上设置一系列当鼠标单击时的交互行为,默认设置的账号为:zhuwei2014005960,密码为:2014005960.当账号和密码错误时,分别给出不同的提示,只有当账号密码正确时才会跳转到系统主页面。当账号和密码为空时点击登录按钮:当只输入了账号,而没有输入密码点击登录按钮时:当只输入了密码,而没有输入账号点击登录按钮时:当账号和密码都输入,但输入的账号不是“zhuwei2014005960”而点击登录按钮时:当输入的账号为“zhuwei2014005960”,但是密码不是“2014005960”而点击登录按钮时:当输入的账号为“zhuwei2014005960”,但是密码是“2014005

14、960”而点击登录按钮时跳转到系统主页面:(2) 系统主页面:将我需留意下面的内容设置成动态面板,当点击我需留意右边的向上的小箭头时,则会隐藏动态面板,将右边概览以下的整体内容设置为动态面板,当单击左侧的向左的箭头时,整个动态面板向左移动。当点击右上方的注销按钮时则会跳转到登录页面。(3) 查询页面:六、思考题1、利用Axure可以进行哪些类型软件的原型设计?Axure RP是一套专门为网站或应用程序所设计的快速原型设计工具, 可以让应用网站策划人员或网站功能界面设计师更加快速方便的建立Web AP和Website的线框图、流程图、原型和规格。2、Axure通过那些方式实现页面或窗体的动态交互

15、?打开Axure,建立你想要设置交互动画的部件,选中并给该部件重命名,点击“部件交互和注释”窗口选择你想用的触发用例;在弹出的窗口,选择触发事件动作组织动作配置动作点击确定,这时候交互窗口就会出现你设置的动画了,点击预览即可查看效果3、简述场景、用例、事件之间的关系?在Axure中,事件可以包含很多用例(case),用例,又可以包含很多动作(action)。不同的用例,比如case1、case2是不会同时发生的,他们都有自己各自发生的条件。一般来说,我们可以指派Condition(条件)来让AxureRP自动判断应该执行哪个用例。所以,在Axure RP中,在一个部件的属性区域的一个事件(例如

16、OnClick或者OnMouseEnter,就类似一个真实事件中的事件)在双击事件后打开的用例编辑器(Case Editor)中,我们可以添加用例。对于每个case,在用例编辑器的Add Action(添加动作)步骤中,我们可以看到很多现成的动作可以添加。7、 实验心得:通过本次实验,基本学会了用Axure设计原型,学会了动态面板的使用,以及设置一些动态交互,刚开始的时候也不怎么会操作,后来从网上找到了视频学习了才开始熟练,也知道了怎么将组件、事件、动作组合起来而达到交互设计的效果。通过这次实验,也知道了设计页面也不是一件简单的事,需要准确的把握像素,对于这款软件的使用,也只是掌握了冰山一角,

17、今后还应该多多练习,多多实践,争取做到对这款软件的熟练运用。实验四 利用Visual Studio开发Windows控制台应用程序一、实验目的安装Visual Studio 2010,熟悉Visual Studio 2010开发环境。 熟练掌握C#的语法、语句结构,并能进行控制台应用程序的编写。二、实验设备与环境HP笔记本计算机+Visual Studio 2010三、实验要求1安装Visual Studio 2010。2熟悉掌握C#的语法、语句结构。3掌握控制台应用程序的设计方法。四、实验步骤1运行Visual Studio 2010安装文件。2按照安装向导说明,完成安装。3打开Visual

18、 studio 2010,进入IDE,熟悉编程环境。4按照要求完成实验内容。五、实验过程和结果利用Visual Studio 2010开发环境,采用C#语言实现以下控制台应用程序。1、编写控制台程序:输入矩形的长和宽,输出矩形的面积和周长。using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication4._1 class Program static void Main(string args) int a, b; Console.Wri

19、teLine(请输入长方形的长:); a = int.Parse(Console.ReadLine(); Console.WriteLine(请输入长方形的宽:); b = int.Parse(Console.ReadLine(); int s, l; s = a * b; l = 2 * a + 2 * b; Console.WriteLine(长方形的面积为:0, s); Console.WriteLine(长方形的周长为:0, l); 2、编写控制台应用程序,输入正整数n,输出 s=1+(1+2)+(1+2+3)+(1+2+3+n)的计算结果。using System;using Sys

20、tem.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication4._2 class Program static void Main(string args) int n, m = 0; long sum = 0; Console.WriteLine(请输入一个正整数:); n = int.Parse(Console.ReadLine(); for (int i = 1; i = n; i+) m += i; sum += m; Console.WriteLine(Sum=0, s

21、um); 3、编写控制台应用程序,输出所有这样的三位数:这个三位数本身恰好等于其每个数字的立方和(例153=13+53+33)。using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication4._3 class Program static void Main(string args) int i, a, b, c, count = 0; for (i = 100; i 1000; i+) a = i / 100; b = (i - a

22、* 100) / 10; c = i % 10; if (i = a * a * a + b * b * b + c * c * c) Console.WriteLine(N=0, i); count+; Console.WriteLine(n这样的数字共有:0位。, count); 六、思考题1、Visual Studio 2010可以开发哪些类型的应用程序?Visual Studio 2010可以编写控制台应用程序、Windows应用程序、ASP.NET Web应用程序、ASP.NET Web服务器应用程序等。下面主要介绍控制台应用程序、Windows应用程序和ASP.NET Web应用程

23、序。2、Visual Studio 2010中怎样展开或折叠代码块?选中代码后,按两次ctrl+m即可展开或者折叠代码块3、命名空间的作用是什么?如何定义或引入命名空间?(1)命名空间的作用:命名空间通过把类放入命名空间,这样既可以把相 关的类组织起来,使应用程序能方便地使用和管理,并可以避免命名 冲突。(2)方法一:直接定位命名空间的位置,在该方法中任何一个命名空间都 可以在程序代码中直接使用。 方法二:使用using关键字,能够引用给定的命名空间或创建命名空 间的别名。4、简述标识符命名规范。(1)只能使用字母(包括大写、小写)、数字和下划线(“_”)这三类字 符组成。(2)必须以字母、下

24、划线(“_”)或开始。(3)Visual C#的标识符是大小写敏感的,因此必须严格区分大小写。(4)标识符不能使用C#中预定义的关键字名,但以符号开头的标识符,允 许使用关键字作为标识符(5)标识符不可与Visual C#中的类库名相同。7、 实验心得: 通过本次实验,学会了VisualStudio2010的基本使用方法。尽管在编程过程中遇到很多不同的问题,但最终都一一化解,让我认识到只有多多练习才能写好程序。通过编写大量的C#语言开始熟悉。可以更加快速的编译程序。通过学习和不断的编写程序,逐渐掌握了C#语言的主要思想。使编写程序更加快速,并且正确率也不断提高。实验五 利用Visual Stu

25、dio 2010开发Windows Form应用程序一、实验目的熟悉Visual Studio 2010,掌握常用控件的属性、事件,并熟练进行Windows窗体应用程序的编写。1.熟练掌握C#窗体和各种常用控件的属性、方法和事件。2.掌握C#中使用各种常用控件设计界面的方法。3.掌握C#中窗体事件处理机制。二、实验设备与环境HP笔记本计算机+Visual Studio 2010三、实验内容熟悉利用C#进行Windows窗体应用程序的设计方法,了解Windows 窗体应用程序的组成。四、实验步骤1. 进入C#窗体应用程序设计环境。2. 熟悉Windows窗体程序开发环境。3. 从工具箱中选择合适

26、的控件,进行界面设计。4.根据要求,添加相应的事件代码,完成实践内容。五、实验过程和结果1. 创建一个Windows窗体应用程序,向其中添加一个窗体,实现用户登录(输入用户名和口令,假设正确的用户名/口令为zy1001_2/10011002),并给出相应的提示信息。规定用户错误输入不超过3次。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;usin

27、g System.Windows.Forms;namespace WindowsFormsApplication5._1 public partial class Form1 : Form int i = 1; public Form1() InitializeComponent();/初始化组件 private void Form1_Load(object sender, EventArgs e) private void label1_Click(object sender, EventArgs e) private void button1_Click(object sender, Ev

28、entArgs e) if (i 4) if (textBox1.Text = zhuwei & textBox2.Text = 2014005960) this.Visible = false; Form2 frm2 = new Form2();/首先将另一个窗口Form2实例 frm2.Show();/打开窗口 else this.label3.Visible = true; this.label3.Text = 密码输入错误 + i + 次; i+; else this.label3.Text = 密码输入错误次数过多; private void label3_Click_1(objec

29、t sender, EventArgs e) 2. 设计一个窗体,实现将学生完整信息的添加到sm数据库中,( sm数据库为实验2中教师所提供的数据库),要求使用Command类的ExecuteNonQuery()方法和操作DataSet数据集两种方法来实现.(1) 登录界面using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.W

30、indows.Forms;using System.Data.SqlClient;namespace WindowsFormsApplication5._2 public partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) /数据库连接字符串(引号中的字符串为之前复制的那段字符) /Data source=服务器名,Initial catalog=数据库名,User Id=sqlserver连接名, /Pas

31、sword=数据库连接密码,integrated Security=True string str = Data Source=zhuwei-pc;Initial catalog=sm;integrated Security=True; SqlConnection conn = new SqlConnection(str); conn.Open(); string selectsql = Select * from login where username = + textBox1.Text + and password= + textBox2.Text + ; SqlCommand cmd

32、= new SqlCommand(selectsql, conn);/SqlCommand对象允许你指定在数据库上执行的操作的类型。 cmd.CommandType = CommandType.Text; /这就是告诉cmd执行的sql是你赋给CommandText的值里写出的sql语句, /如果是存储过程的话cmd.CommandType = CommandType.StoredProcedure; /然后CommandText=存储过程的名字,这就是告诉cmd执行的是存储过程, /存储过程的名字就是CommandText的值 /CommandType是SqlCommand对象的一个属性,用

33、于指定执行动作的形式, /它告诉.net接下来执行的是一个文本(text)、 /存储过程(StoredProcedure)还是表名称(TableDirect). /而CommandType是一个枚举类型。 /有三个值:text、StoredProcedure、TableDirect /用于表示SqlCommand对象CommandType的执行形式。 SqlDataReader sdr; sdr = cmd.ExecuteReader(); if (sdr.Read() label3.Text = 登陆成功!; MainForm form = new MainForm();/登陆成功显示主界面

34、 form.Show(); this.DialogResult = System.Windows.Forms.DialogResult.OK;/这里实现登陆成功后关掉登录界面 else label3.Text = 登陆失败!请检查用户名或者密码重新登陆!; /label3在界面没有显示,因为我设置了显示为一个空格,这个可以自己随意在登陆界面的某个位置添加一个label控件用以显示提示信息 return; conn.Close(); private void Form1_Load(object sender, EventArgs e) (2) 主窗体using System;using Syst

35、em.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace WindowsFormsApplication5._2 public partial class MainForm : Form public MainForm() InitializeComponent(); pri

36、vate void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) private void button1_Click(object sender, EventArgs e) string str = Data Source=zhuwei-pc;Initial catalog=sm;integrated Security=True; SqlConnection conn = new SqlConnection(str); conn.Open(); SqlDataAdapter sqlDap

37、= new SqlDataAdapter(Select * from student, conn); DataSet dds = new DataSet(); sqlDap.Fill(dds); DataTable _table = dds.Tables0; int count = _table.Rows.Count; dataGridView1.DataSource = _table; conn.Close(); /dataGridView1.DataBind();/在网上找的方法中有这一句,在这里这一句可以不要,不然报错 conn.Close(); private void button2

38、_Click(object sender, EventArgs e) UpdataForm form = new UpdataForm();/登陆成功显示主界面 form.Show(); this.DialogResult = System.Windows.Forms.DialogResult.OK; private void button3_Click(object sender, EventArgs e) UpdataForm form = new UpdataForm();/登陆成功显示主界面 form.Show(); this.DialogResult = System.Windows

39、.Forms.DialogResult.OK; private void button4_Click(object sender, EventArgs e) string str = Data Source=zhuwei-pc;Initial catalog=sm;integrated Security=True; SqlConnection conn = new SqlConnection(str); conn.Open(); if (dataGridView1.SelectedRows.Count != 1) return; if (dataGridView1.CurrentRow = n

40、ull) return; /string bd = dataGridView1.CurrentRow.Cells2.Value.ToString(); DataRowView row = dataGridView1.CurrentRow.DataBoundItem as DataRowView; if (rowid = null) return;/可以进行快速监视 string bd = Convert.ToString(rowid); string selectsql = delete from student where id = + bd +; SqlCommand cmd = new

41、SqlCommand(selectsql, conn); cmd.CommandType = CommandType.Text; /SqlDataReader sdr; /sdr = cmd.ExecuteReader(); int ret = cmd.ExecuteNonQuery();/受影响的行数(总数) if (ret=-1) MessageBox.Show(删除失败!); return; else MessageBox.Show(删除成功!); conn.Close(); private void MainForm_Load(object sender, EventArgs e) (

42、3) 更新信息using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace WindowsFormsApplication5._2 public partial class UpdataForm : Form public Updat

43、aForm() InitializeComponent(); private void label1_Click(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) string str = Data Source=zhuwei-pc;Initial catalog=sm;integrated Security=True; SqlConnection conn = new SqlConnection(str); conn.Open(); string selectsql = insert into student values( + textBox1.Text + , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + , + textBox5.Text + , + textBox6.Text + ); SqlCommand cmd = new SqlCommand(selectsql, conn); cmd

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论