太原理工大学软导实验报告
- 格式:doc
- 大小:160.46 KB
- 文档页数:16
太原理工大学现代科技学院软件技术基础课程实验报告专业班级通信14-1学号2014101596姓名王晓振指导教师范俊杰软件技术基础实验指导及报告实验说明:1、共5次实验,每次实验完成1个内容。
2、实验报告命名统一为:软件_专业班级_学号_姓名3、自备U盘,在实验前认真阅读实验要求,在实验中及时记录保存实验结果和调试过程,并填写到实验报告对应位置,实验结束后将该实验报告电子版在指定时间内提交给各班学习委员。
实验一顺序线性表的插入与删除1、实验目的:理解和掌握线性表的顺序存储结构,使用C语言根据相应算法编写程序,实现线性表的创建、插入和删除。
2、实验内容:编写C程序实现先建立一个长度不小于n = 8的线性表,输出原始线性表;然后进行插入运算,在第3个元素前面插入一个新元素b(值为学号后3位),得到一个长度为(n+1)的线性表,输出插入后的线性表;最后进行删除运算,删除第5个元素,得到长度为n的线性表,输出删除后的线性表。
3、参考程序:#include <stdio.h>#define MAXSIZE 20typedef struct{int data[MAXSIZE];int last;}List;void Init(List *pt){int i = 0;for(i=1;i<11;i++){pt->data[i] = i;pt->last = i;}}void Output(List *pt){int i,max=pt->last;printf("List have %d: \n",pt->last);for(i=1;i<=max;i++)printf("List %d Value is:%d \n",i,pt->data[i]);printf("\n");}void InsertL(List *pt, int i, int x){int k;if(i<1 || i>MAXSIZE-1){printf("插入位置不合适!\n");}else if(pt->last>=MAXSIZE-1){printf("线性表已满!\n");}else{for (k=pt->last;k>=i;k--)pt->data[k+1]=pt->data[k];pt->data[i]=x;pt->last++;}}void Insert(List *pt){int position,x;printf("please input insert position and value:");scanf("%d,%d",&position,&x);InsertL(pt, position, x);}void DeleteL(List *pt, int i){int k;if(i<1 || i>pt->last){printf("删除位置不合适!\n");}else{for(k=i+1;k<=pt->last;k++)pt->data[k-1]=pt->data[k];pt->last--;}}void Delete(List *pt){int position;printf("please input delete position:");scanf("%d",&position);DeleteL(pt, position);}int main(){int int_Insert,int_Delete;List L,*pt;pt = &L;Init(pt);Output(pt);Insert(pt);Output(pt);Delete(pt);Output(pt);return 0;}4、实验结果:将程序运行结果截屏粘贴至此处。
课程名称: 操作系统B 试验项目: 操作系统试验试验地点: 逸夫楼专业班级: 软件14班学生姓名: 学号:指导老师: 张辉12 月 2 日目录.............................................................. 错误!未定义书签。
试验一多个操作系统界面 ................. 错误!未定义书签。
一.目和要求........................................... 错误!未定义书签。
二.内容................................................... 错误!未定义书签。
三.程序代码........................................... 错误!未定义书签。
四.运行结果........................................... 错误!未定义书签。
试验二进程调度程序设计 ................. 错误!未定义书签。
一、目和要求 ......................................... 错误!未定义书签。
二、示例 ................................................. 错误!未定义书签。
程序清单................................................... 错误!未定义书签。
运行结果................................................... 错误!未定义书签。
试验三存放管理程序设计 ................. 错误!未定义书签。
一、目和要求 ......................................... 错误!未定义书签。
太原理工大学现代科技学院计算机软件技术基础课程实验报告专业班级学号姓名指导教师实验名称 顺序栈的入栈与退栈及读栈顶元素 同组人 专业班级 学号 姓名 成绩 实验目的与要求:通过对栈的编程练习,加强对栈的特点、顺序存储结构及其基本运算的理解和掌握。
使用C 语言根据相应算法编写一个程序,实现建栈、入栈、退栈及读栈顶元素。
要求仔细阅读下面的内容,编写一个C 程序,上机调试通过,并观察其结果,写出实验报告书。
实验内容:建立一个容量为m 的顺序栈,首先在其中压入5个元素,然后作退栈运算和读栈顶元素。
具体要求: ① 根据顺序栈的入栈、退栈、读栈顶元素算法编写一个C 程序,并上机调试。
② l 编写的C 程序要求建立一个容量不小于5的顺序栈,首先用入栈算法在其中压入5个元素,然后读栈顶元素,接着作退栈运算,并输出退栈结束后的栈顶元素。
③ l 实验完成后,写出实验报告书。
上机程序: #include "stdlib.h" void init_stack(s,m,top) int *s;int m,*top; {s=malloc(m*sizeof(int)); *top=0; } void push(s,m,top,x) int s[],x;int m,*top; {if(*top==m){printf("stack-overflow\n");return;} *top=*top+1; s[*top-1]=x;return;}……………………………………装………………………………………订…………………………………………线………………………………………void pop(s,top,y)int s[],*y;int *top;{if(*top==0){printf("stack-underflow\n");return;} *y=s[*top-1];*top=*top-1;}void rea(s,top,y)int s[],*y;int *top;{if(*top==0) {printf("stack empty \n");return;} *y=s[*top-1];}main(){int x,s[10];int m,*y,*top,i;m=10;init_stack(s,m,top);/*scanf("%d",&x); */push(s,m,top,2);/*scanf("%d",&x); */push(s,m,top,3);push(s,m,top,4);push(s,m,top,5);push(s,m,top,6);/*for(i=0;i<5;i++){ scanf("%d",&x);push(s,m,top,x);} */rea(s,top,y);printf("y=%d",*y); printf("\n");pop(s,top,y);pop(s,top,y);rea(s,top,y);printf("y=%d",*y); printf("\n"); getch();return;}实验结果:。
本科实验报告课程名称:软件开发环境与工具实验项目:实验一CASE工具PowerDesigner的使用实验二利用Axure制作网页原型实验三搭建Visual Studio开发环境,设计Windows控制台应用程序实验四掌握在Visual Studio 2010中进行Windows Form应用程序的设计方法实验五掌握在Visual Studio 2010中进行Web应用程序的设计方法实验地点:明向校区软件实验楼208专业班级:软件1333班学号:2013006142学生姓名:赵建伟指导教师:秦智2015年12 月17 日遇到的问题和解决方法(2)在axure元件库中选择相应的部件(4)置入框选择窗体中的文本框(单行)和提交按钮(5)整体修改后的效果(2)设计完成教务处登陆界面(2)Default.apsx文件<%@Page Title="主页"Language="C#"MasterPageFile="~/Site.master"AutoEventWireup="true"CodeBehind="Default.aspx.cs"Inherits="WebApplication3._Default" %><asp:Content ID="HeaderContent"runat="server"ContentPlaceHolderID="HeadContent"> <style type="text/css">.style1{width: 100%;。
实验报告 实践报告□课程名称:软件代码开发技术实验、实践名称:实验一软件代码基础实验实验、实践地点:致远楼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.为什么要保持良好的代码风格?保持好的代码风格可以避免一些不必要的错误,可以提高程序的可读性,提高开发效率。
本科实验报告课程名称:软件需求工程实验项目:软件需求课程实验实验地点:行勉楼A304 专业班级:学号:学生姓名:指导教师:2016年5月18日实验一需求分析实验一、实验目的1、要求学生根据实际项目的要求,应用传统的结构化方法或者面向对象方法进行需求分析;2、通过实验了解和掌握UML和Rataional等工具的使用方法。
二、实验设备:PC机、Windows操作系统、UML和Rational等工具软件。
三、实验内容:1、熟悉和掌握UML和Rational Rose工具的使用。
在rose中创建新的模型,分别画出如下的图:用例图、类图、包图、活动图、顺序图、状态图等。
2、根据如下项目,对系统进行需求分析。
具体要求,绘制系统的用例对用例进行规格说明,绘制类图、活动图、顺序图和状态图等。
四、实验步骤1、安装Rational Rose。
2、根据问题目标、业务背景、问题陈述(描述)等(此信息可以根据项目名称从网上搜索),确定系统的参与者Actor(用户),从用户角度确定系统相关功能用例Usecase,做出用例图。
3、针对每个功能用例使用《用例描述模板》,进行描述。
4、分别使用活动图、顺序图描述用例执行过程。
五、实验结果1、安装Rational Rose。
成功安装了UML软件。
2、根据问题目标、业务背景、问题陈述(描述)等(此信息可以根据项目名称从网上搜索),确定系统的参与者Actor(用户),从用户角度确定系统相关功能用例Usecase,做出用例图。
(一)选题1:学生选课系统项目背景:本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。
实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。
用例图:用户:学生:管理者:类图:时序图:管理者:学生:协作图:老师:学生:(二)选题2:图书管理系统项目背景:本系统实现图书管理的基本功能,包括学生借书退书,查看自己的借书信息;管理员添加学生、管理学生和管理书籍等。
本科实验报告课程名称:系统分析与设计实验项目:《企业人事管理系统》实验实验地点:逸夫楼404专业班级:软件工程XXXX班学号:XXXXXX 学生姓名:XXXX指导教师:**2016年11月 1 日一、实验目的通过《系统分析与设计》实验,使学生在实际的案例中完成系统分析与系统设计中的主要步骤,并熟悉信息系统开发的有关应用软件,加深对信息系统分析与设计课程基础理论、基本知识的理解,提高分析和解决实际问题的能力,使学生在实践中熟悉信息系统分析与设计的规范,为后继的学习打下良好的基础。
二、实验要求学生以个人为单位完成,自选题目,班内题目不重复,使用UML进行系统分析与设计,并完成实验报告。
实验报告以纸质版(A4)、电子版在课程结束前提交(10周)。
三、实验主要设备:台式或笔记本计算机四、实验内容1 选题及项目背景企业人事管理系统2 定义企业指定人员通过第一次登录,输入用户名:TSoft,密码:111进入系统,在档案管理模块建立超级管理员档案,然后在新增用户模块设置为管理员,系统默认第一个被设置被设置的管理员为超级管理员。
然后第二次登录输入用户名:T00001,密码:111进入系统,在修改密码模块修改超级管理员登录密码,在档案管理模块建立普通管理员档案,在新增用户模块设置为管理员,除了第一个被设置的管理员外均为普通管理员。
管理员使用账号密码登录,然后可以在系统中进行密码修改,在档案管理模块维护员工档案,在考勤管理模块填写考勤信息,在奖惩管理模块填写奖惩信息,在培训管理模块维护培训信息,在人员设置模块设置员工采用的账套。
在统计报表模块生成员工待遇报表。
在企业架构模块维护部门企业设置,在基本资料模块维护系统的基本资料。
如果点击初始化系统加点将对系统进行初始化恢复到原始状态,通过系统工具模块可以打开系统中常用的计算器、Excel等。
3 参考资料J A V A项目全程开发4 系统分析与设计4.1需求分析4.1.1识别参与者用户、管理员、普通管理员、超级管理员 4.1.2 对需求进行捕获与描述(内容要求2:选择其中一个用例(如下订单)给出其用例描述。
本科实验报告课程名称:软件工程实验项目:传统软件工程的需求分析建模实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月日太原理工大学学生实验报告用户接受预定用户出示去票通知和帐单打印机核对安排打印去票通知和帐单客户端客户端航班数据库订票数据库服务器终端系统逻辑图:本科实验报告课程名称: 软件工程实验项目:传统软件工程的结构设计实验地点:专业班级:软件工程学号:2学生姓名:指导教师:2015年4月11日2.1.2 服务器程序流程打印帐单输出确定预定信息输出错误原因 打印机票输出确定预定信息服务器经网络送来911=18161512131417192010142 15 3 4678旅客资料定票/取票帐单号经网络送服务器程序五思考题1.系统设计和需求分析的关系是什么?两者必须先后关联吗?答:需求分析是一个项目的开端,也是项目建设的基石。
是对用户需求的定义,对软件系统的描述。
在以往建设失败的项目中,80%是由于需求分析的不明确而造成的。
因此一个项目成功的关键因素之一,就是对需求分析的把握程度。
而项目的整体风险往往表现在需求分析不明确、业务流程不合理,用户不习惯或不愿意去用承建方的软件。
作为第三方的监理公司,必须提醒承建方、客户方重视需求分析的重要性。
系统分析的任务:将用户的业务逻辑转化为程序逻辑,计算时间和成本。
根据开发人员的理论知识和实际的经验,人们会采用各种满足实际情况的系统分析、开发方法、步骤以及文档等等.2.怎样描绘系统的体系结构?答:系统体系结构是由许多结构要素及各种视图(或观点) 共11页第6页(View)所组成的,而各种视图主要是基于各组成要素之间的联系与互操作而形成的。
所以,系统体系结构是一个综合各种观点的模型,用来完整描述整个系统。
体系结构框架(Architecture Framework)用于规定具体体系结构的定义及其文档所表达的意义。
体系结构框架不需要包罗万象,通常只是针对特定的领域,可能更注重战略方面的问题,并为体系结构的发展演变提供指导。
太原理工大学软件开发实训个人总结太原理工大学软件开发实训个人总结个人总结俗话说,实践是检验真理的唯一标准,这句话说的很是恰当。
在实训的这四个星期中,在各种各样老师的辅导和小组同学们精诚合作中我学会了很多小东西,同时了解了软件工程在现代软件开发过程中同的重要性,加深计算机网络了对软件工程所学知识的理解,初步掌握进行软件系统开发的基本,而且分析问题、解决实际问题的能力也了很大的提升,为后续课程的学习以及一定从事软件项目开发与管理工作打下了将来的基础。
我是一名新近大四的学生,纵观现在的就业形势,国家高校的扩招,世界大萧条的横扫,大学生应该有一种居安思危的紧迫感,特别是对已经已经度过两年大学的我而言,毕业并不是一个遥远的词汇。
宝剑锋从磨砺出,梅花香自苦寒来,缺乏了平时的锻炼,没有厚积更何况不能有薄发。
首先我得有思想上的紧迫感,在补习学校学习的都是理论知识,实战经验则是少之又少。
综合能力强的人才才是这个社会需要较弱的,成长成为社会需要的人才是我的个人奋斗目标。
有了强大的精神动力,有了坚如磐石的毅力,相信如愿并不遥远。
首先对于编码第三阶段,虽然早些被强调过了很多遍但是我一直没有很深的体会。
但在这次参与编码的过程对这点感慨颇深。
下述从一开始关于软件功能的定位到具体实现过程中,和其他序列人员之间人员的沟通协调必不可少。
代码的编写也不是一蹴而就,而是随着开发的过程中不断需要进行进行动态平衡。
其次在测试吃尽了苦头才深刻认识到这点。
不管是最开始的单元测试还是最后的集成测试,这些测试都必须进行不止一次。
在测试中十分痛苦的是,有错却无法判断错在何处。
我发现有一些偏差是和开发人员的编程水平和习惯有很大关系的。
拿我自己举例,在测试过程中才中总是不太规范,导致代码最后格式混乱,也空耗了大量的时间。
当然这次课程实践最重要的斩获就是我们完整模拟培训课程了一次软件开发的流程,从最开始的需求分析,到最后的测试,用户手册的编写都全程参与。
太原理工软件工程实习报告一、实习背景与目的随着信息技术的快速发展,软件工程成为现代科技领域中的重要研究方向。
为了提高自身的实践能力和专业素养,我选择了太原理工大学的软件工程实习项目。
本次实习旨在通过实际操作,深入了解软件开发流程,掌握软件工程的核心技术,并培养团队合作和解决问题的能力。
二、实习内容与过程在实习期间,我参与了太原理工大学软件实验室的一个实际项目开发。
以下是实习的主要内容与过程:1. 项目启动:在实习的开始阶段,导师为我们介绍了项目的背景和需求。
我们通过讨论和分析,明确了项目的目标、功能要求和性能要求。
2. 需求分析:我们小组成员共同参与需求分析工作,通过与导师和客户的沟通,明确了用户需求和系统功能。
我们使用UML图和用例图工具,对系统的功能进行详细的描述和文档化。
3. 设计阶段:在需求分析的基础上,我们开始进行系统设计。
我负责设计和实现系统的数据库部分,包括数据库表的创建、关系的建立和SQL语句的编写。
4. 编码阶段:根据设计文档,我开始编写代码。
我使用了Java语言和MySQL数据库,实现了系统的核心功能。
在编码过程中,我注重代码的可读性和可维护性,遵循了软件工程的最佳实践。
5. 测试阶段:在编码完成后,我们进行了系统的测试。
我负责编写测试用例,并与其他成员一起进行测试。
我们发现了一些问题,并通过调试和优化,解决了这些问题。
6. 项目总结与汇报:在项目完成后,我们进行了项目总结和汇报。
我向导师和同学们展示了自己的工作成果,并分享了在实习过程中的收获和体会。
三、实习收获与反思通过本次实习,我对软件工程的核心技术和开发流程有了更深入的了解。
我掌握了UML图和用例图的使用,熟悉了Java语言和MySQL数据库的操作。
同时,我也学会了团队合作和解决问题的能力。
在实习过程中,我也意识到了自己在一些方面的不足之处。
例如,我在需求分析阶段的沟通能力和表达能力有待提高。
此外,我在代码编写和调试过程中,还需要更加注重细节和规范,以提高代码的质量和稳定性。
《软件工程导论》实验报告课程名称:软件工程导论实验项目:学生管理系统实验地点:致远楼B401专业班级:学号:学生姓名:小组成员:指导教师:2014年 5 月22 日一、实验的目的与任务本实验课程通过完整地实施软件生命周期各阶段的任务,让学生系统地学习到软件开发过程的主要理论、方法、技术、标准和规范,使他们具备基本的软件开发设计能力;通过软件工程中常用CASE工具和软件项目管理的实践,使他们具备运用各种工具完成项目设计和实施的基本技能;通过集体项目开发,培训学生的合作意识和团队精神,培养学生对技术文档的编写能力。
二、实验内容和要求本课程的实验内容包括结构化(生命周期法)的方法学和面向对象的方法学。
通过一个模拟项目,要求学生分别用结构化方法和面向对象的方法完成系统的分析、设计和实现的整个软件开发过程。
此外实验中引入我国国家《计算机开发规范》,以规范技术文档的书写标准,提高实验教学质量。
实验要求学生采用“项目小组”的形式,结合具体的开发项目进行分析、设计。
每个项目小组必须按照《软件工程实验指导书》附录中给定的文档规范标准提供项目文档;具体要求如下:1.班级按项目小组进行分组,每组不得超过5人。
2.每个项目小组选出项目负责人或项目经理,由项目经理召集项目组成员讨论、选定开发项目,所有实验中都要采用同一个实验题目。
项目开发的每项任务要落实到人且规定该任务的起止日期和时间。
3.每个项目小组由2人进行需求分析,完成需求技术报告,全体成员参加需求讨论,修订并评审需求分析人员的需求分析报告,确定系统的需求分析模型。
4. 项目设计人员由2人根据第3步确定的结果设计系统设计,并完成文档,提交项目小组讨论。
5. 项目编码人员由1人选择第4步的一个模块编码实现。
6.对第5步的结果进行黑盒测试和白盒测试,并编写测试计划和测试结果报告。
7.题目自定或采用附录一中的题目,项目开发语言及平台自定。
8. 实验中的思考题不作书面要求。
实验一软件工程的网上资源与常用的CASE工具1 实验目的1)通过Internet搜索与浏览,了解网络环境中主流的软件工程技术网站,掌握通过专业网站不断丰富软件工程最新知识的学习方法,尝试通过专业网站的辅导与支持来开展软件工程应用实践。
2)通过Internet搜索与浏览,了解主流的软件工具和软件开发环境产品及发展和应用情况。
2 工具/准备工作需要准备一台带有浏览器、能够访问因特网的计算机。
3 实验内容与步骤1)上网搜索和浏览,了解软件工程的国家标准(1)GB/T8566-2001(2)GB/T8567-1988(3)GB/T9385-1988(4)GB/T9386-1988(5)GB/T1526-1989(6)GB/T11547-1989(7)GB/T12504-1990(8)GB/T12505-1990(9)GB/T14079-1993(10)GB/T16680-1996(11)GB/T15532-1995(12)GB/T14394-1993(13)其他了解软件工程技术的应用情况,看看哪些网站在做着软件工程的技术支持工作?请记录搜索结果。
下面是供参考的搜索结果:火龙果软件技术支持中心 (火龙果软件)北京的 (开源论坛)杭州下沙的 (做网站的论坛)以及国外的 (免费的创建网站和BLOG的软件网站) (Google 提供的代码开发网站) (免费开源软件网站)等国内在于理论性质的网站 (软件测试)做得不错。
软件工程专业网站实验记录当前,软件工程专业网站当前的技术(如培训内容)“热点”是(参考):(1)名称:软件开发过程指南主要内容:基于客户针对实际项目或者产品的开发,通过项目的真实实践,指导客户整体实施工程,同时为客户的项目提供一个基本的原型,作为演进的基础。
在实战教练结束后,提供后续技术支持。
达到在项目中实用的效果。
(2)名称:软件测试主要内容:学员在资深软件测试工程师带领下,通过测试理论、测试方法的系统学习、以及项目测试案例的实践,使学员掌握软件测试的流程、技术、方法以及规范,熟悉常用测试工具与测试过程,使学员具备测试技术和测试管理的基本能力,并能够独立承担并实施项目测试。
(3)名称:性能测试方法与技术主要内容:旨在培训出能在企业中担任大中型项目性能测试任务的高级性能测试工程师,使其具有能完成银行、电信、保险等系列软件领域即对性能要求比较高的软件系统的性能测试任务。
2)通过网络搜索,体会软件工具的应用状况,重点了解下面几种工具的概况:(1) Microsoft Visio 2003(2) Rational Rose(3) Sybase PowerDesigner(4)MI WinRunner/ LoadRunner(5)Microsoft Project(6)Microsoft Visual SourceSafe(7)CVS实验三传统软件工程的需求分析建模一、目的与任务目的:确定项目要做什么及其可实施性,在此基础上完成系统的逻辑功能模型的建立。
任务:可采用不同的需求分析技术,完成对项目的需求分析过程,给出系统的逻辑功能模型,数据字典以及规格说明书。
二、内容、要求1、实验内容与要求:熟悉系统项目的业务流程,根据现有资料绘制系统数据流图,功能分析图,编写数据字典,数据加工处理的描述以及软件系统流程设想图(新系统模型),完成系统需求规格说明书。
2、准备参考资料和阅读相关的国家有关软件开发的标准文档。
三、主要仪器设备硬件条件:服务器SUN工作站,终端为pc机。
运行环境:windows 7数据库:Sql server 2008二、软件需求规格说明书2.1背景材料随着信息化时代的到来,社会生活的各个方面都发生着翻天覆地的变化,当然学校——这个教育的前沿阵地也发生着巨大的变化。
传统的人工工资管理存在着很大的不足,如处理量随着职工人数的增多而急剧上升、靠人工来处理显得力不从心、而且极其容易出错,万一出错,将造成极大的麻烦。
而以计算机代替人工执行一系列的操作,将极大地提高办事效率和准确率,并减轻了办公人员的负担。
由此,学校管理系统就应运而生了。
通过我们对学校现有的管理系统的调查,并对工作人员的提出的要求进行细致地分析,我们设计了一个实用的学校管理系统。
下面我将介绍我们项目组所开发的一个学校管理系统。
本说明书对软件的功能需求、性能需求、系统的数据处理流程、用户权限等做了详细的说明。
通过阅读本说明书,开发人员能够对该系统的各个方面进行详细的了解。
进而依照本说明书对系统进行高效的开发。
2.2功能要求2.21学生档案管理:学生档案管理是一项很重要的管理制度,主要管理学生的基本信息,例如:学号,姓名,年龄,班级等等学籍信息,对学生信息起到良好的管理和保存作用,同时也方便查询。
2.22学生成绩管理:在校学生最重要的判定标准无非是学生的成绩,所以学生成绩管理系统就显得尤为重要。
学生成绩管理实现了对学生成绩的良好管理。
2.23奖惩处理:通过前两项管理制度:学生档案管理和学生成绩管理就会生成学生综合测评表,通过此表可以很清楚的了解到该学生的成绩测评,身心测评,体育测评等等的综合情况以及排名情况,从而可以根据排名或者挂科情况对该学生进行升留级处理,休学处理,退学处理,发放奖学金,进行表彰等等的奖惩措施,做到奖惩分明。
2.24日常教务管理:将所有的成绩进行录入并且对各科成绩进行分类和统计,使得成绩得到很好的管理,使得日常的教务有条不紊和高效进行。
2.25用户登录请用户输入用户名和密码,判断该用户是老师还是学生,根据用户类型对其所能够进行的操作进行提示和限定,若用户名不正确则输出“用户不存在的提示信息”并清空登录框,密码不正确则输出“密码错误”的提示信息并清空登录框,最多可以输入三次,三次不正确系统会自动关闭且只能在10分钟后再次登录。
2.3 性能需求分析2.3.1 运行环境本系统在教务处使用,通过各个终端对服务器进行操作,还需要从各个部门(系)收集信息,打印各种表。
因此要求能够适应网络环境、复杂的集成环境。
运行的环境有:硬件平台:Intel 奔腾/酷睿、AMD速龙/翼龙等x86系列的平台,基于交换机的以太网;软件平台:操作系统为Windows XP/Windows7/Linux等,还有SqL server2008、辅助管理软件等;需要程序能够稳定地运行在上面所述的平台上,并且需要考虑一定的稳定性。
另外要考虑到运行环境的变化:如果增强服务器的硬件配置,不仅可以增快系统的响应时间,还能足够保证系统的稳定性。
2.3.2 精度要求输入的信息尽可能准确,并对输入进行限定。
基本工资、扣款额、奖金额、税率等用浮点数进行存储,计算的工资精确到小数点后两位(分)。
2.3.3 响应时间基于处理的实时性,要求系统能够在较短的时间内完成处理,具体要求如下:所有员工的工资计算:10秒数据传送:5秒数据库更新:8秒2.3.4 内存占用考虑到可能运行其它的程序和某些电脑配置不高,要求软件正常运行时的平均内存占用能够控制在10M以内,峰值内存占用不超过30M。
2.3.5 安全与更新考虑到所涉及问题的敏感性和现有网络环境的不安全特点,要求软件有较好的安全防护措施,包括密码的安全性、用户的验证、系统的封装等。
而且还要求能够与主流的杀毒软件和安全辅助软件兼容。
另外在当前复杂的网络环境下应考虑到数据传输的安全性,最好使用数据加密技术。
在数据检索、数据有删改机制以及软件的复用性,以便增强软件的健壮性。
另外任何一款软件都不能保证没有漏洞,因此要求软件保留有限的升级接口,为打补丁和软件的升级提供便利。
2.3.6 故障处理情况1:客户端与服务器网络不能连接处理:a. 检修本地端网络连接是否正常;b. 查看服务器端交换机端口是否被关闭;c. 查看端点间网络线路是否完好。
情况2:存储空间已满处理:a. 数据库切换到备份存储空间;b. 进行数据检索,删除日期超过4年的数据。
情况3:服务器死机处理:程序自动保存内存中的临时数据;重启机器情况4:服务端程序报告异常处理:保存好临时数据,关闭访问端口,关闭程序重新启动,通过临时数据初始化程序其它具体情况参照相关技术进行处理。
三、数据流程图成绩标准数据字典(1)数据流条目学生信息=姓名+性别+年龄+学院+系别+专业+班级综合成绩=学号+姓名+专业班级+课程编号+课程名+综合成绩+学期+教师签名学生名单=学号+姓名+专业班级+学期成绩单=学号+姓名+专业班级+专业成绩+体育成绩+素质测评升留级表=学号+姓名+专业班级+{课程名+成绩}+{升|留}合格单=姓名+系别+专业班级新生信息=入学时间+姓名+性别+年龄+专业班级+系别(2)数据存储条目文件名:学生综合成绩组成:学号+姓名+专业班级+专业成绩+体育成绩+素质测评组织方式:索引文件,以学号为关键文件名:成绩单标准组成:专业成绩组织方式:索引文件,以学号为关键(3)数据项学生综合成绩:别名:成绩、综合成绩类型:实型长度:5位,小数点后2位姓名:别名:无类型:字符型长度:{字母}182(4)加工条目四、信息需求(E-R图)。