"

新用户注册送59体验金 - 移动版拥有全球最顶尖的原生APP,每天为您提供千场精彩体育赛事,新用户注册送59体验金 - 移动版更有真人、彩票、电子老虎机、真人电子竞技游戏等多种娱乐方式选择,新用户注册送59体验金 - 移动版让您尽享娱乐、赛事投注等,且无后顾之忧!

<acronym id="moiky"></acronym>
<rt id="moiky"><center id="moiky"></center></rt>
<rt id="moiky"><small id="moiky"></small></rt>
<rt id="moiky"><small id="moiky"></small></rt>
<rt id="moiky"></rt>
<rt id="moiky"></rt>
"
您现在所在的位置是:首页 > 业界新闻

服装营销软件工程方法

方法是工程学的核心,只有采用正确的方法新用户注册送59体验金 - 移动版,才能保证工程的有效实施新用户注册送59体验金 - 移动版。软件工程方法包括软件开发方法、软件管理方法、软件度量方法、软件环境方法等。从方法的层次上新用户注册送59体验金 - 移动版,可以把软件开发方法分为基础方法和一般方法?;》椒òǚ治龇椒?、综合方法新用户注册送59体验金 - 移动版、关联方法、抽象方法新用户注册送59体验金 - 移动版、模型方法、分类方法新用户注册送59体验金 - 移动版、系统方法、集成方法等。一般方法有面向功能方法、面向数据方法和面向对象方法等。教学要求①了解软件工程方法的含义和分类。②了解软件工程的一般方法新用户注册送59体验金 - 移动版。③了解面向功能方法和面向数据方法。④掌握面向对象方法的基本思想和基本概念。重点和难点①面向对象方法。

1.1概述
1.1.1软件工程方法的含义
从广义上讲新用户注册送59体验金 - 移动版,服装营销软件工程方法包括软件开发方法新用户注册送59体验金 - 移动版、软件管理方法、软件度量方法、软件环境方法等,其中软件管理方法新用户注册送59体验金 - 移动版、软件度量方法和软件环境方法属于软件工程管理、软件工程度量和软件工程环境等分支学科中的内容,一般所讨论的软件工程方法也就是指软件开发方法新用户注册送59体验金 - 移动版。软件工程方法与软件生存周期、软件过程、软件建模语言等存在着密切的联系,并在很大程度上决定着软件开发的成败和优劣,所以说,软件工程方法是软件工程学科的重要内容。

1.1.2软件工程方法的分类可以从不同方面对软件工程方法进行分类。从方法的层次上,可以分为基础方法和一般方法?;》椒ㄖ冈谌砑こ坦讨腥嗣欠治鑫侍夂徒饩鑫侍獾耐ㄓ梅椒?,主要包括分析方法新用户注册送59体验金 - 移动版、综合方法、关联方法新用户注册送59体验金 - 移动版、抽象方法、模型方法、分类方法新用户注册送59体验金 - 移动版、系统方法、集成方法等新用户注册送59体验金 - 移动版。一般方法是建立在基础方法之上,根据软件和软件工程的特点和性质,适应软件开发工作的独特性所形成的方法体系新用户注册送59体验金 - 移动版。我们日常所谈论的软件开发方法是指软件开发的一般方法,一般方法有面向功能方法新用户注册送59体验金 - 移动版、面向数据方法和面向对象方法。
从方法所适应的范围可以分为局部方法和全局方法。局部方法仅适应于软件开发周期某一个或某几个阶段,如程序设计方法、系统分析方法等。全局方法是覆盖软件开发全过程的方法,面向功能方法新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、面向数据方法和面向对象方法都是全局方法。
从开发风范上可以分为自顶向下的方法和白底向上的方法。自顶向下方法遵循由粗到细、从总体到局部、由框架到细节的开发风范新用户注册送59体验金 - 移动版。自底向上方法则是反过来新用户注册送59体验金 - 移动版,按照由局部到总体、由细节到框架的开发风范的一类方法。大部分软件工程方法并不单独采用某一种方法风范,而是两种开发风范相结合新用户注册送59体验金 - 移动版,但以某一种风范为主。
根据方法的严密性,可以把软件工程方法分为形式化方法和非形式化方法。形式化方法采用严格的数学方法,对软件需求、过程和要素采用形式化描述,对描述的结果可以进行论证新用户注册送59体验金 - 移动版,对被证明是正确的描述可以通过软件生成系统转化为所需的软件结果新用户注册送59体验金 - 移动版。非形式化方法在软件工程过程中采用非形式化的自然语言或限定性自然语言进行描述,强调软件开发的工程性新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,缺乏严密的形式化描述。
从方法侧重的不同,可以分为面向功能方法、面向数据方法和面向对象方法。面向功能方法是从把系统的功能作为分析、设计和实现主线的一类软件工程方法新用户注册送59体验金 - 移动版,结构化方法就属于此类方法。面向数据方法是从系统所处理的数据和信息以及数据结构入手,进行软件开发的一类方法,JSD是典型的面向数据的方法。面向对象方法则是直接面向问题领域中的客观事物,以客观事物为对象来进行系统分析新用户注册送59体验金 - 移动版、设计和实现新用户注册送59体验金 - 移动版。
根据系统开发效率和人工介入的程度,可以分为自动化方法、半自动化方法和手工方法。自动化方法是人工不介入或介入很少,可以由软件生成工具自动生成所需要的软件新用户注册送59体验金 - 移动版。半自动化方法则是在人工的控制和参与下,借用辅助开发工具开发软件。手工方法则是没有工具和环境的支持新用户注册送59体验金 - 移动版,完全通过人工进行分析新用户注册送59体验金 - 移动版、设计新用户注册送59体验金 - 移动版、实现工作。目前的服装营销软件开发大部分采用半自动化方法新用户注册送59体验金 - 移动版,即需要一定软件开发工具和环境的支持,但主要靠开发人员的参与和控制新用户注册送59体验金 - 移动版。
根据方法的过渡方式,可以分为过程型方法和演化型方法。过程型方法严格划分工作阶段和工作步骤,并且按照阶段和步骤的顺序从事软件开发工作。演化型方法则是螺旋式的开发方式,先根据需求构造一个初步的系统原型,在原型的基础上逐步完善,软件开发没有明显的过程特征。

