2013年哈工大计算机学院软件工程考试
软件工程考试试题及参考答案

软件工程考试试题第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASEB.人工智能CASEC.结构的基于图形CASED.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率B.规模C.完整性D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.隐藏C.封装D.抽象7.软件调试技术包括()A.边界值分析B.演绎法C.循环覆盖D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
软件工程考试题(含答案)

软件工程考试题简答题1、什么叫软件?软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?软件危机是指在计算机软件开发与维护过程中所遇到的一系列严重问题。
包括两点:(1)如何开发软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的已有软件。
软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。
具体表现如下:(1)软件是逻辑部件而不是物理部件。
(2)软件的规模越来越大,复杂性越来越大。
(3)轻视需求分析的重要性,轻视软件维护的错误观点和方法。
3、什么叫软件工程?1968年在第一届NATO会议上的早期定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。
1993年IEEE的定义:“①软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②进而研究①实现的途径”。
我们国家最近定义:软件工程是指导计算机软件开发和维护的工程学科。
它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。
4、两种软件工程方法学开发软件时要建立哪些模型?软件工程方法学包括:传统方法学和面向对象方法学。
常用的开发模型有:瀑布模型(需求稳定,而且可以预先指定)原型模型(需求模糊或者随时间变化)增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析)喷泉模型(使开发过程具有迭代性和无间隙性)5、软件过程模型有哪些?简述它们的特点。
过程模型分为五大类:1.管理过程模型。
2.瀑布模型(又称为生命周期模型)。
3.增量过程模型:包括增量模型,,RAD模型。
4.烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。
2013黑龙江省计算机与软件水平考试_网络工程师考试题库

1、以下哪种协议属于网络层协议的_______。
(B)A.HTTPS B.ICMP C.SSL D.SNMP2、Windows 2000下诊断DNS故障时,最常用的命令是:______。
(B)A.NETSTAT B.NSLOOKUP C.ROUTE D.NBTSTAT3、当在Windows2000下创建分区时,FAT32分区大小的限制是_________。
(C)A.8GB B.16GB C.32GB D.64GB4、如果RAID-0卷集由4个40GB磁盘组成,可以存储数据的最大空间为________。
(D)A.40GB B.80GB C.120GB D.160GB5、以下哪条命令可以改变文件file的所有者为Sam________?(B)A.chmod Sam file B.chown Sam file C.chgrp Sam file D.umask Sam file6、在掉电状态下,哪种类型的存储器不保留其内容_______?(C)A.NVRAM B.ROM C.RAM D.Flash7、当在Windows2000下创建分区时,FAT32分区大小的限制是_________。
(C)A.8GB B.16GB C.32GB D.64GB8、在Windows Server 2003服务器上配置DHCP服务时,IP地址租约默认是:________。
(B)A.4天 B.8天 C.16天 D.20天9、一个文件的权限为“rwxr-----”,那么以下哪个说法是正确的_______?(B)A.所有用户都可以执行写操作B.只有所有者可以执行写操作C.所有者和所属组可以执行写操作 D.任何人都不能执行写操作10、Windows Server 2003操作系统比Windows 2000 Server操作系统多了下列哪项服务________。
(B)A.NNTP B.POP3 C.SMTP D.FTP11、在Windows Server 2003服务器上配置DHCP服务时,IP地址租约默认是:________。
软件工程期末样卷(试题+答案)

