软件训练实习报告[优秀]由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件实训实习报告”。
HEBEI UNITED UNIVERSITY
软件训练实习报告
班
级:
09计算计1班
学
号:
200902030122
姓
名:
郝赫
指导教师:
张继德
专业名称: 计算机科学与技术
信 息 工 程 学 院
2012年 6 月 27 日
1、实习内容
第1周:到启奥实训基地学习软件开发的基本流程及一些开发经验和方法 具体内容:首先老师们让我们自由结成团队每个团队的组成有: 软件开发项目经理
A、在项目计划中标识设计活动并确保有足够的资源 B、从项目成员中标识出概要设计人员,负责设计工作 C、确保设计人员按照本流程开发相应的设计说明书
D、确保按照评审规程进行设计的评审 ;软件开发工程师
A、完成概要设计和接口文档 B、参加设计文档评审
D、根据评审专家意见,修改设计文档 ;软件测试工程师 A、撰写集成测试用例 ;软件分析工程师、组织所有的测试活动 B、制定测试策略
C、确保测试活动有合适的计划; 然后介绍软件设计的6个阶段(1)制订计划阶段(Plan)
(2)需求分析(Requirements Capture)阶段
(3)系统分析与设计(System Analysis and Design)(4)系统实现(Implementation)(5)测试(Testing)(6)维护(Maintenance)
其中还穿插了大量的实例使我们了解了大部分的开发过程
第2周 :
我们回到学校开始了1周的实训项目的开发 概要设计项目经理仔细阅读项目需求文档。项目经理召集项目开发成员,开项目启动会议。具体商议项目的开发任务和责任分配。
3核心开发人员开发确定,以及各模块开发人员确定。
4由系统分析员和核心开发人员仔细阅读需求文档,对系统整个架构分析和做技术规划。
5系统分析员整理和书写最终的系统架构和概要设计文档。
6系统分析员在文档提交日,提交给项目经理。项目经理确认文档并审批。7项目经理召集项目开发成员,开一个概要设计以及系统架构确定的会议。向每个成员分发文档,并讨论确定最终概要设计文档。8开始详细设计文档的工作 详细设计:
1项目经理组织成立各个模块的开发小组,并确定开发小组组长(程序经理)。2各开发组长书写各自模块的详细设计文档,开发成员需要协助,配合。3在指定提交日,开发组长提交文档给系统分析员。由系统分析员审批。4系统分析员组织召开一个详细设计文档确认的会议。
5然后开发组长分发各自模块的详细设计文档给程序员,程序员在指定时间内完成。
6程序员做内部测试。开发组长协调并配合。7确认无bug提交给开发组组长。
8所有模块整合工作,由整个开发组成员参与完成。由所有开发组长和系统分析员负责主要部分工作。程序员协助和配合。9对整合后工程做详细测试。
10确认测试通过后,开发组长根据开发成员表现以及提交成果填写绩效考核表。然后提交给项目经理。11项目经理会召开项目总结会,同时向优秀成员颁奖。同时鼓励所有成员继续努力。对不能按时完成导致项目能按时提交,以及对导致失败的关键人员给与惩罚处理。
图1.程序设计过程图
第3周 到北京达内科技有限公司实习学习JAVA的编程方法和规则
2、作品介绍
扑克的发牌程序
import java.util.Random;import java.util.Scanner;
public cla CardsDemo {
public static void main(String[] args){
Scanner input = new Scanner(System.in);System.out.println(“请输入玩家的数量:”);int players = input.nextInt();System.out.println(“请输入每个玩家的手牌数量:”);int cards = input.nextInt();if(players
} if(players*cards>52){ System.out.println(“无效的发牌参数:发牌总数大于扑克牌的张数!”);
} public static void printer(int[][] playerCard){
//明牌
for(int i = 0;i
printer(playerCard);下****************“);
} public static int[][] dispath(int players,int cards){
//定义存放所以牌的数组
int[] allCards = new int[52];//定义存放所以牌的数组的下标 int acIndex = 0;//将生成的52张牌放入的数组中 for(int i = 1;i
} for(int j = 0;j
System.out.print(playerCard[i][j]+” “);
allCards[acIndex++]= i*100+j;
在。
} } //将生成的有规律的牌打乱顺序(洗牌)int[] newCards= new int[allCards.length];int ncIndex= 0;int ranNum;outer:while(ncIndex
Random ran = new Random();ranNum = ran.nextInt(52);*/ //产生一个范围在[0,52)的整数 方法二:
ranNum =(int)(Math.random()*allCards.length);//判断随即从allCards取出的一张牌,在新数组中是否存 for(int i = 0;i
//如果相同的话,if(newCards[i]==allCards[ranNum]){
continue outer;
} } newCards[ncIndex++] = allCards[ranNum];} //发牌
int[][] playerCard = new int[players][cards];int pcIndex = 0;for(int i = 0;i
playerCard[i][j] = newCards[pcIndex++];
}
} } return playerCard;
图2.扑克发牌程序运行结果
3、实习收获及心得体会
通过实训中心老师的课堂讲解与企业化标准的培训,使我加深了对自己专业的认识。从而确定自己以后的努力方向。要想在短暂的实训时间内,尽可能多的学到东西,就需要我们跟老师或同学进行很好的沟通,加深彼此的了解。“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学专业知识的匮乏。让我真真领悟到“学无止境”这句话的涵义。而老师在专业认识周中所讲的,都是课本上没有而对我们又非常实用的东西,这又给我们的实训增加了浓墨淡采的光辉。
实训中除了学到不少专业知识,也了解一些社会的现实性,包括人际交往,沟通方式及相关礼节方面的内容,对于团队开发来说,团结一致使我深有体会。团队的合作注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经理,这是也是实训最大的收获。