15 Şubat 2021 Pazartesi

DO-178B Software Design Process

Giriş
Aslında aşağıdaki cümleleri DO-178C'den aldım ancak çoğu DO-178B için de geçerli. Software Design Process kabaca şu faaliyetleri içerir. Yani bu safha sonunda Low Level Requirements ve Derived Requirements çıkar
1. Development of Software Architecture
2. Development of Low Level Requirements
3. Development of Derived Requirements
4. Considerations of User-Modifiable Software
5. Deactivated Code
Low Level Requirements - LLR
LLR yazılırken pseudo kod benzeri bir dil kullanılabilir. LLR ve SLOC arasında 20/1 oranı iyi bir oran.
"Our requirements are almost pseudo-code"
Örnek
Bir projede LLR'nin Use Case gibi yazıldığını gördüm. Kabaca şöyleydi

Main Use Case - Receive Foo
1. Context : This use case is initiated in Operational state
1.2 Actors :  I/O system is the actor of this use case
1.3 Goal : To process the received message and inform user
1.4 Pre Conditions : The system must be in Operational state
1.5 Post Conditions : The Foo message is consumed
1.6 Description : The use stats when system received Foo message with a TCP connection
1.7 The system shall reject the Foo message if CRC is incorrect
1.8 The system shall reject the Foo message if Source is 0
1.9 The system shall reject the Foo message if Minute field is illegal
1.10 If Foo exist with the received ID, Sub Flow : Exists is executed
1.11 If Foo does not exist with the received ID, Sub Flow : Not Exists is executed

1. Sub Flow Exists
1 If the type of received Foo and existing Foo are different, the system discards the message and this use case ends
2 The received Foo message is copied over the existing Foo

2. Sub Flow Not Exists
1. The received Foo message is copied over the existing Foo

3. Sub Flow Capacity
1. If the total number of Foo units is 100 Sub Flow Full Capacity is executed

3.1 Sub Flow Full Capacity
1. The system deletes the oldest Foo
2. The system shall send a alert to inform the user

Safety Assessment For Derived Requirements
Derived olarak işaretli bir gereksinimler, sistem seviyesindeki gereksinimlere dayanmayan ancak yazılımın çalışması için gerekli gereksinimler. Sistem gereksinimleri safety assessment 'a tabi tutuldukları için, sisteme doğru izlenebilirliği olan HLR ve LLR gereksinimlerini tekrar değerlendirmek gerekmez. Ancak derived gereksinimler tekrar  safety assessment 'a tabi tutulur. Gözden geçirilerek bir rapor yazılır.

Derived gereksinimlere örnek:
Sistem açılışında partition tarafından yapılan bazı kaynak yaratmaları ve ayarlamalar.

Hiç yorum yok:

Yorum Gönder