文档视界 最新最全的文档下载
当前位置:文档视界 › 软件工程课程设计

软件工程课程设计

软件工程课程设计
软件工程课程设计

滨江学院

《软件工程课程设计》

专业班级:软件工程 2班

学生姓名:董衡

学号:20142344054

指导教师:吴婷婷

学期:2016-2017 第一学期

目录

1.课程设计概述 (2)

2.项目的可行性研究与需求分析 (2)

2.1项目的可行性研究 (2)

2.1.1项目的技术可行性 (2)

2.1.2项目的经济可行性 (3)

2.1.3项目的操作可行性 (3)

2.2项目的需求分析 (3)

2.2.1 业务需求 (3)

2.2.2 用户需求 (3)

4.总体设计 (5)

5.详细设计 (6)

5.1 算法描述 (6)

5.1.1 Person类 (6)

5.1.2 Personnel类 (6)

5.1.3 PersonJFrame类 (7)

5.2 系统功能模块 (9)

6.编码实现 (9)

7.测试用例设计、测试与运行记录 (14)

8.课程设计完成结果分析与个人小结 (16)

8.1结果分析 (16)

8.2个人小结 (16)

参考文献 (17)

人事管理系统

董衡

南京信息工程大学滨江学院计算机系,江苏南京 21004

摘要:随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。本系统结合公司实际的人事管理制度,经过实际的需求分析,采用功能强大的Java技术作为开发工具而开发出来的网络版人事管理系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事管理的全过程,包括员工档案信息的管理,员工工资信息的管理。经过实际使用证明,本文所设计的人事管理系统可以满足公司人事管理方面的需要。

关键词:java;数据库;信息管理;人事管理。

Personnel management system

Dongheng

Department of computer science, Binjiang college, Nanjing University of Information Science and Technology,

Nanjing 21004, Jiangsu,.

Abstract: with the rapid development of computer technology, computer application in enterprise management, the use of computer to realize enterprise personnel management is imperative. This system combined with the company's actual personnel management system, after the actual demand analysis, using powerful Java technology as a development tool developed by the network version of the personnel management system. The whole system from the simple, friendly interface, flexible, practical and safety requirements, complete the whole process of personnel management, including staff management, staff salary information management. After practical use, the personnel management system designed in this paper can meet the needs of personnel management in the company.

Key words: Java; database; information management; personnel management.

1.课程设计概述

1 .员工各种信息的输入,包括员工的基本信息、学历信息、婚姻状况信息、职称等。

2. 员工各种信息的修改;

3 .对于转出、辞职、辞退、退休员工信息的做相应标记,默认显示在职员工信息;

4.工资、奖金、扣款细节可以自定义,员工可以网上查看个人的工资条

5 .按照一定的条件,查询、统计符合条件的员工信息;至少应该包括每个员工详细信息的

查询、按婚姻状况查询、按学历查询、按工作岗位查询等,至少应该包括按学历、婚姻状况、岗位、参加工作时间、工资等统计各自的员工信息;对查询、统计的结果打印输出。

2.项目的可行性研究与需求分析

2.1项目的可行性研究

可行性研究的主要目的不是解决实际问题,而是确定问题是否值得去解决,为了做到这点,往往需要客观的头脑,分析可能解法的利弊,从而分析原定的系统在现实中是否能够实现,是否值得去实现。

2.1.1项目的技术可行性

技术可行性研究的目的是现有的技术能不能实现这个系统,Java语言包括面向对象、可移植性、安全性、并发机制、支持可视化图形界面等特点,特别适合用来作为开发语言使用;本论文制作的系统为小型系统,MySQL数据库的简单性以及免费等特点特别适合用作本系统数据库;伴随着科技的进步,计算机进入了万千家庭,计算机配置越来越高,普通的机器已经能够承载此系统,综上所述,该系统具有技术可行性。

2.1.2项目的经济可行性

经济可行性研究的目的是制作的系统的经济效益是否超出它的开发成本,对于传统的人工方式管理人事档案、工资信息管理以及考勤管理,不仅工作繁琐而且需要大量的人力,这样做的结果可能会造成记录出错、效率低下以及增加企业的运营成本,从而阻碍企业的发展。而采用本系统的成本远远低于人工管理的成本,部门只需要一个人去管理本部门的人事档案,这样就大大的缩减了企业在这方面的运营成本,所以本系统具有经济可行性。

2.1.3项目的操作可行性

操作可行性研究的主要目的是制作的系统的操作方式是否在用户组织内行得通,简言之就是用户能否操作、管理该系统。本系统层次分明,各种功能一目了然,只要稍微有点电脑基础,操作管理本系统并不难,所以说本系统具有操作可行性。

2.2项目的需求分析

2.2.1 业务需求

1.系统操作简单,界面友好;

2.规范、完善的基础信息设置;

3.支持多人操作,要求有权限分配功能;

4.为了方便用户,要求系统支持多条件查询;

2.2.2 用户需求

1.员工可以实现的功能:

用户注册:主要实现员工的注册,创建自己的账户密码;

用户登录:登陆应用程序查看自己的信息;

修改密码:用户修改自己账户的密码。

2、管理员可以实现的功能:

员工调动:查看修改员工的调动信息

基本信息:统计与查询员工基本信息

员工考评:记录员工考评信息

人员调薪:管理员工的薪水调整

职称评定:评定和记录员工的职称信息

报表输出:将需要的信息以报表形式输出打印

数据备份:管理员(或DBA)备份数据

数据恢复:病毒,黑客等破坏数据库后对数据进行恢复

系统管理:主要对用户的密码、管理权限的设置等。

3.项目设计的基本原理和采用的主要方法与技术

本设计程序包括三个类:Person类、Personnel类、PersonJFrame类,在Person类里定义员工的基本信息,在Personnel类里实现人员的添加、删除、查询,在PersonJFrame 类里实现运行界面的布局及相关操作,添加事件监听器,设置点击按钮后的行为,同时计算工资的方法也在此类中,最后通过主函数main()创建一个PersonJFrame类的对象即可实现。

4.总体设计

人事管理系统

5.详细设计

5.1 算法描述

5.1.1 Person类

在Person类中,除了构造方法外,还重载了toString()方法。

public String toString()

{

String s=ID+" "+name+" "+sex+" "+position+" "+wage;

return s;

}

5.1.2 Personnel类

在Personnel类中,有三个成员方法:

添加:

public void addPerson(String id,String name,String sex,String position,String wage) {

pList.add(new Person(id,name,sex,position,wage));

}

删除:

public void deletePerson(String id)

{

it=pList.listIterator();

while(it.hasNext())

{

p=(Person)it.next();

if(p.ID.equals(id))

{

it.remove();

break;

}

}

}

查询:

public Person seekPerson(String id)

{

p=null;

it=pList.listIterator();

while(it.hasNext())

{

p=(Person)it.next();

if(p.ID.equals(id))

break;

else

p=null;

}

return p;

}

