Title: Presentation of WP4 ICONS Architecture Based on D16, D14, D15, D17
1 Presentation of WP4 ICONS ArchitectureBased on
D16, D14, D15, D17
- Bartosz Nowicki
- Rodan Systems S.A.
2from research, via design, to the platform
development, to end up with the demonstrator
deployment
3D16Specification of the ICONS architecture
4Objectives
- the major deliverable of the 2nd semester
- gathers all research and technological results
- puts them into a manageable and consistent
structure - drives the implementation of the ICONS prototype
in the 3rd semester - necessary for highly distributed development
environment (Rodan is the ICONS primary
integrator but modules will be developed by other
partners)
if we fail to design a high quality architecture,
we will not be able to develop the system in any
case
5Objectives II
- To answer the following questions
- what services will be provided by the system, and
what will be their quality (requirements) - how, on the highest level of abstraction, the
system will be designed (decomposition into
components and their dependencies) - Architecture must be robust and generic enough to
sustain further industrialisation and maintenance
of the ICONS product, to be developed after the
project completion - The document creation process was not as an
ultimate goal but rather as a means or
opportunity to achieve high quality
6Template Overall architecture
- First level decomposition
- Abstract architecture
- Detailed architecture
- Global decisions / System wide solutions
- Diagnostic and logging mechanisms
7Template Modules Level
- General description
- Dictionary
- Usage scenarios
- Control structures
- Functional requirements
- Non-functional requirements
- Administrative requirements
- Interface provided
- Interface required
- Development environment
- Elements of detailed design
8Human/Computer Interaction (HCI) Technologies
Distributed Architecture Technologies
Content Presentation Manager
Knowledge MapGraph Manager
Electronic Form Manager
HCI Personalisation Engine
Structural Knowledge Graph Manager
Process Graph Manager
Load Balancing Algorithms
Knowledge Management Technologies
Distribution Optimisation Algorithms
Semi-structured Content Integrator
Ontology Model Manager
Intelligent Workflow Manager
Datalog Inference Engine
Content Categorisation Engine
Structural Knowledge Navigator
Intelligent Agent Development Environment
Scalable Distributed Data Structure
Content Management Technologies
Distributed Workflow Communication
Content Schema Definition Environment
Workflow Manager
Content Semantic Model Manager
Content Repository Manager
External Content Integrator
Hierarchical Storage Manager
Role Manager
Development Technologies
Main Memory DBMS
Web Application Server
J2EE Development Environment
Security Environment
Object Relational DBMS
Operating System
Full Text Search Engine
- exists, to be selected
- exists, to be expanded
- to be developed
ICONS project focus boarders
9 Human/Computer Interaction (HCI) Technologies
Distributed Architecture Technologies
Content Presentation Manager
Knowledge MapGraph Manager
Electronic Form Manager
Personalisation Engine
Structural Knowledge Graph Manager
Process Graph Manager
Load Balancing Algorithms
Knowledge Management Technologies
Concept Glossary Manager
Uncertainty Reasoning Engine
Knowledge Gate
Scalable Distributed Data Structure
Knowledge Gate
Knowledge Schema Manager
Intelligent Workflow Manager
Datalog Inference Engine
Content Categorisation Engine
Structural Knowledge Navigator
Intelligent Agent Development Environment
Uncertainty Reasoning Engine
Concept Glossary Manager
Distributed Workflow Communication
Content Management Technologies
Stack-based Query Language
Content Schema Definition Environment
Workflow Manager
Content Semantic Index
Content Base Manager
External Content Integrator
Role Manager
Hierarchical Storage Manager
Stack-based Query Language
Development Technologies
Main Memory DBMS
Web Application Server
J2EE Development Environment
Security Environment
Object Relational DBMS
Operating System
Full Text Search Engine
- exists, to be selected
- exists, to be expanded
- to be developed
ICONS project focus boarders
10(No Transcript)
11D16 Summary
- 26 modules
- 50 dependencies
- 387 requirements
- 273 functions
The ICONS architecture is not trivial, as the
functionality of the platform under development
is of vast functionality and high complexity
12D14Specification of the ICONS software
development platform
13D14 Objectives
- to guide the ICONS platform development process
- major activities detailed design, coding,
integration - addresses the issues relevant to these
activities table of contents for modules
detailed design, design tools, integrated
development environment for code development,
coding practices and configuration management. - balance between the two ambitions of the ICONS
project - to provide a comprehensive proof of concept for
the ICONS research - to produce a stable and maintainable software
platform to be further industrialised and turned
into a product - distributed development
14Detailed design
- to specify how (technically) components are to be
implemented - important and detailed design decisions are
explicitly presented - abstraction level is kept higher than programming
language - allows for verifiability and, consequently,
selecting the optimal solutions. - complements the architectural design ICONS D16
- presents internal mechanisms that must be applied
to meet external specifications
15Template for the detailed design
- Class design
- Database design Logical structure, Views, Order
of tables creation, Integrity constraints
presentation, Triggers description, Stored
procedures description - Specification of algorithms
- User interface design
- Solution for distribution and parallelism
- Diagnostic system
- Design of other solution
16Design Tools
- VISIO
- ArgoUML
- NetBeans
- J2EE
- J2EE relevant technologies (JASS, JAXB, log4J,
JADE, ...)
Integrated development environment
17Coding practices
- JAVA Code Conventions from java.sun.com/docs/codec
onv/ - support for (automatic) generation of components
documentation from Javadoc - the tool from Sun
Microsystems for generating API documentation in
HTML format from doc comments in source code
18Configuration management
- ICONS repository based on CVS (Concurrent
Versions System), the dominant open-source
network-transparent version control system - ICONS repository structure
- based on architecture decomposition
- per module structure
- technical_documentation detailed_design,
programmers_guide, administrators_guide
(administrators guide , doc file) - source_code java, database
- binaries
- tools
- quality_assurance
19Bug tracker
- especially important during final integration and
acceptance testing - to manage all the identified errors
- the selected tool Scarab, an Issue / Defect
tracking system that allows for data entry,
queries, reports, notifications to interested
parties, collaborative accumulation of comments,
dependency tracking etc.
20D15Installation of the integrated ICONS software
development platform
21Installation of the integrated ICONS software
development platform
- just an inventory of the available ICONS
compounding software modules - ICONS platform is built from loosely coupled
modules contributed by ICONS partners - the module come from the open source community as
well as developed within the project - the modules are available in the software
repository as defined in ICONS D14
22D17The ICONS prototype implementation plan
23Implementation critical issues
- ICONS is a complex system of broad functionality,
- a generalised platform (rather than a concrete
application) additionally impacts the system
complexity, - integration is a difficult task even with perfect
modules, - perfecting local functionality is a never ending
process, - half a year period is a really short time period,
- the ICONS demonstrator development requires the
most fundamental functionality available
the major risk lack of the ICONS integrated
platform of the required functionality at the
beginning of July 2003
24Implementation principles
- Strict goal orientation (to build the complete
platform rather than a set of perfect but not
co-operating modules), - Well defined and reasonably small functional
increments (starting from indispensable
functionality, through required but not
necessary functionality and ... abandoning
possible extensions), - Early and frequent integration points (to
stimulate convergence among separately developed
modules), - Personal contact of developers (to increase
understanding and minimise communication effort), - Refactoring of ineffective, inefficient and
obsolete solutions
25 26Implementation Gantt Chart
27Resources
- partners modules
- Rodans responsible
Responsibilities
28WP4 Results
- ICONS D16 answers the question what is to be
developed? as it provides architectural design
level decisions, interfaces specification and
description of the required functionality the
report settlements will be further refined within
ICONS D21, - ICONS D14 answers the question how it is to be
developed (in the sense of engineering process)
as it specifies tools and methods as well as
provides comprehensive guidelines for the sound
development process , - ICONS D15 provides an inventory of the
available compounding software modules, - ICONS D17 imposes managerial constraints on the
development process expressed in terms of goals,
deadlines and resources.
29WP4 results M4 achieved
- M4 - Acceptance of the ICONS architecture.
- The stage for the ICONS prototype implementation
is set. - The selected development software environments
are identified and established. - System is decomposed, identified modules
functionality is documented and cross-verified,
all system interfaces are agreed upon and frozen
in the architecture specification. - The detailed implementation plan is formulated
and accepted