软件工程第八章作业PHTRS精编版

合集下载

软件工程第八版(英文)机械工业出版社课后习题

软件工程第八版(英文)机械工业出版社课后习题

软件⼯程第⼋版(英⽂)机械⼯业出版社课后习题Part 1 OverviewChapter 1 Introduction1.1 FAQs about software engineering1.2 Professional and ethical responsibility Chapter 2 Socio-technical systems2.1 Emergent system properties2.2 Systems engineering2.3 Organisations, people and computer systems 2.4 legacy systemsChapter 3 Critical systems3.1 A simple safety-critical system 463.2 System dependability 473.3 Availability and reliability 513.4 Safety 553.5 Security 58Chapter 4 Software processes4.1 Software process models 654.2 Process iteration 714.3 Process activities 744.4 The Rational Unified Process 824.5 Computer-Aided Software Engineering 85 Chapter 5 Project management 925.1 Management activities 945.2 Project planning 965.3 Project scheduling 995.4 Risk management 104 RequirementsChapter 6 Software requirements 6.1 Functional and non-functional requirements6.2 User requirements6.3 System requirements6.4 Interface specification6.5 The software requirements document Chapter 7 Requirements engineering processes7.1 Feasibility studies7.2 Requirements elicitation and analysis7.3 Requirements validation7.4 Requirements managementChapter 8 System models 8.1 Context models8.2 Behavioural models8.3 Data models8.4 Object models8.5 Structured methodsChapter 9 Critical systems specification9.1 Risk-driven specification9.2 Safety specification9.3 Security specification9.4 Software reliability specificationChapter 10 Formal specification 10.1 Formal specification in the software process 10.2 Sub-system interface specification 10.3 Behavioural specificationPart 3 DesignChapter 11 Architectural design 11.1 Architectural design decisions11.2 System organisation11.3 Modular decomposition styles11.4 Control styles11.5 Reference architecturesChapter 12 Distributed systems architectures12.1 Multiprocessor architectures12.2 Client-server architectures12.3 Distributed object architectures12.4 Inter-organisational distributed computing Chapter 13 Application architectures13.1 Data processing systems13.2 Transaction processing systems13.3 Event processing systems13.4 Language processing systems Chapter 14 Object-oriented design14.1 Objects and object classes14.2 An object-oriented design process14.3 Design evolutionKey PointsFurther ReadingExercisesChapter 15 Real-time software design15.1 System design15.2 Real-time operating systems15.3 Monitoring and control systems15.4 Data acquisition systemsChapter 16 User interface design 36216.1 Design issues 36616.2 The UI design process 37616.3 User analysis 37816.4 User interface prototyping 38116.5 Interface evaluation 383Part 4 Development 389 Chapter 17 Rapid software development 39117.1 Agile methods 39617.2 Extreme programming 39817.3 Rapid application development 40517.4 Software prototyping 409Chapter 18 Software reuse 415 18.1 The reuse landscape 41818.2 Design patterns 42118.3 Generator-based reuse 42318.4 Application frameworks 42618.5 Application system reuse 428 Chapter 19 Component-based software engineering19.1 Components and component models 19.2 The CBSE process19.3 Component compositionChapter 20 Critical systems development20.1 Dependable processes20.2 Dependable programming20.3 Fault tolerance20.4 Fault-tolerant architecturesChapter 21 Software evolution 21.1 Program evolution dynamics21.2 Software maintenance21.3 Evolution processes21.4 Legacy system evolutionPart 5 Verification and ValidationChapter 22 Verification and validation22.1 Planning verification and validation 22.2 Software inspections22.3 Automated static analysis22.4 Verification and formal methods Chapter 23 Software testing23.1 System testing23.2 Component testing23.3 Tes1 case design23.4 Tes1 automationChapter 24 Critical systems validation24.1 Reliability validation24.2 Safety assurance24.3 Security assessment24.4 Safety and dependability case's ManagementChapter 25 Managing people25.1 Selecting staff25.2 Motivating people25.3 Managing groups25.4 The People Capability Maturity Model Chapter 26 Software cost estimation 61226.1 Software productivity 61426.2 Estimation techniques 62026.3 Algorithmic cost modelling 62326.4 Project duration and staffing 637 Chapter 27 Quality management 64127.1 Process and product quality 64427.2 Quality assurance and standards 645 27.3 Quality planning 65227.4 Quality control 65327.5 Software measurement and metrics 655 Chapter 28 Process improvement 66528.1 Process and product quality 66728.2 Process classification 66928.3 Process measurement 67228.4 Process analysis and modelling 67328.5· Process change 67828.6 The CMMI process improvement framework 680Chapter 29 Configuration management29.1 Configuration management plclnning 29.2 Change management29.3 Version and release management 29.4 System building29.5 CASE tools for configuration managementEmerging TechnologiesSecurity engineering30.1 Security concepts30.2 Security risk management 30.3 Design for security 30.4 System survivability Service-oriented software e:ngineering31.1 Services as reusable components 31.2 Service engineering31.3 Software development with servicesAspect-oriented software development32.1 The separation of concerns 32.2 Aspects, join points and pointcuts 32.3 Software engineering with aspects Chapter 1 ' IntroductionChapter 2 Socio-technical systemsChapter 3 iii Critical systemsChapter 6 ? Software requirementsChapter 7 Requirements engineering processesChapter 8 System modelsChapter 9 Critical systems specificationChapter 10 Formal specificationChapter 11 Architectural designChapter 12 Distributed systems architecturesChapter 13 Application architecturesChapter 14 Object-oriented designChapter 15 Real-time software design。

