• 제목/요약/키워드: software maintainability

검색결과 100건 처리시간 0.032초

코드 자동 생성을 위한 XML 기반의 효율적인 디자인패턴 구조 (An Efficient Design Pattern Framework for Automatic Code Generation based on XML)

  • 김운용;김영철;주복규;최영근
    • 정보처리학회논문지D
    • /
    • 제8D권6호
    • /
    • pp.753-760
    • /
    • 2001
  • 디자인패턴은 어플리케이션 개발 시에 고려된 문제들로부터 독립적이며 확장성과 유지보수성에 대한 문제를 해결하기 위한 디자인 지식이며 현재 광범위하게 이용되고있는 분야이다. 그러나 이러한 광범위한 디자인패턴의 활용에도 불구하고 디자인 패턴에 명세와 활용은 주로 개발자의 수작업에 의존하고 있다. 그 결과 일관된 형태의 분석과 활용이 어렵고 오류 발생 빈도를 높일 뿐 아니라 프로그램 개발에 많은 시간을 필요로 한다. 따라서 이러한 문제를 해결하기 위해 본 논문에서는 디자인 패턴을 구조화하기 위해 XML을 사용한 표현방법, 이를 이용한 디자인 패턴 활용시스템 구조를 제시한다. 또한 이러한 표기법과 활용구조를 통해 소스코드 자동생성 지원 시스템을 제시하고 적용 예를 보이고자한다. XML을 이용한 구조화된 문서활용은 소스코드 생성시 사용자들에게 더 작은 코드를 작성하게 만들고, 더 안정된 시스템을 구축할 수 있게 한다.

  • PDF

Implementation of Smart Automatic Warehouse to Improve Space Utilization

  • Hwa-La Hur;Yeon-Ho Kuk;Myeong-Chul Park
    • 한국컴퓨터정보학회논문지
    • /
    • 제28권10호
    • /
    • pp.171-178
    • /
    • 2023
  • 본 논문은 공간 활용 극대화를 위한 스마트 자동 적재창고를 제안한다. 기존 수직형 적재창고의 트레이 최대 강성 하중이 100kg로 설계되어 공간내에 적재할 수 있는 팔레트가 극히 제한적이라는 문제점을 가진다. 본 논문에서는 최대 수직강성을 300kg으로 설계하여 공간 활용도를 극대화할 수 있는 스마트 적재창고를 설계하고 구현된 결과를 보인다. 구현된 적재창고의 성능평가 결과를 살펴보면, 최대 적재하중은 500.6kg으로 당초 설계 및 요구도를 달성하였으며, 수직강하속도는 0.5m/s, 장치의 작동 소음은 67.1dB, 팔레트의 입출고 시간은 36.92초, 트레이 처짐량은 4mm로 모든 평가항목에서 우수한 성능을 보였다. 또한, 제어부와 조작 패널의 UI를 별도로 설계하는 PLC 방식의 제어방식을 PC 시스템으로 통합하여 다양한 공정관리 시스템과의 연동성과 유지보수성을 증대하였다. 향후 IoT 센서기반의 물류 로봇을 연동하여 완전 자동화된 스마트 적재창고로 발전시키고자 한다.

