• Title/Summary/Keyword: software architecture pattern

Search Result 73, Processing Time 0.034 seconds

A Framework for Software System Evolution using Architectural Transformation Pattern (아키텍처 변환 패턴을 이용한 소프트웨어 시스템 진화 프레임워크)

  • Park, Taehyun;Ahn, Hwi;Kang, Sungwon;Park, Jongbin;Hwang, Sangcheol
    • Journal of Software Engineering Society
    • /
    • v.26 no.1
    • /
    • pp.17-29
    • /
    • 2013
  • Software System Evolution is more planned and systematic maintenance process as well as a type of maintenance. The research of software evolution provides basis of decisions for maintenance value through cost-benefit analysis of legacy system and architecture-based software evolution enables engineers to reduce maintenance cost by automation of repetitive evolution tasks. This paper proposes a framework for software system evolution using architectural transformation pattern.

  • PDF

A Study on the Standard Architecture of Weapon Control Software on Naval Combat System

  • Lee, Jae-Geun
    • Journal of the Korea Society of Computer and Information
    • /
    • v.26 no.11
    • /
    • pp.101-110
    • /
    • 2021
  • The Weapon Control Software performs the function of supporting weapon operation within the Naval Combat System in connection with the Weapon System. As Weapon Control Software depends on an Weapon System, it has the characteristic that software modification is unavoidable with the change in Interface information. Modification of software causes an increase in development costs since it must take verification step such as software reliability test. In this paper, We design the standard architecture of weapon control software to minimize the modification elements of existing weapon control software. For Interface information management, Feature Model were applied to make a division between common factor and variable factor. In addition, Strategy Pattern were applied to improve the software design. Software evaluation test results show that new architecture provides better modifiability and reuse than existing software as well as the cost of development decrease.

Design of Layered Software Architecture Based on ROS That Reflects the Requirements of Underwater Robot Software System (수중로봇 소프트웨어 시스템의 요구사항을 반영한 ROS 기반의 계층화된 소프트웨어 아키텍처의 설계)

  • Lee, Jung-Woo;Choi, Young-Ho;Lee, Jong-Deuk;Yun, Sung-Jo;Suh, Jin-Ho
    • IEMEK Journal of Embedded Systems and Applications
    • /
    • v.12 no.5
    • /
    • pp.303-310
    • /
    • 2017
  • Underwater robots operating in constrained underwater environment have requirements for software systems. Firstly, it is necessary to provide reusable common software components for hardware interface of sensors and actuators that are frequently used in underwater robots. Secondly, it is required to support distributed execution environment on multiple embedded controllers. Thirdly, it is need to implement a monitoring system capable of high-speed and large-data transmission for underwater robots operating in an environment where it is difficult to check the robot status. For these requirements, we have designed the layered architecture pattern and applied several design patterns to enhance the reusability and the maintainability of software components, In addition, we overlaid the broker architecture pattern to support distributed execution environments. Finally, we implemented the underwater robot software system using ROS framework based on the software architecture design. In order to evaluate the performance of the implemented software system, we performed an experiment to measure the response time between components and the transmission rate of the monitoring data, and obtained the results satisfying the required performance.

A Software Architecture Design Method that Matches Problem Frames and Architectural Patterns (문제틀과 아키텍처 패턴의 매칭을 이용한 소프트웨어 아키텍처 설계 방법)

  • Kim, Jungmin;Kang, Sungwon;Lee, Jihyun
    • Journal of KIISE
    • /
    • v.42 no.3
    • /
    • pp.341-360
    • /
    • 2015
  • While architectural patterns provide software development solutions by providing schemas for structural organizations of software systems based on empirical knowledge, Jackson's problem frames provide a method of analyzing software problems. Problem frames are useful to understanding the software development problem, by putting emphasis on the problem domain, rather than on the solution space. Research exists that relates problem frames and software architecture, but most of this research uses problem frames only to understand given problems. Moreover, none of the existing research derives architectural patterns by considering both problem frames and quality attributes. In this paper, we propose a software architecture design method for pattern-based architecture design, by matching problem frames and architectural patterns. To that end, our approach first develops the problem model based on the problem frames approach, and then uses it to match with candidate architectural patterns, from the perspectives of both functionality, and quality attributes. Functional matching uses the problem frame diagram to match the problem model of an architectural pattern. We conduct a case study to show that our approach can systematically decide the right architectural patterns, and provide a basis for fine-grained software architecture design.