5.1.3 PersonJFrame类

在PersonJFrame类中,构造方法设置整个界面的布局及界面上的标签、按钮、文本框,为按钮注册单击事件监听器,为列表框注册鼠标事件监听器。单击事件的事件处理程序由ActionListener接口中的actionPerformed()方法实现,在该方法中进行按钮类的处理。当单击一个按钮时,Java创建一个ActionEvent事件类对象e,并且自动执行actionPerformed()方法,在actionPerformed()方法体中,调用e.getSource()方法获得产生单击事件的事件源,即用户单击的是哪一个按钮,识别出按钮后,则分别执行需要的操作。text.setText()方法设置文本行内容,combobox.setSelectedItem()方法返回选中数据项对象,combobox.getSelectedIndex()方法返回选中数据项索引。鼠标事件的事件处理程序由mouseClicked()方法实现,单击列表框里面的内容即可在输入信息处显示信息。

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==add)

{

if(!text_ID.getText().equals(""))

{

String s=(String) combobox_sex.getSelectedItem();

String p=(String) combobox_position.getSelectedItem();

personnel.addPerson(text_ID.getText(),text_name.getText(),s,p,text_wage.getText());

list.setListData(personnel.pList.toArray());

}

}

if(e.getSource()==delete)

{

personnel.deletePerson(text_ID.getText());

text_ID.setText("");

text_name.setText("");

text_quantity.setText("");

text_wage.setText("");

list.setListData(personnel.pList.toArray());

}

if(e.getSource()==seek)

