第一篇:系统分析与设计复习要点
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.可行性研究报告一般涉及哪些内容? 用例图的要素有哪些? 顺序图的特点? 简单介绍总体设计、详细设计涉及的主要工作。方案建议书一般涉及哪些内容? 黑盒测试和白盒测试各自的特点是什么? 什么是HIPO图,它的作用什么? 简单介绍总体设计、详细设计涉及的主要工作 在结构化系统分析中数据字典的作用是什么? 软件生命周期的瀑布模型包含哪些阶段? 系统开发生命周期中“系统分析与设计”的重要性。什么是UML?三种表示形式是什么? 类图中定义了四种关系? 在结构化分析方法中,使用的主要工具有哪些? 封装是面向对象方法的一个重要原则,封装有两个含义是什么? 电子商务应用软件三层是哪些层? 项目管理过程中安排项目进度常用的工具有哪些图? 系统规划阶段的成果主要有哪些? 系统开发生命周期将系统开发过程分为5个阶段,分别是是什么? 交互图可分为哪两种,其特点是什么? 画出客户使用ATM的用例图。
每个银行用户都拥有自己的账户,而账户又分为人民币账户和美元账户,请画出以上提到的“账户”、“人民币账户”和“美元账户”的类图,并标出三者之间的关系。其中,“账户”的属性包括:1)账号:string;2)余额:double;3)身份证号:string。其中“账号”和“余额”为Private,“身份证号”为Public。
22.首次购买基金的描述,画出相应的活动图。
客户来到银行,柜员首先判断该客户是否有该行的“综存账户”;
如果没有“综存账户”,则由用户提出申请,然后柜员协助办理“综存账户”,“综存账户”开通后需要往账户中存入一定额度的现金,接下来需要该客户填写“风险容忍度测试表”,在客户填写该表的过程中,理财专员帮助客户“申办基金账户”;
如果客户本来就有“综存账户”,则该客户直接填写“风险容忍度测试表”,在客户填写该表的过程中,理财专员帮助客户“申办基金账户”;
主管审核,通过审核则该段流程结束,否则返回给理财专员。
A.对于并行的流程可以采用分叉与汇合表示?B.利用泳道区分不同的对象?
23.根据下列描述画出该用例图
某电子商务网站的用户要“查询订单状态”,在查询之前必须进行“用户合法性检查”,“用户合法性检查”有两种途径,一种是“通过密码验证”,另一种是“通过手机短信验证”; 用户如果想“下订单”也必须先进行“用户合法性检查”;
“下订单”还包括一种特殊情况,即“下加急订单”。
24.大雁是群居动物,每只大雁都属于一个“雁群”,一个“雁群”可以有多只“大雁”,用类图表示“大雁”和“雁群”这两个类的关系。“雁群”这个类的属性包括“大雁数量:int”和“过冬地点:string”,类的方法有“V字形飞行”和“一字形飞行”。“大雁”这个类的属性包括“大雁体重:float”和“大雁性别:bit”,类的方法有“下蛋”和“飞行”。
第二篇:系统分析与设计复习总结
第一章
系统分析员:使用信息技术的商业专业人员,利用分析与设计技术解决商业问题。需要具备的基本知识与技能:1.技术知识与技能
2.商业知识与技能
3.人的知识与技能
4.诚实与道德
系统分析员在系统开发中的职责范围:程序分析员、商业系统分析员、系统联络员、最终用户分析员、商业顾问、系统顾问、系统支持分析员、系统设计师、软件工程师、系统结构设计师。
第二章
系统开发生命周期的阶段划分:项目计划阶段、分析阶段、设计阶段、实施阶段、支持阶段。项目计划阶段、分析阶段、设计阶段的主要活动
1.项目计划阶段:定义问题、确认项目的可行性、制定项目的进度表、为项目安排人员、启动项目
2.分析阶段:收集信息、确定系统需求、建立需求发现的原型、划分需求的优先级、产生并评估可替换方案、与管理人员一起审查建议
3.设计阶段:设计并集成网络、设计应用程序结构、设计用户界面、设计系统界面、设计并集成数据库、设计细节的原型化、设计并集成系统控制 项目开发队伍的人员组成(图2-4 系统开发项目的参加人员)
在项目计划阶段,项目组仅由少数人员组成,基本上包括一个项目经理和一两个有经验的系统分析员。
分析阶段要求项目组成员有良好的分析技能和扎实的问题域知识。设计是较专业化的活动,需要补充有专业技术的人员。在实施阶段,通常增加许多编程人员和质量控制人员,项目组在实施阶段通常是最大的。项目可行性分析的要素:
1.经济可行性
2.组织上和文化上的可行性 3.技术可行性 4.进度表可行性 5.资源可行性
PERT/CPM:基于单个任务或活动对项目进行规划的一种方法。
图 2-15 客户支持项目的部分PERT图
甘特(Gantt)图:以条形图代表项目进度表的任务和活动。
图2-16 客户支持项目的甘特图
第三章:方法、技术、模型、工具以及它们之间的相互关系
系统开发方法:提供完成系统开发生命周期每一步的详细指导,包括具体的模型、工具和技术。
技术:帮助分析员完成系统开发活动或任务的一组方法。模型:现实世界某些重要方面的表示。
工具:帮助生成项目中所需模型或其他组建的软件支持。相互关系:图3-4 方法中个组件之间的关系 结构化方法与面向对象方法的比较
图3-5 结构化编程的三种结构:顺序结构、选择结构、循环结构。
第四章
需求调查的对象:
用户,即每天实际使用系统的人; 客户,即支付和拥有系统的人;
技术人员,即确保系统在组织的计算机环境下运行的人。需求调查的方法:
向系统相关者分发和收集调查表 复查现有的报表、表格和过程描述 主持与用户的面谈和讨论 观察商业过程和工作流 建立原型
主持联合应用程序社街(JAD)会议 需求调查的结果
系统需求:系统所提供功能的详细定义。
功能需求:描述系统必须支持的功能和过程的系统需求。技术需求:描述操作系统环境和性能目标的系统需求。通常把系统需求分为两类:功能需求和技术需求。功能需求用于说明新系统必须支持的基本商业功能,而技术需求则包括系统性能目标、操作环境以及其他非功能性问题。
第五 – 七章:系统分析
模型的分类:包括数学模型、描述模型和原图模型。
数学模型:描述系统技术方面的一系列公式,用来表示系统精确的方面,这些部分最适合用公式或数学符号表示。
描述模型:描述系统某一方面的描述性的备忘录,报表或列表。图形模型:图表和系统某些方面的示意性表示。图形模型有助于理解那些很难用语言来描述的复杂关系。
事件的分类:外部事件,临时事件和状态事件。
外部事件:系统之外发生的事件,通常都是由外部实体或动作参与者触发的。临时事件:由于到达某一时刻所发生的事件。
状态事件:当系统内部发生了需要处理的情况时所引发的事件。事件表:以各个事件为行,各个事件的关键信息为列。图5-15 事物之间的关联关系:只能一个(强制)、0或多个(可选)、1或多个(强制)0或1个(可选)
图 5-21 图5-22 关系的基数符号
实体-联系图:传统的系统开发方法都把重点集中在新系统的数据存储需求上。数据存储需求包括数据实体、数据实体的属性以及它们之间的关系。用来定义数据存储需求的模型被称为实体-联系图(ERD)。
图 5-21 一个简单的实体-联系图
图 5-22 关系的基数符号
图 5-23 显示了属性的扩展ERD图
图 5-25 大学课程注册ERD图(含有多对多关系)图 5-26 细化的大学课程注册ERD图(包含关联实体)
图 5-27 RMO客户支持系统的实体-联系图(ERD)(图中未显示有关属性)图 5-31 类图符号 图 5-32 银行账目类图
图 5-33 落基山运动用品商店类图 数据流程图:是一种图形化的系统模型,它在一张图中展示信息系统的主要需求,即:输入、输出、过程和数据存储。
外部实体:在系统边界之外的个人或组织,它提供数据输入或接受数据输出。过程:在DFD中的一个符号,它代表从数据输入转换到数据输出的算法或程序。数据流:在DFD中的箭头,它表示在过程、数据存储和外部实体之间的数据移动。数据存储:保存数据的地方,以便将来由一个或多个过程来访问这些数据。图6-2 数据流程图的符号
关联图:是指描述系统最高层结构的DFD。
图 6-5 大学课程注册系统的关联图
DFD片段:用一个过程符号表示系统响应一个时间的DFD。
图 6-7 课程注册系统的DFD片段
决策表:一种处理逻辑的表格表示方法,其中包括决策变量、决策变量值、参与者或公式。
图 6-22 计算运输费用决策表
决策树:使用像树枝一样的线条对过程逻辑进行图形化的描述。
图 6-23 计算运输费用决策树
数据流定义:数据流内容和内部结构的文本描述。
数据流是数据元素的集合,所以数据流定义将列出所有的数据元素。
第七章 面向对象的需求描述
类图、用例图、顺序图、协作图、状态图
当我们讨论系统开发的时候,通常把系对新系统的描述分成两部分:结构化信息和行为化信息。系统的组成部分我们称之为结构,而这些组成部分的执行逻辑我们称之为行为。
类图提供了对系统组成部分的定义,而其它图,即用例图、顺序图、协作图和状态图,这些图的重点都集中在系统所完成的活动上。换句话说,它们描述的是新系统的行为方面。
因此,类图说明系统的组成部分是什么,而其他图说明这些组成部分干什么。类图:
用例图:一种用以显示不同的用户角色和这些用户角色如何来使用系统的图。
用例图的目的是识别新系统的“使用”,或用例,换句话说,就是识别如何使用系统。用例图本质上是事件表的延伸。用例图是一个记录系统必须支持功能的简便方法。顺序图:一种用以显示用例对象之间消息顺序的图。
顺序图更详细地显示了协作图中所表达的信息,只是显示方式有些差异。顺序图以图形化的方式强调消息间的顺序,而非协作对象。画顺序图的目的是用过在页面上标出位置来图形化地表示消息的顺序。执行次序从上到下执行。
协作图:一种用以显示对象如何被协调在一起以执行用例的图。
消息:用例内部的对象之间的通信。
协作图的目的是识别协作完成给定业务功能的对象。比如说,一个RMO的系统的商业用途之一是“记录客户订单”,那么协作表将会识别所有涉及到的对象。为了记录客户订单需要一个客户对象,一些库存对象和一个新订单对象等。一个独立的协作图用以识别对象,并展示这些对象的相互作用及对象之间发送的用于执行功能的消息。
交互图:显示对象之间交互的图,它或者是一个协作图,或者是一个顺序图。
协作图和顺序图统称交互图。
状态图:一种用以现实对象在各个阶段中的生命和转换的情况的图。
最后一种被用来描述应用需求的图称状态图。一个状态图表(或简单地称之为状态图)描述了每个对象的状态和行为。每一个对象类都含有一个状态图表。在状态图的内部是动作描述,这些动作描述在最终的系统中都变成了逻辑。每个类中的逻辑组件称为方法。
OO需求=事件表+类图+用例图+顺序图+协作图+状态图表。7.4 系统行为:面向对象的用例/场景视图
用例:由系统为使用给系统的用户完成的一个单一用途或功能。参与者:系统用户扮演的一个角色。
图 7-2 有一个参与者的简单用例
场景:在用例中活动的一个特定顺序;一个用例有可能有多个不同的场景。
图 7-4 带系统边界的用例图
图 7-5 客户支持系统用例图举例(通过子系统)图 7-6 与客户相关的所有用例 图 7-7 《包含》用例的一个例子 7.5 对象交互:顺序图与协作图
协作图和顺序图包含有相同的信息,但它们的侧重点稍有不同。协作图强调对象交织在一起以支持一个用例,而顺序图把重点放在消息本身的细节上。
顺序图展示对象之间的交互顺序,这些交互是指在场景或用例的事件流中发生的。在顺序图中共有四个基本符号:
1.参与者符号,由一个小人图形表示;
2.对象符号,由一个名字带下划线的方框表示;
3.生命线符号,由虚线或狭窄的竖直方框表示;
4.消息符号,由带消息描述的方向箭头表示。
图7-9 顺序图的符号 图7-10 对象和类名
生命线:在顺序图中的一个对象下面的竖线,用以显示这个对象的时间阶段。激活生命线:在顺序图中的垂直窄长方框,用以强调一个对象只有在一个场景的部分中处于活动状态。消息:由于面向对象系统通过每个对象向其他对象发送消息来工作,因此在一个场景内由事件流定义的内部事件就变成了在对象和参与者或其他对象之间的消息。
消息符号由两部分组成:方向箭头和消息描述器。消息描述器的语法如下:
[true/false条件] 返回值:= 消息名(参数列表)
True/false条件用于验证这个消息是否可以发送。它象一个决定点或程序余亚种的if语句。如果这个条件计算后返回true,则发送这个消息,否则不发送。
消息是从一个参与者或对象向另一个参与者或对象的需求。开发顺序图的一个有效方法及其步骤如下:
1.识别出所有与场景有关的对象和参与者。只使用在用例图中表示过的参与者,只适用在类图中标识过的对象。
2.基于活动流,识别出每一个需要用于完成场景的消息。同时标识消息的源对象或参与者和目的对象或参与者。
3.下一步决定每一个消息是总发送还是有条件的发送。
4.正确地为这些消息排序并给它们加上合适的参与者或对象生命线。5.给消息加上形式化的语法以描述条件、消息名和要传递的参数。6.如果你愿意,加上响应消息和通信以使顺序图完整。图 7-12 “查询可用项目”的顺序图
图 7-13 “创建新订单”用例的电话订购场景顺序图 协作图:
协作图主要应用是快速浏览相互协作、用来支持一个特定场景的所有对象。协作图的参与者、对象和消息都使用了顺序图中的符号。生命线的符号没有使用,但是,也使用了一个不同的符号:链接符号。
图7-14在一个典型的协作图中显示了这四种符号。
协作图信息描述符的语法如下:用数字顺序标号来显示每一个消息的顺序。[true/false条件] 顺序编号:返回值:= 消息名(参数列表)在对象之间或在参与者与对象之间的连线表示链接。
在一个协作图中,链接表示两个对象共享一个消息——一个发送消息一个接收消息。图7-15 “查询可用项目”的协作图
图7-16 “创建新订单”电话订购场景的协作图 7.6 对象行为:状态、状态转换和状态图表
在开发功能需求时,最后一类需要的信息是每个对象的内部逻辑。这些信息是对对象本身执行动作的描述。
顺序图给出了对象行为的一个客观的分析。它标识了对象发送和接收的消息。状态图的目标是描述对象的内部工作。图7-17 OO模型中的关系。
状态图是从类图和顺序图中的信息开发出来的。状态:一个对象存在的条件;状态图的一部分。
一个黑圆圈表示初始状态,它仅仅表明进入状态图的入口点。初始状态也叫做伪状态,因为入口点也许会比对象自身的创建更早。
在内部涂黑的同心圆表示结束状态,这个状态表示从状态图中退出,通常表示从系统删除一个对象。
动作:在一个特定状态下对象执行的行为。
并行或并发状态:在状态图中同时处于多于一个状态的条件。
复合状态:嵌套了其他状态的高层状态。一个对象进入复合状态后,它就从一个黑点开始一条路径。
对象转换:状态图中的一个组成部分,它标示从一个状态到另一个状态的移动。目的状态:一个转换的目的,它连接着转换符号的箭头。原状态:一个转换的起源,它连接转换符号的尾部。
消息时间:转换的触发器,这个转换由一个有事件属性的消息组成。
图7-23 状态图的转换名称和消息名称。图7-25 订单的状态图。
完成转换:原状态结束行动时发生的没有触发事件的转换。
决策伪状态:在状态图中的一个菱形块,它代表在路径上的一个决策点。
第八章 C/S结构,三层/多层结构
客户机-服务器结构: 客户机-服务器结构是当前分布式信息系统资源的主要结构模式。客户机-服务器结构将信息系统过程分成两个等级:客户机和服务器。服务器计算机管理一个或多个的系统资源并通过确定的通信结构提供对那些资源的访问;客户机计算机用这个通讯结构来请求资源,而服务器则响应那些请求。实现通信结构的软件通常称为中间件。
服务器计算机或服务器:在网络中为其他计算机提供服务的计算机。客户机计算机:向网络中的其他计算机请求服务的计算机。
中间件:在网络中实现通信协议和帮助不同的系统进行通行的计算机软件。三层结构:包含用户层、业务逻辑层、数据层三层的一种客户机-服务器结构。
图8-4 三层结构。
第九章、系统设计
结构化方法
– 系统流程图,结构图,结果质量评价
面向对象方法
– 包图,类图
图9-3 结构化和面向对象模型
系统流程图:描述一个系统内计算机程序之间所有控制流的图。
系统流程图标识了每一个程序及其所存取的数据。系统流程图也表明了不同程序、子系统、相关文件和数据库之间的关系。记录了整个系统的体系结构。
图9-5 带自动化系统边界的数据流程图 图 9-6 系统流程图的常用符号 图9-7 工资系统的系统流程图样例 图 9-8 RMO的系统流程图
结构图:用来展示一个计算机程序模块间关系的层次图。
结构图的层次描述了系统各部分的功能和子功能。
结构图的基本组成部分是模块,模块用来标识一个功能。图 9-9 一个计算工资总额的简单结构图 图9-11 完整计算工资系统的结构图 评价结构图的质量:
模块耦合和模块内聚是检测质量的两个标准。一般来说,我们期望设计出高度内聚和松散耦合的模块来。
模块耦合:模块间相互联系的方式,较好的方式是数据耦合。模块内聚:模块内部的凝聚程度。9.2.4 模块算法设计:伪码
包图:是一个高层图,用以标识系统中的主要部件。
包图的目标是用于标识一个完整系统的主要部分。在一个大的系统中,通常要把系统分成许多子系统,每个子系统的功能相互之间都是独立的,虽然子系统间经常会交换信息并频繁的共享同一数据库。
图 9-26 包括RMO设计类的图。
设计类图:设计类图是带某些符号的类图,这些符号在类中描述了设计部件。
第十章、数据库设计
关系数据库的设计
从ERD到关系模型的转换 从类图到关系模型的转换 面向对象数据库的设计
从类图到面向对象数据模型的转换
关系数据库管理系统:在表中存储数据的数据库管理系统。
表:包括行和列的二维数据结构,也叫关系。
行:表的一部分,包含描述一个实体、关系或对象的数据,也叫元组或记录。字段:关系数据库表的一列,也叫属性。
字段值:存储在关系数据库表的一个单元中的数值,也叫属性值或数据元素。关键字:关系数据库表中每一行都含有一个唯一值的字段。主键:可以唯一标识关系数据库中表的某一行的关键字。(字段不唯一)外部码:存储在一个关系数据库表中的字段值,同时这个字段值也是另一个关系数据库表的主键值。
关系数据库设计可以从一个ERD或一个类图开始。这一节介绍如何根据一个ERD来生成数据库模式。基于类图的模式建立将在本章的后面讨论。从ERD建立一个关系数据库模式,可以采取一下步骤:
1.为每个实体类型建立一张表
2.为每个表选择一个主键(如何需要,可以定义一个)3.增加外部码以表示一对多关系 4.建立一个新表来表示多对多关系 5.定义参照完整性约束
6.评价模式质量,并进行必要的改进
7.为每个字段选择适当的数据类型和取值范围(如果需要)图10-5 RMO的实体-联系图
图 10-6 表示ERD中实体的初始表的集合 图 10-7 带主键(用黑体标识)的实体表 图 10-8 图 10-9 参照完整性:一个一致的关系数据库状态,其中每个外部码的值也作为一个主键的值存在。
第11章
Eight Golden Rules for Interactive Interface Design From Strive for Consistency(尽量保持一致性)
Enable Frequent Users to Use Shortcuts(提供快捷键)Offer Informative Feedback(有效反馈)
Design Dialogs to Yield Closure(设计完整的对话过程)Offer Simple Error Handling(简单的错误处理机制)Permit Easy Reversal of Actions(允许撤销动作)Support Internal Locus of Control(控制的内部监控)Reduce Short-Term Memory Load(减轻短期记忆负担)
概要
1.系统开发生命周期的阶段划分:项目计划阶段、分析阶段、设计阶段、实施阶段、支持阶段。
2.对获取的需求信息进行类别划分,主要的需求类别有:系统需求,功能需求,技术需求 4.用于定义系统需求的两个关键概念分别是事件和事物 5.事件的分类:外部事件,临时事件和状态事件。
6.生命线:在顺序图中的一个对象下面的竖线,用以显示这个对象的时间阶段。
激活生命线:在顺序图中的垂直窄长方框,用以强调一个对象只有在狭长垂直矩形框的描述期间处于活动状态。
7.顺序图消息符号由两部分组成:方向箭头和消息描述器。消息描述器的语法如下:
[true/false条件] 返回值:= 消息名(参数列表)
True/false条件用于验证这个消息是否可以发送
8.协作图消息用数字顺序标号来显示每一个消息的顺序。
[true/false条件] 顺序编号:返回值:= 消息名(参数列表)
在对象之间或在参与者与对象之间的连线表示链接。
在一个协作图中,链接表示两个对象共享一个消息——一个发送消息一个接收消息。9.模块耦合和模块内聚是检测质量的两个标准。一般来说,我们期望设计出高度内聚和松散耦合的模块来。
10.在关系数据库的设计过程中,提高关系数据库模式质量的有效方法是进行关系数据库的规范化设计。
11.计划阶段的模型:甘特图
分析阶段的模型:活动图,关联图,实体联系图,用例图,数据流图,协作图
设计阶段的模型:包图,系统流程图
12.传统的结构化方法:数据流图,结构图,系统流程图,面向对象方法:类图、用例图、顺序图、协作图、状态图,13.关系数据库中,元组与元组之间的关联关系是通过外键来表示的
面向对象数据库中,对象与对象之间的关联关系则是通过对象标识来表示的 四种报表类型:详细报表、汇总报表、异常报表、决策报表
Drill down(下钻):将汇总字段设计成一个链接,允许点击它以查看更为详细的资料 完整性控制:应用系统内部用来保护系统内信息的机制和程序。
三种完整性控制:输入完整性控制、数据库完整性控制、输出完整性控制。(防诈骗)输入完整性控制:字段组合控制、限值控制、完全性控制、数据有效性控制。三种用户:未授权、注册用户、特权 用户界面的特征:物理特征、感知、概念 以用户为中心的原则: 及早关注用户及其工作
多次评价系统设计以保证其可用性 使用迭代开发方法
HIC的三种隐喻:直接操作隐喻(直接与显示屏上的对象交互——桌面隐喻)、文档隐喻、对话隐喻
界面设计指导原则: 可视性:有反馈 可供性:体现功能 事件列表
|事件| 触发器 | 源
活动
|
响应
|目的地| 事物列表
|确定的名词| 将该名词作为事物存储的一些注释|
第三篇:系统分析与设计心得
读《系统分析与设计方法》一书有感
作为一个软件专业的学生,理解和掌握系统分析与设计的知识是必不可少的。在阅读《系统分析与设计方法》一书中以及加上老师教导,我学到了很多东西,收获不少。
系统就是由若干可以相互区别、由相互联系并且各自独立的单元组成各个子系统之间同样是独立而又相互联系的。系统具有集合性、相关性、目的性、整体性和环境适应性。在开发完成一个软件项目的过程中,系统工程必须经过开发阶段、建造阶段、运行阶段、更新阶段、维护阶段。
系统分析与设计的方法主要包括结构化生命周期法(又称瀑布法)、原型化方法(迭代法)、面向对象方法。
按时间过程来分,开发方法分为生命周期法和原型法,实际上还有许多处于中间状态的方法。原型法又按照对原型结果的处理方式分为试验原型法和演进原型法。试验原型法只把原型当成试验工具,试了以后就抛掉,根据试验的结论做出新的系统。演进原型法则把试好的结果保留,成为最终系统的一部分。
按照系统的分析要素,可以把开发方法分为三类:
①面向处理方法(Processing Oriented,简称PO)。
②面向数据方法(Data Oriented,简称DO)。
③面向对象的方法(Object Oriented,简称OO)。
系统分析和设计应遵循的原则有:
系统开发是面向客户的,应从客户的角度考虑。
诸如系统开发生命周期之类的产品更新换代机构应该在所有的信息系统开发项目中建立起来。
信息系统开发的过程并不是一个顺序的过程,它允许步骤的重叠和倒转等。
如果系统的成功可能性受到很大限制时,应取消整个项目。文档材料是系统开发生命周期中重要的可递交成果,应加以重视。在本书的第一部分中,主要集中于系统分析和设计的整体描述,包括系统分析和设计方法的环境,信息系统构件,信息系统开发,项目管理。期中印象比较深刻的是系统开发过程的能力成熟度模型(CMMI)。信息系统和软件的CMM框架用来帮助改善其系统开发过程的成熟度。CMM包括了五个成熟度等级:初始级、可重复级、已定义级、已管理级、优化级。期中,每个等级都是下一个等级的必须条件。
在软件开发过程中需求分析阶段是至关重要的一个阶段,需求分析阶段可能被称为定义阶段或者逻辑设计阶段。需求分析阶段的第一个任务是确定需求,在这个阶段至少将目标转换成为满足其需要的功能需求和非功能需求的框架。在这个阶段需要交付的成果是功能需求和非功能需求的草稿。在初步定义完了功能需求和非功能需求后,得排列需求的优先次序。如果一个项目落后于进度或者超出预算,知道哪个需求比其他需求更重要可能是很有用的。在排列需求的优先次序中可以使用到时间盒的技术。需求分析并不会真正的技术,因为企业需要具有快速适应不断变化的需求和机会的能力。信息系统不能比企业自身的响应技术还慢。
在学习本书第二部分的时候,我了解到了需求分析在整个项目开发中的作用以及成为整个项目主导的因素。只要好的需求才能设计开发出好的软件项目。在项目开发过程中,我们还可以利用图表的形式来简化方便人员的开发设计。期中有五种图表是系统分析师常用的:类图、用例图、协作图、顺序图、状态图。期中用例图是用例建模的产物,它以图形化的方式将系统描述成用、参与者(用户)及其之间的关系。简单的说就是用直立的小人来表示参与者(用户),用圆圈来表示用例,他们之间以箭头的形式来连接。关系包括了:关联关系、扩展关系、使用关系、依赖关系、继承关系。但是书上没讲到《include》关系,跟老师的讲解有点出路。老师在讲义上通过画图的方式很好的解释了《include》和《extend》的关系。
数据建模这一章节中,我了解了数据建模的含义,它是一种为数据库定义业务需求的技术。数据建模中比较重要的概念有实体和属性之间的关系,关系是连接实体的一个时间,或者仅仅是存在于实体之间的逻辑关系。关系有很多种类,多对多、一对多、一对
一、等等。这些关系的图形化符号记起来很不容易,但是我自己想到了一个比较容易记忆的简单的方法。一个就用 “|”表示,零个就用“0”表示,多个就用“<”表示,然后根据相应的说明来选择。比如零个或一个(0|),一个或多个(|<)。过程建模是一种组织和记录数据的结构和流向的技术,它记录系统的“过程”和有系统的“过程”实现的逻辑、策略和程序。期中也介绍到了数据流图(DFD),数据流图是一种描述通过系统的数据流以及系统实施的工作或处理过程的工具。我觉得数据流图DFD的最大的优点就是容易阅读,因为数据流图仅有三种符号和一种连接:圆角矩形表示要完成的过程或者工作,正方形表示外部代理(系统的边界),开放的方框表示数据存储(可以是文件或者数据库),箭头表示数据流(可以是输入和输出,或者是表示到过程和来自过程)。统一建模语言UML的目的就是对面向对象系统进行可视化、评述、和文档化。它适用于系统开发从需求规格描述道系统完成后测试的不同阶段(需求分析阶段、分析阶段、设计阶段、编程阶段、测试阶段)。UML2.0的模型主要图包括了:用例图、活动图、类图、对象图、状态机图、组合结构图、交互图、定时图、组件图、部署图和包图。在理解这章的过程中,我感觉比较轻松,但是把一些关系,事件,实体等等用图形化的形式表示出来还是非常难的。用UML设计面向对象系统时候,我们得准确的找到实体类、接口类、控制类、持续类、系统类和设计关系。在面向对象设计的过程中,主要包括了一下活动:对用例模型加以精炼以反映实现环境;建模支持用例情景的对象交互、行为和状态;修改对象模型以反映实现环境。
前面说到需求分析是整个软件项目开发中最重要的一环,其实我觉得可行性分析也是跟需求分析一样的重要。因为信息是一个必须经过检验的重要资本投入,就像市场要检验一个新产品,系统分析员应该考虑投资能够收回吗?是否有其他投资能够带来比预期更高的回报。要说他们的区别,我个人觉得是:可行性分析是要决定“做还是不做”。需求分析是要决定“做什么,不做什么”。可行性分析报告有六个准则:运行可行性、文化可行性、技术可行性、进度可行性、经济可行性。只有进行了可行性分析报告,才能够确定企业是否要 做这个项目。如果说在可行性报告中显示没有成功的可能,那么就没有必要再做需求分析了,整个项目就不会做下去了。进行可行性分析报告可以避免项目中途告终的结果,在系统开发过程中举足轻重。
数据库开发与设计这章,感觉书上讲解的没有老师讲的详细。书上并没有提到范式,但是在课堂上我了解到数据库设计的范式。有第一范式、第二范式、第三范式、BC范式等。等级越高,数据冗余越少,对系统调用数据库更方便。数据库的核心是DBMS,DBMS的核心是数据库引擎,引擎响应专门的命令以创建数据库结构,然后创建、读取、修改和删除数据库中的记录。DBMS使用数据定义语言(DDL)创建记录类型、字段和结构化关系,还定义了数据库视图;DBMS还是用数据处理语言(DML)用来创建、读取、修改和删除数据库中的记录。但是并非所有数据库的DBMS都被要求使用DDL和DML。看完这章,总结了一下建立关系数据库模式的步骤,首先要为每个实体类型建立一张表,然后为每张表选择一个主键,同时增加外键来表示一对多的关系,接着还可以建立几个新表来表示多对多的关系,然后还得定义参照完整性约束,评价模式质量,并且进行必要的改进,最后为每个字段选择适当的数据类型和取值约束。数据库在系统开发的过程中是必不可少的,几乎所有框架类型都得用到数据库,它也是MVC框架的底层核心。
对于本书的还有一个比较映像深刻的就是UI(user interface),用户界面设计。一个良好的用户界面应该为用户提供友好的使用方式,通过用户界面用户可以同应用程序打交道,处理输入并且获得输出。Galitz曾经提出过用户界面设计的原则:理解你的用户及任务、让用户参与界面设计、在实际用户中测试系统、进行迭代设计。记得以前大二的时候学习JAVA的时候,我曾经开发过基于图形用户界面(GUI)的聊天软件,不过当时的界面设计完全设计的是随心所欲,并没有理论作为指导。在学习VB课程的时候学过UAR,简单的了解了一些关于界面友好化设计的原则。这本书也给出了用户界面设计过程的几个步骤:1.以图表形式描述用户界面对话;2.原型化对话和用户界面;3.获得用户反馈;4.如果需要,回到1步或者2步。
最后总结下,虽然我没用把这本书的每一个地方都认真精读,有些地方略读的,但是看完整本书后我收获很大。读完《系统分析与设计方法》这本书再加上老师在课堂上的一些讲解以及以前学习事件过程中的收获,我对于系统分析与设计有了进一步的理解,能高屋建瓴的看待系统分析与设计整个过程的步骤以及增加了一些开发设计中的重要事件的理论知识。
对于系统分析的心得
第四篇:系统分析与设计总结
第一章 概述
信息系统的五个组成部分:硬件、软件、规程(processes)、数据、人
SDLC(System Development Life Cycle 系统开发生命周期)包括:计划、分析、设计、实施、运维。替代方法:Prototyping(原型法)、CASE Tools(Computer-aided Software Engineering tools 计算机辅助软件工程工具)、JAD(Joint Application Design 联合应用设计)、RAD(Rapid Application Development 快速应用软件开发)、敏捷方法(Agile Methodologies)、极限编程(Extreme Programming)。
第二章 计划
总体规划(Strategic planning)模型:诺兰模型(初始、蔓延、控制、集成、数据管理、信息管理)。
总体规划原则:支持企业总目标;面向各个管理层次;方法上摆脱信息系统对企业组织的依赖性;结构上具有良好的整体性;便于实施。
总体规划的方法:关键成功因素法、战略目标集转换法、企业系统计划法、信息系统规划与企业过程重组、信息系统规划和企业形象系统。
总体规划步骤:准备工作、组织机构调查、定义管理目标、定义管理功能、定义数据类、定义信息结构(划分子系统)、确定子系统实施顺序。准备工作
确定规划内容、成立规划小组、收集数据、制定计划、开好动员会。定义管理功能
资源的生命周期:产生、获得、服务、归宿 识别管理功能:根据资源识别(OO)、根据决策与活动识别(SSAD)管理功能是管理各类资源的各种相关活动和决策的组合 定义数据类
方法:实体法(如图2-1)、功能法(如图2-2)
两者组合形成初始功能数据类矩阵(图2-3)
图2-1
图2-2
图2-3 定义信息结构
划分子系统的方法:在初始功能数据矩阵中,排列数据类,使得矩阵中的C靠近主对角线。
确定子系统实施顺序
根据企业目标和技术约束确定
原则:子系统的需求程度与潜在的效益评估、技术约束分析
信息系统需求:Improved service(改善服务)、Better performance(更好的性能)、More information(更多的信息)、Stronger controls(更强的控制)、Encryption and biometric devices、Reduced cost(降低成本)
影响系统因素
内部:Strategic plan(总体规划)、Top managers(高层管理人员)、User requests(用户需求)、Information technology(信息技术)、department(部门)、Existing systems(现有系统)
外部:software/hardware vendors(软硬件供应商),technology(技术),suppliers,customers(客户),competitors(竞争者),the economy(经济),government(政府)
可行性分析
操作可行性(Operation feasibility):系统在开发之后可以正常使用 技术可行性(Technical feasibility):开发系统所需要的技术资源 经济可行性(Economical feasibility):Total cost of ownership(TCO)总拥有成本
进度可行性(Schedule feasibility)
信息系统初步调查(Preliminary investigation)
Understand the problem(了解问题)
Define the scope and constraints(确定范围和约束)Perform fact-finding(进行实地考察)Estimate Feasibility(估计可行性)
Estimate development time/cost(评估项目成本、时间)Present results and recommendations(提出结果和建议)
第三章 需求模型(Requirements Modeling)
系统分析阶段
包括:需求建模(Requirements Modeling)、企业建模(Enterprise Modeling)、开发策略(Development Strategy)
阶段交付物:系统需求文档(System Requirements document)
方法: JAD(Joint Application Development 联合应用程序开发)
RAD(Rapid Application Development 快速应用软件开发)
Explain how systems analysts use a functional decomposition diagram(FDD)系统需求列表
输出、输入、处理、性能、控制、可扩展性(Scalability)、TCO(Total cost of ownership 总拥有成本)
实情考察方法(Fact-Finding)Interviews(访谈法)
documentation review(文档审查)observation(观察法)
questionnaires and surveys(问卷调查)sampling(抽样法)research(研究)访谈法步骤
1.Determine the people to interview(确定访谈人群)2.Establish objectives for the interview(确定访谈目标)3.Develop interview questions(设计问题)4.Prepare for the interview(准备访谈)5.Conduct the interview(实施)6.Document the interview(记录)7.Evaluate the interview(评估)抽样法方法
随机抽样(Random sample)
分层抽样(Stratified sample)
系统抽样(Systematic sample)
文档编写原则
Record information as soon as possible(尽快记录)
Use the simplest recording method(使用最简单的记录方法)Ensure that your work is understandable(能让他人理解)Organize your documentation material(合理组织材料)
第四章 企业建模(Enterprise Modeling)
企业建模
产生:逻辑模型(Logical Model)
工具:Entity-relationship Diagrams(ERD E-R图)
Data Flow Diagrams(DFD 数据流程图)Data Dictionary(DD 数据字典)
Process Descriptions(PD 处理逻辑说明书)Query Analysis(QA 存取分析)
E-R图
关系种类:一对一、一对多、多对多 数据流程图
符号(Gane and Sarson symbol)包括:processes(处理逻辑),data flows(数据流),data stores(数据存储),entities(外部实体)
种类:Context Diagram(第一层数据流程图,无数据存储)
Diagram 0(将第一层扩展,保持第一层的数据流)Lower-Level Diagram(子数据流程图)
Lower-Level Diagram画法:leveling(分层显示 分层方法:Exploding、partitioning、decomposing)and balancing(前后数据流保持不变)
相关概念:
Black Hole:A process that has no output.Gray Hole:A process with at least 1 input and output, but the input is insufficient to generate the shown output.Spontaneous Generation Process:Used to describe an unexplained generation of data or information.数据字典
概念:对数据流程图中的各个成分的含义进行描述的工具
用途:对数据流程图的补充说明、参照,用于检索,检验一致性与完整性 内容 :数据元素:又叫数据项,是最小数据组成单位,不可分割
数据结构:数据之间的组合关系 数据流
数据存储:数据存储的结构,有关的数据流和查询要求 处理逻辑 外部实体
方式:人工、计算机 常用属性:
数据元素(名称、类型/长度、默认值、值域、来源、安全、负责人、描述)数据结构(名称、描述、属性)
数据流(名称、描述、来源、目的地、所包含数据结构、使用频率)数据存储(名称、描述、属性、使用频率)处理逻辑(名称、描述、编号、输入、输出)外部实体(名称、描述、输入流、输出流)
处理逻辑说明书
工具:
结构化语言:一种用于描述处理逻辑的介于自然语言和程序语言之间的语言。包括三种基本语句:祈使句、判断语句、循环语句。没有严格的语法,极其有限的词汇(祈使句中的动词、数据字典中的名词、逻辑表达式中的保留字)
决策树:
决策表:
现将所有情况列出,在不断进行合并,下表为最终表
存储分析
目的:DFD中定义了数据存储,DD中对数据存储的数据结构作了描述,但没有说明立即存取与实时响应,是补充。
存取类型:E:实体 A:属性 V:属性值 已知E、A,求V 2 已知A、V,求E 3 已知E、V,求A 4 已知E,求A、V 5 已知A,求E、V 6 已知V,求A、E
逻辑模型和物理模型的区别
逻辑模型展示信息系统有什么功能;物理模型展示信息系统的功能如何实现
Four-Model Approach 包括:原系统的物理模型、原系统的逻辑模型、所开发系统的逻辑模型、所开发系统的物理模型
第五章 开发策略(Development Strategies)
软件开发趋势
Software as a Service:软件即服务
Software and Information Industry Association(SIIA)软件与信息产业协会 application service providers(ASP)软件服务提供商 软件开发策略
Develop in-house Buy software package Customize 选择考虑因素
total cost of ownership(TCO)系统需求文档
包括:requirements for the new system(新系统的要求)
describes the alternatives that were considered(描述备选方案)
第六章
总体设计(General Design)
包括:硬件设计、软件设计、网络设计、子系统划分与模块结构 设备选配的依据:总体方案、容量、外设(数量、速度)
设备选配的指标:可靠性、可维修性、兼容性、熟悉性、方便性、可扩充性、经济合理性
硬件设计:主站、工作站、外围设备、主要性能指标
软件设计:中文、操作系统、数据库管理系统、其他开发环境、各种工具、各种媒体的编辑、处理软件
网络设计:网络结构、拓扑结构、传输介质、网关、网络管理软件、OA设备
子系统划分与模块结构 方法:系统流程图(强调执行顺序)、HIPO(Hierarchy Plus Input/Process/Output)(强调层次)、模块结构图
模块结构图
方法:事务分析法、变换分析法 事务分析法
适用于高层数据流程图,每一个处理逻辑都是一个事务 变换分析法
步骤: 1 找出系统的逻辑输入、主加工和逻辑输出设计顶层模块和第一层模块设计中下层模块
系统总体优化的准则
模块的耦合:模块间的关联程度
模块的聚合:模块内的紧凑程度
模块的分解:分解到功能聚合型模块为止
模块的扇入和扇出:
扇入:一个模块的上级模块叫做扇入模块 扇出:一个模块控制的下级模块叫扇出模块
原则:扇入越大越好,扇出数目控制在7±2范围内 模块的控制范围和判断作用范围:
控制范围:指模块本身和它的下级模块
判断作用范围:模块和有判断调用的模块的组合
第七章 数据设计(Data Design)
数据与文件分类
存储方式、文件命名规则设计 规范化设计
1NF:在同一个表中无重复项出现 2NF:有且仅有一个数据元素为主键
3NF:表中所有数据元素不但要能够唯一的被主键表示,而且他们之间还必须相互独立
一致性、完整性、有效性、安全性 存储过程
第八章 代码设计(Code Design)
代码的概念
一个或者一组有序的易于计算机和人识别与处理的符号。代码的意义
鉴别、分类、排序、特殊意义
代码设计的步骤
1.信息分类
原则:科学性、系统性、可扩充性、兼容性、综合实用性 方法:
线分类法(将选定的分类对象按若干属性逐次地分成若干层级的类目)面分类法(若干属性独立分类、没有上下级的从属关系)2.编码
原则:唯一性、合理性、可扩充性、简单性、适用性、规范性 方法:根据代码的种类和类别进行编码,然后说明代码组成的原则
第九章 用户设计和输入输出设计
以用户为中心设计原则 Understand the underlying business functions 2 Maximize graphical effectiveness 3 Profile the system’s users 4 Think like a user 5 Use prototyping 6 Design a comprehensive interface 7 Continue the feedback process 8 Document the interface design 输入方式:
批量输入、联机输入(后面太乱了。不写了。)
第十章 网络体系结构
B/S 瘦客户端服务模式 C/S 胖客户服务模式
两层设计:Server + Client 三层设计:Server + Application Server + Client
第十一章 系统实施
系统实施过程
1.硬件和软件的购买 2.网络的构建 3.应用开发 4.用户培训
5.编写文档(程序文档+系统稳定+操作文档+用户文档)6.测试(单元、集成、系统测试)7.安装 8.评估
9.数据转换 10.系统上线 系统切换
1.直接切换 2.平行切换 3.试验切换 4.阶段切换
第十二章 系统运营
四种维护
1.改正性维护 2.适用性维护 3.改善性维护 4.预防性维护
维护流程
1.维护请求 2.初步判断 3.处理请求 4.布置任务 5.用户通知
系统底线
1.Functional baseline(功能基线,终结于分析阶段)2.Allocated baseline(分配基线,终结于设计阶段)
3.Product baseline(产品基线,终结于实施、测试阶段)
系统退化(System Obsolescence)
原因:无法满足当前管理的需要(维护无效或维护成本高)这意味着新的系统的开始
第五篇:系统分析与设计心得
系统分析与设计心得(精选多篇)
系统分析师对考生的综合素质要求较高,考查的知识面很广。但分析历年考题可以发现,虽然考试知识面广但考试内容并不是很深。因此,这就要求我们注意平时积累,经常通过网络、讲座、学术会议等途径及时了解一些流行技术热点和业界最新动态。
2、多做项目,在实践中锻炼提高
如果说平时积累的各个知识点是一粒粒宝贵的珍珠的话,那么项目经历则是将这些珍珠串联起来的一根红线。“纸上得来终觉浅,绝知此事要躬行”。软件工程是一门实践性、综合性非常强的专业,如果没有参加过完整的实际项目,就难以从根本上理解书本上所学的
理论知识,就难以真正领会软件工程的思想精髓。同时,在做项目时还要勤于思考,无论是作为主持者还是作为一个普通的程序员,都应该去潜心思考为什么要这样设计、这样设计的优点是什么、有哪些不足,如果你是设计师的话你又会怎样设计?经常做这样的换位思考,会不自觉地提高自己的系统分析和设计能力,积累丰富的项目经验,这对下午一的考试来说是非常有益的。
3、注意提高个人文档编写能力
一些软件工程师有个不好的习惯,那就是只喜欢钻研具体的技术点而不注重提高文档编写能力。他们的一个通病是做得多、写得少,在某一个具体的技术领域上往往表现得非常优秀,但写出的文档质量实在难以恭维。作为一个合格的系统分析师文档编写能力是必不可少的基本素质,也是下午二考试的考查重点。
文档编写能力不仅对于应试是十分必要的,而且在实际工作也是非常重
要的。因此,我们应当在平时多做这方面的训练,多思考、多动笔,努力提高自己文档编写能力。
4、掌握评卷专家心理,注意论文写作技巧
在下午二的考试中,应注意把握评卷专家的心理状况。根据希赛it教育研发中心的著名软考专家张友生所说的,评卷专家不可能把你的论文一字一句地精读,要让他短时间内了解你的论文内容并认可你的能力,必须把握好主次关系,论文的组织一定要条理清晰。一般说来,项目概述部分评卷专家会较认真看,为让评卷专家对你所做的项目产生兴趣,这里可适当吹捧。在论文陈述部分应当按主次关系分条进行陈述,首先最好开门见山指出你所采取的措施,然后指出你为什么这样做,这样做有何优点,克服了以前做法的哪些缺点等等。在分条陈述时最好一个问题一个自然段,在每个自然段首先要有一个主题句,主题句简明扼要地描述本段的中心思
想。
在论文撰写中,切忌大谈空洞的理论知识或不懂装懂,以专家的姿态高谈阔论。应当将重点放在汇报你自己在项目中所做的与论题相关的工作,让评卷专家相信你确实做过这方面的项目而且达到了相应水平。
在下午二考试时间的分配上,建议首先花3--5分钟根据个人特长选定题目,然后花10—15分钟左右整理一下所掌握的素材,列出提纲,即你打算谈几个方面,每个方面你是怎么做的,收效如何等等,简明扼要地写在草稿纸上。
5、张友生的书,不能不读
要想通过系统分析师考试,不但需要多做项目,而且有关全国著名的软考辅导专家张友生老师的书是不可不读的。
学习电子商务系统分析与设计的心得体会
《电子商务系统分析与设计》系统地介绍了电子商务系统的规划、分析、设计、实施与运行管理的基本概念、方法、技术和相关案例。从结构上可以进一步分为4个部分:概述部分,主要说明电子商务系统分析设计的基本概念、内容、过程与方法;系统规划、分析与设计部分,主要说明系统规划、分析、设计的方法、内容和工具;系统实施与维护部分,涵盖电子商务系统的开发与集成、测试、部署、维护、审计与评价;案例部分,给出了两个完整的案例,从背景、规划、分析、设计角度帮助我们进一步理解电子商务系统的规划、分析与设计。围绕电子商务系统开发过程的各个阶段,系统地阐述了电子商务系统开发的思想、方法和技术,包括系统的规划、分析、设计、实现与维护等内容,重点介绍了采用uml进行系统的分析与设计的方法;并从企业管理者和电子商务应用实践的角度,对国内外一些典型的企业电子商务解决方案进行了介绍;最后结合实例阐述了运用struts、javaee1.5等新技术进行电子商务系统的
设计与开发的过程,使我们能很好地把理论学习与实践训练更好地结合起来。
本课程结合电子商务系统领域的最新技术、方法和实践,以及电子商务系统应用成果,从理论基础、方法运用、技术基础和实践4个维度对电子商务系统做了较深入、全面的阐述。教科书共十章,第一章介绍电子商务系统的基础概念和知识;第二章介绍电子商务系统建设的过程与方法;第三章介绍电子商务系统规划的内容、方法和步骤;第四章介绍电子商务系统的分析方法与工具,重点利用uml进行了系统分析;第五章阐述了电子商务系统设计基础与思想方法;第六章介绍电子商务支付系统、电子商务系统安全体系设计的思想方法;第七章介绍了电子商务系统的开发技术与模式,并结合实例完整介绍struts2框架web应用开发的基本过程;第八章介绍电子商务系统运行、维护与评价的知识和方法;第九章结合我国实际,介绍了国内外的电子商务系统解决方案;
第十章结合实例和具体技术,系统的阐述了一个电子商务系统从分析、设计到实现的过程,让我们通过一个电子商务系统的设计实践和操作,消化和理解所学的理论知识。
本课程在继承软件工程和信息系统分析与设计的思想,方法,技术和工具的基础上,从系统化的思想及结构化开发方法入手,全面介绍电子商务系统特色,规划方法,系统分析及设计,并依据电子商务自身的特点,着重针对网站设计,支付系统设计及安全系统设计进行分析和介
绍。本实验课程使学生进一步理解和掌握所学各种电子商务系统分析和设计的方法.熟练掌握系统分析和设计建模软件.。
本课程目的是为了让我们能够全面了解应用系统的整个电子商务系统的开发建设流程,并掌握电子商务系统开发的相关技术:
掌握电子商务系统的分析方法;
掌握电子商务系统的总体设计方法;
学会使用visio软件构建电子商务系统数据流程图,use case图以及活动图;
体会应用软件工程的设计思想进行电子商务系统开发的过程与方法。
通过本课程设计,便于我们全面理解电子商务系统规划、分析与设计知识,并掌握操作方法,而不是独立地学习某单方面的操作技术;另一方面实用性较强,我们认真完成本书实验后,基本上可以胜任电子商务系统规划、分析、设计及实现工作。
学习这门课程,使我对电子商务网站的开发有了一定的了解。掌握了电子商务系统的基本概念、特征及其结构。了解电子商务系统开发技术和发展方向,理解电子商务生命周期的概念、特征及其作用。能够按要求撰写电子商务系统规划报告,基本掌握uml需求分析思路和方法,能结合运用实际撰写系统分析报告。熟悉电子商务平台技术,包
括操作系统、应用服务器、中间件技术等。基本了解电子商务支付系统与安全系统。初步掌握一些电子商务网站客户端技术。能正确理解电子商务系统评价的作用,并掌握评价指标体系设计的思路等等。
通过一系列的实验让我知道了基础的电子商务分析的方法,掌握对电子商务系统进行系统总体结构设计及应用系统设计的内容及方法。加深理解了在课程中、书本上学到的知识和理论,并使其在课题研究中得到运用而且让我得到了实践的收获。
希望在以后的实习实践中多接触、对比一些案例能够增长对网上电子商务系统设计的一些知识。
0911061237
朱宝
信息系统分析与设计学习心得
通过近10周的学习,我觉得信息系统分析与设计这门课程收获还是挺大的。我觉得,如果我们决定要做一件事,就得对这个系统有一个整体得把握,首先要进行系统的规划和选择,接着就是系统的设计,其中系统设计包括三个部分:1.确定系统需求;2.系统需求结构化:过程建模,这一步骤主要就是画数据流图;3.系统需求结构化:概念数据建模,这一过程主要是画实体—关系图。然后就是进行系统设计,系统设计包括设计人机界面和数据库设计。最后一步就是系统的实现与运行。
在做信息系统分析与设计的大作业的时候,我和我们的小组成员曾经去实地考察过,虽然最后并没有被接待,但还是小有收获的。通过实地考察,我们能更清晰地了解我们系统所要实现的功能,甚至说让它比现有系统更加完善。当然,我们做东西,也是要追求进步,如果说做出来的东西和以前的系统都没什么两样,这样意义也不大。不过,这也得是在我们能力所及的范围内,我们得适当地把握好自己的时间和现有资源进行适当的设计。相信自己的努力还是
能有一个很好的结果的,我们得对自己的发展有一个好的概括。信息系统分析与设计的大作业从第一周到第九周一直伴随着我们,说实在话,一直觉得自己有做不完的作业,刚开始还有些抱怨,但随着作业的进行,我们慢慢看到了自己的小小成果,觉得付出有了回报,并开始乐在其中。在这期间,徐老师也一直鼓励我们,他告诉我们,只要坚持做下去,我们会收获到成功的喜悦的!
现在,我们已基本完成了大作业分析阶段,在我和小组成员的协作下,总算按时完成了。在分析阶段,我们也遇到了很多问题,比如刚开始画数据流图时,visio用的不是很熟练,数据流图中的数据流、数据存储、过程、源点和宿点不知
道怎样连接,层与层之间也不知如何区分,有时候甚至想要放弃。还好有老师的鼓励与指导加上小组一起努力,我们克服了这一难关。在画er图的时候遇到的问题就相对少了一点,因为以前
学习数据库的时候就画过er图了,所以在画的过程中就相对轻松一点。接下来就是系统的设计了,时间还蛮紧迫的,我们仍需努力。
我作为小组的组长,从中真的学习到不少知识。老师说过,组长应该做的比别人更加多,才能够胜任。我们现在还没有达到“喝茶看报纸”的层次,那得等到我们具备了足够的能力,所以要想达到那个高度,我们现在应该更加努力。负责的整个过程中,我必须把握好进度,如果一步跟不上,可能就会步步跟不上。我们小组成员也很配合,基本不需我太多督促。在对我们所要实现的功能有了个整体的把握的情况下,我们制作出了令自己还算满意的图形。现在我觉得自己基本可以熟练运用visio了,这也算是一大收获吧!
总的来说,这次这次信息系统分析与设计的课程设计让我获益匪浅,以前只是纸上谈兵,没有亲自实践,不知道理论上升到实践路程的艰辛。通过这次
自己亲自选题、实地考察、绘制dfd、er图到完成分析,我体验了其中的不容易,也尝到了其中的甜头。我们还会继续努力,更好的完成下面的工作。
0963710205 秦晓雅
《信息系统分析与设计》考试题目及评分标准
下周一中午12点之前由班长或学习委员收齐各班纸质版本作业,周二收齐交给任课老师。
请注意论文封面、格式以及老师强调的论文重点,打印并装订好交给班长或学习委员。考试题目:
设计一个银行存取款管理信息系统。
要求具有下面的功能:①储户凭身份证在银行开户,银行账户中保存储户姓名、联系电话、家庭住址等基本信息,并保存储户每笔存取款业务数据。②储户存款时,需提交存折/卡号,由业务员在银行账户及存折/卡上登记存款信息。③储户取款时,还需提交密码,以确认
身份,在验证取款合法性后,更新银行账户。④统计员每日统计存、取款情况,形成日存取款汇总表,提供给信贷管理部作为信贷主要依据。
设计一个物资采购及库存管理业务管理信息系统。
要求具有下面的功能:①车间填写领料单到仓库领料,库长根据用料计划审批领料单,未批准的退回车间。②库工收到已批准的领料单后,首先查阅库存账,若有货,则通知车间前来领取所需物料,并登记用料流水账;否则将缺货通知采购人员。③采购人员根据缺货通知,查阅订货合同单,若已订货,则向供货单位发出催货请求,否则就临时申请补充订货。④供货单位发出货物后,立即向订货单位发出提货通知。采购人员收到提货通知单后,就可办理入库手续。接着是库工验收入库,并通知车间领料。⑤此外,仓库库工还要依据库存账和用料流水账定期生成库存报表,呈送有关部门。
考核内容:
熟练掌握信息系统分析与设计的方法。具体考核的内容是:
1、编写信息系统可行性报告。
2、编写信息系统需求分析报告,绘制数据流图。
3、编写信息系统设计报告,绘制功能结构层次图,数据库设计,界面设计和硬件和软件设计。
评分标准:
1、编写信息系统可行性报告。
2、编写信息系统需求分析报告,绘制数据流图。
3、编写信息系统设计报告,绘制功能结构层次图。
4、数据库设计
5、界面设计。
6、简单的硬件和软件设计。
系统分析与设计方法读书笔记
《系统分析与设计方法》,顾名思义,是论述软件开发过程中涉及到的分析与设计过程的方法论。作者依照软件
开发过程将书划分为四个部分:系统开发项目环境、系统分析方法、系统设计方法、系统分析和设计完成后的工作。同其他美国作者一样,作者通过一个贯穿全书的案例--音阶公司系统项目,向我们详细地讲解了开发一个软件系统过程中设计到的知识。
第一部分“系统开发项目环境”介绍信息系统开发的概念和过程。第二部分“系统分析方法”涵盖了生命周期前期活动、工具和技术,这些内容用于分析业务问题、说明信息系统业务需求以及制定业务和系统方案。第三部分“系统设计方法”涵盖了生命周期中期活动、工具和技术,特别强调应用架构的概要设计和详细设计、快速开发和原型设计、外部设计、内部设计以及面向对象设计。第四部分“系统分析和设计完成后的工作”通过纵览生命周期后期活动,透视系统分析和设计工作。
《系统分析与设计方法》这本书围绕软件开发这一中心,详细讲解了从需
求分析到后期维护各个阶段中,如何运用文档与周围的人员进行有效沟通和协作。文档,作为各类人员之间的桥梁和纽带,如使用得当,有以下几个好处:
1.提高软件开发过程的能见度。把开发过程中发生的事件以某种可阅读的形式记录在文档中。管理人员可把这些记载下来的材料作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理。
2.提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、从而减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。
3.作为开发人员在一定阶段的工作成果和结束标志。
4.记录开发过程中的有关信息,便于协调以后的软件、开发、使用和维护。
5.提供对软件的运行、维护和培训的有关信息,便于管理人员、开发人员、操作人员、用户之间的协作、交流和了
解。使软件开发活动更科学、更有成效。
6.便于潜在用户了解软件的功能、性能等各项指标,为他们选购符合自己需要的软件提供依据。
也正是基于这样的好处,软件行业才会定义、开发各种沟通表达工具和建模语言来统一沟通方法,从而便于各种人员的团结合作。以uml为例。从1989
年到1994年,建模语言数量从不到十种增加到了五十多种。90年代中,又一批新方法出现,其中最引人注目的是booch 1993、oose和omt-2等。但到目前为止,uml这一统一建模语言脱颖而出,它贯穿软件开发周期中的每一个阶段,并被omg采纳作为业界的标准。就如书中所讲,uml是一个标准的图形表示法,它不是面向对象的分析和设计,也不是一种方法,它仅仅是一组符号。uml是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。作为一种模型语言,它使开发人员专注于建立产品的模型和结构,而不是选用什么程序语言和算法实现。当模型建立之后,模型可以被uml工具转化成指定的程序语言代码。所以说,运用优秀的沟通工具与各种角色进行有效地沟通在一定程度上决定着系统能否保质保量的成功完成。在这个崇尚团结与合作的社会,作为新一代的软件开发人员,我们更应该认真学习书中说讲的各种文档编写方法,更好的运用到实际开发中去。
首先,需求分析人员从接触到深入了解客户业务有一个渐进的过程,如果一开始就深入到业务的细节中去,不但容易迷失方向,而且很容易显露出你对业务的无知,客户会因此而失去与你沟通的兴趣。
其次,沟通双方都有自己习惯的沟通方式。所以在双方能够达成默契之前,不要急于深入业务细节,而是圈定范围,先就一些大框框进行沟通,借此了解客户的沟通方式。客户是喜欢开放型问题还是封闭型问题?客户是很健谈还是很
含蓄?客户是主导型沟通者还是被动型沟通者?客户是具有很强逻辑思维的人,可以将一个问题有条不稳地讲清楚,还是一个发散型思维的人,总是没有什么目的地想到什么就讲什么?如果双方的沟通方式不能切合 rf4ss,必定会造成沟通的障碍。
再次,客户的时间是有限的,很多时候不能有整块的时间来配合需求调研。由于项目的周期也是有限的,因此每一次会面都需要争分夺秒,用最快的时间把问题搞清楚。另一方面,客户通常不会为需求调研做好准备,往往是等着回答问题的。如果需求分析人员寄希望于客户能有条不理的把一套业务都能讲解很清楚,整个业务形成闭环往往是很不现实的。这就要求需求分析人员根据经验提前要做好调研计划和内容,逐个进行落实。
系统分析与设计的方法主要包括结构化生命周期法、原型化方法、面向对象方法。
按时间过程来分,开发方法分为生命周期法和原型法,实际上还有许多处于中间状态的方法。原型法又按照对原型结果的处理方式分为试验原型法和演进原型法。试验原型法只把原型当成试验工具,试了以后就抛掉,根据试验的结论做出新的系统。演进原型法则把试好的结果保留,成为最终系统的一部分。按照系统的分析要素,可以把开发方法分为三类:
①面向处理方法。
②面向数据方法。
③面向对象的方法
系统分析和设计应遵循的原则有:
系统开发是面向客户的,应从客户的角度考虑。
诸如系统开发生命周期之类的产品更新换代机构应该在所有的信息系统开发项目中建立起来。
信息系统开发的过程并不是一个顺序的过程,它允许步骤的重叠和倒转等。如果系统的成功可能性受到很大限
制时,应取消整个项目。
文档材料是系统开发生命周期中重要的可递交成果,应加以重视
最后总结下,学完《系统分析与设计方法》这门课程再加上老师在课堂上的一些讲解以及以前学习过程中的收获,我对于系统分析与设计有了进一步的理解,能高屋建瓴的看待系统分析与设计整个过程的步骤以及增加了一些开发设计中的重要事件的理论知识。