软件工程思想—软件工程基本观念

软件工程思想—软件工程基本观念
软件工程思想—软件工程基本观念

软件工程基本观念

本章讲述软件工程的基本观念,是关于软件工程宏观上的探讨。如果你是软件公司的老板,用不着在第一线工作,那么看这一章就够了。但你一定要让员工们相信不停地工作是人生最大的快乐,并且让他们把本书看完。

1.1节讲述软件工程的目标和常用的软件工程模型。1.2节讲述软件开发的基本策略:“复用”、“分而治之”、“优化——折衷”,有助于指导实践者选择方法和产生新方法。1.3节例举一些不正确的观念,取材于早期软件人员比较幼稚的想法,初学者可以引以为戒。

1.4节探讨一些有争议的观念。

看完本章,要树立这样的信念:软件开发过程中的坎坎坷坷,仿佛只是人脸的凹凸不平,用热水毛巾一把就可抹平。让我们高举程序主义、软件工程思想的伟大旗帜,紧密团结在以Microsoft为核心的软件公司周围,沿着比尔·盖茨的生财之道,不分白天黑夜地编程,把建设有中国特色的软件产业的伟大事业全面推向21世纪。

1.1 软件工程的目标与常用模型

软件工程的目标是提高软件的质量与生产率,最终实现软件的工业化生产。质量是软件需求方最关心的问题,用户即使不图物美价廉,也要求个货真价实。生产率是软件供应方最关心的问题,老板和员工都想用更少的时间挣更多的钱。质量与生产率之间有着内在的联系,高生产率必须以质量合格为前提。如果质量不合格,对供需双方都是坏事情。从短期效益看,追求高质量会延长软件开发时间并且增大费用,似乎降低了生产率。从长期效益看,高质量将保证软件开发的全过程更加规范流畅,大大降低了软件的维护代价,实质上是提高了生产率,同时可获得很好的信誉。质量与生产率之间不存在根本的对立,好的软件工程方法可以同时提高质量与生产率。

软件供需双方的代表能在餐桌上谈笑风生,归功于第一线开发人员的辛勤工作。质量与生产率的提高就指望程序员与程序经理。对开发人员而言,如果非得在质量与生产率之间分个主次不可,那么应该是质量第一,生产率第二。这是因为:(1)质量直接体现在软件的每段程序中,高质量自然是开发人员的技术追求,也是职业道德的要求。(2)高质量对所有的用户都有价值,而高生产率只对开发方有意义。(3)如果一开始就追求高生产率,容易使人急功近利,留下隐患。宁可进度慢些,也要保证每个环节的质量,以图长远利益。

软件的质量因素很多,如正确性,性能、可靠性、容错性、易用性、灵活性、可扩充性、可理解性、可维护性等等。有些因素相互重叠,有些则相抵触,真要提高质量可不容易啊!

软件工程的主要环节有:人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试、维护等,如图1.1所示。

图1.1 软件工程的主要环节

软件工程模型建议用一定的流程将各个环节连接起来,并可用规范的方式操作全过程,如同工厂的生产线。常见的软件工程模型有:线性模型(图1.2),渐增式模型(图1.3),螺旋模型,快速原型模型,形式化描述模型等等[Pressmam 1999, Sommerville 1992]。

图1.2 软件工程的线性模型

图1.3 软件工程的渐增式模型

最早出现的软件工程模型是线性模型(又称瀑布模型)。线性模型太理想化,太单纯,已不再适合现代的软件开发模式,几乎被业界抛弃。偶而被人提起,都属于被贬对象,未被留一丝惋惜。但我们应该认识到,“线性”是人们最容易掌握并能熟练应用的思想方法。当人们碰到一个复杂的“非线性”问题时,总是千方百计地将其分解或转化为一系列简单的线性问题,然后逐个解决。一个软件系统的整体可能是复杂的,而单个子程序总是简单的,可以用线性的方式来实现,否则干活就太累了。线性是一种简洁,简洁就

是美。当我们领会了线性的精神,就不要再呆板地套用线性模型的外表,而应该用活它。例如渐增式模型实质就是分段的线性模型,如图1.3所示。螺旋模型则是接连的弯曲了的线性模型。在其它模型中都能够找到线性模型的影子。

套用固定的模型不是程序员的聪明之举。比如“程序设计”与“测试”之间的关系,习惯上总以为程序设计在先,测试在后,如图1.4(a )所示。而对于一些复杂的程序,将测试分为同步测试与总测试更有效,如图1.4(b )所示。

(a ) (b )

图1.4 (a )程序设计在先测试在后 (b )测试分为同步测试与总测试

不论是什么软件工程模型,总是少不了图1.1中的各个环节。本书擗开具体的软件工程模型,顺序讲述人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试,以及维护与再生工程。其中程序设计部分以C++/C 语言为例。

1.2 软件开发的基本策略

人们都有自己的世界观和方法论,能自然而然地运用于生活和工作中。同样,程序员脑子里的软件工程观念会无形地支配其怎么去做事情。软件工程三十年的发展,已经积累了相当多的方法,但这些方法不是严密的理论。实践人员不应该教条地套用方法,更重要的是学会“选择合适的方法”和“产生新方法”。有谋略才会有好的战术。几千年前,我们的祖先就在打闹之际写下了很多心得体会,被现代人很好地运用于工业和商业。本节讲述软件开发中的三种基本策略:“复用”、“分而治之”、“优化——折衷”。

1.2.1 复用

复用就是指“利用现成的东西”,文人称之为“拿来主义”。被复用的对象可以是有形的物体,也可以是无形的成果。复用不是人类懒惰的表现而是智慧的表现。因为人类总是在继承了前人的成果,不断加以利用、改进或创新后才会进步。所以当我们欢度国庆时,要搞清楚祖国远不止50岁,我们今天享用到的财富还有上下五千年人民的贡献。进步只是应该的,不进步则就可耻了。

复用的内涵包括了提高质量与生产率两者。由经验可知,在一个新系统中,大部分的内容是成熟的,只有小部分内容是创新的。一般地可以相信成熟的东西总是比较可靠的(即具有高质量),而大量成熟的工作可以通过复用来快速实现(即具有高生产率)。勤劳并且聪明的人们应该把大部分的时间用在小比例的创新工作上,而把小部分的时间用在大比例的成熟工作中,这样才能把工作做得又快又好。

把复用的思想用于软件开发,称为软件复用。据统计,世上已有1000亿多行程序,

无数功能被重写了成千上万次,真是浪费哪。面向对象(Object Oriented)学者的口头禅就是“请不要再发明相同的车轮子了”。

将具有一定集成度并可以重复使用的软件组成单元称为软构件(Software Component)。软件复用可以表述为:构造新的软件系统可以不必每次从零做起,直接使用已有的软构件,即可组装(或加以合理修改)成新的系统。复用方法合理化并简化了软件开发过程,减少了总的开发工作量与维护代价,既降低了软件的成本又提高了生产率。另一方面,由于软构件是经过反复使用验证的,自身具有较高的质量。因此由软构件组成的新系统也具有较高的质量。利用软构件生产应用软件的过程如图1.5所示。

软件复用不仅要使自己拿来方便,还要让别人拿去方便,是“拿来拿去主义”。面向对象方法,Microsoft公司的COM规范[Rogerson 1999],都能很好地用于实现大规模的软件复用。

构件不存在

图1.5 利用软构件生产应用软件的过程

1.2.2 分而治之

分而治之是指把一个复杂的问题分解成若干个简单的问题,然后逐个解决。这种朴素的思想来源于人们生活与工作的经验,完全适合于技术领域。软件人员在执行分而治之的时候,应该着重考虑:复杂问题分解后,每个问题能否用程序实现?所有程序最终能否集成为一个软件系统并有效解决原始的复杂问题?

图1.6 软件领域的分而治之策略

图1.6表示了软件领域的分而治之策略。诸如软件的体系结构设计、模块化设计都是分而治之的具体表现。软件的分而治之不可以“硬分硬治”。不像为了吃一个西瓜或是

