본문 바로가기

Software Engineering

(3)
[소프트웨어 공학] 소프트웨어 개발 방법론 소프트웨어 개발 전 과정에 지속적으로 적용할 수 있는 방법, 절차, 기법을 소프트웨어 개발 방법론이라고 합니다. 이는 소프트웨어를 개발함에 있어 생산성과 품질을 향상시키는데요, 현재 가장 많이 활용하는 방법론으로 볼 수 있습니다. 소프트웨어 개발 방법론은 분석, 설계, 구현, 테스트로 나눌 수 있습니다.분석 : 개발 준비, 시스템 요구사항 분석, 소프트웨어 요구사항 분석설계 : 시스템 설계, 소프트웨어 구조 및 상세 설계구현 : 코딩 및 단위 시험테스트 : 소프트웨어와 시스템 통합 및 테스트, 소프트웨어 설치 및 인수 지원1. 구조적 방법론1970년대까지 가장 많이 적용되었던 방법론으로, 구조적 분석을 통해 고객의 요구사항을 자료 흐름도(Data Flow Diagram)로 표현합니다. 자료 흐름도란 프로..
[소프트웨어 공학] 소프트웨어 개발 수명 주기 소프트웨어 개발 수명주기(SDLC)는 품질, 비용, 일정 관리의 균형을 체계적으로 잡아준다는 점에 있어서 중요한 요소입니다. 단계별 검증과 피드백으로 오류를 빠르게 발견해 품질을 확보하고, 계획-설계-구현-테스트의 흐름을 명확히 해 재작업과 일정 지연을 줄여 비용과 시간을 절감할 수 있죠. 요구사항 변경, 기술적 위험을 단계적으로 통제해 리스크를 관리 할 수 있습니다. SDLC는 소프트웨어 개발 방법론의 바탕이 되며 각 단계별 산출물이 존재합니다. 1. 폭포수 모델폭포수 모델은 과거에 폭넓게 사용되던 방식으로 정해진 단계를 한번씩만 진행하며 이전 단계로 돌아갈 수 없습니다. 다음 단계로 넘어가기 위해선 단계별로 결과물이 명확히 도출되어야 합니다. 이러한 특성들 때문에 메뉴얼 작성은 필수죠. 폭포수 모델은..
[소프트웨어 공학] 소프트웨어 공학이란? 소프트웨어 공학은 최소의 비용과 시간을 통해 높은 품질의 소프트웨어를 도출하기 위한 모든 수단과 도구들을 일컫는 말입니다.그렇다면 소프트웨어란 무엇이고 어떤 것들이 있을까요? 1. 소프트웨어소프트웨어의 사전적 정의는 컴퓨터 시스템을 효율적으로 운영하기 위해 개발된 프로그램의 총칭으로, 크게 응용, 시스템 소프트웨어로 나눕니다. 상업적 목적이나 판매를 목적으로 개발되는 상용 소프트웨어, 하드웨어를 제어하는 작은 규모의 소프트웨어인 펌웨어도 존재합니다. 응용 소프트웨어는 특정 업무나 기능을 처리하기 위한 소프트웨어 입니다. 우리가 보통 애플리케이션이라고 하는 것들이 이에 해당합니다. 응용 소프트웨어는기업용 소프트웨어영상 처리 소프트웨어CG/VR 소프트웨어콘텐츠 배포 소프트웨어자연어 처리 소프트웨어음성 처리..