Khaled Narayanaswamy

Learn More
The process of developing and evolving complex software systems is intrinsically exploratory in nature. Some prototyping activity is therefore inevitable in every stage of that process. Our program development and evolution methodology is predicated upon this observation. In this methodology, a prototype software system is developed as an approximation to(More)
Automatic run-time monitoring of software systems’ design/ purchase/ installationtime requirements and assumptions is a key step towards making those systems more robust, maintainable, and self-evolving. A concise language has been designed to permit the convenient expression of a wide range of requirements and assumptions. A compiler automatically converts(More)
The notion of interfaces plays a key role in Abstract Data Types (ADTs). An interface is intended to distinguish clearly between visible aspects of an ADT (i.e., aspects of it necessary to use the ADT), and the hidden aspects of the ADT (i.e., implementat ion of the ADT). Interfaces make it easier to build and maintain complex systems by controlling and(More)
Todaypsilas mobile satellite systems are built to support a packet switched all IP communications infrastructure based on IP multimedia subsystem (IMS) leveraging the benefits of solutions already available in terrestrial networks. IMS technology provides a SIP based open platform that enables operators to introduce multimedia applications quickly and in a(More)
Most programming environments distinguish rigidly between software end users and software developers. Generally, end users are not granted access privileges of any kind to the system code, whereas developers are granted access privileges consistent with information hiding. We have identified the need for an intermediate level between end users and(More)
One of the major problems in cooperative software development is that of maintaining certain global consistency properties. Broadcasting changes that have already occured, as many programming environments do, will not resolve this problem. We argue in favor of an architecture where the announcements deal with impending or proposed changes as well as changes(More)
  • 1