自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (3)
  • 收藏
  • 关注

原创 开发管理---软件需求管理

    在软件开发的整个过程中,随着客观条件的变化和客户对软件或业务理解的加深,会产生很多新的软件需求,项目经理需要经常面对需求变更。需求管理的目的就是控制和维持事先约定,保证项目开发过程的一致性,使用户能够得到他们最终想要得到的软件产品。下面的内容主要涉及需求管理的两个方面:需求变更、需求跟踪。 1 需求变更   需求变更是指在软件开发过程中,用户确定软件需求之后,由于各种客观和主观...

2018-09-20 07:42:44 659

原创 开发管理---配置管理与文档管理

    随着软件规模和复杂性的增大,许多大型开发项目往往都会延迟和超出预算,软件开发不得不直面越来越多的问题,表现为开发的环境日益复杂,代码共享日益困难,需跨越的平台增多;软件的重用性需要提高;软件的维护越来越困难。    为了解决这些问题,作为控制软件系统一系列变化的学科,软件配置管理(Software Configuration Management,SCM)应运而生。其主要作用是通过结构...

2018-09-20 07:42:36 2299

原创 开发管理---项目的范围、时间与成本

      美国国防部曾于 20 世纪 70 年代中期专门针对软件项目失败的原因做了调查。调查结果显示70%的失败软件项目都是因为管理不善引起的,而并不是事先以为的技术实力不够。到了 20 世纪90 年代,据对美国软件工程实施现状的调查显示,大约只有 10%的项目,尤其是商用软件,能够按预先计划的费用和进度交付。因此,业界认为影响软件研发项目全局的因素是管理水平,而技术只影响局部,这就有必要从项目...

2018-09-20 07:42:12 7499

原创 嵌入式系统开发设计---嵌入式系统开发设计

     嵌入式系统设计的主要任务是定义系统的功能、决定系统的架构,并将功能映射到系统实现架构上。这里,系统架构既包括软件系统架构也包括硬件系统架构。一种架构可以映射到各种不同的物理实现,每种实现表示不同的取舍,同时还要满足某些设计指标,并使其他的设计指标也同时达到最佳化。    嵌入式系统的设计方法跟一般的硬件设计、软件开发的方法不同,是采用硬件和软件协同设计的方法,开发过程不仅涉及软件领域...

2018-09-20 07:42:01 46917

原创 嵌入式系统设计---实时系统与嵌入式操作系统

    简单地说,实时系统可以看成对外部事件能够及时响应的系统。这种系统最重要的特征是时间性,也就是实时性,实时系统的正确性不仅依赖于系统计算的逻辑结果,还依赖于产生这些结果的时间。    目前,大多数实时系统都是嵌入式的,并且实际运行中的嵌入式系统也都有实时性的需求,因此,在诸多类型的嵌入式操作系统中,实时嵌入式操作系统是最具代表性的一类,它融合了几乎所有类型的嵌入式操作系统的特点,所以本节...

2018-09-20 07:41:51 5618

原创 嵌入式系统设计---嵌入式数据库管理系统

    随着嵌入式技术的发展,嵌入式数据库逐步走向应用。本质上,嵌入式数据库是由通用数据库发展而来的,在各种嵌入式设备上或移动设备上运行,在嵌入式系统中更显示出其优越性,由于受到嵌入式系统本身应用环境的制约,嵌入式数据库有着与通用数据库不同的特点。    通常,嵌入式数据库管理系统就是在嵌入式设备上使用的数据库管理系统。由于用到嵌入式数据库管理系统的多是移动信息设备,诸如掌上电脑、PDA、车载...

2018-09-20 07:41:29 3076

原创 嵌入式系统设计---嵌入式网络系统

 嵌入式网络系统    嵌入式网络是用于连接各种嵌入式系统,使之可以互相传递信息、共享资源的网络系统。嵌入式系统在不同的场合采用不同的连接技术,如在家庭居室采用家庭信息网,在工业自动化领域采用现场总线,在移动信息设备等嵌入式系统则采用移动通信网,此外,还有一些专用连接技术用于连接嵌入式系统。 1. 现场总线网     现场总线(FieldBus)是 20 世纪 80 年代中期继模拟...

2018-09-20 07:41:20 2226

原创 嵌入式系统设计---嵌入式开发平台与调试环境

1. 嵌入式系统软件开发平台    嵌入式系统的软件开发方法采用的不是通用的开发方法,而是交叉式开发方法。本小节主要介绍嵌入式系统软件开发的交叉编译环境的基本概念和特点,以及软件调试常用的几种方法。    1.交叉平台开发环境    嵌入式系统的软件开发采用交叉平台开发方法(Cross Platform Development,CPD),即软件在一个通用的平台上开发,而在另一个嵌入式目...

