[소공3]소프트웨어설계
요구분석에서 정의된 결과로 얻은 소프트웨어 요구명세를 기초로 소프트웨어 속성(기능/성능)들을 가장 적합하게 실현시킬 수 있는 알고리즘과 알고리즘으로 처리될 자료구조 특성을 찾아내어 명세화하는 과정
1.소프트웨어 설계목표
-시스템구성과 데이터추상화
-시스템구성요소간의 인터페이스확립하고 제어와 데이터연결을 명확히 정의
-목표 시스템 품질보증을 위한 여러 설계상 장단점을 파악해 개선방향 제시
2.설계원리
1)추상화:상위수준, 과정추상화(수행과정자세단계고려없이흐름만설계),자료추상화(표현,처리내용은폐하며 자료형정의),제어추상화(제어의 정확한 매커니즘정의없이 효과정의)
2)단계적분해:SW를 해결할만한 작은문제로 나누어 문제를 다룸
-과정:하위수준독립단위분해-구분문제의 구현은 뒤로미룸-점증적으로 구체화작업반복
-이점:하향식분해,점증적세부사항추가,설계결정사항연기,지속적일관성검증
3)모듈화:SW아키텍처는 모듈성을 구체적으로 표현한것, 분할정복을 통한 복잡한문제를 작은문제로 나눠해결,이름을 가지며 독립적으로 컴파일 가능하고 다른 모듈을 사용할수 있으며 다른 프로그램에서 사용가능
3-1)효과적모듈설계기준
-정보은닉:내부내용은감추고 인터페이스로메시지전달, 설계결정사항이 모듈안에 감춰 접근/변경불가,모듈구현독립성/변경영향성최소화
-기능적독립성:뚜렷한하나 목적을 갖고 다른 모듈과 상호의존도 낮음,장점:개발용이성/오류파급효과최소화
-기능적독립성지표:응집도/결합도(응집도 구분흐름도 그림)
응집도가 높은 모듈은 하나의 작업을 수행하도록 모듈내 요소가 구성
결합도는 모듈간의 상호의존도, 독립적 기능이 이상적
'T-prj > 1.SW공학' 카테고리의 다른 글
[소공4]SW아키텍처 (0) | 2012.07.31 |
---|---|
[소공2]S/W 요구공학-기능요구, 비기능요구, 요구사항관리 (0) | 2012.07.31 |
[소공1]요구공학 (0) | 2012.07.30 |
Recent Comment