Topics of Presentations

The 117th Meeting of the IPEJ Project Team IT21, February 8, 2008

"Expansion of the Internet and IX"
by Toshinori ISHII, (Information Engineering)

1. Internet connection with BGP

The Internet is an aggregation of IP networks and it is connecting mutual networks administered by each organization.  This network is, that is, mutual connections among independent networks called Autonomous System (AS).  Common protocol between networks is Border Gateway Protocol (BGP), which is used for selection of optimal connection between ASs.  However, an inter-connecting point called Internet Exchange (IX) is significant because it is expensive, not necessary and not reasonable to connect all the network directly.

2. What is the Internet eXchange Point (IX or IXP)?

An Internet Exchange Point (IX or IXP) is a mutual and a physical connecting point among Internet Service Providers (ISPs).  Compared with mutual and physical connection between ISPs, it is extremely economical because of use of one cable.  A defined and open policy which is a transfer policy for multiple routes is required for participation of ISP.  In Japan, almost IX is Layer2 IX, mostly based on Ethernet.

3. The present status of IX in Japan

There are three main IX players in Japan, which are JPNAP (the fourth traffic in the world)鐚JPIX, and DIX-IE.  According to the estimation of Ministry of Public Management, Home Affairs, Posts and Telecommunications, approx. a quarter of internet traffic in Japan passes through this three organization.

4. Disaster-control measures (disaster-resistance) of IX

The main disaster-control measures of IX are point dispersion, localization, redundancy and backup.  The point dispersion is to prevent the influence of a disaster by separated location.  The localization is to protect the most of other points from a disaster by disconnecting a disaster point.  The redundancy is to change to available mediating route.  The backup is to prepare a backup system, and to change to it.

5. Conclusion 

As the Internet traffic increases, importance of IX increases. And, construction and operation of the reliable network is important.


The 116th Meeting of the IPEJ Project Team IT21, January 11, 2008

"Ruby: From Web Aplication to Bioinformatics"
by Kazuo ISHII,  Ph.D., (Biotechnology)
1. Introduction


Recently, by development of biotechnology after the human genome sequencing, high-throughput biological data production was accelerated and the application of information technology for huge biological data processing was promoted.  At first, "analysis of string data" for nucleic acid sequence of gene and amino acid sequence of protein was required.  In the next, data analysis with "statistics computing" such as a microarray analysis was required.

   In bioinformatics research, to perform heavy calculations such as the protein structure prediction, relatively lower-level programming languages are used, like C.  On the other hand, to manipulate huge "string data" like genome sequence, which is basic structure of life, a scripting language Perl is used preferably.  Recently Ruby and Python are used in addition to Perl because they are simple and easy to use for object-oriented programming and because they have rich libraries for biological analysis.

2. What is Ruby?

Ruby is a scripting language possessing following characteristics;

  • a simple and consistent syntax,

  • the principle of least surprise (POLS),

  • quick and easy object-oriented programming, and

  • powerful string operations and regular expressions.

Ruby was initially developed and designed by Yukihiro "Matz" Matsumoto in Japan and the first public release of Ruby was announced in1995.  Ruby is a interpreter language like Perl, and includes an interactive command-line interpreter named "irb" which can be used to test code quickly.

  The syntax of Ruby is very simple, which is variation of the following expression;

  • Object.Method(Argument)
    • Object; an object of movement or command
    • Method; a content of movement or command
    • Argument; specifications of optional movement or command  

  All procedure of movement or command is represented as a "method",  and all object of movement or command is manipulated as a "object", including a number, a string, a array, a hash, a file, and a directory.  Ruby has general programming functions as a general-purpose scripting language such as loops and control structures.  And it possesses sufficient functions as an object-oriented programming language such as class definition, garbage collection, exception handling and multi-threaded programming.  In addition, to enhance the power as an object-oriented languages, it possesses specific functions such as mixed-in and iterator which are Lisp-like functions.

3. Web Applications with Ruby

Ruby became a major programming language and attracted world's attention, after emergence of "Ruby on Rails (RoR, Rails)" which is a open source web application framework.  The RoR was developed by David Heinemeier Hansson and released first in 2004,  achieving a great breakthrough in web programming in late 2005.  RoR is built based on the Model View Controller (MVC) architecture.  MVC is a technique or an architecture to design and implement a application by dividing into a model (data and its processing procesure), a view (an output and displaying process) and controller (an input and responsing process).

  Two important philosophies of RoR are "Don't repeat yourself (DRY)" and "Convention over Configuration (CoC)".  DRY means that information is located in a single, unambiguous place, andCoC means a developer only needs to specify unconventional aspects of the application.

4. Bioinformatics Applications using Ruby

There are several bioinformatics-related tools using Ruby, containing BioRuby which is a Ruby library for bioinfomatics analysis, ChemRuby which is a Ruby library for chemical analysis, RSRuby which is a Ruby package for accessing R statistics tool.  The BioRuby ( is a class library for bioinformatics, and includes various applications for sequencing analysis, pathway analysis, searching for documents, accessing databases and several web services etc.  The ChemRuby ( is available to manipulate data of a chemical materials.  And, the RSRuby ( is available to access a R statistics software for statistics computing such as microarray analysis from Ruby.


The 110th Meeting of the IPEJ Project Team IT21, June 8, 2007

"Rediscovery of Pattern Language from Information Systems Viewpoint"
by Kiminobu KODAMA, (Information Engineering)

The lack of effectivity of enterprise information systems (EIS) is caused from the loss of capacity for being a party of Information Systems Division of the enterprise.To solve the problem, learning from architectonics was suggested, and the information systems cycle was proposed, which correspond to processes of the construction of a building that managed the trade-offs of the concerns among the owner, designer and builder.Here, the concrete states or the objectives translated from the expectations of the owner through the interaction with the architect are called proto-requirements.The proto-requirements are converted into formal requirements specification by the designer and the architect.The requirements specification is translated into software specification through the interaction with the designer and the architect.The software specification is converted into an artifact by the builder and the architect.The artifact is converted into EIS by the owner using the software.To satisfy to the expectations of the owner and to react to changes in the business environment, EIS are constructed partially and gradually and the information systems cycles are continuously repeated.

  In architectonics, there is a concept called pattern language by Christopher Alexander.  The pattern language was introduced for the format of the pattern as know-how description in the software engineering and produced the significant results.  However, the original pattern language is the set of activities called “The Timeless Way of Building”, which is a concept of planning and designing towns and houses.  The patterns are applied in the planning of future towns.   The pattern language is maintained by the rules such as "planing board"  to manage the construction project, consisted of the owner, the user, and the architect.  It is based on the following concept; towns or buildings having a “quality without a name” possess useful patterns, and revealing and applying these patterns would aid in the successful planning of future towns. 

  Also in the information systems-cycle, the pattern language was proposed as an effective way.  This activity is the continuing "the timeless way”.  The organization, that is the planning board, composed of an owner, a designer, a builder, and an architect, works to write and maintain the master pattern language, and  continuously needs to accumulate a feedback from users, improve it and obtain effects.  We should consider that the information systems cycle of the owner and the software process cycle of the builder intersect obliquely.  It is suggested that the architect's role is to manage this intersection.

  Finally, while the present state of so-called "IT architect" is only an expert designer, the real role of "the IT architect", that should be achieved, was proposed.  

Main Menu

Today : 83
Yesterday : 1681
Total : 3757418