太原理工大学软件工程-教材简介
太原理工大学软件工程《系统分析与设计》实验报告

TAIYUAN UNIYERSIIY OF TECHNOLOGY本科实验报告课程名称:__________ 系统分析与设计 ______________实验项目:《企业人事管理系统》实验实验地点:____________ 逸夫楼404 ________________专业班级:软件工程XXXX班学号:XXXXXX学生姓名:____________ XXXX ___________________指导教师:____________ 電红________________________2016年11月1日一、实验目的通过《系统分析与设计》实验,使学生在实际的案例中完成系统分析与系统设计中的主要步骤,并熟悉信息系统开发的有关应用软件,加深对信息系统分析与设计课程基础理论、基本知识的理解,提高分析和解决实际问题的能力,使学生在实践中熟悉信息系统分析与设计的规范,为后继的学习打下良好的基础。
二、实验要求学生以个人为单位完成,自选题目,班内题目不重复,使用UML进行系统分析与设计,并完成实验报告。
实验报告以纸质版(A4)、电子版在课程结束前提交(10周)。
三、实验主要设备:台式或笔记本讣算机四、实验内容1选题及项目背景企业人事管理系统2定义企业指定人员通过第一次登录,输入用户名:TSoft,密码:111进入系统,在档案管理模块建立超级管理员档案,然后在新增用户模块设置为管理员,系统默认笫一个被设置被设置的管理员为超级管理员。
然后第二次登录输入用户名:T00001,密码:111 进入系统,在修改密码模块修改超级管理员登录密码,在档案管理模块建立普通管理员档案,在新增用户模块设置为管理员,除了第一个被设置的管理员外均为普通管理员。
管理员使用账号密码登录,然后可以在系统中进行密码修改,在档案管理模块维护员工档案,在考勤管理模块填写考勤信息,在奖惩管理模块填写奖惩信息,在培训管理模块维护培训信息,在人员设置模块设置员工采用的账套。
太原理工大学软件工程《软件代码开发技术》实验报告

