You are on page 1of 22

GROUP MEMBERS: 1. CHAN CHIA YIK 2. MOHD NAZZIMAN BIN MOHD MUSTAPHA 3.

NUR FADHILAH BT CHE NORDIN

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.

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 its hard to secure the system if the system is available at all the time.

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

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.

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.

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.

a) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.
An automated ticket-issuing system used by passengers at a railway station 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)

b) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.
A computer-controlled video conferencing system that allows video, audio and computer data to be visible to several participants at the same time. 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.
This question refers to Question 11.4 (ii)

c) Design an architecture for the above system based on your choice of model. Make reasonable assumptions about the system requirements.
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 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)

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.

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

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.

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.

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.

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.

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:..

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?

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?

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. - companys 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.