Behavior Engineering Based Software Change Case Studies



Background

. Behavior Engineering
. Software Change
. Software Tools
. Microwave Oven Case Study
. Satellite Control System

Mircowave Oven Case Study

Version 1
. Requirements and RBT
. The DBT
. Other Design Diagrams
Version 2 and 3
. Version 2
. Version 3
Evolutionary Diagrams
. EVDBT for version 1,2 and 3
. Other Evolutionary Diagrams

Satellite Control System

Requirements and RBTs
. Requirement 2.1
. Requirement 2.2
. Requirement 2.2.1
. Requirement 2.2.2
. Requirement 2.2.3
. Requirement 2.3
. Requirement 2.3.1
. Requirement 2.3.2
. Requirement 2.3.3
. Requirement 2.3.4
. Requirement 2.3.5
. Design Behavior Tree
Other Versions
. Version 2 Requirement 2.2.3
. DBT for Version 2
. Version 3 Requirement 2.1
. DBT for Version 3
. Version 4 Requirement 2.2.2
. DBT for Version 4
. Version 5 Requirement 2.3.4
. DBT for Version 5
. The Evolutionary DBT


Microwave Oven Case Study

The Microwave Oven case study was initially introduced by Shlaer [1]. Then it has also been used to explain the BT approach [2] [3] , an order version traceability model [5] , and the architecture normalization [4].

The original case study includes 7 requiremetns:

•  R1 : There is a single control button available for the user of the oven. If the oven is idle with the door is closed and you push the button, the oven will start cooking (that is, energize the power-tube for one minute).

•  R2 : If the button is pushed while the oven is cooking it will cause the oven to cook for an extra minute.

•  R3 : Pushing the button when the door is open has no effect (because it is disabled).

•  R4 : Whenever the oven is cooking or the door is open the light in the oven will be on.

•  R5 : Opening the door stops the cooking.

•  R6 : Closing the door turns off the light. This is the normal idle state, prior to cooking when the user has placed food in the oven.

•  R7 : If the oven times-out the light and the power-tube are turned off and then a beeper emits a sound to indicate that the cooking is finished

 

[1] Shlaer, S., Mellor, S.J., “ Structured Development for Real-Time Systems ”, Vols. 1-3, Yourdon Press, 1985.

[2] Dromey, R.G., “ From Requirements to Design: Formalising the Key Steps”, (Invited Keynote Address), IEEE International Conference on Software Engineering and Formal Methods, SEFM'2003, pp. 2-11, Brisbane , September, 2003.

[3] Dromey, R.G., “ Formalizing the Transition from Requirements to Design ”, in Mathematical Frameworks for Component Software, Models for Analysis and Synthesis, Chapter 6, World Scientific, 2006, Ed. Liu, Z., and He, J., ISBN 981-270-017-X, pp. 173-206

[4] Wen , L., Dromey, R.G., “ Architecture Normalization for Component-based Systems ” , in Electronic Notes in Theoretical Computer Science , Elsevier BV, Radarweg 29, 1043 NX Amsterdam, Netherlands , vol.160, pp. 335-348, 2006

[5] Wen, L., Dromey, R.G., “ From Requirements Change to Design Change: A Formal Path ”, Proceedings of the Second IEEE International Conference on Software Engineering and Formal Methods, SEFM 2004, pp. 104-113, 2004.