实验报告 实践报告□课程名称:软件代码开发技术实验、实践名称:实验一软件代码基础实验实验、实践地点:致远楼B303专业班级:软件XXXX 学号:XXXXXXXX 学生姓名:XXX指导教师:孙静宇2017年4 月17 日一、实验目的和要求(必填)熟悉JSP、Servlet、JDBC、MySQL、MVC等相关技术,培养良好的代码风格,为其他实验做好准备。
参照课本及参考程序,快速熟悉相关内容,编写带有自己标识信息的留言板程序(如sjyNote),熟悉Java等编程语言或技术的基本编程技巧,注重良好的代码风格(如变量命名、代码注释、Servlet与类中代码的结构等),初步掌握编写Web应用程序的能力。
二、实验内容和原理(必填)在熟悉MySQL、MyEclipse开发环境基础上,基于MVC模式,使用Jsp+Servlet 编写一个留言版程序,前台用Jsp,后台用Servlet,并培养良好的代码风格。
三、主要仪器设备(必填)软件环境:Windows 7/2008-x86,MySQL5.5,MyEclipse3.6;硬件环境:P4 2.4G/80G/1G/64M及较高配置的PC机。
四、操作方法与实验步骤1.安装和配置MySQL、MyEclipse集成开发环境;2.通过查阅课本、网络资料,了解相关知识;3.按照代码风格要求,编写自己的留言板程序;4. 调试程序,输出结果,并进行记录。
五、实验数据记录和处理(可选)AddMessage.javaprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {byte b1[]=request.getParameter("name").getBytes("ISO-8859-1");String na=new String(b1,"gb2312");byte b2[]=request.getParameter("email").getBytes("ISO-8859-1");String em=new String(b2,"gb2312");byte b3[]=request.getParameter("title").getBytes("ISO-8859-1");String ti=new String(b3,"gb2312");byte b4[]=request.getParameter("content").getBytes("ISO-8859-1");String co=new String(b4,"gb2312");if(na==null)na="";if(em==null)em="";if(ti==null)ti="";if(co==null)co="";try{PreparedStatement stm=con.prepareStatement("insert into messagevalues(?,?,?,?)");stm.setString(1, ti);stm.setString(2, na);if(em.length()==0)stm.setString(3, null);else stm.setString(3, em);stm.setString(4, co);try{stm.execute();}catch (Exception e) { }RequestDispatcherrequestDispatcher=request.getRequestDispatcher("ViewMessageServlet");requestDispatcher.forward(request, response);}catch (Exception e) {e.printStackTrace();}}ShowMessage.javaprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {Collection<MessageDataBean> ret=new ArrayList<MessageDataBean>();try{Statement stm=null;stm=con.createStatement();ResultSet result=stm.executeQuery("select count(*) from message");int message_count=0;if (result.next()) {message_count=result.getInt(1);result.close();}if (message_count>0) {result=stm.executeQuery("select * from message");while(result.next()){String name=result.getString("name");String title=result.getString("title");String email=result.getString("email");String content=result.getString("content");MessageDataBean msdBean=new MessageDataBean();msdBean.setTitle(title);msdBean.setName(name);msdBean.setEmail(email);msdBean.setContent(content);ret.add(msdBean);}result.close();stm.close();}request.setAttribute("messages", ret);RequestDispatcherrequestDispatcher=request.getRequestDispatcher("ViewMessages.jsp");requestDispatcher.forward(request, response);}catch (Exception e) {e.printStackTrace();}}Messages.jsp<form action="AddMessage"><table align="center"border="0"><tr><td>姓名</td><td><input type="text"name="name"size="25"/></td></tr><tr><td>email</td><td><input type="text"name="email"size="25"/></td></tr><tr><td>主题</td><td><input type="text"name="title"size="25"/></td></tr><tr><td>内容</td><td><textarea name="content"rows="7"clos="25"></textarea></td></tr><tr><td colspan="3"><table width="100%"cellspacing="0"cellpadding="0"><tr><td><input type="submit"value="提交留言"></td><td><a href="ViewMessageServlet">查看留言</a></td><td><input type="reset"value="重新填写"></td></table></td></tr></table></form>ViewMessage.jsp<body><h2align="center">全部留言</h2><table width="80%"border="1"align="center"><%int message_count=0;Collection<MessageDataBean>messages1=(Collection<MessageDataBean>)request.getAttribute("messages"); Iterator<MessageDataBean> it=messages1.iterator();while(it.hasNext()){ MessageDataBean mg=(MessageDataBean)it.next();%><tr><td>留言人</td><td><%=mg.getName() %></td><td>email</td><td colspan="2"><% out.println("<ahref=mailto:"+mg.getEmail()+">"+mg.getEmail()+"</a>");%></td> <tr><td>主题</td><td colspan="4"><%=mg.getTitle() %></td></tr><tr><td>内容</td><td colspan="4"><textarea rows="4"cols="70"><%=mg.getContent() %></textarea></td></tr><tr><td colspan="5"bgcolor="pink"> </td></tr><%message_count++; %><% }%><p align="center"><a href="Messages.jsp">我要留言</a></p></table></body>六、实验结果与分析(必填)填写留言信息:点击提交留言:数据库中数据:点击我要留言:六、实验结果与分析(必填)七、讨论、心得(可选)六、思考题:1.为什么要保持良好的代码风格?保持好的代码风格可以避免一些不必要的错误,可以提高程序的可读性,提高开发效率。
太原理工软件工程实验报告全套

本科实验报告课程名称:软件工程实验项目:传统软件工程的需求分析建模实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月日太原理工大学学生实验报告用户接受预定用户出示去票通知和帐单打印机核对安排打印去票通知和帐单客户端客户端航班数据库订票数据库服务器终端系统逻辑图:本科实验报告课程名称: 软件工程实验项目:传统软件工程的结构设计实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月11日2.1.2 服务器程序流程打印帐单输出确定预定信息输出错误原因 打印机票输出确定预定信息服务器经网络送来911=18161512131417192010142 15 3 4678旅客资料定票/取票帐单号经网络送服务器程序五思考题1.系统设计和需求分析的关系是什么?两者必须先后关联吗?答:需求分析是一个项目的开端,也是项目建设的基石。
是对用户需求的定义,对软件系统的描述。
在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。
因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
而项目的整体风险往往表现在需求分析不明确、业务流程不合理,用户不习惯或不愿意去用承建方的软件。
作为第三方的监理公司,必须提醒承建方、客户方重视需求分析的重要性。
系统分析的任务:将用户的业务逻辑转化为程序逻辑,计算时间和成本。
根据开发人员的理论知识和实际的经验,人们会采用各种满足实际情况的系统分析、开发方法、步骤以及文档等等.2.怎样描绘系统的体系结构?答:系统体系结构是由许多结构要素及各种视图(或观点) 共11页第6页(View)所组成的,而各种视图主要是基于各组成要素之间的联系与互操作而形成的。
所以,系统体系结构是一个综合各种观点的模型,用来完整描述整个系统。
体系结构框架(Architecture Framework)用于规定具体体系结构的定义及其文档所表达的意义。
体系结构框架不需要包罗万象,通常只是针对特定的领域,可能更注重战略方面的问题,并为体系结构的发展演变提供指导。
太原理工大学本科生课程简介

