Transcript The Project

The Project
The IDAMS project has a long history in UNESCO
Its results are among the most tangible products
of the Organization;
It is part of the Regular Programme of UNESCO;
Received visible support from the Participation
Programme, from national and international
institutions;
It is implemented under the supervision of the
CI/INF Division.
Existing IDAMS versions
 Result of the work of many persons around the world,
 Design and architecture, algorithms, documentation, layout
of results constitute a solid basis for future versions,
 WinIDAMS 1.0, available since April 2001 has been
distributed from UNESCO through Internet to over 6600
users/institutions in more than 180 countries,
 WinIDAMS 1.2 is now available in English, French and
Spanish, and it will be ready soon in Arabic and Russian.
 We plan now to give a new impetus to this really successful
collaborative venture.
Objectives (1)
To produce, keep up-to-date and disseminate a free
open source software package,
for data management, data archiving and data
exploration, with report generator facilities,
by transforming IDAMS into a toolkit, into an
evolving, inter-related set of end-user and developer
services.
Objectives (2)
Development of the new IDAMS package will be
based on co-operation with a wide, open,
international developer community.
OpenIDAMS will be disseminated to a large
worldwide user population.
An e-publication facility will be set up for assisting
co-operation, to share ideas, methods, techniques
and experience.
The final product
The final package should be an easy to use,
permanently advancing information processing
system, a toolkit
designed to assist institutional, corporate and
individual users (decision makers, managers,
professionals, researchers, teachers, students,
developers, etc.)
in performing the standard three-phase statistical
information analysis procedure.
Beneficiaries
The community taking advantage of the final
product of the OpenIDAMS project will be much
wider than the one benefiting from the current
IDAMS project.
We can describe this enlarged community
by type of users and
by type of institutions/organizations to
which they belong to.
Beneficiaries
by type of users
End-users with general data management and
exploration needs;
Statisticians, data exploration specialists;
Software developers;
Future professionals and their teachers;
End-users of specific applications based on the
OpenIDAMS toolkit.
For the current user community WinIDAMS will be
maintained and kept up-to-date, they can switch to the new
toolkit whenever they need to do so.
Beneficiaries
by type of institutions (1)
Decision makers, managers and professionals in
national and local governmental institutions as well as
in international organizations;
Students, teachers, researchers and other professionals
in universities and other educational institutions;
Managers and professionals in social, cultural and
public service institutions and enterprises;
Professionals in research institutes in all fields of
science;
Public or private institutions wherever applicable.
Beneficiaries
by type of institutions (2)
Managers and professionals of private and public
enterprises in all social and economic sectors (including
production, trade, service, administration, banking and
finance, etc.);
Professional staff in non-governmental organizations;
Software developer organizations involved in producing
statistical information management tools;
Professionals involved in statistical information
processing in any other institutions.
Main actors (1)
OpenIDAMS will be developed and disseminated using
the free/open source software practices and principles
which materialize through the free/open source software
developer and user community.
UNESCO is the originator and will be the motivator,
organizer and supervisor of the project, assisted by
an international pool of experts and institutions
represented by
an international governing board and a core network of
institutions and individuals.
Main actors (2)
(foreseen co-operation)
 European Commission,
 Food and Agriculture Organization of the UN,
 Free Software Foundations,
 Francophone Agency,
 International Organization for Migration, etc.,
 universities, research institutes,
 similar open source projects
(software development, utilization, financing)
Inter-sectoral co-operation within UNESCO.
Expected impact (1)
 Data exploration and publication capacities will be fostered
by providing standard and flexible information processing
tools and know-how for a large public in all UNESCO
Member States.
 Software developer potential will be increased by the
mobilization of a wide expert community, leading edge
technology and methodology being made accessible to them.
 The project will allow a great number of specialists to join
their global professional community and would assure the
presence of many institutions on the global scene.
Expected impact (2)
Substantial increase of the number of organizations
and professionals benefiting from the project.
A new type of cooperation among people of many
countries, linked in a virtual community by
advanced information technology.
Improvement of the management of services to the
population, be they public or private services.
Resources
The free software community (individuals and
institutions worldwide) can be considered the main
resource of the project.
WinIDAMS must also be maintained and supported
simultaneously with starting and keeping control of
the OpenIDAMS project.
In spite of the mobilization of an external capacity
larger than ever before, UNESCO must and will
allocate sufficient financial and human resources.
Methods of collaboration
The existence of today’s virtual meeting facilities makes it
possible to launch this project, which needs intensive
communication within a broad virtual community.
It should be stressed, however, that state-of-the-art
services are far from the real “information highway”.
UNESCO and the core institutions are supposed to make
efforts for providing tools for standing virtual meetings.
 The lesson learnt during the project preparation is that
