2009软件工程实习-软件学院20110822_第1页
2009软件工程实习-软件学院20110822_第2页
2009软件工程实习-软件学院20110822_第3页
2009软件工程实习-软件学院20110822_第4页
2009软件工程实习-软件学院20110822_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北京理工大学软件学院软件工程实习北京理工大学软件学院软件工程实习软件学院指导教师主讲教师 陈朔鹰指导教师 马 锐 赵小林 陈朔鹰 赵丰年 李志强 崔 睿北京理工大学软件学院时间安排短学期 第 13 周 星期一 上午集中讲解/作品演示 星期一 下午完成分组 星期二 上午/下午与指导老师见面 其他时间由指导老师安排进度核查 第三周星期三分班验收 第三周星期五集中演示 每组有一名指导教师,各组由指导教师分别安排讨论,集中讨论,进度检查。软件工程实习背景说明北京理工大学计算机科学技术学院实习目的1.利用已经学过的知识( C/C+/数据结构/软件工程)编写一个较复杂的程序(小系统)。重点在数据结构设计与

2、算法实现。2.体会软件工程、面向对象分析与程序设计的基本思想,为后续课程作好准备。3.通过项目组,团队协作、小组讨论、汇报演讲等集体形式的交流,进行团队合作。4.加强实践环节,强化编程能力。软件工程实习背景说明北京理工大学计算机科学技术学院组织形式以开发小组为单位完成整个项目开发工作。主讲教师:提出明确的项目要求(需求),布置题目,检查进度,评定成绩。学生:作为开发的主体;根据需求选择或设计数据结构和算法,独立进行分析、设计、编程和测试等全部工作。学生作为组长,协调开发组工作。指导教师:作适当的指导,组织分班讨论,控制总体进度,做最后的检查,评定成绩。软件工程实习背景说明北京理工大学计算机科学

3、技术学院组织方法1.由学生自愿组成 34 人的开发小组。每组确定组长1人。2.组长的职责:负责协调并管理整个项目的计划、进度、人员分工、主持技术研讨会、协调技术问题和人员关系、负责整个项目。3.开发人员的职责:参与本组内的技术活动,完成本人负责的开发工作。软件工程实习背景说明北京理工大学计算机科学技术学院纪律要求1、每次课程或分组讨论学生必须到场。点名抽查不到,第1次扣5分,第2次扣10分,第3次及其之后每次扣15分。请假无效。2、认真参加小组活动,积极参与开发工作,积极发言参与讨论。3、担任组长工作,讨论积极发言,主讲设计方案等,加 510 分。软件工程实习背景说明北京理工大学计算机科学技术

4、学院项目开发过程1.做什么?分析系统的功能要求,设计自己的系统(确定是否要加功能),确定最后要实现的功能。这是整个项目开发/验收的唯一依据。2.怎样做?确定适合你们小组的开发模型和设计方法。根据功能,选择(或重新设计)数据结构,根据数据结构确定关键(基本)算法。这是项目开发的全部基础所在。软件工程实习背景说明北京理工大学计算机科学技术学院项目开发过程3.做!确定软件的结构,划分系统的模块。确定模块之间的接口。合理的人员分工,有效的进度控制,明确的质量保障措施,团队合作完成模块开发。进行程序调试、系统测试、试运行。4.做的怎么样?演示和评价。软件工程实习背景说明北京理工大学计算机科学技术学院缺少

5、总体设计:没有把握好需求、总体数据结构设计,或者前期的设计比较粗糙,造成在后期编程过程中老是要修改或补充数据结构。单个算法正确,但与数据结构联系在一起,与其它算法联系在一起时就会产生问题。时间进度控制不当:前松后紧。由于在编程过程中发现了前面设计中存在问题,所以需要不断返工,最后难于提交一个可运行的版本。人员交流不足:开始没有充分沟通,没有充分参与设计,后期很难加入开展工作。软件工程实习存在的主要问题北京理工大学计算机科学技术学院忽视必要的文档工作:没有及时用文字的形式记录设计思想和设计细节,多人同时开发过程中忘记了共同的约定,要重新返工。靠头脑记、口头约定技术细节是非常不可靠的。过高估计了自

