• 제목/요약/키워드: 소프트웨어 엔지니어링

검색결과 164건 처리시간 0.029초

웹기반 정보시스템의 내부시스템 재구성을 위한 폼 클러스터링 방법론 (Form Clustering Methodology for Internal System Reengineering of Web-Cased Information System)

  • 최상수;박현우;이강수
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2002년도 추계학술발표논문집
    • /
    • pp.703-706
    • /
    • 2002
  • 최근 대부분의 정보시스템은 웹기반 정보시스템으로 이주하고 있으며 이의 개발과 유지보수시에 "웹 위기" 현상이 발생하고 있다. 이를 해결하기 위한 웹엔지니어링 기술 중 웹기반 정보시스템의 내부시스템을 재구성하기 위한 방법이 필요하다. 따라서 본 논문에서는 웹기반 정보시스템의 내부시스템을 재구성하기 위한 폼 클러스터링 방법을 제시한다. 폼 클러스터링 방법은 기존의 소프트웨어 분할 및 태스크 클러스터링 기술의 개념을 적용하여 웹 기능구조를 실제 하드웨어에 할당하기 위한 최적의 응답시간 성능을 갖는 웹 소프트웨어 구조를 생성하는 방법이다. 본 논문에서 제시하는 폼 클러스터링 방법은 웹기반 정보시스템의 내부시스템을 신규개발 및 유지보수시에 적용할 수 있다. 적용할 수 있다.

  • PDF

비즈니스 프로세스 맵을 이용한 시스템 요구 분석 방안 연구 (Requirements Analysis based on Business Process Knowledge for Requirements Engineering)

  • 나정은;송주석
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2004년도 춘계학술발표대회
    • /
    • pp.207-210
    • /
    • 2004
  • Waterfall 모델에서의 소프트웨어 개발 단계는 사용자로부터 요구 사항을 정의하고, 이것이 다음 단계의 input 이 되어 개발자에 의해 작업이 진행되는 개발 양식을 따른다. 시스템 요구 사항을 정의할 때에, 프로세스 관점에서 사용자 업무를 이해하고, 이 프로세스에서 사용되는 시스템과의 관계를 정의하여 요구 사항으로 함께 정의한다면, 단순한 시스템의 기능을 정의하여 개발하는 것 보다 시스템의 사용 목적을 이해하고 개발하게 됨으로써, 더 만족도 높은 시스템으로 개발할 수 있게 된다. 프로세스 관점에서 이해하고 정의하는 시스템의 요구 사항은 시스템 보수 작업(Maintenance)시에도 시스템의 상황이 현재 업무 프로세스와 어떻게 연계되어 있는지 파악하기 용이하고, 테스트 단계에서도 테스트 조건이나 테스트 시나리오로서도 활용이 가능하다. 새로운 업무를 담당하는 사람에게도 시스템 개발 요구 사항에서 정의된 업무 프로세스 맵(Map)이 관련 업무를 파악할 수 있는 기초 자료로 재 활용 될 수도 있다. 비즈니스 프로세스 리엔지니어링에서 사용하는 비즈니스 프로세스 맵핑(Mapping) 기술을 소프트웨어 개발 방법론에 적용하여, 요구 분석 단계에서 사용하는 분석 도구로서의 응용을 제안하고자 한다.

  • PDF

추상적 텍스트 요약 기반의 메소드 이름 제안 모델 (A Method Name Suggestion Model based on Abstractive Text Summarization)

  • 주한새
    • 한국컴퓨터정보학회:학술대회논문집
    • /
    • 한국컴퓨터정보학회 2022년도 제66차 하계학술대회논문집 30권2호
    • /
    • pp.137-138
    • /
    • 2022
  • 소스 코드 식별자의 이름을 잘 정하는 것은 소프트웨어 엔지니어링에서 중요한 문제로 다루어지고 있다. 프로그램 엔티티의 의미있고 간결한 이름은 코드 이해도에 중요한 역할을 하며, 소프트웨어 유지보수 관리 비용을 줄이는 데에 큰 효과가 있다. 이러한 코드 식별자 중 평균적으로 가장 복잡한 식별자는 '메소드 이름'으로 알려져 있다. 본 논문에서는 메소드 내용과 일관성 있는 적절한 메소드 이름 생성을 자연어 처리 태스크 중 하나인 '추상적 텍스트 요약'으로 치환하여 수행하는 트랜스포머 기반의 인코더-디코더 모델을 제안한다. 제안하는 모델은 Github 오픈소스를 크롤링한 Java 데이터셋에서 기존 최신 메소드 이름 생성 모델보다 약 50% 이상의 성능향상을 보였다. 이를 통해 적절한 메소드 작명에 필요한 비용 절감 달성 및 다양한 소스 코드 관련 태스크를 언어 모델의 성능을 활용하여 해결하는 데 도움이 될 것으로 기대된다.

  • PDF

