. 如何撰写软件设计毕业论文 一、 问题定义与可行性分析 问题定义是弄清用户需要计算机解决的问题根本所在,以及项目所需的资源和经费。通过向用户调查,编写系统目标与范围的说明文档,该文档需再次经用户同意。 可行性分析是为了弄清所定义的项目是不是可能实现和值得进行。分析的过程,实际上是一次简化的系统分析和系统设计过程。这个过程的目的不是解决用户提出的问题,仅仅是确定这个问题是否值得去解决,即在投入大量资金前研究成功的可能性,减少所冒的风险。即使研究的结论是不值得进行,花在可行性研究上的精力也不算白费,因为它避免了一次更大的浪费。 对研究中可能提出的任何一种解决方案,都要研究它的可行性,可以从以下方面考虑: 1) 经济可行性。实现这个系统有没有经济效益?多长时间可以收回成本? 2) 技术可行性。现有的技术能否实现这一新系统?有哪些技术难点?建议采用的技术先进程度怎样? 3) 操作可行性。系统的运行方式、操作规程在用户组织内可以有效地实施吗?预期的终端操作人员可以胜任吗? 4) 法律可行性。新系统的开发,会不会在社会上或政治上引起侵权、破坏或其他责任问题? 二、 需求分析 为了更好地分析用户的需求,常常采用建立模型的方法,当前比较流行实用的方法是借助统一建模语言(UML)来分析用户的需求。UML 主要是针对系统的功能性需求的分析,非功能性需求则主要是在安全、性能和易用性等方面。 使用UML 建立的系统需求分析模型,由三个独立的模型有机地结合而成。一是功能模型,由用例图表示;二是对象模型,由类图表示;三是动态模型,需求分析在于弄清用户对系统的全部需求,并用《软件需求说明书》的形式准确地表达出来。获取用户的需求首先要理解和定义用户,然后与用户面谈确定期望的软件系统。要获取用户每个方面的需求,必须站在用户的角色上,了解和理解用户的实际任务和目标以及这些任务所支持的业务需求。软件需求包括三个不同的层次:业务需求、用户需求和功能需求。其中,业务需求和用户需求包括功能性和非功能性需求。 态图和顺序图表示。分析人员从用户那里获取需求,用UML 的方法可以把它们描述成用例和角色的关系,并进一步从不同的角度来分析这些需求,从而产生静态模型和动态模型。 三、 系统设计 系统设计包括总体设计和详细设计两部分,具体包括如下内容。 1) 系统架构设计。设计人员根据系统分析报告中所确定的系统目标、功能、性能、环境与制约条件,确定合适的计算机处理方式及体系结构,确定合适的计算机系统具体配置。 2) 子系统和功能模块设计。根据系统分析阶段得到的数据流程图和数据词典,设计出子系统和功能模块结构图,明确它们之间的相互关系。 3) 对象设计。根据系统分析报告设计出系统中用到的各种对象,确定对象类型、属性、操作、服务及方法等,并形成对象设计文档。 4) 数据库设计。根据系统分析报告与系统硬件、软件配置,进行数据库的概念设计、逻辑设计、物理设计,设计出与系统有关的数据库文件、数据库结构、存取路径和存取方式等。 5) 输入输出设计。根据系统的目标、用户的使用习惯及使用的方便,确定系统输入的内容、输入格式、输入方式与输入校验;完成系统输出的内容、输出格式及输出方式等内容. . 的具体设计。 6) 业务逻辑处理设计。对系统中每一业务事项的详细处理过程进行描述,编写业务流程图、处理方法和处理顺序等,作为设计开发详细设计和实现的主要依据。 7) 编写系统设计报告。根据系统设计阶段完成的总体设计及详细设计内容,以书面的形式编写符合要求的系统设计报告。系统设计报告既是系统设计阶段的主要成果,经过审查批准后又是系统实施阶段的主要技术依据。 以上内容的设计在系统设计阶段是按照一定的先后次序进行的,一般是先完成系统架构设计或系统配置设计,形成系统设计报告,再进行详细设计,包括细化对象设计、数据库设计、输入输出设计和模块处理过程设计等具体内容,最后再编写详细设计文档。 1、 总体设计 具有代表性的软件体系结构包括客户端/服务器(C/S)体系结构、浏览器/服务器(B/S)体系结构、MVC体系结构、对等体系结构、仓库体系结构、管道和过滤器体系结构等。它们各有不同的特点,在一个复杂的系统开发中可以借鉴多种软件体系结构。灵活运用好体系结构,从而使软件开发过程更加快捷和高效。 系统设计是把分析模型转变成系统设计模型的过程。具体地说,系统总体设计过程如下图所示,包括以下几个方面。 系统总体设计活动过程: 定义设计目标 定义子系统及功能模型 子系统映射到软硬件平台 设计系统流程 数据管理设计 确定系统功能范围 定义访问策略 形成系统设计报告 系统详细设计 1) 定义设计目标。 2) 分解系统为子系统或功能模块。 3) 分析或选择已开发组件和标准组件。 4) 子系统映射到软/硬件平台。 5) 数据管理设计。 6) 定义访问策略。 7) 设计系统流程。 2、详细设计 在总体设计阶段,可以把一个复杂问题的解法分解和细化成一个由许多对象组成,具有一定层次结构的软件系统,即已经确定了软件系统的总体结构,给出了系统中各个组成部分的功能、子系统之间和对象之间的接口。在详细设计阶段,采用自顶向下逐步求精的方法,则可以把一个子系统或对象的功能逐步分解细化为一系列具体的处理步骤。 详细设计就是要在总体设计的基础上,考虑如何实现定义的软件系统,直到对系统中的每个模块给出足够详细的过程描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。详细设计就是为了缩短设计与编程之间的距离,消除开发人员对总体设计产生的异议和理解上的分歧,为生成可靠、准确、高效的软件系统奠定基础。 1) 对象和类设计。对象设计包括类和对象说明、组件选择、对象模型构建以及对象模型优化。在对象设计的过程中,要细化分析和系统设计的模型,确定新的对象,利用现行的组件和技术方法实现应用对象。这包括确定自定义对象、调整商品组件以及对每个子系统接口和类做出准确详细的说明。这样,对象设计模型就可以分割成类的集合,并有利于由具体的开发人员去实现。 . 本文来源:https://www.wddqw.com/doc/acf87230fc00bed5b9f3f90f76c66137ee064f1c.html