Presentation is loading. Please wait.

Presentation is loading. Please wait.

Polymorphic System Architecture By Jeff Bryson Software Engineer Staff Lockheed Martin Simulation, Training, & Support 2/7/20141 Lockheed Martin Simulation,

Similar presentations


Presentation on theme: "Polymorphic System Architecture By Jeff Bryson Software Engineer Staff Lockheed Martin Simulation, Training, & Support 2/7/20141 Lockheed Martin Simulation,"— Presentation transcript:

1 Polymorphic System Architecture By Jeff Bryson Software Engineer Staff Lockheed Martin Simulation, Training, & Support 2/7/20141 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

2 Polymorphic System Architecture Definitions Polymorphic Requirements Polymorphic Measurements Polymorphic System Architecture – Strategy Design Pattern – Composite Design Pattern Value added How do you know when to apply 2/7/20142 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

3 PSA Definitions 2/7/20143 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com Containment Encapsulation Type Class Object Memory Pointer (GOTO) Object Reference Aggregation and Composition Inheritance Polymorphism Abstraction – Polymorphic Servers – Polymorphic Clients

4 Polymorphic Requirements Dynamic Reconfiguration of System Functionality Plug-N-Fight Extendibility System Redundancy System Reuse – While encapsulation and inheritance give you behavior (code) reuse, abstraction gives you control (code) reuse. Systems of Systems 2/7/20144 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

5 Polymorphic Mediator Software Middleware – CORBA – Web Services Non-Software behavior – Call Center – Still requires a well defined abstract interface. 2/7/2014 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com 5

6 Polymorphic Measurements The # of components (or objects) that will contain references to abstract interfaces in the system (Aggregations). – This will identify how many objects that will be polymorphic clients (or controllers of the building blocks). The # of components (or objects) that are derived (or instantiated) based on an abstract interface. – This will identify how many objects will be polymorphic servers (or building blocks) 2/7/20146 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

7 Strategy Design Pattern In software, Run-Time Polymorphism is dependent on creating Abstract interfaces Both the classes/types and objects/components need to be illustrated 2/7/20147 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

8 Composite Design Pattern The strategy pattern does have one drawback. It defines a single point of control The Composite pattern extends the Strategy pattern by defining the StrategyUser as one of the strategy behaviors 2/7/20148 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

9 Value Added Reusable System Designs – As problems get more complex not only is there a need to reuse software but there is a need to reuse SE artifacts. Extendibility – Abstraction allows new building blocks to be added to the system. Dynamic reconfiguration Satisfy Requirements with the System Architecture 2/7/20149 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com

10 How do we apply polymorphic behavior Polymorphic Logic anObject = value Each enum = a derived class anObject.doSomething(); 2/7/2014 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com 10 Structured Logic Case value is when red => doSomething(); when blue => doSomethingElse(); when green => doAnotherthing(); end case;

11 Questions ? 2/7/2014 Lockheed Martin Simulation, Training, & Support jeffery.e.bryson@lmco.com 11


Download ppt "Polymorphic System Architecture By Jeff Bryson Software Engineer Staff Lockheed Martin Simulation, Training, & Support 2/7/20141 Lockheed Martin Simulation,"

Similar presentations


Ads by Google