Presentation is loading. Please wait.

Presentation is loading. Please wait.

Global Analysis and Distributed Systems Software Architecture Lecture # 5-6.

Similar presentations


Presentation on theme: "Global Analysis and Distributed Systems Software Architecture Lecture # 5-6."— Presentation transcript:

1 Global Analysis and Distributed Systems Software Architecture Lecture # 5-6

2 2

3 Global analysis external influencing factors  Identify the external influencing factors and critical requirements that could affect the architecture.  Analyze  Analyze them to come up with strategies for designing the architecture priority,  If all cannot be satisfied, decide which has priority, renegotiate a requirement, or change some external factor to come up with workable strategies. 3

4 Global analysis con’t  Influencing factors  Organizational factors  Development schedule, budget  Organizational attitudes, software process  Technological factors  Available hardware and software technology  Product factors  Performance, dependability, cost  May be different in future versions 4

5 5

6 6

7 7

8 Global analysis con’t  Occurs throughout the design  New factors, issues or strategies can arise at any time  Requirements and risk analyses might give the analyzed factors  Then develop strategies to the design identifying accommodatingdescribing  G.A provides a systematic way of identifying, accommodating and describing the affecting factors 8

9 9

10 Why Global Analysis 10  Influencing factor always involve a change.  Successful project prepares for a change by;  Noting the flexibility of influencing factor and their likelihood of change.  Characterizing how factors interact and their impact.  Selecting cost-effective design plan and project plan to reduce the impact of change.

11 11

12 Global analysis con’t  Analyzing factors  Take as input the organizational, technological and product factors  Three (3) step procedure  Step 1: Identify and describe the factors  Step 2: Characterize the flexibility or the changeability of the factors  Step3: Analyze the impact of the factors 12

13 Step 1: Identify and describe the factors  Can the factor’s influence be localized to one component or not?  During which stages of development is the factor important?  Does the factor require any new expertise or skills? 13

14 Step 2: Characterize the flexibility or the changeability of the factors  Flexibility  Is it possible to control the factor so that it makes your task of architecture development easier?  In what way can you control it?  To what extent can you control it?  Changeability  In what way could the factor change?  How likely will it change during or after development?  How often will it change?  Will the factor be affected by changes in the other factors? 14

15 Step3: Analyse the impact of the factors  If a factor was to change, which of the following would be affected and how:  Other factors  Components  Modes of operation of the system  Other design decisions 15

16 16

17 17

18 18

19 Global analysis con’t  Develop strategies  Three (3) steps procedure  Step 1: Identify issues and influencing factors  Step 2: Develop solutions and specific strategies  Step 3: Identify related strategies 19

20 Step 1: Identify issues and influencing factors  Identify a important issues that are influenced by the factor and their changeability  Limitations or constraints imposed by factors  Aggressive development schedule  Difficulty in satisfying product factors  High throughput req. may overload CPU  A common solution to global requirements  Error handling and recovery 20

21 21

22 22

23 Step 2: Develop solutions and specific strategies  For each issue, develop strategies that address the issue and ensure the implementation, for changeability of the architecture design  Reduce or localize the factor’s influence  Reduce the impact of the factor’s changeability on the design and other factors  Reduce or localize required area of expertise or skills  Reduce overall time and effort 23

24 24

25 Step 3: Identify related strategies  When a strategy belongs with more than one issue, don’t repeat the strategy. 25

26 26

27 27

28 What Is A Distributed System?  A collection of independent computers that appears to its users as a single coherent system.  Features:  No shared memory – message-based communication  Each runs its own local OS  Heterogeneity  Ideal: to present a single-system image:  The distributed system “looks like” a single computer rather than a collection of separate computers. 28

29 Distributed System Characteristics  To present a single-system image:  Hide internal organization, communication details  Provide uniform interface  Easily expandable  Adding new computers is hiddenfrom users  Continuous availability  Failures in one component can be covered by other components  Supported by middleware 29

30 Definition of a Distributed System Figure 1-1. A distributed system organized as middleware. The middleware layer runs on all machines, and offers a uniform interface to the system 30

31 31 What is Middleware?  Middleware is the software between the application programs and the operating System and base networking  Integration Fabric that knits together applications, devices, systems software, data  an operating system is “the software that makes the hardware usable”  similarly, a middleware system makes the distributed system programmable and manageable

32 Role of Middleware (MW)  In some early research systems: MW tried to provide the illusion that a collection of separate machines was a single computer.  E.g. NOW project: GLUNIX middleware  Today:  clustering software allows independent computers to work together closely  MW also supports seamless access to remote services, doesn’t try to look like a general-purpose OS 32

33 Middleware Examples  CORBA (Common Object Request Broker Architecture)  DCOM (Distributed Component Object Management) – being replaced by.net  Sun’s ONC RPC (Remote Procedure Call)  RMI (Remote Method Invocation)  SOAP (Simple Object Access Protocol) 33


Download ppt "Global Analysis and Distributed Systems Software Architecture Lecture # 5-6."

Similar presentations


Ads by Google