软件工程作业第八章

软件工程作业第八章

软件工程作业第八章在软件工程的领域中,每一章的知识都像是一座宝库,而第八章往往聚焦于一些关键且深入的主题。

这一章或许涵盖了软件测试的高级策略,或者是软件维护与演化的复杂过程,又或者是软件开发中的风险管理等重要内容。

假如第八章的重点是软件测试的高级策略。

软件测试,这可不是一项简单的工作,它就像是为软件进行一场严格的“体检”,确保软件在各种可能的情况下都能正常运行。

高级策略意味着我们要超越常规的测试方法,去挖掘那些隐藏得更深的问题。

比如,边界值分析就是一种非常有效的测试策略。

想象一下,一个输入框要求用户输入年龄,范围是 18 到 60 岁。

那么 18 岁和 60 岁这两个边界值就特别关键,因为在这两个点上,软件很可能会出现一些意想不到的错误。

再来说说等价类划分。

我们把所有可能的输入值划分为几个等价类,然后从每个等价类中选取一个代表性的测试用例进行测试。

这样可以大大减少测试的工作量,同时又能保证覆盖到各种可能的情况。

还有错误推测法,这需要测试人员凭借经验和直觉去猜测可能出现错误的地方。

比如说,在一个网络连接模块中,如果网络突然中断,软件是否能够正确处理这种异常情况。

软件维护与演化也是软件工程中不可忽视的重要部分。

当软件被开发出来并投入使用后,它并不会一直保持原样。

用户的需求可能会改变,技术也在不断进步,这就需要对软件进行维护和演化。

维护工作可不仅仅是修复一些小 bug,还可能涉及到对软件功能的增强和优化。

比如说,用户反馈某个操作流程太繁琐,我们就需要对软件的界面和逻辑进行重新设计,让操作更加便捷。

演化则是一个更为复杂的过程。

可能需要对软件的架构进行调整,以适应新的业务需求或者技术环境。

这就像是给房子进行重新装修和扩建,既要保证原有的结构稳固,又要让新的部分与旧的部分完美融合。

在软件开发的过程中,风险管理也是至关重要的。

任何一个项目都可能面临各种各样的风险,比如技术难题、人员变动、需求变更等等。

对于技术难题,可能在开发过程中遇到某些技术瓶颈,导致项目进度延迟。

软件工程作业8(含答案)

软件工程作业8(含答案)

软件工程作业8(含答案)1. 为了把握软件开发各个环节的正确性和协调性,人们需要进行( A 2)和( B 3 )工作。

( A )的目的是想证实在一给定的外部环境中软件的逻辑正确性。

它包括( C 2 )和( D 3 ),( B )则试图证明在软件生存期各个阶段,以及阶段间的逻辑( E 3 )、( F 4 )和正确性。

供选择的答案:A, B. ①操作②确认③验证④测试⑤调试C, D.①用户的确认②需求规格说明的确认③程序的确认④测试的确认E, F. ①可靠性②独立性③协调性④完备性⑤扩充性2. 软件测试是软件质量保证的主要手段之一,测试的费用已超过(A 1)的30%以上。

因此,提高测试的有效性十分重要。

“高产”的测试是指(B 3 )。

根据国家标准GB 8566–88《计算机软件开发规范》的规定,软件的开发和维护划分为8个阶段,其中,单元测试是在( C 5)阶段完成的,集成测试的计划是在( D 3)阶段制定的,确认测试的计划是在( E 2 )阶段制定的。