품질속성 기반 설계방법을 적용한 소프트웨어 아키텍처 설계 사례연구 (A Case Study of Software Architecture Design by Applying the Quality Attribute-Driven Design Method)

  • 서용석;홍석붕;김현수
    • 정보처리학회논문지D
    • /
    • 제14D권1호
    • /
    • pp.121-130
    • /
    • 2007
  • 소프트웨어 개발에 있어서 구현에 앞서 아키텍처를 설계하는 일은 프로젝트의 성공을 위해 필수적이다. 본 논문은 한국원자력연구소 내에서 가동 중인 하나로 원자로의 방사선감시시스템 소프트웨어 개발과정에서 품질속성 기반 설계방법을 적용하여 소프트웨어 아키텍처를 설계한 사례를 보여준다. 품질속성 기반 설계방법은 Bass[1]가 제시한 속성 기반 설계방법을 변형한 것이다. 이는 먼저 시스템의 기능요건 및 품질요건을 아키텍처 드라이버(driver)로서 도출하고, 이를 만족하기 위한 전술(tactic)을 선택하고, 선택된 전술에 근거하여 아키텍처를 결정하고, 결정된 아키텍처를 구현 및 검증하는 과정으로 이루어진다. 하나로 원자로 방사선감시시스템의 개발요건으로부터 가용성, 유지보수성, 호환성과 같은 품질요건이 추출되었으며, hot-standby 서버 이중화와 약결합의 모듈화와 같은 전술이 선택되었으며, 이중화 서버에 다수의 클라이언트가 연결되는 클라이언트-서버 구조와 객체지향적 데이터 처리 구조가 방사선감시시스템을 위한 아키텍처로 결정되었다. 상용도구인 Adroit를 이용하여 아키텍처가 구현되었으며, 아키텍처 검증은 기능 중심의 시험을 통해 이루어졌다. 적은 예산과 단기간 내에 완수해야 하는 방사선감시시스템 개발에 품질속성, 기반 설계방법을 적용함으로써, 보다 효율적으로 과제를 성공시킬 수 있었다. 방사선감시시스템 개발에서 설계된 아키텍처는 한국원자력연구소 내 다른 설비의 방사선감시시스템 개발에 재사용할 예정이다. 추가적으로 방사선감시시스템 아키텍처를 정량적으로 평가하는 작업이 필요하다.B-트리, CR-트리를 구현하는 방법을 기술한다. CC-GiST를 이용함에 따라 메인 메모리 데이터베이스 응용에서 여러 개의 캐시 인식 트리를 관리하는 번거로움에서 벗어날 수 있고, 응용의 요구에 따른 새로운 캐시 인식 트리를 최소한의 노력으로 효율적으로 구현할 수 있다.에 따라 증가한다. 에틸렌 함량이 50 wt% 보다 많을 경우, 혼합용매들의 극성인력 효과가 밀도 효과보다 커서 온도가 낮아짐에 따라 cloud-point 압력은 증가하였다. 에틸렌 함량이 50 wt% 보다 적을 경우, 혼합용매들의 극성인력 효과가 밀도 효과보다 작아서 온도가 낮아짐에 따라 cloud-point 압력은 감소하였다. 2번 150.2 cGy, 200 cGy, 환자 3번 150.5 cGy, 211.4 cGy, 환자 4번 155.5 cGy 198.6 cGy의 결과를 얻었다. 결 론: 본 원에서 변형 근치적 유방절제술 후 흉벽 방사선치료의 가장 적절한 볼루스 적용 횟수는 전 치료횟수의 $50{\sim}60%$ 적용이다.적인 기준을 마련하고 환자들이 치료과정에서 실질적으로 알고자 하는 의문점들을 체계적으로 교육해 나간다면 지금까지 보다 훨씬 더 나은 환자 만족과 치료 결과를 얻을 수 있으리라 기대된다.적 교육 훈련이 더 엄격하게 진행되므로, 부서 관의 협력으로 방사선사 보수교육에 합산하는 방안이 필요할 것이다. 임신이 확인된 방사선관계종사자의 피폭관리도 새로이 반영되어야 할 것이다. 따라서 업무의 특성상 사용되는 특별한 용어 외에 공통적으로 사용되는 용어의 통일은 반드시 필요하며, 방사선분야의

