반응형
안녕하세요 시제품 개발 전문기업 디자인웨일입니다.
오늘은 소프트웨어 모듈화(Modularity)에 대해서 알아보겠습니다.
1.모듈화의 개념

모듈 : 소프트웨어 설계에서 기능단위로 분해하고 추상화되어 재사용 및 공유 가능한 수준으로 만드러진 단위
모듈화 : 프로그램을 분석하고 추상화하여 소프트웨어의 성능을 향상시키거나,
프로그램의 시험, 통합 및 수정을 용이하게 하는 설계 및 구현 기법
2. 모듈화의 원칙
특징
|
내용
|
분할과 지배
|
복잡한 문제를 분해, 모듈 단위로 문제 해결
|
정보 은폐
|
어렵거나 변경 가능성이 있는 다른 모듈로부터 은폐
|
자료 추상화
|
각 모듈 자료구조를 액세스하고 수정하는 함수내에 자료 구조와 표현내역을 은폐
|
모듈 독립성
|
낮은 결합도와 응집도를 가집니다.
|
3. 모듈화의 필요성
구분
|
설명
|
관리 측면
|
프로그램의 효율적인 관리 및 성능향상 요구
|
개발 측면
|
복잡도 감소로 프로그램 개발의 용이성, 시험, 통합 용이성 요구
|
유지보수 측면
|
프로그램 재사용을 통한 유지보수 용이성 요구
|
성능/비용 측면
|
오류 파급효과 최소화 요구
단위당 프로그램 개발 노력/비용 최소화 요구
|
4. 모듈화의 주요 특성
구분
|
설명
|
비고
|
모듈성
|
프로그램을 효율적으로 관리할 수 있도록 하는 소프트웨어의 특성으로
시스템 분해 및 추상화를 통해 소프트웨어 선응 향상을 위한 적합한 프로그램 단위
|
|
응집도
|
모듈의 독립성을 나타내는 개념으로 하나의 모듈 내부 처리 요소들간에
기능적 연관도를 측정하는 척도
|
높을수록 좋음
|
결합도
|
소프트웨어 구조에서 모듈간 연관성을 측정하는 척도
|
낮을수록 좋음
|
5. 모듈화 절차

-소프트웨어의 문제영역에서 시스템의 독립적인 부분으로 분할
-복잡한 문제를 작고 간결한 문제로 나누어 해결
-문제가 내포하는 특성을 고려하여 각 기능단위로 분할처리
6. 소프트웨어 모듈화의 최적화

모듈 수가 증가할수록 모듈 비용은 감소하지만 인터페이스 비용이 증가하므로 적정 수준의 모듈 개수 유지 필요합니다.
7.모듈화의 장점 및 효과
1 ) 장점
-프로그램의 효율적인 관리 및 성능향상
-전체적인 소프트웨어 이해의 용이성 증대 및 복잡성 감소
-소프트웨어 시험, 통합, 수정시 용이성 제공
-기능성의 분리가 가능하고 인터페이스가 단순
-오류 파급효과 감소
-모듈의 재사용성 증대로 개발 및 유지보수 용이
2 ) 모듈화의 효과
구분
|
설명
|
개발 측면
|
복잡도 감소로 프로그램 개발의 용이성, 시험, 통합 용이성 요구
|
유지보수 측면
|
프로그램 재사용을 통한 유지보수 용이성 요구
|
성능/비용 측면
|
오류 파급효과 최소화, 단위당 프로그램 개발 노력/비용 최소화 요구
|
오늘은 소프트웨어 모듈화(Modularity)에 대해서 알아봤는데요.
시제품제작 상담과 제작의뢰는
디자인웨일로 문의 주시면 성심성의껏 빠르게 답해드립니다.
문의사항은 디자인웨일 홈페이지와 이메일로
보내주시길 바랍니다.
https://www.design-whale.com/contact
이메일:
info@design-whale.com
지금까지 시제품 개발전문기업 디자인웨일이었습니다.
반응형
'디자인웨일' 카테고리의 다른 글
메타버스란? (1) | 2023.04.18 |
---|---|
적층제조란? (0) | 2023.04.18 |
이형소재(이형필름)이란? (0) | 2023.04.14 |
5G 특화망이란?(Private 5G) (0) | 2023.04.14 |
사물배터리 시대 - 폐배터리 재활용 (0) | 2023.03.30 |
댓글