Editorial

Following ComSIS policy, we kept on inviting papers that review or originally treat hot topics in the field of computing. James O. Coplien writes about the culture of patterns and Hans-Dieter Burkhard about the case-based reasoning and Case Completion, a specific approach of investigating cases for complex problem solving tasks. Although from different point of views and with different approaches, both invited papers treat similar problems and have the same general goal, to "find a model for acting by experience".

The Coplien's paper promotes the pattern culture as predominating attitudes and behaviour characterizing software pattern community that "crosses academic, industrial, national, ethnic, gender, and natural language boundaries". Pattern cultural practice tends to bring back scientific empiricism to software engineering, to capture and structure the expertise that comes from domain-specific experience. The paper provides the foundations, emerging properties and the outside view (criticism) of the culture of patterns.

In contrast to common rule-like structure of cases in Case Based Reasoning (CBR) systems, H.D. Burkhard proposes Case Completion, an attempt to store and reuse complex cases that describe complete iterative problem solving process. A completed case depends on initially specified problem and on subsequent steps of the problem solving processes, as well. For later reuse, completed cases have to be retrieved from a database. Related similarity measures are investigated, and an implementation by Case Retrieval Nets is proposed.

Prototype-based approaches last throughout the history of software development methods emphasizing necessity to get "something that works" and have user feedback as soon as possible. Prototyping comes under the criticism mainly because it is impossible to directly prototype a large information system due to its initial vagueness and inherent complexity. G. Milosavljevic and B. Pešic provide a method for complex information system development having rapid prototyping as an activity. The method is based on appropriate team organization, brainstorming techniques, and a simple and highly efficient application generator.

In distributed systems, adaptability - the capability to deploy complex software systems in highly heterogeneous and highly evolving environments - is becoming increasingly important. Program transformation is efficient technique for the adaptation of complex systems in a non intrusive way. R. Lenglet, T. Coupaye, and E. Bruneton presents a new approach to program transformation and the Jabyce, a software framework for the implementation and composition of transformations of compiled Java programs.

D. Gašević's paper proposes Petri net ontology to achieve full semantic interoperability of Petri net models by the Semantic Web. The paper surveys Petri net meta models, UML profiles, ontologies, Abstract Petri Net Notation (APNN) Petri Net Markup Language (PNML) and PNML supporting tools. The Petri net ontology is presented using different languages and tools: UML, RDF, OWL and Protege.

Empirical studies of the effectiveness of object-oriented analysis and design methods are very rare. S. Mrdalj, J. Scazzero, V. Jovanovic present an interesting experimental study of effectiveness of the User Interface Driven System Design (UIDD), by calculating defect densities for four UML diagrams. The study was conducted in an academic environment. It showed that that, on student projects that varied widely with respect to application area, information system type, team experience, and size, the UIDD produced very low defect densities.

M. Rakovic's paper presents an attempt to construct a methodology that would enable an early estimate of software development costs. Following basic principles of the Unified Software Development Process, the paper shows that an iterative and incremental estimate process simplifies early estimate and then gradually improves it along further development process stages.

A few sentences at the end of this issue are dedicated to the memory of the late Professor Dušan Velaševic, member of ComSIS Editorial Council, in recognition of his many achievements in research and teaching in the field of computing.

Editor-in-Chief
Branislav Lazarević