EJB 환경에서 컴포넌트의 Required 인터페이스 설계 기법 (Design of Required Interface for Components in EJB Environment)

  • 윤희윤;김수동
    • 정보처리학회논문지D
    • /
    • 제11D권3호
    • /
    • pp.671-682
    • /
    • 2004
  • 다양한 정보기술의 등장과 소프트웨어 복잡성의 증가로 소프트웨어 개발 비용과 노력이 크게 증가하고 있다. 컴포넌트 기반 개발(CBD) 기술은 높은 재사용과 유지보수성을 제공하여 비용과 노력을 크게 절감하는 새로운 방법으로 각광을 받고 있다. CBD에서는 컴포넌트의 사용자가 컴포넌트를 이용해 고유의 도메인에 맞는 시스템을 구축하기 위한 컴포넌트의 가변적인 부분을 가지고 있다. 컴포넌트 내부의 가변적인 부분은 사용자가 컴포넌트에서 제공하는 기능인 Required 인터페이스를 통하여 쉽게 설정할 수 있다. Enterprise JavaBeans(EJB)은 Java 기반의 컴포넌트를 구현할 수 있는 상용 규격으로 활용되고 있다. 그러나 EJB에서 Required 인터페이스를 직접 구현할 수 있는 장치가 제한적이다. 본 논문에서는 EJB 환경에서 Required 인터페이스를 효과적으로 정의하고 子현하기 위한 인터페이스 저장형 기법, 클래스 저장형 기법, 인터페이스 생성형 기법, Plug-in 기법을 제안한다. 인터페이스 저장형 기법은 가변적인 설정 값들은 Required 인터페이스에서 저장하고 있으며 클래스 저장형 기법은 컴포넌트 분석 모델의 수정 없이 가변성을 가진 빈들이 Required 인터페이스로 설정된다. 인터페이스 생성형 기법은 컴포넌트의 가변성을 위한 Required 인터페이스 역할의 민을 새롭게 생성하며 Plug-in 기법은 사용자가 외부로부터 가변적인 부분을 플러그인 하여 가변성을 설정할 수 있다. 제시된 4가지 기법들은 CBD 컴포넌트의 Required 인터페이스의 의미를 보존하며 높은 품질의 컴포넌트 구현을 가능하게 한다.

통합병참지원에 관한 연구 (A Study on Integrated Logistic Support)

  • 나명환;김종걸;이낙영;권영일;홍연웅;전영록
    • 한국신뢰성학회:학술대회논문집
    • /
    • 한국신뢰성학회 2001년도 정기학술대회
    • /
    • pp.277-278
    • /
    • 2001
  • The successful operation of a product In service depends upon the effective provision of logistic support in order to achieve and maintain the required levels of performance and customer satisfaction. Logistic support encompasses the activities and facilities required to maintain a product (hardware and software) in service. Logistic support covers maintenance, manpower and personnel, training, spares, technical documentation and packaging handling, storage and transportation and support facilities.The cost of logistic support is often a major contributor to the Life Cycle Cost (LCC) of a product and increasingly customers are making purchase decisions based on lifecycle cost rather than initial purchase price alone. Logistic support considerations can therefore have a major impact on product sales by ensuring that the product can be easily maintained at a reasonable cost and that all the necessary facilities have been provided to fully support the product in the field so that it meets the required availability. Quantification of support costs allows the manufacturer to estimate the support cost elements and evaluate possible warranty costs. This reduces risk and allows support costs to be set at competitive rates.Integrated Logistic Support (ILS) is a management method by which all the logistic support services required by a customer can be brought together in a structured way and In harmony with a product. In essence the application of ILS:- causes logistic support considerations to be integrated into product design;- develops logistic support arrangements that are consistently related to the design and to each other;- provides the necessary logistic support at the beginning and during customer use at optimum cost.The method by which ILS achieves much of the above is through the application of Logistic Support Analysis (LSA). This is a series of support analysis tasks that are performed throughout the design process in order to ensure that the product can be supported efficiently In accordance with the requirements of the customer.The successful application of ILS will result in a number of customer and supplier benefits. These should include some or all of the following:- greater product uptime;- fewer product modifications due to supportability deficiencies and hence less supplier rework;- better adherence to production schedules in process plants through reduced maintenance, better support;- lower supplier product costs;- Bower customer support costs;- better visibility of support costs;- reduced product LCC;- a better and more saleable product;- Improved safety;- increased overall customer satisfaction;- increased product purchases;- potential for purchase or upgrade of the product sooner through customer savings on support of current product.ILS should be an integral part of the total management process with an on-going improvement activity using monitoring of achieved performance to tailor existing support and influence future design activities. For many years, ILS was predominantly applied to military procurement, primarily using standards generated by the US Government Department of Defense (DoD). The military standards refer to specialized government infrastructures and are too complex for commercial application. The methods and benefits of ILS, however, have potential for much wider application in commercial and civilian use. The concept of ILS is simple and depends on a structured procedure that assures that logistic aspects are fully considered throughout the design and development phases of a product, in close cooperation with the designers. The ability to effectively support the product is given equal weight to performance and is fully considered in relation to its cost.The application of ILS provides improvements in availability, maintenance support and longterm 3ogistic cost savings. Logistic costs are significant through the life of a system and can often amount to many times the initial purchase cost of the system.This study provides guidance on the minimum activities necessary to Implement effective ILS for a wide range of commercial suppliers. The guide supplements IEC60106-4, Guide on maintainability of equipment Part 4: Section Eight maintenance and maintenance support planning, which emphasizes the maintenance aspects of the support requirements and refers to other existing standards where appropriate. The use of Reliability and Maintainability studies is also mentioned in this study, as R&M is an important interface area to ILS.

  • PDF