一只鸡,挥刀斩成n块,再把每块塞进嘴里粉碎搅拌,然后交由胃肠来消化吸收,象征复杂问题的西瓜或是鸡也就此消失了。

1.2.3 优化——折衷

软件的优化是指优化软件的各个质量因素,如提高运行速度,提高对内存资源的利用率,使用户界面更加友好,使三维图形的真实感更强等等。想做好优化工作,首先要让开发人员都有正确的认识:优化工作不是可有可无的事情,而是必须要做的事情。当优化工作成为一种责任时,程序员才会不断改进软件中的算法,数据结构和程序组织,从而提高软件质量。

著名的3D游戏软件Quake,能够在PC机上实时地绘制高度真实感的复杂场景。Quake的开发者能把很多成熟的图形技术发挥到极致,例如把Bresenham画线、多边形裁剪、树遍历等算法的速度提高近一个数量级。我第一次看到Quake时不仅感到震动,而且深受打击。这个PC游戏软件的技术水平已经远胜于我所见识到的国内领先的图形学相关科研成果。这对我们日益盛行的点到完止的研发工作真是莫大的讽刺。所以当我们开发的软件表现出很多不可救药的病症时,不要怨机器差。真的是我们自己没有把工作做好,写不好字却嫌笔钝。

就假设我们经过思想教育后,精神抖擞,随时准备为优化工作干上六天七夜。但愿意做并不意味着就能把事情做好。优化工作的复杂之处是很多目标存在千丝万缕的关系,可谓数不清理还乱。当不能够使所有的目标都得到优化时,就需要“折衷”策略。

软件中的折衷策略是指通过协调各个质量因素,实现整体质量的最优。就象党支部副书记扮演和事佬的角色:“…为了使整个组织具有最好的战斗力,我们要重用几个人,照顾一些人,在万不得已的情况下委屈一批人”。

软件折衷的重要原则是不能使某一方损失关键的职能,更不可以象“舍鱼而取熊掌”那样抛弃一方。例如3D动画软件的瓶颈通常是速度,但如果为了提高速度而在程序中取消光照明计算,那么场景就会丧失真实感,3D动画也就不再有意义了(如果人类全是色盲,计算机图形学将变得异常简单)。

人都有惰性,如果允许滥用折衷的话,那么一当碰到困难,人们就会用拆东墙补西墙的方式去折衷,不再下苦功去做有意义的优化。所以我们有必要为折衷制定严正的立场:在保证其它因素不差的前提下,使某些因素变得更好。

下面让我们用“优化——折衷”的策略解决“鱼和熊掌不可得兼”的难题。

问题提出:假设鱼每千克10元,熊掌每千克一万元。有个倔脾气的人只有20元钱,非得要吃上一公斤美妙的“熊掌烧鱼”,怎么办?

解决方案:化9元9角9分钱买999克鱼肉,化10元钱买1克熊掌肉,可做一道“熊掌戏鱼”菜。剩下的那一分钱还可建立奖励基金。

1.3 一些不正确的观念

本节例举并分析一些不正确的软件工程观念,可帮助初学者少犯相似的错误。

观念之一:我们拥有一套讲述如何开发软件的书籍,书中充满了标准与示例,可以帮助我们解决软件开发中遇到的任何问题。

客观情况:好的参考书无疑能指导我们的工作。充分利用书籍中的方法、技术和技巧,可以有效地解决软件开发中大量常见的问题。但实践者并不能因此依赖于书籍,这是因为:(1)现实的工作中,由于条件千差万别,即使是相当成熟的软件工程规范,常常也无法套用。(2)软件技术日新月异,没有哪一种软件标准能长盛不衰。祖传秘方在某些领域很吃香,而在软件领域则意味着落后。

观念之二:我们拥有最好的开发工具、最好的计算机,一定能做出优秀的软件。

客观情况:良好的开发环境只是产出成果的必要条件,而不是充分条件。如果拥有好环境的是一群庸人,难保他们不干出南辕北辙的事情。

观念之三:如果我们落后于计划,可以增加更多的程序员来解决。

客观情况:软件开发不同于传统的农业生产,人多不见得力量大。如果给落后于计划的项目增添新手,可能会更加延误项目。因为:(1)新手会产生很多新的错误,使项目混乱。(2)老手向新手解释工作以及交流思想都要花费时间,使实际开发时间更少。所以科学的项目计划很重要,不在乎计划能提前多少,重在恰如其分。如果用“大跃进”的方式奔向共产主义,只会产生倒退的后果。

观念之四:既然需求分析很困难,不管三七二十一先把软件做了再说,反正软件是灵活的,随时可以修改。

客观情况:对需求把握得越准确,软件的修修补补就越少。有些需求在一开始时很难确定,在开发过程中要不断地加以改正。软件修改越早代价越少,修改越晚代价越大,就跟治病一样道理。

1.4 一些有争议的观念

本节探讨一些有争议的观念,目的不在于得出“正确”或“错误”的评断,而在于争议会激发更多理性的思考。

争议之一:如果软件运行较慢,是换一台更快的计算机,还是设计一种更快的算法?作者观点:如果开发软件的目的是为了学习或是研究,那么应该设计一种更快的算法。如果该软件已经用于商业,则需谨慎考虑:若换一台更快的计算机能解决问题,则是最快的解决方案。改进算法虽然可以从根本上提高软件的运行速度,但可能引入错误以及延误进程。技术狂毫无疑问会选择后者,因为他们觉得放弃任何可以优化的机会就等于犯罪。

类似的争议还有:是买现成的程序,还是彻底自己开发?技术人员和商业人士常常会有不同的选择。

争议之二:有最好的软件工程方法,最好的编程语言吗?

作者观点:在软件领域永远没有最好的,只有更好的。能解决问题的都是好方法或是好语言。程序员在最初学习Basic、Fortran、Pascal、C、C++等语言时会感觉一个比一个好,不免有喜新厌旧之举。而如今的Visual Basic、Delphi、Visual C++、Java等语言各有所长,真的难分优劣。开发人员应该根据客观条件,选择自己熟悉的方法和语言,才能保证合格的质量与生产率。

程序设计是自由与快乐的事情,不要发誓忠于某某主义而自寻烦恼。

争议之三:编程时是否应该多使用技巧?

作者观点:就软件开发而言,技巧的优点在于能另辟蹊径地解决一些问题,缺点是技巧并不为人熟知。若在程序中用太多的技巧,可能会留下隐患,别人也难以理解程序。鉴于一个局部的优点对整个系统而言是微不足道的,而一个错误则可能是致命的。作者建议用自然的方式编程,少用技巧。

《狼三则》的故事告诉我们“失败的技巧通常是技俩”。当我们在编程时无法判断是用了技巧还是用了技俩,那就少用。《卖油翁》的故事又告诉我们“熟能生巧”,表明技巧是自然而然产生的,而不是卖弄出来的。卖油翁的绝技是可到中央电视台表演的,而他老人家却谦虚地说:“没啥没啥,用熟了而已”。

争议之四:软件中的错误是否可按严重程度分等级?

作者观点:在定量分析时,可以将错误分等级,以便于管理。微软的一些开发小组将错误分成四个等级[Cusumano 1996],如表1.1所示。

表1.1 错误的四个等级

上述分类是非常技术性的,并不是普适的。假设某个财务软件有两个错误:错误A 使该软件死掉,错误B导致工资计算错误。按表1.1分类,错误A属一级严重,错误B 属二级严重。但事实上B要比A严重。工资算多了或者算少了,将会使老板或员工遭受经济损失。而错误A只使操作员感到厌烦,并没有造成经济损失。另一个示例是操作手册写错,按表1.1分类则属四级严重,但这种错误可能导致机毁人亡。

开发人员应该意识到:所有的错误都是严重的,不存在微不足道的错误。这样才能少犯错误。

1.5 小结

