二、软件工程——Modeling

news2025/1/29 14:01:09

1.Undestanding Requirements

System Engineering(系统工程)

!!!Requirements Engieering(需求建模)

1.Inception(开始):(确认利益相关者)

2.Elicitation(引出)by both software engineers and customers

The goal is to identify the problem、propose elements of the solution
、negotiate different approaches, and specify a preliminary set of solution requirements

3.Elaboration(细化)Building the Analysis Model

4.Negotiation(协商)

5.Specification说明书

6.Validation校验

用例图/活动图/类图/状态图 :用例图

2.Requirements Modeling

需求模型必须实现的三个目标:
§ 1 )描述客户需要什么
§ 2 )为软件设计奠定基础
§ 3 )定义在软件完成后可以被确认的一组需求

software requirement includes:

1.. Scenario-Based Methods(场景的建模)(use-case)

2.Class-Based Modeling: 发现对象类的实例(实体类,边界类,控制类)(Class)

1.找出所有名词

2.筛选出可能的类

3.修改名词得到类

4.确定对象类

5.细化对象类

3.Behavioral Modeling    (State Diagram+Sequence Diagram)

1.make a list of the different states of a system (How does the system behave?)
列出一个系统的不同状态
2.indicate how the system makes a transition from one state to another (How
does the system change state?)
 indicate event
 indicate action
指出各状态之间的转移是怎么发生的
3.draw a state diagram or a sequence diagram

4.Flow Models

3.Design Concepts

1. Design

2. Design and quality

3. Design Principles

4. Fundamental Concepts

1>Abstraction抽象
2>Refinement精细化
3>Architecture架构
4>Patterns模式     B/S(WEB浏览器即可),C/S(需要下载客户端)
5>Modularity模块化
6>Hiding隐藏
7>Functional independence函数独立(模块独立)
模块独立的指标:内聚度(模块内部元素的紧密程度,越高越好)
指一个模块中各个部分都是为完成一项具体功能而协同
工作,紧密联系,不可分割的(单个功能)
若需要完成的功能中含“和”,“或”等词,它一定
不够功能内聚。
耦合度(模块间的关联程度)
8>Aspects方面
9>Refactoring
10>OO design concepts
11>Design Classes

4.Design Mothods

1.Behavioral Modeling

1. What is Architecture

2. Architectural Styles

Data flow architectures数据流架构

 

Call and return architectures调用和返回架构

 

Independent component architectures独立组件架构

 

Virtual machine architectures虚拟机架构
Repository architectures存储库体系结构

 

3. Architectural Patterns

Concurrency

 Persistence

Distribution

4. Architectural Design

4. Architectural Design

5. Architecture Reviews

6. Agility and Architecture

2.Component Level Design

1.What is a Component

Basic Design Principles
⭐The Open-Closed Principle ( OCP):模块[组件]应该打开扩展,但为修改关闭
⭐The Liskov Substitution Principle ( LSP):子类应该可以替换它们的基类
Dependency Inversion Principle ( DIP)
⭐The Interface Segregation( ISP):许多特定于客户的接口比一个通用接口要好

2.Cohesion:(内聚力)

Conventional view:   the “single-mindedness” of a module
OO view:
implies that a component or class encapsulates only attributes and operations that are closely related to one another and to the class or component itself

 Coupling:(耦合)

OO view:
  a qualitative measure of the degree to which classes are connected to one another

3.User Interface Design

1. Golden Rules for UI Design

Place the user in control
Reduce the user’s memory load
Make the interface consistent

2. User Interface Design Models

3. User Interface Design Process

1.Interface Analysis
2.User Analysis
3.Task Analysis and Modeling
4.Analysis of Display Content
  the environment
  Interface Design Steps & Design Issues
  Design Evaluation Cycle

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/521316.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

164道网络安全工程师面试题(附答案)

为了更好地帮助大家高薪就业,今天就给大家分享两份网络安全工程师面试题,一共有164道面试真题,希望它们能够帮助大家在面试中,少走一些弯路、更快拿到offer! 93道网络安全面试题 1、什么是SQL注入攻击 2、什么是XSS…

Linux中的特殊进程:idle进程(0号进程)、init进程(1号进程,被systemd 取代 )、kthreadd进程(2号进程)

文章目录 1. Linux中的三个特殊进程:2. idle进程、init进程、kthreadd进程的创建3 kthreadd进程3.1 kthreadd进程的启动3.2 kthreadd进程创建子进程3.3 kthreadd的工作流程总结 4. init进程4.1 init进程的启动 4. 总结参考 1. Linux中的三个特殊进程: i…

【作者踩坑总结0错版】vscode配置codeql-MacBook(M1/M2芯片-arm)

文章目录 前言一、codeql是什么二、安装必备工具2.1、安装codeql-cli2.2、安装codeql仓库2.3、桌面新建文件夹2.4、安装vscode 三、配置codeql环境变量四、vscode配置codeql插件4.1、下载测试靶场4.2、生成数据库文件(最难最多bug)4.3、vscode配置ql数据…

[入门必看]数据结构5.3:二叉树的遍历和线索二叉树

[入门必看]数据结构5.3:二叉树的遍历和线索二叉树 第五章 树与二叉树5.3 二叉树的遍历和线索二叉树知识总览5.3.1_1 二叉树的先中后序遍历5.3.1_2 二叉树的层次遍历5.3.1_3 由遍历序列构造二叉树5.3.2_1 线索二叉树的概念5.3.2_2 二叉树的线索化5.3.2_3 在线索二叉树…

