当前位置:网站首页>软件开发工具的技术要素
软件开发工具的技术要素
2022-08-04 23:50:00 【赟文武】
思维导图

基本功能与一般结构
(1)基本功能五方面——
- 提供描述软件状况及其开发过程的概念模式
- 提供存储和管理有关信息的机制和手段
- 帮助使用者编制、生成及修改各种文档
- 帮助使用者编写程序代码,即一般常说的代码生成
- 对于历史信息进行跨生命周期的管理,把项目进度与版本更新的有关信息科学的管理起来
(2)一般结构——
- 总控和人机界面处于中心位置,是使用者与软件开发工具之间交流信息,实现所有支持功能的桥梁
总控与人机界面
AD/Cycle将软件开发工具划分为五阶段:需求分析阶段、分析设计阶段、编码阶段、测试阶段、维护阶段
- 需求分析阶段的任务是建立逻辑模型
- 分析设计阶段的基本任务是完成系统的总体设计
- 编码阶段指具体的编写软件的阶段
- 测试阶段的任务是对已经完成的各个模块或子系统进行测试
- 维护阶段的任务是组织管理软件的日常运行,收集运行中的状态信息及出现的问题,并且及时的进行局部的修改与完善
面向用户最根本的是要立足于符合实际的应用领域
面向用户的基本原则:
- 总控对各部分的调度与安排应符合上述模式,另一方面,面向用户提供的统一界面应当体现出这个模式
- 保证各部分之间信息准确传递
- 保证系统的开放性或灵活性
信息库及其管理
(1)信息库需要存放的四大类信息
- 关于软件应用的领域与环境的状况
- 设计成果,包括逻辑设计和物理设计的成果
- 运行状况的记录
- 有关项目管理与版本管理的信息
(2)信息库组织方式
- 集中存储——优点:比较容易保持一致性,缺点:与前面要求的模块化冲突(最初思路)
- 分散存储——优点:易于变更与剪裁,一部分变化不致影响全部,缺点:一致性无法保证每个模块都需要一套增删改
- 逻辑上统一、物理上分散——既保持了一致性又保持了灵活性
(3)信息库的管理功能
- 与一般数据库管理系统不同的主要功能
信息之间逻辑联系的识别与记录、如何实现定量信息与文字信息的协调一致
上述两个困难的根源在于数据之间的逻辑关系的认识与表达
- 历史信息的处理方法
历史信息数量太大,占用存储设备过多——脱机备份方法解决
历史信息格式不一致,难以有效的利用——加强标准化、稳定数据结构会缓解
文档生成与代码生成
代码生成主要依靠三方面资料,首先是信息库已有的有关资料、其次为各种标准模块的框架与架构、最后是使用者通过屏幕的操作送入的信息
文档生成——文章、表格、图形(三个文档属文章最难生成)
项目管理与版本管理
AD/Cycle对于项目管理应当考虑的范围如下:
- 研究与确定开发工作的方针与方法——采用什么样的阶段划分方法、采用什么样的系统描述方法
- 开发任务的划分与分工——整个开发任务如何逐层分解为小任务,这些小任务该交给谁做
- 资源状况——有多少人力、物力、财力等
- 人员情况——每个人的进度如何、技术水平 如何、是否需要重新培训、是否需要调动工作
- 变更情况——需求的变更、环境的变更、人员的变更、在开发期间设备与技术有什么变更
- 质量情况——检验的标准是什么,由谁检验,用什么数据检验
边栏推荐
- 3. Actual combat---crawl the result page corresponding to Baidu's specified entry (a simple page collector)
- KT6368A蓝牙的认证问题_FCC和BQB_CE_KC认证或者其它说明
- Day118. Shangyitong: order list, details, payment
- jenkins send mail system configuration
- Go 语言快速入门指南:什么是 TSL 安全传输层
- Develop a SpaceX website based on the Appian low-code platform
- The master teaches you the 3D real-time character production process, the game modeling process sharing
- 基于Appian低代码平台开发一个SpaceX网站
- 资深游戏建模师告知新手,游戏场景建模师必备软件有哪些?
- After another 3 days, I have sorted out 90 NumPy examples, and I can't help but bookmark it!
猜你喜欢
随机推荐
情侣牵手[贪心 & 抽象]
三大技巧让你成功入门3D建模,零基础小白必看
仿网易云音乐小程序-uniapp
KT148A语音芯片怎么烧录语音进入芯片里面通过串口和电脑端的工具
情人节---快来学习一下程序员的专属浪漫吧
mysql基础
uniapp 分享功能-分享给朋友群聊朋友圈效果(整理)
从单体架构迁移到 CQRS 后,我觉得 DDD 并不可怕
10 个关于 Promise 和 setTimeout 知识的面试题,通过图解一次说透彻
Mathematical Principles of Matrix
Xiaohei leetcode surfing: 94. Inorder traversal of binary tree
【LeetCode】滑动窗口题解汇总
一、爬虫基本概念
动态上传jar包热部署
Modelers experience sharing: model study method
uniapp动态实现滑动导航效果demo(整理)
The role of @ Import annotations as well as how to use
The role of the annotation @ EnableAutoConfiguration and how to use
美团二面:Redis与MySQL双写一致性如何保证?
【LeetCode】图解 904. 水果成篮