供选择的答案:A. ①软件开发费用②软件维护费用③软件开发和维护费用④软件研制费用⑤软件生存期全部B. ①用适量的测试用例运行程序,证明被测程序正确无误②用适量的测试用例运行程序,证明被测程序符合相应的要求③用少量的测试用例运行程序,发现被测程序尽可能多的错误④用少量的测试用例运行程序,纠正被测程序尽可能多的错误C ~ E. ①可行性研究和计划②需求分析③概要设计④详细设计⑤实现⑥集成测试⑦确认测试⑧使用和维护3. 集成测试也叫做( A 3)或( B 6)。

通常,在( C 1)的基础上,将所有模块按照设计要求组装成为系统。

子系统的集成测试特别称为(D 2 ),它所做的工作是要找出子系统和系统需求规格说明之间的( E 6)。

需要考虑的问题是:在把各个模块连接起来的时候,穿越模块接口的数据是否会( F 2);一个模块的功能是否会对另一个模块的功能产生不利的影响;各个(G 1 )组合起来,能否达到预期要求的(H 3);(I 5 )是否有问题;单个模块的误差累积起来是否会放大。

软件工程第八版(英文)机械工业出版社 课后习题

软件工程第八版(英文)机械工业出版社  课后习题

Part 1 OverviewChapter 1 Introduction1.1 FAQs about software engineering1.2 Professional and ethical responsibility Chapter 2 Socio-technical systems2.1 Emergent system properties2.2 Systems engineering2.3 Organisations, people and computer systems 2.4 legacy systemsChapter 3 Critical systems3.1 A simple safety-critical system 463.2 System dependability 473.3 Availability and reliability 513.4 Safety 553.5 Security 58Chapter 4 Software processes4.1 Software process models 654.2 Process iteration 714.3 Process activities 744.4 The Rational Unified Process 824.5 Computer-Aided Software Engineering 85 Chapter 5 Project management 925.1 Management activities 945.2 Project planning 965.3 Project scheduling 995.4 Risk management 104 RequirementsChapter 6 Software requirements 6.1 Functional and non-functional requirements6.2 User requirements6.3 System requirements6.4 Interface specification6.5 The software requirements document Chapter 7 Requirements engineering processes7.1 Feasibility studies7.2 Requirements elicitation and analysis7.3 Requirements validation7.4 Requirements managementChapter 8 System models 8.1 Context models8.2 Behavioural models8.3 Data models8.4 Object models8.5 Structured methodsChapter 9 Critical systems specification9.1 Risk-driven specification9.2 Safety specification9.3 Security specification9.4 Software reliability specificationChapter 10 Formal specification 10.1 Formal specification in the software process 10.2 Sub-system interface specification10.3 Behavioural specificationPart 3 DesignChapter 11 Architectural design 11.1 Architectural design decisions11.2 System organisation11.3 Modular decomposition styles11.4 Control styles11.5 Reference architecturesChapter 12 Distributed systems architectures12.1 Multiprocessor architectures12.2 Client-server architectures12.3 Distributed object architectures12.4 Inter-organisational distributed computing Chapter 13 Application architectures13.1 Data processing systems13.2 Transaction processing systems13.3 Event processing systems13.4 Language processing systems Chapter 14 Object-oriented design14.1 Objects and object classes14.2 An object-oriented design process14.3 Design evolutionKey PointsFurther ReadingExercisesChapter 15 Real-time software design15.1 System design15.2 Real-time operating systems15.3 Monitoring and control systems15.4 Data acquisition systemsChapter 16 User interface design 36216.1 Design issues 36616.2 The UI design process 37616.3 User analysis 37816.4 User interface prototyping 38116.5 Interface evaluation 383Part 4 Development 389 Chapter 17 Rapid software development 39117.1 Agile methods 39617.2 Extreme programming 39817.3 Rapid application development 40517.4 Software prototyping 409Chapter 18 Software reuse 415 18.1 The reuse landscape 41818.2 Design patterns 42118.3 Generator-based reuse 42318.4 Application frameworks 42618.5 Application system reuse 428 Chapter 19 Component-based software engineering19.1 Components and component models 19.2 The CBSE process19.3 Component compositionChapter 20 Critical systems development20.1 Dependable processes20.2 Dependable programming20.3 Fault tolerance20.4 Fault-tolerant architecturesChapter 21 Software evolution 21.1 Program evolution dynamics21.2 Software maintenance21.3 Evolution processes21.4 Legacy system evolutionPart 5 Verification and ValidationChapter 22 Verification and validation22.1 Planning verification and validation 22.2 Software inspections22.3 Automated static analysis22.4 Verification and formal methods Chapter 23 Software testing23.1 System testing23.2 Component testing23.3 Tes1 case design23.4 Tes1 automationChapter 24 Critical systems validation24.1 Reliability validation24.2 Safety assurance24.3 Security assessment24.4 Safety and dependability case's ManagementChapter 25 Managing people25.1 Selecting staff25.2 Motivating people25.3 Managing groups25.4 The People Capability Maturity Model Chapter 26 Software cost estimation 61226.1 Software productivity 61426.2 Estimation techniques 62026.3 Algorithmic cost modelling 62326.4 Project duration and staffing 637 Chapter 27 Quality management 64127.1 Process and product quality 64427.2 Quality assurance and standards 645 27.3 Quality planning 65227.4 Quality control 65327.5 Software measurement and metrics 655 Chapter 28 Process improvement 66528.1 Process and product quality 66728.2 Process classification 66928.3 Process measurement 67228.4 Process analysis and modelling 67328.5· Process change 67828.6 The CMMI process improvement framework 680Chapter 29 Configuration management29.1 Configuration management plclnning 29.2 Change management29.3 Version and release management 29.4 System building29.5 CASE tools for configuration managementEmerging TechnologiesSecurity engineering30.1 Security concepts30.2 Security risk management 30.3 Design for security 30.4 System survivabilityService-oriented software e:ngineering31.1 Services as reusable components 31.2 Service engineering31.3 Software development with servicesAspect-oriented software development32.1 The separation of concerns 32.2 Aspects, join points and pointcuts 32.3 Software engineering with aspectsChapter 1 ' IntroductionChapter 2 Socio-technical systemsChapter 3 iii Critical systemsChapter 6 • Software requirementsChapter 7 Requirements engineering processesChapter 8 System modelsChapter 9 Critical systems specificationChapter 10 Formal specificationChapter 11 Architectural designChapter 12 Distributed systems architecturesChapter 13 Application architecturesChapter 14 Object-oriented designChapter 15 Real-time software designChapter 16 User interface designChapter 17 Rapid software developmentChapter 18 Software reuseChapter 19 Component-based software engineeringChapter 20 Critical systems developmentChapter 21 Software evolutionChapter 22 Verification and validationChapter 23 Software testingChapter 24 Critical systems validationChapter 25 Managing people。