{

String id=JOptionPane.showInputDialog("请输入要查询的员工编号:");

Person thePerson=personnel.seekPerson(id);

if(thePerson==null)

JOptionPane.showMessageDialog(this,"查无此人!","查询结果

",JOptionPane.WARNING_MESSAGE);

else

{

String s="";

text_ID.setText(thePerson.ID);

text_name.setText(https://www.docsj.com/doc/bf18090005.html,);

combobox_sex.setSelectedItem(thePerson.sex);

combobox_position.setSelectedItem(thePerson.position);

text_wage.setText(thePerson.wage);

s=text_ID.getText()+""+text_name.getText()+""+combobox_sex.getSelectedItem()+"

"+combobox_position.getSelectedItem()+" "+text_wage.getText();

JOptionPane.showMessageDialog(this,"你要查询的员工信息:\n"+s,"查询结果",https://www.docsj.com/doc/bf18090005.html,RMATION_MESSAGE);

}

}

if(e.getSource()==wageC)

{

if(combobox_position.getSelectedIndex()==0)

{

N=text_quantity.getText();

i=Double.parseDouble(N);

w=4000+i*0.005;

text_wage.setText("¥"+this.w);

}

if(combobox_position.getSelectedIndex()==1)

{

N=text_quantity.getText();

i=Double.parseDouble(N);

w=2000+i*0.05;

text_wage.setText("¥"+this.w);

}

if(combobox_position.getSelectedIndex()==2)

{

if(combobox_perform.getSelectedIndex()==0)

w=3000+1000;

if(combobox_perform.getSelectedIndex()==1)

w=3000+500;

if(combobox_perform.getSelectedIndex()==2)

w=3000;

text_quantity.setText("");

text_wage.setText("¥"+this.w);

}

}

if(e.getSource()==cancel)

{

System.exit(0);

}

}

5.2 系统功能模块

该系统是一个简单的人事管理系统,实现的功能很简单,包括基本的添加员工信息、删除员工信息、查询员工信息、计算员工工资以及退出系统。

本系统分为如下的几大模块:

添加员工信息模块,在这个模块需要先在文本框里面输入信息后单击添加,添加以后信息显示在主界面左边的列表框内;

删除员工信息模块,点击删除,输入需要删除的员工编号,点击确定即可删除,同时主界面左边的列表框内也将需要删除的员工信息删除,然后刷新;

查询员工信息模块,点击查询,输入需要查询的员工编号,点击确定即可,同时弹出对话框显示需要查询的员工信息;

计算员工工资模块,在输入销售额/营业额后,点击工资按钮,即可计算出工资,显示在不可编辑的文本框内,需要注意的是先要计算出工资再点击添加,这样才能在列表框中显示员工的工资信息;

退出系统模块,点击退出按钮即可退出。

6.编码实现

Person类

package mypackage;

import java.util.*;

public class Person

{

public String ID,name,sex,position,wage;

public Person(String id,String na,String se,String po,String wa) {

ID=id;

name=na;

sex=se;

position=po;

wage=wa;

}

public String toString()

{

String s=ID+" "+name+" "+sex+" "+position+" "+wage;

return s;

}

}

Personnel类

package mypackage;

import java.util.*;

public class Personnel

{

public List pList=new ArrayList();

private ListIterator it;

private Person p;

public void addPerson(String id,String name,String sex,String position,String wage) {

pList.add(new Person(id,name,sex,position,wage));

}

public void deletePerson(String id)

{

it=pList.listIterator();

while(it.hasNext())

{

p=(Person)it.next();

if(p.ID.equals(id))

{

it.remove();

break;

}

}

}

public Person seekPerson(String id)

{

p=null;

it=pList.listIterator();

while(it.hasNext())

{

p=(Person)it.next();

if(p.ID.equals(id))

break;

else

p=null;

}

return p;

}

}

PersonJFrame类

package mypackage;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class PersonJFrame extends JFrame implements ActionListener

{

private JLabel lab1,lab2,lab3,lab4,lab5,lab6,lab7,lab8;

private JTextField text_ID,text_name,text_quantity,text_wage;

private JButton add,delete,seek,cancel,wageC;

private JComboBox combobox_sex,combobox_position,combobox_perform; private JPanel pan1,pan2;

private JList list;

private Personnel personnel=new Personnel();

private String N;

private double i,w=0;

public PersonJFrame()

{

super("简单人事管理系统(欢迎进入(*^__^*) )");

this.setSize(500,350);

this.setLocation(300,240);

this.setDefaultCloseOperation(EXIT_ON_CLOSE);

this.setVisible(true);

this.setLayout(new BorderLayout(1,1));

this.setResizable(false);

list=new JList();

this.add(list,BorderLayout.WEST);

list.setPreferredSize(new Dimension(250,350));

list.setListData(personnel.pList.toArray());

list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); validate();

pan1 = new JPanel(new GridLayout(8,1));

lab7=new JLabel("<―员工基本信息");

pan1.add(lab7);

lab8=new JLabel("输入基本信息");

pan1.add(lab8);

lab1=new JLabel("编号:");

pan1.add(lab1);

text_ID=new JTextField(10);

pan1.add(text_ID);

lab2=new JLabel("姓名:");

pan1.add(lab2);

text_name=new JTextField(10);

pan1.add(text_name);

lab3=new JLabel("性别:");

pan1.add(lab3);

Object sex[]={"男","女"};

combobox_sex= new JComboBox(sex);

pan1.add(combobox_sex);

lab4=new JLabel("职位:");

pan1.add(lab4);

Object position[]={"经理","销售人员","仓库管理员"};

combobox_position= new JComboBox(position);

pan1.add(combobox_position);

lab5=new JLabel("工作表现:");

pan1.add(lab5);

Object perform[]={"Perfect","Good","So-so"};

combobox_perform= new JComboBox(perform); pan1.add(combobox_perform);

lab6=new JLabel("销售额/营业额:");

pan1.add(lab6);

text_quantity=new JTextField(10);

pan1.add(text_quantity);

wageC=new JButton("工资:");

pan1.add(wageC);

text_wage=new JTextField(10);

pan1.add(text_wage);

text_wage.setEditable(false);

this.add(pan1,BorderLayout.EAST);

validate();

pan2=new JPanel();

add=new JButton("添加");

delete=new JButton("删除");

seek=new JButton("查询");

cancel=new JButton("退出");

pan2.add(add);

pan2.add(delete);

pan2.add(seek);

pan2.add(cancel);

this.add(pan2,BorderLayout.SOUTH);

validate();

add.addActionListener(this);

delete.addActionListener(this);

seek.addActionListener(this);

cancel.addActionListener(this);

wageC.addActionListener(this);

list.addMouseListener(new MouseAdapter()

{

public void mouseClicked(MouseEvent e)

{

Person thePerson=(Person)(list.getSelectedValue());

text_ID.setText(thePerson.ID);

text_name.setText(https://www.docsj.com/doc/bf18090005.html,);

combobox_sex.setSelectedItem(thePerson.sex);

combobox_position.setSelectedItem(thePerson.position);

text_wage.setText(thePerson.wage);

}

});

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==add)

{

if(!text_ID.getText().equals(""))

{

String s=(String) combobox_sex.getSelectedItem();

String p=(String) combobox_position.getSelectedItem();

personnel.addPerson(text_ID.getText(),text_name.getText(),s,p,text_wage.getText()); list.setListData(personnel.pList.toArray());

}

}

if(e.getSource()==delete)

personnel.deletePerson(text_ID.getText());

text_ID.setText("");

text_name.setText("");

text_quantity.setText("");

text_wage.setText("");

list.setListData(personnel.pList.toArray());

}

if(e.getSource()==seek)

{

String id=JOptionPane.showInputDialog("请输入要查询的员工编号:");

Person thePerson=personnel.seekPerson(id);

if(thePerson==null)

JOptionPane.showMessageDialog(this,"查无此人!","查询结果

",JOptionPane.WARNING_MESSAGE);

else

{

String s="";

text_ID.setText(thePerson.ID);

text_name.setText(https://www.docsj.com/doc/bf18090005.html,);

combobox_sex.setSelectedItem(thePerson.sex);

combobox_position.setSelectedItem(thePerson.position);

text_wage.setText(thePerson.wage);

s=text_ID.getText()+""+text_name.getText()+""+combobox_sex.getSelectedItem()+"

"+combobox_position.getSelectedItem()+" "+text_wage.getText();

JOptionPane.showMessageDialog(this,"你要查询的员工信息:\n"+s,"查询结果",https://www.docsj.com/doc/bf18090005.html,RMATION_MESSAGE);

}

}

if(e.getSource()==wageC)

if(combobox_position.getSelectedIndex()==0) {

N=text_quantity.getText();

i=Double.parseDouble(N);

w=4000+i*0.005;

text_wage.setText("¥"+this.w);

}

if(combobox_position.getSelectedIndex()==1)

{

N=text_quantity.getText();

i=Double.parseDouble(N);

w=2000+i*0.05;

text_wage.setText("¥"+this.w);

}

if(combobox_position.getSelectedIndex()==2)

{

if(combobox_perform.getSelectedIndex()==0) w=3000+1000;

if(combobox_perform.getSelectedIndex()==1) w=3000+500;

if(combobox_perform.getSelectedIndex()==2) w=3000;

text_quantity.setText("");

text_wage.setText("¥"+this.w);

}

}

if(e.getSource()==cancel)

{

System.exit(0);

}

}

public static void main(String args[])

{

new PersonJFrame();

}

}

7.测试用例设计、测试与运行记录

软件综合课程设计报告模板

(课程设计封皮一页上用已经设置好的宋体四号来填写各个项目。) 计算机软件综合 课程设计报告 学院、系:吉林大学珠海学院计算机科学与技术系 专业名称:2015级软件工程专业课程设计科目:计算机软件综合课程设计 题目:******* 系统 学生姓名:(小组所有成员的学号、姓名) 指导教师: 完成时间:2017年9月—2018年1月

目录 1引言 (4) 1.1编写目的 (4) 1.2背景说明 (4) 2 需求分析 (4) 2.1系统总体目标 (4) 2.2 系统功能 (4) 2.3数据需求 (4) 2.3数据流图 (5) 3 数据库概念结构设计 (5) 3.1系统E-R模型 (5) 3.2模块E-R模型 (5) 4 数据库逻辑结构设计 (5) 4.1 逻辑结构设计 (5) 4.2物理结构设计 (6) 5 安全性设计 (6) 5.1 身份验证模式 (6) 5.2 登陆管理 (6) 5.3 权限管理 (6) 6 源代码及其实现 (7)

5.1 系统开发技术 (7) 5.2 模块1设计及其实现 (7) 5.3 模块2设计及其实现 (7) 7 总结 (7) 6.1 课程设计心得体会 (7) 6.2 建议 (7) 8 参考文献 (7)

题目(三号,黑体,居中) 说明:一组只写一份报告,即下面内容,自己也可以根据实际情况进行调整和补充。 每个人写一份《课程设计成绩评定表》附在后面。 1引言 1.1编写目的 1.2背景说明 1.系统名称:公交查询系统 2.该项目的提出者:************ 3.开发者:********** ********* 4.运行该软件的单位:公交公司及广大乘客 2需求分析 2.1系统总体目标 2.2 系统功能 详细阐述系统的用户类型及其所属主要功能 2.3数据需求 根据系统功能整理出出系统中和数据相关的信息,要列出数据的详细信息。

软件工程课程设计报告人事管理系统

软件工程课程设计报告人事管理系统

软件工程课程设计 题目人事管理系统 系计算机系 专业班级软件工程(动画方向)(2)班 学生姓名贾秋洪 学号 2358069 指导教师姜青山 年 6 月 18 日 1.课程题目 人事管理系统设计 2.概述 2.1本课题的来源 A公司是一家以寿险营销为目的的寿险公司,公司员工众多业务流量大,为了方便管理,我制作了一个人事管理系统。主要经

过员工基本信息录入、修改、查询、删除以及员工考勤等方面来对员工综合考评。以便对员工发放工资进行合理分配。这样能提高领导的人事管理水平还能提高员工的积极性。经过现代计算机技术与企业管理相结合,实现人事管理系统的科学化、信息化、现代化,而且适合一般人群使用。 企业人事管理是相对企业内部员工的管理。集人员、考勤、工资、员工培训、系统功能等于一体的大型管理系统,为公司在人事管理等方面提供极大的方便。本软件是以中小型企业为背景而设计开发的,界面美观、使用方便。本系统主要以人员管理、考勤管理、统计分析管理、工资核算等,是企业人事管理必不可缺的好帮手。 2.2本课题目的、实现功能与预期成果 2.2.1目的 当前市面上流行的人事管理系统不少。可是,对于A公司来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。 2.2.2实现功能 能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方

面的工作,基本满足人事日常业务的需要。 2.2.3预期成果 所做出的人事管理系统能让A公司管理层在操作简单的前提下并有效的提高对该公司的人事管理,并经过该系统提高员工的能力。尽量使本系统做到是一个科学化、信息化、简单使用的人事管理系统。 3.系统分析 3.1系统调研 正式开发管理信息系统之前进行调研是非常必要的,必要对现行系统进行详细的调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,新系统的开发却失败的悲剧发生。 3.2可行性分析概述 可行性分析是在A公司的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。 可行性分析阶段的主要工作包括以下几个方面:

软件工程课程设计任务书(模板及参考)

编号: 大连理工大学本科生课程设计任务书 课程名称:软件工程课程设计 指导教师: 项目名称:粒子群主题网站 小组名称: 组长姓名: 上课时间:2009年7月13 日- 7月25 日 大连理工大学软件学院 20 年月日

1 设计目的 软件工程课程设计是在学生系统的学习了《软件工程》课程后,综合运用所学的知识,设计开发一个小型的实际系统。 要求学生运用软件工程的思想,严格按照软件生命周期各个阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。通过对具体系统的设计和开发,使得学生掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法开发和维护软件。 2 设计要求 (1)选用迭代式开发的过程模型,运用软件工程的方法,规范地完成规模小、功能较为简单 的软件开发,包括需求分析、设计、编码和测试。 (2)学生5人组成一个项目小组,一人为组长,其他人为组员,组内成员分工明确、团结协 作、相互配合,共同完成选题的设计。 (3)课程设计时间为2周。 (4)开发平台.NET3.5,语言(C# \ ASP),数据库设计工具Powerdesigner;数据库系统MS SQL Server 2005 (5)具体指标: 1)可以选择结构化分析/设计(SA/SD)或面向对象方法(OOA/D) 2) 结构化分析/设计(SA/SD) a)需求分析:分析系统的静态功能和动态行为 每一位小组成员能够描绘分配的子功能需求 每一位小组成员完成分配子功能的数据流图DFD,要求绘制到3级DFD3 小组负责人组织完成系统的DFD3 b)设计:完成系统的功能模块设计 每一位小组成员根据需求的DFD3图,完成分配的子功能模块设计,用HIPO 图表征。 每一位小组成员设计分配的子功能模块的接口 每一位小组成员能够完成分配的子功能程序流程的逻辑设计 小组负责人组织完成系统的总体结构集成 c)软件实现: 每一位小组成员完成分配的子功能界面的设计 每一位小组成员完成分配的子功能代码编写 小组负责人在.NET框架下,组织完成系统的实施 d)软件测试: 每一位小组成员完成分配的子功能的单元测试 小组负责人负责组织系统的测试用例,不少于20个,完成测试工作 3)面向对象方法(OOA/D):以UML为主 a)需求分析:分析系统的静态功能和动态行为

软件工程课程设计

第一章概述 1.1系统名称 学生宿舍管理系统 1.2开发及运行环境 CPU Intel? Core(TM)i5-4210M 内存4GB 硬盘空间30M以上 输入设备键盘鼠标 操作系统windows 8.0 数据库windows sql server 2005 1.3软件开发计划 2017.12.01-2017.12.04 软件需求分析 2017.12.05-2017.12.09 系统结构设计 2017.12.10-2017.12.15 软件编码及数据 库设计实现 2017.12.16-2017-12.20 软件测试 2017.12.21 软件交付

第二章需求分析 目前,各学校的宿舍管理主要依赖于人工管理,学生宿舍相关的各种信息可以通过宿舍管理系统来集中统一管理,方便的宿舍管理员对宿舍的管理,更有利于宿舍安全以及同学们的健康成长。 2.1 任务概述 宿舍管理系统为了方便管理,尽可能的实现操作简单,易学易用,主要实现以下功能: 1)系统要求用户必须输入正确的用户名和密码才能进入系统; 2)系统应该提供学生住宿情况的基本登记; 3)系统应提供人员来访登记及结束访问的详细登记; 4)系统应提供学生在校期间物品出入宿舍楼的详细情况登记; 5)系统应提供查询功能,以方便用户对学生基本信息的查询(要实现按多种条件的查询)及楼房信息的查询; 6)系统应提供增加、删除、修改用户帐户的功能; 7)增加学生离校的物品管理制度 2.2 宿舍管理系统一层数据流图及数据字典 2.2.1 一层数据流图

