  Edge computing is the practice of placing computing resources at the edges of
the Internet in close proximity to devices and information sources. This, much
like a cache on a CPU, increases bandwidth and reduces latency for applications
but at a potential cost of dependability and capacity. This is because these
edge devices are often not as well maintained, dependable, powerful, or robust
as centralized server-class cloud resources. This article explores
dependability and deployment challenges in the field of edge computing, what
aspects are solvable with today's technology, and what aspects call for new
solutions.
  The first issue addressed is failures, both hard (crash, hang, etc.) and soft
(performance-related), and real-time constraint violation. In this domain, edge
computing bolsters real-time system capacity through reduced end-to-end
latency. However, much like cache misses, overloaded or malfunctioning edge
computers can drive latency beyond tolerable limits. Second, decentralized
management and device tampering can lead to chain of trust and security or
privacy violations. Authentication, access control, and distributed intrusion
detection techniques have to be extended from current cloud deployments and
need to be customized for the edge ecosystem. The third issue deals with
handling multi-tenancy in the typically resource-constrained edge devices and
the need for standardization to allow for interoperability across vendor
products.
  We explore the key challenges in each of these three broad issues as they
relate to dependability of edge computing and then hypothesize about promising
avenues of work in this area.