哈尔滨工程大学本科生考试试卷( 2010-2011 年 2 学期)课程编号: 0920113 课程名称:一、 选择题(共30分 每题2分)软件工程 (A卷)1、下面不属于软件工程的3个要素是( D )A)工具 B)过程 C)方法 D)环境2、下列工具中为需求分析常用工具是( D )A)PAD B)PFD C)N-S D)DFD3、 软件需求分析阶段的工作,可以分为4个方面:需求获取,需求分析,编写需求规格说明书以及( B )A)用户 B)需求审评 C)总结 D)都不正确4、在E-R模型中,包含以下基本成分(D )A)数据、对象、实体 B)控制、联系、对象C)实体、联接、属性 D)实体、属性、联系5、当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为(D)A)数据耦合 B)公共耦合 C)标记耦合 D)内容耦合6、( C)是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A)多态性 B)继承 C)封装 D)消息7、软件危机是指(B )。
A)软件遭到严重破坏 B)软件开发和维护过程中遇到的严重问题C)软件维护出现困难 D)软件不能正常运行的系列严重问题8、判定树和判定表示用于描述结构化分析方法中的(B )环节的工具。
A)功能说明 B)数据加工 C)流程描述 D)性能说明9、 软件评审是保证软件质量的重要措施,它是对软件开发阶段成果的复审。
下 列(A )是复审的必须内容。
Ⅰ需求复审 Ⅱ总体设计复审 Ⅲ详细设计复审 Ⅳ程序复审A)Ⅰ、Ⅱ、Ⅲ B)Ⅱ、Ⅲ、Ⅳ C)Ⅰ、Ⅲ、Ⅳ D)全部10、软件按照设计的要求,在规定时间和条件下达到不出故障、持续运行的要求的质量特性称为(B )。
A)可靠性 B)可用性 C)正确性 D)完整性11、模块的独立性是软件模块化设计的关键之一,一般用内聚和(D )两个定性标准来度量模块的独立性。
A) 软件的质量 B) 一致性 C) 可重用 D) 耦合12、软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以(A )维护所占的维护量最小。
软件工程基础考试

软件工程基础考试(答案见尾页)一、选择题1. 软件工程的基础是什么?A. 程序设计B. 数据结构C. 计算机科学D. 需求分析2. 软件开发过程中,需求分析和系统设计的关系是什么?A. 需求分析是系统设计的依据B. 需求分析和系统设计同时进行C. 需求分析在系统设计之后进行D. 需求分析和系统设计没有必然联系3. 软件工程的三个层次及其在软件开发过程中的作用是什么?A. 应用层、系统层、理论层B. 物理层、数据层、逻辑层C. 需求层、设计层、实施层D. 开发层、测试层、维护层4. 软件开发生命周期(SDLC)的概念是什么?它包括哪几个阶段?A. 软件开发生命周期是指软件的开发过程B. SDLC包括需求分析、设计、编码、测试和维护C. SDLC是一个线性的过程D. SDLC各阶段按顺序进行,不具备迭代性5. 什么是敏捷开发方法?它与其他开发方法的区别是什么?A. 敏捷开发是一种快速开发的软件开发方法B. 敏捷开发强调团队合作和客户参与C. 敏捷开发适合大规模软件项目D. 敏捷开发与其他开发方法的区别在于流程管理6. 什么是面向对象编程(OOP)?请列举OOP的三个基本特征。
A. 封装、继承、多态B. 封装、继承、抽象C. 封装、多态、接口D. 继承、多态、接口7. 数据库管理系统(DBMS)在软件开发中的作用是什么?A. 存储和管理数据B. 提供数据查询和修改功能C. 数据库管理员(DBA)负责DBMS的管理和维护D. 所有选项都正确8. 什么是版本控制?请简述版本控制的两种主要策略。
A. 版本控制是一种软件配置管理技术B. 版本控制可以跟踪软件项目的变更C. 版本控制的主要策略有Git和SVND. 版本控制确保软件代码的安全性9. 什么是软件测试?它的目的和基本原则是什么?A. 软件测试是在软件投入运行后进行的活动B. 软件测试是为了发现软件中的错误和缺陷C. 软件测试的原则包括早期测试、缺陷倾向分布等D. 软件测试的目的是提高软件的质量和可靠性10. 什么是配置管理?它在软件开发中的作用是什么?A. 配置管理是指对软件配置项进行管理和控制的过程B. 配置管理可以确保软件配置的一致性和可追溯性C. 配置管理的主要活动包括配置标识、配置控制、配置审核等D. 配置管理有助于解决软件生命周期中的版本冲突问题11. 软件开发过程中,需求分析的主要任务是?A. 确定软件开发的功能B. 编写需求规格说明书C. 进行系统设计D. 进行程序设计12. 在软件开发中,迭代过程是为了更好地适应变化,它主要包括哪几个阶段?A. 需求分析B. 设计C. 编码D. 测试13. 软件工程中的“软件”指的是什么?A. 程序和数据B. 程序、数据和文档C. 程序和数据,可运行D. 程序、数据和用户手册14. 软件工程的发展历程中,第一个正式发布的软件开发标准是?A. ISO 9000B. CMMIC. PMBOKD.软件开发生命周期(SDLC)15. 在软件工程中,测试的目的是什么?A. 证明软件的正确性B. 找出软件中的错误C. 提高软件的质量D. 规范软件的开发过程16. 软件工程中的“软件生命周期”通常包括哪几个阶段?A. 开发B. 运行C. 维护17. 软件工程中,版本控制的主要作用是什么?A. 监控软件的修改历史B. 管理软件的版本C. 确保软件的一致性D. 保证软件的可靠性18. 软件工程中,敏捷开发方法是一种以人为核心、迭代、循序渐进的开发方法,它的核心价值包括:A. 个体和互动跨功能团队B. 可用的软件客户合作C. 响应变化随时间进化D. 面向结果19. 在软件工程中,UML(统一建模语言)是一种用于描述、构造和编写软件系统的图形化语言,它通常用于以下哪个阶段?A. 需求分析B. 设计C. 编码D. 测试20. 软件工程的定义是什么?A. 软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。
哈理工软件工程考试卷00a