real meetings are needed anyway.
Components (1)
OpenIDAMS will consist of
Self-contained tools for statistical
information processing (ready-made
solutions) and
Building blocks for constructing specific
applications (tailor-made solutions)
Components (2)
 Reasonably
comprehensive
general
purpose
data
management, data archiving and data exploration package(s)
with user-friendly graphical interface(s);
 Set(s) of standard application modules implementing data
and document management, archiving and exploration
functions;
 Set(s) of recommended user interface primitives;
 Tailor-made packages for specific applications;
 User and developers’ documentation.
Implementation
principles (1)
The technological platform
 should guarantee the longevity of OpenIDAMS,
 assure that IDAMS will be usable on a broad range of
machines and operating systems (portability),
 by a large user community.
Project standards must be kept very high
The source code
 should serve as a model of good programming and
 should be subject to continuous revision and
improvement.
Implementation
principles (2)
The project
should provide
innovative approaches, challenges, state of the art
software engineering, visibility and recognition.
should sensitively follow
key information technology developments.
Portability, i.e. compatibility with different systems is of
maximum importance. Windows, Unix, Linux operating systems
and their variants are considered as target platforms.
Architecture (1)
 Complete separation of the application control and the
application modules (which implement statistical, data
management and archiving techniques):
 Documents and document access modules are on the
document server,
 Application modules are on the application server,
 Control modules constitute the controlling client (which
is also a client in relation to the document server).
 This is a typical 3 Tier Client/Server Architecture, in full
conformity with the Web Services Architecture concept and
standards .
 Servers and client(s) can also be on the same computer.
DOCUMENT
SERVER(S)
IDAMS DOCUMENTS
CONTROL
SCRIPTS
EXTERNAL
DOCUMENTS
Architecture
Components of high priority
Components to be implemented
later or in parallel
DATA
REPORTS
PROJECT
DESCRIPTIONS
DOCUMENT ACCESS MODULES
PROJECT
ACCESS
DATA CONTROL LANGUAGE
REPORT
ACCESS
INTERPRETER
ACCESS
SERVER
CONTROLLING
CLIENT
CLIENT(S)
CONTROL MODULES
PROJECT
USERS
SUPERVISOR
DEVELOPERS
END-USERS
MANAGER
INTERACTION MANAGER
GRAPHICAL USER
INTERFACE
CLIENT
SERVER
SERVER
CLIENT
APPLICATION MODULES
DATA
MANAGEMENT
ARCHIVE
MANAGEMENT
DATA
EXPLORATION
REPORT
MANAGEMENT
APPLICATION SERVER(S)
Programming (1)
 A mixed language open model would be attractive for several
reasons but it has also drawbacks in many respects (e.g.
portability problems).
 In order to achieve the goal of maximum portability and to
maintain a consistency,
 the use of one carefully selected main language was
chosen in the reference implementation(s),
 leaving the door open also for the use of other languages
which correspond to structural and functional
requirements of the system.
Programming (2)
Java has been selected for the role of the main language, it
seems to be the most reasonable general platform
 that can meet all implementation requirements,
 assuring an instrument and a framework for all
components and features envisaged in OpenIDAMS,
 also for those written in other languages.
Java is a multiplatform language in which a program can be
 written and compiled once and
 executed in any hardware/software platform (with
appropriate Java Virtual Machine)
Advantages are even more relevant if the effort required to develop the
Graphical User Interface.
Programming (3)
Java is a very rich language
 with primitives to support services that in traditional
languages are provided by third party libraries,
 completely Web aware with full support for distributed
computing and Web services development.
From the programmer’s point of view, there is a clear
agreement in the user community: that Java is easier and safer
than C++.
Using Java, we can rely on free and sophisticated integrated
development environments (IDEs), e.g. NetBeans, Eclipse JDT.
Standards
 Internal OpenIDAMS application standards,
 Internationalization enabled (Unicode),
 Standard file and document formats,
 Standard graphical user interface features,
 Web Services interface standards,
 Communication standards,
 Metadata language standards (DDI, RDF, …),
 Project implementation and evaluation standards.