软件工程学科发展到今天,已经有了很多方法和规范,学之不尽。本章只在宏观上讨论了软件工程的一些思想,更具体的内容将在后面的章节论述。无论是什么好方法,贵在理解与灵活运用,而不可当成灵丹妙药,不象“吃了脑黄金或脑白金,就能使一亿人先聪明起来”。

软件工程复习提纲(20160615)

软件工程复习提纲 Chapter1 1.开发文档都有哪些?用图来表示它们之间的关系。 2.说明软件工程研究的内容。 3.软件工程的7条基本原理有何现实意义。 4.怎样理解ISO9000的文档体系?质量手册、程序文件、质量记录三者有何联系和区别? 5.怎样理解CMMI,如何用CMMI去管理软件企业? 6.是否存在这一种现象:搞系统软件的公司不需要采用CMMI和ISO9000模式?CMMI和ISO9000 模式只适用于搞应用软件的企业?如果是,为什么,如果不是,又为什么? 7.软件工程与信息系统工程有何异同? 8.怎样理解元数据? Chapter2 1.为什么要选择软件开发模型?软件开发模型与软件生存周期有什么关系? 2.简述瀑布模型、增量模型、迭代模型、原型模型的优缺点。 3.软件公司的ISO9000或CMM管理体系与软件开发模型有关吗,为什么? 4.你对“生存周期模型裁剪指南”有什么看法? 5.“图书馆信息系统”的开发选用什么开发模型合适? Chapter3 1.立项的具体表现形式是什么? 2.立项建议书的编制者为什么主要是软件公司的市场销售人员,而不是开发人员? 3.什么叫风险分析,技能风险与技术风险有何区别? 3.合同、任务书、立项建议书三者有何异同?有何关系? 4.对软件项目和产品的“功能、性能、接口”三项指标如何理解? Chapter4 1.需求分析的目的是什么,需求分析的难点在哪里? 2.需求分析的理论基础有哪几条? 3.为什么说需求分析是面向流程的? 4.解释术语:元数据、实体、中间数据。 5.用户需求报告与需求规格书有何差异? 6.需求描述有哪几种工具?你喜欢哪一种,为什么?

工程档案管理制度 (3)

工程档案管理制度 1.总则 1.1为确保工程档案的齐全、完整、准确、系统,确保档案案卷合格率,使工程档案管理顺利达到《建设工程文件归档整理规范》(GBT/50328-2014)的要求,特制定本制度。 1.2基本建设工程档案资料是指在整个建设项目,从酝酿、决策到建成投产的过程中形成的有归档保存价值的文件资料,包括项目的提出、调研、可行性研究、评估、勘测、设计、施工、调试、生产准备、试运行、移交生产、竣工等工作活动中形成的文字材料、图纸、图表、声像材料和其它载体的材料。 1.3基本建设工程档案资料是企业的宝贵财富,是勘测、设计、施工和管理人员的劳动结晶。依据《中华人民共和国档案法》,各级人员做好文件材料的立卷归档工作是各自的义务和岗位职责,各级人员应对自己负责的项目所形成的、具有保存价值的文件材料,认真做好立卷归档工作,并确保档案的完整性、准确性。 2 工程档案管理制度 2.1档案资料管理 2.1.1工程档案资料工作是工程建设过程的一部分,应纳入建设全过程管理并与工程建设同步。档案资料室集中统一管理本工程全过程的技术档案资料,对工程文件材料的形成、积累、收集、归档工作进行

监督、检查,并负责工程技术档案资料的接收和移交。 2.1.2为了便于各个管理环节的衔接,档案资料室配备专职档案员,为更好地管理好档案资料,应配置必要的库房、档案装具、档案保护设施和办公设备。 2.1.3工程建设中,各种技术资料交由档案资料室统一管理发放,各有关部门和单位指定专人办进领用手续。 2.1.4购置技术资料、图书、标准由档案部门统一申请,经批准后按计划办理,或委托有关部门自行办理。凡购置技术资料、图书、标准的报销凭证,一律由档案室签收后方可办理报销手续。 2.2归档文件的质量规定 2.2.1凡合同、协议等文件材料均应为正本(即必须有各方代表符合规定的亲笔签名,有单位盖章栏目的还必须加盖单位公章归档,签字方不能用副本或复印件归档)。 2.2.2施工技术记录、工程签证单、试运记录、材料半成品试验单、设计修改通知单(含工程联系单)等表格和数据均应用70g以上的白色书写材料书写并原件(如表式为复印件,数据虽用合格材料书写也不能作为原件;验收签证单中的各方人员必须签名齐全,不能以盖章或打印件代替签名)归档。 2.2.3调试措施,方案和报告等均应为油印件或激光打印机打印件,不能用复印件或普通色带打印件,以保证字迹的耐久性。 2.2.4主送和抄送本单位的文件材料均应以红头文件(不能用复印件)归档。

工程材料学题库-钢

工程材料学题库 填空题 1、正确合理的选材一半考虑三个基本原则1使用性能2工艺性能3经济性书P4 2、写出扩大?相区并且可以与?-Fe无限互溶的元素有镍、锰、钴。扩大?相区并且可以与?-Fe有限互溶的元素有碳、氮、铜。写出封闭?相区并且可以与?-Fe无限互溶的元素有铬(Cr)、钒(V)。P7-8 3、Cr是铁素体形成元素,但是在钢中加入了w(Cr)= 18%和Ni元素的时候,却可以促进奥氏体的形成。P8 4、奥氏体层错能越高,易于形成状马氏体,具有孪晶型亚结构。奥氏体层错能越低,易于形成状马氏体,具有位错型亚结构。P11 5、钢中合金元素的强化作用主要有固溶强化、晶界强化、第二相强化和位错强化四种方式。P11 6、晶界强化不但可以提高强度,还可以改善钢的韧性。P12 7、除了Co、Al与金属以外,所有的合金元素都会使马氏体转变温度下降。P21(Co、Al) 8、合金元素Al、Mn对晶粒细化有较好作用。(Al、Mn) 9、细晶强化唯一的在提高强度的同时提高材料韧性的强化方式。(细

晶) 10、向钢中加入Ni元素,可以显着降低钢的T k。(P18 Ni) 11、除了Co、Al以外,所有的合金元素均使马氏体转变温度下降。(P21) 12、按照脱氧程度和浇铸方法可以将钢分为沸腾钢、镇静钢和半镇静钢三类。其中沸腾钢的成材率高但是不适合高冲击以及低温条件下工作。(P33) 13、滚动轴承钢GCr9中碳的铬含量约为 %左右。 14、T8中碳的平均含C量约为 % 。 15、为了改善碳素工具钢的切削加工性能,通常采用的预备热处理是球化退火。 16、T10钢锉刀,通常采用的最终热处理为淬火+ 低温回火 17、1Cr13中铬的平均含量约为 13% 。 18、KTZ700—02牌号中,“700”的含义是最低抗拉强度为700MPa 。 1、以下哪些元素可以使?相区扩大,S点左移,A3线下降。( C )(P19) a、Mn Si、 W b、Cr Si Co

软件工程导论简答题大全