1.1.3软件工程的基础方法
软件工程的基础方法是建立在人类思维方法的基础之上新用户注册送59体验金 - 移动版,与软件开发相关的新用户注册送59体验金 - 移动版,人们认识问题和解决问题的通用方法。任何一种思维方法都直接或间接地决定和影响着软件的开发方法新用户注册送59体验金 - 移动版。根据其相关程度,软件工程的基础方法主要有分析方法新用户注册送59体验金 - 移动版、综合方法、关联方法、抽象方法、模型方法、分类方法新用户注册送59体验金 - 移动版、系统方法新用户注册送59体验金 - 移动版、集成方法等新用户注册送59体验金 - 移动版。下面简要介绍这些方法。
1.分析方法
分析是人们在认识客观事物过程中使用的一种基本思维方法,意指把事物分解成为多个部分、方面、属性、要素、阶段等,而分别加以思考和认识新用户注册送59体验金 - 移动版。根据一个事物的生存演化过程新用户注册送59体验金 - 移动版,可以从时间上把一个事物划分为多个生存阶段,对每一个阶段分别进行认识和把握。例如,把人的生命过程划分为幼年新用户注册送59体验金 - 移动版、童年新用户注册送59体验金 - 移动版、少年新用户注册送59体验金 - 移动版、青年、中年和老年几个阶段新用户注册送59体验金 - 移动版。也可以按照事物的组成进行分解,例如新用户注册送59体验金 - 移动版,医学上把人分为神经系统、消化系统、内分泌系统、生殖系统等部分。
分析方法是软件开发的一个基本方法新用户注册送59体验金 - 移动版,体现在软件开发的各个方面新用户注册送59体验金 - 移动版。把软件按时间过程划分成为策划、分析、设计新用户注册送59体验金 - 移动版、实现、演化等阶段,把一个大型的软件划分为计划、统计、财务、生产、人事、科研、质量新用户注册送59体验金 - 移动版、供应新用户注册送59体验金 - 移动版、销售等子系统新用户注册送59体验金 - 移动版,把一个子系统又分为多个构件新用户注册送59体验金 - 移动版,都是分析方法的运用新用户注册送59体验金 - 移动版。
所有软件开发都运用到了分析方法新用户注册送59体验金 - 移动版,但分析的对象和依据各有不同。面向功能方法是按照功能进行分解,面向对象方法则是按照事物实体进行分解,面向数据的方法则是按照实体静态属性所呈现的结构形态进行分解新用户注册送59体验金 - 移动版。2.综合方法
综合是把事物的各部分、属性新用户注册送59体验金 - 移动版、要素、阶段等联系起来进行整体认识的思维方法。例如,由控制器新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、运算器、存储器、输入设备和输出设备五部分构成计算机整体新用户注册送59体验金 - 移动版,本能、理智和理性等部分构成了人的心理部分,而机体和心理两部分则共同构成了人。
分析与综合是同一思维活动的两个方面,是矛盾的辩证统一关系新用户注册送59体验金 - 移动版。分析是基于对事物整体认识,而分析的结果又会加深对事物的整体认识。综合以分析为基础,分析越精细准确新用户注册送59体验金 - 移动版,综合就越全面完美。分析和综合并不是一次完成的,而是一个螺旋过程,经过综合——分析——再综合新用户注册送59体验金 - 移动版,逐步接近于事物本质。
综合方法是指导软件开发的一个基本方法。综合策划新用户注册送59体验金 - 移动版、分析新用户注册送59体验金 - 移动版、设计新用户注册送59体验金 - 移动版、实现、演化几个阶段构成完整的软件生存周期,软件的开发综合软件的目标、需求新用户注册送59体验金 - 移动版、方法新用户注册送59体验金 - 移动版、技术、环境等多种要素,在面向对象方法中,由对象构成类,由类以及类相互之间的联系构成系统都运用到综合方法。3.关联方法
事物之间存在着广泛的联系,事物之间的联系影响着事物的行为和特征。所以要全面地分析和认识事物,必须关心事物之间的联系。关联方法就是分析事物时,主动从事物之间的联系上分析和认识事物的思维方法。在软件开发过程中必须考虑软件与其外部环境以及软件内部各要素之间的联系。与软件关系最为密切的是软件所服务的业务领域和其支撑环境新用户注册送59体验金 - 移动版。软件开发者必须搞清楚所服务业务领域的业务和管理。另外,软件也需要依附它的运行环境。在软件内部新用户注册送59体验金 - 移动版,各子系统之间和子系统内部各构件之间也都存在密切的联系新用户注册送59体验金 - 移动版。在面向对象方法中,各对象之间的一般—特殊关系、整体一部分关系都是对象之间的关系,软件开发者必须认识和理清这些关系。
4.抽象方法
抽象是抽取出同类事物本质特征而舍弃非本质特征的思维方法。抽象的目的是认识事物,进而反映事物。抽象对事物的反映是一种本质、概要和简化的反映,而不是对事物原貌的复制和照搬。要认识事物本质就需要对事物进行分析和综合新用户注册送59体验金 - 移动版,所以新用户注册送59体验金 - 移动版,抽象要运用分析、综合等其他思维方法。
抽象是软件开发过程中广泛使用的方法新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,存在于软件的宏观结构新用户注册送59体验金 - 移动版、微观分析和软件开发的各个活动之中。在系统分析过程中新用户注册送59体验金 - 移动版,通过抽象来认识问题领域的本质新用户注册送59体验金 - 移动版,由需求分析所得出的系统逻辑模型就是抽象的结果新用户注册送59体验金 - 移动版。在系统设计阶段,确定软件结构新用户注册送59体验金 - 移动版、构件、构件内部算法和流程,都要运用到抽象方法新用户注册送59体验金 - 移动版。
5.模型方法
模型是对事物抽象、概括新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、本质的反映。在软件开发中,大量使用到模型方法。系统分析中的逻辑模型,系统的设计模型,数据库设计中的概念模型、逻辑模型和物理模型,业务过程的决策模型、库存模型、产供销模型新用户注册送59体验金 - 移动版、财务模型、人才需求模型等应用模型,都是模型方法在软件开发中的应用。
6.分类方法
分类是指按照事物的特征新用户注册送59体验金 - 移动版,对事物分门别类地进行组织,使事物有序和系统化新用户注册送59体验金 - 移动版。如果没有分类新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,人类社会和我们的日常生活将处于无序和混乱状态,因此新用户注册送59体验金 - 移动版,分类在社会组织、日常生活和科学研究中起着十分重要的作用。分类是人们使用的一种基本思维方法新用户注册送59体验金 - 移动版。人按性别可划分为男女新用户注册送59体验金 - 移动版,按年龄划分为幼年、童年、少年、青年、中年和老年,按学历划分为小学、中学新用户注册送59体验金 - 移动版、大学和研究生,按职称划分为初级、中级和高级,按道德标准划分为好人和坏人等,这都是分类方法的具体应用。
分类方法是软件工程方法的基础新用户注册送59体验金 - 移动版,并广泛应用于开发的各个方面。在面向对象方法中,类的概念就是分类方法的运用,把具有相同属性和服务的一组对象称为一个类。
7.系统方法
系统是由相互联系新用户注册送59体验金 - 移动版、相互影响的多个部分结合为具有确定目标和功能新用户注册送59体验金 - 移动版,并处于特定环境的有机整体新用户注册送59体验金 - 移动版。系统具有整体性、关联性、综合性、结构性和适应性等特征。系统既是描述相互联系的客观统一体,又是一种十分有用的思维方法。系统方法就是从全局出发新用户注册送59体验金 - 移动版,对系统内外各种联系及其规律性加以辩证的分析新用户注册送59体验金 - 移动版,找出合乎目的的最佳方案,并依此指导人们行动的方法。系统方法一般包括五个步骤:①确定系统目标;②根据目标提出多个可行方案;③设计方案的模型来模拟实际情况;④对模型进行比较,选出最佳方案;⑤确定系统的组成新用户注册送59体验金 - 移动版、结构和相互联系。
软件本身是系统,所以在软件开发过程中广泛地运用到系统方法。软件开发阶段的划分就是系统方法的体现新用户注册送59体验金 - 移动版。每个软件的开发需要从时序上划分成为多个阶段,每一个阶段有确定的目标、任务和时间要求,各阶段的目标、任务和时限的确定必须服从于系统总目标的需要,这就体现了系统方法的整体性新用户注册送59体验金 - 移动版;各阶段的工作既相对独立新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,又互有联系,共同协调构成软件开发总过程新用户注册送59体验金 - 移动版,这又体现了系统方法综合性新用户注册送59体验金 - 移动版。另外,阶段的确定,各阶段目标、任务和时限的确定都必须遵循辩证统一的原则新用户注册送59体验金 - 移动版。
8.集成方法
集成方法是指把多个相对独立的构件或部分,根据目标的需要构成和谐、兼容和相互联系的整体所遵循的方法。在把多个部分综合成为整体方面,集成与综合有相似之处,但集成方法有其独特性。在集成过程中,各部分的独立性更强,联系更为稀松。例如,大庆新用户注册送59体验金 - 移动版、辽河、新疆、大港、胜利等油田的信息系统本来已经是独立的信息系统了,但可以集成为整个中国石油天然气总公司的综合信息系统新用户注册送59体验金 - 移动版。集成的各个部分的结构具有多样性?新用户注册送59体验金 - 移动版?梢园讯喔鼋峁共钜旌艽蟮募扑慊?新用户注册送59体验金 - 移动版、网络和支撑软件集成为一个一体化的系统平台。集成对时限的要求也比较宽松。例如,一个大型软件的建设,可以规划多年完成新用户注册送59体验金 - 移动版,已经完成的部分可以自成系统地投入使用新用户注册送59体验金 - 移动版。在随后时间里,可以把后开发的子系统逐步集成到总系统之中。
除了以上基础方法之外,比较方法、分隔方法、观察方法、数学方法、实验方法也都是软件开发所遵从的基础方法。

1.1.4软件工程的一般方法
软件工程的一般方法是建立在基础方法之上,适应和满足软件开发的特殊要求新用户注册送59体验金 - 移动版,所形成的相对一套完整的方法体系。软件工程的一般方法与软件的生存规律、软件过程、软件开发技术新用户注册送59体验金 - 移动版、软件的工具和环境都有密切的联系,它在一定程度上由这些因素所决定,并反过来影响这些因素。除此之外新用户注册送59体验金 - 移动版,软件工程方法的形成与人们审视软件和软件开发过程的角度也有很重要的关系,这也是造成软件工程方法多样化的一个重要原因。
20世纪60年代中期以来新用户注册送59体验金 - 移动版,人们对软件工程方法进行了不懈的研究,先后出现了几十种软件工程方法,其中产生重大影响的有面向功能方法、面向数据方法和面向对象方法等。本章将简要介绍这些方法。
1.2面向功能方法
面向功能是软件工程的一类方法,该类方法把软件开发的侧重点放在软件功能上面,面向功能方法的典型代表是结构化方法新用户注册送59体验金 - 移动版。本节以结构化方法为主,介绍面向功能方法的思想和基本方法。

