软件工程
文章平均质量分 72
邢海芳
比夏天还温暖,开开心心,用心,加油!
展开
-
驱动模块和桩模块的概念和区别
桩模块和驱动模块(以C语言为例): 很多人对桩模块和驱动模块的概念会搞不清楚,那么下面来介绍这两个概念: 模块结构实例图: 假设现在项目组把任务分给了7个人,每个人负责实现一个模块。你负责的是B模块,你很优秀,第一个完成了编码工作,现在需要开展单元测试工作,转载 2011-09-25 11:03:51 · 36173 阅读 · 12 评论 -
用例图(复习)
因为UMl视频是那样看的,更没有认真总结,到后面的一系列画图,各种困难,当时欠的全都还给我了,亡羊补牢吧。 用例图。要素:角色、用例、联系,边界(rose中木有)。 参与者和角色。先抛开用例图说参与者,我们拿小说来说吧,参与者不仅是小说故事中的主人公,也是配角,丑角,也包括写书人,也包括看小说的人。是有了人物才有了故事,而不是有了故事才有人物,人物是故事的驱动,小说中的每个原创 2012-02-25 20:22:15 · 1722 阅读 · 6 评论 -
工厂模式
为了重构机房收费系统,快速的回顾了UML建模和大话设计模式。 我认为三者的共同点都是解耦,为了让我们的系统变得容易维护、可扩展、可复用、灵活性好。不同点是抽象层次不同。 简单工厂模式是我们最初从面向对象到面向过程的转变,我们开始总是把所有的逻辑代码都写到客户端,到客户端与逻辑业务的分离。工厂方法模式是我们在简单工厂模式的基础上再次进行抽象,为了扩展的方便和修改封闭,把一些对原创 2012-05-28 14:51:19 · 3532 阅读 · 10 评论 -
重新认识oo'World
PO(procedure Oriented面向过程)的世界更像以前落后的中国。随着各种弊端问题的出现,同样是二十六个字母的世界,而OO的世界是全新的世界,并随着“改革开放”以前PO的世界的DFD、矩阵图等也逐步被UML建模所替代,再加上OO本身具有的特点和设计模式相结合,会更趋于完美。面向过程来说,世界不是孤立的。它们是联系在一起的,互相影响,互相作用,大系统与小系统密不可分,任何系统原创 2012-05-28 10:02:27 · 675 阅读 · 9 评论 -
工厂模式的应用实例
就拿机房收费系统来说吧。NUMBER ONE单纯的用抽象工厂来实现。这样的好处,是从整个系统的全局出发,而不单单从原始的D看待,古人云:父母之爱子则为之计深远。这使得系统更容易扩展了。因为这里面除了SQLHelper都使用了实体包,实体包的线就省略了。NUMBER TWO 用"简单工厂"去改造的抽象工厂。这里说的简单工厂只是因为它没有工厂接口。而事实上因为我们的机房收费原创 2012-06-05 10:55:28 · 11234 阅读 · 19 评论 -
单例模式--自己是自己的掌控者
单例模式理解 (2012/7/18)单例模式(singleton),保证一个类仅有一个实例,并提供一个访问他的全局的访问点。在看单例模式中,大话中首先举出了一个例子,通过按钮触发的事件来判断是否为null,程杰老师提出from1只是启动“工具箱”,而“工具箱”窗体是否被实例化过,应该是由工具箱自己决定的。看到这里让我想到了一个很经典的故事。有一位禅师很喜欢养兰花原创 2012-07-18 20:34:24 · 1337 阅读 · 8 评论 -
关于文档编写
写文档的困惑写文档不像写代码,它没有明确的好与坏,更没有明显的正确与不正确。也正因为此,对于写惯了代码的程序员来说,写文档是无比痛苦的,完全找不着北。写短了,人家说没写清楚,太不详细;写得长了,人家说太琐碎,那么长,哪有精力看。领导说,“这个问题简单,两三页随便描述一下就行了。”你若真是只写个两三页,百分之百挨批。又要言简意赅,又要表述详尽。这比写代码要费劲多了。转载 2012-08-07 21:08:32 · 966 阅读 · 7 评论 -
Enterprise Architect使用
EA是一个很好的CASE工具, 结合软件工程, 让程序员的工作变得高效. EA(Enterprise Architect "企业建筑师") ,主要特性: 1 UML设计和构建; 2 使用案例,逻辑,动态和物理模型; 3 定制进程模型的扩展或其他; 4 高品质的MS Word 兼容文档; 5 应用直观方便;原创 2012-08-14 16:22:44 · 8046 阅读 · 3 评论 -
合作开发总结
合作开发从开始的兴奋到后来的迷茫, 到云层渐渐的散去, 到万里晴空, 到系统最后的竣工. 切切实实的感受到了软件工程这一的过程些许的韵味. 人员分配方式.因为小组人数是三人 , 所以此次合作开发是人员的分配是面向包的 , 而不是面向层的, 是一个人负责几层. 此次开发依照原则.做了这么多遍的机房收费系统了, 不能再是开始那样原创 2012-08-14 20:14:29 · 2323 阅读 · 10 评论 -
CS与BS区别
简介:CS即Client/Server(客户机/服务器)结构,C/S结构在技术上很成熟,它的主要特点是交互性强、具有安全的存取模式、网络通信量低、响应速度快、利于处理大量数据。但是该结构的程序是针对性开发,变更不够灵活,维护和管理的难度较大。通常只局限于小型局域网,不利于扩展。并且,由于该结构的每台客户机都需要安装相应的客户端程序,分布功能弱且兼容性差,不能实现快速部署安装和配置,因此缺少通用性,转载 2012-09-04 18:25:02 · 36842 阅读 · 11 评论 -
系统开发?
除了那熟悉的的机房收费系统外,第一次和未知的系统见面,利用电脑代替电话拨号处理信息的系统。做了有半个多月的时间,疑问甚多,系统该怎么开发?下面是此次开发的简短过程。需求分析: 文档中告诉我们系统分三个不同方面的需求: 个人使用,是不需要后台管理员的。比较的局限性,用于个人,家庭使用。 企业使用,企业中老板和员工使用,使用的场合用于任何一个企业原创 2012-12-03 10:50:36 · 832 阅读 · 10 评论 -
理解UML中类的四种关系
关联关系(association):关联在图中表示为普通实线。是认识的关系,没有生命期的依赖。一般表示一种引用。就像两个陌生人一样互相认识了,成为朋友,而这两个人是互相独立的生命个体,这就是关联关系(双向关联)。而如果A认识B,而B不认识A,则是单向关联。还有一个自身关联,姑且认为是自我认知吧。 聚合(aggregation): 聚合就是“has-a”。实线空心菱形。原创 2011-10-22 16:25:16 · 5311 阅读 · 4 评论 -
软工系列之----概要设计
上一章讲的是需求分析。下面是需求模型和设计模型的关系图。 概要设计的目标: 通过这个阶段的工作将划分出组成系统的物理元素-程序、文档、数据库、人工过程和文档。但每个物理元素是黑盒子,其具体同以后的详细设计。设计软件的结构,确定系统每个程序是由哪些模块构成,以及模块之间的相互关系。 概要设计任务:1、 指定规范:应为软件开发组指定在设计时应该共同总受的标原创 2011-10-02 17:41:01 · 2325 阅读 · 4 评论 -
UML类图实例
首先是复习一下UML中九种图的理解:http://xhf123456789plain.blog.163.com/blog/static/172880482201192222144421/画用例图:http://xhf123456789plain.blog.163.com/blog/static/172880482201192221826110/下面是类图的实例(好像大话设计中有):转载 2011-10-22 14:29:02 · 97571 阅读 · 21 评论 -
软工系列之---软件测试
我们为什么要进行软件测试呢?软件测试的目的和原则。1、测试是程序的执行过程,目的在于发现错误;2、一个好的测试用例在于能发现至今未发现的错误;3、一个成功的测试是发现了至今未发现的错误的测试 软件测试的目标是想以人力最少的时间和人力,系统地找出软件中潜在的原创 2011-10-11 15:38:48 · 983 阅读 · 1 评论 -
软工系列之--数据流图(DFD图)
软件需求分析的基础:机构化分析方法。结构化分析方法适用于数据处理类型软件的需求分析。它提供的主要建模工具包括 数据流图、数据字典、机构化英语、判定表、和判定树等。 在这里主要说明DFD图的使用和画法。 数据流图(DFD--Data Flow Diagra原创 2011-10-01 19:52:38 · 33769 阅读 · 4 评论 -
软工系列之---初识软工(概貌)
初识软工: 在本节中又讲了渐增模型和演化模型。演化模型是做两次开发,第一次只是实验开发,其目标只是在于探索可行性,弄清软件的需求i。渐增模型 在每步中加上确认,在产品设计的时候,要进过几步,每一步都要多次的检验。也就是所说的增量模型。更多的模型之间的介原创 2011-09-08 07:47:56 · 1022 阅读 · 6 评论 -
软工系列之----可行性研究分析
第一章 可行性研究分析 可行性研究分析 可行性研究分析研究的目的是用最小的代价在尽可能短的时间内确定软件项目是否能够开发,是否值得开发。可行性研究实质上是进行一次简化、压缩了的需求分析过程和设计过程,要比较高层次上较抽象的方式进行原创 2011-09-18 17:01:41 · 1288 阅读 · 0 评论 -
软工系列之---项目管理
软件项目的特点 软件产品的高度抽象性:软件产品与其他的任何产业的作品不同,它把思想、概念、算法、流程、组织、效率、优化等融合在一起。要开发出这样的产品,在许多情况下,用户一开始不给出明确的想法,提不出确切的要求。也说不出究竟要什么。开发过程中的易变性:在开发过程中原创 2011-10-01 19:49:49 · 1175 阅读 · 1 评论 -
软工系列之---需求分析
第三章 需求分析 需求的定义、分类。1)用户解决问题或达到目标所需的条件或能力。2)系统或是系统部件要满足的合同、标准、规范或其他正规文档所需要具有的条件或是能力。3)一种反映上面所描述的条件或是能力的文档说明。 需求就是以一种清楚简洁,一原创 2011-10-01 19:51:59 · 1573 阅读 · 1 评论 -
软工系列之---详细设计
过程设计。 过程设计也叫做详细设计或程序设计,它不同于编码或是编程。在过程设计阶段,要决定各个模块的实现算法,并精确表达这些算法。首先是分析项目的具体要求,以及算法的设计和评价。然后给出适当的算法描述,为此应提供过程设计的表达工具。人机界面交互。原创 2011-10-03 20:19:13 · 2120 阅读 · 5 评论 -
UML9种图
清晰大图,请您耐心等待... 我只是用图总结的,总会有局限性,看了崔成龙写的博客挺详细的。所以补充网址:http://blog.csdn.net/xiaoxian8023/article/details/6840986总结是总结,接下来要实战了,打算和图抗战一周原创 2011-10-15 21:03:21 · 1345 阅读 · 2 评论 -
机房收费系统---工程过程的图
在可行性分析说明书中要画的处理流程图。一般用户的处理流程图。 操作员的一般流程图,不仅可以执行一般用户的操作,而且其最主要的操作如下图: 管理员的主要操作: 需求分析中的系统流程图。 机房收费系统的 系统流程图。(只原创 2011-10-18 11:18:09 · 3483 阅读 · 6 评论 -
UML概要总结
点击看清晰图,请耐心等待。。。看了倩兰总结的挺好的:http://hi.csdn.net/attachment/201110/21/0_13191824362r51.gif原创 2011-10-14 11:07:37 · 897 阅读 · 6 评论 -
EA & 数据库设计
EA是我们做需求分析,数据库设计,概要设计,详细设计,编码的好工具. 在这里主要说说数据库设计这块: 数据库概要设计阶段: E-R模型(在这里不详细讲述) 数据库物理设计和实施: 建库 、建表、 视图、 存储过程. 以建表为例, 操作: 我们选择File菜单下的原创 2012-11-22 11:10:39 · 8122 阅读 · 16 评论