반응형

#정보처리기사 6

[소프트웨어 공학] 소프트웨어 재공학

소프트웨어 재공학 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 재공학(Erengineering)을 알아보아요. 소프트웨어 재공학 소프트웨어의 위기를 유지보수의 생산성으로 해결하려는 방법 분석, 재구성, 역공학, 이식 등의 방법이 있습니다. 분석(Analysis) 기존 소프트웨어의 명세서를 확인하고 소프트웨어의 동작을 이해하고 재공학 대상을 선정하는 활동 재구성(Resturcturing) 소프트웨어 기능을 변경하지 않고 소프트웨어 형태에 맞게 수정하는 활동 상대적으로 추상적 수준에서 하나의 표현을 다른 형태로 변경 역공학(Reverse Engineering) 기존 소프트웨어를 분석하여 소프트웨어 개발과 데이터 처리 과정을 분석하고 설계 정보를 재발견하거나 다시 만드는 작업 이식(Migration) ..

[소프트웨어 공학] OOP(Object Oriented Prgramming)

OOP(Object Oriented Prgramming) 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 OOP를 살펴보아요. OOP Object Oriented Programming의 약어로 객체(혹은 개체) 지향 프로그래밍이라 부릅니다. 현실 세계를 모델로 개체 사이에 메시지를 주고 받게 프로그래밍하는 기법입니다. 재사용성이 높아지고 유지보수가 쉬워집니다. Object 자료와 기능을 캡슐화한 소프트웨어 모듈 자료를 상태, 변수,속성이라고 부릅니다. 기능을 함수, 프로시저, 메서드, 서비스, 동작이라고 부릅니다. 클래스 캡슐화하여 Obejct를 정의한 형식 인스턴스 클래스에 속한 개체를 인스턴스라 부릅니다. 메시지 Object 사이에 상호작용하는 수단 메시지를 수신한 Object는 메서드를 수행합니..

[소프트웨어 공학] 유지보수

유지보수 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 유지보수를 살펴보아요. 유지보수 소프트웨어를 인수, 설치한 후에 발생하는 모든 공학적 작업 원인에 따라 수리(Corrective) 보수, 적응(Adaptive) 보수, 완전화(Perfective) 보수, 예방(Preventive) 보수 등이 있습니다. 유지보수를 쉽게 하려면 시험 용이성, 이해성, 수정 용이성, 이식성을 고려해야 합니다. 수리보수(Corrective): 검사에서 밝혀지지 않은 모든 잠재적인 오류를 수정하기 위한 보수 형태로서 수정과 진단을 포함 적응보수(Adaptive): 소프트웨어 수명 기간 중에 발생하는 하드웨어, 운영체제 등 환경의 변화에 반영하기 위해 수행 완전화보수(Perfective): 현재 수행 중인 기능의 수정, ..

[소프트웨어 공학] 검사(Test)

검사(Test) 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 검사(테스트)를 알아보아요. 화이트 박스 모듈 안의 작동을 직접 관찰 원시 코드의 모든 문장을 한 번 이상 수행 프로그램의 제어 구조에 따라 선택, 반복 등의 부분들을 수행하여 논리적 경로를 제어 기본 경로 테스트, 조건 테스트, 데이터 흐름 테스트, 반복 테스트를 수행합니다. 블랙 박스 제품이 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동하는 것을 입증 성능 오류, 부정확한 기능, 인터페이스 오류를 발견할 수 있습니다. 동치 분할 검사, 경계값 분석, 원인 효과 그래프 검사, 오류 예측 검사, 비교 검사를 수행합니다. 검사 순서 단위(코드) 검사 → 통합(설계) 검사 → 검증(요구사항) 검사 → 시스템 검사 코드 검사 → 설계..

[소프트웨어 공학] 설계

설계 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 설계를 살펴보아요. 설계 모형의 구조도 설계 모형의 구성 프로시저 절차 설계 - 기능의 수행 흐름을 절차식으로 기술 인터페이스 설계 - 상호 작용에 관한 약속을 기술 아키텍쳐 설계 - 소프트웨어를 구성하는 요소 간의 관계를 기술 데이터 설계 - 요구 분석 단계 결과로 소프트웨어 구현에 필요한 데이터 구조를 기술 좋은 설계 모듈화가 이루어져야 한다. 모듈간에 독립성을 보장하고 결합도를 낮춘다. 요구 사항을 모두 구현하고 유지보수가 쉬워야 한다. 자료와 프로시저에 대한 분명하고 분리 표현을 포함해야 한다. 소프트웨어 요소 간의 효과적인 제어를 위해 계층적 조직을 제시해야 한다. 추상화 세부적인 사항을 설계하기 전에 전체적이고 포괄적인 개념을 설계하는 ..

[소프트웨어 공학] 요구 분석

요구 분석 이번에는 정보처리기사 필기 과목인 소프트웨어 공학의 요구 분석을 살펴보아요. 요구 분석 이해관계자의 요구 사항을 분석하여 문서화하는 활동 소프트웨어 개발 첫 단계 소프트웨어 분석가에 의해 분석 이해 관계자와 개발자의 용어 및 지식의 차이 발생 => 프로토 타이핑과 다이어그램을 통해 최소화 이해 관계자의 요구 사항은 시시 때때로 변한다. => 유연한 프로그래밍 시대가 흐르면서 시스템은 점점 복잡 => 분석 능력 배양 요구 분석을 명세화하기 어려움 => 요구 분석 능력 배양 요구 분석에서의 작업 문제 인식 =>통합, 평가 및 수정=>모델 제작 => 문서화 구조적 요구 분석 도구 자료 흐름도, 자료 사전, 단위 명세서, 개체 관계도, 상태 천이도 등을 이용 자료의 흐름과 처리를 중심으로 요구 분석하..

반응형