We describe the model-driven implementation of the BG Export Control System phase 2 (ECS2):
• What is ECS2
• Tools and Technologies
• Data Model
• Model-Driven Generation
• System Architecture
• Business Process Modeling and BPMS
• XPath-based DSL (Assignments, Rules and Conditions)
• GUI Generation and Features
• Deployment Model
Implementing complex e-Government solutions with open source and BPM: Archite...Vladimir Alexiev, PhD, PMP
The document discusses an export control system project called ECS2 that was implemented for the Bulgarian government using open source tools and a business process management system (BPMS). It provides an overview of the project goals, challenges with the previous system, and the technologies selected for ECS2 including the JBoss application server, JBoss Messaging, jBPM BPMS, and frameworks like JSF, Hibernate and Seam.
CORBA is a standard defined by OMG that enables systems on different operating systems, languages, and hardware to communicate. It uses IDL to specify interfaces and maps them to implementation languages like Java and C++. CORBA allows programs running on different machines written in different languages to work together over a network like a flight booking system. It uses stubs and skeletons as proxies for remote objects. RMI also enables remote communication between Java applications using stubs on the client side and skeletons on the server side to call methods on remote objects.
RMI and CORBA Why both are valuable toolselliando dias
This document summarizes the key differences between RMI and CORBA. RMI is a pure Java solution that is integrated into the Java platform and allows for dynamic codebase and object-oriented communication. CORBA supports multiple languages but is harder to use, requires additional infrastructure, and only allows for structured communication through IDL definitions. Both tools are continually evolving, with RMI improving performance and CORBA working to support pass by value across heterogeneous systems. While each has strengths for certain problems, both RMI and CORBA provide valuable tools for building distributed systems.
E-Government and E-Health Strategies by Mrs. Veronica Boateng,Director, Application Systems Ghana Information and Communications Technology Directorate (GICTeD)
The document discusses e-governance and related concepts. It defines e-governance as the interaction between government and citizens and government and businesses using electronic means. It describes common e-governance models like G2C, G2B, and G2G. The document also outlines four phases of e-governance maturity: information, interaction, transaction, and transformation. Finally, it discusses challenges to e-governance development in Bangladesh and how e-governance can help improve transparency, efficiency and accountability.
The document discusses an e-government reference model presented by Alexander Samarin at the Global e-Government Forum 2014. It begins with an introduction to e-government and discusses the complexity of implementing e-government systems. It then presents the need for an e-government reference model to balance diversity and uniformity across different governmental entities. The remainder of the document outlines Samarin's proposed e-government reference model, including using an enterprise architecture approach and various views such as partner interactions, evolutionary application architectures, and platform-based implementation.
This document discusses e-governance and its implementation in Bangladesh. It defines e-governance as using modern technologies like the internet to improve government effectiveness, efficiency and service delivery. It describes the key components of e-governance as interactions between government and citizens (G2C), government and businesses (G2B), and within government (G2G). Challenges to e-governance in Bangladesh include limited infrastructure, costs, and lack of technical expertise. Successful implementation requires long-term planning, building partnerships, and addressing funding challenges.
E-governance refers to the use of information technologies by government agencies to provide services to citizens. It aims to make governance more transparent, increase citizen participation, and provide efficient public services. Key components of e-governance include technological, social, cultural, political, and service aspects. Some examples of e-governance initiatives in India include programs implemented by the customs and excise department, Indian railways, and state governments like Andhra Pradesh and Himachal Pradesh. Challenges to e-governance in India include a lack of integrated services, key personnel, and differences in languages across populations. Successful implementation of e-governance can provide better access to information, accountability, and more
Implementing complex e-Government solutions with open source and BPM: Archite...Vladimir Alexiev, PhD, PMP
The document discusses an export control system project called ECS2 that was implemented for the Bulgarian government using open source tools and a business process management system (BPMS). It provides an overview of the project goals, challenges with the previous system, and the technologies selected for ECS2 including the JBoss application server, JBoss Messaging, jBPM BPMS, and frameworks like JSF, Hibernate and Seam.
CORBA is a standard defined by OMG that enables systems on different operating systems, languages, and hardware to communicate. It uses IDL to specify interfaces and maps them to implementation languages like Java and C++. CORBA allows programs running on different machines written in different languages to work together over a network like a flight booking system. It uses stubs and skeletons as proxies for remote objects. RMI also enables remote communication between Java applications using stubs on the client side and skeletons on the server side to call methods on remote objects.
RMI and CORBA Why both are valuable toolselliando dias
This document summarizes the key differences between RMI and CORBA. RMI is a pure Java solution that is integrated into the Java platform and allows for dynamic codebase and object-oriented communication. CORBA supports multiple languages but is harder to use, requires additional infrastructure, and only allows for structured communication through IDL definitions. Both tools are continually evolving, with RMI improving performance and CORBA working to support pass by value across heterogeneous systems. While each has strengths for certain problems, both RMI and CORBA provide valuable tools for building distributed systems.
E-Government and E-Health Strategies by Mrs. Veronica Boateng,Director, Application Systems Ghana Information and Communications Technology Directorate (GICTeD)
The document discusses e-governance and related concepts. It defines e-governance as the interaction between government and citizens and government and businesses using electronic means. It describes common e-governance models like G2C, G2B, and G2G. The document also outlines four phases of e-governance maturity: information, interaction, transaction, and transformation. Finally, it discusses challenges to e-governance development in Bangladesh and how e-governance can help improve transparency, efficiency and accountability.
The document discusses an e-government reference model presented by Alexander Samarin at the Global e-Government Forum 2014. It begins with an introduction to e-government and discusses the complexity of implementing e-government systems. It then presents the need for an e-government reference model to balance diversity and uniformity across different governmental entities. The remainder of the document outlines Samarin's proposed e-government reference model, including using an enterprise architecture approach and various views such as partner interactions, evolutionary application architectures, and platform-based implementation.
This document discusses e-governance and its implementation in Bangladesh. It defines e-governance as using modern technologies like the internet to improve government effectiveness, efficiency and service delivery. It describes the key components of e-governance as interactions between government and citizens (G2C), government and businesses (G2B), and within government (G2G). Challenges to e-governance in Bangladesh include limited infrastructure, costs, and lack of technical expertise. Successful implementation requires long-term planning, building partnerships, and addressing funding challenges.
E-governance refers to the use of information technologies by government agencies to provide services to citizens. It aims to make governance more transparent, increase citizen participation, and provide efficient public services. Key components of e-governance include technological, social, cultural, political, and service aspects. Some examples of e-governance initiatives in India include programs implemented by the customs and excise department, Indian railways, and state governments like Andhra Pradesh and Himachal Pradesh. Challenges to e-governance in India include a lack of integrated services, key personnel, and differences in languages across populations. Successful implementation of e-governance can provide better access to information, accountability, and more
Discovering Vulnerabilities For Fun and ProfitAbhisek Datta
This document discusses discovering vulnerabilities for fun and profit. It introduces the author and their security tools and research involving Microsoft Office, IBM Tivoli Endpoint Manager, HP Siteprotect, and more. It describes techniques like fuzzing, mutation generation, and attack surface analysis that were used to find vulnerabilities. XML mutation and attribute fuzzing of Microsoft OOXML formats are highlighted. Architecture analysis, intercepting traffic, and developing custom tools are discussed for fuzzing IBM Tivoli EM and analyzing the Dameware Mini Remote Control binary protocol. The document concludes by discussing ongoing security research and a balance between finding vulnerabilities and developing secure systems.
The document discusses 3D PDF (Portable Document Format), which allows 3D models and other technical data to be embedded and shared through standard PDF files. It provides an overview of 3D PDF content standards and capabilities for visualization and communication. The 3DPDF Consortium is introduced as a non-profit organization working to promote adoption of 3D PDF across industries through standards development, education, and case studies. Members can help define priorities and provide technical input to benefit their organizations and influence the 3D PDF standard.
This document discusses best practices for building large GWT applications and introduces the Errai project. It covers decomposing applications into components to address different features, coupling issues between components, and how Errai addresses these challenges through its message bus, workspace framework, and widgets library. Errai provides a common architecture across client and server through asynchronous messaging and enables a federated application architecture.
The document discusses a tool called the BizTalk Migrator that helps migrate BizTalk applications to Azure Integration Services. It summarizes the tool's capabilities like discovering and parsing BizTalk artifacts. It also discusses what is and isn't supported when migrating things like adapters, pipelines, and orchestrations. The document provides installation instructions and highlights differences between the original and migrated applications that users may encounter.
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiSoftware Guru
This document discusses the evolution of the Java platform and what it means for developers. It outlines new features in Java 7 and 8, including Project Coin improvements to the language, modularity in JDK 8, and enhancements to the Java EE platform like support for clouds. It also discusses Oracle's strategy of converging the JDK and JRockit to deliver performance and manageability features.
Abstract
The idea of this talk is to help development teams to make correct architectural decisions.
Andrei will highlight the basic architectural principles and show ways to achieve architecture that is good enough to cover the project requirements and evolve in the future.
He will also present several cases from real projects, where wrong, missing, or over-sophisticated architecture decisions really hurt the development teams:
- Painful sharing: do shared modules increase reusability or will be the source of problems?
- Microservices are the solution to every problem!
- Non-extensible extensibility: too sophisticated configuration hurts
- Over fine-grained: incorrect splitting to Microservices can make life even harder as with monolith
- Convey horizontal split: how organizational driven split can jeopardise the architecture
- Model-driven: central responsibility blocks and limits the team
- Cargo cult: blindly following patterns and rule can produce an unmaintainable system
- Freestyle architecture: what happens if teams completely ignore architecture
- Improve with less intelligence: smart endpoint and dumb pipes
Abstract
The idea of this talk is to help development teams to make correct architectural decisions.
Andrei will highlight the basic architectural principles and show ways to achieve architecture that is good enough to cover the project requirements and evolve in the future.
He will also present several cases from real projects, where wrong, missing, or over-sophisticated architecture decisions really hurt the development teams:
- Painful sharing: do shared modules increase reusability or will be the source of problems?
- Microservices are the solution to every problem!
- Non-extensible extensibility: too sophisticated configuration hurts
- Over fine-grained: incorrect splitting to Microservices can make life even harder as with monolith
- Convey horizontal split: how organizational driven split can jeopardise the architecture
- Model-driven: central responsibility blocks and limits the team
- Cargo cult: blindly following patterns and rule can produce an unmaintainable system
- Freestyle architecture: what happens if teams completely ignore architecture
- Improve with less intelligence: smart endpoint and dumb pipes
Presentation held by Mr.Goce Bogatinov and Mr. Jordan Tikvesanski as a part of the - Cooperation between academia and ICT businesses Session at the 8th SEEITA and 7th MASIT Open Days Conference, 14th-15th October, 2010
This document discusses configuring Cisco devices using Puppet and Chef automation tools. It provides an overview of:
- The benefits of automated configuration vs manual configuration such as reliability, auditing, and drift correction.
- How Puppet and Chef work by maintaining configuration state in code and transitioning systems from current to desired state in an idempotent way.
- Key components of Puppet like the Puppet master, catalogs, and Puppet agents. And key components of Chef like the Chef server, cookbooks, recipes, and Chef clients.
- Cisco's One-PK which provides an API and SDK for developing applications to control and configure Cisco devices, and how Puppet and Chef agents are
Patterns and Pains of Migrating Legacy Applications to KubernetesQAware GmbH
Open Source Summit 2018, Vancouver (Canada): Talk by Josef Adersberger (@adersberger, CTO at QAware), Michael Frank (Software Architect at QAware) and Robert Bichler (IT Project Manager at Allianz Germany)
Abstract:
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud-native apps. But what to do if you’ve no shiny new cloud-native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
Patterns and Pains of Migrating Legacy Applications to KubernetesJosef Adersberger
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs, and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud native apps. But what to do if you’ve no shiny new cloud native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
SharePoint Best Practices Conference 2013Mike Brannon
1) National Gypsum was using multiple outdated platforms for document management and collaboration that did not meet compliance requirements. This led to exponential file growth and difficulties in using and managing content.
2) The company implemented SharePoint across several phases to consolidate platforms and provide a single solution for portal, intranet, records management, eDiscovery and collaboration needs.
3) Future plans included extending the SharePoint implementation to more users, building applications, improving search and analytics capabilities, and automating records management and eDiscovery functions.
Mihai Nuta has over 14 years of experience developing computer systems and applications. He has extensive experience with technologies like Visual Basic, SQL, Oracle, and .NET. Currently he works as a senior programmer analyst at Xerox Corporation developing applications for General Motors, including a legal document application and tools for processing images and documents. He has strong skills in databases, web and client/server development, and software like Microsoft Office, SQL Server, and Visual Studio.
This document discusses best practices for building large GWT applications and introduces the Errai project. It addresses challenges like decomposing applications into components, handling coupling between components, and dealing with services that components depend on. Solutions proposed include compile-time composition using deferred binding, MVC and pub/sub architectures, and bootstrapping capabilities via messaging. The Errai project aims to consolidate GWT efforts by providing a messaging bus, workspace framework, and widget library to help build federated, asynchronously communicating applications.
The document discusses Foresight, a clinical decision support system (CDSS). It provides definitions of foresight and describes why the software is named Foresight. It outlines some of the key problems Foresight addresses for a CDSS, including monitoring clinical events in real-time, housing shared clinical logic across applications, and surfacing outcomes to business staff. The document contrasts Foresight with other types of systems and outlines its architecture, core components, and timeline of development from versions 1.0 to 2.0.
This document discusses best practices for structuring large GWT applications. It addresses challenges like supporting different features based on runtime, development stage, or audience. Solutions proposed include using plugins determined at compile-time and a publish/subscribe messaging system. Another challenge is enabling server-side capabilities to change, like for different environments. Bootstrapping and messaging with presence are offered as solutions. The document then introduces Project Errai, which consolidates JBoss GWT efforts. Errai-Bus provides an asynchronous messaging backbone. Errai-Workspaces define UI environments. Errai Widgets complement open-source widget libraries. The techniques aim to provide a common architecture and enable independent component composition.
Software Architecture and Architectors: useless VS valuableComsysto Reply GmbH
The document discusses several cases where architecture decisions hurt software teams. It provides lessons learned from each case:
- Overly sharing code across domains can cause dependencies and fragility. Architectural boundaries should separate domains.
- Attempting to satisfy all use cases with a single highly configurable solution often satisfies no one. Specific solutions may be preferable.
- Microservices are not a universal solution and will not improve a flawed design alone. Modules should only be split across microservices at domain boundaries.
- Systems need to be designed to evolve dynamically over time as requirements change. Centralized control hinders this.
"Semantic Integration Is What You Do Before The Deep Learning". dev.bg Machine Learning seminar, 13 May 2019.
It's well known that 80\% of the effort of a data scientist is spent on data preparation. Semantic integration is arguably the best way to spend this effort more efficiently and to reuse it between tasks, projects and organizations. Knowledge Graphs (KG) and Linked Open Data (LOD) have become very popular recently. They are used by Google, Amazon, Bing, Samsung, Springer Nature, Microsoft Academic, AirBnb… and any large enterprise that would like to have a holistic (360 degree) view of its business. The Semantic Web (web 3.0) is a way to build a Giant Global Graph, just like the normal web is a Global Web of Documents. IEEE already talks about Big Data Semantics. We review the topic of KGs and their applicability to Machine Learning.
The Galleries, Libraries, Archives and Museums (GLAM) sector deals with complex and varied data. Integrating that data, especially across institutions, has always been a challenge. Semantic data integration is the best approach to deal with such challenges. Linked Open Data (LOD) enable large-scale Digital Humanities (DH) research, collaboration and aggregation, allowing DH researchers to make connections between (and make sense of) the multitude of digitized Cultural Heritage (CH) available on the web. An upsurge of interest in semtech and LOD has swept the CH and DH communities. An active Linked Open Data for Libraries, Archives and Museums (LODLAM) community exists, CH data is published as LOD, and international collaborations have emerged. The value of LOD is especially high in the GLAM sector, since culture by its very nature is cross-border and interlinked. We present interesting LODLAM projects, datasets, and ontologies, as well as Ontotext's experience in this domain. An extended paper on these topics is also available. It has 77 pages, 67 figures, detailed info about CH content and XML standards, Wikidata and global authority control.
More Related Content
Similar to Cost-effective e-Government Services: Export Control System phase 2 (ECS2)
Discovering Vulnerabilities For Fun and ProfitAbhisek Datta
This document discusses discovering vulnerabilities for fun and profit. It introduces the author and their security tools and research involving Microsoft Office, IBM Tivoli Endpoint Manager, HP Siteprotect, and more. It describes techniques like fuzzing, mutation generation, and attack surface analysis that were used to find vulnerabilities. XML mutation and attribute fuzzing of Microsoft OOXML formats are highlighted. Architecture analysis, intercepting traffic, and developing custom tools are discussed for fuzzing IBM Tivoli EM and analyzing the Dameware Mini Remote Control binary protocol. The document concludes by discussing ongoing security research and a balance between finding vulnerabilities and developing secure systems.
The document discusses 3D PDF (Portable Document Format), which allows 3D models and other technical data to be embedded and shared through standard PDF files. It provides an overview of 3D PDF content standards and capabilities for visualization and communication. The 3DPDF Consortium is introduced as a non-profit organization working to promote adoption of 3D PDF across industries through standards development, education, and case studies. Members can help define priorities and provide technical input to benefit their organizations and influence the 3D PDF standard.
This document discusses best practices for building large GWT applications and introduces the Errai project. It covers decomposing applications into components to address different features, coupling issues between components, and how Errai addresses these challenges through its message bus, workspace framework, and widgets library. Errai provides a common architecture across client and server through asynchronous messaging and enables a federated application architecture.
The document discusses a tool called the BizTalk Migrator that helps migrate BizTalk applications to Azure Integration Services. It summarizes the tool's capabilities like discovering and parsing BizTalk artifacts. It also discusses what is and isn't supported when migrating things like adapters, pipelines, and orchestrations. The document provides installation instructions and highlights differences between the original and migrated applications that users may encounter.
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiSoftware Guru
This document discusses the evolution of the Java platform and what it means for developers. It outlines new features in Java 7 and 8, including Project Coin improvements to the language, modularity in JDK 8, and enhancements to the Java EE platform like support for clouds. It also discusses Oracle's strategy of converging the JDK and JRockit to deliver performance and manageability features.
Abstract
The idea of this talk is to help development teams to make correct architectural decisions.
Andrei will highlight the basic architectural principles and show ways to achieve architecture that is good enough to cover the project requirements and evolve in the future.
He will also present several cases from real projects, where wrong, missing, or over-sophisticated architecture decisions really hurt the development teams:
- Painful sharing: do shared modules increase reusability or will be the source of problems?
- Microservices are the solution to every problem!
- Non-extensible extensibility: too sophisticated configuration hurts
- Over fine-grained: incorrect splitting to Microservices can make life even harder as with monolith
- Convey horizontal split: how organizational driven split can jeopardise the architecture
- Model-driven: central responsibility blocks and limits the team
- Cargo cult: blindly following patterns and rule can produce an unmaintainable system
- Freestyle architecture: what happens if teams completely ignore architecture
- Improve with less intelligence: smart endpoint and dumb pipes
Abstract
The idea of this talk is to help development teams to make correct architectural decisions.
Andrei will highlight the basic architectural principles and show ways to achieve architecture that is good enough to cover the project requirements and evolve in the future.
He will also present several cases from real projects, where wrong, missing, or over-sophisticated architecture decisions really hurt the development teams:
- Painful sharing: do shared modules increase reusability or will be the source of problems?
- Microservices are the solution to every problem!
- Non-extensible extensibility: too sophisticated configuration hurts
- Over fine-grained: incorrect splitting to Microservices can make life even harder as with monolith
- Convey horizontal split: how organizational driven split can jeopardise the architecture
- Model-driven: central responsibility blocks and limits the team
- Cargo cult: blindly following patterns and rule can produce an unmaintainable system
- Freestyle architecture: what happens if teams completely ignore architecture
- Improve with less intelligence: smart endpoint and dumb pipes
Presentation held by Mr.Goce Bogatinov and Mr. Jordan Tikvesanski as a part of the - Cooperation between academia and ICT businesses Session at the 8th SEEITA and 7th MASIT Open Days Conference, 14th-15th October, 2010
This document discusses configuring Cisco devices using Puppet and Chef automation tools. It provides an overview of:
- The benefits of automated configuration vs manual configuration such as reliability, auditing, and drift correction.
- How Puppet and Chef work by maintaining configuration state in code and transitioning systems from current to desired state in an idempotent way.
- Key components of Puppet like the Puppet master, catalogs, and Puppet agents. And key components of Chef like the Chef server, cookbooks, recipes, and Chef clients.
- Cisco's One-PK which provides an API and SDK for developing applications to control and configure Cisco devices, and how Puppet and Chef agents are
Patterns and Pains of Migrating Legacy Applications to KubernetesQAware GmbH
Open Source Summit 2018, Vancouver (Canada): Talk by Josef Adersberger (@adersberger, CTO at QAware), Michael Frank (Software Architect at QAware) and Robert Bichler (IT Project Manager at Allianz Germany)
Abstract:
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud-native apps. But what to do if you’ve no shiny new cloud-native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
Patterns and Pains of Migrating Legacy Applications to KubernetesJosef Adersberger
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs, and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud native apps. But what to do if you’ve no shiny new cloud native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
SharePoint Best Practices Conference 2013Mike Brannon
1) National Gypsum was using multiple outdated platforms for document management and collaboration that did not meet compliance requirements. This led to exponential file growth and difficulties in using and managing content.
2) The company implemented SharePoint across several phases to consolidate platforms and provide a single solution for portal, intranet, records management, eDiscovery and collaboration needs.
3) Future plans included extending the SharePoint implementation to more users, building applications, improving search and analytics capabilities, and automating records management and eDiscovery functions.
Mihai Nuta has over 14 years of experience developing computer systems and applications. He has extensive experience with technologies like Visual Basic, SQL, Oracle, and .NET. Currently he works as a senior programmer analyst at Xerox Corporation developing applications for General Motors, including a legal document application and tools for processing images and documents. He has strong skills in databases, web and client/server development, and software like Microsoft Office, SQL Server, and Visual Studio.
This document discusses best practices for building large GWT applications and introduces the Errai project. It addresses challenges like decomposing applications into components, handling coupling between components, and dealing with services that components depend on. Solutions proposed include compile-time composition using deferred binding, MVC and pub/sub architectures, and bootstrapping capabilities via messaging. The Errai project aims to consolidate GWT efforts by providing a messaging bus, workspace framework, and widget library to help build federated, asynchronously communicating applications.
The document discusses Foresight, a clinical decision support system (CDSS). It provides definitions of foresight and describes why the software is named Foresight. It outlines some of the key problems Foresight addresses for a CDSS, including monitoring clinical events in real-time, housing shared clinical logic across applications, and surfacing outcomes to business staff. The document contrasts Foresight with other types of systems and outlines its architecture, core components, and timeline of development from versions 1.0 to 2.0.
This document discusses best practices for structuring large GWT applications. It addresses challenges like supporting different features based on runtime, development stage, or audience. Solutions proposed include using plugins determined at compile-time and a publish/subscribe messaging system. Another challenge is enabling server-side capabilities to change, like for different environments. Bootstrapping and messaging with presence are offered as solutions. The document then introduces Project Errai, which consolidates JBoss GWT efforts. Errai-Bus provides an asynchronous messaging backbone. Errai-Workspaces define UI environments. Errai Widgets complement open-source widget libraries. The techniques aim to provide a common architecture and enable independent component composition.
Software Architecture and Architectors: useless VS valuableComsysto Reply GmbH
The document discusses several cases where architecture decisions hurt software teams. It provides lessons learned from each case:
- Overly sharing code across domains can cause dependencies and fragility. Architectural boundaries should separate domains.
- Attempting to satisfy all use cases with a single highly configurable solution often satisfies no one. Specific solutions may be preferable.
- Microservices are not a universal solution and will not improve a flawed design alone. Modules should only be split across microservices at domain boundaries.
- Systems need to be designed to evolve dynamically over time as requirements change. Centralized control hinders this.
Similar to Cost-effective e-Government Services: Export Control System phase 2 (ECS2) (20)
"Semantic Integration Is What You Do Before The Deep Learning". dev.bg Machine Learning seminar, 13 May 2019.
It's well known that 80\% of the effort of a data scientist is spent on data preparation. Semantic integration is arguably the best way to spend this effort more efficiently and to reuse it between tasks, projects and organizations. Knowledge Graphs (KG) and Linked Open Data (LOD) have become very popular recently. They are used by Google, Amazon, Bing, Samsung, Springer Nature, Microsoft Academic, AirBnb… and any large enterprise that would like to have a holistic (360 degree) view of its business. The Semantic Web (web 3.0) is a way to build a Giant Global Graph, just like the normal web is a Global Web of Documents. IEEE already talks about Big Data Semantics. We review the topic of KGs and their applicability to Machine Learning.
The Galleries, Libraries, Archives and Museums (GLAM) sector deals with complex and varied data. Integrating that data, especially across institutions, has always been a challenge. Semantic data integration is the best approach to deal with such challenges. Linked Open Data (LOD) enable large-scale Digital Humanities (DH) research, collaboration and aggregation, allowing DH researchers to make connections between (and make sense of) the multitude of digitized Cultural Heritage (CH) available on the web. An upsurge of interest in semtech and LOD has swept the CH and DH communities. An active Linked Open Data for Libraries, Archives and Museums (LODLAM) community exists, CH data is published as LOD, and international collaborations have emerged. The value of LOD is especially high in the GLAM sector, since culture by its very nature is cross-border and interlinked. We present interesting LODLAM projects, datasets, and ontologies, as well as Ontotext's experience in this domain. An extended paper on these topics is also available. It has 77 pages, 67 figures, detailed info about CH content and XML standards, Wikidata and global authority control.
This document provides an overview of linked open data (LOD), ontologies, and cultural heritage projects and datasets. It begins with definitions of semantic technologies, ontologies, and LOD. It then discusses several key ontologies used for cultural heritage data, including CIDOC CRM, Schema.org, and Wikidata. The document outlines several LOD projects focused on cultural heritage, including Europeana, ResearchSpace, American Art Collaborative, and ConservationSpace. It provides examples of semantic searches and annotations using these ontologies and projects. In summary, the document introduces the concepts of LOD and relevant ontologies, and highlights several major cultural heritage projects that apply these semantic technologies.
Invited report at Digital Presentation and Preservation of Cultural and Scientific Heritage (DIPP 2018), Burgas, Bulgaria. Report: http://dipp.math.bas.bg/images/2018/019-050_32_11-iDiPP2018-34.pdf
Ontotext provides concise summaries in 3 sentences or less that provide the high level and essential information from the document.
Ontotext is a software company that works on semantic technologies and knowledge graphs for cultural heritage and digital humanities projects. They have developed applications like ResearchSpace for museums and ConservationSpace for conservation specialists. They also contribute linked open data to projects like Europeana, Wikidata, and DBpedia and provide consulting services to institutions like museums and national aggregators.
Semantic Archive Integration for Holocaust Research: the EHRI Research Infras...Vladimir Alexiev, PhD, PMP
The European Holocaust Research Infrastructure (EHRI) is a large-scale EU project that involves 23 institutions and archives working on Holocaust studies, from Europe, Israel and the US. In its first phase (2011-2015) it aggregated archival descriptions and materials on a large scale and built a Virtual Research Environment (portal) for Holocaust researchers based on a graph database.
In its second phase (2015-2019), EHRI2 seeks to enhance the gathered materials using semantic approaches: enrichment, coreferencing, interlinking. Semantic integration involves four of the 14 EHRI2 work packages and helps integrate databases, free text, and metadata to interconnect historical entities (people, organizations, places, historic events) and create networks. We will present some of the EHRI2 technical work, including critical issues we have encountered.
WP10 (EAD) converts archival descriptions from various formats to standard EAD XML; transports EADs using OAI PMH or ResourceSync; ingests EADs to the EHRI database; enables use cases such as synchronization; coreferencing of textual Access Points to proper thesaurus references
WP11 (Authorities and Standards) consolidates and enlarges the EHRI authorities to render the indexing and retrieval of information more effective. It addresses Access Points in ingested EADs (normalization of Unicode, spelling, punctuation; deduplication; clustering; coreferencing to authority control), Subjects (deployment of a Thesaurus Management System in support of the EHRI Thesaurus Editorial Board), Places (coreferencing to Geonames); Camps and Ghettos (integrating data with Wikidata); Persons, Corporate Bodies (using USHMM HSV and VIAF); semantic (conceptual) search including hierarchical query expansion; interconnectivity of archival descriptions; permanent URLs; metadata quality; EAD RelaxNG and Schematron schemas and validation, etc.
WP13 (Data Infrastructures) builds up domain knowledge bases from institutional databases by using deduplication, semantic data integration, semantic text analysis. It provides the foundation for research use cases on Jewish Social Networks and their impact on the chance of survival.
WP14 (Digital Historiography Research) works on semantic text analysis (semantic enrichment), text similarity (e.g. clustering based on Neural Networks, LDA, etc), geo-mapping. It develops Digital Historiography researcher tools, including Prosopographical approaches.
How GLAMs can use Wikipedia/Wikidata to make their collections globally accessible across languages.
Europeana Food and Drink content providers workshop, Athens, 18 May 2015
Wikidata is being considered as a target for Europeana's semantic strategy to enrich metadata and link cultural heritage objects. Wikidata provides multilingual information on entities like people, organizations, places and concepts from Wikipedia. It has potential to help solve Europeana's challenges around data diversity, quality and interlinking due to its connections to other vocabularies and ability to perform automatic enrichment. Europeana aims to semantically enrich its data and link objects to Wikidata entities to provide additional context. Content providers are also encouraged to contribute information to Wikidata to further enhance the semantic knowledge graph.
Europeana Food and Drink annual meeting, 20 Mar 2015, Athens, Greece. Full report: http://vladimiralexiev.github.io/pubs/Europeana-Food-and-Drink-Classification-Scheme-(D2.2).pdf
Information School, University of Washington, 2014-05-21: INFX 598 - Introducing Linked Data: concepts, methods and tools. Guest lecture (Module 9) "Doing Business with Semantic Technologies": Introduction to Ontotext and some of its products, clients and projects.
Also see video:https://voicethread.com/myvoice/#thread/5784646/29625471/31274564
Triplestores and inference, applications in Finance, text-mining. Projects and solutions for financial media and publishers.
Keystone Industrial Panel, ISWC 2014, Riva del Garda, 18 Oct 2014.
Thanks to Atanas Kiryakov for this presentation, I just cut it to size.
Full version of http://www.slideshare.net/valexiev1/gvp-lodcidocshort. Same is available on http://vladimiralexiev.github.io/pres/20140905-CIDOC-GVP/index.html
CIDOC Congress, Dresden, Germany
2014-09-05: International Terminology Working Group: full version.
2014-09-09: Getty special session: short version
CIDOC Congress, Dresden, Germany
2014-09-05: International Terminology Working Group: full version (http://vladimiralexiev.github.io/pres/20140905-CIDOC-GVP/index.html)
2014-09-09: Getty special session: short version (http://VladimirAlexiev.github.io/pres/20140905-CIDOC-GVP/GVP-LOD-CIDOC-short.pdf)
This document discusses semantic technologies for cultural heritage. It introduces Ontotext Corp, which develops semantic technology, and some of their projects involving cultural heritage data. These include the ResearchSpace project with the British Museum, projects involving Europeana like Bulgariana and Europeana Creative, and publishing Getty vocabularies as linked open data.
Nikola Ikonomov, Boyan Simeonov, Jana Parvanova and Vladimir Alexiev. In Digital Presentation and Preservation of Cultural and Scientific Heritage (DiPP 2013), Veliko Tarnovo, Bulgaria, Sep 2013.
Nikola Ikonomov, Boyan Simeonov, Jana Parvanova and Vladimir Alexiev. In Digital Presentation and Preservation of Cultural and Scientific Heritage (DiPP 2013), Veliko Tarnovo, Bulgaria, Sep 2013
High performance Serverless Java on AWS- GoTo Amsterdam 2024Vadym Kazulkin
Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless community. Java is known for its high cold start times and high memory footprint, comparing to other programming languages like Node.js and Python. In this talk I'll look at the general best practices and techniques we can use to decrease memory consumption, cold start times for Java Serverless development on AWS including GraalVM (Native Image) and AWS own offering SnapStart based on Firecracker microVM snapshot and restore and CRaC (Coordinated Restore at Checkpoint) runtime hooks. I'll also provide a lot of benchmarking on Lambda functions trying out various deployment package sizes, Lambda memory settings, Java compilation options and HTTP (a)synchronous clients and measure their impact on cold and warm start times.
"$10 thousand per minute of downtime: architecture, queues, streaming and fin...Fwdays
Direct losses from downtime in 1 minute = $5-$10 thousand dollars. Reputation is priceless.
As part of the talk, we will consider the architectural strategies necessary for the development of highly loaded fintech solutions. We will focus on using queues and streaming to efficiently work and manage large amounts of data in real-time and to minimize latency.
We will focus special attention on the architectural patterns used in the design of the fintech system, microservices and event-driven architecture, which ensure scalability, fault tolerance, and consistency of the entire system.
"What does it really mean for your system to be available, or how to define w...Fwdays
We will talk about system monitoring from a few different angles. We will start by covering the basics, then discuss SLOs, how to define them, and why understanding the business well is crucial for success in this exercise.
How information systems are built or acquired puts information, which is what they should be about, in a secondary place. Our language adapted accordingly, and we no longer talk about information systems but applications. Applications evolved in a way to break data into diverse fragments, tightly coupled with applications and expensive to integrate. The result is technical debt, which is re-paid by taking even bigger "loans", resulting in an ever-increasing technical debt. Software engineering and procurement practices work in sync with market forces to maintain this trend. This talk demonstrates how natural this situation is. The question is: can something be done to reverse the trend?
What is an RPA CoE? Session 2 – CoE RolesDianaGray10
In this session, we will review the players involved in the CoE and how each role impacts opportunities.
Topics covered:
• What roles are essential?
• What place in the automation journey does each role play?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
The Department of Veteran Affairs (VA) invited Taylor Paschal, Knowledge & Information Management Consultant at Enterprise Knowledge, to speak at a Knowledge Management Lunch and Learn hosted on June 12, 2024. All Office of Administration staff were invited to attend and received professional development credit for participating in the voluntary event.
The objectives of the Lunch and Learn presentation were to:
- Review what KM ‘is’ and ‘isn’t’
- Understand the value of KM and the benefits of engaging
- Define and reflect on your “what’s in it for me?”
- Share actionable ways you can participate in Knowledge - - Capture & Transfer
Discover top-tier mobile app development services, offering innovative solutions for iOS and Android. Enhance your business with custom, user-friendly mobile applications.
In the realm of cybersecurity, offensive security practices act as a critical shield. By simulating real-world attacks in a controlled environment, these techniques expose vulnerabilities before malicious actors can exploit them. This proactive approach allows manufacturers to identify and fix weaknesses, significantly enhancing system security.
This presentation delves into the development of a system designed to mimic Galileo's Open Service signal using software-defined radio (SDR) technology. We'll begin with a foundational overview of both Global Navigation Satellite Systems (GNSS) and the intricacies of digital signal processing.
The presentation culminates in a live demonstration. We'll showcase the manipulation of Galileo's Open Service pilot signal, simulating an attack on various software and hardware systems. This practical demonstration serves to highlight the potential consequences of unaddressed vulnerabilities, emphasizing the importance of offensive security practices in safeguarding critical infrastructure.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
LF Energy Webinar: Carbon Data Specifications: Mechanisms to Improve Data Acc...DanBrown980551
This LF Energy webinar took place June 20, 2024. It featured:
-Alex Thornton, LF Energy
-Hallie Cramer, Google
-Daniel Roesler, UtilityAPI
-Henry Richardson, WattTime
In response to the urgency and scale required to effectively address climate change, open source solutions offer significant potential for driving innovation and progress. Currently, there is a growing demand for standardization and interoperability in energy data and modeling. Open source standards and specifications within the energy sector can also alleviate challenges associated with data fragmentation, transparency, and accessibility. At the same time, it is crucial to consider privacy and security concerns throughout the development of open source platforms.
This webinar will delve into the motivations behind establishing LF Energy’s Carbon Data Specification Consortium. It will provide an overview of the draft specifications and the ongoing progress made by the respective working groups.
Three primary specifications will be discussed:
-Discovery and client registration, emphasizing transparent processes and secure and private access
-Customer data, centering around customer tariffs, bills, energy usage, and full consumption disclosure
-Power systems data, focusing on grid data, inclusive of transmission and distribution networks, generation, intergrid power flows, and market settlement data
What is an RPA CoE? Session 1 – CoE VisionDianaGray10
In the first session, we will review the organization's vision and how this has an impact on the COE Structure.
Topics covered:
• The role of a steering committee
• How do the organization’s priorities determine CoE Structure?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
Session 1 - Intro to Robotic Process Automation.pdfUiPathCommunity
👉 Check out our full 'Africa Series - Automation Student Developers (EN)' page to register for the full program:
https://bit.ly/Automation_Student_Kickstart
In this session, we shall introduce you to the world of automation, the UiPath Platform, and guide you on how to install and setup UiPath Studio on your Windows PC.
📕 Detailed agenda:
What is RPA? Benefits of RPA?
RPA Applications
The UiPath End-to-End Automation Platform
UiPath Studio CE Installation and Setup
💻 Extra training through UiPath Academy:
Introduction to Automation
UiPath Business Automation Platform
Explore automation development with UiPath Studio
👉 Register here for our upcoming Session 2 on June 20: Introduction to UiPath Studio Fundamentals: https://community.uipath.com/events/details/uipath-lagos-presents-session-2-introduction-to-uipath-studio-fundamentals/
Session 1 - Intro to Robotic Process Automation.pdf
Cost-effective e-Government Services: Export Control System phase 2 (ECS2)
1. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 1
Cost-effective e-Government Services
Export Control System phase 2 (ECS2)
Vladimir Alexiev, PhD, PMP
CTO,
CTO Sirma Solutions Corp
Bulgaria-Korea IT Experts Workshop
Sofia, Bulgaria, 25.2.2010
fi l i
2. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 2
Outline
• Who We Are
• What is
Wh t i ECS2
• Tools and Technologies
• Data Model
• Model Driven
Model-Driven Generation
• System Architecture
• Business Process Modeling and BPMS
B i P M d li d
• XPath-based DSL (Assignments, Rules and Conditions)
• GUI Generation and Features
• Deployment Model
ep oy e t ode
3. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 3
What is
Wh t i ECS2
4. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 4
What is ECS2?
• Trans-European system involving 31 countries
• Coordinated by DG Taxation and Customs Union (TAXUD)
• Client: Bulgarian Customs Administration (BCA)
• Strict timeline. "Only" 6 countries were late. BG ECS2 was deployed on time on 1 July 2009
• 11 months from start to production (some national functionalities finished 3m later)
• Including Conformance Testing with EC (and fixing bugs in the CT!), deployment and training with BCA
• Used intensively: currently handles 80-100,000 export movements (500,000 messages) per month.
• Users: 3500 customs officers, 200,000 potential traders
• Bulgarian Industrial Association is teaching traders how to use Electronic Declaration (paid trainings)
l i d i l i i i hi d h l i l i ( id i i )
• Large project: 45 message types averaging 100 fields each, 50 Elementary Business Processes (EBP), 30
man/years of effort. Subsystems:
• ECS2 Core : message processing (in/outflow), business process persistence
(in/outflow) process,
• ECS2 Web: customs officers data view/entry
• DTI B2B: Direct Trader Interface for system-to-system electronic declaration processing
• DTI Web: trader portal for interactive entry of electronic declarations (
p y (manual or XML from file)
)
• Messaging: EU (CCN/CSI communication, Redix), DTI (db/webservices), BICIS (webservices)
• Routing between ECS1 and ECS2 (complex transition period!)
• Processing Reference Data, Customs Office List, Unavailability (RD/COL/UNA)
• External system integration (BICIS, CAS, RA, SDM, EORI/AEO, TARIC, other gov agencies)
• Printing (Single Administrative Document), Reporting
• Administration (Core and DTI)
5. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 5
The Legacy: ECS1
• Executed during 2006-2007, deployed in Jul 2007
• Big problems with project organization and software architecture
• System development continued for 14 months after deployment, some parts never deployed
• Big problems with stability, performance and bugs.
• ITT was subcontractor, so we knew the business and all problems first-hand
b k h b i d ll bl fi h d
• Problems with the tools used
• Process Server: heavy XML munching leading to bad performance
• Therefore no long-running processes and human tasks used used as a data flow engine, not a real
BPMS
• Message Broker: used only for XML-XML conversion not worth the overhead
• Architecture is not modular
• Disparate technologies used for Core and DTI, different GUI technologies
• All message munching is left to Process Server (
g g (Websphere Integration Developer)
p g p )
• Common steps such as validation, object construction, etc are not modularized
• 50 disparate processes ("phases") of ~40 steps each: huge complexity, no reuse
Impossible to modify or extend
p y
Together with the client made the hard decision to rewrite ECS1, instead of trying to build on
a shaky foundation
6. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 6
Our Approach
• Immediately (first 3 months) ran an architectural pilot
• E l t d IBM vs open source
Evaluated
• Picking tools was the "easy part": trust nothing, try everything, be modern but not
bleeding edge
• Finding the architectural approach was the hard part:
• Too complex data generation of as many artifacts as possible is key to consistent
implementation.
p
• Too much data share sub-objects, copy/pass references only
• Share data beans (stateful Hibernate session) between all core components
• Too much processing strict code modularization and factoring
• All process-independent steps are done outside of the BPMS
• Screens are reused between core and DTI systems as much as possible
• T many Rules & Conditions (250, revised daily) i
Too R l C di i (250 i d d il ) invented XPath b d DSL the
d XP h based DSL, h
same R&C are used in offline and GUI interactive validation
• Complex processes (and some unclear/buggy TAXUD specs) design processes
visually, clarify with client numerous times, implement in BPMS
7. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 7
Tools and
Technologies
Selected Open Source or inexpensive
tools,
tools instead of proprietary
expensive ones
8. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 8
• Servers
Tools and Technologies
g
• JBoss AS 5.0.1: application server
• Frameworks/libraries
• JBoss Seam 2.1: application framework,
• JBoss Messaging: message queuing
IoC container
• jBPM 3.3: business process execution
• EJB 3.0: object model
• Informix Dynamic Server 10 FC8:
• JPA/Hibernate 3.3.2: persistence and
database server (client requirement)
( q )
O/R mapping i
• Tools
• JSF 1.2: web framework
• JBoss Tools 3.0: development IDE
• Facelets: JSF templating engine
• H d
Hudson: continuous integration
ti i t ti
• RichFaces 3.3: JSF AJAX library
• CheckStyle: static analysis, coding
• JiBX 1.1: XML/Java binding
conventions
(
(serialization/deserialization))
• Subversion source control, EclipseSVN
• Dozer 4.4.1: object graph cloning (deep
• TestNG 5.8: unit testing copy), used sparingly
• DBUnit: database testing • JXPath 1 2: DSL for message
1.2:
• MS Project: planning assignments, R&C validation
• Jira: task tracking • Saxon 9: XSLT transformations
• Vi i process modeling
Visio: d li • J
Jasper reports 3 1 3 reporting, printing
3.1.3: i i i
• Word: specification writing Single Admin Doc
• Wiki: engineering notes / collaboration • Log4J: structured logging
9. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 9
Deployment Model
• Open Source operating system: RedHat Enterprise
p p g y p
Linux
• Database: Informix
Informix,
• Open Source Java Enterprise Edition stack: JBoss,
JEE 6, EJB 3, JSF
• Centralized (ECS1 was semi-distributed)
• Dedicated servers (ECS1 shares server with 4-5
other applications, sometimes crashed)
10. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 10
Deployment Model
p y
Level 1 Level 2 Level 3
Web Portal BTMS Check Server BCA Server Farm
Linux Linux
Application Server
JBoss 4 Application Server
Web applications JBoss 4 Response
EORI/
TARIC
AEO
(Requested only)
BTMS_ONLINE Web applications
BICIS
Request
DBMS Informix 10 CS_BTMS SDM CAS RA
JDBC
Database: CWS Database: ECS2
Users Declarations Application Server
JBoss 5
JDBC
ECS2 Core
Web Services
JDBC Входящ
Мениджър конвейр Интерп
на ретатор
съобщени на
Application Server JMS
ята Изходящ съобще
Response
JBoss 5
(Requested only) ECS2_B2B конвейр ния
ECS2.
Web applications Core
JMS
JMS DB
MQ Redix
Request
ED_to_ECS2Core jCSI / CSI
JBPM JBPM
ECS2_Online DB
Мениджър на
JMS JMS потребителския
интерфейс
MQ
ECS2Core_to_ED
All ports All ports
Firewall Firewall Firewall
HTTP
HTTP(S)
VPN Server VPN Server
External
Domain External Domain
Common Domain
TARIC EORI/AEO
VPN Client B2B Application
MQ MQ
MQ MQ in
Trader System MQ MQ out
in out
in out
11. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 11
ECS2 System
y
Architecture
12. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 12
ECS2 Backend Architecture
• All process-independent data munching, scrubbing and
washing i d
hi is done i one place, outside BPMS
in l t id
13. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 13
BPM Specification (BPMN/Visio)
p ( )
(null, EXPBIC)
SI1А0000 Обработка до разрешаване на режима
615
CO1A0501 (SUM) - Регистриране на ОДН
598
906
Разрешен/неразрешен режим
Р /
Грешка SI0A0501–1
513 509
Заявка за корекция Решение по анулиране CO1B1301 Разрешаване/неразр. на режима EORI Интеграция
SI060103-1 Обр.анулиране
515 Разрешен?
ЕАД 528
Оформяне на Приемане на ЕАД
Анулирана? не да Регистриране на ОДН
място? 504
От БИМИС Одобрение на корекция
505 560 да EXPNRE EXPREL
към търговец?
Отказ на корекция Решение за контрол Неразрешен износ Разрешен режим
да 514
Заявка за анулиране EXPCAN
не не Анулирана SI020400-1
да Стартиране TFUP Рисков анализ
не ок
SI0A0502 Таймер +
МОД интеграция 551 проследяване
ок
906 Износът неразрешен
Грешка Препращане на
полученото съобщение
Препращане на
полученото съобщение 529 628
EXPBIC Износът разрешен Приемане на ОДН
В БИМИС
501
Очаквана пратка (ЕАД)
601
Очаквана пратка (ОДН)
EXPREG
Регистрирана
Very well received
by client
etc
14. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 14
BPM Implementation (jBPM)
• Implementation in
jBPM follows closely
the process
specification.
• Most importantly, it
is at almost the same
level of abstraction
(2-3x the nodes)
because:
• It doesn't indulge in
low-level data
munging
• All common steps
are outside of BPMS
15. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 15
Model-Driven
Generation
16. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 16
Generation Architecture
• Red: manual work
• Black: generated
17. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 17
Model-Driven Architecture
• The ECS2 architecture is heavily model-driven
• The models are highly pragmatic and specific
• You don't need expensive or heavy tools
• All you need is Excel and a couple of good hackers
• UML models
• We used sequence and activity diagrams for complex module design, class
design
diagrams for illustration only
• Message definitions are given in MS Access database: we want to use it directly,
not transcribe it in a UML tool (would be too much work for too little gain)
ib i i l( ld b h kf li l i )
• Transcription leads to bugs like "n..5 is maxInclusive=5" that stop ships (ECS1
example)
p )
18. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 18
GUI F t d
Frontend
Web 2.0 (JSF+AJAX), useful
features,
features lots of generation, integrated
generation
Business Rules validation
19. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 19
GUI as Single Administrative Document (SAD)
• "Business payload" data laid out
similar to paper form. Customs
officers and traders know it by heart
• Pages split to Common (1) and
Goods Item (up to 999)
• Layout made in Excel and the client
can edit it
• Fields generated and laid out
automatically
• Borders, backgrounds, fully
zoomable
20. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 20
GUI: Generated from Excel
• Best news: the GUI
is generated
• Presentation
attributes from
schema.xls,
validations from
R&C metamodel,
layout from
forms.xls, lists of
f l li f
values/links from
codelist.xls.
• Very flexible and
powerful. The client
can edit any visual
aspect. Th client
The li
loves it.
21. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 21
Validation: Business Rules
• Consider this rule: C010:IF first digit of "Transport mode at border" (box 25) = 2, 5 or 7
THEN "Nationality crossing border" (box 21) is Optional ELSE Required
C010.shipment/nationalityOfMeansOfTransportCrossingBorder.R
not(sirma:RexexpMatch(../transportModeAtBorder,"^[257].*
• Implementation in jxpath: EN Required when "Transport mode at border" does not start with 2, 5 or 7
BG Задължително когато "Вид транспорт на границата" не започва с 2, 5 или 7
• At the GUI: box 25 doesn't start with [257] so the field is Required (yellow). In this way the user can see
all erroneous fields at a glance. AJAX implementation: submits & receives only the changes.
• If the user hovers over the field, the tooltip gives error description (red text) and all details about the field
(tag name, box number, description, format, even codelist)
• If an incoming message has this defect, the same rule implementation returns appropriate error message
• The error description (
p (ErrDes) is Bilingual:
) g
• BG in DTI messages to trader
• EN in Common Domain messages
22. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 22
GUI: Features
• Hired a Usability consulting company (still most of the ideas are our own)
• Context-dependent "navbars" show important info
• User, office, role
U ffi l
• Number of movements per state in the current office, which are Quick Search links (from CL9058)
• Currently selected movement (sticks even if you switch office type), with links to its data
• Available i
A il bl actions (local and global); the most important ones are color-coded
(l l d l b l) h i l d d
• Bold shows the current context ("breadcrumb")
• F ll type, length, regexp, requiredness, codelist, rules validation (yellow: required unfilled,
Full t l th i d d li t l lid ti ( ll i d fill d
red: erroneous). Tooltip with details about the field (tag, name, description, box number, error)
• Electronic signatures (digital certificates) used for
trader access and document signing
d dd i i
• The same forms are used for Customs Officer (ECS2 Web) and Trader (DTI Web)
• The navbars ("chrome") vary per user kind (customs officer, trader) and roles/permissions
• Goods Pager: efficiently handles up to 999 goods, add item [ ], direct jump, erroneous list
[+],
23. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 23
GUI: Features
• Highly interactive using AJAX triggers: changing a field causes partial submission, rules
recalculation and partial refresh
• Web optimizations:
• The GUI is fully zoomable, ensuring optimal use of screen resolution
• CSS compliance, using a cross-browser CSS f
li i b frameworkk
• XHTML doctype tagging, ensuring best browser compatibility mode
• All resources (CSS, JS, images) are properly marked for caching, ensuring the browser caches them
for 1 month and reduces traffic
• Resource merge: all CSS and all JS files are merged, ensuring faster page processing time.
• Resource versioning: the build date is added to each resource filename, ensuring the browser will
refetch it.
it
• HTTP compression: main pages (business content) are gzipped to reduce traffic. The largest page
zips to 10kB.
• Web traffic optimization was critical to enable centralization of ECS2 Web
• BICIS is distributed (120 instances across the country) .
• ECS1 Web is also distributed, while ECS1 Core is centralized, creating weird timeout problems
• ECS2 is centralized and ensures fast response time, even though some remote Customs Offices have
time
bad connectivity (64-128 kbps)
• Client's sysadmin loves it. We love it too, it simplifies new version deployment immensely.
24. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 24
Direct Trader
Input (DTI)
e-Services for Traders and other
Government Administrations
25. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 25
DTI Channels and Architecture
• Two electronic channels:
• DTI Web is a web portal where smaller traders can submit declarations interactively,
receive replies, etc
i li
• DTI B2G is a system-to-system web-services interface
• Complies with BCA Security Policy
• Connections can be initiated only from inside
• Security zones that are strictly delineated through firewalls
• Message queues transport d f
M data from outer to i
inner zones
• B2G channel is protected by VPN that each trader must connect to
• About 80% of the software architecture of DTI is shared with ECS2 Core
• Data model, data access layer, classes/objects
• Backend architecture: message processing pipelines
• G general layout, business forms and generation technology
GUI ll b i f d i h l
Great wins in consistency and savings of effort
26. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 26
DTI Deployment Architecture
Level 1 Level 2 Level 3
Web Portal Check Server Response
R Server
Linux Linux (Requested only)
Response
(Requested only)
Application Server Application Server ECS2 Core
JBoss 5.x Jboss 5.x Request
Request
All
DTI_B2B ports
JMS
DTI_ONLINE
MQ
JMS uutQueue MessageFlowConfigOut
(Core-To-DTI)
EjbModel (Hibernate) MQReceiver
JMS
DTI_Online
JMS
MQSender MQ
dtiInQueue
(Core-To-DTI)
JDBC
JMS
MQManager
JDBC
JMS
CwsDBService (jdbc)
JMS
JMS
MQ
CWS and ECS_DTI schemes dtiOutQueue
JDBC (DTI-To-Core)
(DTI To Core)
Informix
I f i
JMS
JMS
MQ
WebServices DTIMQOutHandler inQueue MessageFlowConfigIn
(DTI-To-Core)
JDBC
All ports
Firewall Firewall
HTTP(S) HTTP
VPN Server
External
Domain
External Domain
VPN Client B2B Application
Trader System
27. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 27
DTI Scope: Actors Messages
Actors,
515
507
528
521
513 561
504 522
505 Trader Carrier
525 at Exit
514 547
509 548
Trader 549
Declarant 560 Office of 906
529 Export Office of
551 Exit 613
605 Trader
582 604 Representative
583 at Exit
906
906
599 613
605
Other Govt 604
599 Person Lodging
Admin
906 Summary
Declaration
Office of 615
Lodgement 628
906
28. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 28
DTI Scope: Trader Processes
• Trader
Declarant
• communicates
with Office of
Export
• Processes
• Declaration
• Correction
• Cancellation
• Followup
29. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 29
DTI Scope: Trader Processes
• Person Lodging Summary Declaration and
Trader Representative at Exit
• Trader Carrier at Exit
• Export Operation
• Exit Manifest
30. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 30
DTI Processing
g
31. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 31
DTI GUI: Forms as in ECS2 GUI
32. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 32
DTI GUI: Message List
g
• Search by various fields
• Message status is indicated with an icon
• Trader can see only messages that "belong" to him
• Trader can review message as form or download XML content
33. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 33
DTI Security
y
• Requires prior registration with electronic
signature, including Power of Representation
• Shared for DTI Transit and DTI Export
• Uses electronic signatures for trader
identification and document signing (non-
repudiation)
• Supports any certificate provider
wt
with PKCS#11 API (Charismatics, Siemens,
CS# (C a s at cs, S e e s,
SafeNet, Datakey, ActivCard Gold, Setec SetWeb,
Gemplus, Utimaco SafeGuard, ActiveKey, Aladdin, …)
• Ensures that traders can:
• Only read messages that "belong" to them
belong
• Only send messages in their own name
• Both Web (browser) and B2G (WS-Signature)
34. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 34
DTI G2G: Other Administrations
• G2G web service allowing other administrations to receive information about
completed exports
• National Revenue Agency (NRA): for VAT payback
• The only system-to-system connection between NRA and BCA
• National Agricultural Fund: CAP-related exports
• Store-and-forward (like an email box), Uses server certificates for security
• Defined XML message BG599B (225 fields/groups): replaces the paper document
35. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 35
Conclusions
• ECS2 is an example of a substantial eGovernment system developed
in
i an efficient manner, with little fanfare and not a lot of money
ffi i i h li l f f d l f
• The ECS2 project costs 750k EUR, of which DTI is 10% (75k EUR)
• ECS2 DTI scope includes 28 messages grouped in 7 trader processes, so this
processes
represents between 7 and 28 services, depending on how you count it
• Compare this to 30M EUR spent on central eGov projects and 13 services
• ECS2 DTI is a real eGovernment service in heavy use: 80-100,000
export movements (500,000 messages) per month
• ECS2 saves significant time to both BCA and traders, eliminating manual data
re-entry and incremental chasing of errors
• Key success factors:
• Real needs and (more or less) clear specifications mandated by EC TAXUD
• Excellent collaboration between the Developer (
p (Sirma) and Client (
) (BCA)
)
36. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 36
Who A We
Wh Are W
37. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 37
Who Are We (Company)
• Sirma Group Holding is one of the largest private Bulgarian software development
and IT consulting holdings
• 18 years of history, 450 staff, 9 daughter companies, 5 Joint Ventures. Offices in 5
Bulgarian cities and 3 overseas. See more at www.sirma.bg (BG), www.sirma.com (EN)
• Sirma Solutions Corp is the backbone of Sirma
• 150 staff, government and private projects, outsourced development, incubation of new
ideas and units. Inherited Sirma's history and goodwill at corporate reorganization (when
y g p g (
the holding was setup)
• Sirma ITT specializes in complex e-Government projects
• 5 years of history, 40 staff (Ruse 30, Sofia 8, Varna 2), young (average age 23)
history 30 8 2)
• One of the few BG companies who raises its own staff through cooperation with
universities
• Focus on JEE, SOA BPM, RUP, UML.
SOA,
• Sirma bought ITT in late 2007 to add its experience and management practices
• Several joint projects in the customs/excise area
j p j
• Teams shared between Solutions and ITT and fully integrated
38. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 38
Who Am I (Author)
• Sirma Group founder and CTO of Sirma Solutions
• Starting Sirma IT C
S i up S Consulting unit
l i
• MS and PhD degrees in computer science, PMP certification
• 18 years of IT experience
• Lecturing in IT Project Management at the Masters Level:
• University of Ruse: MS in Software Engineering program (sponsored by Sirma)
• Varna Free University: MS in Software Engineering program (sponsored by Sirma)
• New Bulgarian University: MS in IT Project Management (joint with Bulgarian Academy of
Sciences)
• Returned h
d home after 12 years i Canada
f in d
• My dream is to see more effective IT use, efficient eGovernment and less corruption
in Bulgaria
g
• These goals are inter-related
• So far eGovernment projects have spent a lot of money, but have had little effect
• So far the emphasis has been on strategies legal framework and central infrastructure, and NOT on
strategies, infrastructure
rich and varied services
39. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 39
ECS2 for IT Project 2009
• Nominated in Computerworld Bulgaria annual competition
• Top 3 amongst 9 submissions in the Government area
• Pictured: IT vice-minister Parvan Rusinov, Sirma CTO/PM Vladimir
Alexiev, Sirma ITT CEO Yavor Djonev, BCA PM Teodor Martev
40. ECS2 at Bulgaria-Korea IT Experts Workshop, 25.2.2010 (Sirma Solutions & Sirma ITT) 40
Thanks for your time!
• Questions/discussion?
Q
• Contacts: vladimir@sirma.bg, +359 (888) 568 132,
callto://valexiev1