1.Journal of Materials Processing Technology
2.Applied Physics A - Materials Science and Processing 3.International Journal of Material Forming 4.Journal of Materials Engineering and Performance
Sheet metal forming processes and die design is an key technology influencing the produce of automotors and aerospace vehicles. “Sheet Metal Forming Processes and Die Design” is an optional course for the studentss specialized in materials forming and control engineering. It aims at making the students know theorectical basis, characteristics, using scope and calculation of sheet metal forming processes, master the princeple and method of process procedure preparing and die design. Bilingual Teaching method is employed in the teaching of the course, which make the students have a complete contact with English expression of professional terms, and can easily communicate in English with foreign technical staffs in their future work. II. Contents and Time Allocation
太原理工大学软件工程《程序设计技术B》实验手册

本科实验报告课程名称:程序设计技术B实验地点:明相校区软件学院机房专业班级:软件工程XXXX班学号:xxxxxxxxx 学生姓名:XXX指导教师:曹棣2014年12 月29日实验名称实验一 C语言的运行环境和运行过程实验二 C语言运算符和表达式实验目的和要求1.学会安装C语言编译系统,如:Turbo C、Win-TC、Visual C++等;2.学会在上述某种编译系统中程序的编辑、编译、连接和运行;3.通过运行简单的C程序,初步了解C源程序的特点;4.理解C语言的数据类型,掌握各种常量的表示方法,变量的定义、初始化和赋值;5.学会使用C语言的算术运算符以及表达式的求值过程。
实验内容1.下载并安装C,语言编译系统,设置编辑。
2.输入并运行第1章例1-1和例1-2中程序,并记录遇到的问题和解决方法。
3.输入并运行第2章例2-2和例2-3中程序,并记录遇到的问题和解决方法。
4.求下面算术表达式的值(先自己分析,再试着用程序求解,比较得到的结果是否一致)。
⑴设x=2,a=7,y=4,求x+a%3*(x+y)%2/4;⑵设a=2,b=3,x=3.5,y=2.5,求(float)(a+b)/2+(int)x%(int)y;5.写出下面表达式运算后a的值,设原来a=10。
设a和n已定义成整型变量(先自己分析,再试着用程序求解,比较得到的结果是否一致)。
⑴ a+=a ⑵ a-=2⑶ a*=2+3 ⑷ a/=a+a⑸ a%=(n%=2),n的值等于5; ⑹ a+=a-=a*=a;主要仪器设备台式或笔记本电脑实验记录(写出实验内容中2,3,4,5的程序代码和运行结果)(可分栏或加页) 1.2 #include<stdio.h>void main(){ float a,b,sum,average;scanf("%f,%f",&a,&b);sum=a+b;average=(a+b)/2;printf("sum=%f,average=%f\n",sum,average);}1.3 #include<stdio.h>void main(){ float s[10],max,min,sum,score;int i;for(i=0;i<10;i++)scanf("%f",&s[i]);max=min=sum=s[0];for(i=1;i<10;i++){if(max<s[i]) max=s[i];if(min>s[i]) min=s[i];sum+=s[i];}score=(sum-max-min)/8;printf("score=%.4f",score); }1.4#include<stdio.h>void main(){ int x=2,y=4,a=7,t;t=x+a%3*(x+y)%2/4;printf("%d\n",t);}1.4-2#include <stdio.h>void main(){ int a=2,b=3,i;float x=3.5,y=2.5,t;t=(float)(a+b)/2+(int)x%(int)y; printf("%f",t);}1.5#include <stdio.h>int a=10;void main (){ int t1,t2,t3,t5,t6,t7,t8;float t4;t1=a+a;t2=a-2;t3=a*(2+3);t4=(float)a/(a+a);t5=a%(5%2);t6=a*a;t7=t6-t6;t8=t7;printf("%d,%d,%d,%.2f,%d,%d",t1,t2,t3,t4,t5,t8); }实验名称实验三简单程序、分支程序和循环程序设计实验四数组应用程序设计实验目的和要求1.理解C语言程序的基本结构和实现基本结构的语句;2.熟练应用赋值、输入和输出语句;3.理解并掌握关系运算符、逻辑运算符及其表达式的使用;4.熟练掌握if语句、switch语句、while语句、do—while语句和for语句的用法;5.掌握数组的定义、初始化和数组元素的引用方法;6.掌握与数组有关的算法,如:求最大(小)值,排序等;7.理解字符数组与字符串的关系,掌握字符串的处理过程和常用字符串处理函数。
软件工程说课稿(通用)