1.软件工程的七条基本原理是什么? 答:软件工程的七条基本原理是: 用分阶段的是的生存周期计划严格管理; 坚持进行阶段评审; 严格实施的产品控制; 采用现代程序技术; 结果应能清楚地审查; 开发小组的成员应该少而精; 承认不断改进软件工程的必要性。 2.良好的编码风格应具备哪些条件? 答:应具备以下条件: (1)使用标准的控制结构; (2)有限制地使用GOTO语句; (3)源程序的文档化(应具备以下内容) ①有意义的变量名称——“匈牙利命名规则”。 ②适当的注释——“注释规范”。 ③标准的书写格式: ——用分层缩进的写法显示嵌套结构的层次(锯齿形风格); ——在注释段的周围加上边框; ——在注释段与程序段、以及不同程序段之间插入空行; ——每行只写一条语句; ——书写表达式时,适当使用空格或圆括号等作隔离符。 (4)满足运行工程学的输入输出风格。 3.简述文档在软件工程中的作用。 答: (1) 提高软件开发过程的能见度 (2) 提高开发效率 (3) 作为开发人员阶段工作成果和结束标志 (4) 记录开发过程的有关信息便于使用与维护; (5) 提供软件运行、维护和培训有关资料; (6) 便于用户了解软件功能、性能。 4.可行性研究包括哪几方面的内容? 答: (1)经济可行性:是否有经济效益,多长时间可以收回成本; (2)技术可行性:现有技术能否实现本系统,现有技术人员能否胜任,开发系统的资源能否满足; (3)运行可行性:系统操作在用户内部行得通吗? (4)法律可行性:新系统开发是否会侵犯他人、集体或国家利益,是否违反国家法律。 5.结构化的需求分析描述工具有哪些? 答:有数据流图(DFD)、数据字典(DD)、判定表、判定树、结构化语言(PDL)、层次方框图、Warnier图、IPO图、控制流图(CFD)、控制说明(CSPEC)、状态转换图(STD)和实体—关系图(E—R)等。 6.一般面向对象分析建模的工具(图形)有哪些?

软件工程思想—C++面向对象程序设计

C++面向对象程序设计 六年前,我刚热恋“面向对象”(Object-Oriented)时,一口气记住了近十个定义。六年后,我从几十万行程序中滚爬出来准备写点心得体会时,却无法解释什么是“面向对象”,就象说不清楚什么是数学那样。 软件工程中的时髦术语“面向对象分析”和“面向对象设计”,通常是针对“需求分析”和“系统设计”环节的。“面向对象”有几大学派,就象如来佛、上帝和真主用各自的方式定义了这个世界,并留下一堆经书来解释这个世界。 有些学者建议这样找“对象”:分析一个句子的语法,找出名词和动词,名词就是对象,动词则是对象的方法(即函数)。 当年国民党的文人为了对抗毛泽东的《沁园春·雪》,特意请清朝遗老们写了一些对仗工整的诗,请蒋介石过目。老蒋看了气得大骂:“娘希匹,全都有一股棺材里腐尸的气味。” 我看了几千页的软件工程资料,终于发现自己有些“弱智”,无法理解“面向对象”的理论,同时醒悟到“编程是硬道理。” 面向对象程序设计语言很多,如Smalltalk、Ada、Eiffel、Object Pascal、Visual Basic、C++等等。C++语言最讨人喜欢,因为它兼容C语言,并且具备C语言的性能。近几年,一种叫Java的纯面向对象语言红极一时,不少人叫喊着要用Java革C++的命。我认为Java好比是C++的外甥,虽然不是直接遗传的,但也几分象样。外甥在舅舅身上玩耍时洒了一泡尿,俩人不该为此而争吵。 关于C++程序设计的书藉非常多,本章不讲C++的语法,只讲一些小小的编程道理。如果我能早几年明白这些小道理,就可以大大改善数十万行程序的质量了。 6.1 C++面向对象程序设计的重要概念 早期革命影片里有这样一个角色,他说:“我是党代表,我代表党,我就是党。”后来他给同志们带来了灾难。 会用C++的程序员一定懂得面向对象程序设计吗? 不会用C++的程序员一定不懂得面向对象程序设计吗? 两者都未必。就象坏蛋入党后未必能成为好人,好人不入党未必变成坏蛋那样。 我不怕触犯众怒地说句大话:“C++没有高手,C语言才有高手。”在用C和C++编程8年之后,我深深地遗憾自己不是C语言的高手,更遗憾没有人点拨我如何进行面向对象程序设计。我和很多C++程序员一样,在享用到C++语法的好处时便以为自己已经明白了面向对象程序设计。就象挤掉牙膏卖牙膏皮那样,真是暴殄天物呀。 人们不懂拼音也会讲普通话,如果懂得拼音则会把普通话讲得更好。不懂面向对象程序设计也可以用C++编程,如果懂得面向对象程序设计则会把C++程序编得更好。本节讲述

工程材料学总结1

《工程材料学》复习大纲 第一章 概论 主要概念 工程材料,结构材料,功能材料,材料的组织、结构,使用性能,工艺性能,陶瓷材料,高分子材料,复合材料 内容要求 1. 工程材料的分类。 2. 工程材料的性能,掌握机械工程中常用力学性能指标的意义及单位 (σs,σ0.2,σb, δ,ψ,HBS, HRC, HV, ak)。 第二章 材料的结构 主要概念 晶格与晶胞,晶向族、晶面族,单晶体与多晶体,晶粒与晶界,点缺陷、线缺陷、面缺陷 内容要求 1.立方晶胞中晶向指数与晶面指数表示方法 (给出晶面晶向,让你标定出指数;给出指数,让你画出晶面, 晶向)。 2.三种典型金属晶型的原子位置、单胞原子数、原子半径、致密 度、配位数。 第三章 结晶与相图 主要概念 凝固与结晶, 过冷度, 形核与长大, 合金, 组元,相,相组成物,组织组成物,固溶体,金属化合物, 匀晶、共晶、共 析转变,杠杆定律 内容要求 1. 液态金属的结晶过程。 2. 熟悉共晶(析)转变、共晶(析)体、先共晶(析)相、二次相的 概念。

3.利用相图分析合金结晶过程,区分相组成物和组织组成物并计算相对量。 第四章 铁碳合金 主要概念 同素异构转变,铁素体,奥氏体,渗碳体,珠光体,莱氏体,石墨化, 灰铸铁,球墨铸铁。 内容要求 1. 熟悉Fe-Fe3C相图和铁碳合金中的共晶(析)转变。 2. 会分析各类铁碳合金冷却过程,熟悉它们室温时的相组成物和 组织组成物,并会计算其相对含量,会画组织示意图。 (相组成和组织组成的区别,会使用杠杆定律) 3. 掌握碳钢的牌号,知道它们的用途。 4.懂得石墨形态对铸铁性能的影响,常用铸铁的分类、牌号,主要用途。 第五章 金属的塑性变形与再结晶 主要概念 滑移,滑移面,滑移方向,滑移系,固溶强化,细晶强化,弥散强化,加工硬化(四种提高强度的方法),回复,再结晶, 再结晶温度, 热加工流线 内容要求 1.金属塑性变形的基本过程与塑性变形后的组织、性能的变化。 2.懂得滑移与位错运动的关系,从而理解强化金属的基本原理和主 要方法。 3.热加工与冷加工的根本区别和热加工的主要作用。 第六章 钢的热处理 主要概念 热处理,临界点,退火(炉冷),正火(空冷),淬火(油冷、水冷),回火,表面热处理,化学热处理,奥氏体化,奥

软件工程基本原理教材

软件工程基本原理 软件的生命周期 一个软件产品从构想到不再使用,期间会经历若干阶段,我们称其为软件的生命周期(life cycle)。生命周期中的3个主要阶段是:开发阶段(development),使用阶段(use)和维护阶段(maintenance)。通常情况是:客户提出需要解决的问题,软件开发者就构思并开发相应的软件,并藉此获得酬劳。新的软件是在开发阶段建立的。 软件开发完毕之后就交付用户使用。用户在使用过程中,通常都会发现各种问题(错误)及提出各种修改建议。这些信息都会反馈给开发者,这就进入了维护阶段. 在软件维护阶段中,软件中的错误被修改(标识),功能被增强。如果需要进行较大的修改,通常会开发一个新版本的软件并发布和使用。 当一个软件的维护费用过于昂贵时,开发者就考虑不再使用该软件,也不再发布新的版本。 软件开发阶段是生命周期中的第一个阶段,也是最重要的阶段。如果一个软件开发得好,后续的维护将十分容易,相应的也就节约维护成本。