재공학 기반의 클래스 합성을 통한 정련화된 정보 생성에 관한 연구 (A Study on Refined Information Generation through Classes Composition Based on Reengineering)

  • 김행곤;한은주
    • 한국멀티미디어학회논문지
    • /
    • 제1권2호
    • /
    • pp.239-248
    • /
    • 1998
  • 소프트웨어 재공학은 기존 시스템의 유지보수 문제에 대한 해결책으로 많은 연구가 이루어지고 있다. 재공 학은 역공학과 순공학을 통해 기존 시스댐에 대한 소프트웨어 개발을 의미하며, 기존 시스템의 소프트웨어에서 클래스를 추출하여 시스템의 이해를 높일 뿐만 아니라 소프트웨어 유지보수를 향상시키는데 적용된다 이를 위해 사용되는 중요한 개념으로 "합성"은 서로 다른 컴퍼넌트틀로부터 필요한 기능을 가져와 재구성하는 것이다. 또한, 정보 저장소에 저장된 클래스와 클러스터들은 고수준에서 재사용되기 위해 제공되는 시스템의 주요 컴퍼넌트들과 그들간의 구조적인 관계를 가진다. 이들은 그 각각으로 하나의 아키텍쳐를 구성하여 향후 동적 정보로 참조된다. 따라서, 기존의 객체지향 원시코드를 논리적으로 표현함으로써 추출기와 검색기, 합성기에 의해 클래스가 생성되며 클래스와 클러스터 정보는 각각 최적화(optimization)를 통해 정련화된 정보를 추출해 낸다. 이러한 정보틀은정보저장소에 저장되며,클래스간의 관계성에 의한클러스터를하나의 새로운아키텍쳐로써 생성한 다. 또한, 이 정보는 향후 실행 가능한 코드로써 사용되어진다. 본 논문에서 제시한 툴은 재공학을 기반으로 객체지향 정보를 분석하고 합성 방법론을 수행하여 새로운 정보로써 사용자에게 제시된다. 또한, 새로운 코드와 재구축된 고수준의 합성 클래스는 재사용을 높이고, 기존 소프트웨어에 대한 고수준의 이해성과 유지보수성을 제공한다.

  • PDF

