软件工程课程设计报告4358611.docx

上传人:b****4 文档编号:3580579 上传时间:2022-11-24 格式:DOCX 页数:18 大小:163.42KB
下载 相关 举报
软件工程课程设计报告4358611.docx_第1页
第1页 / 共18页
软件工程课程设计报告4358611.docx_第2页
第2页 / 共18页
软件工程课程设计报告4358611.docx_第3页
第3页 / 共18页
软件工程课程设计报告4358611.docx_第4页
第4页 / 共18页
软件工程课程设计报告4358611.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

软件工程课程设计报告4358611.docx

《软件工程课程设计报告4358611.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计报告4358611.docx(18页珍藏版)》请在冰豆网上搜索。

软件工程课程设计报告4358611.docx

软件工程课程设计报告4358611

(此文档为word格式,下载后您可任意编辑修改!

计算机虚拟仪器技术

实验报告

学生姓名:

张铁青

学院:

机电工程学院

专业及班级:

工业gc1201

学号:

7

日期:

2015年1月19日

 

摘要:

本系统通过对LabVIEW软件的应用,设计软件结构,实现网络相册的的基本功能,包括用户创建影集,修改影集名称,用户的注册和登录,用户图片的上传,数据库图片的播放;管理员管理图片和用户。

系统利用.Net平台技术进行开发,实现相册的的动态管理,使得对信息的管理更加及时、高效,提高了效率。

同时还对系统的开发原理、功能特点和设计方案进行了介绍。

目录

一.引言1

二、设计正文1

1.概述1

1.1课题题目1

1.2系统的主要目标1

1.3系统的开发环境及运行环境:

1

2.系统分析1

2.1可行性分析1

2.2需求分析2

3.系统总体设计2

3.1设计问题域子系统2

相册系统是实现用户上传照片、用户交流图片以的一个平台,整个电子相册系统有前台和后台两部分,共分为4个模块:

用户上传,管理模块,注册登录模块和阅览模块,分别用于完成各自的功能。

2

(1)各模块功能2

3.2设计数据管理子系统3

(1)数据库表3

(3)数据库表结构3

①相册tb_type的详细数据字段:

3

②相片tb_photo的详细数据字段:

3

③用户表admin的详细数据字段:

3

3.3设计人机交互子系统4

(1)用户分类4

本系统的用户可分为三类:

4

②管理员用户;4

②普通用户;4

(2)用户描述4

①管理员用户的描述:

4

管理员用户在整个选课系统中起到管理和维护的作用,对普通的信息进行管理和维护。

4

②普通用户的描述:

4

普通用户负责试用系统的各项4

4系统流程分析4

4.1用户注册流程图4

4.2用户上传图片流程图4

4.3用户创建相册流程图4

5.系统实现4

5.1主要是与数据库连接,提供数据库操作功能,代码如下:

4

5.2所有系统角色用户的基类,完成用户登录验证功能,4

5.3系统注册页面,代码及运行5

5.4上传读取图片信息6

5.5用户创建相册界面代码及运行8

5.6用户图片代码及运行9

5.7用户查看代码及运行10

三、课程设计总结或结论11

参考文献11

一.引言

通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。

具体如下:

1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;

2.熟悉自动化的软件开发工具RationalRose2003,并将其运用于软件开发的全过程;

3.进一步加强和提高软件工程文档的编写能力;

4.培养协作能力和团队精神。

二、设计正文

1.概述

1.1课题题目:

个人电子相册的设计与实现

1.2系统的主要目标:

研究LabVIEW编程技术,了解B/S编程技术发展的未来趋势,掌握一种开发平台,编写出具有更高交互性和网络体验的Web应用程序。

1.3系统的开发环境及运行环境:

操作系统:

Windows7旗舰版

建模工具:

RationalRose2003

数据库系统:

Access2007

开发工具:

VisualStudio2010

Web服务器:

IIS+ASP.NET2.0平台

2.系统分析

2.1可行性分析

2.1.1系统总体目标

电子相册是互联网络的产物,现在电子相册系统已经层出不穷,而本系统是一个区别于现在国内外已经开发出来的电子相册网站系统,它是一个单用户空间而非网站,主要是一个为用户提供的个人相片展示、存放的个人相册空间。

这个电子相册的定位是一群朋友共享照片、交流讨论的开放式的个人空间。

本系统可以供自己展示、存放照片,可以让拥有正确口令的浏览者浏览该用户的照片以及发表留言,同时拥有正确口令的浏览者也享有用户所有的权利(上传、删除相片等),它在某种程度上是开放式的、自由式的。

因此这是一个相对来说安全、私密、开放的和朋友分享、交流的私人电子相册空间。

2.1.2技术可行性分析

这个电子相册是一种基于B/S架构的管理系统,它采用目前最有发展前景的c#语言编写,用到了当今先进的技术如Html,CSS+DIV,JavaScript,Mysql等关键技术来实现该系统。

开发本系统的VisualStudio2010编程软件、是可以直接在网络上免费下来得来的,其中的Wamp集成环境在Windows平台下集成了Apache、MySQL、PHP服务,无需再另外下载PHP环境和MySQL数据库。

这些应用软件是现在常用的网页开发工具,都能够很方便的掌握,并且也学了有关网页开发的课程,实现该电子相册空间的技术能够比较好的实现,所以对于本系统在技术上是可以达到的。

2.2需求分析

2.2.1总体需求

该设计系统要具有实用性,功能完善,界面良好。

设计该系统的流程如图3所示。

流程设计:

程序设计:

图2.1程序设计流程图

2.2.2功能需求

本系统应该具有登录验证、修改密码、创建相册、浏览相片、上传相片、删除相册或相片、等功能,详见图4。

图2.2电子相册系统功能结构图

3.系统总体设计

3.1设计问题域子系统

相册系统是实现用户上传照片、用户交流图片以的一个平台,整个电子相册系统有前台和后台两部分,共分为4个模块:

用户上传,管理模块,注册登录模块和阅览模块,分别用于完成各自的功能。

(1)各模块功能

表2-1学生选课系统功能模块表

功能模块

包含子功能模块

功能

管理模块

注册管理子模块

填写信息,进行注册

相册管理子模块

对相册进行管理

相片管理子模块

对相片进行管理

用户上传

用户上传自己的图片

登录

用户用户

阅览模块

查看已经上传的图片

3.2设计数据管理子系统

(1)数据库表

表3-2数据库表

序号

数据库表

数据表存储的内容

1

tb_photo

存储相片的信息

2

tb_type

存储相册的信息

3

admin

存储用户的信息

(3)数据库表结构

①相册tb_type的详细数据字段:

表3-3Student学生用户表

序号

字段名

字段类型

说明

备注

1

ID

nvarchar(20)notnull

序号

关键字

2

TypeName

文本

相册名字

②相片tb_photo的详细数据字段:

表3-4Teacher教师用户表

序号

字段名

字段类型

说明

备注

1

ID

nvarchar(20)notnull

序号

关键字

2

Title

文本

标题

3

Type

数字

所属相册

4

imgPath

文本

图片路径

5

Content

备注

内容

6

Creater

文本

创建者

7

CreatTime

备注

创建时间

③用户表admin的详细数据字段:

表3-7Users管理员表

序号

字段名

字段类型

说明

备注

1

User

nvarchar(20)notnull

用户名

关键字

2

Pwd

nvarchar(20)notnul

系统管理员密码

3.3设计人机交互子系统

(1)用户分类

本系统的用户可分为三类:

2管理员用户;

②普通用户;

(2)用户描述

①管理员用户的描述:

管理员用户在整个选课系统中起到管理和维护的作用,对普通的信息进行管理和维护。

②普通用户的描述:

普通用户负责试用系统的各项

4系统流程分析

4.1用户注册流程图

4.2用户上传图片流程图

4.3用户创建相册流程图

5.系统实现

本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。

5.1主要是与数据库连接,提供数据库操作功能,代码如下:

publicstaticOleDbConnectioncreateNewCon()//创建并打开一个链接

{

stringconStr="Provider=Microsoft.Jet.OleDb.4.0;DataSource="

+System.AppDomain.CurrentDomain.BaseDirectory+@"\App_Data\photo.mdb";

OleDbConnectioncon=newOleDbConnection(conStr);

con.Open();

returncon;

}

}

