《软件设计》PPT课件

《软件设计》PPT课件

ID:39724465

大小:225.84 KB

页数:31页

时间:2019-07-10

《软件设计》PPT课件_第1页
《软件设计》PPT课件_第2页
《软件设计》PPT课件_第3页
《软件设计》PPT课件_第4页
《软件设计》PPT课件_第5页
资源描述:

《《软件设计》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件设计——帮助你从程序员上升为设计师——搞清楚设计什么以及如何设计林锐博士http://www.chinaspis.comlinrui@chinaspis.com上海漫索计算机科技有限公司目录1.软件设计基本概念2.体系结构设计3.用户界面设计4.数据库设计5.模块设计6.数据结构与算法设计7.小结参考书:《软件工程与项目管理解析》,林锐著,电子工业出版社,20031.软件设计基本概念1.1基本概念设计师与程序员的地位。软件设计的技术难度要比编程、测试的高。所以程序员、测试员称为“员”,而设计师尊称为“师”。设计的好坏

2、在根本上决定了软件的优劣。我们可以断言“差的系统设计必定产生差的软件系统”,但是不能保证“好的系统设计必定产生好的软件系统”。因为在设计之前有需求开发工作,在设计之后还有编程、测试和维护工作,无论哪个环节出了差错,都会把好事搞砸了。据说上帝把所有的女士都设计成天使,可是天使们在下凡的时候,有些人双脚先着地,有些人脸先着地。上帝的这一疏忽让很多女士伤透了心。所以我们在开发软件时,一定要吸取这个教训。软件设计之源是软件需求,包括“功能性需求”与“非功能性需求”。设计的目标就是使所设计的系统能够被开发方顺利地实现,并且恰如其分

3、地满足用户的需求,使开发方和用户的利益极大化。开发人员不万不能偏离需求,为了追求技术的先进性而开展系统设计工作。依据“分而治之”的思想,我们把系统设计过程划分为两个阶段:高层设计阶段和详细设计阶段。高层设计阶段的重点是系统结构设计。详细设计阶段的重点是用户界面设计、数据库设计、模块设计、数据结构与算法设计等。著名3D游戏软件Quake设计师MichaelAbrash的总结:“所有真正杰出的设计一旦被设计好,看起来都是那么的简单和显而易见。但是在获得杰出设计的过程中,需要付出令人难以置信的努力。”1.软件设计基本概念系统设

4、计过程示意图1.软件设计基本概念1.2软件系统与人体的比喻体系结构如同人的骨架。如果某个家伙的骨架是猴子,那么无论怎样喂养和美容,这家伙始终都是猴子,不会成为人。人的身材大小取决于骨架大小,天生小个子的人基本上不可能成为威猛的大汉,后天再努力(例如锻炼和吃喝)也白搭。由此可见,体系结构乃是系统设计的重中之重。用户界面如同人的外表,最容易让人一见钟情或一见恶心。象人类追求心灵美和外表美那样,软件系统也追求(内在的)功能强大和(外表的)界面友好。我们在设计软件时不要沉迷于技术,而要多多思考什么样的界面才能让用户更加喜欢。数据

5、库是存储和处理数据用的。人体的数据库是大脑,知识相当于数据,全存在大脑里。如果脑子里存储的知识很多,那么这个人就显得博学。如果脑子处理知识的速度很高,那么这个人就显得聪明。数据库设计的主要挑战是“高速处理大容量的数据”。模块如同人的器官。每个器官都具有特定的功能,器官们依附在骨架上。模块是软件系统的部件,它们安插在体系结构上(否则运行起来掉光光了)。在设计模块时要重视功能独立性,还要追求“高内聚、低耦合”。数据结构与算法如同人的神经和肌肉,它分布在全身,让器官具有生命并能发挥功能。人之所以能够全身运动,那是无数的神经和肌

6、肉在起作用。如果局部的神经和肌肉失效了,那么会导致对应的器官残废。如果全局的神经和肌肉失效了,那么人就瘫痪了。同理,数据结构与算法也有全局和局部之分,都要慎重设计。1.软件设计基本概念1.3漫谈设计模式20世纪90年代,面向对象(Object-Oriented)方法与技术在国内软件业界十分火爆,人们热衷于谈论“对象”并引以为荣。十多年来,人们发表、出版了无数的文章和书籍。现在,该写的似乎都写完了,没有新花样玩了,真是一片无聊。设计模式(DesignPattern)及时问世,面向对象爱好者们终于有了新的追求。1995年,E

7、richGamma,RichardHelm,RalphJohnson,JohnVlissides(戏称“四人帮”)出版了DesignPatterns:ElementsofReusableObject-OrientedSoftware,该书的中译本已于2000年出版.“四人帮”这本书的主要贡献是:确立了设计模式这个术语,创导了一种新的面向对象设计思潮。该书出版后,全世界参与设计模式研究的人数呈爆炸性地增长。该书的负面效应是:这本书深奥无比,读者被分成两类,即“看得懂设计模式的”和“看不懂设计模式的”,后者居多。很多人刚入门

8、时就被吓住了,知难而退。何为“模式”和“设计模式”?模式描述了在我们周围不断重复发生的问题,以及该问题的解决方案的核心,这样你就能一次又一次地使用该解决方案而不必重复劳动。模式就是一种公式化的表现,究竟公式化是不是好事?(蔡学庸精辟的解释)尽管软件技术发展非常快,但是仍然有非常多的设计模式可以让我们套用,包括体系结构

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。