软件开发阶段 软件工程师通常将软件的开发阶段分为下面4个子阶段: ●分析阶段 ●设计阶段 ●实现阶段 ●测试和调试阶段 分析阶段 分析问题是第一步也是最为重要的一部。在这一步中。您需要做以下事情: ●全面理解所要解决的问题 ●进行需求分析(requirement analysis):理解问题需求,包括程序是否需要和用户进行交互,是否操纵数据,是否有输出结果以及输出结果的格式等等。举一个列子,如果您需要编写一个自动取款机(ATM)的程序。在分析阶段,您要给出该ATM机可以进行的操作,如:取款,存款,转账及余额查询等等。您会和使用该ATM机的客户进行讨论,理解他们的需求,增加必要的操作,以便是您的程序是用户友好的。 ●如果程序需要对数据进行操作,开发人员必须了解数据类型及它们的表示方法。这时候可能会接触一些样本数据。如果程序有输出信息,必须确定它们所生成的结果及输出格式等。

软件、软件工程的基本概念和特点

2017-2018 学年第一学期第四次作业 专业:计算机科学与技术班级:17级3班学号:1701110140姓名:任亚磊 作业内容: 简述软件、软件工程的基本概念和特点 软件: 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合。其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能正常操作信息的数据结构;文档是与程序开发,维护和使用有关的图文资料。 软件的特点: 1.软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性 2.软件的生产和硬件不同,在它的开发过程中没有明显的制造过程、没有磨损 3.在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。 4.软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同的依懒性 5.软件的开发至今尚未完成摆脱手工艺的开发方式,没有实现自动化 6.软件本身是复杂的、实际问题的复杂性、程序逻辑结构的复杂性 7.软件的成本相当昂贵。 8.相当多的软件工作涉及社会因素。 软件的分类: 1.系统软件:操作系统、数据库管理系统、设备驱动程序、通信处理程序 2.应用软件:商业数据处理软件、工程和科学计算软件、系统仿真软件 软件的其他角度分类: a.按规模划分:微型软件、小型、中型、大型、甚大型、极大型 b.按工作方式划分:实时处理软件、分时软件、交互式软件、批处理软件

c.按软件服务对象的范围划分:项目软件、产品软件 软件生产的发展: 1 程序设计时代:这个阶段生产方式是个体劳动,生产工具是机器语言,汇编语言。(1946-1956年) 2 程序系统时代:这个阶段生产方式是小集团合作生产,生产工具是高级语言,开发方法仍依靠个人技巧,但开始提出结构化方法。(1956-1968年) 3 软件工程时代:这个阶段生产方式是工程化的生产,使用数据库,开发工具,开发环境,网络,分布式面向对象技术来开发软件。(1968年至今) 软件工程: 软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。主要包括三个方面的内容:软件开发方法,软件过程和软件工具。 软件工程的原则: 1.抽象2.信息隐蔽3.模块化4.局部化5.确定性6.一致性7.完备性8.可验证性。

工程档案资料管理措施基本规定

工程档案资料管理措施基本规定 1、施工资料是在施工过程中形成的资料、施工单位应负责施工资料的管理工作,负责汇总分包单位编制的施工资料。在工程竣工验收前,将工程的施工资料整理、汇总完成形成的文件整理立卷后,按规定移交档案管理机构。 2、对指定分包工程的,总承包单位负责收集、整理、汇总各分包单位形成的工程档案,各分包单位应按本规程规定,将本单位形成的工程文件整理、立卷后及时移交总承包单位。对独立承包工程,各承包单位负责收集、整理、立卷其承包项目的工程文件,并应及时向监理(建设)单位移交。 3、建筑工程的检验批、分项、分部(子分部)工程质量验收记录使用安湖北省建筑工程文件管理规程各专业的工程质量验收记录表。分项工程质量验收记录应附有相关的检验批质量验收记录。分部(子分部)工程质量验收记录应附有相关的分项工程质量验收记录。 4、建筑工程的单位(子单位)工程质量竣工验收记录,由施工单位在工程完工后,按国家相关规范及湖北省建筑工程文件管理规程规定,自行组织有关人员进行工程质量检查验收,并将验收结果填入表中验收记录栏。表中验收结论由监理(或建设)单位组织验收后填写。综合验收由建设单位组织的验收组进行验收,对验收结果进行商定后,建设单位根据参加验收各方所提意见填写验收结论。 5、建筑工程的单位(子单位)工程质量控制资料核查记录,必须按本规程的规定在施工单位自检的基础上,经监理(或建设)单位

逐项细致、认真地对照核查,提出核查意见交总监理工程师(或建设单位项目负责人)审核,由总监理工程师(或建设单位项目负责人)填写核查结论。 6、建筑工程的单位(子单位)工程安全和功能检验资料核查及主要功能抽查记录中,资料核查部分必须按湖北省建筑工程文件管理规程的规定在施工单位自检的基础上,经监理(或建设)单位逐项对照核查,提出核查意见,交总监理工程师(或建设单位项目负责人)审核后,由总监理工程师(或建设单位项目负责人)填写核查结论;主要功能抽查部分,由项目验收组成员商定抽查项目进行资料抽查,有疑义时可对实物局部(或全部)进行现场实测,并由验收组填写抽查结论。 7、单位(子单位)工程安全和功能检验资料核查及主要功能抽查记录中“室内环境检测报告”项,应在建筑工程竣工时按规定由建设单位委托有资质的检测机构对建筑工程室内氡、甲醛、苯、氨、总挥发性有机化合物(TVOC)的含量指标进行检测。 8、质量控制资料及安全和功能检验资料核查时,如某项核查未达到湖北省建筑工程文件管理规程规定的相应“核定原则”,则该项目核查结果应定为“不符合要求”。 9、各类核查资料出现“不符合要求”项目时,如该项目关系到结构安全、人身健康和重要使用功能或影响环保和公众利益时,则该单位工程不具备工程质量竣工验收条件,必须进行技术鉴定处理,达到设计要求和有关规定后,方可重新验收。

软件工程知识点总结

软件工程知识点总结 软件工程专业是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。接下来是为大家收集的软件工程知识点总结,以供大家学习! 知识点一软件工程的基本概念 1、软件定义:是计算机系统中与硬件相互依存的另一部分,是包括程序、数据以及相关文档的完整集合。 1)程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。 2)数据是使程序能够正常操作信息的数据结构。 3)文档是与程序开发、维护和使用有关的图文资料。 国标(GB)计算机软件的定义:与计算机系统的操作相关的计算机程序、规程、规则以及可能有的文件、文档及数据。 2、软件特点: 1)软件是一种逻辑实体,而不是物理实体,具有抽象性,是计算机的无形部分; 2)软件的生产与硬件不同,它没有明显的制作过程; 3)软件在运行、使用期间不存在磨损、老化问题; 4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题; 5)软件复杂性高,成本昂贵; 6)软件开发涉及诸多的社会因素

3、软件的分类: 按照功能可以分为:应用软件、系统软件、支撑软件(或工具软件) 1)应用软件是为解决特定领域的应用而开发的软件。 2)系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。 3)支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具软件。 4、软件危机:是指在软件的开发和维护过程中所遇到的一系列严重问题。软件危机主要体现在以下几个方面: ①软件开发的实际成本和进度估计不准确 ②开发出来的软件常常不能使用户满意 ③软件产品的质量不高,存在漏洞,需要经常打补丁 ④大量已有的软件难以维护 ⑤软件缺少有关的文档资料 ⑥开发和维护成本不断提高,直接威胁计算机应用的扩大 ⑦软件生产技术进步缓慢,跟不上硬件的发展和人们需求增长 5、软件工程:此概念的出现源自软件危机。软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来开发与维护软件的学科。

软件工程思想的重要性

