软件体系结构大作业要求

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件体系结构》大作业要求

一、课程性质与目的

通过本课程学习,旨在达到以下目标:

1帮助学生掌握需求分析的流程、方法以及技巧;

2帮助学生了解软件体系结构的基本概念,初步掌握中大型软件系统构架的分析与设计方法;

3使学生了解构建系统的目的是为了满足组织的需求,认识软件行业和开发组织在系统设计及其最终成败所起的作用,提高软件设计的基本素养;

4使学生了解常用软件设计模式的使用场景,解决方案;

5引导学生认识系统的性能、可用性、安全性等质量属性都是受软件构架制约的,或者说这些属性的实现影响着设计师的设计选择;

二、设计内容

下面题目将作为实习题贯穿需求分析和软件体系结构设计部分,以1人为一组,任选其中一个问题。采用适当的需求分析方法获取初步需求,题目选择如下:

问题A. 图书馆管理(R.A.Kemmerer)

一个小型图书馆管理系统,需完成以下工作:

1.借书,还书;

2.在图书馆中增加/删除一本书;

3.按照作者名或专业领域检索一批书;

4.找出被某位读者借出的一批书;

5.找出最近借走某本图书的读者.

该系统有两类用户:图书管理员与普通读者.功能4可供普通读者查找他们自己借出的书目.功能1,2,5只供图书管理员使用.

该系统必须满足以下限制:

1.馆中所有未借出的书籍能够供读者随时借阅.

2.在同一时刻,一本书不能既被借出,又可供借阅.

3.一个读者一次借出的书籍数目不能超过预定值.

问题B. 保温系统(S.White)

如果主开关置于”加热”状态,保温系统的控制器负责开关锅炉,监视锅炉系统的燃油流量和燃烧状态,进而调节进入房间的热量流.当室内温度降至(T r-2)0C以下,控制器启动锅炉.这里,T r是用户设置的理想室温.

锅炉启动过程如下:

1.控制器向锅炉的马达发信号.

2.控制器监视马达速度.马达达到正常操作速度时,启动点火并打开油阀.

3.控制器监视水温,一旦水温达到预定值,发信号打开水流循环阀.热水开始在室内循

环.

4.如果发生异常情况,燃油流量指示器和光感器向控制器发信号.此时控制器发信号关

闭系统.

5.一旦室内温度达到(T r +2)0C,控制器首先关闭油阀,延迟5s后关闭锅炉马达.

系统必须满足以下限制:

1.锅炉停机后重启必须延迟5min.

2.在主开关关闭或油阀关闭5s内应指示锅炉停机.

问题C. 字符串格式化(i)

给定非负整数MAXPOS和包含空格与换行作为分隔符的字符集.对字符串S,称两分隔符之间或分隔符到S的结尾处的非空字符串为字.

程序以有穷字符串为输入,输出满足以下条件的字符串:

1.如果输入串包含长度为MAXPOS+1的字,则输出串为一空格.

2.如果输入串的任何MAXPOS+1个相邻字符至少含有一个分隔符,则:

2-1 输入串的所有字以相同的次序出现在输出串中;并且,输出串不含有未在输入串中出现的字;

2-2 此外,输出串满足以下限制:

2-2-1 输出串中不出现前导和后导分隔符,也不出现相邻的分隔符.

2-2-2 任何MAXPOS+1个相邻字符中含有一个换行符;

2-2-3 对于输出串中的任意子串S,如果:

(1) S的长度不超过MAXPOS;

(2) S是输出串的首部,或S的前一字符是换行符;

(3) S是输出串的尾部,或S的后一字符是空格符.

那么,S中不包含换行符.

问题D. 电梯问题(N.Davb)

在M层的建筑物内安装N个电梯.电梯问题是指这些电梯的逻辑控制问题:

1.每个电梯有一些按钮,每个按钮对应一个楼层.当按下按钮后,按钮灯亮,并指出电梯开往相应的楼层.当电梯到达该楼层后,按钮灯熄灭。

2.除底层和顶层只有一个按钮外,每个楼层有两个按钮,分别指示上楼和下楼请求.当按下后,按钮灯亮.如果电梯已到达该楼层,或者电梯正在沿所请求的方向运动,或者遇到有冲突的请求时,按钮灯灭.在后一情况下,如果两楼层同时发出请求,则只能取消其中一个请求.决定服务优先次序的算法应尽量减少两个请求的等待时间。

3.当没有服务请求时,电梯保持在最后一个目的楼层,电梯门关闭。

4.系统以事件驱动方式响应楼层对电梯的请求.所有楼层的优先级是相同的。

5.系统以事件驱动方式响应楼层内部对到达楼层的要求,并按照电梯运动方向依次完成这些要求。

6.每个电梯都有一个紧急按钮,按下后向管理人员发出报警信号,然后电梯被置为”不可用”状态.每个电梯都有取消”不可用”状态的机制。

问题E. 自拟题目

三、大作业报告要求

1.内容

大作业包含两部分内容:

1)系统需求:按照国标《软件需求说明书(GB856T——88)》的要求撰写系统的需求,可以根据系统的特点进行国标文档章节内容的删减。

2)系统设计:按照国标《概要设计说明书(GB8567——88)》、《详细设计说明书(GB8567——88)》的要求撰写系统的需求,可以根据系统的特点进行国标文档章节内容

的删减。

采用软件体系结构风格设计软件,如客户/服务器风格、浏览器、服务器风格、正交软件体系结构以及经典软件体系结构风格等。

●选取至少三种设计模式应用到软件设计中,如MVC模式、Adpater模式、Singleton 等、Bridge模式等

2.版式

●封面

●正文,要求不低于A4纸张10页。文档不能雷同,雷同率超过30%视为抄袭。

四、提交说明

1)电子稿件提交:以个人为单位,将个人的大作业文档打包发送至whpusa111201@,邮件主题以“学号姓名”连接。如学号姓名为“090101丁XX”,则按照“090101丁XX”命名邮件主题。

2)纸质稿件提交。

3)稿件提交时间2011年12月15日。

五、教材与参考资料

1.教材:软件体系结构原理/实践与方法张友生等清华大学出版社2008

2. 参考书籍

●软件体系结构(第2版)张友生等清华大学出版社2006-11

●软件构架实践(第2版)(SOFTWARE ARCHITECTURE IN PRACTICE,

SECOND EDITION) (美)LEN BASS,PAUL CLEMENTS,RICK KAZMAN

清华大学出版社2004-3

●软件体系结构:(美)MARY SHAW;DA VID GARLAN 牛振东江鹏金福生

等编译清华大学出版社2007-3-1

●大型软件体系结构:使用UML实践指南作者:(美)JEFF GARLAND

RICHARD ANTHONY 译者:叶俊民汪望珠电子工业出版社

2004-3

●软件架构设计温昱电子工业出版社2007-3

●面向模式的软件体系结构卷1:模式系统Frank Buschmann, Regine

Meunier, Hans Rohnert, Peter Sornmerlad, Michael Stal著, 1996. 译者:贲可荣

郭福亮等)

●面向模式的软件体系结构卷2:用于并发和网络化对象的模式Douglas

Schmidt, Michael Stal, Hans Rohnert, Frank Buschmann, 著, 1996.

相关文档
最新文档