文章 44
浏览 11238
UML

UML

提到 UML 就不得不让人想到这幅图,UML 就如图中所绘一样是这三个老哥思维精华所汇。 UML 的优势 过去数十种面向对象的建模语言各自为战,而 UML 消除了一些潜在的差异,一统江湖 通过统一语义和符号表示,提高了面向对象 使项目建立在一个成熟的标准建模语言之上 便于沟通和交流,统一的理解 UML 组成 构建块 公共机制 架构 构建块 事物 关系 图 UML 中的关系 关联 依赖 泛化(子类与父类之间的关系,注意箭头指向父类) 实现(实现接口) 聚合(...组成.../...包含... ,指向整体,整体消失部分可以单独存在) 组合(与聚合不同,若整体消失则部分没有存在的意义) UML 中的图 静态模型:类图、对象图、部署图、构件图 动态模型:顺序图、协作图、活动图、状态图、用例图 用例图 用例图是从系统外部,从用户的角度描述系统的功能集,常用于需求分析阶段。参与者是与系统交互的人或事物。 主要图示: 需要注意的是“include”和“extend”的区别: 在我个人的理解上,“include”指的是必须包含的内容,比如:取款必须输入密码。而“....

软件工程笔记

软件工程笔记

软件工程 软件的定义:软件是计算机系统中与硬件相辅相成的另一部分,它包括程序、相关数据以其说明文档。需要注意的是软件不等于程序。 软件的本质特性: 复杂性 一致性 可变性 不可见性 软件工程: 将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程,即将工程化应用于软件开发和管理之中 对 i.中所选方法的研究。 软件工程的主要内容: 技术方面:研究软件开发方法、软件开发过程、软件开发工具 管理方面:主要研究软件项目管理学、软件经济学、软件心理学 软件工程的三个基本要素: 过程 方法 工具 软件危机:计算机软件开发和维护过程中所遇到的一系列严重问题 已完成的软件不满足用户的需求 软件产品的质量没有保证 开发进度不能保障,交付时间一拖再拖,开发成本超出预算 软件没有适当的文档 软件的可维护程度低 软件开发方法: 结构化方法 面向对象方法 软件过程:软件过程是一系列开发活动,将用户的需求转化为用户满意的产品。主要包括:可行性分析、项目计划、需求分析、总体设计、详细设计、编码测试、运行维护等阶段。 软件过程有哪些经典模型:....

故障树分析(FTA)

故障树分析(FTA)

故障树分析,就是选择某一故障作为顶层事件,逐步拆解事件为中间事件,直到事件无法拆解变为底层事件。拆解事件的过程可以画成一棵树,这棵树也就称为故障树,利用故障树分析底层事件对故障发生影响的重要程度称为故障树分析。 建树符号 事件符号 逻辑符号 结构函数 底事件状态 顶事件状态 可用与底事件有关的函数表示 计算 或门 $ \phi( T ) = \sum _ { i = 1 } ^ { n } { x _ i } $ 与门 $ \phi( T ) = \prod_{i = 1 }^{ n }{ x_i } $ 化简 $ T = x_1 ( x_1 + x_4 ) x_3 = x_1 x_3 + x_1 x_4 x_3 = x_1 x_3 $ 最小割集 最小割集是指,是指让顶层事件发生的最少数量的底层事件集合 例: 顶层事件 T 可以表示为 化简为 根据表达式为或运算,则可知有 4 个最小割集,为: 路集:是割集的对偶集合,也即不触发发生顶层事件的底层事件集合 顶层事件概率的计算 将顶层事件表示为,最小割集的形式 $ ....