Implementation of a Flexible Architecture for a Mobile Power Cart Applying Design Patterns (설계 패턴을 이용한 모바일 파워 카트의 유연한 아키텍처 구현)

  • Lee, Jong Min;Kim, Seong Woo;Kwon, Oh Jun
    • Journal of Korea Multimedia Society
    • /
    • v.19 no.4
    • /
    • pp.747-755
    • /
    • 2016
  • Automated guided vehicles have been used for a long time to increase work efficiency in the logistics field, but it is difficult to apply to a variety of logistics sites due to either the restricted movement mechanism or expensive devices. In this paper, we present a flexible software architecture that is hardware-independent for a mobile power cart of the follow mode and implement it using a ROS software platform. Through the SCV analysis for the system functionalities, we design a package to track a user movement and a package to control a new hardware platform. It has an advantage to use a variety of movement algorithms and hardware platforms by applying the strategy pattern and the template method pattern for the design of a software architecture. Through the performance evaluation, we show that the proposed design is maintainable in terms of a software complexity and it detects a user's movement by obtaining a user skeleton information so that it can control a hardware platform to move at a certain distance.

Improvement of Pattern Oriented Software Architecture Design Approach with Empirical Design of USN Middleware (USN 미들웨어 설계사례를 통한 패턴지향 아키텍처 설계방법의 개선)

  • Kung, Sang-Hwan
    • The Journal of the Korea Contents Association
    • /
    • v.7 no.11
    • /
    • pp.1-8
    • /
    • 2007
  • The Sensor Network enables many distributed systems to be unmanned and automated by using of diverse sensors as well as wireless communication technologies. One of major enabling technologies for the sensor network is the USN middleware which plays the role of collecting and analyzing of measurements of sensors and controlling of the environments. The paper deals with the fungus cultivating environment based on Sensor Networks. Especially, we focus on the design of USN middleware for the embedded system, and explain how to design software architecture in terms of architectural patterns. In this design process, the improvement of methodology for pattern-oriented architecture design is proposed and the quality attributes for the architecture design is newly classified and suggested for the reference of software architecture design.

A Study on Efficient Application of Architectural Patterns by the Taxonomy of Software Requirements (소프트웨어 요구사항 분류체계를 이용한 효율적인 아키텍처 패턴 적용에 관한 연구)

  • Jong-Woo Choi;Sang Yoon Min
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.12 no.7
    • /
    • pp.285-294
    • /
    • 2023
  • As software grows continuously in scale and complexity, the role of software architecture has become increasingly important across various industries. Although software architects often rely on their experience and intuition when designing such architecture, there is a variety of methodologies being researched for architecture design. However, these methodologies do not address the specific effects of applying multiple architectural patterns to a system or the sequence in which they should be applied. In this study, we explain the variation in architectural design results depending on the order in which the same set of architectural patterns is applied to a single system. Based on this phenomenon, we identify requirements for applying architectural patterns and propose a method of classifying the patterns to be applied. We also propose a prioritization process for requirements to efficiently apply the classified patterns in a specific order. Finally, we show a case study that prioritizing requirements based on architectural pattern types is beneficial for efficient software architecture design in terms of quality attributes.

Improving Fault Traceability of Web Application by Utilizing Software Revision Information and Behavior Model

  • Baek, Seungsuk;Lee, Jung-Won;Lee, Byungjeong
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.12 no.2
    • /
    • pp.817-828
    • /
    • 2018
  • Modern software, especially web-based software, is broadly used in various fields. Most web applications employ design patterns, such as a model-view-controller (MVC) pattern and a factory pattern as development technology, so the application can have a good architecture to facilitate maintenance and productivity. A web application, however, may have defects and developers must fix the defects when a user submits bug reports. In this paper, we propose a novel approach to improving fault traceability in web application by using software revision information and software behavior model to reduce costs and effectively handle the software defect. We also provide a case study to show effectiveness of our approach.

Software Architecture Design based on Interface and View Analysis (인터페이스와 뷰 분석을 이용한 소프트웨어 아키텍처 설계방법)

  • Kung, Sang-Hwan
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.11 no.12
    • /
    • pp.5072-5082
    • /
    • 2010
  • The Paper describes the methodology for Software Architecture Design. The key idea is to find the interfaces between the actors, modules, and communicating entities, and use them to identify the software design elements. The identified interfaces and modules are further used to find new modules and interfaces until the every design elements are found and located in the software architecture. This method starts the architecture design with finding the interfaces and enables the natural design procedure by relating the cause and results of the design. It also makes use of not only 5 architectural views for analysis and design of the software, but also concept of architecture patterns in design procedure. Especially, this method is also useful for the novice of the software architecture design.

General Requirements and Portability Measurement Method of Architecture Base (아키텍처 기반 소프트웨어의 일반적 요구사항과 이식성의 품질 측정 방안)

  • Kang, Jong-Up;Yang, Hae-Sool
    • The Journal of the Korea Contents Association
    • /
    • v.9 no.11
    • /
    • pp.63-73
    • /
    • 2009
  • Architecture base mechanism centers to construct software system. There is construction of successful software system how firmly define software. Reason that architecture base software is important is used and expresses early design decision item of system and is because reusability is possible by means of communication between comprehension person concerned. Analyzed special quality of pattern and importance of architecture and general requirement and portability and consider ISO/IEC 9126 and ISO/IEC 14598 and propose system and Metrik in this research. Also, do defect particulars and efficiency test that test according to examination formality of architecture base software and analyzed result.