软件工程思想的重要性 在谈软件工程的重要性前,我先说说软件工程的思想。软件工程主要讲述软件开发的道理,基本上是软件实践者的成功经验和失败教训的总结。软件工程的观念、方法、策略和规范都是朴实无华的,平凡之人皆可领会,关键在于运用。我们不可以把软件工程方法看成是诸葛亮的锦囊妙计─—在出了问题后才打开看看,而应该事先掌握,预料将要出现的问题,控制每个实践环节,并防患于未然。研究软件工程永远做不到理论家那么潇洒:定理证明了,就完事。 软件工程的目标是提高软件的质量与生产率,最终实现软件的工业化生产。质量是软件需求方最关心的问题,用户即使不图物美价廉,也要求个货真价实。生产率是软件供应方最关心的问题,老板和员工都想用更少的时间挣更多的钱。质量与生产率之间有着内在的联系,高生产率必须以质量合格为前提。如果质量不合格,对供需双方都是坏事情。从短期效益看,追求高质量会延长软件开发时间并且增大费用,似乎降低了生产率。从长期效益看,高质量将保证软件开发的全过程更加规范流畅,大大降低了软件的维护代价,实质上是提高了生产率,同时可获得很好的信誉。质量与生产率之间不存在根本的对立,好的软件工程方法可以同时提高质量与生产率。软件的质量因素很多,如正确性,性能、可靠性、容错性、易用性、灵活性、可扩充性、可理解性、可维护性等等。有些因素相互重叠,有些则相抵触,真要提高质量可不容易啊!软件工程的主要环节有:人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试、维护等。 最早出现的软件工程模型是线性模型(又称瀑布模型)。线性模型太理想化,太单纯,已不再适合现代的软件开发模式,几乎被业界抛弃。偶而被人提起,都属于被贬对象,未被留一丝惋惜。但我们应该认识到,“线性”是人们最容易掌握并能熟练应用的思想方法。当人们碰到一个复杂的“非线性”问题时,总是千方百计地将其分解或转化为一系列简单的线性问题,然后逐个解决。一个软件系统的整体可能是复杂的,而单个子程序总是简单的,可以用线性的方式来实现,否则干活就太累了。线性是一种简洁,简洁就是美。当我们领会了线性的精神,就不要再呆板地套用线性模型的外表,而应该用活它。人们都有自己的世界观和方法论,能自然而然地运用于生活和工作中。同样,程序员脑子里的软件工程观念会无形地支配其怎么去做事情。软件工程三十年的发展,已经积累了相当多的方法,但这些方法不是严密的理论。实践人员不应该教条地套用方法,更重要的是学会“选择合适的方法”和“产生新方法”。有谋略才会有好的战术。几千年前,我们的祖先就在打闹之际写下了很多心得体会,被现代人很好地运用于工业和商业。 下面我就结合一些实际生活中的例子来从几个方面谈谈软件工程的应用,进而说明软件工程在计算机领域的重要性。 著名的3D游戏软件Quake,能够在PC机上实时地绘制高度真实感的复杂场景。Quake 的开发者能把很多成熟的图形技术发挥到极致,例如把Bresenham画线、多边形裁剪、树遍历等算法的速度提高近一个数量级。我第一次看到Quake时不仅感到震动,而且深受打击。

软件工程导论课程教学大纲

《软件工程导论》课程教学大纲 一、课程性质、地位和作用 《软件工程导论》是是软件工程专业的专业基础课程,属必修课。 本课程主要讲述建造软件系统的基本方法、技术、流程、工具及规范等。通过学习可以使学生了解软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的基本内容和发展动向;学习用工程化的方法开发软件项目,初步掌握开发过程中应遵循的流程、准则、标准和规范。本门课程为将来从事软件开发学生的软件工程师之路奠定坚实的基础。 二、课程教学对象、目的和要求 本课程适用于软件工程、计算机应用等从事软件开发的本科专业。课程教学目的、要求: (一)从教学内容上,应使学生了解软件工程的基本概念,主要包括软件与软件开发的基本过程,软件危机与软件工程。掌握个人软件开发过程的基本内容和方法,了解软件开发模型及结构化软件设计方法,以及软件质量保证基本内容。(二)从能力方面,应使学生通过对软件工程基本概念和方法的学习和课后练习,培养学生养成规范化个人开发的良好习惯,培养学生按照软件工程的基本过程和方法来设计和开发软件。 (三)从教学方法上,在课堂理论教学中,采用学生可以理解的软件开发素材,通过一边实践一边讲解的方法,讲解软件过程的基本思想和方法,通过学生完成与实践结合的作业,调动学生的积极性,使软件工程的基本思想逐步植根于学生头脑中。 三、相关课程及关系 本课程的先修课程是“C语言程序设计”和“数据结构”等程序设计课程,学习应在学生具有一定的编程能力基础上进行。本课程为后续的“软件制造工程”和“软件设计工程”等课程打下了必要的理论基础。 四、课程内容及学时分配 总学时:32学时 (一)绪论1学时 1、软件工程及其重要性 2、软件开发需要软件工程 3、软件工程课程体系架构(需要什么软件工程) 、课堂的组织、学习方法、章节安排与考核4. 要求学生了解软件工程的起源,软件工程在软件开发中的作用,了解软件工程课程体系。 (二)软件与软件工程4学时 1、软件及软件分类 2、软件工程的由来及概念 3、软件生命周期 4、软件开发与软件开发方法 5、软件工程工具和环境 6、软件开发项目管理介绍

工程档案管理制度

工程资料档案管理制度 目录 第一章总则 第二章工程档案管理制度 第三章工程文件收发及管理制度 第四章行政部门档案管理职责 第五章施工单位归档范围 第六章档案资料借阅制度 1.总则 1.1为确保工程档案的齐全、完整、准确、系统,确保档案案卷合格率,使工程档案管理顺利达到《建设工程文件归档整理规范》的要求,特制定本制度。 1.2基本建设工程档案资料是指在整个建设项目,从酝酿、决策到建成投产的过程中形成的有归档保存价值的文件资料,包括项目的提出、调研、可行性研究、评估、勘测、设计、施工、调试、竣工等工作活动中形成的文字材料、图纸、图表和其它载体的材料。 1.3基本建设工程档案资料是国家、企业的宝贵财富,是勘测、设计、施工和管理人员的劳动结晶。依据《中华人民共和国档案法》,各级人员做好文件材料的立卷归档工作是各自的义务和岗位职责,各级人员应对自己负责的项目所形成的、具有保存价值的文件材料,认真做好立卷归档工作,并确保档案的完整性、准确性。 2 工程档案管理制度 2.1档案资料管理 2.1.1工程档案资料工作是工程建设过程的一部分,应纳入建设全过程管理并与工程建设同步。行政部集中统一管理本工程全过程的技术档案资料,对工程文件材料的形成、积累、收集、归档工作进行监督、检查,并负责工程技术档案资料的接收和移交。 2.1.2工程建设中,各种技术资料交由行政部统一管理发放,各有关部门和单位指定专人

办进领用手续。 2.1.3设备到货后,由技术部汇同有关部门开箱验收后,设备资料(归档的发给施工单位的)统交行政部统一管理,造册登记并建立收发明细帐。各单项工程总体验收由技术部对其各种技术文件和竣工资料进行查验,各项工程竣工决算的最后付款必须由技术部对竣工资料签收合格后支付。 2.1.4购置技术资料、图书、标准由行政部门统一申请,经批准后按计划办理,或委托有关部门自行办理。凡购置技术资料、图书、标准的报销凭证,一律由档案室签收后方可办理报销手续。 2.2归档文件的质量规定 2.2.1凡合同、协议等文件材料均应为正本(即必须有各方代表符合规定的亲笔签名,有单位盖章栏目的还必须加盖单位公章归档,签字方不能用副本或复印件归档)。 2.2.2施工技术记录、工程签证单、试运记录、设计修改通知单(含工程联系单)等表格和数据均应用70g以上的白色书写材料书写并原件(如表式为复印件,数据虽用合格材料书写也不能作为原件;验收签证单中的各方人员必须签名齐全,不能以盖章或打印件代替签名)归档。 2.2.3调试措施,方案和报告等均应为油印件或激光打印机打印件,不能用复印件或普通色带打印件,以保证字迹的耐久性。 2.2.4主送和抄送本单位的文件材料均应以红头文件(不能用复印件)归档。 2.2.5书写规定 A)书写字迹工整,图样清晰。 B)书写墨水应为碳素墨水,严禁用圆珠笔或铅笔书写。 C)文件书写格式应用横行排列,文件段落,章节编排,按有关文件编写要求;汉字简化应符合国家颁发的有关规定。 3 工程文件收发及管理规定 为加强工程文件收发管理,理顺传递关系,并按工程进度作好工程文件的提供利用,特制定本制度。 3.1工程文件接收 3.1.1各单位提供给技术部的工程文件(工程技术文件、图纸资料)由行政部统一接收;