2018-09-19 21:17:27 1628

原创 嵌入式系统设计---嵌入式系统的组成

 嵌入式系统的组成    嵌入式系统一般都由软件和硬件两个部分组成,其中嵌入式处理器、存储器和外部设备构成整个系统的硬件基础。嵌入式系统的软件部分可以分为 3 个层次:系统软件、应用支撑软件和应用软件。其中,系统软件和支撑软件是基础,应用软件则是最能体现整个嵌入式系统的特点和功能的部分。 1 硬件架构    图 12-1 是一个嵌入式系统的基本硬件架构。微处理器是整个嵌入式系统的核...

2018-09-19 21:12:13 4354

原创 嵌入式系统设计---嵌入式系统概论

    随着计算机技术、微电子技术、通信技术以及集成电路技术的发展,嵌入式技术逐渐发展和成熟起来。嵌入式系统的应用日益广泛,并 在数量上远远超越了通用计算机系统,成为了计算机技术和计算机应用领域的一个重要组成部分。    本章主要讨论嵌入式系统的基本知识与嵌入式系统的开发设计两部分内容,主要包括嵌入式系统的概念、软/硬件组成与基本架构、嵌入式操作系统和嵌入式数据库系统、网络系统以及窗口系统等核...

2018-09-19 21:07:38 831

原创 测试评审方法---面向对象的测试

    传统的软件测试策略是从“小型测试”开始,逐步走向“大型测试”。即从单元测试开始,然后进入集成测试,最后是系统测试。    面向对象程序的结构不再是传统的功能模块结构,作为一个整体,原有集成测试所要求的逐步地将开发的模块搭建在一起进行测试的方法已成为不可能。而且,面向对象软件抛弃了传统的开发模式,对每个开发阶段都有不同以往的要求和结果,已经不可能用功能细化的观点来检测面向对象分析和设计的...

2018-09-19 21:06:19 2813 1

原创 测试评审方法---测试自动化

测试自动化    软件测试的工作量很大,但测试却极有可能应用计算机进行相当一部分自动化的工作,原因是测试的许多操作是重复性的、非智力创造性的、需要细致注意力的工作,而计算机就最适合于代替人类去完成这些任务。测试自动化会对整个开发工作的质量、成本和周期带来非常明显的效果。    一些适于考虑进行自动化的测试工作为:    (1)测试用例的生成(包括测试输入、标准输出、测试操作指令等)。...

2018-09-19 21:04:02 594

原创 测试评审方法---验证与确认

验证与确认    验证与确认都是确定软件产品是否满足其预期要求和条件的过程。验证可适用于分析、设计、编码、测试和评审等众多的过程,而确认通常用于验收过程。    1.验证    软件项目的验证一般应包括合同验证、过程验证、需求验证、设计验证、编码验证、集成验证和文档验证。    (1)合同验证。应根据下列准则验证合同: 供方具有满足需求的能力。 需求是一致的并覆盖了...

2018-09-19 21:02:30 2480

原创 测试评审方法---评审方法

 评审方法    根据 IEEE 1028 的定义,评审是对软件元素或者项目状态的一种评估手段,以确定其是否与计划的结果保持一致,并使其得到改进。    狭义的“软件评审”通常指软件文档和源程序的评审。广义的“软件评审”还包括与软件测试相结合的评审及管理评审。软件评审包括软件需求评审、概要设计评审、详细设计评审、软件验证和确认评审、功能检查、物理检查、综合检查和管理评审。    (1)...

2018-09-19 21:01:31 5186

原创 测试评审方法---测试方法

    软件测试与评审是软件质量保证的主要手段之一,也是在将软件交付给客户之前所必须完成的步骤。目前,软件的正确性证明尚未得到根本的解决,软件测试与评审仍是发现软件错误(缺陷)的主要手段。    本章重点要求读者掌握测试方法、评审方法、验证与确认、测试自动化、面向对象的测试等5 个方面的知识。    1 测试方法     在介绍软件测试之前,首先应该明确“错误”(error)和“缺陷”...

2018-09-19 20:59:11 4951

原创 设计模式---设计模式总结

   7 种设计模式:Abstract Factory、Singleton、Decorator、Facade/Session Facade、Mediator、Observer 和 Intercepting Filter。目前总结出的设计模式远远不止这些,除了 23 种 GoF 模式外,很多学者都在这方面进行了有益的尝试,总结出了大量良好设计的范例。    学习设计模式最重要的是理解,而不是生搬...

