As an ideal infrastructure for smart services, Fog Computing is becoming the next wave of IT investment harnessing the successful models of Cloud Computing and latest technologies such as 5G and Internet of Things (IoT). However, the development of Fog Computing systems is a big challenge due to its complex, heterogeneous and distributed nature. Currently, there are a few SDKs released by some public Cloud service providers to support the development of Fog services in a top-down fashion as the key motive is to leverage their business Cloud services. However, Fog Computing systems are usually designed in a bottom-up fashion as the major functionalities are centred around the Edge Nodes and the End Devices. Meanwhile, significant efforts are required to verify the conformance of software behaviours as the collaboration between the End Devices, Edge Nodes and Cloud Servers is vital to the success of a Fog Computing System. Therefore, a holistically designed software development platform is urgently required. In this paper, we propose TDD4Fog, a test-driven software development platform for Fog Computing systems. Following the Test-Driven Development (TDD) methodology and a bottom-up design fashion, TDD4Fog supports the microservice architecture and provides the Test-Driven utilities such as metamorphic testing, mutation testing and random testing for the whole software development lifecycle of Fog Computing systems. To demonstrate the feasibility of TDD4Fog, we have presented some preliminary results on the key components of TDD4Fog and discussed some important future research directions.
[1]
Xiao Liu,et al.
SmartVM: a SLA-aware microservice deployment framework
,
2018,
World Wide Web.
[2]
Mazedur Rahman,et al.
A Reusable Automated Acceptance Testing Architecture for Microservices in Behavior-Driven Development
,
2015,
2015 IEEE Symposium on Service-Oriented System Engineering.
[3]
Dan Fagnant,et al.
Emerging Transportation Technologies White Papers
,
2015
.
[4]
Gang Luo,et al.
Verification of Microservices Using Metamorphic Testing
,
2019,
ICA3PP.
[5]
H. T. Kung,et al.
Distributed Deep Neural Networks Over the Cloud, the Edge and End Devices
,
2017,
2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS).
[6]
Yun Yang,et al.
FogWorkflowSim: An Automated Simulation Toolkit for Workflow Performance Evaluation in Fog Computing
,
2019,
2019 34th IEEE/ACM International Conference on Automated Software Engineering (ASE).
[8]
Danna Zhou,et al.
d.
,
1934,
Microbial pathogenesis.
[9]
Liqun Sun,et al.
Metamorphic testing of driverless cars
,
2019,
Commun. ACM.