工程材料学教学大纲

《工程材料学》教学大纲 学分:2总学时:36 理论学时:27实验学时:9 适用专业:农机化、农机化师范 大纲执笔人:许令峰大纲审定人:赵立新 一﹑说明 1.课程的性质﹑地位和任务 材料是现代工业技术的物质基础,正确选择材料,确定合理的加工工艺,使零件既能满足性能要求,又能充分发挥材料的潜力,是一个机械工程人员必须具备的能力。工程材料学是研究常用工程材料的实用性能与化学成分﹑内部显微组织之间的相互关系,找出其内在规律,以便采用合理的热处理工艺方法,来控制其内部组织,提高材料的性能。 2.课程教学的基本要求 理论知识方面:本课程是一门与生产实践联系很密切的课程,在课程学习前,应进行金工实习,以便学生建立有关材料与工艺的感性知识。应安排学生在学完机械制图﹑机械制造基础等有关基础课或专业基础课程之后的第四学期,内容上注意与以上学科的衔接,并避免不必要的重复,课堂教学应力求使学生弄清基本概念,掌握基本内容,使学生获得常用工程材料的种类﹑成分﹑组织﹑性能和改性方法的基本知识,具备根据零件工作条件合理选择和使用材料,正确制定热处理工艺方法,妥善安排工艺路线的初步能力。由于材料学的不断发展,知识不断更新,所以授课教师在吃透教材的基础上,应广泛阅读有关参考资料,紧跟本学科的发展,备课过程中随时补充新内容,使学生及时了解到本学科的重要发展及发展动向。 实验技能方面:观察材料内部组织结构必须借助于金相显微镜或其他仪器,学生必须首先掌握金相显微镜的构造及使用,并且学会金相显微试样制备。还应掌握不同含碳量的碳钢硬度的测定。 3.课程教学改革 总体设想:在有限的教学时间内尽可能多传授给学生有关材料学方面的理论知识。除课堂教学外,尚需进行必要的课堂讨论和习题课等,以进一步培养学生分析问题和独立工作的能力 二.教学大纲内容 (一)课堂理论教学 第一章:金属的机械性能(1学时) 拉伸图的分析,弹性和刚度﹑强度﹑塑性﹑硬度﹑疲劳强度﹑冲击韧性和断裂韧性的含义。 思考题:1﹑说明低碳钢拉伸曲线上的几个变形阶段 2﹑根据作用性质,载荷可分为几类?其主要性能指标各有那些? 3﹑何谓硬度?如何衡量? 第二章:金属的晶体结构与结晶(2学时) 第一节:纯金属的晶体结构 晶体的基本概念;金属中常见的晶格类型;晶面指数和晶向指数;金属晶体结构的其他参数。 第二节:实际金属的晶体结构 多晶体结构;晶体缺陷:点缺陷﹑线缺陷﹑面缺陷 第三节:金属的结晶 结晶的概念;结晶过程;晶粒大小:晶粒大小对性能的影响;晶粒大小的控制 本章重点﹑难点:1﹑晶格类型

计算机二级考试复习软件工程基础

第3章软件工程基础 经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是软件生命周期、软件设计的基本原理,软件测试的目的、软件调试的基本概念,读者应对此部分进行重点学习。 详细重点学习知识点: 1.软件的概念、软件生命周期的概念及各阶段所包含的活动 2.概要设计与详细设计的概念、模块独立性及其度量的标准、详细设计常用的工具 3.软件测试的目的、软件测试的4个步骤、 4.软件调试的任务 3.1软件工程基本概念 考点1 软件定义与软件特点 考试链接: 考点1在笔试考试中,是一个经常考查的内容,考核的几率为70%,主要是以选择题的形式出现,分值为2分,此考点为识记内容,读者应该识记软件的定义,特点及其分类。 软件指的是计算机系统中与硬件相互依存的另一部分,包括程序、数据和相关文档的完整集合。程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列。数据是使程序能正常操纵信息的数据结构。文档是与程序的开发、维护和使用有关的图文资料。可见,软件由两部分组成: (1)机器可执行的程序和数据; (2)机器不可执行的,与软件开发、运行、维护、使用等有关的文档。

软件的特点: (1)软件是逻辑实体,而不是物理实体,具有抽象性; (2)没有明显的制作过程,可进行大量的复制; (3)使用期间不存在磨损、老化问题; (4)软件的开发、运行对计算机系统具有依赖性; (5)软件复杂性高,成本昂贵; (6)软件开发涉及诸多社会因素。 根据应用目标的不同,软件可分应用软件、系统软件和支撑软件(或工具软件)。 小提示:应用软件是为解决特定领域的应用而开发的软 件;系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件;支撑软件是介于两者之间,协助用户开发软件的工具性软件。 考点2 软件工程过程与软件生命周期 考试链接: 考点2在笔试考试中,在笔试考试中出现的几率为30%,主要是以选择题的形式出现,分值为2分,此考点为识记内容,读者应该识记软件生命周期的定义,主要活动阶段及其任务。 软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。一般包括可行性分析研究与需求分析、设计、实现、测试、交付使用以及维护等活动,如图3-1所示。

软件工程教学大纲正式版

软件工程教学大纲正式 版 WTD standardization office【WTD 5AB- WTDK 08- WTD 2C】

《软件工程导论》课程教学大纲一、课程基本信息 课程编号: 英文名称名:Software Engineering 总学时:54学时 学分:3 课程类别:专业必修课 适用专业:全校本(专)计算机科学与技术 先修课程:数据结构,大学数学,离散数学,计算机算法设计。 二、课程性质与目的、要求 《软件工程》是计算机专业的一门工程性基础课程,在软件工程学科人才培养体系中占有重要的地位。软件开发是建立计算机应用系统的重要环节,人们通过软件工程学把软件开发纳入工程化的轨道,而软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学。《软件工程》已成为高等学校计算机软件教学体系中的一门核心课程, 本课程以IEEE最新发布的软件工程知识体系为基础构建内容框架,注重贯穿软件开发整个过程的系统性认识和实践性应用,以当前流行的统一开发过程、面向对象技术和UML语言作为核心,密切结合软件开发的先进技术、最佳实践和企业案例,力求从“可实践” 软件工程的角度描述需求分析、软件设计、软件测试以及软件开发管理,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。 通过本课程的学习,要求学生能掌握软件工程的基本概念、基本原理、开发软件项目的工程化的方法和技术及在开发过程中应遵循的流程、准则、标准和规范等;学生应能掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为学生参加大型软件开发项目打下坚实的理论基础。 本课程注重培养学生理论应用于实践的能力,课堂上教师向学生讲述软件工程中的相关原理和概念,并通过课程设计,培养学生对整个软件开发过程的能力,让学生能切实体会到软件工程在实践中的指导作用,并按软件工程的要求完成规范的各项软件开发文档。本课程对提高学生的软件开发能力和项目管理能力有重要的现实意义。 三、教学内容及学时分配 本课程的教学内容共分十三章。

建设工程档案管理制度

建设工程档案管理制度 一、管理责任部门及相关人员职责 (2) 二、档案分类及归档范围、要求 (3) 三、档案移交、整理、编号 (8) 四、档案的利用 (9) 五、档案的保管 (10) 六、档案的销毁 (12) 七、档案保密制度 (12)