软件工程作业第八章

软件工程作业第八章

软件工程作业第八章在软件工程的学习过程中,第八章往往涵盖了一些关键且具有挑战性的内容。

这一章可能涉及到软件测试、维护与优化,或者是关于特定开发模型的深入探讨。

软件测试是确保软件质量的重要环节。

它不仅仅是在软件完成后进行的简单检查,而是贯穿于整个软件开发周期的系统性工作。

测试的目的是发现软件中的缺陷和错误,以保证软件能够满足用户的需求和期望。

在软件测试中,测试用例的设计至关重要。

一个好的测试用例应该能够覆盖各种可能的情况,包括正常的操作流程以及异常和边界情况。

例如,对于一个登录功能,不仅要测试正确的用户名和密码组合,还要测试错误的用户名、错误的密码、空用户名、空密码等情况。

通过精心设计的测试用例,可以更有效地发现潜在的问题。

除了功能测试,性能测试也是不可忽视的一部分。

性能测试主要关注软件在不同负载条件下的响应时间、资源利用率等指标。

比如,一个在线购物网站在高并发访问时是否能够保持稳定的响应速度,数据库是否能够承受大量的数据读写操作。

如果性能方面存在问题,可能会导致用户体验下降,甚至影响业务的正常开展。

软件维护是软件生命周期中的另一个重要阶段。

随着时间的推移,用户需求可能会发生变化,软件运行环境也可能会有所更新,这就需要对软件进行维护。

维护工作包括纠错性维护、适应性维护、完善性维护和预防性维护。

纠错性维护是针对软件中已经发现的错误进行修复。

适应性维护则是使软件能够适应新的运行环境,比如操作系统的升级、硬件的更换等。

完善性维护旨在增加新的功能或者改进现有功能,以满足用户不断变化的需求。

预防性维护则是为了提高软件的可维护性和可靠性,提前采取一些措施,如优化代码结构、添加注释等。

软件优化是提升软件性能和质量的重要手段。

通过对代码的分析和改进,可以减少资源消耗、提高运行效率。

