{'fraction_non_alphanumeric': 0.016561514195583597, 'fraction_numerical': 0.0, 'mean_word_length': 5.313432835820896, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Formal Specification Approach for Smart Space Development

Being an important application of the Internet of Things, smart spaces are increasingly developed throughout the world for different purposes ranging from home automation to smart grids. Despite the considerable focus given to the practical development of smart spaces, there are few attempts of utilizing formal methods in this domain. Especially, the requirements of developing a smart space have not yet been formally specified, to the best of the authors’ knowledge. To fill this gap, a formal specification approach is presented in this paper for smart space development. The proposed approach first identifies the key components of a smart space, then it uses a state-based formal specification language – Z, to formally specify the requirements of these components. The requirements of developing a hypothetical smart space are considered for formal specification in this paper. This work does not only demonstrate how the components of complex systems, such as smart spaces, can elegantly be modeled using a Software Engineering formalism. But it can also be used as a step towards defining a holistic smart space development framework, along with requirement engineering and system design techniques.