[Jot-newsletter] JOT Subscriber Newsletter vol. 9 no. 6 (November 2010)

Günthart Claudia claudia.guenthart at inf.ethz.ch
Tue Nov 2 15:47:15 CET 2010


For Volume 9, no. 6 (November 2010)

I. Letter from the JOT publisher

Dear Readers,

Welcome to the latest issue!

II. Content


Long Live Metadata!
By Oscar Nierstrasz



Computational Abstraction Steps.
By Lone Leth Thomsen, Bent Thomsen, Kurt N\/{o}rmark

In this paper we discuss computational abstraction steps as a way to create class abstractions from concrete objects, and from examples. Computational abstraction steps are regarded as symmetric counterparts to computational concretization steps, which are well-known in terms of function calls and class instantiations. Our teaching experience shows that many novice programmers find it difficult to write programs with abstractions that materialize to concrete objects later in the development process. The contribution of this paper is the idea of initiating a programming process by creating or capturing concrete values, objects, or actions. As the next step, some of these are lifted to a higher level by computational means. In the object-oriented paradigm the target of such steps is classes. We hypothesize that the proposed approach primarily will be beneficial to novice programmers or during the exploratory phase of a program development process. In some specific niches it is also expected that our approach will be a help to professional programmers.


Formal Model and DSL for Separation of Concerns based on Views.
By Mehdi Adda, Hamid Mcheick, Hafedh Mili

The separation of concerns (SOC), as a conceptual tool, enables us to manage the complexity of software systems that we develop. The benefits of this paradigm, such as reuse, enhanced quality and adaptability, have been key drivers of its adoption. Modern software systems and applications take advantage of the technologies built around this paradigm, in which a client program can access different functional aspects (views) of the same domain. One of these SOC approaches is View-oriented Computing (VOC), which suffers from a formal model to canonically and consistently represent the different concepts of VOC as well to have the necessary background to formally verify the systems build on top of it. This paper describes a formal algebra-based model to describe different entities related to VOC. Especially, it introduces algebra and formalism associated with a Domain Specific Language (DSL) notation to illustrate the VOC paradigm.


Improving Learning Object Reuse Through OOD: A Theory of Learning Objects.
By Claudine A. Alle, Ezra K. Mugisa

The concept of a learning object (LO) has spread quickly without a very specific universal definition, and though born originally from the idea of object oriented design, with a goal of providing high levels of reusability for digital learning resources, it is being developed generally without reference to the ideals of the object oriented design paradigm. This has resulted in challenges to reusability and interoperability. We therefore present a theory of learning objects (including OOGLOM - Object Oriented Generic Learning Object Model). We develop UML models to illustrate OOGLOM as well as illustrate how it provides interoperability.


Identification of System Software Components Using Clustering Approach.
By Gholamreza Shahmohammadi, Saeed Jalili, Seyed Mohammad Hossein Hasheminejad

The selection of software architecture style is an important decision of design stage, and has a significant impact on various system quality attributes. To determine software architecture based on architectural style selection, the software functionalities have to be distributed among the components of software architecture. In this paper, a method based on the clustering of use cases is proposed to identify software components and their responsibilities. To select a proper clustering method, first the proposed method is performed on a number of software systems using different clustering methods, and the results are verified by expert opinion, and the best method is recommended. By sensitivity analysis, the effect of features on accuracy of clustering is evaluated. Finally, to determine the appropriate number of clusters (i.e. the number of software components), metrics of the interior cohesion of clusters and the coupling among them are used. Advantages of the proposed method include; 1) no need for weighting the features, 2) sensitivity analysis of the effect of features on clustering accuracy, and 3) presentation of a clear method to identify software components and their responsibilities.


Formal specification of structural and behavioral aspects of design patterns.
By Shouvik Dey

Design patterns are usually modeled and documented in natural languages and visual languages, such as the Unified Modeling Language. Several UML extensions have been provided to keep track of pattern-related information when a design pattern is applied or composed with other patterns. But several of these are not taken into account while describing a formal specification language. This paper suggests a formal specification language FSDP (Formal Specification of Design Pattern) which combines some of the research works on UML extension mechanisms to formally specify and recognize design pattern from UML class diagram. The FSDP grammar has been verified by ANTLR (ANother Tool for Language Recognition). A simulator tool has been developed from the FSDP grammar to automate the software pattern design techniques. The tool has the capability to create store and retrieve UML class diagrams within design patterns where the model elements of the design patterns play specific roles. The tool verifies the textual contents of the class diagram according to FSDP grammar rules and generates an XML file which contains the detail design. The stored pattern information within the XML file can then be reused by the tool to generate the graphical notation and generate Java codes.



First Impressions of Reno and OOPSLA/SPLASH.
By Nicholas Cameron


By Nicholas Cameron


Dynamic Languages Symposium (DLS).
By Nicholas Cameron


OOPSLA day 1.
By Nicholas Cameron


III. About JOT
JOT (Journal of Object Technology) is published six times a year, plus special issues. JOT covers object technology, component technology and other modern approaches to software development, with emphasis on both concepts and applications.

JOT is available online at http://www.jot.fm and is free to both readers and authors, with no registration required.
The JOT newsletter is sent with the publication of selected JOT issues and is available by subscription to the JOT reader and author community. The subscription form may be found on the JOT Web site. Subscribing requires no personal information or fee, only your email address. We use such addresses for the sole purpose of distributing the JOT newsletter and do not communicate them to third parties.
You are receiving this newsletter because you have subscribed to
	jot-newsletter at jot.fm
To unsubscribe, please use the mailman interface:

More information about the jot-newsletter mailing list