软件工程说课稿(通用)一、课程简介本课程旨在介绍软件工程的基本概念、原理和方法,帮助学生掌握软件开发过程中的有效管理和高效运作的技能。
通过研究本课程,学生将了解软件工程的重要性,并掌握软件工程的基本流程和实践技能。
二、教学目标本课程的教学目标主要包括以下几个方面:1. 了解软件工程的基本概念和发展历程;2. 掌握软件工程的主要原理和方法;3. 理解软件开发过程中的需求分析、系统设计、编码实现等关键阶段;4. 研究软件工程中的项目管理和团队协作技巧;5. 培养学生的问题分析和解决能力,提高软件开发质量和效率。
三、教学内容1. 软件工程概述- 软件工程定义和特点- 软件开发生命周期- 软件工程发展历程2. 软件开发过程- 需求分析和规格说明- 系统设计和架构- 编码与测试- 部署和维护3. 软件质量保证- 软件测试方法和技术- 质量评估和控制- 缺陷管理和修复4. 项目管理与团队协作- 项目计划与进度管理- 需求管理和变更控制- 团队组织与沟通- 软件配置管理四、教学方法1. 讲授:通过课堂讲授的方式介绍软件工程的基本概念、原理和方法;2. 实践:组织学生进行软件开发案例分析和实践操作,提升实际应用能力;3. 讨论:鼓励学生参与课堂讨论,促进思维交流和知识探索;4. 小组项目:组织学生分组进行软件开发项目实践,培养团队合作精神和项目管理能力。
五、教学评估1. 课堂作业:布置相关案例分析和问题解答,检验学生对知识的理解与掌握程度;2. 实践项目:根据学生的小组项目成果评估其软件开发能力和团队合作水平;3. 期末考试:考察学生对软件工程概念和方法的综合应用能力。
六、教学资源1. 教材:《软件工程导论》2. 参考书:《软件工程:实践者的研究方法》3. 软件开发工具:Eclipse、Visual Studio等以上就是本课程的基本内容和教学安排,希望通过学习本课程,学生能够对软件工程有更深入的理解,并在实践中掌握软件开发的方法和技巧。
太原理工大学软件工程教材简介

附录A UML图总结 附录B UML中定义的常用版型、约束和标记 附录C GOF给出的软件设计模式
建议学时 4
8
小结
本书共分成3篇,全面、详细地讲述软件工程的知识
– 第1篇按照生存周期模型详细阐述面向过程的软件工程; – 第2篇介绍面向对象软件工程的分析、设计和实现; – 第3篇则分别给出面向过程和面向对象软件工程的实验指导和案例。
建议学时 2 6
3
课程安排 (4)
周次
教学章节
9 第9章 面向对象方法学
第10章 面向对象的分 析 10
11 第11章 面向对象的软 件设计与实现
教学内容
9.1 面向对象方法概述 9.2 面向对象的软件工程 9.3 统一建模语言UML 9.4 统一软件开发过程RUP概述 9.5 本章小结和习题 10.1 面向对象的分析过程 10.2 建立用例模型 10.3 建立对象模型 10.4 建立动态行为模型 10.5 建立物理实现模型 10.6 面向对象软件开发过程的案例分析 10.7 本章小结和习题
本课程是一门实践性很强的课程,它是各种软件 开发经验的总结与提炼,学生不但应注重概念、原理、方 法、技术的掌握,也应注重方法、技术的实际应用。通过 本课程的学习,为全面掌握软件开发技术打下坚实的基础。
课程目标
通过本课程的学习,我们还可以了解并掌握:
1.软件工程的产生、软件生产发展史、软件生存周期、各种方法和生存周 期模型、软件工程面临的问题。 2.系统握软件开发最基本的内容:可行性研究和软件计划、需求分析、 概要设计、详细设计、编码、测试、维护,系统掌握这些阶段的目标、任 务、特点、步骤和文档。 3.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则, 能够应用相应的图形表示工具开发小型软件项目。 4.掌握面向对象方法的基本思想、基本概念、基本模型,面向对象分析、 面向对象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形 工具。 5. 了解软件工程发展中的新进展。
太原理工大学软件工程-第一章软件工程概述

