구분 | 내용 |
---|---|
소프트웨어아키텍쳐 |
최근 소프트웨어의 규모와 사용 영역이 확대 되면서 소프트웨어 아키텍처는 모든 소프트웨어 개발의 필수 요소로 자리잡아 가고 있다. 그리고 이러한 추세에 따라 소프트웨어 개발자라면 반드시 알고 적용해야할 소프트웨어 아키텍에 대한 지식도 체계화 되고 있다. 본 교과목에서는 이러한 소프트웨어 아키텍처에 대한 다음과 갇은 기본 지식들을 소개 하고자 한다 - 소프트웨어 아키텍처의 정의 - 소프트웨어 개발 과정에서 소프트웨어 아키텍처의 역할 - 소프트웨어 아키텍처와 소프트웨어 품질 요소와의 관계 - 소프트웨어 아키텍처의 계획, 설계, 명세, 분석 및 구현 기법 |
소프트웨어공학 |
소프트웨어의 규모와 복잡성, 사회적 영향력이 증가 하면서 소프트웨어의 품질 및 생산성의 향상이 중요한 문제로 부각되고 있으며, 이의 해결을 위한 공학적 이론 및 방법론의 중요성 또한 점점 더 강조되고 있다. 소프트웨어 공학이란 소프트웨어에 관련되는 모든 행위(개발 또는 사용)들을 대상으로 적용 가능한 공학적 이론 및 방법을 연구하는 학문이다. 본 과목에서는 소프트웨어 수명 주기 전 과정(분석 정의, 설계, 개발, 구축 및 운영 관리)에 대하여 1960년대 말부터 본격적으로 연구되고 활용되어 온 소프트웨어 공학 분야의 핵심 이론 및 방법론을 공부한다.
본 과목에서는 소프트웨어 공학 분야의 핵심 이론 및 방법론을 다음과 같이 크게 4 부분으로 나누어 공부 한다 1. 소프트웨어 공학에 대한 전반적인 소개 2. 소프트웨어의 신뢰성 및 안정성 확보 기술 3. 최근 개발된 고급 소프트웨어 공학 기술 4, 소프트웨어 개발 관리 기술 |
클라우드컴퓨팅시스템아키텍쳐사례연구 |
클라우드 컴퓨팅은 사용자에게 탄력적으로 인프라, 플랫폼, 서비스를 제공하는 인터넷 기반의 분산 컴퓨팅 Paradigm이다. 현재 대규모 사용자를 위한 서비스들과 대규모 데이터를 처리하는 대부분의 시스템의 아키텍처는 클라우드 컴퓨팅의 이론과 기술에 기반을 두고 있다. 본 교과목에서는 클라우드 컴퓨팅의 기반 기술인 인프라 제공 기술 (클러스터링, 가상화, 데이터센터), 고성능 분산/병렬 프레임워크 (맵리듀스, 하둡, 스파크), 그리고 이들을 인터넷 기반으로 제공할 수 있는 인터페이스 기술들의 이론과 관련 기술을 학습하고, 시스템 아키텍처 사례 연구를 통해 다양한 분야의 실제 활용 사례들을 살펴봄으로써 이해를 돕는다. |
빅데이터 및 클라우드시스템사례연구 |
모바일 기기가 활성화되고 사물 인터넷 시대가 시작됨에 따라 데이터 생산량과 사용량이 급증하고 있다. 그러나 빅데이터의 초대용량, 다양한 포맷, 빠른 데이터 생성 속도 등의 특성으로 인해 빅데이터로부터 지식을 얻어 활용하기까지는 그 특성에 맞는 여러 단계가 필요하고, 그 단계마다 많은 기술이 요구된다. 본 교과목에서는 빅데이터를 효과적으로 처리하고 적극적으로 분석하며 활용하기 위한 빅데이터 처리 시스템과 대용량의 고속 저장 공간 및 고성능 계산능력을 제공하는 클라우드 시스템 기술에 대해 다룬다. 구체적으로, 빅데이터의 개념과 빅데이터를 처리하는 과정에 대한 전체 그림을 제시하고 빅데이터의 수집 및 통합, 저장 및 관리, 처리, 분석, 결과의 표현에 이르는 단계별 주요 기술에 대해 다룬다. 또한 빅데이터를 처리하기 위한 클라우드 시스템의 아키텍처 및 세부 기술에 대하여 설명한다. 빅데이터 및 클라우드 시스템의 사례로 Hadoop과 Amazon Web Services 등을 살펴보고 다양한 분야의 실제 활용 사례들을 살펴봄으로써 이해를 돕는다 |
소프트웨어요구공학 |
소프트웨어 요구사항 분석과 설계에 필요한 심도 있는 지식을 습득하도록 한다. SW 공학의 간단한 개요와 더불어 SW 개발 방법론에서의 SW 요구사항 분석과 설계 기술을 학습한다. 또한, SW 개발 대상을 문제로 제시하고 학생들이 해당 SW 개발을 위한 요구분석과 설계 과정을 주도적으로 진행하도록 한다. |