例如,优化算法可以大大缩短程序的执行时间;合理使用数据结构可以节省存储空间。

在进行软件优化时,需要综合考虑多个因素。

不能仅仅为了追求性能的提升而牺牲代码的可读性和可维护性。

软件工程--习题及答案

软件工程--习题及答案

《软件工程》(第五版)习题参考答案第1章一、判断题1、(×)软件的维护与硬件维护本质上是相同的。

2、(√)软件在运行和使用中也存在退化问题。

3、(×)软件危机的产生主要是因为程序设计人员使用了不适当的程序设计语言。

4、(√)软件同其他事物一样,有孕育、诞生、成长、成熟和衰亡的生存过程。

5、(×)文字处理软件Word属于系统软件。

应用软件6、(√)原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性。

7、(√)软件开发过程中,一个错误发现得越晚,为改正它所付出的代价就越大。

8、(×)快速原型模型对软件开发人员的水平要求不高。

9、(√)喷泉模型适合于面向对象的软件开发。

10、(×)面向对象开发方法的主要缺点是在适应需求变化方面不够灵活。

二、选择题1、软件是一种(C)。

A、程序B、数据C、逻辑产品D、物理产品2、软件开发方法是(A)。

A、指导软件开发的一系列规则和约定B、软件开发的步骤C、软件开发的技术D、软件开发的思想3、软件生存周期中花费最多的阶段是(D)。

A、详细设计B、软件编码(最少)C、软件测试D、软件维护4、软件工程的三要素不包括(D)。

A、工具B、过程C、方法D、环境5、在软件生存周期中,能准确地确定“软件系统必须做什么”的阶段是(D)。

A、总体设计B、详细设计(怎么做)C、可行性研究(能不能做)D、需求分析6、瀑布模型本质上是一种(A)模型。

A、线性顺序B、顺序迭代C、线性迭代D、能及早见到产品的7、瀑布模型突出的缺点是不适应(D)的变动。

A、算法B、程序语言C、平台D、用户需求8、在软件开发模型中,提出最早、应用最广泛的模型是(A)。

A、瀑布模型B、喷泉模型C、快速原型模型D、螺旋模型9、瀑布模型不适合用于(A)的软件开发。

A、需求模糊不清B、用户不能参与开发C、用户对计算机不了解D、开发人员对业务知识不熟悉10、快速原型的主要优点不包括(D)。

软件工程+张海藩+课后习题答案

软件工程+张海藩+课后习题答案
如果字长为32位,则这个存储器的价格是:
M 4080 0.28(19951960) 73,577,679(字) 4080e 9.8 e
P 0.003 32 0.7219951974 73577679 7,127(美元)
如果一条指令为一个字长,则为使存储器装满程序共需
E2 业务员
13:07:42
F8储蓄利率
D2存款利率
19
重庆工学院计算机科学与工程学院 李梁(liliang@)
作业及解答(第3章)
F2取款单 无效取款信息 D1存款信息 F7密码 F7密码 P3.2 密码校验 P3.1 输入取款信息 F5存款信息
E1 储户
13:07:42
重庆工学院计算机科学与工程学院 李梁(liliang@)
13:07:42 重庆工学院计算机科学与工程学院 李梁(liliang@)
3
作业及解答(第1-2章)
(1) 在1985年对计算机存储容量的需求估计是多少?如果字 长为16位,这个存储器的价格是多少? (2) 假设在1985年一名程序员每天可开发出10条指令,程 序员的平均工资是每月4000美元。如果一条指令为一个字 长,计算使存储器装满程序所需用的成本。 (3) 假设在1995年存储器字长为32位,一名程序员每天可 开发出30条指令,程序员的月平均工资为6000美元,重复 (1)、(2)题。
12
P2 分析信号 E2 病人 F2生理信号
危及病人信息 F2生理信号 D2患者安全范围 P7制定安 全范围 P5 更新日志
P3 产生警告信息 F4警告信息 E1 护士
F5安全范围
D3生理信息 定时的生理信号
F2生理信号 P1 接收信号 F2生理信号 定时的 生理信号

软件工程(第五版)--习题及答案---第八章

软件工程(第五版)--习题及答案---第八章

一、判断题1、(√)使用括号改善表达式的清晰性。

2、(×)对递归定义的数据结构不要使用递归定义的过程。

3、(×)尽可能对程序代码进行优化。

4、(√)不要修改不好的程序,要重新编写。

5、(√)不要进行浮点数的相等比较。

6、(×)应尽可能多地使用临时变量。