哈尔滨理工大学2002-2003学年第二学期考试试题A卷一、选择题(本大题共15小题,每小题1分,共计15分):1、在软件生存周期中,()阶段的工作量最大,约占总工作量的70%。
A.需求分析B.软件设计C.测试D.维护2、影响软件可维护性的软件属性包括软件的可理解性、可测试性与()。
A. 可修改性B. 可靠性C.效率D.可用性3、软件开发时,一个错误发现得越晚,为改正它所付出的代价就( )。
A.越大B.越小C.越不可捉摸D.越接近平均水平4、软件测试的目的是()。
A.评价软件的质量B.发现软件中的错误C.找出软件中所有错误D.证明软件是正确的5、在详细设计中,( )可作为模块的过程性描述工具。
A.N-S图B.HIPO图C.SC图D.因果图6、符合编码风格要求的是( )。
A.尽可能把程序编得短些B.使用有意义的变量名C.注释越少越好D.尽可能多地使用GOTO语句7、为了提高测试的效率,应该()。
A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.完成编码后制定软件测试计划D.选择发现错误可能性大的数据作为测试数据8、结构化需求分析用于数据描述的工具是()和数据字典。
A.程序图B.流程图C.数据流图D.PAD图9、在结构化设计方法中,用于显示软件的组成模块及其调用关系的是()。
A.PADB.HIPO图C.SC图D.因果图10、模块化设计的指导思想是分解、信息隐藏与()。
A.抽象B.数据独立性C.程序独立性D.模块独立性11、有利于软件可维护性的错误叙述是()。
A.设计时应加强模块间联系B.提高程序的易读性C.重视程序结构的设计,使程序具有较好的结构D.尽可能在软件生产中保证各阶段文档的正确性12、原型化方法是设计者与用户之间进行的一种交互过程,适用于()的系统。
A.需求不确定性高B.需求明确C.管理信息D.决策支持13、配置管理的目的是保证资料的完整性与()。
A.有效性B.一致性C.完善性D.准确性14、关于模块化设计的错误叙述是()。
2013年哈工大软件学院算法设计与分析期末考试

