1.0版-结构化(经典)软件开发方法: 需求分析阶段+设计阶段

结构化软件开发方法:

       特点:

              面向数据流, 以数据流为中心构建软件的分析/设计模型

              结构化分析模型:数据流图

              结构化设计模型:结构图, 模块的程序流程图

       1.建立结构化分析模型:

                      数据流图--DFD图

                             功能建模, 规约加工流程

                      实体关系图-ER图

                             数据建模, 对实体对象的描述

                      状态转换图-SDT图

                             行为建模, 控制规约

                      数据字典--DD

                             包含软件使用和产生的所有数据的描述

       2.建立结构化设计模型:

              2.1概要设计

                             划分模块及其关系, 确定接口--将结构化分析阶段的数据流图DFD映射成结构图

                          1.体系结构设计

                                           关注的是软件系统的整体结构,包括

                                           1.体系架构风格的选择,

                                                         比如, B/S, C/S...                                

                                           2.系统的物理结构

                                                         比如, nginx负载均衡, web服务器, 数据库服务器

                                           3.系统如何划分成不同的软件组件,

                                                        比如,前端用户界面, 后端逻辑处理组件, 数据库表

                                           4.这些软件组件之间的关系,以及它们如何交互

                                                         比如,前后端通过http请求通信,

                                                        后端使用sql对数据库表进行操作

                             2.数据结构设计

                                           关注的是如何组织和存储数据

                                                  比如, 数据结构的选择、数据库设计、数据字典的创建等

                             3.接口设计

                                           关注的是系统内部组件之间的接口以及系统与外部系统之间的接口

                                                  软件部件间接口

                                                         比如, 前端与后端是否使用RESTful风格进行通信

                                                                  后端操作数据库使用sql还是orm

                                                  功能模块间接口

                                                         比如, 线上聊天室, A用户给B用户发送消息,

                                                                 A通过聊天管理模块发送,

                                                                然后, 通知模块会提醒B用户查看消息

                                                  软件部件与外部系统接口

                                                         比如, 后端调用第三方api服务

                                                  人机接口

                                                         比如, 各个网站简洁大气的主页面

             2.2详细设计(部件级设计)

                             给出每个模块的程序流程图或伪代码      

       3.评判方法:

              主要根据模块的内聚度和耦合度判断

下面是作者的废话, 别看了

啥话也不说了

感觉学校教学与社会实践有点脱节了, 虽然408的那些知识很重要, 但是

也没必要一点也不跟时代节奏呀, 让学生硬扣代码吗??? 

啥也不说, 这碗自学的鸡汤, 灌你嘴里了吧?!

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

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

相关文章

C++基础:Pimpl设计模式的实现

2024/11/14: 在实现C17的Any类时偶然接触到了嵌套类的实现方法以及Pimpl设计模式,遂记录。 PIMPL ( Private Implementation 或 Pointer to Implementation )是通过一个私有的成员指针,将指针所指向的类的内部实现数据进行隐藏。 …

Intellij idea 报错:Error : java 不支持发行版本5

点击“Settings”-->“Bulid, Execution,Deployment”-->“Java Compiler”,Target bytecode version设为本地Java版本。(可以在Default Settings中把Project bytecode version 一劳永逸地配置成本地Java版本) Default Settings&#x…

物理验证Calibre LVS Stamping Conflict SoftConnect案例解析

最近有好几个星球会员问到物理验证Calibre LVS检查中的Stamping Conflict问题。小编今天给大家分享下Stamping冲突的相关topic。 Calibre PEX Hspice Netlist提取步骤(数模芯片提取spice netlist流程) Stamping Conflict概念 当不同的net对应的net sha…

TypeScript在现代前端开发中的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 TypeScript在现代前端开发中的应用 TypeScript在现代前端开发中的应用 TypeScript在现代前端开发中的应用 引言 TypeScript 概述…

代码随想录训练营Day24 | 134. 加油站 - 135. 分发糖果 - 860.柠檬水找零 - 406.根据身高重建队列

134. 加油站 题目链接:134. 加油站 思路: 由题意可得,需要能够走完所有的加油站,就需要保证车到达每一个加油站的时候有油,故先对gas和cost数组做差,得到每个加油站的油差,正代表着车在这里能加…

Burp Suite 专业版使用【Mac版本 m1处理器】

前言 Burp Suite 专业版(Professional)是需要付费使用的,但是社区版(Community)是免费的,下图第一个下拉框可以切换专业版和社区版本。 Burp Suite 专业版如果没有License key,是不能正常使用的,下边是在没有购买License key的情况下使用Burp Suite 专业版的方法。 本文是…