2018-09-19 16:58:01 140

原创 设计模式---设计模式及实现

1 Abstract Factory 模式     1.模式名称     Abstract Factory,也经常称之为抽象工厂模式。    2.意图解决的问题    在程序中创建一个对象似乎是不能再简单的事情,其实不然。在大型系统开发中存在以下问题:    (1)object new ClassName 是最常见的创建对象方法,但这种方法造成类名的硬编码,需要根据不同的运行环...

2018-09-19 16:55:55 1028

原创 设计模式---设计模式概述

     面向对象技术为软件技术带来新的发展。人们运用面向对象的思想分析系统、为系统建模并设计系统,最后使用面向对象的程序语言来实现系统。但是面向对象的设计并不是一件很简单的事情,尤其是要设计出架构良好的软件系统更不容易。为了提高系统的复用性,需要进行一些“额外”的设计(这里的额外并不是无用的,而是指业务领域之外),定义类的接口、规划类的继承结构、建立类与类之间的关系。毋庸置疑,良好的设计可以让系...

2018-09-18 07:43:07 418

原创 软件架构设计---软件架构视图

 软件架构视图   从软件架构本身的特点出发讨论了架构建模及与特定应用领域密切相关的架构风格。本节将从对架构编档的角度对软件架构视图及其风格进行讨论。1 软件视图的分类     现代软件系统非常复杂,通常在某个具体的时间内只需将注意力集中在某几个结构上(就像看病时,医生只是将注意力集中在某方面的人体结构上,骨科医生与心血管科医生关心不同的结构),结构是元素本身的集合,而视图则是捕获和表...

2018-09-18 07:38:21 15871 2

原创 软件架构设计---产品线及系统演化

产品线及系统演化    软件企业追求长远的发展,通常采用产品线模型及系统演化策略,它实质上是用架构技术构建产品线,并在此基础上借助复用技术持续演化,不断地推出新产品,满足市场追求产品升级换代的需求。1 复用与产品线    软件产品线是指一组软件密集型系统,它们共享一个公共的、可管理的特性集,满足某个特定市场或任务的具体需要,是以规定的方式用公共的核心资产集成开发出来的。即围绕核心资产库...

2018-09-18 07:33:47 3591

原创 软件架构设计---构件及其复用

    软件企业为了提高开发效率,越来越注重软件元素的复用(也称重用),因此,架构设计师在进行架构设计时,必须关注复用,例如,考虑丰富企业构件和充分使用已有的构件。本节从构件角度研究如何使用软件复用技术,下一节重点讨论基于产品线的软件复用。    与复用技术密切相关的概念是构件(component,组件),业界对构件还没有公认的定义,如下为几种常见的定义。    定义 1:构件是指软件系统...

2018-09-18 07:31:40 5355

原创 软件架构设计---软件架构评估

软件架构评估    软件架构评估是在对架构分析、评估的基础上,对架构策略的选取进行决策。它也可以灵活地运用于对软件架构进行评审等工作中。1 软件架构评估的方法    业界已开发出多种软件架构评估的方法,按基于的技术手段来看,可以分为三类:基于调查问卷或检查表的方式、基于场景的方式和基于度量的方式。    (1)基于调查问卷或检查表的方式:该方式的关键是要设计好问卷或检查表,它充分利...

2018-09-18 07:29:30 6379

原创 软件架构设计---软件架构文档化

 软件架构文档化      记录软件架构的活动就是架构编档过程,也就是架构的文档化。它包含两个方面:一是过程,编档过程能促使架构设计师进一步思考,使得架构更加完善;二是结果,描述架构的文档将作为架构开发的成果,供项目关系人使用。    1.架构文档的使用者    架构文档的使用者是架构的项目关系人。编写技术文档(尤其是软件架构文档)最基本的原则之一是要从读者的角度来编写,易于编写但很难...

2018-09-18 07:14:38 20355

原创 软件架构设计---架构设计

    实现软件质量属性的战术,这些战术可以看做设计的基本“构建块”,通过这些构建块,就可以精心设计系统的软件架构了。    架构模式也称为架构风格,它是适当地选取战术的结果,这些固定的结果(模式)在高层抽象层次上具有普遍实用性和复用性。    通过架构模式,架构设计师可以借鉴和复用他人的经验,看看类似的问题别人是如何解决的。但不要把模式看成是一个硬性的解决方法,它只是一种解决问题的思路。...

2018-09-17 21:46:29 5035

原创 软件架构设计---面向服务的架构