2013年哈⼯⼤软件学院算法设计与分析期末考试
1.判断题 20 = 10*2'
2.简答题 20 = 4*5'
3.算法设计题 60 = 4*15'
判断题:
忘了,很简单。
简答题:
1.T(n) = 2T(n/2)+n,求时间复杂度
2.图的最⼤匹配的定义
3.时间复杂度的定义
4.证明或者否证:O( (x+y)^2 ) = O( x^2 )+O(x*y)
⼤题:
1.字符串集合{this,that,there,their}利⽤2-gram构造的倒排表,编号分别是1,2,3,4
2.求最长连续和:给出数组A[],求 i<= k <=j,使得 sigma(A[k])最⼤:
1.设计O(n^2)的算法。
2.设计O(nlogn)的算法。
3.在2问设计对的情况下分析该算法的时间复杂度,如果2问不对,这题没分。
3.给出0,1以及符号组成的串: 1 op1 0 op2 1。
op代表符号,有两种:a(代表与),o(代表或)。
问如何添加括号使得串的最终值为1,求添加的⽅案数。
要求写出DP转移⽅程,伪代码书写,时间复杂度分析。
4.在[0,L]的长廊上,有n个展品,需要安排守卫去搜所有的展品,每个守卫所守的范围是1(包含),问最少安排多少个守卫去守。
1.设计⼀个贪⼼算法。
2.分析该算法的正确性。
3.该算法的时间复杂度。
哈工程2011级计科软件工程试卷B

