软件工程 实践者的研究方法 第11章答案

Problem:

There are two different types of “states” that behavioral models can represent. What are they?

Answer:

4633-7-7P SA: 9420

SR: 6376

The two different types of “states” that behavioral models can represent are:

1. The state of each class as the system performs its function and

2. The state of the system as observed from the outside as the system performs its function.

Problem:

How does a sequence diagram differ from a state diagram? How are they similar?

Answer:

4633-7-8P SA: 9420

SR: 6376

Difference: A sequence diagram differs from a state diagram in the way of representing the behavior of the system.

• Unlike a state diagram that represents behavior without noting the classes involved, a sequence diagram represents behavior, by describing how classes move from state to state.

• A state diagram represents how an individual class changes its state, based on external events where as a sequence diagram shows the behavior of the software as a function of time.

Similarity:

Both the sequence diagram and the state diagram are the notation used for behavioral modeling. They are the two different behavioral representations.

Problem:

Suggest three requirements patterns for a modern mobile phone and write a brief description of each. Could these patterns be used for other devices? Provide an example.

Answer:

Modern mobile phones need various applications like camera, Bluetooth, Internet, Radio etc. Some of the requirements patterns for such modern mobile phones are:

Cameracontroller

This pattern shows how to specify the sensors and actuators in a phone, used to perform camera controlling functions. This pattern uses the sensors for the zoom-in and zoom-out functions of a camera. A pull mechanism is used for passive sensors and a push mechanism for the active sensors.

This pattern can be used in various devices that need a camera. For example, a computer that needs a web camera can use this pattern for camera controlling operations.

MobileRadio

This pattern provides functioning of an in built mobile radio. It uses some technologies that enable stations to communicate over wide areas.

This pattern can be used in cars to provide the facility of a radio system

WirelessInternet

This pattern provides the mobile phones the access to internet without any modems or wires.

This pattern can also be used in laptops, which are mobile. Due to their mobility, a wireless Internet access is much useful for laptops. So this pattern can be used.

Problem:

Select one of the patterns you developed in Problem 11.3 and develop a reasonably complete pattern description similar in content and style to the one presented in Section 11.4.2.

Answer: Problem:

How much analysis modeling do you think would be required for www.safehomeassured.com? Would each of the model types described in Section 11.5.3 be required?

Answer:

For a SafeHomeAssured.com application, the degree to which analysis modeling for an application is emphasized depends on the following factors:

• Size and complexity of WebApp increment

• Number of stakeholders

• Size of the WebApp team

• Degree to which members of the WebApp team worked together before

• Degree to which the organization’s success is directly depends on the success of the WebApp.

Smaller the project and lesser the number of stakeholders and if the application is less critical, it is reasonable to apply a more lightweight analysis approach. In the case of SafeHomeAssured.com, a more lightweight analysis approach can be applied because,

• We need to analyze only that part of the problem that is relevant to the design work for the increment to be delivered.

• It does not need any stakeholders. Only the owner of the house will be concerned about the project.

• Also the success of a home is not a direct dependent on this SafeHomeAssured.com

There are five main classes of models. They are:

• Content model

• Interaction model

• Functional model

• Navigation model

• Configuration model

Some specific models depend largely upon the nature of the WebApp. For SafeHomeAssured.com not each of these model types are required. For this system, we could validly design the overall website aesthetics (layouts, color schemes, etc.) without having analyzed the functional requirements for e-commerce capabilities. So the functional model is not required.

Problem:

What is the purpose of the interaction model for a WebApp?

Answer:

4633-7-12P SA: 9420

SR: 6376

The interaction model describes the manner in which users interact with the WebApp. The purpose of the interaction model for a WebApps is to enable a “conversation” between an end user and application functionality, content, and behavior.

This conversation can be described using an interaction model that can be composed of one or more of the following elements:

• Use cases

• Sequence diagrams

• State diagrams

• User interface prototypes

Use cases: It is the main element of WebApp interaction models. A set of use cases is sufficient to describe the interaction at analysis level.

Sequence diagrams: It provide representation of manner in which user actions collaborate with analysis classes.

State diagrams: It indicates information required to move users between states and represents behavioral information. It can also represent potential navigation pathways.

User interface prototype: It provides the layout of the user interface, the content it presents, and the interaction mechanisms it implements.

Problem:

It could be argued that a WebApp functional model should be delayed until design. Present pros and cons for this argument.

Answer:

It could be argued that a WebApp functional model should be delayed until design. The pros and cons for this argument are:

Pros:

• Some WebApps does not need functional requirements up to some phase. In such cases, it reduces the effort of unnecessary gathering of functional requirements.

• It saves some time.

Cons:

• Some requirements may not be addressed due to this delay till the design phase.

• Some WebApps deliver a broad array of computational and manipulative functions that can be associated directly with content and the major goal of the WebApp. So in some cases, even a major goal of user-WebApp interaction may sometimes go unassigned.

" Problem:

What is the purpose of a configuration model?

Answer:

4633-7-14P SA: 9420

SR: 6376

The purpose of the configuration model is to describe the environment and infrastructure in which the WebApp resides. The configuration model in some cases is nothing more than a list of server-side and client-side attributes for WebApps.

Problem:

How does the navigation model differ from the interaction model?

Answer:

• A navigation model differs from an interaction model in addressing the requirements.

• A navigation model is concerned about how each user category will navigate from one WebApp element to another, where as an interaction model presents the conversation between an end user and application functionality.

• The mechanics of navigation are defined as part of design, while the interaction model is basically described at an analysis level and further introduced in detail during design.


Solutions Chapter 11: REQUIREMENTS MODELING:BEHAVIOR, PATTERNS, WEB AND MOBILE APPS

 

 

11.1) Passive states show the current status of object attributes. Active states indicate current status of object as it undergoes transformation or processing.

 

11.2) State diagrams depict the state of the system and show how events affect system states. Sequence diagrams indicate how events cause transitions from object to object.

 

11.3) Answers will vary

 

11.4) Answers will vary

 

11.5) Based on the criteria listed in Section 7.5.1 the analysis modeling should be extensive. This web-based application (large application, lots of users, application is mission critical). It is highly probable each of the model types from Section 7.5.3 should be used in the requirements model.

 

11.6) The interaction model describes user interaction with the WebApp.

 

11.7) Part of the functional model is based on user visible behavior that is defined in the use cases created during the analysis activities. Part of the functional model is concerned with defining content independent functions that support the user interaction and these are best differed until the design phase of the incremental process model used to implement the WebApp.

 

11.8) The configuration model describes the WebApp environmental infrastructure in detail.

 

11.9) The navigation model defines how each content element is placed within the WebApp (that is the structure of the WebApp) while the interaction model defines the mechanics (eg. key presses, mouse moves, search boxes etc.) of how users can reach each content item.

原文地址:https://www.cnblogs.com/mikecracker/p/14315512.html