본문 바로가기
반응형

분류 전체보기104

[아키텍처 모델] 아키텍처 설계에서의 BP 모음집 I. 아키텍처 설계에서의 BP 모음집, 아키텍처 모델의 개요 가. 아키텍처 모델(Architecture Model)의 정의 - 아키텍처 설계에서 반복적인 문제를 해결하고 아키텍처가 만족시켜야 하는 시스템 품질 달성을 위해 Best Practice를 정리한 패턴 - 뷰를 표현할 때 반복적으로 나타나는 재사용이 가능한 아키텍처의 형태 나. 아키텍처 모델의 기능 특징 설명 스키마 제시 - SW 시스템 구조를 체계적으로 구성하기 위한 스키마 제시 서브시스템 - 미리 정의된 서브시스템 제공 패턴 간 책임 명시 - 각 아키텍처 간 관계 및 책임을 명시 가이드라인 제시 - 패턴 간의 관계를 조직화하는 규칙, 가이드라인 제시 모듈단위 분해방법 제시 - 문제를 소프트웨어 모듈 단위로 분해하는 방법 제시 모듈단위 상호작용.. 2021. 1. 30.
[SW 아키텍처 평가] SW Architecture 수준의 대한 품질 평가 I. SW 아키텍처 수준에 대한 품질평가, SW Architecture 평가의 개요 가. SW Architecture의 정의 - 제시된 소프트웨어 아키텍처가 대상 시스템에서 요구하는 품질속성을 만족시킬 수 있는지 적합성을 평가하는 표준절차 - 제시된 SW 아키텍처가 시스템 요구품질 속성을 만족시키는지 적합성을 “예측, 실무, 사례, 정량적”으로 평가하는 표준절차 나. SW 아키텍처 평가 방법론 유형 방 법 내 용 평가 유형 Scenario Based 품질 요소를 위해 미리 정의된 Profile에 의존하여 평가 시나리오 기반평가 결과도 정밀, ATAM, CBAM, SAAM 예측 평가 Simulation Based BMT(BenchMarking Test) 시뮬레이션 기반 평가 실무 평가 Experience .. 2021. 1. 29.
[ISO42010] SW 아키텍처의 표준 I. SW Architecture의 표준, ISO/IEC/IEEE42010의 개요 가. ISO/IEC/IEEE42010의 정의 - 소프트웨어의 컴포넌트의 특성, 관계들로 구성되는 시스템의 구조를 설계하고 전개하기 위한 지침과 원리에 대한 국제표준 - SW 집약적 시스템에서 아키텍처가 표현해야 하는 내용 및 관계를 제공하는 아키텍처 명세를 위한 표준모델 (SAD와 같은 SW 아키텍처를 설명에 대한 국제표준) - 시스템 및 소프트웨어의 프레임 워크 및 아키텍처 기술 언어에 적용되는 요구 사항을 정의한 아키텍처 기술에 대한 국제표준 나. ISO/IEC/IEEE42010의 필요성/특징 구분 특징 설명 비즈니스 측면 변화민첩성 다양한 비즈니스 요구사항에 대한 민첩한 대응(Agility) 비용절감 소프트웨어 재사용.. 2021. 1. 29.
프로젝트 관리(Project Management), 프로젝트 관리를 위한 5단계 I. 프로젝트 관리를 위한 5단계, 프로세스 그룹의 개요 가. 프로젝트 관리(Project Management)의 정의 - 프로젝트 생명주기(Project Life Cycle)동안 발생하는 프로세스를 5개의 프로세스(착수, 계획, 실행, 감시 및 통제, 종료)로 구분한 분류 방법 나. 프로젝트의 특징 구분 내용 유일성 달성하고자 하는 결과가 이전에 똑같이 행해진 적이 없는 유일함 일시성 시작과 끝이 명확화 목적성 목적을 달성하고자 하는 행위 점진적 상세화 초기의 개괄적인 범위 정의에서 점차 구체화함 II. 성공적인 프로젝트 관리를 위한, 5단계 프로세스 그룹 가. 5단계 프로세스 그룹 구성도 - 프로세스 그룹은 착수, 계획, 실행, 감시 및 통제, 종료 순으로 진행되고 중첩가능 - OPA(조직 프로세스 .. 2021. 1. 13.
[MSA(Micro Service Architecture) 독립된 서비스로 시스템을 분할하는 아키텍처 I. 독립된 서비스로 시스템을 분할하는 아키텍처, MSA의 개요 가. MSA(Micro Service Architecture)의 정의 - 대규모 소프트웨어 구축을 위해 동작이 가능한 기능단위로 서비스를 분할하고, 각 서비스들이 API형태로 제공되는 아키텍처 나. MSA의 등장배경 구분 설명 개발환경의 변화 소프트웨어 경쟁력 확보를 위해 고객 요구에 대한 신속한 대응 중요 기존 아키텍처 Monolithic 아키텍처는 모듈 간 결합도가 높고, 배포 시간이 길어 신속한 대응 한계 II. MSA의 구성도 및 구성요소 가. MSA의 구성도 - Rest API를 통해 마이크로 서비스간 통신으로 서비스를 개발하고, 서비스별 최적의 DB 선택 가능 나. 마이크로 서비스 아키텍처의 구성요소 문서종류 문서내용 세부내용 C.. 2021. 1. 13.
[WBS(Work Breakdown Structure), 프로젝트 일정 및 R&R 관리 계획을 위한 Framework I. 프로젝트 일정 및 R&R 관리 계획을 위한 Framework, WBS 의 개요 가. WBS(Work Breakdown Structure)의 정의 프로젝트 인도물과 전체 업무 범위를 관리 가능한(Manageable) 요소들로 분해한 계층도로, 프로젝트 업무 범위를 작업할 수 있는 최소 업무 단위로 분할한 것 나. WBS 특징 특징 설명 세분화 팀원이 보통 1~2주 내 처리할 수 있는 단위로 세분화 진척 관리 프로젝트 수행인원에 대한 업무 진척관리 도구로 활용가능 선후관계정의 각 WBS별 선/후 의존성, 연관관계 파악이 가능 II. WBS DFD 및 구성요소 가. 요구사항 수집 DFD(Data Flow Diagram) 나. 수집기법 도구 및 기법 설명 전문가 판단 비즈니스 분석, 요구사항 도출, 분석 .. 2021. 1. 13.
안전한 패스워드 저장 "보안 시스템은 가장 약한 연결 고리만큼만 강하다." "보안 시스템은 가장 약한 연결 고리만큼만 강하다." 보안 시스템은 여러 부분으로 이뤄집니다. 공격자(attacker)는 이 중에서 가장 취약한 부분을 공격할 것이라고 가정해야 합니다. 보안 시스템이라는 사슬에서 가장 약한 고리가 끊어지면 다른 고리가 얼마나 강한지는 문제가 되지 않습니다. 즉, 보안 시스템의 안정성은 '강한 부분이 얼마나 강한가'보다는 '약한 부분이 얼마나 약한가'에 따라서 좌우됩니다. 지난해 6월 세계 최대 비즈니스 전문 소셜 네트워크 서비스(SNS) LinkedIn은 사용자 데이터 해킹 사고로 650만 명의 아이디와 패스워드 정보가 유출된 후 집단 소송을 당했습니다. 취약한 암호화 알고리즘인 SHA-1을 사용했다는 것이 그 이유였습니다. 이제 보안 시스템의 한 부분인 암호화 알고리즘.. 2021. 1. 12.
[프로젝트 관리 지식영역] 프로세스 그룹별로 진행할 활동의 그룹핑 I. 프로세스 그룹별로 진행할 활동의 그룹핑, 프로젝트 관리 지식영역의 개요 가. 프로젝트 관리 지식영역(Knowledge Area)의 정의 - 프로젝트의 효과적인 관리를 위해 유사한 기능의 프로젝트 관리 프로세스들을 묶어서 10개의 영역으로 그룹화한 지식체계 나. 프로젝트 관리 지식 영역의 특징 구분 설명 10개의 지식영역 통합관리, 범위관리, 일정관리, 원가관리, 품질관리, 자원관리, 의사소통관리, 리스크 관리, 조달관리, 이해관계자 관리의 10개 지식영역으로 구성 49개 프로세스 5개의 프로세스 그룹(착수, 계획, 실행, 감시 및 통제, 종료)과 연관되어 49개 프로세스로 구성 II. 프로젝트 관리 지식 영역의 구성도 및 구성요소 가. 프로젝트 관리 지식영역의 구성도 - 프로젝트 목표를 효율적으로 .. 2021. 1. 12.
[요구사항 수집] 프로젝트 목표달성의 지표 I. 프로젝트 목표달성의 지표, 요구사항 수집 가. 요구사항 수집 정의 이해관계자들이 필요로 하는 요구사항을 파악하고 문서화하는 단계로 프로젝트 목표달성의 평가 기준 나. 요구사항의 구성요소 구분 종류 기능 요구사항 -제품과 서비스의 요구사항 -SW의 기능 및 특성 비기능 요구사항 품질관련 요구사항 II. 요구사항 수집 DFD 및 수집기법 가. 요구사항 수집 DFD(Data Flow Diagram) 나. 수집기법 도구 및 기법 설명 전문가 판단 비즈니스 분석, 요구사항 도출, 분석 등 전문지식을 갖준 개인이나 그룹의 전문성 고려 데이터 수집 -브레인스토밍 아이디어 도출을 위한 집단적 창의적 발상 기법 이해관계자간 대화를 통해 정보 수집 -핵심전문가 그룹 제안된 제품, 서비스에 대한 기대사항과 의견 교환을.. 2021. 1. 12.
[린(Lean) 프로세스], 낭비요소 제거를 통한 프로세스 향상 I. . 낭비요소 제거를 통한 프로세스 향상, 린(Lean)의 개요 가. 린(Lean)의 정의 - 낭비의 제거를 통해 프로세스를 지속적으로 개선, 수행속도를 높이고, 소프트웨어의 품질을 향상시키는 기법 (개발 프로세스가 아닌, 경영 기법, 사상임) 나. 린의 특징 특징 설명 신속성 - Lean은 낭비를 발견하고 제거함으로 고객에 가치를 빠르게 제공 생산성 향상 - 생산성 향상을 위해 사용하는 Lean 원칙을 SW 개발에 적용 결함제거 - SW 개발의 가장 큰 낭비는 결함이고 결함 제거 개념이 Agile과 유사 (Agile보다 큰 개념) - 프로젝트 초기 고객과의 접촉을 많이 하여, 낭비 및 폐기를 줄이는 프로세스 II. 린의 개발원칙 및 낭비요소 가. 린의 개발원칙 (7개) 개발원칙 설 명 낭비제거(El.. 2021. 1. 12.
[CI/CD 지속적통합/지속적배포], Devops 의 핵심 구성요소 CI / CD 란? CI/CD는 애플리케이션 개발 단계를 자동화 하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법입니다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. CI/CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(일명 “ 인테그레이션 헬(integration hell) “)을 해결하기 위한 솔루션입니다. 지속적 통합(Continuous integration) 지속적인 통합을 수행하는 개발자는 변경 사항을 가능한 자주 main-line 브랜치로 병합합니다. 빌드를 작성하고 빌드에 대해 자동화된 테스트를 실행하여 개발자의 변경 사항을 검증합니다. 이렇게 하면 릴리스 일정에 따라 변경사항을 릴리스 브랜치에 병합하려 할 때 일반적으로 .. 2021. 1. 10.
[객체지향 프로그래밍(OOP)], 재사용성과 객체 표현 기법 I. 재사용성과 객체 표현 기법, 객체지향의 개요 가. 객체지향 프로그래밍(OOP, Object-Oriented Programming)의 정의 - 실세계의 개체(Entity)를 속성(Attribute)과 메소드(Method)가 결합된 형태의 객체(Object)로 표현하는 개념으로 실세계의 문제 영역에 대한 표현을 소프트웨어 해결영역으로 매핑 - 구현대상을 하나의 객체로 보고, 그 객체를 객체와 객체들 간의 관계로 모델링하는 방법 나. 객체지향 프로그래밍의 등장배경 개발측면 - 소프트웨어 위기 해결을 위한 대안 - 생산성 저하에 따른 재사용성, 확장성 필요 사용측면 - 기능성, 단순성, 사용자편의성 요구 증대 다. 객체지향 프로그래밍의 특징 구분 설명 모형의 적합성 - 객체 중심의 모형은 인간의 사고방식과.. 2021. 1. 9.
반응형