面向服务的架构     迄今为止,对于面向服务的架构(Service-Oriented Architecture,SOA)还没有一个公认的定义。许多组织从不同的角度和不同的侧面对 SOA 进行了描述,较为典型的有以下三个:    (1)W3C 的定义:SOA 是一种应用程序架构,在这种架构中,所有功能都定义为独立的服务,这些服务带有定义明确的可调用接口,能够以定义好的顺序调用这些服务来形成...

2018-09-17 21:42:42 9742 2

原创 软件架构设计---层次系统架构风格

1 二层及三层 C/S 架构风格    C/S 架构是基于资源不对等,且为实现共享而提出来的,是 20 世纪 90 年代成熟起来的技术,C/S 结构将应用一分为二,服务器(后台)负责数据管理,客户机(前台)完成与用户的交互任务。    C/S 软件架构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。但随着企业规模的日益扩大,软件的复杂程度不断提高,传统的二层 C/S 结...

2018-09-17 21:38:22 22653 4

原创 软件架构设计---软件架构风格

软件架构风格    软件架构设计的一个核心问题是能否使用重复的软件架构模式,即能否达到架构级别的软件重用。也就是说,能否在不同的软件系统中,使用同一架构。基于这个目的,学者们开始研究和实践软件架构的风格和类型问题。    软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式( idiomatic paradigm)。架构风格定义了一个系统家族,即一个架构定义一个词汇表和一组约束。词汇...

2018-09-17 21:33:52 16542 1

原创 软件架构设计---架构需求与软件质量属性

架构需求与软件质量属性    架构的基本需求主要是在满足功能属性的前提下,关注软件质量属性,架构设计则是为满足架构需求(质量属性)寻找适当的“战术”。    软件属性包括功能属性和质量属性,但是,软件架构(及软件架构设计师)重点关注的是质量属性。因为,在大量的可能结构中,可以使用不同的结构来实现同样的功能性,即功能性在很大程度上是独立于结构的,架构设计师面临着决策(对结构的选择),而功能性...

2018-09-17 21:26:46 13597

原创 软件架构设计---软件架构概述

像学写文章一样,在学会字、词、句之后,就应上升到段落,就应追求文章的“布局谋篇”,这就是架构。通俗地讲,软件架构设计就是软件系统的“布局谋篇”。 人们在软件工程实践中,逐步认识到了软件架构的重要性,从而开辟了一个崭新的研究领域。软件架构的研究内容主要涉及软件架构描述、软件架构设计、软件架构风格、软件架构评价和软件架构的形成方法等。 软件设计人员学习软件架构知识旨在站在...

2018-09-17 21:25:54 68478

原创 系统分析与设计方法---系统过渡计划

系统过渡计划      当新系统似乎开发完毕,要取代原来的系统时,系统过渡就是设计者不得不面对的问题。这个问题,不幸的是,比许多人想象得要复杂,和软件开发一样,存在着许多冲突和限制。例如,费用、客户关系、后勤保证和风险等。设计者需要考虑的问题也很多,其中比较重要的几个问题是: 如果同时运行两个系统,会给客户造成多大的开销; 如果直接运行新系统,客户面对的风险有多大; ...

2018-09-17 21:21:46 750

原创 系统分析与设计方法---系统运行环境的集成与设计

系统运行环境的集成与设计    在设计一个新的系统时,设计者必须考虑目标系统的运行环境问题,人们往往认为软件应该能够在任何环境中运行,常常看到这样的系统,硬件已经升级了多次,而软件还是原来的软件。软件的运行环境是指系统运行的设备、操作系统和网络配置。    本节给出软件运行的几个典型环境,设计者可以从这几种典型环境中选择适合自己的目标系统的环境,也可以将这些典型环境做一些组合,来满足自己设...

2018-09-17 21:19:43 2910

原创 系统分析与设计方法---简单分布式计算机应用系统的设计

简单分布式计算机应用系统的设计    网络极大地扩展了计算机的应用范围,同时,由于升级到更强的服务器的费用常常远远高于购买多台档次稍低的机器,更何况虽然计算机有了长足的发展,可是单台计算机的功能仍然十分有限,利用联网的计算机协同工作,共同完成复杂的工作成为相对成本较低的选择,而且可以完成单台计算机所无法完成的任务。分布式系统使得这一目标成为可能。另外,网络本质上并不可靠,特别是远程通信,分布式...

2018-09-17 21:18:05 501

原创 系统分析与设计方法---工作流设计

