What is a service?
Blog post from Port
Defining a "service" within a software catalog is crucial for clarity and efficiency, particularly as organizations grow and adopt agentic workflows. A service is considered a deployable unit, owned by a single team, with a stable interface that can be independently managed without requiring coordination with other teams. This definition helps eliminate ambiguity that can lead to operational friction, such as unclear incident management and inefficient debugging. Key properties of a service include its owning team, lifecycle stage, criticality tier, deployment target, and dependencies, which are essential for understanding its role and impact within the broader system. With clearly defined services, companies can improve incident response times and maintain more effective engineering practices, as AI agents rely on precise data to function optimally. Establishing a company-wide agreement on what constitutes a service enhances collaboration, reduces downtime, and ensures that both humans and AI agents can accurately navigate the software ecosystem.