5.2所有系统角色用户的基类,完成用户登录验证功能,代码如下:

privatevoidLoginCheck()

{

stringUserID=txtuser.Text.Trim().ToString();

stringpwd=txtpassword.Text.Trim().ToString();

OleDbConnectioncon=Db.createNewCon();

//con.Open();

stringSql="Selectuser,pwdfromadminwhereuser='"+UserID+"'andpwd='"+pwd+"'";

OleDbCommandcmd=newOleDbCommand(Sql.ToString(),con);

//开a始º?

验¨¦证¡è

OleDbDataReaderread=cmd.ExecuteReader();

if(read.Read())

{

Response.Redirect("Index.aspx");

}

else

{

Response.Write("");

}

con.Close();

}

//登录

protectedvoidbtnOK_Click(objectsender,EventArgse)

{

LoginCheck();

}

protectedvoidbtnSi_Click(objectsender,EventArgse)

{

Response.Redirect("resign.aspx");

}

5.3系统注册页面,代码及运行效果如下:

privatevoidAdd()

{

stringUserID=txtuser.Text.Trim().ToString();

stringpwd=txtpassword.Text.Trim().ToString();

OleDbConnectioncon=Db.createNewCon();

stringSql="insertintoadmin([user],[pwd])"+

"values(@)";

OleDbCommandcmd=newOleDbCommand(Sql.ToString(),con);

cmd.Parameters.AddWithValue("@user",UserID);

cmd.Parameters.AddWithValue("@pwd",pwd);

intredult=cmd.ExecuteNonQuery();

if(redult>0)

Response.Redirect("Login.aspx");

}

protectedvoidbtnqd_Click(objectsender,EventArgse)

{

Add();

}

}

5.4上传读取图片信息代码如下:

