Types of Non-Functional Requirements
Non-Fuctional Classifications
- Product requirements
- Requirements which specify that the delivered product must behave in a particular way
- e.g., excution speed, reliablity, etc.
- Organization requirements
- Requirements which are a consequence of organisational policies and procedures
- e.g., process standards used, implementation requirements, etc.
- External requirements
- Requirements which arise from factors which are external to the system and its development process
- e.g., interoperability requirements, legislative requirements, etc.
Quality Attributes
Measurable and testable properties of a system
측정가능하고 테스트 가능한 특성들. 이때 테스트 가능함이라는 것은 실행가능한 테스트라기 보다는 증명가능함 이라는 느낌이다.
- Used to indicate how well the system satisfies the needs of its stakeholders
- Emergent properties: not a measure of software in isolation
- Measures the relatonship between and its application domain
- Cannot measure this until you place the software into its environment
NFR에서 constraints들을 빼면 나오는 것을 말한다. user requirements에서 quality requirements를 만들 때, 측정할 수 있도록, 즉 M&M (Measurement and Metrics)를 지킬 수 있도록 requirements를 만들어야한다. 단순한 SRS (Software Requirements Specification)을 통해서는 Quality Attributes를 판단하기 힘들기 때문이다. 또한 이 단계에서 'Quality를 만족한다는 기준'을 설정해야한다.
Software Quality Model
ISO/IES 9126
+ Functionality Quality Attribute와 Functional Requirement는 다른 것이다. FR을 만족하지 못하는 시스템이나 소프트웨어는 아에 출시를 못하지만, Functionality는 그렇지는 않다.
+ security ≠ safety, security는 보안의 개념이고, safety는 안전의 개념이다.
+ Process Quality는 CMMi점수가 높다면 높을 수 밖에 없다.
+ Internal Quality와 External Quality를 합쳐서 Product Quality라고 말하는 데, 이는 product가 나오고 나서 판단할 수 있는, Emergent Properties들이다.
+ 그 이후, 즉 출시 이후에 사용자가 느끼는 Quality Attributes를 Quality in Use라고 한다.
ISO/IEC 25010
+ ISO/IEC 25010:2011 Systems and software engineering - Systems and software QUAlity Requirements and Evaluation (SQuaRE)
+ Internal과 External을 아에 Product로 통합함
+ Product Qualities는 Qualities in use와 달리 사용자에게 물어볼 수 없는 특성들이다.
+ Non-verifiable안 user requirements에서 functional requirements와 constraints를 빼고, 사용자가 중요시하는 qualities가 무엇인지를 확인 후, verifiable한, M&M을 따르는 SRS (software requirements specification)을 만드는 것이다.
'[학교 수업] > [학교 수업] Software Engineering' 카테고리의 다른 글
[Software Engineering] 9주차 (1) (4) | 2024.10.28 |
---|---|
[Software Engineering] 7주차 (2) (2) | 2024.10.16 |
[Software Engineering] 6주차 (1) (1) | 2024.10.07 |
[Software Engineering] 5주차 (2) (5) | 2024.10.04 |
[Software Engineering] 5주차 (1) (3) | 2024.09.30 |