文档介绍:概要设计说明书(Architectural Design Specification)
一. 引言
1. 编写目的
从该阶段开发正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程,这种表示只是描绘出软件的总的概貌。本概要设计说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。
2. 参考资料
《软件工程——原理、方法与应用》
《软件工程:实践者的研究方法》IV .
二. 任务概述
1. 目标
该阶段目的在于明确系统的数据结构和软件结构,此外总体设计还将给出内部软件和外部系统部件之间的接口定义,各个软件模块的功能说明,数据结构的细节以及具体的装配要求。
2. 运行环境
软件基本运行环境为Windows环境。
3. 需求概述
学生信息管理系统是在当前学生数量增多,信息需要量大的情况下开发出来的。学生信息管理系统包含了选可系统和学生基本信息的基础上开发出来的,满足了对学生基本情况和学生成绩管理以及选课管理的要求。
4. 条件与限制
为了评价该设计阶段的设计表示的“优劣程度”,必须遵循以下几个准则:
<1>.软件设计应当表现出层次结构,它应巧妙地利用各个软件部件之间的控制关系。
<2>.设计应当是模块化的,即该软件应当从逻辑上被划分成多个部件,分别实现各种特定功能和子功能。
<3>.设计最终应当给出具体的模块(例如子程序或过程),这些模块就具有独立的功能特性。
<4>.应当应用在软件需求分析期间得到的信息,采取循环反复的方法来获得设计。
三. 总体设计
系统的总体处理数据流程如下图:
图总体处理流程图
模块是软件结构的基础,软件结构的好坏完全由模块的属性体现出来,把软件模块化的目的是为了降低软件复杂性,使软件设计,测试,调试,维护等工作变得简易,但随着模块数目的增加,通过接口连接这些模块的工作量也随之增加。从这些特性可得出如图九的一条总的成本(或工作量)曲线,在考虑模块化时,应尽量使模块数接近于图中的M,它使得研制成本最小,而且应尽量避免不足的模块化或超量。
图模块化与总体成本
从程序的结构中可以看出,学生的信息输入输出功能是由学生管理系统进行的。课程的信息输入输出是由课程管理系统进行的,成绩的管理是由课程管理系统进行的,教师信息系统管理教师的情况,课程的查询是由课程管理进行的。
四. 接口设计
由于系统的各种内外部接口是通过借助数据库SQL Server开发软件来实现的,是完全在数据库内部操作的。
五. 数据结构设计
1. 逻辑结构设计
Choices基本信息表列名数据类型可否为空说明
StuID(4) int NOT NULL 学生学号(主键)
CouID(10) int NOT NULL (主键)
Score(1) tinyint NULL
PassOrNot (2) char NULL
Courses 信息表格列名数据类型可否为空说明
CouID(4) int NOT