Presentation is loading. Please wait.

Presentation is loading. Please wait.

소프트웨어재사용 방법론 - Design guidelines for Tailorable Frameworks - Object oriented development method for reconfigurable embedded systems 2011.04.05김기환.

Similar presentations


Presentation on theme: "소프트웨어재사용 방법론 - Design guidelines for Tailorable Frameworks - Object oriented development method for reconfigurable embedded systems 2011.04.05김기환."— Presentation transcript:

1 소프트웨어재사용 방법론 - Design guidelines for Tailorable Frameworks - Object oriented development method for reconfigurable embedded systems 2011.04.05김기환

2 Contents Design guidelines for Tailorable Frameworks  Serge Demeyer, Theo D. Meijler, Oscar Nierstrasz, Patrick Steyeaert  Communications of the ACM, 1997 Object oriented development method for reconfigurable embedded systems  P. N. Green and M. D. Edwards  IEEE, 2000

3 Design guidelines for Tailorable Frameworks Tailorable Frameworks  OO frameworks have demonstrated that OO programmers can encapsulate a reusable, tailorable software architecture  Such frameworks are important for developing open systems  Unfortunately, design of frameworks remains an art rather than a science Because conflict between reuse and tailorability  Tailorability – designing software architectures that are easily adapted to target requirements

4 Design guidelines for Tailorable Frameworks To cope with this conflict  OO frameworks must provide a clean conceptual framework Clearly identifies ‘hot spots’ – where tailorability is necessary and desirable Specifies framework contracts - formalize exactly which parts of the framework are to be reused  Tailorable framework are useful for the construction of so-called open systems Following requirements are sufficient  Interoperability  Distribution  Extensibility

5 Design guidelines for Tailorable Frameworks Interoperability  Open systems typically run on heterogeneous platform Distribution  Open systems are physically distributed Extensibility  Open systems provide some form of extensibility, allowing end users to customize

6 Design guidelines for Tailorable Frameworks Identify ‘axes of variability’  Interoperability – include in the design separate “axis objects”, represents a point on one of the axes of variability  Distribution – specify a framework contract for each of the variability axes  Extensibility – introduce a global configuration object representing the system configuration

7 Design guidelines for Tailorable Frameworks Initial hypermedia model  Document, anchor are two of the hot spots  Assuming the precondition every contained anchor is highlighted An activation of one of these anchors computes the target document  Activate Opens the document  Edit Highlights the contained anchors  Highlight Finally selects  select

8 Design guidelines for Tailorable Frameworks Axes of variability  Designers should first identify  Again refer to OO methods  Three important varying characteristics Storage – how hypermedia documents are stored Presentation – how they viewed (Browser, JPEG, etc.) Navigation – how they may be linked

9 Design guidelines for Tailorable Frameworks The interoperability requirement  Loader – storage  Editor – presentation  Resolver – navigation Split contract  Navigation contract  Storage contract  Presentation contract Hypermedia initial model delegate the variant behavior

10 Design guidelines for Tailorable Frameworks The distribution requirement  Reliability is crucial in distributed systems  Guaranteeing reliable services in dynamic environment is difficult Example  Path object takes control of the execution of navigation contract  This is hot spot of the framework Providing ideal location for wrapping additional logging behavior

11 Design guidelines for Tailorable Frameworks The extensibility requirement  Refactor all operations that determine the system’s configuration Into a single configuration object Figure shows the result of applying third guideline Single hypermedia context object provides the framework hot spot in which an OO programmer can tailor

12 Design guidelines for Tailorable Frameworks Conclusion  This guidelines cover only some of the state of the art in framework design  Guidelines provide concrete design solutions for some issues Useful for coping with the demand for openness

13 Object oriented development method for reconfigurable embedded systems Management of Design constraints is common to the development of all embedded systems Design constraints typically relate to the system as a whole Model-based Object Oriented Systems Engineering

14 Object oriented development method for reconfigurable embedded systems MOOSE method  Develop architecture – product idea formalize Behavioral model  Specify behavior – specify primitive objects Executable model, in C++  Transformational codesign – concerned with committing objects to software and hardware Committed model – satisfies functional requirements and design constraints  Develop platform model – adds implementation details  Automatic synthesis – source code synthesize from committed and platform models  Product implementation

15 Object oriented development method for reconfigurable embedded systems Object = encapsulating state and behavior In reconfigurable hardware  Behavior – FPGA configuration, State – registers or memory The notions of class, objects and inheritance, important to implementing OO system in reconfigurable hardware Run-time reconfigurable hardware offers unique support  Dynamic creation and destruction of objects

16 Object oriented development method for reconfigurable embedded systems Extending MOOSE to support reconfigurable hardware  MOOSE notation extended  Changes committed and platform models  Example – distributed video surveillance system consist of embedded video controllers and a single supervisor

17 Object oriented development method for reconfigurable embedded systems MOOSE committed model  A simplified committed model of an EVC object, which captures, compresses and buffers images from a camera under the control of the frame manager object

18 Object oriented development method for reconfigurable embedded systems  Refinement of the compressor object as a set of four reconfigurable hardware Based on a wavelet image compression algorithm Four primitive objects run on the same FPGA  Scheduled by RTSS

19 Object oriented development method for reconfigurable embedded systems MOOSE platform model  Identifies hardware and software execution environment  Extending MOOSE to handle reconfigurable hardware  Structure of a platform model can be defined from three related viewpoints Communications – provides high-level interface Software interface – supplies drivers Hardware – identify the hardware objects associated with processor

20 Object oriented development method for reconfigurable embedded systems The communication view  Committed model denotes object communications as logical connect  Purpose of communications view object is to map these connections The software interface view  Contains software objects that control hardware  RTOS provides device drivers, but systems with reconfigurable components this software is supplemented with RTSS

21 Object oriented development method for reconfigurable embedded systems The hardware view  Can be synthesized from the committed model and consist of the processor  Include the physical interconnections between the hardware objects

22 Object oriented development method for reconfigurable embedded systems Conclusion  Present enhanced MOOSE approach to development of reconfigurable embedded systems  Indicate how that static and dynamic aspects of OO design may be incorporated into hardware as well as software objects  Further enhancements to MOOSE will include further consideration of reactive systems

23 Summary Design guidelines for Tailorable Frameworks  객체지향 기반 tailorable 한 설계를 위한 가이드라인  Hot spot – axis of variability 분석을 통해 tailorable 한 설계 확보 Object oriented development method for reconfigurable embedded systems  임베디드 시스템 개발을 위한 객체지향 개발 방법 제시  Reconfigurable 한 시스템 설계를 위해 MOOSE 방법을 확장


Download ppt "소프트웨어재사용 방법론 - Design guidelines for Tailorable Frameworks - Object oriented development method for reconfigurable embedded systems 2011.04.05김기환."

Similar presentations


Ads by Google