Skip to content

Case study on web frameworks


The goal of this case-study is to make a short overview of the development tools for developing web-based business applications. The tools must (should) satisfy the following criteria:

Exercise on implementing collaborations with ObjectTeams/Java


ObjectTeams/Java (OT/J) is an extension to Java programming language that facilitates roles and collaborations as the first class language constructs. This article is an exercise on using (OT/J) for implementing collaborations.

Subject area

This exercise considers two bank operations – money transfer and fund cashing. The course of events for these two operations is very similar in basic and differs in details. Considering this, it is implemented as an abstract withdraw routine leaving detail differences to concrete implementations.

Using Java langauge constructs to define static graphs and trees

This article suggests an approach on adapting the Java programming language for defining static graphs and trees, gives an exercise on defining a microwave finite state automaton (FSA) using this approach and provides code sample for processing graph definitions

A convenient approach on keeping SQL in Java

Where to keep SQL statements? This question arises almost for any more-less sophisticated Java application that accesses DBMS. Two most common approaches are: (1) as string constants in Java and (2) as text in external files. Both these approaches have significant drawbacks. Java strings get complicated when a string is too long to fit in one line, leading to a difficult to read and hard to maintain SQL code. SQL in external files are not easy to lookup and require some mapping technique to associate statement in the external file with a place in Java where it is needed. Also, as development goes, the text file adheres with more and more orphan SQL statements and there is no easy way to clean them up. This article suggests an approach that combines two mentioned above and inherits their strong sides.

Theoretical aspects of dimming an incandescent lamp


A dimmer is an electronic device that controls alternate voltage applied to a lamp through delivering a selected portion of the mains sinusoid. Engineer, designing a dimmer needs to estimate how big this portion should be to get a desired luminance level. This article uses a model of incandescent lamp, tungsten resistivity, and human eye spectral efficiency to derive dependency of produced luminous flux over the voltage, gives a simple analytical function that describes this dependency with good accuracy (±2% comparing to the model).


Customizing ErWin templates for PostgreSQL

ErWin 7.2 does not provide support for PostgreSQL, indeed with few tricks it still can be used to model database and generate valid SQL code.


Simplescope v1.1 released

This is a maintenance release of the product that includes the following fixes:
1. SISAN v 1.1
  1.1. Added SISAM88 hardware schematic
  1.2. Fixed TX/RX typo on SISAM690 schematic
  1.3. Fixed issue with beam pattern affecting ruler pattern
2. SISAM1 v 1.1
  2.1. Fixed diagnostic failure, which made product unusable if high baudrate cannot be set
  2.2. Fixed issue with BREAK is not handled properly
Download Simplescope v1.1.


MIHA675 – Multi Input Hall Automaton

Previous examples illustrated VELOOS programming aspects. This post provides an example of using object oriented paradigm for designing VELOOS application. Unlike the previous examples which were purely programming exercises, this example is dedicated to a utilitarian home appliance application and provides a "reference design" for VELOOS applications.


VELOOS Example 3

This example for PIC12F675 implements set of “actuators” and “generators” controlled via USART. Actuators produce one 300 ms pulse when it receives command ‘ON’ and three 100 ms pulses delimited with 100 ms spaces (pauses) on command ‘OFF’. Generators, when turned on, produce pulses and spaces of the specified duration (1..255).


VELOOS 1.0 released

VELOOS is an object-oriented message-triggered cooperative operating system for 8-bit Microchip microcontrollers licensed to public under the Open Software License
Release 1.0 includes VELOOS kernel and two timer drivers (TMR0 and TMR2 based). It has been tested on the following devices: PIC12F675, PIC16F690, PIC18F248.

Download VELOOS v.1.0