티스토리 뷰
*공부 기록용으로 하는 블로그입니다.잘못된 개념이나 오타가 있을 수 있습니다. 잘못된 정보알려주시면 수정하겠습니다!*
이번 장에서는 소프트웨어 공학이라는 것에 대해 설명 하겠습니다.
소프트웨어 공학이란?
-소프트웨어 위기가 발생하면서 구체적이고 체계적인 소프트웨어 개발방법의 필요성이 대두되었습니다. 위기를 해결하기 위해 생겨났고, 지금은 전문적인 소프트웨어를 개발하는데 있어서 필수적인 요소입니다.소프트웨어 공학은 기존의 공학원리와 방법론을 적용하여소프트웨어의 품질과 생산성을 향상시키는 것을 목표로 합니다.. 즉, 쉽게 말해 개발을 시작하기전에 다방면으로 계획을 하여 체계적으로 진행하는 방법입니다.
소프트웨어 공학의 진행 순서
1.요구사항 분석
-소프트웨어를 개발하기위한 요구사항을 파악하고 문서화합니다. 이과정에서 소프트웨어의 기능,성능 인터페이스 등 을 정의합니다.
2.설계
-요구사항에 기반하여 소프트웨어의 구조를 설계하는데 여기서 소프트웨어의 아키텍처,모듈,데이터구조 등을 정의합 니다.
3.구현
-설계된 소프트웨어를 코드로 구현합니다.이과정에서 작은단위로 나눠서 테스트도 수행할 수 있습니다.
4.테스트
-구현된 소프트웨어를 테스트합니다. 주로 소프트웨어의 기능, 성능,보안성 등을 검증하며 다양한 종류의 테스트를 수행합니다.
5.유지보수
-버그 수정, 기능 개선, 보안 업데이트 등을 수행하며 유지보수를 진행합니다.
소프트웨어 공학을 사용했을 때의 장점
1.품질 향상
- 소프트웨어 공학은 요구사항 수집,설계,구현,테스트 등의 과정을 체계적으로 수행하여 소프트웨어의 품질을 향상 시키고 결함을 최소화 합니다.
2.생산성 향상
- 소프트웨어 개발 생명 주기의 단계에서 작업의 목표와 방법을 결정함으로써 개발자들이 더 효울적으로 일할 수 있습니다.
3.재사용성 향상
- 소프트웨어 공학에서는 구성 요소를 재사용하고 패턴과 프레임워크를 사용하여 개발을 간소화 해줍니다.
4.비용 절감
- 각 생명 주기의 단계에서 비용과 일정을 예측하고 관리해 비용을 절감합니다.
5.유지보수성 향상
- 유지보수를 고려한 설계와 개발을 수행해 코드 가독성을 높이고 유지보수를 더쉽게 만듭니다.
'소프트웨어 공학' 카테고리의 다른 글
소프트웨어 테스트 (0) | 2023.05.07 |
---|---|
소프트웨어 아키텍처 (0) | 2023.04.06 |
클래스 다이어그램 (0) | 2023.04.02 |
데이터 흐름도(DFD,Data Flow Diagram) (0) | 2023.04.02 |
프로세스 모델이란? (폭포수,나선형,애자일) (0) | 2023.03.25 |
- Total
- Today
- Yesterday
- 서버
- 인공지능
- 클라우드
- IP주소
- 배포
- 테이블
- 소프트웨어공학
- JPA
- 깃
- 프로토콜
- 데이터베이스
- 쿼리
- sql
- 도커
- 파인튜닝
- 자동화
- 보안
- 데이터
- 네트워크
- 컨테이너
- 문법
- 메세지큐
- 자바
- 포트포워딩
- 깃허브
- 스프링
- DB
- nat
- 컴퓨터구조
- 웹소켓
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |