软件工程课设心得.docx

上传人:b****3 文档编号:981628 上传时间:2022-10-14 格式:DOCX 页数:7 大小:22.51KB
下载 相关 举报
软件工程课设心得.docx_第1页
第1页 / 共7页
软件工程课设心得.docx_第2页
第2页 / 共7页
软件工程课设心得.docx_第3页
第3页 / 共7页
软件工程课设心得.docx_第4页
第4页 / 共7页
软件工程课设心得.docx_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

软件工程课设心得.docx

《软件工程课设心得.docx》由会员分享,可在线阅读,更多相关《软件工程课设心得.docx(7页珍藏版)》请在冰豆网上搜索。

软件工程课设心得.docx

软件工程课设心得

软件工程课设心得

第一篇:

软件工程课设心得

软件工程是一门实践性很强、交叉性很强的学科,它提供给我们的不仅是一种方法论,更是一种世界观。

在没有接触软件工程这门课时,我一直认为软件就是程序。

能编出解决问题的程序就ok了,从没有想过,在写一个程序之前还要构思几份文档。

不过对于那些大型软件如植物僵尸大战怎么去实现它,想得我一头雾水。

绚丽的界面、40种植物、一大堆不同类型的僵尸,怎样编代码去实现它呢?

第一次上软件工程的课,裴老师问软件是什么?

我的第一想法是:

这个问题太过愚昧了!

谁不知道软件就是程序呀?

软件是由计算机程序、数据及文档组成。

听到这句话,我心里先是一惊,慌忙翻了下书软件是程序和所有使程序正确运行所需的相关文档和配置信息。

赫然映入我眼帘。

突然间我发现,就算是植物僵尸大战这样复杂的游戏,如果设计者实现分模块把每一部分如何实现用文档描叙出来,那这个软件实现起来不是很容易吗?

第一次课后我明白了软件工程是致力于专业化软件开发的理论、方法和工具的研究。

虽然我从初中开始信息奥赛,高中继续这个爱好,但在大学二年级下学期才接触在软件开发中这么有引导意义的学科,不觉有种相见恨晚的感觉。

自然它的方法学三要素:

方法、工具、过程,我牢记于心。

短短的四周,裴老师的课给我留下了深刻的印象,印象尤深的是:

做软件我们首先考虑的是团队的实力。

如果别人给你50万让你们团队开发一个软件,如果他要求你们团队给这个软件永久维护,那么你要去跟他协商付100万。

很多软件公司倒闭就是因为维护上的问题。

至此我才明白维护软件是软件生存周期中时间最长的一个阶段,它是最花费精力与钱财的一个阶段。

如果将来你们碰到了我,你跟我说你是se那么我会很高兴,如果你告诉我你是软件工程师,我只会嗯嗯两下。

其实在我接触软件后,渴望的是当一名软件工程师。

现在才知道学软件工程专业后,去当一名软件工程师是最低层的也是最没技术含量的。

要做就做系统构架师,当然这需要我们的不懈努力才能达到。

系统构架师的职责是设计一个公司的基础构架,并提供关于怎样建立和维护系统的指导方针。

恍然发现学软件不仅是学软件,相关的管理能力也是需要具备的。

当然理论知识是用来指导实践的,亲身体验才能领悟软件工程的妙用。

课设我们选择了图书馆管理系统,主要是这个系统我们接触比较多,对于它的流程还是比较清楚的。

虽然如此我们还是花了很大的时间去完成它。

记得当时我们定下这个题目是晚上,在讨论用什么语言实现时,大家各自说出自己比较善于的语言。

然后均衡了下,定下用java做开发语言。

在实现过程中,突然发现java环境连接数据库和tomcat超级麻烦且数据库老是连接不上。

趁时间还早我们三再次讨论,决定用c#做开发语言,主要是c#相对于c++与java来说简易写。

同时我们定下不管以后遇到什么困难都要坚持下去的准则。

在课设期间我们没少跑图书馆,查阅各种资料,对比各本书上实现图书馆管理系统的代码。

终于在4月11日把所有课设的所有事情弄好了。

当然这只是个概述。

我印象尤深记忆深厚的是最初实现文档那块。

刚开始,软件工程这门课还没学多少,基本的设计理念就很模糊。

文档到底该怎么写,很纠结。

于是我从网上狂下相关文档。

通过粘贴与复制终于一份内容乱七八糟的需求分析文档出来了,当然这只是用来借鉴的。

后来孟阳分享了十三份关于文档这方面的模板。

我们照着那个样子在结合团队项目的相关实例开始了文档的写作。

我们的文档总是一个人先写好,再拿给另一个人改,最后由第三个人评审。

大家都觉的可以了,才过关。

测试报告虽然是我一个人完成了,但也经历了不少时间,当然这时间是按小时算的。

首先把大体写出了,然后修改,再增加信息。

大量的截图以及思考怎样用例超费脑子,两天的通宵,彻底把我搞垮了,不过在文档出炉后,心里异常开心。

软件工程课程虽已结束,但我对于软件工程的学习才刚刚开始,裴老师的课让我受益匪浅。

我体会到项目管理的重要性,随着软件规模、复杂度的不断增加,项目开发中更多的是协作、管理和控制。

我学习到很多一般性的方法,例如:

需求获取、模块化、分治、估算、计划等等。

同时,我也认识到使用计算机解决实际问题的复杂性,在图灵机模型和冯诺依曼体系的计算机框架下,人们认识表达的过程和计算机的实现过程相差甚远,软件工程方法要提供给程序员们一种更加有效的对客观世界问题域进行形式化的过程方法。

向se进军!

至少这是现在的目标。

谢谢裴老师!

您的课通俗易懂,举的例子贴近生活,让我们易于接受。

第二篇:

ttcn-3软件课设报告

软件课程设计

ttcn-3软件课设报告

第1页共6页电信0701郭福晨u201413312

ttcn-3软件课设

本次软件实验课程我选的是ttcn-3语言的平台移植。

我和黄炯同学组成一个小

组。

软件课设的大课题为:

ttcn-3语言及其编译器的设计与移植。

我们选择的是用ttcn语言实现自动饮料贩卖机的功能。

自助饮料售卖机的实现

1.任务要求

饮料类型:

咖啡、可乐、鲜橙多、矿泉水、绿茶、红茶

饮料价格:

4元、3元、3元、1元、3元、3元

输入包括饮料类型和投币金额

输出包括输出饮料的数量以及找回钱金额

2.程序算法

moduleautosellmachine

{

functionmachinefunction(inintegernumber,inintegermoney)runsondrinkercomponenttype//从顾客处{varcharstringtemp;inputport.receive(charstring:

?

)-valuetemp;log(temp);outputport.send(number);inputport.receive(charstring:

?

)-valuetemp;log(temp);do{outputport.send(money);接收消息并赋值,判断饮料的种类和所要求的价钱typecomponentdrinkercomponenttype//定义接收和输入的接口{}portcharstringinputporttypeinputport;portintegeroutputporttypeoutputport;typeportintegeroutputporttypemessage{outinteger}typeportcharstringinputporttypemessage{incharstring}

}}log(temp);while(temp==sorry,moneyisnotenough!

pleasetrymoreagain!

//判断顾客给出的钱数,如果不够if(temp==sorry,itisnotaconvientnumber!

pleasetryagain!

)//判断顾客所选择的饮料类型,如果选{}则显示金钱不够择的不是给出的6种饮料,则显示选择错误return;setverdict(pass);typecomponentemptycomponenttype{}//下述为所给出的几种情况的实例testcasetestone()runsonemptycomponenttypesystemdrinkercomponenttype{}testcasetesttwo()runsonemptycomponenttypesystemdrinkercomponenttype{}testcasetestthree()runsonemptycomponenttypesystemdrinkercomponenttype{vardrinkercomponenttypedrinker;drinker:

=drinkercomponenttype.create;map(drinker:

outputport,system:

outputport);map(drinker:

inputport,system:

inputport);drinker.start(machinefunction(5,1));//此处方可所选定的饮料种类和给出的金钱drinker.done;unmap(drinker:

outputport,system:

outputport);unmap(drinker:

inputport,system:

inputport);vardrinkercomponenttypedrinker;drinker:

=drinkercomponenttype.create;map(drinker:

outputport,system:

outputport);map(drinker:

inputport,system:

inputport);drinker.start(machinefunction(0,10));//此处即顾客所选定饮料种类和给出的金钱drinker.done;unmap(drinker:

outputport,system:

outputport);unmap(drinker:

inputport,system:

inputport);

}}drinker:

=drinkercomponenttype.create;map(drinker:

outputport,system:

outputport);map(drinker:

inputport,system:

inputport);drinker.start(machinefunction(6,100));//此处为顾客选定的饮料和给出的金钱drinker.done;unmap(drinker:

outputport,system:

outputport);unmap(drinker:

inputport,system:

inputport);

c编写的咖啡机贩卖程序

usingsystem;

usingsystem.collections.generic;

usingsystem.threading;

publicclassatuodrinkmachine//定义输入和输出,饮料类型和价格

{

publicstaticqueuebyte[]inputport;

publicstaticqueuebyte[]outputport;

privatestaticstring[]drinkname={coffee,cola,orange,water,greentea,redteaprivatestaticint[]drinkprice=newint[6]{4,3,3,1,3,3};

staticthreadtask;

publicstaticvoidswitchon()

{

inputport=newqueuebyte[]

outputport=newqueuebyte[]

task=newthread(newthreadstart(behaviour));

task.start();

}

publicstaticvoidswitchoff()

{

task.abort();

}

staticvoidbehaviour()

{

intamount,choice,i,quantity,change;

outputport.enqueue(convert.stringtobytearray(pleasechooseon

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1