•建立严格的文档资料,重视软件开发过程的阶段评审。
1.3软件工程
1.3.1软件工程的定义 人们曾从不同的角度,给软件工程下过许多定义,其中典型的 两个为: Fritz Bauer在NATO会议上给出的定义: “软件工程是为了经济地获得可靠的和能在实际机器上高效运 行的软件,而建立和使用的完善的工程原理(方法)。这个定 义指出了软件工程的目标是经济地开发出高质量的软件,强调 软件工程是一门工程学科,它必须建立和使用的完善的工程原 理。 IEEE【IEE93】给出了一个更加综合的定义: “将系统化的、规范的、可度量的方法应用于软件的开发、 运行和维护的过程,即将工程化应用于软件中。”这个定义 强调了工程化方法和如何实现这些方法在软件工程中的重要 地位。
•
• • •
•
1.3.3 软件工程方法学
软件工程包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程 学科。 所谓管理就是通过计划、组织和控制等一系列活动,合理地配置和使用各种资 源,以达到既定目标的过程。 通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学 (methodology),也称为范型。 软件工程方法学包含3个要素:方法、工具和过程。其中,方法是完成软件开 发的各项任务的技术方法,回答“怎样做”的问题;工具是为运用方法而提供 的自动的或半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要 完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 目前使用得最广泛的软件工程方法学,分别是传统方法学和面向对象方法学。
1. 传统方法学
传统方法学也称为生命周期方法学或结构化范型。它采用结构化技术(结构化分 析、结构化设计和结构化实现)来完成软件开发的各项任务,并使用适当的软件 工具或软件工程环境来支持结构化技术的运用。这是最早的软件开发方法。 这种方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地完成每 个阶段的任务。采用这种方法学开发软件的时候,从对问题的抽象逻辑分析开始, 一个阶段一个阶段地进行开发。具体过程如下: (1)采用结构化技术(结构化分析、结构化设计和结构化实现)完成软件开发的 各项任务。 (2)把软件生命周期划分成若干个阶段,然后顺序完成各个阶段的任务。 (3)每一个阶段的开始和结束都有严格标准,前一阶段结束的标准是后一阶段工 作开始的标准。 (4) 在每一阶段结束之前必须正式地进行严格的技术审查和管理复审.
软件工程整套课件完整版电子教案最全ppt整本书课件全套教学教程(最新)

2、 软件工程学
软件工程学
软件开发技术
软件开发方法学 软件工具 软件工程环境
软件工程管理
软件工程管理学 软件经济学
---- 软件工程学的范畴
2021/7/15
微软企业文化宗旨部分内容
Wake up every day with a feeling of passion for the different technology will make in people’s Life.
2021/7/15
1、确定系统的环境要求
该系统规模不太大,可以和用户单位的其他管理系统 使用相同的计算机硬件设备、相同的操作系统和相同的关 系数据库管理系统。
2021/7/15
课程主要内容
本课程比较全面、系统地介绍软件工程的概念、技术 与方法。
主要内容包括:软件工程概述、软件生存周期及软件 需求分析、软件设计方法、软件测试技术等。
通过本课程的学习,使学生能真正的从中了解软件开 发的整个过程。为了让学生真正得以实践,结合实际软件 开发项目,让学生从问题定义开始,经过可行性研究、需 求分析、概要设计、详细设计、编码直到最后要对自己开 发的软件还要进行测试,这样一个软件开发过程,从而使 学生掌握软件开发的基本技能。
2021/7/15
3、按软件开发划分
软软 件件 项产 目品 开开 发发
2021/7/15
1.2 软件工程的概念及范畴
1、“软件工程”----Software Engineering
于1968年 NATO 组织在 德国召开的一次会议上提出
是把软件当作一种工业产品,要求 “采用工程化的 原理与方法对软件进行计划、开发和维护 ”。
2021/7/15
太原理工大学软件工程

太原理工大学软件工程
太原理工大学软件工程专业是一个广泛涉及计算机科学和软件开发的学科领域。
这个专业旨在培养学生掌握软件工程的基本理论和实践技能,使他们能够设计、开发和维护高质量的软件系统。
该专业的课程设置包括计算机编程、数据结构、算法设计、计算机网络、数据库系统、软件测试和质量保证等多个方面的内容。
学生将学习掌握各种编程语言和开发工具,通过实际项目实践培养解决实际问题的能力。
在学习过程中,学生将参与到各种软件开发项目中,包括个人项目和团队项目。
通过项目实践,他们将学习如何进行软件需求分析、系统设计、编码实现、测试和上线部署等工作。
此外,太原理工大学软件工程专业还注重培养学生的沟通和团队合作能力。
学生将通过课程中的小组讨论、项目团队合作等形式,培养自己的团队协作和领导能力。
毕业后,软件工程专业的学生可以在各种软件开发和IT服务行业就业。
他们可以成为软件工程师、系统分析员、软件架构师、项目经理等职位。
他们也可以选择继续深造,攻读硕士或博士学位,从事科研或教学工作。
总之,太原理工大学软件工程专业是一个培养软件开发和工程化能力的学科,为学生提供了丰富的知识和实践机会,为他们未来的职业发展奠定坚实的基础。
《软件工程》课程简介