1.2.1结构化方法的特征
结构化方法(structuredmethod)是20世纪60年代末,在结构化程序设计的基础上发展起来的新用户注册送59体验金 - 移动版,遵循系统思想,严格划分工作阶段,充分考虑用户需求,遵循软件生命周期,突出软件各部分之间的结构关系的一类开发软件的全局方法。结构化方法由结构化分析
{(SA)新用户注册送59体验金 - 移动版、结构化设计(SD)和结构化编程(SP)三部分构成,结构化方法的主要特征表现在以下几个方面。
1.遵循系统思想
系统思想是结构化方法的灵魂。结构化方法首先按照系统的思想和观点来认识和观察软件。软件以及软件所服务的业务领域本身是复杂的系统新用户注册送59体验金 - 移动版,在认识过程中需要运用系统的思想和方法。在认识系统的各个部分和要素及其相互关系时,总是从系统的总体目标出发,把各要素放到系统整体中新用户注册送59体验金 - 移动版,认识各部分在总系统中的作用和位置。
软件开发过程需要利用系统的思想和方法来指导开发工作。整个软件开发是一个完整的工程项目,需要按照系统方法来组织和管理项目开发工作??⒐ぷ鞯淖橹才?、人员分工、资源调配、技术运用、工程进展都要从系统全局需要出发新用户注册送59体验金 - 移动版,符合系统开发的整体要求。在系统开发各阶段的工作开展也离不开系统方法的指导。在系统调研、分析和设计过程中,从总体到局部、从宏观到微观新用户注册送59体验金 - 移动版、由粗到细的白顶向下方法就是系统化思想和方法的体现。系统分析阶段采用的分层数据流图和设计阶段采用的??榻峁雇级忌了缸畔低郴枷?。
2.严格划分工作阶段
结构化方法把软件开发划分为问题定义、需求分析、设计新用户注册送59体验金 - 移动版、实现和测试等阶段。每一个阶段都有明确的目标新用户注册送59体验金 - 移动版、任务和预期达到的结果。前一阶段的工作未完成之前新用户注册送59体验金 - 移动版,不能跨越到下一阶段,这样才能使整个开发工作有条不紊地进行。结构化方法按时间顺序划分工作阶段也是系统化思想的体现新用户注册送59体验金 - 移动版。结构化方法遵循软件生存周期的瀑布模型。
3.充分考虑用户需求
用户既是软件需求的提出者新用户注册送59体验金 - 移动版,又是软件的使用者,同时也是软件开发工作的参与者。因此,软件开发必须充分考虑和满足用户的需求。在软件开发中,开发人员必须与用户广泛地进行交流,深入了解用户的想法,并对用户所提出的需求全面深入地进行分析。
4.按照工程化的方法
结构化方法形成了相对完整的工程化方法体系。在分析阶段用自顶向下的分层数据流图和数据字典来进行需求分析,并导出系统的逻辑模型;设计阶段用系统结构图、HIPO来描述系统的结构;而在详细设计阶段用结构化英语、判定树新用户注册送59体验金 - 移动版、判定表等工具描述??樗惴ê土鞒?新用户注册送59体验金 - 移动版。
5.突出系统各部分的联系
结构化方法强调和凸显系统部分之间的联系新用户注册送59体验金 - 移动版。分析阶段采用的分层数据流图就是从数据变换的角度,反映出系统的需求结构框架。在软件中数据是对客观实体的反映,数据的变化过程反映系统的功能处理需求新用户注册送59体验金 - 移动版,所以结构化方法把数据流图和数据字典作为新系统的逻辑模型。系统结构图是设计阶段用来描述系统软件结构的工具新用户注册送59体验金 - 移动版,它反映构成系统的各个??橹涞牡饔煤褪荽涔叵?新用户注册送59体验金 - 移动版。到了实现阶段,采用结构化程序设计,整个软件由多个??楣钩?新用户注册送59体验金 - 移动版,??橹浜湍新用户注册送59体验金 - 移动版?槟诓砍氏殖鏊承蛐掠没ё⒉崴?9体验金 - 移动版、选择和循环三种结构形态。突出系统各部分之间的结构框架就成为结构化方法的显著特征。

1.2.2结构化分析
1.概述
结构化分析是结构化方法中的第一个环节,也是系统开发过程中最重要的环节。结构化分析工作的主要任务是运用结构化分析方法和工具,调研现行系统的业务管理过程和新系统的需求,在详细调研的基础上新用户注册送59体验金 - 移动版,通过综合系统目标新用户注册送59体验金 - 移动版、用户要求、考虑系统的背景和环境,以及资金能力和技术因素,通过客观、认真、全面的分析新用户注册送59体验金 - 移动版,确定出合理可行的系统需求,并提出新系统的逻辑方案(也叫系统逻辑模型),编写出系统规格说明新用户注册送59体验金 - 移动版。系统规格说明经过审查通过之后,可以结束分析工作,把系统规格说明提供给设计阶段,作为结构化设计工作的依据。
结构化分析遵从瀑布模型新用户注册送59体验金 - 移动版。在分析工作没有完全完成新用户注册送59体验金 - 移动版,系统规格说明未通过审查之前,不能结束分析工作。结构化分析运用的工具是数据流图和数据字典。用数据流图描述数据的传输、加工和处理过程。数据流图既作为现行系统数据加工处理的描述工具,同时又作为新系统逻辑模型的描述工具新用户注册送59体验金 - 移动版。

2.结构化分析方法
结构化分析方法基于数据处理的观点,从系统功能的角度,运用分层数据流图对数据处理流程采用自顶向下、逐步细化求精的方法新用户注册送59体验金 - 移动版,分析和描述系统需求新用户注册送59体验金 - 移动版。
数据处理观点认为软件是数据和信息的加工处理系统,软件处理的直接对象是数据和信息新用户注册送59体验金 - 移动版,软件的作用就是把数据源通过多环节的加工处理新用户注册送59体验金 - 移动版,变换成为用户所需的信息。按照数据处理观点,软件的功能是通过软件对数据的加工处理过程表现出来的?;谡庵秩鲜缎掠没ё⒉崴?9体验金 - 移动版,结构化分析方法的基本思想是,根据系统的功能需求,运用数据流图和数据字典等工具,通过对数据流程变换过程的分析,构造和描述出新系统的逻辑模型新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。

(1)数据流图
数据流图是结构化分析的工具。数据流图采用图3一I中的四个基本符号新用户注册送59体验金 - 移动版。数据流:一数据源c淞口数据加工:数据存储:图3-I数据流图的基本符号
数据流是在数据加工、数据存储或数据源之间传输的数据。数据流不同于控制流,只有实际存在数据传输时新用户注册送59体验金 - 移动版,才能有数据流新用户注册送59体验金 - 移动版。在数据流上要标出数据流的名称,数据流名要能够明确反映数据的确切含义。数据流可以表示一组复杂抽象的数据,如客户数据,也可以表示一个简单的具体数据,如学生的数学成绩。
数据加工表示对数据的加工变换处理,简称为加工。数据加工的作用是把进入加工的数据流变换成为加工流出的数据流新用户注册送59体验金 - 移动版。数据加工需要有确定的名称新用户注册送59体验金 - 移动版,在数据加工符号的上方还要给出加工编号。
数据源和数据汇表示系统之外数据的来源和终点,简称为数据源。数据源也要有名称。
数据存储是对数据存放的抽象表示,可以是一个文件新用户注册送59体验金 - 移动版、数据库或记录簿,也要给出数据存储的名称。
图3—2是学生成绩管理数据流图的例子新用户注册送59体验金 - 移动版。该数据流图描述了学校对学生成绩管理的数据处理过程新用户注册送59体验金 - 移动版。教师阅完卷之后,向教务处提交学生的成绩单,教务处把成绩单中的成绩登记到学籍表中新用户注册送59体验金 - 移动版。教务处需要对学生成绩进行汇总,把汇总结果记入成绩汇总表。根据成绩单和成绩汇总表对学生成绩进行分析,并把分析结果填入成绩分析表中?;挂映杉ǖブ姓霾患案竦难?,记入学生补考名单新用户注册送59体验金 - 移动版,以便通知补考的学生。在这个数据流图中共有成绩单、成绩汇总表、成绩分析表和学生补考名单四个数据流。数据源是教师,数据汇是教务处新用户注册送59体验金 - 移动版。学籍表是数据存储。图中有四个数据加工,分别是登记学生成绩新用户注册送59体验金 - 移动版、汇总学生成绩、分析学生成绩和抽取补考成绩。图3.2学生成绩管理数据流图
绘制数据流图需要遵循一些基本原则新用户注册送59体验金 - 移动版。第一是客观原则。数据流图必须反映数据流程变换的客观实际,主观臆断、违背客观实际的数据流图只能把系统开发引入失败新用户注册送59体验金 - 移动版,所以要求开发人员在绘制数据流图之前,要进行深入细致的调查研究工作。第二是数据流原则。在数据流图中的每一股数据流必须是实际存在的数据流新用户注册送59体验金 - 移动版?新用户注册送59体验金 - 移动版?刂屏鞑荒茏魑萘?,初学者常常把数据流和控制流混为一谈。第三是平衡原则新用户注册送59体验金 - 移动版。每一个数据加工有流入的数据流也需有流出的数据流。没有流入或没有流出数据流的加工肯定存在问题。平衡原则还体现在分层数据流图之间数据流是平衡的新用户注册送59体验金 - 移动版,在上层数据流图和下层数据流图的数据流必须一致。

(2)分层数据流图
大型系统存在复杂的数据变换处理新用户注册送59体验金 - 移动版,很难在一张数据流图上描述出整个系统的数据处理流程,可以采用分层数据流图来描述新用户注册送59体验金 - 移动版。把数据流图划分成为多个层次新用户注册送59体验金 - 移动版,有顶层、中间层和底层数据流图。一般在顶层数据流图中新用户注册送59体验金 - 移动版,仅有一个数据加工,表示整个系统的数据加工处理。所有与系统有关的数据源、数据汇和数据存储也描绘在顶层数据流图中。顶层图中的加工就相当于一个抽象度很高的黑匣子,表示整个系统的数据加工处理,以及本系统与外部的数据联系新用户注册送59体验金 - 移动版。
项层数据流图仅反映了本系统与外部的数据联系新用户注册送59体验金 - 移动版,抽象度很高,单从图中的加工名称看不清楚详细的数据变换处理过程,需要对顶层加工进行分解。图3-2就是学生成绩管理系统对顶层数据流图的分解。对数据流图分解主要是对加工的分解。当上层数据流图中的一个加工比较复杂或抽象,不能清楚反映数据的加工处理过程时,可以对这个加工进行分解,形成下层数据流图,分解成多个加工和多股数据流。数据流图的层数并没有硬性规定,可一直分解到图中的所有加工都简单、清楚为止新用户注册送59体验金 - 移动版。
分层数据流图既是分析和描述的需要,同时也是对数据加工过程抽象层次的客观反映。在系统中的数据加工处理过程是呈结构和层次的新用户注册送59体验金 - 移动版,分层数据流图正好弥补了单层数据流图在这点上的不足,这也是数据流图的客观原则的体现新用户注册送59体验金 - 移动版。
分层数据流图也是人们解决复杂问题由抽象到具体、由粗到细、自顶向下的分解和控制的系统方法的运用。对初接触的复杂系统,在未深入到系统的内部细节之前新用户注册送59体验金 - 移动版,可先绘出其顶层数据流图新用户注册送59体验金 - 移动版,抽象地反映本系统数据处理,以及与外部的数据联系新用户注册送59体验金 - 移动版。对顶层加工的分解就是对问题的细化,在下层数据流图中,把上层一个复杂加工分解成为相对简单的几个加工新用户注册送59体验金 - 移动版⌒掠没ё⒉崴?9体验金 - 移动版?梢远哉飧黾庸ぴ俳蟹纸?新用户注册送59体验金 - 移动版,直到所有的数据流程完全简单清楚为止,如图3.4所示。

(3)数据字典
数据字典是按照确定图素条目顺序排列的新用户注册送59体验金 - 移动版,对数据流图中的数据流、加工新用户注册送59体验金 - 移动版、数据存储和数据元素等图素的描述、解释和说明的文本。数据字典是数据流图的说明和补充,它能够给出数据流图中各个图素详尽、一致的定义和解释。
数据字典中的条目种类包括数据流、加工、数据存储和数据元素等四类。数据元素是数据流或数据存储的构成要素。在数据字典中这四类条目分类排放新用户注册送59体验金 - 移动版,不要掺杂到一起,以便于查阅新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。图3-5给出了各条目的式样新用户注册送59体验金 - 移动版。
可以把数据字典制作成卡片,一一个卡片上登记一个图素条目,最后把卡片装订成册就是数据字典。大型系统也可采用数据库或数据字典工具来存储和维护数据字典,这样一方面能够提高数据字典条目的查找速度,更重要的是能够保证数据字典中数据的一致性。

(4)新系统的逻辑模型
通过大量的系统分析工作,最后要得出新系统的逻辑模型新用户注册送59体验金 - 移动版。新系统逻辑模型是从需求的角度,用确定的描述方法新用户注册送59体验金 - 移动版,对蹩要开发的系统的抽象描述。逻辑模型不等同于实际系统,但它是对系统的框架新用户注册送59体验金 - 移动版、功能、组成的抽象和直观的反映。
结构化方法采用数据流图和数据字典作为新系统逻辑模型的描述工具。数据流图和数据字典具有简洁新用户注册送59体验金 - 移动版、规范和可操作的特点,更重要的是数据流图反映的数据流和数据的加工转换过程新用户注册送59体验金 - 移动版。数据是对软件所服务和处理的业务领域中的事物和事物特征的反映,数据的加工处理过程则反映了系统为了获取所需要的信息而必须进行的处理,所以是系统功能和作用的体现新用户注册送59体验金 - 移动版。数据处理过程中蕴涵着业务的方法和过程,因此数据流图能够全面地反映系统需求的构成和结构。数据字典则是对数据流图进一步的解释和说明,是数据流图的辅助工具。

1.系统设计的基本任务
系统分析的任务是调研和理解系统需求,在深入分析的基础上提出新系统的逻辑模型。所以,系统分析的核心是解决系统应该“做什么”的问题新用户注册送59体验金 - 移动版。系统设计阶段则着重解决系统在具体环境下如何做的问题新用户注册送59体验金 - 移动版。系统设计的基本任务是:在系统逻辑方案的基础上,运用确定的设计方法,从系统平台新用户注册送59体验金 - 移动版、系统结构、系统组成、人机界面、数据处理新用户注册送59体验金 - 移动版、系统接口等方面构造出完整的系统设计方案。
系统设计包括概要设计新用户注册送59体验金 - 移动版、物理设计新用户注册送59体验金 - 移动版、??樯杓?新用户注册送59体验金 - 移动版、数据库设计、人机界面设计和代码设计等方面的工作新用户注册送59体验金 - 移动版,设计的结果是系统的设计方案。存在多种系统设计方法,不同的设计方法除了对设计方案描述的形式不同之外,在设计考虑的侧面、设计内容、设计工作的步骤等方面都有差异。

2.结构化设计的基本概念
结构化设计方法认为,软件系统由多个具有相互联系的?新用户注册送59体验金 - 移动版?樽槌?新用户注册送59体验金 - 移动版,?新用户注册送59体验金 - 移动版?槭窍低车幕竟辜?,?新用户注册送59体验金 - 移动版?橹浯嬖谥葱械饔霉叵岛筒问莨叵敌掠没ё⒉崴?9体验金 - 移动版。结构化设计的工作就是确定构成系统的???、各??橹涞牧狄约懊恳桓瞿?榈墓δ?新用户注册送59体验金 - 移动版、算法和流程,所以,结构化设计也被称为??樯杓?。
结构化设计包括总体设计和详细设计两个层次的工作。总体设计需要确定构成系统的所有?新用户注册送59体验金 - 移动版?橐约案髂?橹涞墓叵敌掠没ё⒉崴?9体验金 - 移动版,并用系统结构图来描述系统的总体结构。总体设计也被称为概要设计。详细设计则需要深入到各个??槟诓?,设计男掠没ё⒉崴?9体验金 - 移动版?榈氖萁峁购痛砺呒?。详细设计也被称为??樯杓?。一般用伪码新用户注册送59体验金 - 移动版、判定树、判定表等工具描述男掠没ё⒉崴?9体验金 - 移动版?榈哪诓柯呒?。设计工作的依据是系统的逻辑模型,在设计过程中新用户注册送59体验金 - 移动版,需要把系统的数据流图转变成为系统结构图,并根据数据流图中的各个加工,设计各个?新用户注册送59体验金 - 移动版?榈哪诓渴萁峁购痛砹鞒?新用户注册送59体验金 - 移动版。

3.?新用户注册送59体验金 - 移动版?榛杓?br /> ??槭侨砑墓辜?。??槭侵葱小鋈范ㄈ挝窕蚴迪忠桓鎏厥獾某橄笫堇嘈偷囊蛔槔毯褪萁峁?。每一个??橛山涌诤湍?樘辶讲糠肿槌桑航涌诿枋瞿新用户注册送59体验金 - 移动版?榈耐獠刻匦?,包括男掠没ё⒉崴?9体验金 - 移动版?榈墓δ?、输入输出参数、调用规约等;?新用户注册送59体验金 - 移动版?樘逶蚴亲槌赡新用户注册送59体验金 - 移动版?榈哪诓渴堤?,是实现男掠没ё⒉崴?9体验金 - 移动版?槎酝夤δ艿谋咎?,一般由男掠没ё⒉崴?9体验金 - 移动版?榈乃接辛亢统绦蛄鞒套槌?。
在男掠没ё⒉崴?9体验金 - 移动版?樯杓乒讨?,应该尽量减少各??橹涞牧?,而加强??槟诓扛鞑糠种渚酆隙?,这种设计原则称为高内聚、低耦合的原则新用户注册送59体验金 - 移动版。??橹涞鸟詈闲栽叫?,说明??橹涞牧翟郊虻?,??榈亩懒⑿跃驮角?新用户注册送59体验金 - 移动版。与之相对应的是新用户注册送59体验金 - 移动版,?新用户注册送59体验金 - 移动版?槟诓扛鞑糠种涞木酆铣潭仍角啃掠没ё⒉崴?9体验金 - 移动版,??槎酝獾亩懒⑿跃驮礁?。
?新用户注册送59体验金 - 移动版?轳詈闲苑从诚低持懈髂?橹涞墓亓潭?。??橹浯嬖谄咧竹詈侠嘈停悍侵苯玉詈?、数据耦合、结构耦合新用户注册送59体验金 - 移动版、控制耦合、外部耦合新用户注册送59体验金 - 移动版、公共耦合和内容耦合。非直接耦合指??橹涿挥兄苯恿?,只是通过主??槎阅?榈南嗷サ饔枚⒌姆侵苯恿?,这种耦合度最低。如果两个??樵诘饔霉讨?,其问仅仅传输数据参数,而不传输控制或其他内容,这种联系称为数据耦合新用户注册送59体验金 - 移动版。由于仅仅传输数据参数,所以??橹涞牧狄脖冉霞虻?,耦合程度较低新用户注册送59体验金 - 移动版。结构耦合是指??橹蚀涓丛拥氖萁峁?新用户注册送59体验金 - 移动版,而不是简单变量,这种耦合程度比数据耦合高?新用户注册送59体验金 - 移动版?刂岂詈现改?榈饔霉讨写淇刂菩筒问?,对另一个??榈墓δ?、状态起着控制和选择作用新用户注册送59体验金 - 移动版。外部耦合是指一组男掠没ё⒉崴?9体验金 - 移动版?榉梦释桓鐾獠勘淞?。公共耦合则指一组??榉梦释桓鐾獠渴萁峁?,它的耦合度比外部偶合高。内容耦合指一个??橹苯臃梦柿硗庖桓瞿新用户注册送59体验金 - 移动版?榈哪诓渴莼虿煌ü?槿肟诮肽?槟诓?。在这七种耦合类型中,非直接耦合程度最低新用户注册送59体验金 - 移动版,内容耦合程度最高。所以在设计过程中新用户注册送59体验金 - 移动版,应该尽量避免内容耦合。
??槟诰坌苑从衬?槟诓康木酆铣潭?,??槟诰坌栽礁?,??榈亩懒⑿栽角?。存在七种不同的??槟诰劾嘈停汗δ苣诰?、信息内聚、通信内聚、过程内聚、时间内聚新用户注册送59体验金 - 移动版、逻辑内聚和巧合内聚。功能内聚指??楦菀桓鼍咛骞δ芤蠖杓频哪新用户注册送59体验金 - 移动版??,??橹械母鞲霾糠侄际俏仆瓿晒δ艿男枰柚玫?,内聚性最高新用户注册送59体验金 - 移动版。信息内聚是指男掠没ё⒉崴?9体验金 - 移动版?槟诓恳瓿啥喔龉δ?,各个功能之间要共享同一个数据结构,通过同一个数据结构把?新用户注册送59体验金 - 移动版?槟诓扛鞲霾糠志酆系揭黄?。这种??榈木酆闲员裙δ芫酆先?新用户注册送59体验金 - 移动版,因为它聚集了多个功能于一个??橹?新用户注册送59体验金 - 移动版。通信内聚则指一个??橹械母鞲霾糠质褂孟嗤氖淙胧莼虿讼嗤氖涑鍪?。时间内聚指??槟诟鞲龉δ茉谕桓鍪奔淝沃兄葱?,所以把这些功能聚集到一个?新用户注册送59体验金 - 移动版?橹行掠没ё⒉崴?9体验金 - 移动版新用户注册送59体验金 - 移动版。过程内聚是??槟诓扛鞲霾糠衷诖硭承蛏嫌邢喙匦?,因此新用户注册送59体验金 - 移动版,把各部分汇集到一个??橹?新用户注册送59体验金 - 移动版。逻辑内聚指??橹性毯亩喔龉δ苄枰菽骋桓雠卸下呒唇醒≡裥缘闹葱?。巧合内聚是指??槟诓扛鞲霾糠种涿挥斜厝坏牧?,因为设计过程的巧合因素把它们聚合到一个??橹?,这种??榈哪诰坌宰畈?。在设计过程应该尽量地提高男掠没ё⒉崴?9体验金 - 移动版?榈哪诰鄢潭?,尽量把那些内聚程度低的??樽晌诰坌愿叩囊桓龌蚨喔瞿??新用户注册送59体验金 - 移动版,以提高??榈亩懒⑿?。

4.总体设计总体设计的任务是确定软件的总体结构新用户注册送59体验金 - 移动版。总体设计的工作是把整个软件系统划分成为多个相对独立的??樾掠没ё⒉崴?9体验金 - 移动版,确定每一个??榈慕涌诤湍?橹涞牧?,并用系统结构图描述出系统的总体结构新用户注册送59体验金 - 移动版。
系统结构图的描述符号十分简单,用矩形框表示???,??橹涞牧弑硎灸新用户注册送59体验金 - 移动版?橹涞牟愦蔚饔霉叵敌掠没ё⒉崴?9体验金 - 移动版,箭头表示??橹浯涞氖?。图3-6表示??橐约澳?榈牡饔霉叵?。
有时上层??樾枰菀欢ǖ呐卸ㄌ跫吹饔孟虏隳新用户注册送59体验金 - 移动版??,当条件满足时才调用,??橹涞恼庵值饔帽怀莆卸ǖ饔?。??橹湟泊嬖谏喜隳?槎韵虏隳?檠范啻蔚饔玫那榭?,这种调用被称为循环调用新用户注册送59体验金 - 移动版。在系统结构图中用图3—7中的两个符号表示判定调用和循环调用。图3-8是修改库结构文件的系统结构图新用户注册送59体验金 - 移动版。
在进行总体设计时,首先需要根据系统逻辑模型确定系统结构图。目前还没有一种规范的方法,能够把数据流图直接转换成为系统结构图,需要系统设计人员根据实际问题的需要新用户注册送59体验金 - 移动版,运用已有的经验,通过分析得出系统结构图新用户注册送59体验金 - 移动版。
系统总体设计过程是一个逐步优化的过程。系统结构图除了能够反映系统的总体结构之外,还必须遵循一定的优化原则。例如结构图的层数不宜过多,每一个??榈南虏隳新用户注册送59体验金 - 移动版?槭蜕喜隳?槭惨刂圃谝欢ǖ姆段?,要做到高内聚和低耦合等新用户注册送59体验金 - 移动版。所以新用户注册送59体验金 - 移动版,根据数据流图得出初步的系统结构图之后新用户注册送59体验金 - 移动版,还要对系统结构图进行进一步的调整和优化新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。

5.详细设计
详细设计是对??槟诓康纳杓?新用户注册送59体验金 - 移动版,主要任务是根据?新用户注册送59体验金 - 移动版?榻涌谒ㄒ宓墓δ芎统鋈胧?新用户注册送59体验金 - 移动版,来设计??槟诓康氖萁峁剐掠没ё⒉崴?9体验金 - 移动版、算法和处理流程新用户注册送59体验金 - 移动版。详细设计一般用到以下设计工具和描述方法新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。
(1)IPO图
IPO(inputprocessingoutput)是输入、处理和输出图,用它可以描述?新用户注册送59体验金 - 移动版?榈氖淙胧?、处理功能和输出数据新用户注册送59体验金 - 移动版,是从外部特征对?新用户注册送59体验金 - 移动版?榈母乓枋?。(2)流程图
流程图也称为程序流程图或框图,是在结构化方法出现之前就已经存在的描述程序流程的工具新用户注册送59体验金 - 移动版,.在结构化方法中可以用流程图来描述??榈牧鞒?。流程图是使用比较广泛的一种流程描述工具。
(3)限定性自然语言
限定性自然语言是指通过对自然语言增加一定的约束语法新用户注册送59体验金 - 移动版,来描述??榈哪诓苛鞒?新用户注册送59体验金 - 移动版。限定性自然语言在国外被称为伪码或结构化英语。在限定性自然语言中增加描述选择新用户注册送59体验金 - 移动版、循环等结构的标识符,使得对??榱鞒痰拿枋鼍×康胤辖峁够娣?,以便于进行结构化程序设计。
例如,某工厂在进行内部机构改革过程中,人事部门要对一部分职工重新分配工作。分配工作的原则是:如果年龄不满18岁,小学文化程度的职工新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,让其脱产学习新用户注册送59体验金 - 移动版,文化程度是中学的职工让其当电工新用户注册送59体验金 - 移动版;年龄在18~40岁之间新用户注册送59体验金 - 移动版,文化程度是小学或中学的,男性当钳工,图3.11流程图女性当车工,文化程度是大学的,当技术员;年满40岁以上,文化程度是小学或中学的,当材料员,文化程度是大学的当技术员新用户注册送59体验金 - 移动版。图3—12是对职工分配工作的处理流程的描述。
(4)判定表和判定树
结构化方法一般采用限定性自然语言来描述??榈牧鞒?新用户注册送59体验金 - 移动版。当存在复杂判断逻辑时,可以采用判定树或判定表描述。判定树通过树型逻辑结构描述多路判断逻辑,具有清晰、直观的优点,判定树的不足在于不能反映和检查存在错误、矛盾和疏漏的判断逻辑。判定表是用规范的表格形式描述多路判断逻辑,并可以对判断逻辑进行化简和优化。判断表的缺点是描述方法复杂,不易于理解和掌握新用户注册送59体验金 - 移动版。

1.3面向数据方法
1.3.1概述
面向数据方法是软件工程方法中的另外一类重要的方法,该类方法把软件开发的侧重点放到软件所处理的数据和数据结构上面新用户注册送59体验金 - 移动版,根据对软件所处理的数据及其结构的分析,进而确定软件的功能和结构新用户注册送59体验金 - 移动版,并形成的一套软件开发的全局性方法。本节以JSD为例新用户注册送59体验金 - 移动版,介绍面向数据方法的思想和基本技术。Jackson系统开发方法(JacksonsystemdeveloDmentmethod,JSD)是在Jackson的面向数据结构的程序设计方法的基础上发展而来的新用户注册送59体验金 - 移动版,它是~种面向软件开发全过程的系统化开发方法。该方法的基本思想是,从客观现实中提取出各种客观实体,并确定各个实体的活动以及实体与各活动之间的相互关系,生成反映客观问题的进程模型。在进程模型的基础上,增加系统功能新用户注册送59体验金 - 移动版、确定时序关系,最后实现所设计的系统。JSD方法可划分为建模、设计和实现三个阶段新用户注册送59体验金 - 移动版,共包括6个步骤,如图3—15所示。建模阶段设计阶段实现阶段

1.3.2建模阶段图3—15JSD方法开发阶段和步骤
建模阶段的工作是在现实世界中新用户注册送59体验金 - 移动版,通过对具体问题的分析,建立进程模型。进程模型是还没有考虑系统功能和实现环境,对现实世界问题描述的抽象模型。
1.实体活动分析
在这个步骤中,通过对问题领域和需求的分析,从问题领域中提取出与需求相关的客观实体以及实体的诸多活动,并把提取的实体和实体的活动列在实体表和实体活动表中新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。实体是指软件所要服务的问题领域中的各种客观事物或客观对象。如学校中的学生、教师、教材、课程,银行中的工作人员、客户等就是实体?;疃窃谑堤迳纤⑸亩骱褪录?新用户注册送59体验金 - 移动版。
2.实体结构分析
实体所发生的各个活动之间存在着确定的时序关系,例如,商店中商品的活动具有“出库”,“上架”,“售出”的时序关系。JSD方法要求对实体的诸多活动进行分析,以确定出实体各活动的时序关系,并通过实体结构图来反映实体活动之间的时序关系。实体结构图反映客观世界中各实体中各个活动之间的时序关系。每一个实体都有一幅实体结构图,整个系统就构成一个实体结构图集。
图3.16是“售货员”和“顾客”的实体结构图。在“售货员”实体中的“上班”、“售货”和“下班”三个活动是顺序的,而在上班期问可以有多次“售货”活动。每一次“售货”活动,又包括“取商品”、“收款”和“售出商品”三个顺序的活动新用户注册送59体验金 - 移动版?!肮丝汀笔堤灏ā把≡裆唐贰?、“付款”和“领取商品”三个顺序的活动。
3.建立进程模型
“实体活动分析”和“实体结构分析”用来发现现实世界中所存在的实体及实体的活动新用户注册送59体验金 - 移动版,并用实体结构图描述实体的诸活动之间的时序关系。这两步工作是立足于现实世界新用户注册送59体验金 - 移动版,对现实世界的抽象描述。软件系统开发不能仅仅停留在对现实世界的抽象描述上,需要在现实世界的基础上新用户注册送59体验金 - 移动版,建立系统的逻辑模型,然后对系统逻辑模型进行进一步细化和优化新用户注册送59体验金 - 移动版,最后变为可实现的程序新用户注册送59体验金 - 移动版,JSD方法的系统逻辑模型称为进程模型。
进程是在系统中由一组有序活动构成的活动体。例如,在商店管理系统中新用户注册送59体验金 - 移动版,商店有“顾客”实体,该实体有“选择商品”、“付款”和“领取商品”三个活动新用户注册送59体验金 - 移动版。在系统中新用户注册送59体验金 - 移动版,就可以对应设置一个“顾客”进程新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,该进程也对应有“选择商品”、“付款”和“领取商品”活动新用户注册送59体验金 - 移动版。但“顾客”实体和“顾客”进程有本质的区别,前者是现实世界中的事物,后者则是软件系统中的构成要素新用户注册送59体验金 - 移动版,后者是根据前者而设置的新用户注册送59体验金 - 移动版。
进程模型是用系统规格说明图来抽象描述系统的构成、框架、活动和与外界联系的系统模型新用户注册送59体验金 - 移动版。系统规格说明图(systemspecificationdiagram,SSD)描述进程与进程之间的数据通信关系新用户注册送59体验金 - 移动版。系统规格说明图由实体、进程、数据流和状态向量几部分构成新用户注册送59体验金 - 移动版。
带复线的矩形框表示客观现实中的实体,矩形框表示进程,圆圈表示数据流,菱形框表示状态向量新用户注册送59体验金 - 移动版?!笆刍踉?”是客观世界中的一个实体新用户注册送59体验金 - 移动版,“售货员1”是系统中的一个进程,AD是由实体“售货员0”发给进程“售货员1”的数据流。数据流反映实体与进程以及进程相互之间的数据通信关系,它相当于一个先进先出的缓冲数据通道。进程之间的联系除了数据流之外新用户注册送59体验金 - 移动版,还可以通过状态向量连接新用户注册送59体验金 - 移动版。菱形框表示状态向量,状态向量通过状态向量的值来表示实体或进程的某种状态,当实体或进程的状态发生变化,状态向量的值就改变新用户注册送59体验金 - 移动版。
图3—17中反映出“售货员”和“顾客”两个实体向系统中的“售货员”和“顾客”两个进程发送数据流。售货员和顾客在日常工作中必然要把他们的工作数据传送给系统。系统中的“商品”进程在不同时间具有不同的状态新用户注册送59体验金 - 移动版,如“库存”、“货架”、“出售”、“售出”等?!吧唐贰弊刺ü刺蛄糠从吵隼葱掠没ё⒉崴?9体验金 - 移动版?!笆刍踉薄焙汀肮丝汀绷礁鼋炭梢圆檠吧唐贰钡淖刺蛄?,以了解商品的状态。
在SSD图中,实体和进程之间的关系反映了系统外部和系统之间的数据关系,这些关系将是下一步人机界面设计的依据。
4.结构文本
JSD方法采用结构文本描述SSD图中的各进程的内部细节。

1.3.3设计阶段
设计阶段的任务是在初始模型的基础上增加系统的功能和时序限制,使进程模型具体化新用户注册送59体验金 - 移动版。
1.确定系统功能
上面所确定的进程模型,只反映了系统的实体、进程和相互之间的通信关系,结构文本也只描述了进程对应实体的活动过程新用户注册送59体验金 - 移动版,没有反映系统的输入、输出和例外特殊处理。这个步骤的任务就是向进程模型中增加输入、输出和例外处理等功能。
从图3.17的SSD中可以看到,“售货员1”进程的输入是实体“售货员0”的数据流AD和“商品”进程的状态向量SV。AD数据流所包括的输入数据有:上班的注册数据、商品收款数据、商品售出数据和下班注销数据等新用户注册送59体验金 - 移动版。这些数据都是由售货员实体实际输入到系统之中的。SV是商品的状态向量新用户注册送59体验金 - 移动版,反映商品当前所处的状态,“售货员”进程需要随时查询SV,以了解商品当前所处的状态。
“售货员1”和“顾客1”要通过状态向量SV了解“商品”当前所处的状态新用户注册送59体验金 - 移动版,所以“商品”进程每一个活动之后,都应该改变SV的值。对“商品”进程的结构文本增加输出功能,见图3—19新用户注册送59体验金 - 移动版。
除了考虑输入输出功能之外,还需要考虑特殊处理,如出错报告、信息查询、状态报告等功能新用户注册送59体验金 - 移动版。例如顾客在选购商品时可能需要了解商品的性能、同种商品的性能价格的比较信息等。再比如新用户注册送59体验金 - 移动版,当货架上的商品出售完后新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,需要及时打印商品缺货清单新用户注册送59体验金 - 移动版,以便从库房领取商品。这些功能都应该在结构文本中反映出来。
COMMODITYseq商品
OUT—STOREHOUSE:出库;
Save1toSV;1表示商品已出库;
TAKE.FRAME;上架;
Save2toSV新用户注册送59体验金 - 移动版;2表示商品已上架;
CHARGE.ACCOUNT;登账;
Save3toSV;3表示商品已登账;
SELLED—COMMODITY;售出:
Save4toSV;4表示商品已售出;
COMMODITYend商品结束
图3—19“商品”进程增加设置状态值后的结构文本
2.确定系统定时关系
系统有确定的定时要求新用户注册送59体验金 - 移动版。顾客向售货员提出选购商品的要求新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,一般要求售货员在几秒之内能够予以应答和处理,如果等待几分钟或十几分钟,顾客可能会对商店的服务产生意见新用户注册送59体验金 - 移动版。所以,要求系统从性能上应能够满足售货的要求。不同的系统具有不同的定时要求。实时控制一般需要在毫秒级对需求做出响应,而一般的事务处理在秒级或分级响应便可以满足要求新用户注册送59体验金 - 移动版。

1.3.4实现阶段
实现阶段的任务是在具体的系统环境下实现所要开发的系统。实现阶段要解决的主要问题有以下几个方面:
·系统软硬件环境新用户注册送59体验金 - 移动版。
·进程的分配和调度。
·系统变换。
·得出程序结构图。
·系统的细化和优化新用户注册送59体验金 - 移动版。
·生成系统程序。
下面我们逐一讨论这些工作。
1.确定系统的软硬件环境
设计阶段主要依据应用需求和输入输出而从事的设计工作,没有考虑系统实现的具体环境。在实现阶段需要确定系统的软硬件环境。
2.进程分配和调度
在SSD图中,一个进程是一个独立的执行单位,多个进程是并行执行的,因此,把一个进程分配在一个处理机上是最理想的分配方式。但是在实际系统中,一般不可能给每个进程分配一个独立的处理机,而是多个进程共享一个处理机。为了协调处理机上的多个进程的运行,系统需要设置一个调度进程,由调度进程在处理机上安排和协调多个进程的运行。
3.系统变换
确定了调度进程之后,第三步工作是进行系统变换,由SSD图变换成为SID(systemimplementdiagram)系统实现图。需要做以下工作:
(1)把SSD图中的进程分配给不同的处理机新用户注册送59体验金 - 移动版,一个处理机上可能有一个或多个进程,一个处理机对应一个SID图。
(2)在一个SID图中设置一个调度进程,并把该调度进程作为核心进程新用户注册送59体验金 - 移动版。
(3)分配给该处理机的进程,在SID图中作为调度进程的子进程。
(4)数据流作为进程之间传递的数据参数或进程之间数据交换的缓冲区。
(5)状态向量变换成为记录文件或数据库,能够按照索引进程方便查询新用户注册送59体验金 - 移动版。
4.得出程序结构图
Jackson程序设计方法的基本N,想是Eh数据结构变换成为系统的程序结构。本步由SID图生成为系统的程序结构图。
5.系统细化和优化
对程序结构图做进一步的细化和优化。
6.生成程序
根据程序结构图,编写计算机程序,并进行调试,得出可运行的软件。

1.4面向对象方法
1.4.1概述
面向对象技术是近二十年来计算机科学与技术领域最具影响的技术之一,它已经深入到了软件工程、计算机应用技术、计算机体系结构、人工智能等许多计算机学科领域。例如,分布对象技术和对象存储技术就是面向对象思想在分布式计算和分布式系统领域中的应用。
在面向对象方法中的对象指客观世界中的各种事物。面向对象方法的思想就是在软件开发中,直接面向问题领域中的客观事物新用户注册送59体验金 - 移动版,并运用一整套诸如对象、类、封装新用户注册送59体验金 - 移动版、继承、对象连接、对象结构、消息等机制,指导软件开发新用户注册送59体验金 - 移动版。因此,面向对象方法是用面向对象的思想指导软件开发的规范化软件开发方法。
由于面向对象方法直接面向客观问题,因此新用户注册送59体验金 - 移动版,较之于其他方法,面向对象更接近于问题域实际,更简单、更易于理解和掌握。在计算机技术发展过程中新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,曾经出现过面向功能和面向数据的方法,但人们经过正反经验的总结和理性的思考,开始认识到在系统开发过程中新用户注册送59体验金 - 移动版,直接面向客观问题领域才是最根本、最直接新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、最正确的方法。因此,有人认为面向对象的方法是人类认识事物的一个返璞归真的过程,是在几十年系统开发道路上辛苦探索之后对正途的回归新用户注册送59体验金 - 移动版。面向对象方法已经成为被大家普遍接受的新用户注册送59体验金 - 移动版,应用前景广阔的软件开发方法。

1.4.2面向对象方法的基本概念本节介绍面向对象方法的基本概念,描述规则符合IM,规范。
1.对象和类
(1)对象的概念
对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和操作组成。对象既可以描述客观存在的事物,也可以表示由人主观构造的抽象概念。对象的属性描述它所反映的客观事物的静态性质,对象的操作描述客观事物的动态性质。对象是系统中一个独立实体。例如,一张桌子、一辆汽车、一个学生等都是对象新用户注册送59体验金 - 移动版。
(2)类的概念
类用来描述具有相同性质的一组对象新用户注册送59体验金 - 移动版。例如,桌子就是一个类新用户注册送59体验金 - 移动版,所有桌子都具有桌子的性质,都属于这个类中的对象新用户注册送59体验金 - 移动版。实际上客观中的所有概念都可以认为是类新用户注册送59体验金 - 移动版,因为概念总是表示一组具有相同性质的事物。例如,桌子新用户注册送59体验金 - 移动版、汽车、学生等都是类。
(3)类的表示
类可以有抽象表示、简化表示和规范表示等多种形式新用户注册送59体验金 - 移动版。
①类的抽象表示
类在概念层次上采用抽象表示形式,可分为边界类、控制类和实体类三种类型,见图3—22。
实体类用来表示客观实体。像“图书”新用户注册送59体验金 - 移动版、“学生”新用户注册送59体验金 - 移动版、“书单”等都属于实体类新用户注册送59体验金 - 移动版。边界类表示外界与系统之间交互的抽象实体??刂评啾硎鞠低扯云渌韵笫凳┬鞔?、逻辑运算的抽象实体。
②类的简化表示
类的简化表示用矩形来描述一个类新用户注册送59体验金 - 移动版,只填写类名,不表示类的属性和操作信息。在类图中仅需要反映类的抽象结构,而不需要反映类的内部细节时,对类采用简化表示形式新用户注册送59体验金 - 移动版,见图3—23。
③类的规范表示
规范表示是类的一般表示形式新用户注册送59体验金 - 移动版,要描述类的名称、类的属性和操作等信息,见图3—24新用户注册送59体验金 - 移动版。
(4)属性
①属性的概念
属性一般表示实体的特性或特征新用户注册送59体验金 - 移动版。在面向对象方法中,属性用来表示对象的静态特性新用户注册送59体验金 - 移动版。每一个属性中的具体值称为属性值。对“人”这个对象来说新用户注册送59体验金 - 移动版,姓名、性别、出生年月、家庭住址、电话、体重新用户注册送59体验金 - 移动版、身高新用户注册送59体验金 - 移动版、血型、性格新用户注册送59体验金 - 移动版、爱好新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、职业、毕业院校、所学专业都是该对象的属性。赵晓,男,1966.10.12,西安石油大学11楼103号,8216381,63公斤等则是属性值。
②属性的描述
一般在类中仅给出属性名。属性的完整描述形式为:
可视性属性名[范围]:类型=值
·属性名:用字符串表示。如果用英文字符串,首字符用小写。例如新用户注册送59体验金 - 移动版,name,studentSex。
类型为属性值所取的数据类型,一般有整型、实型新用户注册送59体验金 - 移动版、字符型、布尔型、日期型等。
等号后面如果有值,表示赋予新建立对象本属性的初始值。例如,性别:String=男。
·可视性:一般放在属性前面新用户注册送59体验金 - 移动版,表示该属性可以被其他对象访问的受限性??墒有砸?br /> 般分为三种形式新用户注册送59体验金 - 移动版。
+:公用(public),表示该属性可以被其他外部对象访问新用户注册送59体验金 - 移动版。
#:毙掠没ё⒉崴?9体验金 - 移动版;?protected),表示该属性仅能被本类以及所有子类的对象访问。
-:私有(private),表示该属性不能被其他对象访问。
·范围:为可选项,指出本属性取值的范围或可选的值。例如,0··*,1··7等。
(5)操作
操作用来表示对象的行为或动态特性新用户注册送59体验金 - 移动版。操作的一般描述形式为:
可视性操作名(参数列表):返回列表例如,
#openfile(fileID:Number)其中,
·操作名:用字符串表示新用户注册送59体验金 - 移动版。如果用英文字符串,首字符用小写。
·参数列表:为可选项新用户注册送59体验金 - 移动版。参数之间用逗号隔开新用户注册送59体验金 - 移动版。
·可视性:含义与属性中的可视性含义相同。

2.类的关联
(1)关联的概念
关联本指事物之问存在的固有的牵连关系新用户注册送59体验金 - 移动版。在面向对象方法中新用户注册送59体验金 - 移动版,关联是对具有共同结构特征、关系和语义的链接描述。例如,“张老师”给“计2002—1班”上课?!敖淌Α崩嘀械亩韵蟆罢爬鲜Α本秃汀鞍嗉丁崩嘀械亩韵蟆凹?002.1班”之间存在链接关系。关联是对对象之间链接关系的一种抽象称谓。
(2)关联的要素
类之间通过一条连线表示关联新用户注册送59体验金 - 移动版。例如,在图3.25中,“公司”与“职员”之间存在雇佣的关联关系。关联关系涉及多个关联的要素。
①关联名
关联名就是关联的名称,表示两个类之间存在的具体的关联关系。关联名标在关联关系的上方新用户注册送59体验金 - 移动版。例如,图3.25关联的表示图3—25中,“公司”与“职员”之间存在“雇佣”的关联关系新用户注册送59体验金 - 移动版。如果两个类之间的关联关系十分清楚新用户注册送59体验金 - 移动版,可以省略关联名新用户注册送59体验金 - 移动版。例如,“教师”和“学生”之间存在“教学”关联关系,因为这个关系十分明确,就可以省略“教学”关联名。
②关联的角色
角色是类参与关联的特征。例如新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,“公司”与“职员”之问的“雇佣”关联关系中,“公司”在关联中承敌掠没ё⒉崴?9体验金 - 移动版!肮椭鳌钡慕巧?,而“职员”承?!肮驮薄钡慕巧掠没ё⒉崴?9体验金 - 移动版。在关联关系中,如果角色名和类名相同,可以省略角色名。例如,“教师”和“学生”之间的教学关联关系新用户注册送59体验金 - 移动版,“教师”和“学生”在关联中的角色名也就是它的类名,可以在表示时省略角色名。
③关联的多重性
多重性描述关联中对象之间的链接数目。
④导航
导航表示关联的链接方向,用箭头来表示。一个类到另外一个类存在导航关系新用户注册送59体验金 - 移动版,表示从源类中的一个对象可以直接找到与该对象存在链接关系的目标类中对应对象。在关联线上标有一个箭头表示单向导航,两个箭头表示双向导航,不标箭头表示双向导航或导航关系还没有确定。例如,图3.25中“职员”到“公司”之间存在单向导航关系。
⑤关联类
在关联关系中,有时类和类之间的关联信息需要通过类的形式表现出来,用来表示关联信息的类被称为关联类新用户注册送59体验金 - 移动版。例如,图3—25中,“公司”与“职员”之间存在雇佣关联关系,而雇佣关系中的雇佣期、雇佣协定等信息是雇佣关联信息,把这些信息通过“雇佣”关联类描述出来。
(3)关联的种类
根据参与关联的类的数目,可以把关联划分成为一元关联新用户注册送59体验金 - 移动版、二元关联和多元关联三种类型新用户注册送59体验金 - 移动版。
①一元关联
一元关联表示一个类中的不同对象或同一对象之间存在的链接关系新用户注册送59体验金 - 移动版,也称为自返关联。例如,图3—27中“学生”类中存在班长对其他学生管理的关联关系,“教师”类中存在系主任对一般教师领导的关联关系新用户注册送59体验金 - 移动版。
②二元关联
两个类之间存在的关联关系。
③多元关联
三个或三个以上类之间存在关联关系时,称为多元关联。多元关联用菱形符号连接相互关联的类新用户注册送59体验金 - 移动版。
由部分构成整体的组成关系是客观世界事物之间普遍存在的一种基本关系。例如,计算机由主机、键盘、显示器新用户注册送59体验金 - 移动版、打印机等部件组成新用户注册送59体验金 - 移动版,汽车由发动机新用户注册送59体验金 - 移动版、车轮、车厢新用户注册送59体验金 - 移动版、驾驶室等部分构成。面向对象方法用聚合和组合来描述事物的类之间的组成关系。组成关系是关联关系的一种特例新用户注册送59体验金 - 移动版。
(1)聚合
聚合表示多个部分以聚集的方式构成整体。聚合表示事物之问相对松散的组成关系,在没有整体时,部分也可能存在,但这个时间部分的存在并不是以整体的部分的身份而存在的新用户注册送59体验金 - 移动版,而是可能作为一个独立整体而存在,也可能作为另外一个整体的部分存在。例如新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,班级是由学生聚合而成的,但是如果新招来的学生还没有编排班级,学生仍然是存在的。
聚合由关联线在整体端增Dnd,空心菱形来表示。
(2)组合
组合表示整体与部分同存同亡的紧密组成关系新用户注册送59体验金 - 移动版。部分因整体而存在,如果整体不存在,部分就没有存在的必要。例如新用户注册送59体验金 - 移动版,人与心脏之间就是组合关系新用户注册送59体验金 - 移动版。心脏这个部分是因人这个整体而存在的新用户注册送59体验金 - 移动版,如果没有人新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,心脏也就没有存在的意义。

4.泛化与继承
(1)泛化的概念
泛化具有抽象、概括和超越的含义。泛化指抽取事物的共性特征,形成超越特殊事物而具有普遍意义的一般事物的方法。泛化反映事物之间的特殊与一般关系。例如新用户注册送59体验金 - 移动版,“家具”是对“桌子”、“椅子”、“沙发”等特殊事物的泛化新用户注册送59体验金 - 移动版?!敖煌üぞ摺笔嵌浴捌怠?新用户注册送59体验金 - 移动版、“轮船”和“飞机”等事物的泛化新用户注册送59体验金 - 移动版。
在泛化关系中,把表示一般特性的实体称为超类,把表示特殊特性的实体称为子类。
泛化与继承描述事物的同一种关系。继承是一类事物拥有或承接另一类事物的某些特性新用户注册送59体验金 - 移动版,成为自己所具有的特性。这样新用户注册送59体验金 - 移动版,这类事物除了具有自己独特特性之外,还具有所承接的另一事物的特性。这类事物属于具有特殊特性的事物新用户注册送59体验金 - 移动版,而具有被承接的特性的那类事物肯定属于具有一般特性的事物新用户注册送59体验金 - 移动版。
(2)泛化的表示
泛化用三角符号表示,三角符号指向超类,表示对子类的泛化。

5.依赖
(1)依赖关系的含义
依赖表示两个实体之间的因果关系,指一个实体的变化必然影响到所依赖的另外一个实体新用户注册送59体验金 - 移动版。例如,在教学管理系统中,课表依赖于课程,课程发生改变,课表也必须跟着改变新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。任课教师依赖于课表,课表改变,任课教师上课就要调整。任课教师依赖课表,课表依赖课程。

6.封装
在面向对象方法中新用户注册送59体验金 - 移动版,封装(encapsulation)是通过隐藏内部细节,使得对象成为相对独立的系统单位的一种机制。在面向对象方法中封装是对对象实施的封装。把对象中的属性和操作紧密地结合在一起,使对象形成一个相对独立的系统单位新用户注册送59体验金 - 移动版。通过封装将把对象中的属性和操作等细节隐藏在对象内部,而只把对象需要向外部提供的特性以接口的形式提供给外部。
封装是抽象原则的体现。通过封装抽象出系统中所有对象的外在特性新用户注册送59体验金 - 移动版,并通过各个对象的接口表现出来,而隐藏了所有对象的内部细节,使系统在对象层次上的特性进一步清晰、简化。封装隔离了各个对象的内部细节,排除了对象之间所存在的不必要联系,简化了系统之间的接口,使对象内部问题局部化,排除了因一个对象的局部问题而影响和蔓延到其他对象的问题新用户注册送59体验金 - 移动版,限制了问题的扩散和传播新用户注册送59体验金 - 移动版。封装性也提高了系统的适应性。细节被封装在对象的内部,只要对象的对外接口不发生改变,则对象的内部细节发生任何改变新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版,均不会影响对象与其他对象的联系。在不改变对象接口的前提下,我们对对象内部方法的优化,对对象内部适应性的改变都不会影响系统。

7.消息
事物之间存在着广泛的动态联系。在面向对象方法中新用户注册送59体验金 - 移动版,对象也存在着大量的动态联系。一些复杂的系统功能和业务流程,需要多个对象相互配合来完成新用户注册送59体验金 - 移动版。一个对象在执行一个操作的过程中,可能需要启动另外一个对象的操作新用户注册送59体验金 - 移动版。消息是一个对象向其他对象发出的操作请求。面向对象方法通过消息机制来实现对象与对象之间的动态联系。
为了实现对象之间的操作请求,一个消息应该包括:提供操作的对象新用户注册送59体验金 - 移动版、操作、输入信息、应答信息。完整的消息内容还应该包括发出消息的对象,但面向对象方法中的消息机制能够隐含提供和识别发出消息的对象新用户注册送59体验金 - 移动版,因此在消息中不需要显式地提供这条信息新用户注册送59体验金 - 移动版。
通常我们把发出消息的对象称为发送者或发送对象,把接收消息的对象称为接收者或接收对象。发送对象在发出一个消息之前首先要生成所要发送的消息新用户注册送59体验金 - 移动版。按照要求,在消息中应该包括接收对象、要启动的操作、操作所要求的输入信息新用户注册送59体验金 - 移动版、返回信息等新用户注册送59体验金 - 移动版。

本章小结
服装营销软件工程方法包括软件开发方法、软件管理方法、软件度量方法和软件环境方法等新用户注册送59体验金 - 移动版。软件工程方法可以从多个方面进行分类。软件工程基础方法包括分析方法、综合方法、关联方法、抽象方法新用户注册送59体验金 - 移动版、模型方法、分类方法、系统方法、集成方法等,较有影响的软件工程一般方法有面向功能方法、面向数据方法和面向对象方法新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版。
结构化方法是面向功能方法的典型代表,它是在结构化程序设计的基础上发展起来的,遵循系统工程的思想新用户注册送59体验金 - 移动版,充分考虑用户需求,遵循软件生命周期,突出软件各部分之间的结构关系的一类开发软件的全局方法。结构化方法由结构化分析、结构化设计和结构化多编程三部分构成。JSD方法是面向数据方法的代表,它是在JSP方法的基础上发展起来的一种面向数据结构的软件开发方法。JSD方法把软件开发划分为建模新用户注册送59体验金 - 移动版新用户注册送59体验金 - 移动版、设计和实现三个阶段,共包括实体活动分析、实体结构分析、建立进程模型、确定系统功能、确定系统时序和系统实现六个步骤新用户注册送59体验金 - 移动版。对象指客观世界中的各种事物,面向对象方法是在软件开发中,直接面向问题领域中的客观事物,并运用一套诸如对象、类、封装、继承等机制,指导软件开发的一套系统方法。面向对象方法是目前被普遍采用的服装营销软件开发方法新用户注册送59体验金 - 移动版。

文章来源:秘奥软件网,中小企业信息化领跑者!全国咨询热线:400-9908-527_www.greenabellacavaliers.com

最新新闻:
新用户注册送59体验金 - 移动版 <acronym id="moiky"></acronym>
<rt id="moiky"><center id="moiky"></center></rt>
<rt id="moiky"><small id="moiky"></small></rt>
<rt id="moiky"><small id="moiky"></small></rt>
<rt id="moiky"></rt>
<rt id="moiky"></rt>