工作流设计    工作流技术的发展,经过多年的努力,取得了一定的成果。但在实际应用中,应用的企业还是较少,应用的范围窄,效果不理想。    流程的设计是对设计者更高的挑战,现实中对计算机所管理的流程需要灵活的定义、方便的路径修改、容易使用,可是这几个目标是矛盾的。更严重的是,如何分析现实中的流程本身就是个困难的问题,更不用谈如何来设计实现了。流程设计的主要困难实际上也就是软件的主要困难:现...

2018-09-17 21:16:15 1069

原创 系统分析与设计方法---用户界面设计的原则

 用户界面设计    接口设计主要包括三个方面的内容:一是设计软件构件间的接口;二是设计模块和其他非人的信息生产者和消费者(如外部实体)的接口;三是人(如用户)和计算机间界面设计。    软件构件间接口的设计与架构的设计紧密相关,而设计模块和外部实体的接口则与详细设计相关,人机界面接口是相当容易被忽视的环节,在此就对其重点内容进行一个概要性描述。1 用户界面设计的原则    用户界...

2018-09-14 20:30:03 11629

原创 系统分析与设计方法---面向对象的分析与设计

面向对象的分析与设计    面向对象方法是一种非常实用的软件开发方法,它一出现就受到软件技术人员的青睐,现已成为计算机科学研究的一个重要领域,并逐渐成为软件开发的一种主要方法。面向对象方法以客观世界中的对象为中心,其分析和设计思想符合人们的思维方式,分析和设计的结构与客观世界的实际比较接近,容易被人们接受。在面向对象方法中,分析和设计的界面并不明显,它们采用相同的符号表示,能够方便地从分析阶段...

2018-09-14 20:26:32 23529

原创 系统分析与设计方法---结构化分析与设计

 结构化分析与设计    结构化分析与设计方法是一种面向数据流的需求分析和设计方法,它适用于分析和设计大型数据处理系统,是一种简单、实用的方法,曾获得广泛的应用。1 结构化分析     结构化分析方法的基本思想是自顶向下逐层分解。分解和抽象是人们控制问题复杂性的两种基本手段。对于一个复杂的问题,人们很难一下子考虑问题的所有方面和全部细节,通常可以把一个大问题分解成若干个小问题,每个小问...

2018-09-14 20:24:52 34740 2

原创 系统分析与设计方法---需求分析与软件设计

    需求分析是软件生命周期中相当重要的一个阶段。根据 Standish Group 对 23000 个项目进行的研究结果表明,28%的项目彻底失败,46%的项目超出经费预算或者超出工期,只有约 26%的项目获得成功。需求分析工作在整个软件开发生命周期中有着十分重要的意义。而在这些高达 74%的不成功项目中,有约 60%的失败是源于需求问题,也就是差不多有一半的项目都遇到了这个问题,这一可怕的现...

2018-09-14 20:22:35 79306 1

原创 系统分析与设计方法---定义问题与归结模型

    对于架构设计师而言,如何进行系统设计是其“看家本领”,而设计是在对系统进行分析的基础上进行的,否则,设计就是“无米之炊”。从软件开发项目中的角色分配来看,系统架构设计师应该在信息系统项目管理师的协调下,与系统分析师协同工作。定义问题与归结模型    软件系统的目的是为了解决问题,因此在建模之初最重要的步骤是对问题的分析与定义,并在此基础上归结模型,这样才能够获得切实有效的模型。定义...

2018-09-14 20:19:40 3869

原创 系统规划---新旧系统的分析和比较

 新旧系统的分析和比较   计算机技术飞速发展,日新月异,许多企业因为业务发展的需要和市场竞争的压力,需要建设新的企业信息系统。在这种升级改造的过程中,怎么处理和利用那些历史遗留下来的老系统,成为影响新系统建设成败和开发效率的关键因素之一。通常称这些老系统为遗留系统。    目前,学术和工业界对遗留系统的定义没有统一的意见。Bennett 在 1995 年对遗留系统做了如下的定义:遗留系统...

2018-09-05 17:53:29 5372

转载 网页自动刷新--间隔

timeout = prompt("Set timeout (Second):");count = 0;current = location.href;if (timeout > 0) setTimeout('reload()', 1000 * timeout);else location.replace(current);function reload() {    setT...

2018-09-04 16:22:23 1210

阿里巴巴在线技术峰会--云数据库十大经典案例

2017年的阿里巴巴在线技术峰会--云数据库十大经典案例

2018-12-10

简易排版工具

简易的编辑器,可以无缝嵌套至开发者自身需要的项目中。

2018-11-21

学生成绩分析系统

学生成绩分析系统 学生成绩分析系统 学生成绩分析系统 学生成绩分析系统

2018-04-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除