图1-1 学生宿舍管理系统一层数据流图 2.2.2 数据字典 以下是图1-1数据流图的数据字典本数据字典主要定义数据4方面内容: 名字:数据元素的名字,作为在数据流图中的标识符, 描述:对名字所代表的数据功能和含义加以描述 定义:对名字所代表的实际构成加以解释 位置:表示数据流的来源 名字:管理员 描述:对宿舍管理系统进行操作的人员

软件工程课程设计报告——人事管理系统

软件工程课程设计 题目人事管理系统 系计算机系 专业班级软件工程(动画方向)(2)班 学生姓名贾秋洪 学号20082358069 指导教师姜青山 2010 年6 月18 日 1.课程题目 人事管理系统设计 2.概述 2.1本课题的来源 A公司是一家以寿险营销为目的的寿险公司,公司员工众多业务流量大,为了方便管理,我制作了一个人事管理系统。主要

通过员工基本信息录入、修改、查询、删除以及员工考勤等方面来对员工综合考评。以便对员工发放工资进行合理分配。这样能提高领导的人事管理水平还能提高员工的积极性。通过现代计算机技术与企业管理相结合,实现人事管理系统的科学化、信息化、现代化,并且适合一般人群使用。 企业人事管理是相对企业内部员工的管理。集人员、考勤、工资、员工培训、系统功能等于一体的大型管理系统,为公司在人事管理等方面提供极大的方便。本软件是以中小型企业为背景而设计开发的,界面美观、使用方便。本系统主要以人员管理、考勤管理、统计分析管理、工资核算等,是企业人事管理必不可缺的好帮手。 2.2本课题目的、实现功能与预期成果 2.2.1目的 目前市面上流行的人事管理系统不少。但是,对于A公司来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的人事管理系统。 2.2.2实现功能 能够录入人事的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方