publicintadd(stringtypename){

OleDbConnectioncon=Db.createNewCon();

stringsql="insertintotb_type(typeName)"+

"values(@typeName)";

OleDbCommandcmd=newOleDbCommand(sql);

cmd.Connection=con;

cmd.Parameters.AddWithValue("@typeName",typename);

intcount=cmd.ExecuteNonQuery();

returncount;

}

//新?

增?

图ª?

片?

publicintaddpic(stringTitle,inttype,stringimgPath,stringContent,stringCreater,stringcreatTime)

{

OleDbConnectioncon=Db.createNewCon();

stringsql="insertintotb_photo(Title,type,imgPath,Content,Creater,creatTime)"+

"values(@@@)";

OleDbCommandcmd=newOleDbCommand(sql);

cmd.Connection=con;

cmd.Parameters.AddWithValue("@Title",Title);

cmd.Parameters.AddWithValue("@type",type);

cmd.Parameters.AddWithValue("@imgPath",imgPath);

cmd.Parameters.AddWithValue("@Content",Content);

cmd.Parameters.AddWithValue("@Creater",Creater);

cmd.Parameters.AddWithValue("@creatTime",creatTime);

intcount=cmd.ExecuteNonQuery();

returncount;

}

//读¨¢取¨?

图ª?

片?

信?

息¡é

publicDataSetgetAllPic(){

OleDbConnectioncon=Db.createNewCon();

OleDbDataAdapterdad=newOleDbDataAdapter();

dad.SelectCommand=newOleDbCommand("select*from[tb_photo]orderby[id]DESC",con);

DataSetds=newDataSet();

dad.Fill(ds,"tb_photo");

con.Close();

returnds;

}

publicDataSetgetAllPicToN()

{

OleDbConnectioncon=Db.createNewCon();

OleDbDataAdapterdad=newOleDbDataAdapter();

dad.SelectCommand=newOleDbCommand("selecttop10*from[tb_photo]orderby[id]DESC",con);

DataSetds=newDataSet();

dad.Fill(ds,"tb_photo");

con.Close();

returnds;

}

publicDataSetgetAllPicType()

{

OleDbConnectioncon=Db.createNewCon();

OleDbDataAdapterdad=newOleDbDataAdapter();

dad.SelectCommand=newOleDbCommand("select*from[tb_type]orderby[id]asc",con);

DataSetds=newDataSet();

dad.Fill(ds,"tb_type");

con.Close();

returnds;

}

publicDataSetgetAllPicTypeById(intid)

{

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand("select*from[tb_type]whereid=@idorderby[id]asc",con);

cmd.Parameters.AddWithValue("@id",id);

OleDbDataAdapterdad=newOleDbDataAdapter(cmd);

DataSetds=newDataSet();

dad.Fill(ds,"tb_type");

con.Close();

returnds;

}

publicDataSetgetAllPicTypeByType(inttypeId)

{

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand("select*from[tb_photo]wheretype=@typeIdorderby[id]asc",con);

cmd.Parameters.AddWithValue("@typeId",typeId);

OleDbDataAdapterdad=newOleDbDataAdapter(cmd);

DataSetds=newDataSet();

dad.Fill(ds,"tb_photo");

con.Close();

returnds;

}

publicintGetMaxId(){

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand("selectmax(Id)from[tb_photo]",con);

intcount=(int)cmd.ExecuteScalar();

con.Close();

returncount;

}

publicintGetMinId()

{

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand("selectmin(Id)from[tb_photo]",con);

intcount=(int)cmd.ExecuteScalar();

con.Close();

returncount;

}

publicDataSetgetAllPicById(intid)

{

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand("select*from[tb_photo]whereid=@idorderby[id]asc",con);

cmd.Parameters.AddWithValue("@id",id);

OleDbDataAdapterdad=newOleDbDataAdapter(cmd);

DataSetds=newDataSet();

dad.Fill(ds,"tb_photo");

con.Close();

returnds;

}

publicintgetAllPicCount(){

OleDbConnectioncon=Db.createNewCon();

OleDbCommandcmd=newOleDbCommand();

cmd.Connection=con;

cmd.CommandText="selectcount(*)fromtb_photo";

intcount=(int)cmd.ExecuteScalar();

returncount;

}

}

5.5用户创建相册界面代码及运行效果如下:

protectedvoidPage_Load(objectsender,EventArgse)

{

if(!

Page.IsPostBack){

DataTabledt=newphoto().getAllPicType().Tables[0];

this.GridView1.DataSource=dt;

this.GridView1.DataBind();

}

}

protectedvoidbtnadd_Click(objectsender,EventArgse)

{

stringtypename=this.TextBox1.Text.ToString();

intcount=newphoto().add(typename);

if(count>0)

{

Page.RegisterStartupScript(null,"");

}

else{

Page.RegisterStartupScript(null,"");

}

}

protectedvoidGridView1_RowDataBound(objectsender,GridViewRowEventArgse)

{

e.Row.Attributes.Add("onmouseover","currentcolor=this.style.backgroundColor,this.style.backgroundColor='red'");

e.Row.Attributes.Add("onmouseout","this.style.backgro

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1