资源描述
四川大学期中考试试题(开卷)
(~第2学期)
课程号: 课程名称: 软件设计和体系结构(B卷) 任课老师:
适用专业年级: 软件工程 级 学号: 姓名:
考试须知
四川大学学生参与由学校组织或由学校承接各级各类考试,必需严格实施《四川大学考试工作管理措施》和《四川大学考场规则》。有考试违纪作弊行为,一律根据《四川大学学生考试违纪作弊处罚条例》进行处理。
四川大学各级各类考试监考人员,必需严格实施《四川大学考试工作管理措施》、《四川大学考场规则》和《四川大学监考人员职责》。有违反学校相关要求,严格根据《四川大学教学事故认定及处理措施》进行处理。
题 号
一(30%)
二(20%)
三(30%)
四(20%)
五(0%)
六(0%)
七(0%)
八(0%)
卷面
成绩
得 分
阅卷时间
注意事项:1. 请务必将本人所在学院、姓名、学号、任课老师姓名等信息正确填写在试题纸和添卷纸上;
2. 请将答案全部填写在本试题纸上;
3. 考试结束,请将试题纸、添卷纸和初稿纸一并交给监考老师。
评阅老师
得分
一、Choice question(10 items,3points each,total 30points)
提醒:在每小题列出四个备选项中只有一个是符合题目要求,请将其代码填写在下表中。错选、多选或未选均无分。
1
2
3
4
5
6
7
8
9
10
C
B
B
BCD
ABCDE
ABCD
ADE
ABCDE
ABE
BCDE
1.Which of the following view belongs to allocation view? (C )
(A) Decomposition (B) Shared data
(C) Deployment (D) Use
2 The aspect that Availability concerns include ( B )
(A) How to modify system (B) How to check system faults
(C) Show the easiness of software bugs (D) Whether easy to use
3.Which quality attribute does tactic that maintains semantic consistence support? ( B )
(A) Availability (B) Modifiability
(C) Testability (D)Accuracy
4.Which of the following structures belong to component-and-connector structure? (BCD )
(A) Layered structure
(B) Concurrency structure
(C)Client-Server structure
(D) publish-subscribe
(E) Implementation structure
5.Stakeholder of the system includes( ABCDE )
(A)Project manager (B)Tester
(C)Implementer (D)User
(E)Architect
6.Witch contexts influence on the architecture( ABCD )
(A)Technical (B)Project
(C)Business (D)Profession
(E)Hobby
7.What questions does the module structure answer( ADE )
(A)What is the primary function responsibility of each module
(B)What are the major executing components
(C)What processor does each software element execute on
(D)What other elements allowed to use
(E)What software does it use and depend on
8.Why an architecture is important from a technical perspective( ABCDE )
(A)It supports or inhibits the quality attributes
(B)It reduces design and system complexity by restricting design alternatives
(C)It can help project manager accurately estimate the cost and schedule
(D)It’s documents enhances communication among stakeholders
(E)It can be the foundation for training a new team member
9.Tactics that resource management adopted include (ABE )
(A) Increase available resource
(B) Introduce concurrency
(C) Reduce computational cost
(D) Increase computational efficiency
(E) Maintain multiple copies of either data or computations
10.Modifiability concerns what problems (BCDE )
(A) System’s natural work time.
(B) Which part of the system can be modified?
(C) When to modify?
(D) Who will do the modification?
(E) The cost to modify
评阅老师
得分
二、terms to explain(5 items,4 points each,total 20points)
1. Software architecture
The software architecture of a system is the set of structures needed to reason about the system, which comprise software elements, relations among them, and properties of both
软件构架是一组解释系统结构,这些结构包含了软件元素及元素之间关系和特征
2. Architecture Influence Cycle
The architecture and the environment, such as business goal, technical, project and architect’s profession influenced each other, the mechanism call Architecture Influence Cycle ( AIC )
4. Quality attribute scenario
A quality attribute scenario is a quality-attribute-specific requirements, it consists six parts: Source of stimulus, Stimulus, Environment, Artifact, Response and Response Measure.
4. Tactic
A tactic is a design decision that influences the achievement of a quality attribute response
5. Security
Security is a measure of the system’s ability to protect data and information from unauthorized access while still providing access to people and system that are authorized.
评阅老师
得分
三、Short Answer Questions(3 items,10points each,total 30points)
1. Why do we need different architectural structures to reason about the system? Give your reason or example.
Modern system are frequently too complex to grasp all at once, we restrict our attention at any one moment to one of the software system’s structure(3)
There are three structures in the software architecture: module structure, component-and-connector(C&C) structure, allocation structure. (3)
Module structures partition systems into implementation unit, modules are assigned specific computational responsibilities, and are the basis of work assignment. Module structures are static structure(1)
C&C structures focus on the way the elements interact with each other at runtime to carry out the system’s functions(1)
Allocation structures map software structures to the system’s environment(1)
2. How various tactics to support qualities attributes of software do impact each other? Give two examples, one explains the positive impact, another explains negative impact.
The positive impact, the increase cohesion is a tactic to support modifiability, but it support the availability and testability.(5)
The negative impact, the intermediate tactic to support the modifiability, but it inhibit the performance (5)
3. Drawing a concrete quality attribute scenario(six parts) according to below description.
An operator inputs wrong data to the system, under normal operation, the system must notify the operator to input the correct data with no downtime.
Source of stimulus: An operator
Stimulus: wrong input
Artifact: process
Environment: Normal operations
Response: notify the operator to input the correct string
Response measure: No downtime
评阅老师
得分
四、Analytical questions(1items,20points each,total 20points)
1.Analyze the below structure, and answer question.
1) Explain the layered structure according to it’s elements, relation among elements and affected quality attributes ? (8)
A layer provides a cohesive set of services. Layer are allowed to use other layers in a strictly managed fashion.
Element: Layer; Relation: Uses the services of ; Quality Attributes affected: Modifiability
2)List modifiability tactics used in layer structure and give a short explaination. (12)
Split Module
Maintain Semantic Coherence
Encapsulate
Abstract Common Services
Restrict Dependencies
Use an Intermediary.
展开阅读全文