欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    计算机科学技术导论论文WORD.docx

    • 资源ID:12202121       资源大小:23.15KB        全文页数:14页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机科学技术导论论文WORD.docx

    1、计算机科学技术导论论文WORD计算机科学技术 -软件工程 软件学院 李国庭 1026班 学号:2010005163 2011.7.7 目录前言 3第一章:软件工程的概念 41.软件项目计划的主要内容 4第二章:软件工程知识体系 7第三章:软件工程课程体系 101.课程体系 103.软件开发方法 12第四章:软件过程 13第五章:软件工程师 151.职业定义 152.工作内容 153.职业分析 154.考试科目 165.发展前景 166.企业用人主要有以下几个特征 167.就业职位 17 前言软件工程主要研究内容是软件开发范型、软件设计方法、工程支持技术和工程管理技术。其中,软件开发范型涉及软件

    2、工程的方向,主要研究正确解决软件的计算逻辑;软件设计方法涉及软件工程的途径,主要研究高层概念模型和处理逻辑到低层概念模型和处理逻辑的映射;工程支持技术和工程管理技术涉及工程过程质量和产品质量,主要研究管理学理论在软件工程中的应用第一章:软件工程的概念软件工程是指导软件开发和维护的一门工程学科.它采用工程的概念、原理、技术、方法,把经过时间检验而证明是正确的管理技术和当前能够得到的最好的技术方法结合起来,用于开发和维护软件.危机:随着微电子技术的进步,计算机硬件性价比平均每10年提高2个数量级,而且质量稳步提高;同时,计算机软件成本却在逐年上升且质量没有可靠的保证,软件开发的生产率也远远跟不上计

    3、算机应用的需求。在不能开发出完成预定功能的软件,更多的问题是如何开发软件、如何维护大量已经存在的软件以及开发速度如何跟上目前对软件越来越多的需要.软件生存周期是指从提出软件产品需求开始,直到该软件产品被淘汰的全过程。软件开发阶段:需求分析、设计、编码与测试、发布或安装验收.1.软件项目计划的主要内容1.资源需求分析2.经费估算3.进度安排可行性研究任务1.技术可行性2.经济可能性3.社会因素的考虑可行性研究的步骤1.重新检查系统定义报告中相关的内容,进一步复查确认系统规模与目标,改正含糊或不正确的描述,明确对目标系统的限制与约束。2.研究目前正在使用的系统,找出其基本功能和所需要的基本信息,绘

    4、制系统流程图。3.设想新系统的高层逻辑模型,通过对现在系统的分析归纳,可以从现在系统的逻辑模型来设想目标的逻辑模型,最后根据目标系统的逻辑模型建造新的物理系统。4.导出各种实现方案方案进行评价。5.推荐可行性方案。需求分析的任务是确定系统必须完成哪些工作,既“做什么”,至于“怎么做”由设计阶段来完成。结构化分析方法有关内容传统需求分析是不是结构化(Structured Analysis)方法,简称SA方法,它是一种面向数据流的需求分析方法,适合于分析大型数据处理系统,是一种简单、实用的方法。模块及模块化整个软件被划分成若干单独命名和可编址部分软件设计分两步完成概要设计和详细设计要评价一个软件结

    5、构设计的好坏,主要看模块的独立,要从软件结构的耦合性和内聚性两个方面来衡量。好的软件结构应该具有高内聚、低耦合的模块化结构。编码的任务编码的任务是将详细设计翻译成计算机可以理解并最终可以运行的代码。软件测试的目的软件测试的目的正式为了尽量多地去发现软件中存在的各种缺陷与错误并通过一定的手段将这些错误排除。测试的概念通俗地讲,软件测试就是在软件投入运行或发布前,对软件需求分析、设计规格说明和编码进行最终复审的活动。测试的目标1.测试是一个为了发现错误而执行程序的过程2.一个好的测试用例能够发现至今尚未发现的错误3.一个成功的测试是发现了至今尚未发现的错误的测试测试的原则1.所有的测试都应追溯到客

    6、户的要求2.应该把尽早地和不断地进行软件测试作为开发人员的座右铭3.在真正的测试开始之前必须尽可能地完善测试计划4.Pareto(柏拉图)原则亦可用于软件测试5.从心理学的角度讲,创建系统的开发人员并不是进行软件测试的最佳人选6. 测试应该由小到大7.完全的测试是不可能的测试技术的分类1.按测试步骤与策略来分包括单元测试、集成测试、确认测试、系统测试、测试和测试2.按测试技术来分包括白盒测试与黑盒测试3.按测试的环境来分静态分析与动态测试第二章:软件工程知识体系一、软件配置管理1、SCM过程管理2、软件配置识别3、软件配置控制4、软件配置状态记录5、软件配置审计6、软件发布管理和递交二、软件构

    7、造1、语言构造方法2、数学构造方法3、可视化构造方法注:上述三种方法,都要(1)降低复杂性(2)预料多样性(3)结构化确认(4)外部标准使用三、软件设计1、基本概念和准则2、设计质量和度量3、软件架构4、设计符号5、设计策略和方法四、软件工程基础结构1、开发方法(1)启发式方法(2)形式方法(3)原型法2、软件工具(1)开发和维护工具(2)支持活动工具(3)管理工具(4)工作台:集成CASE工具和软件工程环境(5)工具评估技术3、组件集成(1)组件定义(2)参考模型(3)重用五、软件工程管理1、管理过程(1)协调(2)启动和范围定义(3)计划(4)执行(5)评审和估算(6)关闭2、测量六、软件

    8、工程过程1、几根概念和定义(1)主题(2)术语2、过程定义(1)过程定义类型(2)生命周期模型(3)生命周期过程模型(4)过程定义符号(5)过程定义方法(6)自动化3、过程估算(1)过程测量方法学(2)分析范例(3)基准范例4、过程实现和变更(1)过程实现和变更范例(2)基础结构(3)过程实现和变更指南(4)估算过程实现和变更七、软件估算和维护1、维护概念2、维护活动和角色3、维护过程4、维护的组织方面5、维护成本和维护成本估算6、维护测量7、维护工具和技术八、软件质量分析1、定义质量产品(1)ISO 9216质量特性(2)可靠性(3)跟过程和特殊情况相关的质量方面2、软件质量分析(1)质量分

    9、析定义(2)过程计划(3)质量分析的活动和技术(4)软件质量分析的测量九、软件需求分析1、需求和工程过程2、需求诱导3、需求分析4、需求确认5、需求管理十、软件测试1、基本概念和定义2、测试层次3、测试技术4、测试相关测量5、组织和控制测试过程6、自动化测试第三章:软件工程课程体系1.课程体系随着软件工程学科的发展,新概念、新技术和新方法不断涌现,原有的教学内容已经不能适应学科发展和人才培养的要求。因此,我们深入分析了IEEE最新发布的软件工程知识体系3,根据现有学时条件及软件工程系列课程的整体规划,结合基础知识、先进技术和工程实践等方面组织整个课程内容,使学生掌握软件工程的基础知识、先进方法

    10、和最新技术,具备较强的知识拓展能力,为后续结合专业方向继续深入学习打下坚实的基础。图1 软件工程课程体系的层次结构实际软件开发案例小组协作式的课程实践UML语言面向对象技术迭代化开发 RUP、Rational Rose、CVS等软件需求软件设计软件实现软件测试软件演化软件过程软件质量软件配置管理软件项目管理IEEE软件工程知识体系 IEEE系列软件工程标准 IEEE与ACM软件工程职业道德规范和实践要求我们以IEEE最新发布的软件工程知识体系为基础,在基础、应用、实践三个层次上建立了软件工程的课程体系,如图1所示。(1)基础部分:课程知识单元覆盖IEEE发布的软件工程知识体系(SWEBOK),

    11、包括软件需求、软件设计、软件实现、软件测试、软件演化、软件过程、软件质量、软件配置管理和软件项目管理等核心内容。(2)应用部分:以当前流行的统一开发过程、面向对象技术和UML语言为核心,融入企业的最佳实践和实际案例,覆盖IEEE的系列软件工程标准以及RUP、Rational Rose、CVS、Junit等软件工程工具和环境,使学生掌握当前先进的软件工程方法与技术。(3)实践部分:要求学生以开发团队的方式协作开发一个具有一定规模的软件系统,建立支持小组开发的软件开发支持环境,让学生从可实践软件工程的角度学习和运用软件工程的思想和现代技术解决软件开发问题。2.软件开发模型软件开发模型(Softwa

    12、re Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。对于不同的软件系统,可以采用不同的开发方法、使用不同的程序设计语言以及各种不同技能的人员参与工作、运用不同的管理方法和手段等,以及允许采用不同的软件工具和不同的软件工程环境。最早出现的软件开发模型是1970年WRoyce提出的瀑布模型。该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品

    13、,投入使用。但计算拓广到统计分析、商业事务等领域时,大多数程序采用高级语言(如FORTRAN、COBOL等)编写。瀑布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。常见的软件开发模型还有:演化模型、螺旋模型、喷泉模型、智能模型等。软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。最早出现的软件开发模型是1970年WRoyce提出的瀑布模型

    14、。该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品,投入使用。但计算拓广到统计分析、商业事务等领域时,大多数程序采用高级语言(如FORTRAN、COBOL等)编写。瀑布模式模型也存在着缺乏灵活性、无法通过并发活动澄清本来不够确切的需求等缺点。典型的开发模型有:瀑布模型(waterfall model);渐增模型/演化/迭代(incremental model);原型模型(prototype model);螺旋模型(spiral model);喷泉模型(fountain model);智能模型(intelligent model) ;

    15、7. 混合模型(hybrid model)3.软件开发方法1、模块化方法 2 、结构化方法 3、 面向数据结构化方法 4 、面向对象方法 5、 统一建模语言 6、 软件复用和构件技术 第四章:软件过程软件过程为一个为建造高质量软件所需完成的任务的框架,即形成软件产品的一系列步骤,包括中间产品、资源、角色及过程中采取的方法、工具等范畴。根据韦氏字典,一个过程是“某物生产的操作体系能导致结束或得到结果的一系列的活动、变更、或操作。”IEEE定义过程为“为实现给定目标所执行的一序列的步骤”IEEESTD610)所以,一个软件过程可以定义为,人们用以开发和维护软件及其相关产品(例如,项目计划、设计文档

    16、、代码、测试用例、用户手册等等)的一组活动、方法、实践和变换。软件过程应当包含以下三个含义:(1) 个体含义。即指软件或系统在生存周期中的某一类活动的集合,如获取过程、供应过程、开发过程、管理过程。(2) 整体含义。即指软件或系统在所有上述含义下的过程的总体。(3) 工程含义。即指解决软件工程的工程,它应用软件工程的原则、方法来构造软件过程模型,并结合软件的具体要求进行实例化,并在用户环境中运行,以此进一步提高软件开发率、降低成本。随着一个组织的成熟,其软件过程得到更好的定义,并在整个组织内得到更一致的实施。软件过程能力描述通过遵循软件过程能够实现预期结果的程度。一个组织的软件过程能力提供一种

    17、预测该组织承担下一个软件项目时最可能的预期结果的方法。软件过程性能表示遵循软件过程所得到的实际结果。所以,软件过程性能关注已得到的结果,而软件过程能力则关注预期结果。由于一个特定项目的属性和执行该项目的环境所限,该项目的实际性能可能并不充分反映组织的整个过程能力,即项目的能力受限于它的环境。例如,项目在应用领域或所采用的技术上的根本改变可能造成其职员正处于学习状态,这使得他们的项目能力和性能远达不到该组织的整个过程能力。广义的软件过程包括管理过程和生产过程。此外与软件过程相关的还有软件过程工程、软件过程模型、软件过程实施和软件过程改进。第五章:软件工程师1.职业定义软件工程师主要进行软件前期的

    18、项目需求的分析,然后对项目进行风险评估并试图解决这些风险,然后开始进行软件的开发,后期对软件的进度做相关的评估。2.工作内容1、 指导程序员的工作;2、 参与软件工程系统的设计、开发、测试等过程;3 、协助工程管理人保证项目的质量;4 、负责工程中主要功能的代码实现;5 、解决工程中的关键问题和技术难题;6 、协调各个程序员的工作,并能与其它软件工程师协作工作。3.职业分析软件工程师是从事软件开发相关工作的人员的统称。它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位。这些岗位的分工不同,职位和/或级别不同,但工作内容都是与软件开发生产相关的。软件工程师是

    19、IT行业需求量最大的职位,稳居IT行业职位需求TOP10的第一位(第二位是高级软件工程师)。软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C+/JAVA等)、数据库技术(SQL/ORACLE/DB2等)、.NET平台技术、C#、C/S B/S程序开发,还有诸多如JAVA SCRIPT、AJAX、HIBERNATE、SPRING、J2EE、WEB SERVICE、STRUCTS等前沿技术。除此之外,关于网络工程和软件测试的其他技术也要有所涉猎,以利于操控全局。软件工程师可谓是软件项目开发的掌舵者。一名优秀的软件工程师应当具有较强的逻辑思维能力,对于技术的发展有敏锐的嗅觉。虽然要

    20、求技术全面,但无须偏执于门门技术都精通,任何软件工程师都有自己的技术特长和偏向,对于自己手中的技术,可有精通-掌握-熟悉-了解之分,根据工作需要和职业发展的具体情况来划分。4.考试科目 软件工程师是中级职称,考试的题目包括了软件工程、数据库、数据结构、编译原理等计算机学科的基础课程5.发展前景 当今社会不论什么职业的都需要一个不断学习的环节,软件工程师也一样。虽然软件工程师的工作不同于程序员但是一个软件工程师其前身必定是一个优秀的程序员,软件的开发工具、开发技术在不断地发展。在校学生所能学到的东西很难跟得上发展的需要但是也不能说那些东西完全没有用,只有在完全理解了相应的基本技能之后你才能很轻松

    21、地掌握新的技能,软件技术都是一个循序渐进的过程。所以学好学校所能提供的专业课程是相当重要的。6.企业用人主要有以下几个特征1 外包开发行业快速发展,对“人才”在代码和文档方面的规范性、技能和工具的熟练程度要求越来越高;2 Java和.NET技术在市场上平分秋色,都有大量的岗位需求,同时值得庆幸的是二者在应用层面上的技术差异越来越少;3 软件开发企业对开发人员的基本技术素养强调得越来越多,例如:面向对象的程序设计思想和代码组织方法、HTML/CSS/JavaScript客户端技术;4 为了保证质量和工期,企业中大量使用各种框架技术,要求开发人员至少熟悉一种框架技术;5 MIS、OA、ERP、CRM、系统集成、物流、进销存、电子政务、网站建设这一类B/S系统,成为软件工程师需求最大的业务领域。7.就业职位软件工程师的就业职位归结下来主要有WEB开发工程师、数据库开发工程师、网站开发工程师、电子商务开发工程师VB程序员;网页开发人员;非IT专业信息部门的管理信息系统设计、开发、维护网位,JAVA程序员;C+程序员;VB高级程序员;网站开发工程师;测试工程师;文档编写工程师 ,JAVA工程师;.NET工程师;初级分析、设计人员等。


    注意事项

    本文(计算机科学技术导论论文WORD.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开