软件工程(SoftwareEngineering)总学时:32学时理论:26学时实验(上机、实习等):6学时学分:2课程主要内容:《软件工程》是计算机专业本科学生必修的一门专业主干课程。
软件工程是研究和指导软件开发和维护的工程类学科,它以计算机科学理论及其他相关学科的理论为指导,采用工程化的概念、原理、规范、技术和方法进行软件工程项目的开发和维护,把经过实践证明正确的管理措施和当前能够得到最好的技术方法结合起来,以较少的代价获取高质量的软件产品。
通过40余年的努力,软件工程已逐步发展成为一门成熟的专业学科。
软件工程作为一门专业主干课,重点要求学生学习与软件开发和维护有关的四个方面的主要内容——过程与模型、方法与技术、工具与环境、标准与规范。
进而通过课程实践培养学生运用软件工程基本原理解决实际问题,并从事复杂软件项目开发和维护的实践应用能力与创新能力,努力成为当今信息社会和知识经济时代所需要的高素质计算机专业人才。
先修课程:学习本课程的先修课程:《C程序设计》、《数据结构》、《面向对象的程序设计》、《数据库系统原理》。
适用专业:计算机科学与技术教材:张海藩.《软件工程》.北京:人民邮电出版社,2009教学参考书,[1]郑人杰.《实用软件工程》.北京:清华大学出版社,1997[2]朱三元等.《软件工程技术概论》.北京:科学出版社,2002[3]周之英.《现代软件工程》(上、中、下).北京:科学出版社,2000[4]StephenR.Schach著,袁兆山等译.《软件工程JaVa语言实现》(美).北京:机械工业出版社,1999[5]邵维忠,杨芙清.《面向对象的系统分析》.北京:清华大学出版社,1998年[6]RonPatton著,周予滨等译.《软件测试》(美).北京:机械工业出版社,2007年。
太原理工大学软件工程实验报告资料

本科实验报告课程名称:软件工程导论实验项目:教务管理系统之子系统—学院课程安排报告实验地点:专业班级:学号:学生姓名:指导教师:2015年5 月15 日项目说明教务管理系统之子系统——学院课程安排1.系统简介每个学期的期中,学校教务处会分类向各个学院发出下各学期的教学计划,包括课程名称、课程代码、课时、班级类别(本科、专科、成人教育、研究生)、班号等;学院教学主管人员根据教学任务要求给出各门课程的相关限制(如:任课教师的职称、上课的班数、最高和最低周学时数等);任课教师自报本人授课计划,经所在教研室协调任可,将教学计划上交学院主管教学计划的人员,批准后上报学校教务处,最终由教务处给出下个学期全学院教师的教学任务书。
假设上述排课过程全部由人工操作,现要求为上述过程实现计算机自动处理过程。
2.限定条件(1)原则上,每位教师每学期主讲的课程门数不超过2门。
(2)严格限制:每位教师每年教学工作量不得低于300,不得超过600。
(3)本学期出现严重教学事故的教师不能承担下各学期的主讲任务。
(4)本系统的输入项至少包括:教务处布置的教学计划和工作量计算子系统、学院教师自报的授课计划和学院制定的有关授课限制条件。
(5)本系统的输出项至少包括:教务处最终下达全院教师的教学任务书和学院各个班级下各学期的课程表(可以不含上课地点)。
附工作量计算子系统中的课堂教学工作量计算方法(简化计算):1.单班课计划学时*1.0双班课计划学时*1.3三班课计划学时*1.6四班课计划学时*2.02.双语教学计划学时*合班系数*2.03.精品课程国家级精品课程计划学时*合班系数*1.5省级精品课程计划学时*合班系数*1.1软件需求分析1任务概述1.1目标:根据输入的各类信息及限制条件,给出教学任务书。
1.2运行环境:win7系统,java语言,SQL数据库。
1.3条件与约束:(1)原则上,每位教师每学期主讲的课程门数不超过2门。
(2)严格限制:每位教师每年教学工作量不得低于300,不得超过600。
《软件工程》课程教学大纲