Project workflow
Project Initiation Phase
 establish formally who will be the initiators (architects,
designers, coders and testers of the project "kernel”),
 produce the “kernel”.
Project Opening Phase
 preparation for the execution phase,
 going open, publishing the project.
Permanent Project Execution Phase - main objective
 grow with new membership,
 remain stable,
 gradually die from lack of participant interest.
Initiation Phase
 Creation and formalization of the OpenIDAMS Technical
Steering Committee;
 Setting up the initial core network of institutions;
 Market survey;
 Review of available components;
 Definition, Design and Refinement of the "kernel";
 Implementation of the "kernel".
Opening Phase
 Selection of a particular license,
 Establishment of adequate communication systems,
 Selection and implementation of a suitable version control
system,
 Establishment of an effective involvement/recruitment
strategy,
 Establishment of appropriate governance structures and
institutional designs,
 Promotion of project credibility,
 Launching OpenIDAMS openly as a free/open source project.
Permanent Execution
Phase
 Development of standard IDAMS application modules,
 Development of standard IDAMS user interface components,
 Development of general purpose IDAMS package with
graphical user interface,
 Development of IDAMS based packages for specific
applications,
 Further development of IDAMS components and packages
Management and
organization
Main actors in the initiation and opening phase
 UNESCO Secretariat,
 OpenIDAMS Technical Steering Committee,
 a core network of institutions.
Actors with different role
 supporting institutions.
Actors in the permanent execution phase
 the global free/open source developer and user
community.
UNESCO Secretariat
 Being the conceiver, the UNESCO Secretariat is the
organizer and supervisor of the project,
 Related tasks are to be assumed by the Information Society
Division of the Communication and Information Sector
(CI/INF),
 Within the Division by IT professionals specialized in
software development.
Technical Steering
Committee (1)
The
OpenIDAMS
Technical
Steering
Committee
(OpenIDAMS TSC)
 takes decisions about tasks and
 has authority to make changes to established
operational rules.
Mandate of the TSC
 set and validate system specifications and features;
 design the "kernel", monitor, participate in coding,
testing, documentation
 assure conceptual integrity of the design and
architecture,
Technical Steering
Committee (2)
Mandate of the TSC (continuation)
 make decisions about the design and the technical
standards;
 provide technical guidelines;
 define working method details (working rules, among
others);
 assure peer-review;
 establish mechanisms for conflict resolution;
 review proposals for inserting new features;
 do and stimulate fund raising.
Core network of
institutions
 Escuela Colombiana de Ingeniería "Julio Garavito" (ECI),
Colombia,
 Consorzio interuniversitario per le Applicazioni di
Supercalcolo per Università e Ricerca (CASPUR),
University of Rome "La Sapienza", Italy,
 Cairo University, Faculty of Computers & Information,
Egypt,
 ALECSO, in co-operation with the Cairo University,
 Baku Scientific and Training Centre, Azerbaijan republic,
 Russian State Hydrometeorological University, Russian
Federation.
Supporting institutions
 United Nations Economic Commission For Africa
(UNECA)
 Arab League Educational Cultural and Scientific
Organization (ALECSO)
Developer and user
community
 Institutions (universities, research and software
developer organizations, etc.)
 Individuals (data exploration and information
technology professionals)
Working methods
Agile Software Development – combination of specific
software development and project management practices with
an explicit organizational perspective that enables teams to
deliver software products in volatile business and technology
situations:
 modularity - kernel and plans for its future development
and extension are organized around small, manageable
pieces,
 iterative/incremental development,
 parallel development,
 rapid development process.
Working rules
 What actions are required, prohibited or permitted,
 What sanctions are authorized if someone breaks these
rules,
 Formally written rules or norms of behaviour understood
and shared by a community,
 Followed at least most of the time,
 Three levels
Operational,
Collective-choice, and
Constitutional-choice rules
Operational rules
Operational rules define what actors can or cannot do at
certain levels of authority within the project community
hierarchy
 direct the daily decisions and actions of actors involved
in an open source project,
 specify how new module submissions are managed,
 how new design strategies are defined,
 when new versions are released, etc.
Two important areas
(1) the system of peer-review and
(2) established mechanisms for conflict resolution.
Collective-choice
rules
Collective-choice rules
 specify who is eligible to craft or change operationallevel rules,
 define the procedures for changing established rules.
Project leader who
 has total authority over making and changing
operational rules and can do this at any time;
Project oversight body - a committee of core developers who
 make decisions about the operations of the project and
 have authority to make changes to established
operational rules.
Constitutional-choice
rules
A kind of project Constitution
 defines who is eligible to create or change Collectivechoice level rules,
 specifying who (or what positions in the project
community) possess these rights,
 outlines procedures for making changes in collectivechoice arrangements.
Project schedule
 Availability of the OpenIDAMS “kernel” (produced by the
UNESCO Secretariat, the OpenIDAMS TSC and already
committed core institutions) - by end of March 2005.
 First version of the standard OpenIDAMS application
modules and user interface components (based already on
contribution from the global open source developer
community) - by the end of the year 2005.
 First release of the general purpose OpenIDAMS package
with graphical user interface along with OpenIDAMS based
packages for specific applications – by the end of the year
2006.