使用软件开发实习报告
姓名:潘治刚 班级:20##级计科三班 学号:20078779
实训项目名称:网吧局域网自助平台 指导老师:江兵
1目的和意义
本软件可以让在网吧上网的人,如果饿了不用起身,不用暂停和朋友聊天,只需要打开本软件,就可以选择自己想要吃的东西,然后就会有人送过来;如果是大网游的朋突然快没有点卡了,也不用暂停游戏,不用跑到前面吧台去买点卡,也不用大声的叫网管,只需打开本软件,就可以买到自己想要的点卡;如果有什么不满意还可以和网管在线商量;如果无聊了,也可以到网吧内部群里面找人说说话。
对于客户:本软件无需登录,直接打开就可以,里面可以看到在网吧能买到的所有东西,但是买东西的时候要填写自己的座位号,全部是货到付款。还有一个【在线交流功能】也可以当一个局域网聊天室使用;对于服务器端:本软件可以统计出所有买出去的商品及营业额,管理库存和上架的商品,也可以和网吧的一些客户聊天沟通收集意见。
本软件采用基于Socket的方法实现局域网通信,基于socket的局域网通信软件可以为网吧原有的局域网提供一种良好,快速的通信机制。它的实现无需对网吧原有的局域网硬件进行任何改动,具有实现成本低廉的优点,它的使用能有效地降低局域网通信负荷,提高局域网的使用效率,可以更好的为网吧客户提供更优质的服务,拥有广泛的应用前景。
2可行性分析
2.1技术可行性
局域网的通信可通过Socket编程实现,VC封装了有关Socket的各种操作,在编程过程中调用封装的函数实现各种功能。基于TCP的Socket编程采用流式套接字,实现起来比较方便。
2.2操作可行性
本软件界面友好,只需要通过键盘和鼠标就可以完成所有的功能操作,具有操作可行性。
2.3经济可行性
本软件用免费的VC++和SQL做平台就可以实现,维护只需要一些简单的数据库维护就可以完成,所以具有经济可行性。
3.分析系统业务流程和绘制系统业务流程图
商品购买流程图
4,总体设计和数据库设计
功能图
5.面向对象的分析与设计——用例图
系统整体用例图
商品信息用例图
6.面向对象分析与设计——类图
类图
7.面向对象分析与设计——时序图
浏览商品信息时序图
增加商品时序图
8.面向对象分析与设计——活动图
管理员登录模块活动图
9.面向对象分析与设计——状态图
商品状态图
10.面向对象分析与设计——包图、组建图和部署图
包图
组件图
部署图
11.用户界面图
12.用户界面代码
#include "stdafx.h"
#include "Qiang.h"
#include "QiangDlg.h"
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About
class CAboutDlg : public CDialog
{
public:
CAboutDlg();
protected:
//{{AFX_MSG(CAboutDlg)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CQiangDlg dialog
CQiangDlg::CQiangDlg(CWnd* pParent /*=NULL*/)
: CDialog(CQiangDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CQiangDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CQiangDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CQiangDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
/////////////////////////////////////////////////////////////////////////////
// CQiangDlg message handlers
BOOL CQiangDlg::OnInitDialog()
{
CDialog::OnInitDialog();
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
/*UINT array[8];
for(int i=0;i<8;i++)
{
array[i]=i+1001;
}
m_ToolBar.Create(this);
m_ToolBar.SetButtons(array,8);
m_ToolBar.LoadBitmap(IDB_BITMAP11);
m_ToolBar.SetSizes(CSize(64,64),CSize(50,50));
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);*/
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
}
void CQiangDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
CAboutDlg dlgAbout;
dlgAbout.DoModal();
}
else
{
CDialog::OnSysCommand(nID, lParam);
}
}
void CQiangDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CQiangDlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CQiangDlg::OnNew()
{
MessageBox("单击事件");
}
第二篇:软件工程实习报告
本科生实习报告书
教学单位
专 业 软件工程
班 级
学生姓名
学 号
实习时间
指导教师