服务(第十九篇)mysql的备份和恢复

备份的类型: ①物理备份:备份数据库的物理文件,数据文件和日志文件; 冷备份:关闭数据库进行的; 热备份:数据库处于运行中状态,依赖于日志文件; 温备份:数…

Cisco NX-OS Software Release 10.3(3)F - 网络操作系统软件

Cisco NX-OS Software Release 10.3(3)F - 网络操作系统软件 请访问原文链接:https://sysin.org/blog/cisco-nx-os-10/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org Cisco NX-OS Cisco NX-OS 操作系统助力网络紧…

Golang中map基础

目录 map类型 声明和初始化 元素操作 大小和容量 并发问题 实现原理 注意 map类型 Go语言中的map类型是一种key-value(键值对)结构,用于存储一组无序的数据,其中键是唯一的,值可以相同或者不同。在Go语言的程序…

button 设置外观

导入图片 设置拉伸 设置按钮的FlatStyle属性为Flat 设置透明背景

先到先得先学,2023最新国内大厂最新Java面试八股文总结

“铜三铁四”接近尾声,身边被迫“毕业”或者主动在这个时间点跳槽的大佬基本该找到工作的都找到工作了,找不到的也大多数都已经躺平了(手动狗头),只剩一群“45度人”(卷不动,躺不平的人&#xf…

用于跨中心多边形分割的任务相关特征补充

文章目录 Task-Relevant Feature Replenishment for Cross-Centre Polyp Segmentation摘要本文方法Domain-Invariant Feature Decomposition (DIFD)Task-Relevant Feature ReplenishmentPolyp-Aware Adversarial Learning (PAAL)总损失函数 结果 Task-Relevant Feature Repleni…

AI翻译工具分享

LanguageX简介 冠军翻译引擎交互式翻译,为专业译者而生的新一代译者工具 自2017年神经网络机器翻译流行以来,“机器翻译替代人工翻译”的观点屡见不鲜。作为一个技术和语言背景结合的团队,LanguageX认为语言服务是高度复杂、需要创意的智力活动,并肩负着人类沟通的重要使命。La…

机器学习之k-means聚类二、啤酒聚类实现

文章目录 一、环境开发说明二、基于前篇理论实现1. 数据说明2. 具体实现流程a. 对数据进行标准化处理b. 使用手肘法进行K值得选择c. 算法实现,d.将聚类结果进行可视化e. 计算轮廓系数f. 轮廓系数可视化 三、 文中的完整代码四、不调包实现五、参考文献 一、环境开发…

MySQL-图形化界面工具 (下

♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️树高千尺,落叶归根人生不易&…

ip route 和 route 命令

ip route 属于 iproute2 工具包;route 属于 net-tools 工具包;目前 ip route 使用较为广泛; 两个工具包的介绍请见 “iproute2 和 net-tools 介绍” 文章。 ip route命令介绍 ip route命令用于管理静态路由表。 linux 系统中,可…

【GigaGAN论文精读】Scaling up GANs for Text-to-Image Synthesis

【GigaGAN论文精读】Scaling up GANs for Text-to-Image Synthesis 0、前言Abstract1. Introduction(图放在文末)2. Related Works2.1Text-to-image synthesis.2.2GAN-based image synthesis.2.3Super-resolution for large-scale text-to-image models.…

【Java|基础篇】面向对象三大特性之封装

文章目录 1.前言2.什么是封装3.如何更好的封装4.封装的好处5.总结 1.前言 面向对象有三个特性:封装,继承和多态,本文主要讲解封装. 封装是面向对象编程的基本原则之一,它可以提高程序的安全性、稳定性、可维护性和可扩展性,减少了代码的冗余&#xff0c…

【框架源码】Spring源码核心注解Conditional和应用

1.什么是Conditional注解 Conditional来源于spring-context包下的一个注解。通过Conditional配置一些条件判断,当所有条件都满足时,被该Conditional注解标注的目标才会被Spring处理。 例如根据当前环境、系统属性、配置文件等条件来决定是否注册某个Bea…

股票量价关系基础知识3

成交量变化的表现形式 成交量变化的表现形式主要有以下几种 一、缩量 一般界定当日成交量低于前一交易日成交量10%以上为缩量。 缩量往往发生在上升途中的回调末期、上涨末期以及股价下跌的中后期。一般下跌趋势中的缩量阶段,往往意味着股价仍未见底,不能…

服务攻防-中间件安全CVE复现IISApacheTomcatNginx漏洞复现

目录 一、导图 二、ISS漏洞 中间件介绍> 1、短文件 2、文件解析 3、HTTP.SYS 4、cve-2017-7269 三、Nignx漏洞 中间件介绍> 1、后缀解析漏洞 2、cve-2013-4547 3、cve-2021-23017 无 EXP 4、cve-2017-7529 意义不大 四、Apache漏洞 中间件介绍> 1、漏…

AcWing算法提高课-1.3.5买书

宣传一下算法提高课整理 <— CSDN个人主页&#xff1a;更好的阅读体验 <— 本题链接&#xff08;AcWing&#xff09; 点这里 题目描述 小明手里有n元钱全部用来买书&#xff0c;书的价格为10元&#xff0c;20元&#xff0c;50元&#xff0c;100元。 问小明有多少种买…