KR20180072436A - 프로그램 제공 장치 - Google Patents

프로그램 제공 장치 Download PDF

Info

Publication number
KR20180072436A
KR20180072436A KR1020160175994A KR20160175994A KR20180072436A KR 20180072436 A KR20180072436 A KR 20180072436A KR 1020160175994 A KR1020160175994 A KR 1020160175994A KR 20160175994 A KR20160175994 A KR 20160175994A KR 20180072436 A KR20180072436 A KR 20180072436A
Authority
KR
South Korea
Prior art keywords
source code
source
module
version
change
Prior art date
Application number
KR1020160175994A
Other languages
English (en)
Inventor
윤여창
이석찬
이승주
Original Assignee
엘에스산전 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘에스산전 주식회사 filed Critical 엘에스산전 주식회사
Priority to KR1020160175994A priority Critical patent/KR20180072436A/ko
Priority to EP17157840.4A priority patent/EP3340135A1/en
Priority to CN201710123662.1A priority patent/CN108614708A/zh
Priority to US15/450,911 priority patent/US20180173504A1/en
Publication of KR20180072436A publication Critical patent/KR20180072436A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/0405Programme-control specially adapted for machine tool control and not otherwise provided for
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • G05B19/0425Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23328Modification program
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23335History, log of program modifications
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24215Scada supervisory control and data acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Automation & Control Theory (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Operations Research (AREA)
  • Public Health (AREA)
  • Water Supply & Treatment (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 전력 관리 기능에 대한 소스코드 원본을 제공하는 적어도 하나의 원본 모듈 제공부, 상기 적어도 하나의 원본 모듈 제공부 중 적어도 어느 하나에서 제공되는 소스코드 원본과 상이하게 수정된 소스코드 변경본을 제공하는 변경 모듈 제공부, 및 상기 적어도 하나의 원본 모듈 제공부에 의한 상기 소스코드 원본과 상기 변경 모듈 제공부에 의한 상기 소스코드 변경본을 조합하여 프로그램을 생성하는 소스코드 결합부를 포함하는 전력관리 프로그램 제공 장치를 제공한다.

Description

프로그램 제공 장치{APPARATUS FOR PROVIDING PROGRAM}
본 발명은 감시 제어 시스템을 실행시키기 위한 프로그램을 제공하는 프로그램 제공 장치에 관한 것이다.
감시제어시스템은 산업 공정, 시설 공정 및 설비 공정 등을 감시 및 제어하기 위한 시스템이다. 예시적으로, 감시제어시스템은 SCADA 시스템(Supervisory Control And Data Acquisition system) 및 EMS (Energy Management System) 등이 있다.
SCADA 시스템은 대상 영역에 배치된 대상 기기들에 의한 작업 공정을 감시 및 제어함으로써 작업 공정을 조직화하기 위한 것이다.
EMS는 대상 영역의 에너지 사용 실태를 파악함으로써, 효율적인 에너지 관리를 위한 것이다.
이러한 감시제어시스템은 계측 기기들로부터 계측 데이터를 수집하고, 계측 데이터를 엔지니어링 데이터로 변환하며, 엔지니어링 데이터에 기초하여 대상 영역에 배치된 대상 기기들을 감시 및 제어한다.
일반적으로 감시제어시스템은 대상 기기를 감시 및 제어하는 각종 기능들을 구현하기 위한 소스코드들의 조합으로 이루어진 프로그램을 제공하는 프로그램 제공 장치를 포함한다.
이러한 프로그램 제공 장치는 제조시의 용이성을 위해 보편적인 상황에서 각종 기능을 구현하기 위한 소스코드(이하, "소스코드 원본"이라 함)를 포함하도록 마련된다. 그리고, 프로그램 제공 장치는 그를 구비하는 감시제어시스템의 설치 환경 및 사용자의 요구사항 등의 특정 상황에 따라 소스코드 원본과 상이한 소스코드 변경본을 포함하도록 수정될 필요가 있다.
도 1a는 소스코드 원본을 포함하는 프로그램 제공 장치를 나타낸 도면이고, 도 1b는 종래기술에 따른 소스코드 변경본을 포함하는 프로그램 제공 장치를 나타낸 도면이다.
참고로, 도 1a 및 도 1b에서 A~K의 알파벳 기호는 변수를 의미하고, 수식부호(+, x, -, /, ())는 명령어를 의미한다. 더불어, 도 1a 및 도 1b은 실제 감시제어시스템에 구비되는 프로그램 제공 장치의 소스코드를 나타낸 것이 아니라, 소스코드를 간략하게 도식화한 것이다.
도 1a 및 도 1b에 도시한 바와 같이, 프로그램 제공 장치는 각종 기능을 구현하기 위한 복수의 소스코드를 제공하는 복수의 모듈(SC1, SC2, SC3, SC4)을 포함한다.
도 1a에 도시한 바와 같이, 프로그램 제공 장치의 제조 시에, 복수의 모듈(SC1, SC2, SC3, SC4)은 소스코드 원본(Original)을 제공하도록 마련된다. 일 예로, 복수의 모듈(SC1, SC2, SC3, SC4) 각각은 각종 변수(A~K) 및 각종 명령어(+, x, -, /, ()) 중 적어도 어느 하나의 조합으로 이루어진 소스코드 원본(Original)을 보유할 수 있다.
도 1b에 도시한 바와 같이, 종래기술에 따르면, 복수의 모듈(SC1, SC2, SC3, SC4)은 각 특정 상황에 대응하도록 원본(Original)과 상이하게 수정된 소스코드 변경본(M1, M2, M3)을 제공한다. 이때, 각 소스코드 변경본(M1, M2, M3)은 복수의 모듈(SC1, SC2, SC3, SC4) 중 적어도 어느 하나에 보유된 소스코드 원본(Original)의 변수 또는 명령어를 각 특정 상황에 대응하도록 변형하는 방식으로 마련된다.
즉, 제 1 특정 상황에 대응되는 제 1 소스코드 변경본(M1)은 제 1 모듈(SC1)에 보유된 소스코드 원본(Original)의 A변수를 A'변수로 대체하고, 제 4 모듈(SC4)에 보유된 소스코드 원본(Original)의 J변수를 J'변수로 대체하는 방식으로 마련된다.
제 2 특정 상황에 대응되는 제 2 소스코드 변경본(M2)은 제 2 모듈(SC2)에 보유된 소스코드 원본(Original)의 (+)명령어를 (-)명령어로 대체하는 방식으로 마련된다.
제 3 특정 상황에 대응되는 제 3 변경본(M3)은 제 1 모듈(SC1)에 보유된 소스코드 원본(Original)의 C변수를 K변수로 대체하고, 제 3 모듈(SC3)에 보유된 소스코드 원본(Original)의 (+)명령어를 (/)명령어로 대체하며, 제 4 모듈(SC4)에보유된 소스코드 원본(Original)에 (x)명령어 및 D변수를 추가하는 방식으로 마련된다.
이상과 같이, 프로그램 제공 장치는 모든 감시제어시스템의 설치 환경 및 사용자의 모든 요구사항에 완벽하게 호환되는 형태로 마련되는 것은 사실상 불가능하다.
이에, 제조 시의 프로그램 제공 장치는 비교적 높은 호환성을 위해, 보편적인 상황에 대응하는 소스코드 원본을 포함하도록 마련된다. 그리고, 프로그램 제공 장치의 적용 시에, 각 특정 상황에 대응하도록 소스코드 원본과 상이한 소스코드 변경본을 마련한다. 즉, 각 감시제어시스템에 구비되는 프로그램 제공 장치는 소스코드 원본을 포함하는 것이 아니라, 각 특정 상황에 적용될 수 있도록 소스코드 변경본을 포함한다. 달리 설명하면, 프로그램 제공 장치의 호환성을 기준치 이상으로 높이기 위해서, 프로그램 제공 장치의 일관성이 상실된다.
이와 같이, 프로그램 제공 장치의 일관성이 상실됨에 따라, 프로그램 제공 장치의 공급자는 프로그램 제공 장치의 유지 보수를 위해 소스코드 원본 및 각 특정 상황에 대응하는 소스코드 변경본을 모두 보유할 필요가 있다. 즉, 소스코드 변경본이 증가될수록, 소스코드 변경본의 관리를 위한 공급자의 부담이 증가되는 문제점이 있다.
또한, 소스코드 변경본은 소스코드 원본을 직접적으로 수정하여 마련되는 것이므로, 소스코드 변경본의 마련 과정이 명시되지 않는다면, 소스코드 변경본과 소스코드 원본 간의 차이점이 특정 상황으로 인한 것인지, 아니면 공급자의 오류로 인한 것인지가 직관적으로 인지될 수 없는 문제점이 있다.
그러므로, 프로그램 제공 장치의 유지 보수에 소모되는 비용을 감소시키는 데에 한계가 있는 문제점이 있다.
따라서, 프로그램 제공 장치의 적용 범위를 넓히기 위한 호환성의 향상과, 프로그램 제공 장치의 용이한 유지 보수를 위한 일관성의 유지가 상호 트레이드 오프 관계가 되는 문제점이 있다.
본 발명은 호환성을 향상시킬 수 있으면서도 일관성을 유지할 수 있는 프로그램 제공 장치를 제공한다.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
이와 같은 과제를 해결하기 위하여, 본 발명의 일 예시는 전력 관리 기능에 대한 소스코드 원본을 제공하는 적어도 하나의 원본 모듈 제공부, 상기 적어도 하나의 원본 모듈 제공부 중 적어도 어느 하나에서 제공되는 소스코드 원본과 상이하게 수정된 소스코드 변경본을 제공하는 변경 모듈 제공부, 및 상기 적어도 하나의 원본 모듈 제공부에 의한 상기 소스코드 원본과 상기 변경 모듈 제공부에 의한 상기 소스코드 변경본을 조합하여 프로그램을 생성하는 소스코드 결합부를 포함하는 전력관리 프로그램 제공 장치를 제공한다.
상기 소스코드 원본은 적어도 하나의 변수, 적어도 하나의 명령어, 적어도 하나의 실행 파일 및 라이브러리 호출 목록 중 적어도 어느 하나를 포함한다.
그리고, 상기 소스코드 변경본은 클라이언트 요청 내역 및 클라이언트 정보 중 적어도 하나에 기초하여 상기 소스코드 원본과 상이하게 수정된 것이고, 상기 변경 모듈 제공부는 상기 소스코드 변경본과 함께 상기 클라이언트 요청 내역 및 상기 클라이언트 정보를 저장한다.
전술한 바와 같은 프로그램 제공 장치는 소스코드 원본을 제공하는 복수의 원본 모듈 제공부 및 소스코드 원본과 상이하게 수정된 소스코드 변경본을 제공하는 변경 모듈 제공부를 포함한다.
이러한 프로그램 제공 장치는 소스코드 원본을 그대로 유지할 수 있으면서도, 클라이언트 요청 내역 및 클라이언트 정보 중 적어도 하나에 기초하여 상기 소스코드 원본과 상이하게 수정된 소스코드 변경본을 별도로 제공할 수 있다.
그러므로, 일관성의 저하가 방지될 수 있으면서도, 호환성이 향상될 수 있다.
따라서, 프로그램 제공 장치의 적용 범위가 넓어질 수 있으면서도, 프로그램 제공 장치의 유지 보수가 용이해질 수 있는 장점이 있고, 프로그램 제공 장치의 제작 용이성이 향상될 수 있다.
또한, 소스코드 변경본이 별도로 제공될 수 있으므로, 소스코드 원본과 소스코드 변경본 간의 차이점을 직관적으로 파악하기가 용이해짐으로써, 프로그램 제공 장치의 유지 보수가 더욱 용이해질 수 있는 장점이 있다.
도 1a는 소스코드 원본을 포함하는 프로그램 제공 장치를 나타낸 도면이다.
도 1b는 종래기술에 따른 소스코드 변경본을 포함하는 프로그램 제공 장치를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 감시제어시스템을 나타낸 도면이다.
도 3은 도 2의 프로그램 제공 장치를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 프로그램 제공 장치에 관한 예시들을 나타낸 도면이다.
전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용된다.
이하, 본 발명의 일실시예에 따른 감시제어시스템 및 그에 구비되는 프로그램 제공 장치에 대해 첨부한 도면을 참고로 하여 상세히 설명한다.
도 2는 본 발명의 일 실시예에 따른 감시제어시스템을 나타낸 도면이다. 도 3은 도 2의 프로그램 제공 장치를 나타낸 도면이다.
도 2에 도시한 바와 같이, 본 발명의 일 실시예에 따른 감시제어시스템(10)은 적어도 하나의 PLC(20) 등을 통해 계측 기기(21)에 의한 계측 데이터를 수집하고, 계측 데이터를 엔지니어링 데이터로 변환하여 관리한다. 그리고 HMI 시스템(30)을 통해 엔지니어링 데이터를 사용자에게 제공한다.
여기서, 적어도 하나의 PLC(20)은 공정을 실질적으로 제어하는 시스템으로서, 계측 데이터를 생성하는 계측 기기(21), 각 공정에 대응되는 대상 기기(22) 및 각 기기의 구동을 제어하는 조절 기기(23) 등과 연결될 수 있다.
감시제어시스템(10)은 계측 데이터를 수집하는 데이터 수집 장치(11), 수집된 계측 데이터를 엔지니어링 데이터로 변환하는 감시 기능 장치(12), 엔지니어링 데이터를 보유하는 데이터 관리 장치(13) 및 엔지니어링 데이터에 기초하여 공정을 제어하는 제어 기능 장치(14)를 포함한다. 그리고, 감시제어시스템은 데이터 수집 장치(11), 감시 기능 장치(12) 및 제어 기능 장치(14)를 총괄적으로 관리하는 메인 운영 장치(15) 및 각종 기능에 관한 소스코드를 제공하는 프로그램 제공 장치(16)를 더 포함한다.
도 3에 도시한 바와 같이, 프로그램 제공 장치(16)는 복수의 원본 모듈 제공부(161), 변경 모듈 제공부(162), 소스코드 결합부(163), 모듈 표시부(164) 및 모듈 정정부(165)를 포함한다.
복수의 원본 모듈 제공부(161)는 전력 관리 기능에 대한 소스코드 원본을 제공한다. 여기서, 소스코드 원본은 보편적인 상황에 대응된다. 즉, 프로그램 제공 장치(16)의 복수의 원본 모듈 제공부(161)는 보편적인 상황에서 각종 기능들을 구현하기 위한 소스코드 원본을 제공한다. 여기서, 소스코드 원본은 적어도 하나의 변수, 적어도 하나의 명령어, 적어도 하나의 실행 파일 및 라이브러리 호출 목록 중 적어도 어느 하나를 포함하는 조합으로 이루어질 수 있다.
변경 모듈 제공부(162)는 복수의 원본 모듈 제공부(161) 중 적어도 어느 하나에서 제공되는 소스코드 원본과 상이하게 수정된 소스코드 변경본을 제공한다. 여기서, 소스코드 변경본은 감시제어시스템(10)의 설치 환경, 클라이언트 요청 내역 및 클라이언트 정보 중 적어도 하나에 기초하여 상기 소스코드 원본과 상이하게 수정된 것이다.
예시적으로, 소스코드 변경본은 감시제어시스템(10)의 설치 환경이 소스코드 원본으로 호환될 수 없을 정도로 특수한 경우, 클라이언트 요청 내역 및 클라이언트 정보 중 적어도 하나에 따라 감시제어시스템(10)의 특수한 설치 환경에서도 각종 기능이 구현될 수 있도록 소스코드 원본을 수정한 것일 수 있다.
소스코드 결합부(163)는 복수의 원본 모듈 제공부(161)와 변경 모듈 제공부(162)로부터 제공되는 소스코드들을 조합하여 프로그램을 생성한다. 여기서, 소스코드 결합부(163)는 복수의 원본 모듈 제공부(161)로부터 제공되는 소스코드 원본 중 변경 모듈 제공부(162)로부터 제공되는 소스코드 변경본과 매칭되는 소스코드 원본을 제외한 나머지와, 소스코드 변경본을 조합하여 프로그램을 생성할 수 있다. 예시적으로, 소스코드 결합부(163)는 소정의 프로그래밍 언어로 기록된 소스코드 원본과 소스코드 변경본으로 이루어진 프로그램을 목적 코드로 변환하는 컴파일러 기능을 포함할 수 있다.
모듈 표시부(164)는 복수의 원본 모듈 제공부(161)와 변경 모듈 제공부(162) 중 사용자의 요청에 따라 선택된 적어도 어느 하나로부터 제공되는 소스코드를 표시하거나, 소스코드 결합부(163)에 의해 생성된 프로그램을 표시하기 위한 것이다.
모듈 정정부(165)는 특수 상황이 변경된 경우, 변경된 특수 상황에 따라 변경 모듈 제공부(162)에 보유되는 소스코드 변경본을 추가, 삭제 또는 정정하기 위한 것이다.
이상과 같이, 본 발명의 일 실시예에 따른 프로그램 제공 장치(16)는 복수의 원본 모듈 제공부(161)를 포함함으로써, 소스코드 원본을 그대로 유지할 수 있다. 그리고, 특정 상황에 따라 소스코드 원본과 상이하게 수정된 소스코드 변경본을 보유하는 변경 모듈 제공부(162)를 포함함으로써, 다양한 상황에 적용되기에 용이해질 수 있다. 따라서, 일관성의 저하가 방지되면서도, 호환성이 향상될 수 있다. 즉, 프로그램 제공 장치(16)의 적용 범위가 넓어질 수 있으면서도, 프로그램 제공 장치(16)의 유지 보수가 용이해질 수 있고, 프로그램 제공 장치(16)의 제작 용이성이 향상될 수 있다.
또한, 소스코드 변경본이 소스코드 원본과 별개로 제공될 수 있으므로, 소스코드 원본과 소스코드 변경본 간의 차이점이 직관적으로 파악될 수 있어, 프로그램 제공 장치(16)의 유지 보수가 더욱 용이해질 수 있다.
다음, 도 4를 참조하여, 본 발명의 일 실시예에 따른 프로그램 제공 장치(16)의 변형 용이성이 향상될 수 있는 것에 대해 설명한다.
도 4는 본 발명의 일 실시예에 따른 프로그램 제공 장치에 관한 예시들을 나타낸 도면이다.
도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 프로그램 제공 장치의 예시들(16a, 16b, 16c)은 도 1a의 소스코드 원본을 제공하는 복수의원본모듈 제공부(161) 및 도 1b의 제 1 내지 제 3 특정 상황에 대응하는 소스코드 변경본을 제공하는 변경 모듈 제공부(162a, 162b, 162c)를 포함한다.
즉, 제 1 예시(16a)는 복수의 원본 모듈 제공부(161)와 더불어, 제 1 특정 상황에 대응되는 변경 모듈 제공부(162a)을 포함한다. 여기서, 제 1 특정 상황에 대응되는 변경 모듈 제공부(162a)은 제 1 원본 모듈 제공부(1611)에 보유된 소스코드 원본(A+B+C)에 매칭되는 소스코드 변경본(A'+B+C) 및 제 4 원본 모듈 제공부(1614)에 보유된 소스코드 원본(I-J)에 매칭되는 소스코드 변경본(I-J')을 보유한다.
마찬가지로, 제 2 예시(16b)는 복수의 원본 모듈 제공부(161)와 더불어, 제 2 특정 상황에 대응되는 변경 모듈 제공부(162b)을 포함한다. 여기서, 제 2 특정 상황에 대응되는 변경 모듈 제공부(162b)은 제 2 원본 모듈 제공부(1612)에 보유된 소스코드 원본(D+E)에 매칭되는 소스코드 변경본(D-E)을 보유한다.
또한, 제 3 예시(16c)는 복수의 원본 모듈 제공부(161)와 더불어, 제 3 특정 상황에 대응되는 변경 모듈 제공부(162c)을 포함한다. 여기서, 제 3 특정 상황에 대응되는 변경 모듈 제공부(162c)은 제 1 원본 모듈 제공부(1611)에 보유된 소스코드 원본(A+B+C)에 매칭되는 소스코드변경본(A+B+K), 제 3 원본 모듈 제공부(1613)에 보유된 소스코드 원본(FxG+H)에 매칭되는 소스코드 변경본(FxG /H) 및 제 4 원본 모듈 제공부(1614)에 보유된 소스코드 원본(I-J)에 매칭되는 소스코드 변경본((I-J)xD)을 보유한다.
이와 같이, 본 발명의 일 실시예에 따르면, 소스코드 원본은 복수의 원본 모듈 제공부(161)에 의해 제공되고, 각 특정 상황에 대응되는 소스코드 변경본은 변경 모듈 제공부(162a, 162b, 162c)에 의해 소스코드 원본과 별개로 제공될 수 있다. 그러므로, 프로그램 제공 장치(16)의 일관성, 호환성, 제작 용이성 및 유지보수 용이성이 향상될 수 있다.
전술한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
10: 감시제어시스템
16: 프로그램 제공 장치
161: 원본 모듈 제공부
162, 162a, 162b, 162c: 변경 모듈 제공부
163: 소스코드 결합부
16a, 16b, 16c: 제 1 내지 제 3 예시

Claims (5)

  1. 전력 관리 기능에 대한 소스코드 원본을 제공하는 적어도 하나의 원본 모듈 제공부;
    상기 적어도 하나의 원본 모듈 제공부 중 적어도 어느 하나에서 제공되는 소스코드 원본과 상이하게 수정된 소스코드 변경본을 제공하는 변경 모듈 제공부; 및
    상기 적어도 하나의 원본 모듈 제공부에 의한 상기 소스코드 원본과 상기 변경 모듈 제공부에 의한 상기 소스코드 변경본을 조합하여 프로그램을 생성하는 소스코드 결합부를 포함하는 전력관리 프로그램 제공 장치.
  2. 제 1 항에 있어서,
    상기 소스코드 원본은 적어도 하나의 변수, 적어도 하나의 명령어, 적어도 하나의 실행 파일 및 라이브러리 호출 목록 중 적어도 어느 하나를 포함하는 전력관리 프로그램 제공 장치.
  3. 제 1 항에 있어서,
    상기 소스코드 변경본은 클라이언트 요청 내역 및 클라이언트 정보 중 적어도 하나에 기초하여 상기 소스코드 원본과 상이하게 수정된 것이고,
    상기 변경 모듈 제공부는 상기 소스코드 변경본과 함께 상기 클라이언트 요청 내역 및 상기 클라이언트 정보를 저장하는 전력관리 프로그램 제공 장치.
  4. 제 3 항에 있어서,
    상기 변경 모듈 제공부는 상기 클라이언트 정보를 이용하여 상기 소스코드 변경본의 변경 이력을 조회하는 전력 관리 프로그램 제공 장치.
  5. 제 1 항에 있어서,
    상기 원본 모듈 제공부는 상기 소스코드 원본을 저장하는 매체로 구현되고,
    상기 변경 모듈 제공부는 상기 소스코드 변경본을 저장하는 매체로 구현되는 전력관리 프로그램 제공 장치.
KR1020160175994A 2016-12-21 2016-12-21 프로그램 제공 장치 KR20180072436A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020160175994A KR20180072436A (ko) 2016-12-21 2016-12-21 프로그램 제공 장치
EP17157840.4A EP3340135A1 (en) 2016-12-21 2017-02-24 Apparatus for providing program
CN201710123662.1A CN108614708A (zh) 2016-12-21 2017-03-03 用于提供程序的设备
US15/450,911 US20180173504A1 (en) 2016-12-21 2017-03-06 Apparatus for Providing Program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160175994A KR20180072436A (ko) 2016-12-21 2016-12-21 프로그램 제공 장치

Publications (1)

Publication Number Publication Date
KR20180072436A true KR20180072436A (ko) 2018-06-29

Family

ID=58192117

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160175994A KR20180072436A (ko) 2016-12-21 2016-12-21 프로그램 제공 장치

Country Status (4)

Country Link
US (1) US20180173504A1 (ko)
EP (1) EP3340135A1 (ko)
KR (1) KR20180072436A (ko)
CN (1) CN108614708A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115857898A (zh) * 2023-02-25 2023-03-28 武汉万云网络科技有限公司 一种应用系统构建和运行方法及装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4912637A (en) * 1988-04-26 1990-03-27 Tandem Computers Incorporated Version management tool
US5649200A (en) * 1993-01-08 1997-07-15 Atria Software, Inc. Dynamic rule-based version control system
WO2002033876A1 (en) * 2000-10-21 2002-04-25 Samsung Electronics Co., Ltd Harq device and method for mobile communication system
TWI268906B (en) * 2001-12-17 2006-12-21 Inventio Ag Method of modernising a lift installation and computer readable storage medium recording computer program for modernising a lift installation
JP2006293744A (ja) * 2005-04-12 2006-10-26 Fanuc Ltd プログラム変換装置
CN100538633C (zh) * 2007-10-11 2009-09-09 金蝶软件(中国)有限公司 一种结构化模型的合并方法及系统
US8914794B2 (en) * 2011-06-30 2014-12-16 Rockwell Automation Technologies, Inc. Multiple deployment of applications with multiple configurations in an industrial automation environment
US8863082B2 (en) * 2011-09-07 2014-10-14 Microsoft Corporation Transformational context-aware data source management
US9158534B2 (en) * 2013-03-15 2015-10-13 Wolters Kluwer United States Inc. Smart endpoint architecture
US9665079B2 (en) * 2014-03-26 2017-05-30 Honeywell International Inc. Controller having a version control system
DE102015120314A1 (de) * 2015-11-24 2017-05-24 Pilz Gmbh & Co. Kg Verfahren zum Programmieren einer Sicherheitssteuerung
KR20170132545A (ko) * 2016-05-24 2017-12-04 엘에스산전 주식회사 컴퓨팅 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115857898A (zh) * 2023-02-25 2023-03-28 武汉万云网络科技有限公司 一种应用系统构建和运行方法及装置
CN115857898B (zh) * 2023-02-25 2023-05-23 武汉万云网络科技有限公司 一种应用系统构建和运行方法及装置

Also Published As

Publication number Publication date
EP3340135A1 (en) 2018-06-27
US20180173504A1 (en) 2018-06-21
CN108614708A (zh) 2018-10-02

Similar Documents

Publication Publication Date Title
EP3316053B1 (en) Engineering tool coordination device, engineering tool coordination method, and non-transitory computer readable storage medium
JP7283509B2 (ja) 設定システム、i/o装置、設定方法、及び設定プログラム
US11215960B2 (en) Engineering apparatus, control method of engineering apparatus, and program for generating executable code for controlling target hardware
CN103905270A (zh) 智能电网andriod系统安全基线自动化检查系统及检查方法
JP5056881B2 (ja) フィールド機器管理装置およびコンピュータプログラム
CN110867956A (zh) 一种基于智能台区的拓扑自动识别系统及方法
KR20180072436A (ko) 프로그램 제공 장치
JP2019153042A (ja) 数値制御装置
CN110968051B (zh) 用于规划自动化系统的方法和工程系统
CN104572233B (zh) 一种连续功能图编程方法
KR101720411B1 (ko) 동적 안정도 평가 장치 및 방법
KR102131669B1 (ko) 데이터 연계 시스템
CN110222101B (zh) 用于工业过程自动化的组件和用于规划和运行组件的方法
US20180150304A1 (en) Apparatus for Compiling Script
US10691093B2 (en) Controller programming migration automation
US20160092193A1 (en) Method and apparatus for operating a processing and/or production installation
JP2013190837A (ja) エンジニアリングツール
US10312682B2 (en) Device and method for assessing dynamic stability
KR102530199B1 (ko) 원격감시 제어시스템 및 이의 데이터베이스 업데이트 방법
KR20180067883A (ko) 모니터링 장치 관리 방법
KR101519728B1 (ko) 원격감시제어시스템에서의 데이터 처리 장치 및 방법
JP6357769B2 (ja) 制御装置および通信制御方法
JP2021036364A (ja) プラント監視制御システム
US20160313718A1 (en) Method and controller for flexible process control
WO2019106454A1 (en) A hand held device for operating a robot

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application