软件模块划分(实现与管理)

“高内聚、低耦合” ---- 软件模块划分的目的


软件模块划分应基于什么原则进行呢? 
  基于功能划分、基于层次划分、基于专业划分、基于需求划分?


当前常见的划分方式为基于专业领域的划分,如:用户操作GUI,数据处理、网络接口等专业领域划分。按专业领域划分确实可以解决很多实现上的问题,这里指的是功能上的实现。


实现了在同一模块中不允许存在两个不同专业领域的内容的要求
更有利于模块的实现


有了该划分是否就足够了呢?多年的项目经验告诉我这的确还不够。


模块划分清楚后各个模块能够实现它的功能,但我们要的是一个完整的产品,是一个多模块的有机结合,但只是将多模块堆积在一起往往!=产品。为什么会这样呢?


这里显然存在某些问题
缺少需求设计、缺少需求实现、缺少了需求管理。有需求提出、需求验收,但缺少一系列的中间环节,这显然就存在问题。


需求设计
    回顾你的软件架构,在架构文档里能清楚看到模块描述,但也能看到客户的需求么?
需求实现
    当你在实现软件时,考虑了模块功能如何实现,但也考虑的客户需求如何实现么?
需求管理
    项目过程中我们在跟踪某个模块的实现,但有跟踪客户需求的实现么?


架构上缺少客户需求的设计、客户需求的划分,自然会缺少客户需求的实现、也缺少客户需求的管理。


因此软件模块的划分
    实现上需要基于专业领域的划分
    管理上需要基于客户需求的划分
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C语言课程设计是计算机专业的基础课程之一,它可以帮助学生掌握C语言的基本语法和程序设计思维。在课程设计中,通常会对整个设计过程进行模块划分,以便学生能够将问题分解为多个较小的模块,更加有条理地进行设计和编码。 在C语言课程设计的模块划分中,一般包括以下几个重要的模块: 1. 系统需求分析:这一模块是课程设计的第一步,学生需要对系统的需求进行深入的分析和理解。包括功能需求、性能需求、接口需求等,以确定整个系统的设计目标和功能。 2. 系统设计:在系统设计模块中,学生需要根据需求分析的结果,设计整个系统的框架和模块结构。包括确定系统的入口、输出、数据组织方式等,并绘制系统结构图或流程图。 3. 模块设计:模块设计是课程设计中的核心部分。学生需要将系统的功能进行细化,划分为多个相对独立的模块。每个模块包括输入、输出、具体实现逻辑等。学生需要定义每个模块的功能、数据结构和接口规范。 4. 模块编码:在模块编码模块中,学生需要将模块设计的结果转化为具体的C语言代码。学生需要按照模块设计的规范进行编码,注重代码的可读性和可维护性。 5. 系统测试和调试:在系统测试和调试模块中,学生需要对整个系统进行测试,并对出现的问题进行调试和修复。可以采用黑盒测试和白盒测试等方法,确保整个系统的功能和性能的正确和正常。 总的来说,C语言课程设计模块划分可以帮助学生全面理解和掌握C语言的设计和实现方法。通过模块化的设计思想,学生可以更好地组织和管理课程设计的过程,提高代码的质量和可维护性。同时,这也为学生今后进行更复杂的软件设计和开发奠定了良好的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值