软件设计,建模及需求分析

文章目录

设计原则

SOLID原则

单一职责

开闭 (扩展开放,修改关闭)

里氏替换 (父类出现地方都可以用子类替换)

接口隔离

依赖倒置(高层模块不依赖低层,两层都依赖于抽象, 抽象不依赖于细节,细节依赖抽象)

建模及需求分析

原始需求需要拆解成具体的开发需求及建模才方便开发人员理解。

个人体会所有系统或者功能可围绕以下三点:

1.使用系统的用户有哪些

2.系统的基本场景,异常场景

3.不同用户在系统的基本场景和异常场景的角色

纯文字形式(规格说明书)不直观,因此UML图就是解决这个问题。

1.类UML图太细节了,不实用。

2.用例图可大方向了解系统涉及场景及用户

3.时序图则是具体一个功能的实现

这张图再具体点就是标注对应的类及方法

UML画图工具

推荐draw.io

原型图画图工具

推荐Figma,Sketch要收费

重构

个人常用(容易忘)的方法

1.卫语句替代嵌套条件表达式

2.查询函数和修改函数分开

3.单一变量

相关推荐
workflower2 天前
基本作业-管理⾃⼰的源代码
开发语言·单元测试·软件工程·需求分析·个人开发
一个处女座的程序猿O(∩_∩)O3 天前
一个完整的AI项目从需求分析到部署的全流程详解
人工智能·需求分析
okjohn4 天前
浅谈需求分析与管理
java·架构·系统架构·软件工程·产品经理·需求分析·规格说明书
workflower7 天前
软件工程与计算机科学的关系
开发语言·软件工程·团队开发·需求分析·个人开发·结对编程
黄焖鸡能干四碗9 天前
MES生产执行制造系统建设(Java+Mysql)
java·大数据·开发语言·信息可视化·需求分析
workflower9 天前
跨链协同制造中的服务博弈与激励机制
开发语言·软件工程·制造·需求分析·个人开发·结对编程
睿创咨询25 天前
需求分析:对原始需求进行加工提炼
需求分析·管理·ipd·集成产品开发·睿创咨询
帅次1 个月前
系统分析师-软件工程-信息系统开发方法&面向对象&原型化方法&面向服务&快速应用开发
软件工程·团队开发·软件构建·需求分析·代码规范·敏捷流程·结对编程
帅次1 个月前
系统分析师-软件工程-软件开发环境与工具&CMM&CMMI&软件重用和再工程
性能优化·软件工程·软件构建·需求分析·规格说明书·代码复审·极限编程
小小王app小程序开发1 个月前
婚恋交友软件开发用户需求分析:从信任构建到情感落地的全链路拆解
需求分析·交友