班级:学号:姓名:装订线第1页 共4页第2页 共4页一、选择题(每题2分,共30分) 1.软件退化的根本原因是()A .使用者的操作失误B .不断地软件变更C .设计缺陷D .软件的兼容性 2.用例图中,不属于用例之间关系的是()A .包含关系B .扩展关系C .泛化关系D .关联关系 3.当一个构件和基础设施构件进行通信时会发生()耦合。
A .标记耦合B .外部耦合C .内容耦合D .共用耦合 4.UML 泳道图是()的一种有用的变形,可让建模人员表示用例所描述的活动流,同时指示哪个参与者是由活动矩形所描述的活动来负责。
A .构件图B .活动图C .并发图D .用例图 5.初始的软件需求明确,但是整个开发过程却不宜单纯运用线性模型,这是()适用的情形。
A .增量模型B .演化模型C .瀑布模型D .V 模型 6.()决定系统所需的每一个功能的“价值”(由客户感知)。
A .信息部署B .任务部署C .功能部署D .价值分析7.每个使用场景都暗示着当一个参与者和系统交互时所操作的一组对象,这些对象被分成具有相似属性和共同行为的事物集合。
这所描述的是()A .基于场景的元素B .行为元素C .面向数据流的元素D .基于类的元素 8.以下那个不属于活动图的适用范围()A .描述系统业务流程B .分析用例C .处理多线程应用D .数据建模9.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于()系统。
A. 需求不确定的B. 需求确定的C. 管理信息D. 决策支持10.需求模型提供了创建4种设计模型所必需的信息,这四种设计模型是完整的设计规格说明所必需的,下面不属于这四种模型之一的是()A .数据/类设计B .体系结构设计C .构件级设计D .用户界面设计11.定义软件工程过程中其他的信息源连接件,表示工作产品之间的关系,其描述的是体系结构中的哪种()A .功能结构B .实现结构C .开发结构D .并发结构 12.依赖于问题的自然划分,组织团队成员各自解决问题的一部分,他们之间没有什么主动的交流,这是软件工程团队()的组织范型。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 8 页 (共 10 页)
哈尔滨工业大学 2013 年秋季学期
软件工程 试题(A)
学号 姓名
题号
1
2
3
ห้องสมุดไป่ตู้
4
5
6
总分
分数
MyTime()是 2013 年 2
(本试卷满分 60 分)
月在美国洛杉矶地区上线的一个本地商家预约平台。
本地各类商家(餐馆、理发、健身、家政等)在该平
台上发布自己的服务项目,顾客可在平台上进行服务 预约。MyTime 的杀手锏是“分时段动态价格预约”,可根据不同时段客户需求的高低峰期来 动态调整价格:商家自己设好标准价格和价格区间,MyTime 依据顾客在不同时段的预约数
的价格动态变化信息(价格变化时间、原价格、新价格)。 (9) 对没有加入 mytime 的商家,mytime 员工在现实中收集他们的服务项目和价格,
手 工 加 入 平 台 并 根 据 经 验 指 定 可 浮 动 的 价 格 区 间 。 顾 客 也 可 以 按 (4) 的 方 式 进 行 预 约 , mytime 也会按(6)(7)进行动态价格调整。顾客预约之后,系统会为 mytime 员工生成提
第 1 页 (共 10 页)
试题:软件工程
学号:
姓名:
1. 用例建模(11 分)
(1) (8 分) 建立该系统的用例模型。无需绘图,以表格形式给出,第一列为 actor,第二列为与
每个 actor 产生通讯关联的用例清单。actor 名和用例名均使用简短和无歧义的中文短语。请手工在
表格中绘制水平线,以便于区分不同 actor 的用例集合。
约数)
livePrice (当前价格)
覆盖 的代 码行
1
2
3
4
第 7 页 (共 10 页)
试题:软件工程
学号:
姓名:
(2) (3 分) 绘制该程序的控制流图; (3) (6 分) 列出所有的基本路径。 回答上述题目时请务必使用代码行号(1-11)。若需将第 i 行拆分为多行,请以 i1、i2 的形式表示。 自己进行重新编号的答案不得分。
min=100;第 6 行的 currentDate()执行结果为今天(2013/11/26)。另外,虽然表格给出了 4
行,但你未必一定将其全部填满。
测试 用例 编号
timeslot.getDate()
(时间段,只需给出其日期属 性的值)
maxAvailableResvNum (最大可预约数目)
resvNum (当前已预
要求的商家,并可看到 mytime 当前为其所设定的价格。mytime 按照商家与顾客当前位
置之间的距离从近到远的次序排列查询结果。顾客选择某个商家的服务项目,形成预约单。 (5) 商家在 mytime 中可随时查看与自己的服务项目相关的预约单。顾客也可随时查看
自己之前的所有预约单。
(6) 若某个顾客预约之后导致该商家在该时间段内的预约数目满足了某种特定规则, mytime 会马上启动动态价格调整,为该商家在该时段内的服务项目更新当前价格;若预约
第 6 页 (共 10 页)
试题:软件工程
学号:
姓名:
5. 软件测试(14 分) ServiceInOneTimeslot类中有一个操作DynamicPricing(),它根据特定的价格
调整策略,对该类的属性“当前价格”(livePrice)做出修改。以下是该操作的一段伪代码:
public void DynamicPricing (){
|| this.resvNum < this.maxAvailableResvNum * 0.3) {
7
if (this.livePrice * 0.9 < min)
8
this.livePrice *= 0.9;
else
9
this.livePrice = min;
}
else
10
this.livePrice = this.maxPrice;
PriceChange -价格变动时间: datetime +new()
第 3 页 (共 10 页)
试题:软件工程
学号:
姓名:
(2) (8 分) 为了支持 mytime 各用例的事件流执行,上页表格和类图中给出的属性与操作是远不 够的。为各实体类补充缺.失.的.操作、属性及其数据类型,填入下表。若你认为某个(些)实体类的属 性或操作不缺失,相应的格子可以留空。属性/操作名均用易理解的中文短语。
实体类
缺失的属性及各自的数据类型
缺失的操作
Merchant
Customer
Service
Timeslot
ServiceInOne Timeslot
Reservation PriceChange
Reminder
第 4 页 (共 10 页)
试题:软件工程
学号:
姓名:
3. 时序模型(5 分) 考虑 mytime 系统运行过程中的一个场景:某顾客 C1 预约了某个时间段的某个服务项目 ST1 并
1
int min = MAX_VALUE;
2
for(int i=0; i < this.resvNum; i++) {
3
int price = this.ResvList[i].getPrice();
4
if(min > price)
5
min = price;
}
6
if( (this.timeslot.getDate() - currentDate()) > 5 days
预约自己当前位置周围的商家服务项目;向注册商家提供 web 端访问;向 mytime 员工提供 C/S 方 式访问系统。后台系统则采用标准的 app server 和 database 分离的方式对上述三种客户端提供服 务,并支持与 yelp、Google Calendar 的连接。
(1) (6 分)使用 UML 部署模型简要刻画上述所描述的 mytime 系统的物理架构。
属性 名称、地址 名字 名称、标准价格 日期(如 2013/11/26)、起始 时间、结束时间 服务项目、时间段、当前价格、 当前已预约数、是否可预约 (Y/N)
单号、顾客、价格
价格变动时间
预约单
(1) (5 分) 下图给出了这些实体类之间的关系描述,但并不完整。请根据你对需求的理解以及上 述表格所做出的限定,直接在类图上补充缺失的类间关系(继承、聚合、组合、关联),并补全各关系 上的角色名和多重性信息。注:不能删除图中已有信息,只能增加或修改;无需补充或修改类的属性 或操作。
段)。可预约时间段的长度是不同的,它取决于服务项目自身的特征,例如理发服务的时间 段为 1 小时,餐馆服务的时间段为 2 小时。
(3) 针对不同服务项目的各个可预约时间段,商家在 mytime 上设定该时间段内可接受
的价格区间(最高价格、最低价格),以及该时间段内可接受的最大预约数目。 (4) 顾客根据服务项目的关键字和自己期望的时间段在 mytime 上查询,找出所有满足
量来动态调整价格,从而提高商家的预订率。 (1) 已注册商家在 mytime 上添加自己可提供的服务项目,并为每个服务项目设定标准
价格。每个商家可提供多个服务项目。 (2) mytime 可自动从已注册商家的 Google Calendar 中读取该商家各服务项目的可
预约时间段(例如 10 月 26 日下午 1:00-3:00 为商家 A 的午餐服务项目的一个可预约时间
PriceChange
Reminder
说明 在 mytime 上注册并提供服务的组织 在 mytime 上预约服务项目的个人 商家所提供的服务项目(理发、健身等)
商家的服务项目的可预约时间段
商家的一个服务项目在特定时间段内的详细 信息
顾客针对特定商家在特定时间段内的某个服 务项目的预约单 特定时间段内的一个服务项目的一次价格动 态变化信息 对 mytime 员工的提醒,描述一个顾客对未 注册商家的服务项目的预约信息
Merchant -名称: string -地址: string +new()
1
Service -名称: string -标准价格: double +new()
Reminder -预约单: reservation +new()
Reservation -单号: string -顾客: Customer -价格: double +new()
数目达到了商家设定的最大预约数目,则该时间段不能再被其他顾客预约。
(7) 每隔特定时间(例如 10 分钟),mytime 的系统也会周期性的启动价格动态调整,
根据上一周期内的预约结果,对平台上所有商家各时间段内的服务项目价格进行变更。 (8) 不管是(6)还是(7),mytime 均需为每个特定时间段内的服务项目记录其所有发生
类的 PAC1 对象,按执行次序加入所需的消息序列,需要覆盖各 object 为了完成这些功能所需执行的 全部操作。箭头上给出操作名,所有操作需来自于你在第 2 题第(2)小题中所识别的实体类操作列表。 图中给出的各对象未必都要参加交互。
PAC1 : PriceAdjustCtrl
C1 : Customer
ST1 : ServiceInOneTimeslot R1 : Reservation : PriceChange
第 5 页 (共 10 页)
试题:软件工程
学号:
姓名:
4. 架构设计(8 分) Mytime 提供了 iOS 平台上的客户端 app,可借助手机 GPS 对顾客进行定位,方便顾客查询和
2.
3.
第 2 页 (共 10 页)