How can we formally represent the knowledge inherent in information system development? This paper introduces Telos, a language designed to do just that, drawing upon knowledge representation concepts. It addresses the critical need for formalisms capable of capturing the multi-faceted aspects of complex information systems, making it easier to develop effective and comprehensive systems. The work presents an object-centered framework that integrates key features such as aggregation, generalization, and classification, offering a robust approach to attributes. The system includes an explicit treatment of time, along with facilities for specifying integrity constraints and deductive rules. This formal language also addresses the subject world and system world. By offering a means to represent knowledge about the application domain and the software requirements, the system supports formal knowledge. The paper also includes reviews of real-world implementations of the language.
Published in ACM Transactions on Information Systems, this paper significantly contributes to the journal's focus on innovative approaches to information system design. By introducing Telos, a language grounded in knowledge representation, the paper addresses the journal's ongoing interest in formal methods and tools for managing the complexities inherent in information systems, contributing to the field of information technology.