相关推荐
-
【软件工程】之软件设计
软件设计思考题一、软件设计的目标和主要任务1、目标2、主要任务3、软件设计过程二、模块化设计思想1、定义2、内容1)分解2)抽象3)信息隐藏4)逐步求精5)模块独立性三、模块独立性1、内聚性2、耦合性四、内聚和耦合1、内聚2、耦合五、高内聚低耦合 一、软件设计的目标和主要任务 1、目标 软件设计的目标是对将要实现的软件系统的体系结构、系统的数据、系统模块之间的接口、以及所采用的算法给出详尽的描述。 2、主要任务 ·数据设计将分析模型转化成为设计类的实现以及软件实现所要求的数据结构。 ·体系结构设计定义了
-
【历史上的今天】2 月 10 日:QQ 诞生;IBM 电脑击败人类象棋冠军;谷歌光纤发布
这是你用 QQ 的第几年?
-
一个著名分歧的令人失望的解决方案
两位软件工程巨头不同意,其中一位最终同意了这一论点。 但是,我发现该分辨率不令人满意。 这是关于大卫·帕纳斯(David Parnas)和弗雷德·布鲁克斯(Fred Brooks)的; 没有他们的贡献,软件将不会像今天这样。 他们的分歧涉及塑造现代编程技术和开源的思想。 David Parnas撰写了一篇关于信息隐藏的论文,这是封装概念的前身。 他比较了软件系统的两种模块化。 在其中一项中,设...
-
微服务架构10个最重要的设计模式
微服务架构,每个微服务的数据库,事件源,CQRS,Saga,BFF,API网关,扼杀器,断路器,外部化配置,消费者驱动的合同测试 > Image by msandersmusic from Pixabay 自从软件开发的早期(1960年代)以来,解决大型软件系统中的复杂性一直是一项艰巨的任务。多年来,软件工程师和架构师为解决软件系统的复杂性进行了许多尝试:David Parnas的模块化和信息隐藏(1972),Edsger W. Dijkstra的关注分离(1974),面向服务的体系结构(19
-
什么是Parnas原则
《编程导论(Java)·3.1.3 接口与实现分离》 Parnas原则被称为接口与实现的分离(separation of interfaceand implementation)。
-
软件工程 对话 Parnas 2010-10-11 明故宫校区12号楼一楼报告厅
Parnas 讲座笔记整理最重要的两点(1)Good design a比如Product Line ,Family.(如果你不知道新事物和旧事物哪里发生了变化,这很遗憾,这意味着你几乎要从头再来). b 有了good design,我们就不会从头阅读代码.Document will tell you how to do.(2)Good document a 将数学定义引入到需求分析的描述中来,简短清晰无歧义。最好不要用汉语,因为汉语是一个很容
-
软件方向就业的问题
首先说明,我的回答是基于你是软件学院的学生这个前提来说的。 你的三个方向里,如果要做到一定层次,其实嵌入式是最简单的,网络是最难的,WEB居中。 不过问题在于,如果在一个基本面上讨论,则WEB是最简单的,网络居中,嵌入式最难。 区别在哪里呢?在于你能学到什么程度。说句武断的话,站在一个比较高的层次上来说,嵌入式系统如果去和网络通信、超大型系统编程相比,简直就是些小儿科的东西。但是也正如
-
1.什么是软件工程?它目标和内容是什么?2.软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发?
顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。开发的软件易于移植;开发的软件可靠性高。软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。其中喷泉模型、统一软件过程适用于面向对象的软件开发。软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。哪些适用于面向对象的软件开发?软件工程内容:包括开发技术和开发管理两个方面。......
-
软件工程专业毕业生的目标
偶然从网上发现软件开发先驱之一David Parnas制定的软件工程专业毕业生的目标。读之,不禁汗颜。我的一位美国同事也说这些目标确实很高,不知有多少毕业生能达到。不管怎样,这或许是我们软件开发人员所要追求的目标?翻译如下: 软件工程专业毕业生的目标 1总体1.1 道德行为和社会责任1. 毕业生要对他们的成绩有着习惯性的诚实。2. 毕业生要很快地把荣
-
Parnas 的经典论文 – “系统模块分解的标准” 简介
Roger.Yi (roger2yi@gmail.com) Parnas被视为软件设计中关于信息隐藏和变化封装等概念的首要提出者,源于他70年代的一系列经典论文,其中71年的“系统模块分解的标准”最广为人知。 论文中Parnas用一个小的案例,通过两种不同的系统分解方法来进行对比。 前一种方法是当前所常常被使用的,按照流程图式的功能分解的办法,通常会把一个系统划分为,输入模
-
我的软件工程课目标
这学期我们班开了软件工程这门课,任课的李巍老师为我们带了全新的上课模式,很是新颖,这就是其中的一项,坚持写博客,我就得这是一个很好的习惯,能够让我们及时总结,不断的学习。也希望自己能坚持下来,把写博客培养成一个良好的习惯。 在我进入大学的时候,我选择了软件工程的这门课,在那个时候,我印象当中的软件就是一群人对着电脑,疯狂的敲着键盘,不久,一个功能强大,界面酷炫的软件 就诞...
-
中间件
“需求确认”意味着什么 在“需求分析报告”上签字确认,通常被认为是客户同意需求分析的标志行为,然而实际操作中,客户往往把“签字”看作是毫无意义的事情。“他们要我在需求文档的最后一行下面签名,于是我就签了,否则这些开发人员不开始编码。” 这种态度将带来麻烦,譬如客户想更改需求或对产品不满时就会说:“不错,我是在需求分析报告上签了字,但我并没有时间去读完所有的内容,我是相信你们的,是你...
-
四十年软件工程故事
四十年软件工程故事 时间:2009-09-02 2008年5月14-16日,在德国迷人的小镇Garmisch,举办了软件工程四十年纪念会议,Peter Naur、Brian Randell、M. Douglas McIlroy、Albert Endres、Luigi Dadda等40年前软件工程会议的关键人物重聚旧地。 4
-
软件工程专业毕业生的就业前景分析
据有关数据显示,目前,我国对软件人才的需求已达20万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。2005年,我国软件人才的缺口已达42.5万,其中尤以JAVA人才最为缺乏。 根据IDC的统计数字,在所有软件开发类人才的需求中,对JAVA工程师的需求达到全部需求量的60%~70%。同时,JAVA工程师的薪水相对较高。通常来说,具有3~5年开发经
-
信息隐藏(Information Hiding)原则
信息隐藏(Information Hiding)原则黄国强 2006-10-25 信息隐藏是结构化设计与面向对象设计的基础。在结构化中函数的概念和面向对象的封装思想都来源于信息隐藏。软件业对这个原则的认同也是最近十年的事情。 David Parnas在1972
-
Consul + fabio 实现自动服务发现、负载均衡
Consul hashicorp团队开发 就是大名鼎鼎开发 vagrant 的团队。Consul 是一个提供服务发现、健康检测、K/V存储支持分布式高可用多数据中心的服务软件。 比较类似ZooKeeper但又比它多了一些功能。 具体可以参考 Consul和ZooKeeper的区别。 fabio fabio 是 ebay 团队用 golang 开发的一个快...
-
软件工程的基本原则(略译)
Fundamentals of Software Engineering软件工程的基本原则摘自《The Art of Software Architecture: Design Methods and Techniques 》http://as.wiley.com/WileyCDA/WileyTitle/productCd-0471228869.html刘建文略译(http://blog.csdn
6 楼 freezingsky 2014-06-01 13:24
5 楼 高军威 2014-05-30 19:50
4 楼 zhongw 2014-05-30 12:22
1.问题质量明显下降,基本可以说明iteye正在边缘化,希望可以回到robin时代的javaeye
2.官方无管理,很多乱七八糟的问题都可以提,这是技术类网站啊,难道CSDN要把iteye整合成CSDN?还不如直接关了得了。
3.我喜欢javaeye.
3 楼 zoozooll 2014-05-30 12:22
你看看,即使是一人拿一本不同的书,还是有很多剩余的书
2 楼 zoozooll 2014-05-30 12:21
1 楼 white_crucifix 2014-05-30 02:51