面的工作,基本满足人事日常业务的需要。 2.2.3预期成果 所做出的人事管理系统能让A公司管理层在操作简单的前提下并有效的提高对该公司的人事管理,并通过该系统提高员工的能力。尽量使本系统做到是一个科学化、信息化、简单使用的人事管理系统。 3.系统分析 3.1系统调研 正式开发管理信息系统之前进行调研是非常必要的,必要对现行系统进行详细的调查,明确用户需求,保证开发的新系统的功能与用户的要求相吻合,避免耗费大量的人力、物力、财力,新系统的开发却失败的悲剧发生。 3.2可行性分析概述 可行性分析是在A公司的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行、需要修改、追加投资、暂缓开发、分步实施等方案和结论,最后完成可行性分析。 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。 可行性分析阶段的主要工作包括以下几个方面:

软件综合课程设计任务书

软件综合课程设计任务书

————————————————————————————————作者: ————————————————————————————————日期: ?

软件综合课程设计任务书 一、课程设计的目的、要求 目的:软件综合课程设计是一个综合性的设计型实验教学环节,旨在使学生通过软件开发的实践训练,进一步掌握设计开发软件的方法与技术,学会数据的组织方法,提高软件开发的实际能力,培养创造性的工程设计能力和分析、解决问题的能力。 实现以下目标: 1.深化已学的理论知识,完成理论到实践的转化 通过软件开发的实践,进一步加深对软件工程方法和技术的了解,将所学的理论知识运用于开发实践中,并在实践中逐步掌握软件工具的使用。 2. 提高分析和解决实际问题的能力 课程设计不仅是一次软件工程实践的模拟训练,同时通过软件开发的实践,积累经验,提高分析问题和解决问题的能力; 3. 培养“开拓创新”能力 大力提倡和鼓励在开发过程中使用新方法、新技术,激励学生实践的积极性和创造性,开拓思路,设计新算法、新创意,培养创造性的工程设计能力; 要求:学生组成开发小组(2~4人),以小组为单位选择并完成一个规模适度的软件项目,在教师的指导下以软件设计为中心,独立完成从需求分析到软件测试的开发过程。 二、设计步骤安排 1.确定课题 由教师命题并给出各课题的具体需求,学生根据课题涉及的知识领域及自己对该领域的熟悉程度和对该课题的兴趣,选择课题,经教师调整审定后确定; 2. 需求分析 建立系统的分析模型,这是系统开发的重要阶段。主要工作是: 分析确定系统应具备的功能、性能,并从经济上、技术上进行可行性分析,建立“需求分析模型”确定开发计划。 3. 软件设计 具体工作是:对系统的分析模型进行修改、细化,进行系统的结构设计,用户界面设计,数据管理部件设计(若系统涉及到数据库,要对数据库结构进行设计) 4. 编码与测试 根据项目的应用领域及语言的特点,选择编程语言进行编码,要求给出程序的详细注释(包括模块名、模块功能、中间过程的功能及变量说明); 由开发小组进行除验收测试以外的测试工作(包括单元测试、组装测试与系统(确认)测试)。所有测试过程都要求采用综合测试策略,先进行静态分析,再进行动态测试。要求制定测试计划、记录测试过程与结果、保留测试用例、写出测试报告。 5. 验收测试 由教师组织验收测试的实施,内容包括:系统能否正确运行,实际系统与设计方案是否一致,是否实现了需求所确定的功能与性能,系统设计有无特色,算法有无创新,系统结构是否合理、新颖,系统界面是否友好、美观,操作是否简单,使用是否方便。6.总结和整理课程设计报告

软件工程课程设计要求

软件工程》课程设计 一、目的、要求 通过该课程设计使学生树立起强烈的工程化意识,用工程化思想和方法开发软件,切实体会用软件工程的方法开发系统与一般程序设计方法的不同之处。学生在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试的基本能力。 二、主要内容 要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。每个学生选择一个小型软件项目,题目可参考附录A,也可自行拟定题目,按 照软件工程的生命周期,完成软件计划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。分别、选用传统的结构化方法和面向对象的方法,开发环境和工具不限。 三、设计成果要求 1.提交软件系统,根据完成情况给分; 2.提交设计报告文档 设计报告将从以下三个方面给分: (1)报告是否规范,符合要求; (2)报告是否完整、工作量大小; (3)文档逻辑性是否合理、语言是否流畅。 四、进度安排 (1)确定选题,进行可行性分析,开发计划 (2)软件需求分析 (3)软件设计 (4)软件实现,测试计划 (5)软件实现,测试报告 (6)验收

附录A 课程设计题目 题目一:电子商务网站建设 一个集客户购物、下订单、订单处理、销售统计等功能于一体的系统。通过浏览器,创建账户/登陆账户,让客户可以查询货物,把货物放入购物车,创建订单,通过信用卡支付等。系统划分成了多个模块,松耦合的设计架构,允许可以和多个数据源,EIS (企业信息系统)进行交互。功能如下: 1?用户 注册/登陆/忘记密码/管理个人信息 查询货物 购物车管理 提交订单 信用卡支付 查询历史购物记录 2?货物商店 接受/处理订单消息 手工接受/拒绝订单 用E-mail来通知客户 发订单给供应商 销售统计 3.供应商 接受订单 派送货物给用户 提供一个基于web的库存管理 维护库存数据库 题目二:外文图书采购系统 1?问题概述 某图书馆外文采购有两个组--征订组和验收,登记组。分别承担书籍订购和进书验收任务。为了减轻劳动强度和提高工作效率,打算采用计算机进行管理。为此,系统分析员在进行了调查研究,描述出外文采购室现行系流程。 1 )订书组从供书单价收到订书目录,根据各单位的需要选择出要订购的书 目。

软件工程课程设计任务书

《软件工程》课程设计 任务书 一、目的、要求 通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,学生在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试的基本能力。 二、主要内容 要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。每个学生选择一个小型软件项目(内容参照《计算机综合实践指导》,宋雨等编著,清华大学出版社出版),按照软件工程的生命周期,完成软件计划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。具体的方法可以选用传统的软件工程方法或者面向对象的方法,开发环境和工具不限。 三、进度计划 四、设计成果要求 1.至少提交4个文档,包括软件计划、软件需求规格说明书、软件设计说明书、软件测试计划,要求文档格式规范、逻辑性强(可参考《计算机综合实践指导》中给出的要求及格式)、图表规范; 2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。 五、考核方式 (1)提交的文档规范,工作量大,文档逻辑性强、正确,按《计算机综合实践指导》标准考核(附《软件工程课程设计》实验报告评分表)占60%(2)系统验收、讲解、答辩占25% (3)考勤占15% 学生姓名:(此处为签名)

指导教师: 2011年6 月17 日《软件工程课程设计》实验报告评分表

(注:素材和资料部分来自网络,供参考。请预览后才下载,期待你的好评与关注!)

软件综合课程设计教学大纲

珠海学院课程教学大纲 课程名称:计算机软件综合课程设计 适用专业: 2015级软件工程专业 课程类别:专业基础课 制订时间:2017年6月 计算机科学与技术系制