MovieLens-1M, Avazu4, Criteo 데이터셋에 기반한 클릭률 예측을 위한 어텐션 네트워크 (Attention Network For Click-through Rate Prediction Based On MovieLens-1M, Avazu4, Criteo Datasets)

  • 안자건;조인휘
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2023년도 추계학술발표대회
    • /
    • pp.522-523
    • /
    • 2023
  • CTR(Click Through Rate) 예측은 사용자가 광고나 아이템을 클릭할 확률을 예측하는 데 사용되는 용어로, 광고 분야에서 중요한 연구 분야로 자리 잡았다. 인터넷 데이터의 양이 증가함에 따라, 전통적인 피쳐 엔지니어링의 인건비는 계속해서 상승하고 있다. 특징 상호 작용에 대한 의존도를 줄이기 위해, 본 논문은 TMH(Two-Tower Multi-Headed Attention Neural Network) 접근법이라고 하는 명시적인 특징 상호 작용과 암시적인 특징 상호 작용을 결합한 융합 모델을 제안한다. CTR 예측에서 TMH 의 효과를 평가하기 위해 3 개의 실제 데이터 세트를 사용하여 많은 수의 실험을 수행하였다. 성능은 3 개의 데이터 세트에서 0.12%, 0.41% 및 0.68%으로 향상되었다.

내장형 실시간 시스템의 성능 개선을 위한 리엔지니어링 기법 (Performance Reengineering of Embedded Real-Time Systems)

  • 홍성수
    • 한국정보과학회논문지:시스템및이론
    • /
    • 제30권5_6호
    • /
    • pp.299-306
    • /
    • 2003
  • 본 논문에서는 내장형 실시간 시스템의 성능 개선을 위한 리엔지니어링(performance re-engineering) 기법을 제시한다. 시스템 리엔지니어링은 구현이 완료된 시스템에서 새로운 성능 요구사항을 만족시키기 위한 일련의 작업이라 할 수 있다. 일반적으로 실시간 시스템의 성능은 실시간 처리량(real-time throughput)과 입출력 시간 지연(input-to-output latency) 등으로 기술할 수 있으며 새로운 성능 요구사항은 이와 같은 파라미터를 통해 기술된다. 본 연구의 리엔지니어링 기법은 두 단계로 구성된다. 첫째, 시스템을 프로세스 네트워크의 형태로 파악한 후, 프로세스의 수행시간을 분석하여 병목(bottleneck)이 되는 프로세스를 찾아낸다. 둘째, 병목 프로세스의 수행시간을 개선한 수 있도록 프로세싱 요소의 성능비례계수(performance scaling factor)를 구한다. 성능비례계수는 성능 개선을 비율로 나타낸 것으로서 리엔지니어링 비용을 최소화하도록 그 값을 구한다. 따라서 유도된 성능비례계수에 따라 하드웨어 장치를 업그레이드하면 하드웨어 비용을 최적화할 수 있다. 이러한 방법을 사용하면 소프트웨어를 수정할 필요가 없으며, 리엔지니어링 비용 및 시간을 단축할 수 있다.

매트랩을 기반으로 한 U자형 금속 벨로우즈 설계소프트웨어 개발 (Development of U-shaped Metal Bellows design software based on MATLAB)

  • 장봉춘;김성철
    • 한국산학기술학회논문지
    • /
    • 제16권4호
    • /
    • pp.2379-2384
    • /
    • 2015
  • 벨로우즈 제품은 플랜트 엔지니어링, 조선, 석유 화학의 분야에서 중요한 부분이다. 안전성 및 내구성을 위해 벨로우즈를 설계 할 때 많은 요인들을 고려할 필요가 있다. 본 연구에서는 EJMA 9th Edition 설명서를 기초로 하여 U자형 금속 벨로우즈 전용 설계 소프트웨어를 개발했다. 이 GUI 소프트웨어는 매트랩 소프트웨어를 사용하여 개발되었으며, 비보강 단일 벨로우즈, 비보강 복식 벨로우즈, 보강 단일 벨로우즈, 보강 복식 벨로우즈를 설계할 수 있다. 이 소프트웨어를 검증하기 위해 이미 검증된 벨로우즈 모델을 설계하고 두께를 변화시키면서 벨로우즈의 거동을 고찰하였다. 두께가 증가함에 따라 스프링상수, 추력, 응력은 증가하고 피로수명은 감소함을 알 수 있었다. 이 소프트웨어는 설계 엔지니어의 시간과 노력을 절약해 줄 것이다.