6、己的编程水平:一测试就发现问题,于是不停地进行修改,到最后也没有一个完整的版本。缺乏合作精神:意见分散,无法统一,最后各自为战,不欢而散,不会相互妥协。个人英雄主义:以一带全。只有一个人工作,其他人员等待结果。软件工程实习存在的主要问题北京理工大学计算机科学技术学院必要的理论指导自学/复习 软件工程 方面的教材,相关的概念和知识。自学 面向对象分析与设计 方面的教材,重点在分析方法上下功夫。重视设计不要急于进入编程,要设计好数据结构,完成主要算法设计,写出简单的文档,最后才是编程和调试。重视测试软件工程实习建议北京理工大学计算机科学技术学院选择适当的软件开发模型 软件开发模型是软件开发全部过程

7、、活动和任务的结构框架。瀑布模型(软件生命周期模型)增量模型迭代模型原型模型螺旋模型演化模型喷泉模型敏捷开发模型 软件工程实习要求北京理工大学计算机科学技术学院进行有效的软件开发过程控制 项目的进度 人力分配 项目质量管理 版本控制软件工程实习要求北京理工大学计算机科学技术学院选择适当的开发(设计)方法结构化系统开发方法面向对象的开发方法原型方法 目标:完成一个完整的软件系统实现基本功能可运行、可演示性能上可接受具有基本的出错处理能力软件工程实习要求北京理工大学计算机科学技术学院周二前提交分组名单每班一名课代表,负责联系指导教师。分组名单:组长,组员。实习结束需要上交的报告 软件功能和界面说明

8、书 系统设计文档(重点是数据结构设计) 源程序 个人的实习总结报告以上内容每班刻一张光盘。软件基础实习要求北京理工大学软件学院软件工程实习软件学院指导教师星期二 分班活动 8:30/2:00 软工1班 马 锐 上午 信6006 软工2班 赵小林 上午 信6008 软工3班 张春霞 下午 信6006 数媒1班 赵丰年 上午 3#337 数媒2班 李志强 上午 3#327 信安班 崔 睿 下午 信6008北京理工大学计算机科学技术学院周二要求汇报的内容拟采用的软件开发模型拟采用的软件开发(设计)方法工作进度计划(希望用有效的工具描述工作计划,尽量少用文字)可能的技术难点,如何解决其他想说明的问题指

9、导教师/学生进行提问或质疑。软件工程实习要求北京理工大学计算机科学技术学院题目简介北京理工大学计算机科学技术学院软件工程实习PHP语言编辑器基本功能要求PHP语言全屏幕编辑。能够通过高亮度或颜色变化显示 PHP 语言不同的语法成分。例如:关键字采用一种颜色,常量/变量等采用一种颜色。可模仿TC 3.0/VC 6.0北京理工大学计算机科学技术学院软件基础实习PHP语言编辑器基本功能要求:识别全部关键字识别并处理(正确排版)PHP语言的基本语法成分 if.else 语句 Switch 语句 while / do.while / for / foreach 函数定义北京理工大学计算机科学技术学院软件

10、基础实习PHP语言编辑器基本功能要求:语句块操作可以以函数为基本单位,进行编辑操作。在编辑过程中在屏幕左边动态生成函数的结构。点击函数名就可以“打开”一个函数(显示整个函数并可以编辑),也可以“关闭”一个函数(整个函数缩为一行)。以语句块为单位,通过在语句块内部按Ctrl+/Ctrl-键来打开或关闭语句块。语句块打开时按照普通的程序显示,合并时则显示为“.”,或者是其它能够在一定程度上表明是语句块的标识。北京理工大学计算机科学技术学院软件基础实习PHP语言编辑器其他功能要求:可选功能对于 for / while 等循环体,当光标进入函数体时,在循环体左侧反映出这个循环体的范围。例如: whil