目录 1 《计算机软件综合课程设计》教学大纲 2 《计算机软件综合课程设计》(模板) 3 《计算机软件综合课程设计》成绩评定表

《计算机软件综合课程设计》教学大纲 一、课程设计基本信息 课程代码: 课程名称:计算机综合应用课程设计 课程学时:32学时 课程学分:2.0 适用对象:计算机科学与技术专业、软件工程专业 先修课程:高级语言程序设计、数据结构、操作系统、数据库原理与应用 二、课程设计目的和任务 本课程设计是检验计算机专业的学生在大学主干课程完成之后,为了加深和巩固学生对前两年所学理论和应用知识的理解,同时提高学生综合运用的能力和分析问题、解决的问题的能力而开设的一门实践课程。 通过本环节学生能够充分把前两年学到的知识综合应用到实际的编程实践中,可以进一步巩固所学到的理论。通过实现一个中等规模的应用软件,提高利用计算机系统解决实际问题的能力,为顺利毕业、进入社会打好基础;通过对程序的规范编写,可以培养学生良好的编程风格,包括程序结构形式,行文格式和程序正文格式等;并培养学生的上机调试能力。 三、课程设计方式 1、课程设计题目的选定 采用指导教师提供参考题目与学生自主命题相结合的办法选定课程设计题目。要求不多于4个人一个小组,不得重复,所涉及数据库的基本表至少在5张表以上,在尽量满足数据库设计原则的前提下,允许适当冗余以提高检索的速度。其中学生自主命题需要指导教师严格的审核,看是否满足课程要求,检查是否为重复课题。 2、课程设计任务的完成

2014软件工程课程设计任务书

《软件工程》课程设计任务书 一、目的及意义 软件工程课程设计是在学生学习了《软件工程》课程的同时,综合运用所学的知识,设计开发一个小型的实际系统。 要求学生运用软件工程的思想,严格按照软件生命周期各个阶段的目的和任务,完成对系统的定义、设计、编码、运行以及后期的维护。通过对具体系统的设计和开发,使得学生掌握软件工程的基本原理和基本方法,学会用软件工程学的概念、原理、方法开发和维护软件。 二、内容及要求 自拟课题,可以进行相关系统或网站设计(如资源管理系统、网络监控系统、勤工俭学管理系统、个人财务管理系统、大学城二手物品在线交易网站等),然后以项目小组的形式完成项目。 本课程设计要求学生采用“项目小组”的形式,结合具体的开发项目进行设计,对软件生命周期的每一个阶段包括可行性分析、需求分析、概要设计、详细设计、编码、测试等严格按照软件工程规范实施一个具体的案例。具体要求如下: 1.可以选择结构化分析/设计(SA/SD)或面向对象方法(OOA/D) 2.结构化分析/设计(SA/SD) 1)需求分析:分析系统的静态功能和动态行为。每一位小组成员能够描绘分配的子功能需求;每一位小组成员完成分配子功能的数据流图DFD,要求绘制到3级DFD,小组负责人组织完成系统的DFD。 2)设计:完成系统的功能模块设计。每一位小组成员根据需求的DFD图,完成分配的子功能模块设计,用HIPO图表征。每一位小组成员设计分配的子功能模块的接口,每一位小组成员能够完成分配的子功能程序流程的逻辑设计,小组负责人组织完成系统的总体结构集成。 3)软件实现:每一位小组成员完成分配的子功能界面的设计,每一位小组成员完成分配的子功能代码编写,小组负责人在.NET框架下,组织完成系统的实施。 4)软件测试:每一位小组成员完成分配的子功能的单元测试,小组负责人负责组织系统的测试用例,完成测试工作。 3.面向对象方法(OOA/D):以UML为主 1)需求分析:分析系统的静态功能和动态行为。每一位小组成员完成一个用例分

《软件工程综合课程设计》评分标准(参考)

《软件工程综合课程设计》评分标准(参考) 说明:按照学校发布的课程设计评分页中的8个评分项,根据《软件工程综合课程设计》实际,分解学校评分项为若干评分子项,并按评分等级记分(见下表),力求做到课程设计评分的精细化、一致行和可比性。各子项分数合计成各项分数,各项分数合计成本次课程设计成绩。 评分等级与记分对照表 1、课程设计中的创造性成果(10分) 1)课题具有国内或国际领先(4分) 2)具有自主创新的算法或应用最新的研究成果(专利)(3分) 3)使用最新的开发工具、技术平台和运行环境(3分) 2、学生掌握课程内容的程度(20分) 1)提供了较好的涵盖了需求、可行性和概要设计等的方案(5分) 2)在设计和实现中应用了软件工程的原理或方法(5分) 3)技术路线(开发工具、运行环境等)合理可行(5分) 4)提供了可行的测试计划(5分) 3、课程设计完成情况(20分) 1)按模板格式和内容提交完整的课程设计文档(5分) 2)提供了较完整的数据字典(数据库表)(4分)

3)完成了系统主要功能的UI设计或实现(4分)4)提供了较完整的测试用例(4分) 4)按时提交课程设计文档(3分) 4、课程设计动手能力(15分) 1)数据库表设计合理满足需求(5分) 2)UI设计一致美观、程序代码清晰规范(5分) 3)考虑系统出错与异常情况(5分) 5、文字表达(5分) 1)阐述问题准确完整(3分) 2)文档文字通顺流畅(2分) 6、学习态度(5分) 1)态度端正、认真负责(3分) 2)及时响应指导老师的通知和任务安排(2分)7、规范要求(15分) 1)文档段落格式规范一致(3分) 2)标题和正文字体大小一致(3分) 3)图形和表格格式规范(4分) 8、课程设计论文的质量(10分) 1)文档摘要和目录完整准确(2分) 2)参考文献完整正确且被引用(2分) 3)段落和层次结构合理、处理逻辑清晰(3分)4)表述准确、内容通畅、结论正确(3分)

软件工程课程设计实验报告

重庆邮电大学 软 件 工 程 课程设计实验报告 ——网上选课系统 姓名:雷雷 学号:08500329 专业:计算机科学与技术班级:0410801 指导老师:邹洋 教室:S331-A 时间:2011-5-30~2011-6-3