7、(√)利用数据类型对数据值进行防范。

8、(×)用计数方法而不是用文件结束符判别批量数据输入的结束。

9、(×)程序中的注释是可有可无的。

10、(√)使用有意义的标识符。

11、(×)应尽量把程序编写的短一些。

12、(×)应尽量使用goto语句。

二、选择题1、在编码中首先要考虑的是(B)。

A、程序的执行效率B、程序的可读性C、程序的一致性D、程序的安全性2、(D)。

不属于序言性注释内容的是A、模块设计者B、修改日期C、程序的整体说明D、语句功能3、序言性注释应置于文件或模块的(A)位置。

A、起始B、结束C、中间D、起始和中间4、如果编写系统软件,可选用的语言是(C)。

A、FoxProB、COBOLC、CD、FORTRAN5、选择程序设计语言不应该考虑的是(B)。

A、应用领域B、语言的功能C、用户的要求D、用户的使用水平6、与编程风格有关的因素不包括(D)。

A、源程序文档化B、语句构造C、输入输出D、程序的编译效率7、最早用于科学计算的程序设计语言是(C)。

A、PROLOGB、SmalltalkC、FORTRAND、COBOL8、功能性注释的主要内容不包括(B)。

A、程序段的功能B、模块的功能C、数据的状态D、语句的功能9、对建立良好的编程风格,下面描述正确的是(A)。

A、程序应简单、清晰、可读性好B、符号名的命名只要符合语法即可C、充分考虑程序的执行效率D、程序的注释可有可无10、源程序中应包含一些内部文档,以帮助阅读和理解程序,源程序的内部文档通常包括合适的标识符、注释和(A)。

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

某学院学科办公室决定开发基于Web 的毕业设计管理系统。

说明如下:
毕业设计从选题开始。

首先是指导教师提供多个毕业设计选题,通常一个毕业设计选题包括题目、指导教师姓名、选题意义、设计内容、技术指标等;学生可以从网上选题,确定自己的毕业设计题目,如果多个同学同时选同一个题目则先提交的同学选中该题目,而其他同学需要继续选题;学生可以查看自己所选的题目;教师可以查看是哪些学生选了自己的题目。

毕业设计以评价为结束。

首先是指导教师评价自己所指导的学生,给出百分制分数,占最终成绩的40%;然后是评阅教师评价学生(不能是自己所指导的学生),给出百分制分数,占最终成绩的30%;接下来是答辩评价,多个教师(2-6人)对学生答辩情况打分,各自给出百分制分数,得平均值,占最终成绩的30%;学生可以查看自己的最终成绩;教师可以查看自己指导的学生的各项成绩;学院学科办公室可以查看所有的学生的各项成绩,并可以查看各项统计结果。

①确定参与者;确定用例(包括用例名,用例简述);绘制用例图;对“网上选题”这个用例绘制活动图,并撰写用例详述(包括用例标识、用例名称、用例类型、用例描述、参与者、涉众利益、前置条件、基本事件流、扩展事件流、异常事件流、后置条件等项)。

参与者:指导教师、评阅教师、答辩教师、学生、学科办公室。

用例:
指导教师的用例:出题、评价所指导的学生、查看学生选题情况、查看学生成绩; 评阅教师的用例:评价所评阅的学生;
答辩教师的用例:评价答辩的学生;
学生:网上选题、查看选题情况、查看成绩;
学科办公室:查看统计结果、查看学生成绩;
用例图:
网上选题查看成绩毕业设计管理系统登录注册学生查看选题情况<<include>>学科办公室查看学生成绩
查看统计结果
用例详述:
毕业设计管理系统登录出题评价答辩的学生
指导教师评阅教师评价所指导的学生<<include>>教师注册答辩教师查看学生选题情况查看学生成绩评价所评阅的学生
活动图:
2.类关系模型:
③为系统建立对象-行为模型(只需针对“网上选题”这个用例绘制顺序图),根据建模结果确定用例“网上选题”相关的实体类、边界类、控制类的接口(或为public 方法)。

毕业设计管理系统
学生选择网上选题
选择毕业设计题目显示网上选题界面提示重新选题
显示选题成功界面
保存选题信息题目未被其他同学选择题目已被其他同学选择选题+学号+姓名+性别学生+题目+题目意义+设计内容+设计指标
毕业设计题目+姓名+职称教师+指导教师评分+评阅教师评分
+答辩成绩毕业设计成绩11选题▲
0..*1出题▲0..*1评价▲。

相关文档
最新文档