동적오염분석과 SMT 해석기를 이용한 소프트웨어 보안 취약점 분석 연구 (Analyzing Vulnerable Software Code Using Dynamic Taint and SMT Solver)

  • 김성호;박용수
    • 정보과학회 컴퓨팅의 실제 논문지
    • /
    • 제21권3호
    • /
    • pp.257-262
    • /
    • 2015
  • 소프트웨어가 복잡해짐에 따라 개발자가 인지하지 못하는 버그가 증가하고 있다. 공격자들은 시스템을 공격하거나 악성코드를 유포하기 위해 이와 같은 소프트웨어 버그 중 보안에 취약한 버그를 이용한다. 대표적인 방법으로 문서, 멀티미디어 등의 파일을 조작하여 보안에 취약한 버그를 발생시키는 방법으로 최근 지능적 지속 공격 빈번하게 사용되었다. 이에, 본 논문에서는 소프트웨어의 보안 취약점을 찾기 위한 프로그램 자동 분석 방법을 제안한다. 제안 방법은 문서, 멀티미디어 등 입력 값에 의해 발생되는 소프트웨어의 보안에 취약한 버그를 찾는 것을 목표로 한다. 먼저, 동적 오염 분석을 통해 입력 데이터가 취약 코드 지점까지 전파되는 과정을 추적하고 입력데이터 전파와 관련이 있는 명령어를 추출한다. 추출된 연관 명렁어를 수식화하고 이를 SMT 해석기를 이용하여 보안 취약점이 발생할 수 있는 입력 값을 찾는다. 제안 방법을 통해 아래아 한글, 곰 플레이어에서 크래시가 발생할 수 있는 입력값과 취약 코드 6개를 찾았다.

관성항법소프트웨어 SPL(Software Product Line) 구현을 위한 플랫폼 범위결정 기법 (A Scoping Method to Implement Software Product Line for Inertial Navigation System)

  • 박삼준;노성규;이관우;박병수;남성호
    • 정보처리학회논문지:소프트웨어 및 데이터공학
    • /
    • 제10권7호
    • /
    • pp.251-256
    • /
    • 2021
  • SPLE (Software Product Line Engineering)는 소프트웨어 재사용 방법론 중의 하나이다. SPLE의 핵심적인 활동 중 하나는 재사용 가능한 자산 개발에 필요한 피처의 범위를 결정하는 활동이다. 기존 범위결정 방법은 국방 분야에 적용하는데 한계가 있어서, 본 논문에서는 무기체계 항법시스템에 적용 가능한 범위결정 방법을 제안하고, 그 적용 사례를 제시한다. 제안된 방법은 먼저 피처 이익 관점에서 플랫폼 적용 대상 피처의 범위를 결정한다. 그런 다음 제품 이익 관점에서 피처의 범위를 조정하고, 총 비용 관점에서 플랫폼 대상 피처와 제품라인에 포함될 피처의 최종 범위를 결정한다. 본 논문에서는 항법소프트웨어 제품라인에 대해 엔지니어링 할 피처의 범위를 결정하는 방법을 보여줌으로써 제안된 방법의 적용 가능성을 입증하고 평가한다.