《软件工程》课程教学大纲一、课程基本信息课程名称:软件工程英文名称:Software Engineering课程编码:11223C课程类别:专业主干课总学时:48学时(含实验10学时)总学分:3适用专业:计算机科学与技术/网络工程方向先修课程:高级语言程序设计,数据库设计原理,数据结构开课系部:计算机科学与技术系二、课程的性质和任务《软件工程》是计算机科学与技术专业本科生的一门专业主干课程。
它是一门指导计算机软件系统开发和维护的工程学科,也是计算机科学与技术领域的一个重要学科。
软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学,通过本课程的学习,使学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术,了解软件工程各领域的发展动向;开发软件项目的工程化的方法及在开发过程中应遵循的流程、准则、标准和规范等。
使学生掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为今后从事软件开发和应用打下良好的基础。
通过本课程的学习,培养学生对软件开发能力和项目管理能力。
三、课程教学基本要求(一)理论教学内容和基本要求第1章软件工程概述了解软件工程的产生和发展、软件危机的原因,知道如何消除软件危机。
明白软件工程的基本概念,知道软件工程中包含的领域范围重点:软件危机的产生和消除方法第2章软件过程软件与软件生命周期任务,软件开发过程中的基本开发模型,软件开发工具与软件开发环境。
掌握软件生存期模型,软件开发模型方法介绍。
重点:软件与软件生存期,软件开发过程模型难点:软件开发过程模型第3章结构化分析掌握软件需求获取的方法、软件需求工程的任务、软件需求的原则、主要的需求分析方法;需求工程的基本活动、需求的有效性验证、需求变动管理、需求规格说明;建立结构化分析的三种模型;三种模型对应的描述方法:E-R图,数据流图,状态图。
掌握分层数据流图、数据词典和加工逻辑说明的基本构造方法。
重点:软件需求获取方法、结构化分析方法、分析建模方法难点:结构化分析建模方法第4章结构化设计理解软件结构化分析与结构化设计的映射关系,软件设计的基本原理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4
3
13 第13章 软件体系结 构
14
第14章 设计模式
14.1 14.2 14.3 14.4
设计模式概述 GRASP设计模式及其应用 GoF设计模式及其应用 本章小结和习题
4
教材简介
课程安排(6)
周次 教学章节 教学内容 15.l 软件复用技术 15.2 基于构建的软件工程技术 15.3 软件过程与标准化 15.4 敏捷软件开发过程 15.5 Web软件工程 15.6 软件产品线技术 15.7 本章小结和习题 16.1 面向过程的软件工程实验 16.2 面向对象的软件工程实验 附录A UML图总结 附录B UML中定义的常用版型、约束和标记 附录C GOF给出的软件设计模式 建议学时
建议教学过程中理论和实验相结合,各校可根据教学计划 安排,选择本教材的全部或部分进行教学,建议全部教学 的学时数为64(56+8)。
2014年6月16日
教材简介
第15页
教材简介
课程目标
本课程是计算机或软件专业的核心课程之一,重点讲 述建造软件系统的方法、技术、流程、工具、规范等,本 课程的任务是使学生掌握软件工程的基本概念、基本原理、 实用的开发方法和技术;了解软件工程各领域的发展动向; 了解如何用工程化的方法开发软件项目,以及在开发过程 中应遵循的流程、准则、标准和规范。 本课程是一门实践性很强的课程,它是各种软件开发 经验的总结与提炼,学生不但应注重概念、原理、方法、 技术的掌握,也应注重方法、技术的实际应用。通过本课 程的学习,为全面掌握软件开发技术打下坚实的基础。
教材简介
建议学时 4
第10章 面向对象的分 析
10
6
11
第11章 面向对象的软 件设计与实现
4
课程安排(5)
周次 12 教学章节 第12章 软件开发工 具StarUML及其应用 教学内容 12.l 软件开发工具StarUML概述 12.2 StarUML环境下的UML图形建模 12.3 一个简易教学管理系统的分析和设计 12.4 本章小结和习题 13.1 软件体系结构概述 13.2 经典的软件体系结构风格 13.3 现代的软件体系结构风格 13.4 本章小结和习题 建议学时
教材简介
软件工程
李爱萍、崔冬华、李东生 主编 人民邮电出版社 2014-2
2014年6月16日
教材简介
第1页
2014年6月16日
教材简介
第2页
内容提要
本书系统地介绍了软件工程的概念、原理、方法和案例, 比较全面地反映了软件工程技术的全貌。全书共3篇,分 16章,分别以“面向过程的软件工程”、“面向对象的 软件工程”和“软件工程实验”为主线阐述软件工程开 发方法。 本书第2篇还介绍了软件体系结构、设计模式、软件工程 新技术等内容,体现了软件工程的最新理论和技术。 全书强调以面向过程或面向对象的思想指导软件开发过 程,并配以实例分析和说明,便于教学和应用。
教材简介
教学章节
建议学时
4
4
5
2
课程安排 (3)
周次 教学章节 6 第6章 软件编码
6.1 6.2 6.3 6.4
教学内容 程序设计语言的分类 程序设计语言的选择 程序设计风格 本章小结和习题
建议学时
2
7
第7章 软件测试
8
第8章 软件维护
7.1 软件测试的目标 7.2 软件测试的原则 7.3 软件测试方法及分类 7.4 软件测试用例的设计 7.5 软件测试过程 7.6 调试 7.7 软件测试阶段中止的条件 7.8 本章小结和习题 8.1 软件维护概述 8.2 软件维护的过程 8.3 软件可维护性 8.4 软件维护中存在的 问题 8.5 逆向工程和再工程 8.6 本章小结和习题
教材简介
建议学时
1
第1章 概述
3
2
第2章 可行性研究
2
3 第3章 软件需求分 析
5
课程安排 (2)
周次 3 教学内容 3.6 SA方法的应用 第3章 软件需求分析 3.7 数据库内容的 需求分析和描述 3.8 需求规格说明书 3.9 本章小结和习题 4.1 软件总体设计的目标和任务 4.2 软件结构设计准则 4.3 软件设计的概念和原理 第4章 软件总体设计 4.4 数据库设计 4.5 软件结构设计的图形工具 4.6 结构化设计方法 4.7 总体设计说明书模板及内容 4.8 本章小结和习题 5.1 详细设计的目的与任务 5.2 结构化程序设计 第5章 软件详细设计 5.3 详细设计工具 5.4 人机界面设计 5.5 详细设计说明书 5.6 本章小结和习题
6. … …
要求切实掌握课程内容的基本思想、基本概念、基本方法,能够应用相应的图 形表示工具进行小型项目的开发,特别是实用方法与技术的应用。
教材简介
课程服务于
- 系统分析人员
- 系统设计人员 - 系统测试人员 - 项目经理 - 程序员
- 软件咨询顾问
- ……
教材简介
课程安排
顺序 教学章节
4 学分,建议: 64 学时(56+8)
教材简介
课程背景
自1968年第一届NATO会议上首次提出“软件工程”的 概念至今,已经过去了四十多年,软件工程得到了很大发 展,不断出现新方法、新技术和新模型,形成了软件工程 领域的基础理论、工程方法和技术体系,具备了学科的完 整性和教育学特色,2011年2月我国国务院学位委员会新修 订学科目录中将软件工程(学科代码为0835)增设为一级 学科,进一步促进了软件工程的发展。 软件工程课程是高等学校计算机科学与技术、软件工 程等专业的一门重要的专业核心课程,是信息类专业的推 荐课程,也是每一个从事软件分析、设计、开发、测试、 管理和维护人员的必备知识。
教学内容 1.1 软件和软件危机 1.2 软件工程 1.3 软件过程和软件生存周期 1.4 软件开发模型 1.5 传统的软件工程和面向对象的软件工程 1.6 本章小结和习题 2.1 可行性研究的目的和任务 2.2 可行性研究的步骤 2.3 系统流程图 2.4 成本-效益分析 2.5 可行性研究报告的主要内容 2.6 本章小结和习题 3.1 需求分析的任务和步骤 3.2 需求获取的常用方法 3.3 需求分析的常用方法 3.4 结构化分析方法 3.5 需求分析图形工具
教材简介
6
3
课程安排 (4)
周次 教学章节 9 第9章 面向对象方法学 教学内容 9.1 面向对象方法概述 9.2 面向对象的软件工程 9.3 统一建模语言UML 9.4 统一软件开发过程RUP概述 9.5 本章小结和习题 10.1 面向对象的分析过程 10.2 建立用例模型 10.3 建立对象模型 10.4 建立动态行为模型 10.5 建立物理实现模型 10.6 面向对象软件开发过程的案例分析 10.7 本章小结和习题 11.1 面向对象的设计准则和启发式规则 11.2 系统设计 11.3 服务、关联和聚合关系设计 11.4 面向对象设计优化 11.5 面向对象系统的实现 11.6 本章小结和习题
教材简介
课程பைடு நூலகம்标
通过本课程的学习,我们还可以了解并掌握:
1.软件工程的产生、软件生产发展史、软件生存周期、各种方法和生存周期模
型、软件工程面临的问题。 2.系统掌握软件开发最基本的内容:可行性研究和软件计划、需求分析、概要 设计、详细设计、编码、测试、维护,系统掌握这些阶段的目标、任务、特点、步 骤和文档。 3.掌握结构化方法的基本思想,开发过程和步骤,应遵循的原则和准则,能够 应用相应的图形表示工具开发小型软件项目。 4.掌握面向对象方法的基本思想、基本概念、基本模型,面向对象分析、面向 对象设计、面向对象实现的任务、内容和步骤,能够应用相应的图形工具。 5. 了解软件工程发展中的新进展。
教材简介
内容概览
全书共三篇,分十六章 ① 面向过程的软件工程,共八章,以传统的软件生存周期为主线, 介绍软件工程的原理和方法。 ② 面向对象的软件工程,共七章,以UML为主线,结合当前流行的 开源工具StarUML,介绍面向对象软件工程的原理和方法。 ③ 软件工程实验,共一章,给出软件工程的实验环节要求和示例。
4
15
第15章 软件工程新 技术
第16章 软件工程实 16 验
17 附录
8
教材简介
小结
本书共分成3篇,全面、详细地讲述软件工程的知识
– 第1篇按照生存周期模型详细阐述面向过程的软件工程; – 第2篇介绍面向对象软件工程的分析、设计和实现; – 第3篇则分别给出面向过程和面向对象软件工程的实验指导和案例。