Identification of Suitable Design-Pattern Realizations

被引:0
|
作者
Beloglavec, Simon [1 ]
Hericko, Marjan [1 ]
机构
[1] Univ Maribor, Fak Elektrotehniko Racunalnistvo & Informat, Smetanova Ulica 17, Maribor 2000, Slovenia
来源
关键词
object-oriented design; design patterns; metrics; design pattern realizations; TLA(+); !text type='Java']Java[!/text;
D O I
暂无
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Using design patterns in the process of developing object-oriented software has become mandatory for experienced engineers. The proven knowledge that is contained in design patterns is mapped into a software design through pattern realization. Pattern realization updates the design with changes in the object's structure and inter-object communication. All design patterns allow a variety of acceptable realizations. In a specific solution domain, some realizations prove to be more suitable than others. The level of suitability can be determined with the help of software design metrics. The metric scores reveal the quality attributes of the updated design. Through the gathering and comparison of the metric scores the appropriate realizations can be determined. The number of possible realizations for the design pattern can be significantly high and the execution of such tasks is not always feasible for projects with tight schedules. The selection of effective realizations depends on the experiences of a software engineer. Continuous support during the selection process can help less experienced engineers build better software designs. This support should provide a comparison for selecting pattern realizations in an acceptable amount of time. The presented approach makes use of concurrency and networking mechanisms in the Java software-platform, which enables evaluation of design pattern realizations in reasonable time. Acceptable pattern realization should be specified for each design pattern. For this purpose we present the formal specification for design patterns with the TLA+ specification language. This specification clearly specifies allowable changes of internal pattern elements. With this additional pattern information, possible pattern realization can be generated and evaluated by a support tool. The concurrent evaluation that is performed on multiple network nodes ensures acceptable response times. We present a prototype for the support tool developed during the research. Software engineers use design-pattern catalogues containing related design patterns. Pattern descriptions given in the catalogues are general and do not specify possible pattern realizations. Section 1 presents the background information on attempts for specifying and selecting appropriate pattern realization. A new approach to the realization specifications, with the help of specification language TLA+, is presented in Section 2. We demonstrate our approach to specifying realization on the example of commonly used MVC pattern presented in Figure 1. Construction of pattern realization specification is shown on some elementary design patterns from GoF catalogue. Section 3 presents challenges encountered during developing the support tool that automates the selection process. Figure 2 gives a comparison of the various considered architectures. The analysis of the measurements performed for all cases has led to the architecture depicted in Figure 3. The use of the support tool is shown in Figures 4 and 5.
引用
收藏
页码:71 / 76
页数:6
相关论文
共 50 条
  • [1] Identification of suitable design-pattern realizations
    Beloglavec, Simon
    Heričko, Marjan
    [J]. Elektroteh Vestn Electrotech Rev, 1 (71-76):
  • [2] Is MPI suitable for a generative design-pattern system?
    Mehta, Paras
    Amaral, Jose Nelson
    Szafron, Duane
    [J]. PARALLEL COMPUTING, 2006, 32 (7-8) : 616 - 626
  • [3] Automating design-pattern identification
    Bansiya, J
    [J]. DR DOBBS JOURNAL, 1998, 23 (06): : 20 - +
  • [4] A Composite Design-Pattern Identification Technique
    Hericko, Marjan
    Beloglavec, Simon
    [J]. INFORMATICA-JOURNAL OF COMPUTING AND INFORMATICS, 2005, 29 (04): : 469 - 476
  • [5] Improving design-pattern identification: a new approach and an exploratory study
    Yann-Gaël Guéhéneuc
    Jean-Yves Guyomarc’h
    Houari Sahraoui
    [J]. Software Quality Journal, 2010, 18 : 145 - 174
  • [6] Improving design-pattern identification: a new approach and an exploratory study
    Gueheneuc, Yann-Gael
    Guyomarc'h, Jean-Yves
    Sahraoui, Houari
    [J]. SOFTWARE QUALITY JOURNAL, 2010, 18 (01) : 145 - 174
  • [7] Structural Formalization of Design-Pattern Based Software Design
    Singh, Pushpendra B.
    Chaudhary, Banshi D.
    [J]. THIRD INTERNATIONAL CONFERENCE ON DIGITAL SOCIETY: ICDS 2009, PROCEEDINGS, 2009, : 283 - 288
  • [8] Survey On Software Design-Pattern Specification Languages
    Khwaja, Salman
    Alshayeb, Mohammad
    [J]. ACM COMPUTING SURVEYS, 2016, 49 (01)
  • [9] Design-Pattern based Parallel Programming Model and System Implementation
    Wu, Huabei
    [J]. 2008 4TH INTERNATIONAL CONFERENCE ON WIRELESS COMMUNICATIONS, NETWORKING AND MOBILE COMPUTING, VOLS 1-31, 2008, : 12500 - 12504
  • [10] A "design-pattern"-based approach for analyzing e-health business models
    Mettler, Tobias
    Eurich, Markus
    [J]. HEALTH POLICY AND TECHNOLOGY, 2012, 1 (02) : 77 - 85