一、实验题目:网上选课系统 主要功能描述:系统首先维护校内所有课程的信息;课程分为研究生、本科生;也可以分为必修、选修、辅修。用户以学号和密码登陆,系统显示用户以选的课程、用户有权选但未选的其他课程,并显示具体信息(如学分)。用户选择后,系统根据规则检查用户是否进行正确的选课(如时间冲突、跨专业选课等);如果错误提示用户改,否则修改选课数据库。最后系统应能够向管理员提供查询界面和各类报表,统计每门课的选课情况。 二、实验目的 软件工程课程设计是软件工程专业一个综合性的实践教学环节,其目的在于促进学生复习和巩固计算机软件设计知识,加深对软件设计方法、软件设计技术和设计思想的理解,并能运用所学软件设计知识和面向对象技术进行综合软件设计,提高学生的综合应用能力。通过这次课程设计,要掌握UML(统一建模语言),并能运用UML在Rational Rose中建模。 三、实验要求 1.一人一组。 2.熟悉Rose开发环境。 3.掌握UML的基本模型元素(如角色、用例、类等)。 4.熟悉UML,主要了解UML中的9大图:Use case diagram(用例图)、Class diagram(类 图)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)、datamodel diagram(数据模型图)。 5.进行系统需求分析与系统功能模块设计,绘出系统详细的业务流程图和数据流程图, 建立完整的系统数据库的逻辑模型。 6.完成对系统的建模实现。 7.进行检查,并提交设计报告。 四、实验内容 1、系统的需求分析 学生选课系统主要满足来自两方面的需求,这两个方面分别是学生用户和管理员用户,也即是两类用户角色。 (1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等; (2)管理员用户的功能需求较为复杂,包括对学生信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。 本系统将管理员用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。

软件工程课程设计报告

软件工程课程设计报告样式 山东建筑大学计算机科学与技术学院 课程设计说明书 题目:学校教材订购系统的分析和设计 课程:软件工程 院(部):计算机科学与技术学院 专业:软件测试 班级:软测143 学生姓名:冯岩 学号:20141113088 指导教师:王宜贵 完成日期:

目录 课程设计任务书 (36) 1. 系统概述 (39) 1.1业务流程描述 (39) 1.2 业务流程图..................................................................................... 错误!未定义书签。2.系统需求分析.......................................................................................... 错误!未定义书签。 2.1 系统用例模型.................................................................................. 错误!未定义书签。 2.2 系统类图模型............................................................................ 错误!未定义书签。 2.3 系统顺序图模型........................................................................ 错误!未定义书签。 3. 系统设计.................................................................................................. 错误!未定义书签。 3.1 系统结构设计................................................................................. 错误!未定义书签。 3.2 数据库概念模型设计..................................................................... 错误!未定义书签。 3.3 数据库物理模型设计..................................................................... 错误!未定义书签。 4. 系统详细设计.......................................................................................... 错误!未定义书签。 4.1学校教材订购系统界面设计.......................................................... 错误!未定义书签。 4.2 销售系统处理............................................................................... 错误!未定义书签。 4.3 输入设计....................................................................................... 错误!未定义书签。 4.4 采购系统处理............................................................................... 错误!未定义书签。 4.5 设计............................................................................................... 错误!未定义书签。 4.6 输出设计....................................................................................... 错误!未定义书签。总结 .. (43) 参考文献 (45) 课程设计指导教师评语 (46)

软件工程课程设计报告案例

网上招聘系统分析设计

目录 第一章网上招聘系统需求规格说明书.................... - 3 - 第二章软件项目的概要设计说明书. (16) 第三章网上招聘系统详细设计 (54) 第四章软件项目的编码案例说明 (67) 第五章网上招聘系统客户端系统测试计划 (74) 第六章网上招聘系统客户端系统测试设计 (78) 第八章网上招聘系统客户端系统测试报告 (95)

第一章网上招聘系统需求规格说明书 1.导言 1.1 目的 该文档是关于用户对于网上招聘系统的功能和性能的要求,重点描述了网上招聘系统的功能需求,是概要设计阶段的重要输入。 本文档的预期读者是: ·设计人员; ·开发人员; ·项目管理人员; ·测试人员; ·用户。 1.2 围 该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。 1.3 编写说明 HR,Human Resource(人力资源管理)的缩写。 JSP,Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。 UML,Unified Modeling Language(统模语言)的缩写,是一个标准的建模语言。 1.4 术语定义 无 1.5 引用标准 [1]《企业文档格式标准》,****************软件工程过程化组织 [2]《需求规格报告格式标准》,************软件工程过程化组织 1.6 参考资料 [1]《UML说明》,***********************软件 [2]《需求规格报告格式标准》,************公司软件工程过程化组织 1.7 版本更新信息 本文档的更新记录如表A-1所示。 表A-1 版本更新记录 修改编号修改日期修改后版本修改位置修改容概述 001 002 003 004 005 2008.9.5 2006.9.10 2006.9.15 2006.9.16 2006.10.18 0.1 0.2 0.3 0.4 1.0 全部 第3.1节 第4.1节 第5.1节 第7章 初始发布版本 增加 修改 修改 增加 2.系统定义 我们分别阐述一下项目的来源、背景,项目的用户特点和项目的目标。 2.1 项目来源及背景 本项目是为某公司开发的一个网上招聘系统,由于这个公司的规模比较大,需要招聘 的员工也很多,每次招聘总能收到成千上万的简历,如何挑选合适的应聘者常常是公司比较

软件工程课程设计报告

软件工程课程设计报告题目:校园小商品交易系统 一、实验题目 (2) 二、实验目的 (2) 三、实验要求 (3) 四、实验内容 (3) 五、系统设计文档 (4) 5.1需求分析 (4) 5.1.1对系统综合要求 (4)

5.1.2系统的数据要求 (4) 5.2总体设计 (5) 5.2.1系统总体用例图 (5) 5.2.2商品管理用例图 (5) 5.2.3用户信息用例图 (6) 5.2.4商品交易用例图 (6) 5.3详细设计 (6) 5.3.1系统类图以及类之间关系图 (6) 5.3.2由需求分析阶段以及类之间关系的设计分析可以得到系统 对应事件流 (7) 5.3.3系统数据库表 (11) 5.3.4系统组件图 (11) 5.3.5系统部署图 (12) 六、心得体会 (13) 一、实验题目 校园小商品交易系统 二、实验目的 通过这次课程设计,要掌握UML(统一建模语言),并能运用UML在Rational Rose中建模。熟练掌握软件工程面向对象建模的总体方法。

三、实验要求 1.一人一组。 2.熟悉Rose开发环境。 3.掌握UML的基本模型元素(如角色、用例、类等)。 4.熟悉UML,主要了解UML中的9大图:Use case diagram(用例图)、Class diagram(类图)、Object diagram(对象图,Rose中没有)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)。 5.完成对系统的建模。 6.周五上机检查,并提交设计报告。 7.集中上机时间不能迟到、早退。 8.请自觉维护实验室清洁,爱护实验设备。 四、实验内容 运用UML统一建模语言建立一个校园小商品交易系统。开发软件为ROSE,最后转换为VB代码。该系统主要的基本要求和功能如下: 包含三类用户:管理员、商品发布者、普通用户、访客。 (1)向管理员提供以下功能:自身密码修改,其他用户添加删除,用户信息修改、统计。商品信息添加、修改、删除、查找、统计。 (2)向商品发布者提供以下功能:注册、登陆、注销、自身密码修改、自身信息修改。商品信息发布,自身商品信息统计。查找浏览其他商品。 (3)向一般用户提供以下功能:商品浏览、查找、获知商家联系方式,定购商品。 (4)向访客提供以下功能:商品浏览、查找、获知商家联系方式。

