网站首页 > 文章精选 正文
信息系统建设
信息系统生命周期
甲方《需求规格说明书》→乙方"系统分析"
系统设计→怎么做
不同项目有不同的生命周期,不同角度有不同的名称
信息系统开发方法
结构化开发 | 原型法 | 面向对象开发 | |
概念 | 应用最为广泛的一种开发方法把整个系统分为若干阶段,然后依次进行,前一阶段是后一阶段的依据。每个阶段都有明确详尽的文档编制要求,并对其进行有效控制。 | 在无法全面准确地提出用户需求的情况下,并不要求对系统做全面、详细的分析,而是基于对用户需求的初步理解,先快速开发一个原型系统,然后通过反复修改来实现用户的最终系统需求。 | 用对象表示客观事物,对象是一个严格模块化的实体,在系统开发中可被共享和重复引用,以达到复用的目的。 |
特点 | 注重开发过程的整体性和全局性 | (1)对用户需求是动态响应、逐步纳入的。 (2) 系统分析、设计随原型不断修改同时完成,之间并无明细界限也没有明确分工。 (3)抛弃型原型、进化型原型 | (1)面向对象方法主要涉及分析、设计和实现三个阶段,其界限并非十分明确 (2)在整个开发过程中是同一套工具。 |
缺点 | (1)开发周期长 (2)文档、设计说明繁琐,工作效率低 (3)要求开发之初全面认识系统的需求,充分预料可能发生的变化 | (1)原型法不适用于开发大型的信息系统 (2)系统难于维护 (3)如果用户合作不好,盲目纠错会拖延开发进程 | (1)需要一定的软件支持环境 (2)在大型项目的开发上具有定的局限性,不能涉足系统分析以前的开发环节 |
信息系统设计
信息系统设计 | 从信息系统的总体目标出发,根据系统逻辑功能的要求,并结合经济技术条件、运行环境和进度等要求,确定系统的总体架构和系统各组成部分的技术方案,合理选择计算机、通信及存储的软、硬件设备,制定系统的实施计划。 |
方案设计 | 系统总体设计=系统的总体架构方案 + 软件系统总体架构设计 + 数据存诸总体设计 + 计算机和网络系统的方案设计 |
系统详细设计=代码+数据库+人机界面+处理过程 | |
系统架构 | 将系统整体分解为更小的子系统和组件,从而形成不同的逻辑层或服务进一步确定各层接口,层与层之间的关系。对整个系统纵向分解,同一逻辑层再横向分解。 最终形成系统的整体架构。系统设备选型主要取决于系统架构。 |
设备、DBMS技术选型 | 必须考虑用户的使用要求、系统运行环境、现行的信息管理和信息技术的标准规范及有关法律制度。 |
软件工程
软件开发模型
需求分析与定义
软件设计
软件测试
软件运行与维护
软件质量保证及质量评价
软件配置管理
软件开发工具
软件复用
软件工程概念
软件工程:用工程的方法进行软件开发、管理和维护
解决问题包括:规模越来越大,复杂度越来越高,用户需求不明确,缺乏软件方法和工具支持,开发成本、进度、质量无法保证和维护困难的问题
软件开发模型
瀑布模型
迭代模型RUP
敏捷方法
V模型
原型化模型
螺旋模型
瀑布模型
瀑布模型:一个经典的软件生命周期模型,也叫预测型生命周期、完全计划驱动型生命周期
原型化模型
原型化模型:瀑布和V模型将原型化模型的思想用于需求分析环节,来解决因为需求不明确而导致产品出现严重后果的缺陷
V模型
名称 | 解释 |
单元测试 | 主要目的是针对编码过程中可能存在的各种错误,例如用户输入验证过程中的边界值的错误。 |
集成测试 | 主要目的是针对详细设计中可能存在的问题,尤其是检查各单元与其他程序部分之间的接口上可能存在的错误。 |
系统测试 | 主要针对概要设计,检查系统作为一个整体是否有效地得到运行,例如在产品设置中是否能达到预期的高性能。 |
验收测试 | 通常由业务专家或用户进行,以确认产品能真正符合用户业务上的 需要。 |
螺旋模型
一个演化软件过程模型,将圆形实现的迭代特征与线性顺序(瀑布)模型中控制的和系统化的方面结合起来。强调风险分析,特别适合用于庞大而复杂的、高风险的系统
迭代模型
在迭代模型中,每个阶段都执行一次传统、完整的穿行过程串,执行一次过程串就是一次迭代。RUP(Rational Unified Process)是迭代模型的一种。
优先选择迭代模型和增量型生命周期:组织需要管理不断变化的目标和范围,组织需要降低相矛盾复杂性或产品的部分交付有利于一个或多个干系人,且不会影响最终或整批可交付成果的交付。
大型复杂项目通常采用迭代方式来实施:这是项目团队可在迭代过程中综合考虑反馈意见和经验教训,从而降低项目风险。
敏捷模型
是一种以人为核心、迭代、循环渐进的开发方法。适用于一开始并没有或不能完整地确定出需求和范围的项目,或者需要对应快速变化的环境,或者需求和范围难以实现确定,或者能够以有利于干系人的方式定义较小的增量改进。
敏捷方法,也叫做适应型生命周期、或变更驱动方法。小步快跑,持续集成。
敏捷方法的目的在于对应大量变更,获取干系人的持续参与。敏捷方法里迭代很快(通常2~4周迭代1次),而且所需时间和资源是固定的。虽然早期的迭代更多地聚焦于计划活动,但通常在每次迭代中都会执行多个过程。
软件过程管理(了解即可)
软件过程管理设计技术过程和管理过程,通常包括以下几方面
项目启动与范围定义
项目规划
项目实施
项目监控与评审
项目收尾与关闭
软件质量保证及质量评价
术语 | 解析 |
软件质量 | 软件特性的总和,是软件满足用户需求的能力,即遵从用户需求,达到用户满意。软件质量包括“内部质量”“外部质量”和“使用质量”三部分。 |
软件需求 | 定义了软件质量特性,及确认这些特性的方法和原则。 |
软件质量管理过程 | 由许多活动组成一些活动可以直接发现缺陷,另一些活动则检查活动的价值。其中包括质量保证过程、验证过程、确认过程、评审过程、审计过程等。 |
软件质量保证 | 通过制订计划、实施和完成等活动保证项目生命周期中的软件产品和过程符合其规定的要求。 |
验证过程 | 试图确保活动的输出产品已经被正确构造,即活动的输出产品满足活动的规范说明 |
确认过程 | 试图确保构造了正确的产品,即产品满足其特定的目的。 |
管理评审 | 目的是监控进展,决定计划和进度的状态,或评价用于达到目标所用管理方法的有效性 |
技术评审 | 技术评审的目的是评价软件产品,以确定其对使用意图的适合性。 |
软件审计 | 目的是提供软件产品和过程对于可应用的规则、标准、指南、计划和流程的遵从性的独立评价。审计是正式组织的活动,识别违例情况,并要生成审计报告,采取 |
面向对象系统分析与设计
面向对象基本概念
对象:是对客观事物的抽象,类是对对象的抽象。类是一种抽象的数据类型。他们的关系是,对象是类的实例,类是对象的模板。
抽象:(Abstraction)是简化复杂的现实问题的途径。
封装:是进仓对象的属性和实现希捷,仅对外公开接口,控制在程序中属性的读取和修改的访问级别。
继承:可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法等。
多态:同一操作作用域不同的对象,可以有不同的解释,产生不同的执行结果。
接口:描述对操作规范的说明,其只说明操作应该做什么。并没有定义操作如何做。
消息:体现对象间的交互,通过他向目标对象发送操作请求。
组件:表示软件系统可替代的、屋里的组成部分,封装了模块功能的实现。
UML 基本概念特征
可视化的建模语言,不是编程语言
面向对象分析与设计的一种标准表示
允许任何一种过程和方法使用它
简单并且可扩展
强调重用(架构、框架、模式和组件)
软件架构
典型架构
管道/过滤器
一个过滤器相当于一个组件
每个组件都有输入和输出
数据流经过过滤器输入和输出后进入下一个过滤器
高类聚,低耦合
看不到过滤器内部的结构
面向对象模式
调用组件(对象)的模式
事件驱动模式
不直接调用组件。而是将组件注册到相关事件中
触发一个事件后,会自动调用组件
分层模式 ISO 模型
实现一个比较复杂的问题,通过多层加工处理
每一层是为了上一层提供一个服务,直到最终解决问题
客户机/服务器模式
C/S模式是为解决资源不对等的模式
每个客户端都可以调用服务器的资源
面向服务的架构
典型应用集成技术
中间件技术
中间件是位与硬件、操作系统等平台和应用之间的通用服务。借由中间件,解决了分布系统的异构问题
分类名称 | 实例 | |
数据库中间件 | 通过一个抽象层访问数据库从而允许使用相同或相似的代码访问不同的数据库资源 | windows → ODBC; Java →JDBC |
远程调用中间件 | 一种分布式应用程序的处理方法 | Remote Procedure Call RPC |
面向消息中间件 | 利用高效可靠的消息传递机制进行平台无关的数据传递,并可基于数据通信进行分布系统的集成 | Message → Orient MiddlewareMOM IBM → MOSeries |
分布式对象中间件 | 是建立对象之间客户/服务器关系的中间件,结合了对象技术与分布式计算技术 | OMG → CORBA RMI → EJB 微软 → DCOM |
事务处理中间件 | 提供支持大规模事务处理的可靠运行环境。TPM位于客户和服务器之间,完成事务管理与协调、负载平衡、失效恢复等任务,以提高系统的整体性能 | TPM IMB/BEA → Tuxedo 支持EJB的JavaEE应用服务器 |
Web Services技术
应用目标
跨越防火墙
集成不同语言编写的在不同平台上运行的应用程序
B2B集成
软件重用
功能 | 协议 |
传递信息 | 简单对象访问协议 (Simple Object Access Protocal,SOAP) |
描述服务 | Web服务描述语言(Web Services Description Language, WSDL) |
服务注册 | 统一描述、发现及集成 (Universal Description Discovery andIntegration, UDDI) |
编码格式层 | XML |
JavaEES架构
JavaEE应用服务器运行环境主要包括
组件(Component):表示应用逻辑的代码
容器(Container):组件运行的环境
服务(Services):是应用服务器提供的各种功能接口,可以同系统资源进行交互
猜你喜欢
- 2025-04-07 C++ 与 C 的那些事儿:深度剖析两者区别
- 2025-04-07 避免踩坑,C++常见面试题的分析与解答
- 2025-04-07 全网最狠C#面试拷问:这20道题没答出来,别说你懂.NET!
- 2025-04-07 C/C++面试题(一)(c/c++面试题库)
- 2025-04-07 Python 中的继承和多态(python多继承的顺序)
- 2025-04-07 C++ 能用来做什么?八大就业方向分析
- 2025-04-07 Python面向对象详解(python面向对象六大原则)
- 2025-04-07 R数据分析:纵向分类结局的分析-马尔可夫多态模型的理解与实操
- 2025-04-07 了解java三大特性!你真的正确了解了吗?
- 2025-04-07 python初识对象(python3对象)
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 稳压管的稳压区是工作在什么区 (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)