- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
第 PAGE \* Arabic 9 页
软件设计指导书
第 三 版
主编:何丽萍
南京邮电大学教育科学与技术学院
2011 年 6 月
一、设计要求及进度安排
1、设计目的
提高学生运用软件技术解决实际问题的能力;
进一步掌握应用程序开发的过程;
提高系统分析与设计的能力和编程能力。
2、设计要求
认真复习在设计中要用到的原理与技术;
考察相关的应用,掌握应用的一般需求;
认真分析与设计,提交设计报告;
编程实现,进行测试后交付可以运行的软件及相应的设计报告。
3、设计过程
在开始具体的软件设计前,学生需要作些准备工作,对设计中涉及的原理和技术进行全面的复习,同时学习其他相关知识,以便使软件设计能够更好地在理论联系实际的指导原则下进行,达到本课程的目的。
为完成这次设计,学生应该掌握以下知识:
Visual Basic、VC++、C#、Delphi等等编程语言;
HTML语言及网页编辑软件、ASP(或PHP二者选一)程序设计方法(包括VBScript或PHP),提倡同学自学动态网页制作的其他技术,如JSP、ASPX、COM及COM+等,并利用这些技术完成设计;
连接和访问数据库的方法,数据库可采用Microsoft SQL Server、Oracle、Access等。
如果严格按照软件工程中软件生命周期的划分,软件开发过程划分为三个时期,每个时期又分为若干个阶段,总共七个阶段。而常用的软件开发方法,经过适当的简化,将软件开发过程划分为分析、设计、实现和维护四个阶段。虽然软件设计课程中的题目的远不如实际问题中的复杂程度高,只是对系统的模拟,但为了训练大家综合掌握软件工作规范,培养一个软件工作者所应具备的科学严谨的工作方法和作风,应遵循以下四个步骤来完成实验题目:
(1)选题及需求分析
在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么?限制条件是什么。本步骤的焦点是 “做什么(what)” ,不是 “怎样做(how)”。对问题的描述应避开算法和所涉及的数据类型,而是对所需完成的任务做出明确的回答。
设计题目原则上由学生自己选择感兴趣的应用领域进行设计,可以参考指导书的第三部分的方向选题。学生选题所涉及的内容、规模及要达到的效果应该和指导教师进行协商后确定。在规模方面,每位学生应完成2~3种交互功能,或包含脚本的页面有4~8个。功能在原则上应尽可能多样化,包括有查询、更新等多种操作。具体体现在“可行性分析”和“需求规格说明书”这两个文档中。
在选题过程中,应尽自己所能对题目所涉及的问题进行调研,力争在指导题目的要求基础上,设计出更加符合实际、具有个性的应用系统。
根据选题,上网查找相同或相似网站,通过浏览掌握该应用的一般需求是完成调研的一种方法,可以借鉴和模仿已有系统的要求完成应用。在图书馆查阅期刊中的相关文章以获得启发,也是调研的一种方法。还可以在有条件的情况下,深入到用户单位获得应用要求的第一手资料。在必要的时候,需要自学一些相关的领域知识,如电子商务的一般知识,以使设计更加科学、合理。总之,需要调用一切可以利用的资源做好调研,在设计之前,将系统的需求使系统开发的目标更加明确、合理。
鼓励几个在同一范围内选题的同学在开发中自发形成小组,相互合作、整体规划、合理分工,并将结果通过一个统一的界面组成一个完整的应用系统。小组成员不得超过3人,小组成员及分工要在选题时确定,并经指导教师同意。
(2)概要设计和详细设计
设计这一步骤又分概要设计和详细设计两步实现。概要设计确定软件的结构以及各组成成分(子系统或模块)之间的相互关系;详细设计则为每个模块确定采用的算法,确定每一模块使用的数据结构,以及确定模块接口的细节。 在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。作为概要设计的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的功能说明),各个主要模块的算法,并利用SC图、层次图等工具画出模块之间的调用关系图。详细设计的结果是对数据结构和基本操作做出进一步的求精,写出数据存储结构的类型定义。用流程图、N-S图(盒图)、伪代码、PDL语言或问题分析图(PAD)等描述程序处理过程。在求精的过程中,应尽量避免陷入语言细节,不必过早表述辅助数据结构和局部变量。
根据上述要求,在确定开发题目后,学生应该完成调研,并确定设计内容、设计方法和设计进度。更为基础的是,要确定软件的体系结构和全局的数据结构。在本次设计中,软件的体系结构体现为各模块和页面之间的交互关系。
前期设计报告是在完成以上工作后的总结,也是进一步展开后续工作的依据。软件工程的思想是软件开发需要在严格的步骤控制下完成,其中分析
文档评论(0)