침입감내기술 기반의 보안시스템 설계 및 구현 : 워게임체계를 중심으로 (Design and Implementation of Security System Based on Intrusion Tolerance Technology : Focus on Wargame System)

  • 이강택;이동휘;김귀남
    • 융합보안논문지
    • /
    • 제5권4호
    • /
    • pp.41-48
    • /
    • 2005
  • 오늘날 디지털혁명을 기반으로 한 세계화속에서 우리나라는 1990년대 후반부터 'IT 강국'으로 급부상하였으나, 이러한 정보화에 따른 역기능으로 해킹, 바이러스유포, 스팸릴레이, 피싱 등의 보안 침해사고가 매년 증가하여 정보사회 구현에 큰 걸림돌로 작용하고 있다. 이처럼 정보화의 역기능은 우리군의 국방체계에 대한 침해로 자연스레 연결되고 있으며, 이에 군은 국방체계에 대한 정보보호를 위해 다양한 노력을 기울이고 있으나, 점차 자동화, 지능화, 대중화, 분산화, 대규모화되고 있는 해킹수법들과 알려지지 않은 취약점이나 새로운 공격기법에 대해 효율적으로 대응하는데 한계가 있다. 따라서 국가안위와 직접적으로 연관될 수 있는 현 국방체계의 주요 운용 자원들(Resources)에 대한 가용성(Availability), 신뢰성(Reliability), 무결성(Integrity) 및 기밀성(Confidentiality) 등의 보장뿐만 아니라, 운용 시스템에 대한 예상치 못한 공격이나 침입행위가 발생하거나 또는 시스템 결함이 발생할 경우에도 무중단 시스템 운영을 보장하기 위한 체계 안정성(Safety)과 지속성(Maintainability)을 충족시켜주는 '의존성'(Dependability)에 대한 보장이 절실히 요구된다 하겠다. 본 연구는 국방체계의 의존성 보장을 통해 보안 및 무중단운영 요구를 충족시키고자 침입감내기술을 기반으로 하는 보안구조 설계 완성을 목표로 하였다. 이를 위해 침입감내시스템 구축에 요구되는 핵심기능들을 관련연구로 식별하였으며, 국방체계들중 구현대상체계로 선정한 워게임체계의 구조분석을 통해 보안상의 문제점을 식별하여 단계별 계층별 보안 메커니즘 제시하고 식별된 핵심 요구기능들을 구현하여 침입감내기술 기반의 국방체계 보안구조 설계를 완성하였다

  • PDF

단일 페이지 AJAX 애플리케이션을 위한 템플릿 기반 웹 애플리케이션 재공학 기법 (Reengineering Template-Based Web Applications to Single Page AJAX Applications)

  • 오재원;최현철;임승호;안우현
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제1권1호
    • /
    • pp.1-6
    • /
    • 2012
  • 템플릿 기반 웹 애플리케이션(TWA)은 웹 페이지들의 공통부분을 단일 코드 파일(템플릿)로, 각 페이지에 특화된 부분은 별도의 파일로 관리한다. HTTP 요청이 발생하면 이 두 종류 파일을 동적으로 조합하여 웹 페이지를 생성한다. 이를 통해 사용자에게 일관된 UI을 제공하며 코드 중복을 제거해 유지보수성을 향상시킨다. 그러나 TWA는 사용자의 요청 시 현재 페이지에서 바뀌어야 할 부분이 일부지만 페이지 전환이 이루어져 갱신이 불필요한 데이터까지 전송되고 처리되는 문제가 있다. 본 논문은 Java 기반 TWA를 대상으로 이 문제를 해결한다. 제안 기법은 페이지 전환을 제거하기 위해 HTML에 있는 하이퍼링크를 AJAX를 이용하는 JavaScript 이벤트 핸들러로 변환한다. 또한 갱신에 필요한 데이터만 반환하기 위해 JSP, Servlet 코드에서 템플릿 전송 코드를 제거한다. 따라서 이 기법은 페이지 전환으로 발생하는 네트워크와 CPU 부하를 감소시키며, 비동기적인 페이지 업데이트로 사용자의 체감 성능을 향상시킨다. 성능 검증을 위해 전형적인 TWA를 대상으로 이 기법을 적용하였다. 성능 측정 결과 기존 TWA보다 응답시간을 최대 87% 개선하였다.

