软件工程的哲学思考.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程的哲学思考.doc

软件工程的哲学思考 近年来,随着社会经济的发展,人们对 高素质的软件人才的需求越来越旺盛,软件人才的培 养变的尤为重要。同时,出现了许多先进的软件人才 培养模式和方法,有力地推动了软件工程学科的发展。 本文尝试用哲学的观点和原理来理解软件工程中的基 本技术和方法,通过对软件工程中几个重要知识点的 哲学分析,使枯燥的软件工程理论变得通俗易懂、深 入浅出。提出了一种以哲学的观点来理解软件工程的 新思想。 关键词:软件工程;哲学;人才培养模式 TP311.52 A 1 引言(Introduction) 软件工程,英文名Software Engineering,是一门 研宄用工程化方法构建和维护有效的、实用的和高质 量的软件的学科[1]。软件产业的发展水平,决定了一 个国家的信息产业发展水平及其在国际市场上的综合 竞争力。目前,我国软件高级人才的短缺已经成为制 约我国软件产业快速发展的一个瓶颈。在中国,国内 市场对软件人才的需求每年高达80万人,而高校计 机毕业生中的软件工程人才还很缺乏,尤其是高素质 的软件工程人才的极度短缺。尽快培养起适合信息产 业所需要的高素质软件工程人才,已经成为信息化工 作中的重中之重。 哲学,社会意识形态之一,是关于世界观的学说 [2]。是理论化、系统化的世界观,是自然知识、社会 知识、思维知识的概括和总结,是世界观和方法论的 统一。是社会意识的具体存在和表现形式,是以追求 世界的本源、本质、共性或绝对、终极的形而上者为 形式,以确立哲学世界观和方法论为内容的社会科学。 爱因斯坦这样谈论哲学:如果把哲学理解为在最普遍 和最广泛的形式中对知识的追求,那么,哲学显然就 可以被认为是全部科学之母。马克思也说过:真正的 哲学是时代精神的精华。 马克思主义哲学与具体科学是一般与个别的关系, 二者之间存在着既相互区别又相互联系的辩证统一关 系。它们之间的区别表现在:具体科学以世界某一特 殊领域的具体规律为自己的研宄对象,因而其理论具 有个别性和特殊性;马克思主义哲学以包括自然、社 会和人类思维在内的整个世界的最一般规律作为自己 的研宄对象,因而其理论具有一般性和普遍性。它们 之间的联系表现在:一方面,马克思主义哲学以具体 科学为基础,没有具体科学的发展,马克思主义哲学 既不可能产生,也不可能发展;另一方面,具体科学 以马克思主义哲学为指导,马克思主义哲学为具体科 学的研究提供正确的世界观和方法论。 2分层DFD体现了抽象和分解的关系 (Hierarchical DFD embodies the relation between abstraction and decomposition) 抽象和分解是两种相互区别又相互联系的思维方 式。所谓分解,就是面向高层对其按某种方式从思维、 逻辑或功能上进行分解,使其一分为几个相对独立的 模块。所谓抽象,是面向底层,隐藏低层的各种差异 和复杂实现,向高层提供一个统一的平台或接口。在 生活中,这种分解与抽象的概念也革新了我们的思维 习惯。面对一个问题,我们现在的习惯是,把它化成 一个个小的整体,再分而治之,再归纳总结,找出其 中的共性。或者先从一个基本内核做起,再层层抽象 扩展,最终达到自己的目标。 抽象是指忽略一个问题中与当前目标无关的那些 方面,以便更充分地关注与当前目标有关的方面。在 求解一个复杂问题时,可以有许多抽象级别。例如, 欲用计算机解决一个复杂的应用问题,开发人员首先 将该应用问题抽象成一个计算机软件系统。在这个抽 象层次上,可以忽略应用问题内部的复杂性,只关注 整个软件系统与外界的联系,即软件系统的输入和输 出。然后,将这个大而复杂的问题分解成若干个较小 的问题(如子系统或功能),每个较小的问题又可分解 成若干个更小的问题(如功能或子系统)。如此自顶向 下一层一层地分解下去,直到每个最底层的问题都足 够简单为止。这样,一个复杂的问题也就迎刃而解了。 自顶向下逐层分解充分体现了分解和抽象的原则。随 着分解层数的增加,抽象级别也越来越低,即越接近 问题的解。自顶向下的过程是分解的过程,自底向上 的过程是抽象的过程。 功能建模的思想就是用抽象模型的概念,按照软 件内部数据传递、变换的关系,自顶向下逐层分解, 直到找到满足功能要求的所有可实现的软件为止[3]。 功能模型用数据流图来描述。对于稍微复杂一些的实 际问题,在数据流图上常常出现十几个甚至几十个加 工,这样的数据流图看起来不直观,不易理解,分层 的数据流图能很好地解决这一问题。按照系统的层次 结构进行逐步分解,并以分层的数据流图反映这种结 构关系,能清楚地表达和容易理解整个系统。图1为 数据流图的分层示意图。对顶层数据流图中所表示的 系统进行功能分解得到一层数据流图,对一层数据流 图中的功能进一步分解得到二层数

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档