객체지향 컴퓨팅 채택에 미치는 영향요인 : 프로그래밍 경험과 개인혁신성의 경우 (The Affecting Factos on the Adoption of Object-Oriented Computing : The Case of Programming Experience and Personal Innovativeness)

  • Kim, Injai
    • 한국정보시스템학회지:정보시스템연구
    • /
    • 제10권1호
    • /
    • pp.243-255
    • /
    • 2001
  • 소프트웨어 기술의 생명주기가 점점 짧아지고 복잡해짐에 따라 그 기술을 이해하기가 힘들어 진다. 객체지향 기술채택을 더욱 잘 이해하는 것이 이 논문의 연구동기이다. 객체지향 기술이 전통적인 소프트웨어 프로세스 기술에 대한 새로운 패러다임이기 때문에 프로세스 중심의 구조지향 기술과 같은 기존의 소프트웨어 엔지니어링의 경험에 영향을 받을 수 있다. 본 연구의 목적은 이전의 구조지향 기술의 경험과 기술변화에 대한 개인적인 인식이 미국 기업체에서 객체지향 기술채택에 어떻게 영향을 미치는지를 실제로 조사하는데 있다. 2 X 2 유사 실험계획법이 사용되었다. 구조지향 방법을 사용한 경험과 새로운 기술에 대한 개인적 혁신정도(Personal Innovativeness)가 독립변수로, 객체지향 방법에 대한 사용편이성(Ease of Use)과 유용성(Usefulness)이 종속변수로 선정되었다. 데이터는 구조지향 방법과 객체지향 방법을 모두 사용한 경험이 있는 자료처리 및 관리협회(DPMA: Data Processing and Management Association)에 소속된 정보 시스템 전문가로부터 수집되었다. 연구결과는 구조지향 방법을 사용한 경험은 객체지향 방법의 사용편이성과 유용성에 영향을 주지만 개인적 혁신성은 영향을 주지 않는 것으로 나타났다. 과거의 구조지향 방법을 많이 사용하면 할수록 객체지향 방법의 사용편이성 값이 낮게 나타나기 때문에 이전 문헌에서 제시된 구조지향 방법의 객체지향 방법에 대한 지식간섭(Knowledge Interference) 현상이 있음을 실증적으로 보여주었다 마지막에는 본 연구의 한계점과 향후 연구에서 지식간섭을 줄일 수 있는 방안을 제시하였다.

  • PDF

컴퓨팅 사고력 향상을 위한 피지컬 컴퓨팅 기반 리버스 엔지니어링 활용 방안 (Application of Reverse Engineering based on Physical Computing to Improve Computational Thinking)

  • 김지형;김성백
    • 한국컴퓨터교육학회 학술대회
    • /
    • 한국컴퓨터교육학회 2018년도 동계학술대회
    • /
    • pp.83-85
    • /
    • 2018
  • 사회가 복잡하게 변화됨에 따라 온난화 등의 해결하기 어려운 새로운 문제들이 등장하고 있다. 이를 효과적으로 해결하기 위해서는 창의력과 절차적인 사고가 요구되며 이러한 능력을 키우기 위해 소프트웨어 교육이 필요하다. 이에 따라 2015개정 교육과정에서 정보교과의 비중이 증가하였으며, 2018학년도부터는 중학교 정보교육이 의무화되었고, 그 동안 실제 생활에 접목하여 문제 해결력 및 컴퓨팅 사고력을 향상 시킬 수 있는 피지컬 컴퓨팅이 도입되었다. 하지만 고등학생의 경우 이전 교육과정에서 새롭게 도입되었기에 피지컬 컴퓨팅 수업이 진행되기가 쉽지 않다. 본 연구에서는 고등학생의 피지컬 컴퓨팅 구현 능력 향상과 이를 통해서 문제 해결력 향상에 어떠한 영향이 있는가를 알아보기 위해서 피지컬 컴퓨팅 교육 프로그램을 위한 과정으로 오래된 운영체제에서만 사용이 가능한 구형 프린터기의 드라이버를 최신 운영체제에서도 사용이 가능하도록 프린터 드라이버를 커스터마이징하여 윈도우 10에서도 사용이 가능하도록 하는 소프트웨어 교육을 설계하였고 이를 고등학생에게 적용하기 위하여 학생들의 사전 사후 검사를 실시하고자 한다. 자원의 재활용과 환경적인 측면에서 그 동안에는 신제품 구입 후 빠른 IT환경의 발전 및 변화로 멀쩡한 하드웨어를 폐기하고, 최신 운영체제에 대응하는 하드웨어를 새롭게 구입해야 했으나, 본 교육과정을 통해 각 가정에 있는 구형 프린터의 재사용을 위한 프린터 드라이버 제작이라는 선순환적인 교육목적을 추구하며 소프트웨어 교육이라는 본질 측면에 좀 더 가까이 다가가며, 해당 하드웨어 제품에 대한 소프트웨어의 저작권 교육도 함께 진행할 수 있으며, 잘 만들어진 소프트웨어의 경우 새로운 시장을 창출할 수 있도록 하는 계기가 될 것이다. 학생들의 흥미에서는 좋은 반응을 보였으나 실제 문제 해결력을 위해서는 저변 확대가 필요함을 알 수 있었다. 오래된 구형 하드웨어를 최신 운영체제에서도 사용할 수 있도록 하는 과정에서의 실생활에 적용되는 유용한 피지컬 컴퓨팅을 보다 효과적으로 사용하기 위해서는 프로그램의 설계에 대한 지속적인 연구가 필요할 것이다.

  • PDF