一、管理责任部门及相关人员职责 (一)、人事行政部人事行政专员统一集中管理档案并直接向人事行政部经理负责。 (二)、总经理负责审批《档案销毁登记表》、《文件丢失损毁报告表》。(三)、人事行政部经理负责审核《档案销毁登记表》、《文件丢失损毁报告表》、《档案借阅审批表》、《档案查阅审批单》、《档案复制审批单》,以及对档案意外损毁事件进行调查并提出报告。。 (五)、其他部门经理负责审核本部门《档案借阅审批表》、《档案复制审批单》、《档案查阅审批单》和明确相关人员负责收集保管本部门的档案资料,对部门资料的完整性负责。 (六)、人事行政专员负责: 1、制度的推进与执行;各部门档案管理体系的建立、优化与督察; 2、督促档案资料的移交; 3、档案的收集、接收、鉴定、分类、装订、编号、编目、保管、销毁、编研等; 4、档案的提供利用、登记; 5、档案室设备、设施的保管维护; 6、负责档案管理软件系统的使用推广、原始数据录入、维护。 (七)、各部门资料员/兼职资料员 1、制度在部门的执行; 2、按公司要求建立本部门的资料管理系统并运作; 3、负责收集整理本部门形成的本制度归档范围内的文件,正规保管及利用,按期移交档案室; 4、推进本部门对档案管理软件系统的利用; (八)、档案管理工作作为人事行政专员、部门资料员、部门兼职资料员每

月工作计划评价的考核内容之一。 二、档案分类及归档范围、要求 1、文书档案 1.1归档范围: 1.1.1、集团资料 (1)各类营业证照(营业执照、组织机构代码证、开发资质证书、税务登记证、投资协议、国土成交确认函、国土合同等 (2)公司章程 (3)集团公司或股东方发来的与公司有关的决定、决议、指示、命令、条例、规定、计划等各类正式行文 1.1.2、红头文件 公司下发和上报的各类正式行文 1.1.3、外来文件 各政府机关部门、协会、学会下发给公司的与工程项目无关的其他行政性质的通知、邀请等文件 1.1.4、会议资料 (1)会议纪要利用明源流程存档 (2)专题会会议讲义 1.1.5、法律文件 (1)合同、协议审核; (2)诉讼材料 1.1.6、物资采购合同 1.1.7、车辆资料

《工程材料学》习题与思考题doc

工程材料学 习题与思考题 福州大学材料学院 2008.12

钢与合金钢 一、名词解释 合金元素杂质元素钢合金钢奥氏体形成元素铁素体形成元素碳化物形成元素非碳化物形成元素铁素体钢奥氏体钢贝氏体钢马氏体钢莱氏体钢晶界偏聚(晶界吸附)(钢中的)相间析出回火稳定性(回火抗力)二次淬火二次硬化原位形核离位形核一类回火脆性二类回火脆性 (低碳钢的)应变时效(低碳钢的)淬火时效调质处理优良的综合机械性能喷丸处理马氏体时效钢超高强度钢热疲劳疲劳剥落(接触疲劳)(滚动轴承钢的)碳化物液析球状不变形夹杂热硬性(高速钢的)黑色组织(高速钢的)萘状断口基体钢 不锈钢晶间腐蚀点腐蚀应力腐蚀氢脆阳极极化阴极极化钝化n/8规律475℃脆性敏化处理稳定化处理蠕变蠕变极限持久强度持久寿命 二、问答题 1.工程材料分为几大类?各类工程材料的使用性能、资源或价格一般有何特点? 2.什么叫钢?按用途分类,钢分为哪几类?(尽可能详细分类) 3.一种金属材料除基本组元外通常还含有若干种其他元素,如何界定这些元素是合金元素还是杂质? 4.举例说明奥氏体形成元素对铁基二元相图的影响规律。 5.举例说明铁素体形成元素对铁基二元相图的影响规律。 6.总结奥氏体形成元素对Fe-Fe3C相图的A1、A3、S点、E点的影响规律,并解释为什么高速钢、Cr12 型冷模具钢等高合金钢中会出现莱氏体? 7.总结铁素体形成元素对Fe-Fe3C相图的A1、A3、S点、E点的影响规律,并解释为什么3 Cr2 W8 V 钢实际上是过共析钢? 8.解释下列现象: (1)在相同含碳量的情况下,大多数合金钢的热处理加热温度比碳钢高; (2)在相同含碳量的情况下,含碳化物形成元素的合金钢比碳钢具有较高的回火稳定性; (3)高速钢在热轧或热锻后,经空冷或马氏体组织。 9. 从电子结构或原子相对尺寸大小特点归纳过渡族金属在钢中形成碳化物的规律,包括碳化物的稳定性、点阵结构的复杂性和多样性。(联系以下提供的部分元素周期表进行归纳) 10.哪类合金元素可以溶入渗碳体中?举例说明这些合金元素在渗碳体中溶解度的差别。 11.试以晶界吸附现象的基本规律解释不锈钢的晶间腐蚀、硼提高钢的淬透性和硫、磷、砷锑等引起的回火脆性。 12.强碳化物形成元素、碳、磷对奥氏体晶粒长大分别起何作用以及分别是通过哪种机理起作用的? 13.合金马氏体回火时Cr的特殊碳化物的形成是原位形核还是离位形核?而W呢?原位形核与离位形核形成的特殊碳化物的组织有何显著不同?对钢的性能有何影响? 14.联系“25Si2Mn2CrNiMoV钢淬火后强度大大提高”的事实,论述低碳马氏体钢的合金化与强化设

工程档案管理细则.pdf

工程档案管理细则 第一条工程档案为工程质量验收的重要组成部分,工程档案管理是工程管理的重要内容之一,也是公司档案管理的重点。为了 加强工程档案的规范化管理,提高工程管理水平,保证工程 质量,制定本细则。 第二条工程档案资料的整理可另参阅《建筑工程施工技术资料归档范围及要求》。 第三条工程档案范围 (一)项目开发前期档案: 1、土地投标“中标通知书”; 2、计划任务书及批复文件; 3、建设用地钉桩成果通知单; 4、规划设计任务通知书; 5、规划设计条件通知书; 6、审定规划方案通知及总平面图; 7、人防规划总平面图; 8、市政工程方案会议纪要; 9、环境、消防、卫生及水、电、煤气、热力报装协议; 10、配套项目(如文教、商业、绿化、交通等)协议、合同; 11、勘探、测绘、设计、招投标、监理文件; 12、建设项目选址报告及土地、规划部门批复; 13、建设规划许可证及批准用地范围图; 14、建设用地批准许可证及用地图; 15、国有土地使用证; 16、有关拆迁安置协议、拆迁实施办法等主要文件; 17、拆迁许可证。 18、单体工程项目文件

19、建设工程规划许可证; 20、建设工程开工许可证; 21、建设工程招投标文件、施工合同、工程结算; 22、建设工程施工监理合同、监理计划及监理月报、 23、工程监督委托书及工程质量核验证书; 24、初步设计报批文件及有关图纸; 25、工程勘察报告; 26、工程技术交底会议纪要及工程洽商纪录; 27、工程隐检记录(基础、主体结构); 28、工程竣工备案书; 29、人防工程竣工验收单; 30、消防工程竣工验收单; 31、电梯质量核验单; 32、工程竣工总结; 33、工程质量事故处理; 34、工程照片; 35、沉降观测记录。 (二)单体工程施工技术文件 1、施工组织设计; 2、工程设计交底会议纪要及工程洽商纪录; 3、工程定位放线验收记录; 4、基础钎探验收及基础处理记录; 5、隐检记录(土建、设备、电器); 6、材料及产品合格证(土建、设备、电器); 7、原材料复试报告(砖、水泥、钢材、砂石); 8、试验报告(砼、砂浆试验报告及配比单,钢筋焊接试验,灰土、素土试验报告); 9、单位工程质量保证资料核查表; 10、单位工程质量综合评定表; 11、单位工程观感质量评定表; 12、全部工程竣工图;

相关文档
最新文档