【MySQL 保姆级教学】事务的隔离级别(详细)--下(13)

事务的隔离级别 1. 如何理解事务的隔离性2. 事务隔离级别的分类3. 查看和设置事务隔离级别3.1 全局和会话隔离级别3.2 查看和设置隔离级别 4. 事务隔离级别的演示4.1 读未提交(Read Uncommitted)4.2 读已提交(Read Committed)4.3 …

【热门主题】000044 大数据治理:开启数据时代新征程

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【热…

JavaWeb后端开发知识储备1

目录 1.DTO/VO/PO 2.MVC架构/微服务架构 3.JWT令牌流程 4.ThreadLocal 5.接口路径/路径参数 1.DTO/VO/PO 1.1 DTO DTO 即 Data Transfer Object—— 数据传输对象,是用于传输数据的对象,通常在服务层与表现层之间传递数据,DTO 通常用于…

35岁程序员的四条职业发展路径:提前规划,迎接新起点

引言 20多岁:初入职场,怀揣梦想,对未来充满期待。30多岁:面临家庭与事业的双重压力,开始感到迷茫与焦虑。40岁:步入中年,如何在激烈的职场竞争中保持优势,继续书写精彩人生&#xf…

C++提高编程-泛型编程

一、模板: 1.1.模板的概念: 1.模板就是建立通用的模具,大大提高复用性2.例如生活中的模板: 一寸照片模板: PPT模板: 模板的特点: 模板不可以直接使用,它只是一个框架模板的通用并不是万能的 二、泛型编…

【Chapter 3】Machine Learning Classification Case_Prediction of diabetes-XGBoost

文章目录 1、XGBoost Algorithm2、Comparison of algorithm implementation between Python code and Sentosa_DSML community edition(1) Data reading and statistical analysis(2)Data preprocessing(3)Model Training and Evaluation(4)Model visualization 3、summarize 1…

Java学习——Day12

多态指的是同一个方法不同对象调用会有不同的行为,多态是方法的多态,属性没有多态,多态要有继承和重写。 这就是多态,其实原理也很简单,就是利用继承方法的重写实现的 对象的转型 向上转型:子类转成父类&…

AI生成字幕模型whisper介绍与使用

文章目录 前言一、whisper介绍二、预训练模型下载与环境配置三、推理 前言 随着人工智能技术的飞速发展,AI生成字幕模型已成为视频内容创作和传播领域的重要工具。其中,OpenAI推出的Whisper模型以其卓越的性能和广泛的应用场景,受到了广大用…

计算机毕业设计 | SpringBoot社区物业管理系统 小区管理(附源码)

1, 概述 1.1 课题背景 近几年来,随着物业相关的各种信息越来越多,比如报修维修、缴费、车位、访客等信息,对物业管理方面的需求越来越高,我们在工作中越来越多方面需要利用网页端管理系统来进行管理,我们…

4G与lora DTU农业监测应用数字化管理升级

农业监测的数字化管理升级,通过采用4G和LoRa等无线技术,解决渔业养殖、畜牧管理、农业灌溉以及远程监测等领域的互联互通。 渔业养殖水质监测 在渔业养殖中4G DTU通过采集各种水质传感器进行水质监测,4G DTU能够实时监测养殖水体的温度、pH值…

GA/T1400视图库平台EasyCVR视频融合平台HLS视频协议是什么?

在数字化时代,视频监控系统已成为保障安全、提升效率的关键技术。EasyCVR视频融合云平台,作为TSINGSEE青犀视频在“云边端”架构体系中的重要一环,专为大中型项目设计,提供了一个跨区域、网络化的视频监控综合管理系统平台。它不仅…

maven工程修改jdk编译版本的几种方法

一.背景 maven工程修改jdk编译版本的几种方法,以前这些小细节处理了就处理了,没有去记录,现在带徒弟,就写下吧!可能不全面,不喜勿喷。哦,说下,本文的例子是在eclipse中开发截图的。 …

详细介绍Transformer!

🤗Transformer是一种神经网络架构,核心思想是利用自注意力机制来捕捉序列中元素之间的关系。从而避免了传统RNN难以处理长序列依赖的问题。 Transformer的主要组件和流程 💫Encoder-Decoder结构 Transformer包含编码器和解码器两个主要部分…

中国车牌分类

从颜色和单双层分类(不考虑临时车牌) 黄单黄双黄绿单蓝单蓝双绿单绿双黑单黑双白单白双 #特殊文字 挂使港澳学警领临