SOA 기반 애플리케이션 개발을 위한 Agile 프레임워크 (Agile Framework for SOA-based Application Development)

  • 신승우;김행곤
    • 정보처리학회논문지D
    • /
    • 제16D권1호
    • /
    • pp.55-64
    • /
    • 2009
  • 최근 다양한 비즈니스 모델 및 컴퓨팅 환경이 웹 서비스로 집결됨에 따라 웹 애플리케이션 형태의 다양한 제품들이 개발되고 있다. 이에 따라 국내외 대부분의 기업/조직들이 웹 소프트웨어 개발에 있어서 SOA(Service Oriented Architecture)를 적용한 사례들이 늘어나고 있다. SOA는 네트워크가 가용한 소프트웨어 자원에 대해 느슨한 결합과 프로토콜 독립 그리고 표준화 분산 컴퓨팅 접근방법 이다. SOA는 다양한 기업의 서비스 조합을 통한 프로세스의 통합을 요구하는 비즈니스 사용자의 신속함과 융통성을 제공하는 향후 기업의 관심 있는 기술이다. 하지만 SOA의 표준모델에서는 특정한 개발 방법론이 제시되지 않아 기존의 방법론들을 적용하여 개발하거나 SOA 솔루션 업체에서 제안하는 방법론으로 SOA 기반 애플리케이션을 구축하고 있다. 이로 인해 SOA를 초기 도입하는 기업의 경우 개별 프로젝트 단위에서 부분적 도입에 그치고 있어서 SOA의 장점 활용하는 것이 제한적이다. 본 논문에서는 소규모 웹 프로젝트의 생산성 향상과 SOA의 효과적 적용을 위해 Agile 개발 방법론을 SOA에 적용하는 프레임워크를 제안한다. SOA 아키텍처를 기반으로 하여 Agile 방법론을 도입한 아키텍처를 설계 구현하며 프레임워크 개발과정에서 필요한 다양한 Practice요소를 도입하여 프로세스 모델을 제안한다. 프레임워크 실행을 통해 향상된 개발속도와 고객의 변화하는 요구 수용성 및 유지보수성 향상을 평가하게 된다.

S-MADP : 중대형 프로젝트의 모바일 애플리케이션을 위한 서비스 기반 개발 프로세스 (S-MADP : Service based Development Process for Mobile Applications of Medium-Large Scale Project)

  • 강태덕;김경백;정기주
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제2권8호
    • /
    • pp.555-564
    • /
    • 2013
  • 최근 모바일 기기의 혁신적 진화와 태블릿 PC나 스마트폰의 급격한 확산이 이루어지면서 개인의 일상뿐 아니라 기업의 업무용 애플리케이션에도 새로운 변화가 이루어지고 있다. 특히 수개월 이상의 개발 기간이 필요한 중대형 업무용 모바일 애플리케이션의 경우 그 복잡도나 중요도가 급격하게 늘고 있다. 현재 애자일 기반의 모바일 애플리케이션 개발 프로세스가 이러한 중대형 모바일 애플리케이션 개발에 사용되지만, 개발자의 숙련도에 대한 높은 의존도와 상세 작성지침들의 부족한 현상등의 문제점들이 나타나고 있다. 본 논문에서는 이러한 문제점들을 해결하기 위해 S-MADP (Smart Mobile Application Development Process)를 제안한다. S-MADP은 객체지향 설계프로세스를 확장한 서비스 기반의 중대형 모바일 애플리케이션을 위한 개발 프로세스이다. 다양하고 제한된 모바일 기기들의 리소스를 보다 효과적으로 사용하는 애플리케이션의 개발을 위해 사용자 요구사항을 서버기반 또는 클라이언트기반의 서비스로 정의하고 효과적인 서비스의 재사용을 위한 상세지침들을 제공한다. 또한 다양한 사용자 인터페이스를 지원하는 화면 개발을 위한 효과적인 UI설계 상세지침을 지원한다. S-MADP의 성능을 검증하기 위해 3개사의 대형 업무용 모바일 애플리케이션 개발 프로젝트를 진행하였고 그 결과를 분석하였다. 수행된 프로젝트들은 TB사의 'TBS(TB Mobile Service) 3.0', TS사의 '모바일 앱스토어'와 TG그룹의 '모바일 그룹웨어' 프로젝트들이다. 프로젝트를 수행한 결과, 기존의 애자일 기반의 모바일 애플리케이션 개발 프로세스를 사용할 때에 비해서 S-MADP은 모바일 애플리케이션 개발 환경에서 중점적으로 고려되어야 하는 '리소스 사용의 최소화', '서비스 기반의 설계', '모바일 기기에 적합한 사용자 인터페이스'에 대한 상세설계 내용을 보다 자세히 제공하는 것으로 확인되어, 개발된 모바일 애플리케이션의 사용성, 유지보수성, 효율성을 향상 시킨다고 분석되었다. 또한 S-MADP를 현장 적용한 결과 애자일 기반의 개발 프로세스에서 예상된 성능보다 25%향상된 성능으로 중대형 모바일 애플리케이션을 개발 할 수 있음을 확인 하였다.