11、e ( 1 ) i+; j-; 北京理工大学软件学院软件工程实习PHP语言编辑器其他功能要求:可选功能当光标位于 ,( ) 等括号的前方或者后方时,高亮显示此对括号的另一半。可以自动圆括号、花括号等符号进行匹配。例如:当输入后一半括号时,前一半括号在一定时间内变色以表示它们的对应关系。北京理工大学计算机科学技术学院软件工程实习PHP语言编辑器其他功能要求:可选功能通过命令自动对所有代码进行自动缩进排版。可以对程序内容进行重新格式化排版(全文或选中的部分),在编辑的过程中,按tab键的作用不是产生一个tab,而是对所在行进行自动的缩进,排版与自动缩进可以参考某种常见的程序排版风格(如 C语言的不

12、同编程风格)。北京理工大学计算机科学技术学院软件工程实习PHP语言编辑器进一步功能要求能识别并处理 html 标签设置不同的排版风格(仿C的不同的排版风格)北京理工大学计算机科学技术学院软件工程实习PHP语言编辑器性能要求处理文件大小 = 100K( 20M? ),100K 文件加载时间在用户可接受范围,= 500 行,屏幕翻页无明显的停顿,反应时间在用户可接受的范围,= 2秒。每行长度(未排版时) =512B。全文重新排版时间 5秒。输入新行无明显闪烁。北京理工大学计算机科学技术学院软件工程实习PHP语言编辑器期望完成一个完整的可运行的系统;软件整体架构:结构简明,便于维护,具有可扩展性;数

13、据结构设计:简明而高效,能够方便地支持基本算法实现;算法设计:关键算法通用、高效;开发过程:在计划控制下有序推进。北京理工大学计算机科学技术学院特别强调 在项目开发过程中,可以参考其他相关资料,但设计和编程必须独立完成,对于参考的资料,在设计文档中要写明出处。 绝对禁止抄袭。软件工程实习要求北京理工大学计算机科学技术学院评分说明重点:在规定时间内完成一个规定的系统。满分 100 分。1. 软件系统 50 分;2. 文档 20 分;3. 过程管理 20 分;4. 平时表现 10 分。软件工程实习背景说明北京理工大学计算机科学技术学院设计示例:编辑器数据结构设计北京理工大学计算机科学技术学院编辑器

14、数据结构设计参考方案方案1大数组按行存储方式char str500128;特点: 按行存储,一个自然行n占数组一行。 算法简单,实现方便 效率低,每行的平均空闲率为:50%。 在文件的中间插入一行或删除一行时,要移动许多行,平均移动率为:50%。软件基础实习数据结构设计北京理工大学计算机科学技术学院方案2大数组紧密存储方式char str500 *128;特点:紧密存储。按字符进行存储,自然行之间用n分隔,没有空白的字符。文件以0结束。内存使用效率提高,但算法复杂。在文件的中间插入一个字符或删除一个字符时,要移动后续字符,平均的字符移动率为:50%。定位指定行困难。软件基础实习数据结构设计北京

15、理工大学计算机科学技术学院方案3行节点+定长数组char * line500, * str;str = ( char * ) malloc( 128 );软件基础实习数据结构设计特点: 每行信息和逻辑清晰。 可以动态申请/释放行存储空间,内存使用率提高。 行存储平均效率50%。 定位行/插入行/删除行/复制行的算法简单。产生了行中内存碎片的新问题。北京理工大学计算机科学技术学院方案4双向链表行节点+定长数组软件基础实习数据结构设计特点: 每行信息和逻辑清晰。 可以动态申请/释放行存储空间,内存使用率提高。leftrightdata北京理工大学计算机科学技术学院方案5行节点+不定长数组char * line500, * str;str = ( char * ) malloc( line_length );软件基础实习数据结构设计特点: 存储效率进一步提高。 产生了更为严重的系统内存碎片的问题。当系统长时间运行的时候,可能会造成系统死机。北京理工大学计算机科学技术学院方案6行节点+块char * line500, * str;str = ( char * ) malloc( block_size );软件基础实习数据结构设计特点: 动态申请定长块; 块内采用紧密存储方式,每行用n标识,整个块用0标识结束结束; 每行通过行指针指明; 算法复杂,增加了对块的控制。插入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论