软件工程课程设计

软件工程课程设计 题目固定资产管理系统学院数学与信息工程学院专业计算计科学与技术班级计科学051 学号200332225232 学生姓名方明 同组成员李亮 指导教师魏远旺

目录 一、可行性报告┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉1 二、需求说明书┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉3 三、总体设计说明书┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉5 四、详细设计说明书┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉13 五、程序源代码┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉24 六、课程设计体会┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉27 七、参考文献┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉┉27

第一章可行性报告 1.1 固定资产管理概述 1.1.1 固定资产 财政部颁发的于2002年1月1日起施行的《企业会计准则-固定资产》中,是这样对固定资产下定义的:“固定资产,是指同时具有以下特征的有形资产:为生产商品,提供劳务,出租或经营管理而持有的;使用年限超过一年;单位价值较高。”这应该是固定资产的准确定义。 1.1.2 固定资产的具体标准如何确定 判断固定资产的具体标准,主要有两个方面:一是时间标准,二是价值标准。根据《企业会计准则-固定资产》规定:固定资产,是指企业使用期限超过1年的房屋,建筑物,机器,机械,运输工具以及其他与生产,经营有关的设备,器具,工具等。不属于生产经营主要设备的物品,单位价值在2000元人民币以上,并且使用年限超过2年的,也应当作为固定资产。 1.1.3 固定资产如何分类 按其经济用途分类,可以分为生产经营用固定资产和非生产经营用固定资产; 按其所有权划分,可分为自有固定资产和租入固定资产; 按来源渠道划分,可分为外购的固定资产,自行建造的固定资产,接受投资转入的固定资产,接受捐赠的固定资产,以非货币资金换入的固定资产,改建扩建新增的固定资产,盘赢的固定资产,融资租入固定资产; 按使用情况划分,可以分为使用中的固定资产,未使用的固定资产和不需用的固定资产; 按其经济用途和使用情况综合划分,可分为生产经营用固定资产,非生产经营用固定资产,租出固定资产(指经营性租赁),不需用固定资产,未使用固定资产,土地,融资租入固定资产。 1.2 固定资产管理系统可行性分析及开发计划 本项目主要是根据软件工程课程的实践需要,根据固定资产管理的流程,与软件工程的理论相结合,完成本项目的开发。本项目的设计和开发目标是达到软件工程课程理论和实际相结合的目的。 1.2.1 定义: *数据流图

软件工程课程设计

软件工程课程设计

题目:高校课表编排子系统 学院信息工程学院 专业计算机科学与技术 指导教师白娟 1 月 3 日

摘要 教学工作是高校的中心工作,而课表是高校日常教学活动运行的指挥调度表,是高校能否进行正常教学的关键,因此科学的,合理的课表在高校的重要性毋庸置疑。高校教务管理是一向复杂而繁重的工作,课表编排作为其中腰组成部分是长期困扰学校教务管理工作的大问题,计算机排课无疑是必然优势。课表编排是一个涉及多因素约束的,多目标的,结构复杂的典型的组合优化问题,而且已经被证明为一个NP完全类,是典型的组合优化的问题,其问题求解的时间复杂度呈指数函数增长。每个学校在排课表时考虑的因素千差万别,各种约束条件也不尽相同,可是它所涉及的主要实体却具有相对稳定性。 关键字:NP完全类; 约束满足;课表编排;课程设置;

目录 目录 (4) 第一章需求分析说明 (5) 1.1编写目的 (5) 1.2问题定义 (6) 1.3可行性分析 (6) 1.4任务描述 (7) 1.5目标 (7) 1.6运行环境 (7) 1.7功能需求 (7) 1.7.1功能描述 (7) 1.7.2排课约束 (8) 1.7.3操作规程 (8) 第二章概要设计说明 (10) 2.1数据描述与数据库设计 (10) 2.2数据表 (10) 2.2.1E-R图 (11) 2.2.2数据流图部分 (11) 2.3运行需求 (13) 2.3.1硬件 (13) 2.3.2软件 (13)

第三章详细设计说明 (14) 3.1模块的具体算法 (14) 3.1.1登陆模块 (14) 3.1.2管理员模块 (14) 数据库中各表的物理结构 (18) 第四章编码+测试 (20) 4.1登录模块 (20) 4.1.1 管理员模块 (22) 4.1.2教师模块 (26) 4.2测试方案设计 (30) 测试结果分析: (30) 第五章用户使用说明书 (31) 第六章实验总结 (34) 第七章参考文献 (37) 第一章需求分析说明 1.1编写目的 供设计人员、开发人员参考。 为明确软件需求、安排项目规划进度、组织软件开发与测试,撰写本文档。

软件工程课程设计报告完整版

软件工程课程设计报告 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

软件工程课程设计报告 旅游信息管理系统 姓名: 学号: 专业:软件工程 班级: 14软件工程1班 指导教师: 目录 4. 1系统结构图 4. 2系统登陆流程图 (7) 4. 3系统E-R图 (8)

1.课程设计概述 系统目的 该系统主要建立一个完整的旅游网站,突出旅游特点,有美观的界面设计。主要功能: 1.用户可以对各景点相关交通方式管理与查询、酒店预订、各个景点路程与旅游方式的设计与查询、对个景点所需费用查询。 2.有一定数量旅游景点相关信息可供处理。方便游客了解景区各种相关信息,同时有利与景区管理部门的管理,加强双边的沟通与协作,以提高和改善管理水平,使游客通过对网站的浏览可以对景点有比较真实和丰富的了解,对景点本身做一个比较好的宣传和推广。 系统根据实际情况收集的资料为背景,网站中包括各个景区的基本情况介绍如:交通情况,门票价格和风景图片欣赏等,用户登陆后,都可以浏览站中的所有信息,同时可以通过系统来查询所需要的各种信息,并且可以订购门票和预约酒店以及车辆等。 管理人员登陆系统后,将各种烦琐的管理工作通过网站来管理,用最少的人力和物力提高管理水平,方便发布各种旅游信息,处理游客所遇到的各种问题,及时了解游客对旅游管理部门的意见,通过数据分析可以了解游客的基本情况和不同时期游客的变化情况,提前做出必要的准备工作。 管理人员通过系统处理各个事务,使前台的用户操作方便简单,突出旅游特点,具有美观的界面设计,保证网站安全稳定的运行。 系统任务 旅游网站管理系统主要是用于旅游管理部门和旅游公司,对旅游信息的进行发布和修改以及加强游客进行交流。 本系统是根据旅游行业的这种现状,提出解决问题的一个可行性方法:采用现代化统一的计算机网络系统,实现了旅游管理的网络化,各类信息有序地进行存储,同时采用了权限认证的方式,只有经过了系统权限认证之后,方可

相关文档