architectural design

22
BCS2283: INTRODUCTION TO SOFTWARE ENGINEERING GROUP MEMBERS: 1.CHAN CHIA YIK 2.MOHD NAZZIMAN BIN MOHD MUSTAPHA 3.NUR FADHILAH BT CHE NORDIN TITLE: CHAPTER 8: ARCHITECTURAL DESIGN (EXERCISE)

Upload: nazzimanmusta6596

Post on 01-Nov-2014

464 views

Category:

Documents


9 download

DESCRIPTION

INTRODUCTION TO SOFTWARE ENGINEERINGARCHITECTURAL DESIGN

TRANSCRIPT

Page 1: ARCHITECTURAL DESIGN

BCS2283: INTRODUCTION TO SOFTWARE ENGINEERING

GROUP MEMBERS:1. CHAN CHIA YIK2. MOHD NAZZIMAN BIN MOHD MUSTAPHA3. NUR FADHILAH BT CHE NORDIN

TITLE: CHAPTER 8:

ARCHITECTURAL DESIGN (EXERCISE)

Page 2: ARCHITECTURAL DESIGN

BCS2283: INTRODUCTION TO SOFTWARE ENGINEERING

QUESTION REFERENCES:Software Engineering 8 by

Ian Somerville(page 264)

Page 3: ARCHITECTURAL DESIGN

QUESTION 11.1

Explain why it may be necessary to design the system architecture before the specifications are written.

The architecture may have to be designed before specifications are written to provide a means of structuring the specification and developing different sub-system specifications concurrently, to allow manufacture of hardware by sub-contractors and to provide a model for system costing.

Page 4: ARCHITECTURAL DESIGN

QUESTION 11.2

Explain why design conflicts might arise when designing an architecture where availability and secure requirements are the most important functional requirements.

If availability is a critical, the architecture should be designed to include redundant components and so that it is possible to replace and update components without stopping the system. Security means the architecture should be in a layered structure. It also means it’s hard to secure the system if the system is available at all the time.

Page 5: ARCHITECTURAL DESIGN

QUESTION 11.4

Giving reason for your answer, suggest an appropriate structural models discussed in this chapter.

Page 6: ARCHITECTURAL DESIGN

QUESTION 11.4

i) An automated ticket-issuing system used by passengers at a railway station

The most appropriate architectural model is a centralized model with a shared repository of route and pricing information. This means that changes are immediately available to all machines. As little processing is necessary, there is no real advantage in a client-server architecture. The centralized system also allows global information and route use to be collected and processed.

Page 7: ARCHITECTURAL DESIGN

QUESTION 11.4

ii) A computer-controlled video conferencing system that allows video, audio and computer data to be visible to several participants at the same time.

The most appropriate is a client-server model. The reason for this is the need for a lot of local processing to handle multimedia data.

Page 8: ARCHITECTURAL DESIGN

QUESTION 11.4

iii) A robot floor-cleaner that is intended to clean relatively clear spaces such as corridors. The cleaner must be able to sense wall and other obstruction.

The most appropriate model is a repository model where all sub-systems place information in the repository for other sub-systems to use. In the case of AI systems as this would be, special kind of repository called a backboard in normally used.

Page 9: ARCHITECTURAL DESIGN

QUESTION 11.5

a) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.

The architecture should have a centralized database with sub-systems to handle communications, route information and price information. Also sub-systems for statistical processing. Each ticket machine should be connected to this.

This question refers to Question 11.4 (i)

An automated ticket-issuing system used by passengers at a railway station

Page 10: ARCHITECTURAL DESIGN

QUESTION 11.5

b) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.

The architecture should include a network with a range of clients/servers on it. These should include a floor controller, video server, display clients, etc.

A computer-controlled video conferencing system that allows video, audio and computer data to be visible to several participants at the same time.

This question refers to Question 11.4 (ii)

Page 11: ARCHITECTURAL DESIGN

QUESTION 11.5

c) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.

The architecture should include a centralized repository with sensors adding information to it, decision systems taking information from it actuators using sensor information o move the machine.

This question refers to Question 11.4 (iii)

A robot floor-cleaner that is intended to clean relatively clear spaces such as corridors. The cleaner must be able to sense wall and other obstruction.

Page 12: ARCHITECTURAL DESIGN

QUESTION 11.6

Real-time systems usually use event-driven models of control. Under what circumstances would you recommend the use of a call-return control model for a real-time system?

the call return model assumes a sequence of actions whereas real-time systems must respond to events from different hardware interfaced to the system. The normally means that the control must be responsive rather than sequential.

Page 13: ARCHITECTURAL DESIGN

QUESTION 11.7

Giving reasons for your answer, suggest an appropriate control model for the following systems:

Page 14: ARCHITECTURAL DESIGN

QUESTION 11.7

i) A batch processing system that takes information about hours worked and pay rates and prints salary slips and bank credit transfer information

Salary system. Call return model of control. Each operation involves identifying particular options then calling subroutines to retrieve or compute the required information.

Page 15: ARCHITECTURAL DESIGN

QUESTION 11.7

ii) A set of software tools that are produced by different vendors, but which must work together

Software toolset. Broadcast model of control is more appropriate. Tools need not know which other tools are available and this approach allows tools which operate on different types of computers to work together.

Page 16: ARCHITECTURAL DESIGN

QUESTION 11.7

iii) A television controller that responds to signals from a remove control unit

Television controller. Centralized (polling) control model. This is the most appropriate approach as there is no need for the every response required from interrupt driven systems.

Page 17: ARCHITECTURAL DESIGN

QUESTION 11.8

Discuss their advantages and disadvantages as far as distributability is concerned of the data-flow model and the object model. Assume that both single machine and distributed versions of an application are required.

Both models can be distributed where each transformation in DFD is implemented as a sparate process and each object is implemented as process. Problem with functional decomposition is the need for shared state which must also be implemented as one o more processes. In the object model, distributing objects is a problem if inheritance is involved as this creates a lot of network traffic.

Page 18: ARCHITECTURAL DESIGN

QUESTION 11.9

You are given two integrated CASE toolsets and are asked to compare them. Explain how you could use a reference model for CASE (Brown, et al., 1992) to make this comparison.

• Taking the different components of the reference model in turn than assess how well the CASE toolset being studied provides these services. You also have to look how these services are used in the particular toolsets.• In this case, comparison would be drawn using:……..

Page 19: ARCHITECTURAL DESIGN

QUESTION 11.9

1. Data repository services. What kind of data management is supported?

2. Data integration services. How well can data be data be interchanges and what support is provided for configuration management?

3. User interfaces services. What facilities are supported to allow present integration? How well integrated at the user interface level are different parts of the systems?

4. Task management services. Do the toolsets provide for process definition and enactment?

5. Message services. How do different tools in the toolsets communicate?

Page 20: ARCHITECTURAL DESIGN

QUESTION 11.10

Should there be a separate profession of ‘software architect’ whose role is to work independently with a customer to design a software system architecture? This system would then be implemented by some software company. What might be the difficulties of establishing such a profession?

Page 21: ARCHITECTURAL DESIGN

QUESTION 11.10

1. There should be a separation of profession of ‘software architect’.

2. But, the software architect might face difficulties in doing their job. Example:- conflicts might arise when designing an architecture.- company’s specification might be different from software architect specification.- Pay job might be lower than usual. Software architect needs to find their own project by their own.

Page 22: ARCHITECTURAL DESIGN

FINISH