생성일: 2021년 9월 5일 오후 3:36
Goals of Quality Software
- It works.
- It can be modified without excessive time and effort.
- It is reusable
- It is completed on time and within buget
Detailed Program Specification
- Tells what the program must do, but not how it does it.
- Is written documentation about the program
Abstraction (추상화)
- A model of a complex system that includes only the details essential to the perspective of the viewer of the system.
- Programs are abstractions.
💡 추상화는 필요한 부분, 중요한 부분을 통합하여 표현하는 것.
- Information Hiding
- Stepwise Refinement (단계적인 개선)
Verification vs. Validation (V & V)
증명과 확인
Verification : "Are we doing the job right?"
Validation : "Are we doing the right job?"
Types of Errors
- Specification
- Design
- Coding
- Input
각 단계에서 에러 발견 가능
Controlling Errors
- Robustness (억셈) 에러가 있더라도 프로그램이 죽지 않고 어느정도 기능을 수행하는 것.
- Preconditions (전제조건)
- Postconditions (사후조건)