Professional Documents
Culture Documents
E - GOVERNMENT STANDARDS
Draft Version
2009
Government of Pakistan
Ministry of Information Technology
Electronic Government Directorate
Table of Contents
INTRODUCTION…………………………………………………………………..…………………………..….....3
EXECUTIVE SUMMARY……………………………………………………………..…………………..………...5
1 COMMON ARCHITECTURAL REFERENCE MODEL………………………………..………..….……...15
1.1 Business Architecture ……………………………………………………………………… …….………....15
1.2 Service Exchange Architecture ……………………………………………..................................................19
1.3 Application Architecture ………………………………………………………..……….... ..22
1.4 Technology Architecture…………………………………………………………………….………………..25
9 APPENDICES…………………………………………………………………………………….………...... 153
9.1 APPENDIX – A: BPD Core Elements Set………………………………………………..……….…….. 153
9.2 APPENDIX – B: Use Case Diagram……………………………………………… ….….…………….... 156
9.3 APPENDIX – C: Class Diagram………………………………………………………………..……....... 157
9.4 APPENDIX – D: Component Diagram…………………………………………………….……….……. 158
9.5 APPENDIX – E: Deployment Diagram………………………………………………..……………….... 159
9.6 APPENDIX – F: Activity Diagram…………………………………..………………………………....... 160
9.7 APPENDIX – G: Sequence Diagram…………………………………………………..……………….... 161
9.8 APPENDIX – H: Issue Card & Factor Table………………………………………..........……………… 162
9.9 APPENDIX – I : System Features……………………………………………………..………………… 163
INTRODUCTION
According to IEEE, standard is a published document that sets out specifications and
procedures designed to ensure that a material, product, method, or service meets its
purpose and consistently perform to its intended use.”
Standards not only solve issues ranging from product compatibility to addressing
interoperability and service delivery but they also simplify product development and
reduce non-value-adding costs thereby increasing a users’ ability in using the
systems.
Standardized systems are used worldwide to manage and control the process using
standardized methods and procedures. Accordingly, the standards are developed to
establish a uniform process and activities for e-government projects of Government of
Pakistan. The foremost objective is to ensure the interoperability of these systems.
This is necessary to provide seamless service delivery to all stakeholders including
citizens of Pakistan. In addition, the investments being incurred on e-government
projects can also be leveraged while replicating the standardized systems across all
government entities.
Bottom Line
The Standards help in satisfying requirements of interconnectivity and interoperability
that is essence of e-government.
EXECUTIVE SUMMARY
• Business interoperability
• Information interoperability
• Technical interoperability
• Business Architecture
• Service Exchange Architecture
• Application Architecture
• Technology Architecture
Each level is intended to feature and describe the logical relationships of E-Gov
capabilities, processing / access flows, technologies, and components. The intent is
not to overly constrict the solutions, nor to proffer a solution that may be defined and
implemented in only one manner. In fact, this document attempts to keep the potential
solution sets broad and robust, capable of applying new and better technologies as
they are conceived and delivered.
etc., Issuance of various certificates e.g. Domicile, Birth etc. Besides these, there are
certain processes which fall in between the category of Common and Core. Examples
are: Complaint Management System, Library Books Management System etc. In
these processes the basic commonality usually exists however the activities of
escalation usually differs at large.
Once the business processes are modeled, analyzed and new processes are
developed accordingly then effort of automation usually starts. This is called as
development / designing stage where the staring point is to gather the functional and
non-functional requirements so as to design the software based upon the business
requirements.
In delineating the processes, the process consultant has o focus mainly upon each
and every minute activity / task of the process. Later on, these activities / tasks are
looked upon carefully to what can be automated and what can not be automated and
may be left as manual. For example, in the hiring process of government, one of the
Once the SRS document is prepared, same will be used as an input for system
designers to develop a blue print of the software to be implemented. The standards
based upon UML 2.x are also recommended for this activity.
In order to make the consistent and reliable information sharing across these
components for streamlining the different process flows, data standards are
recommended for achieving the interoperability.
Basic concept as for the development of data standards start from the categorization
of the information into the different data blocks covering the whole business scenarios
for creating the common business entities use across the different e-government
projects for consistent and reliable information. These information blocks as well as
database development guidelines provide a uniform means for the database analyst
and designer for developing the initial uniform structural data model for data
consistency and uniformity across the e-government entities achieving the
interoperability.
SOAIF mainly consists of high-level software components that include Web services.
Implementation of an SOA requires tools as well as run-time infrastructure software,
which collectively makes SOAIF as desirable implementation framework for
e-government projects.
Process / business analysts who initially create process drafts, process participants
who are usually involved in execution of routine work, process owners who manage
and monitor those processes and software architects / developers who develop the
software.
Once the business processes are modeled, analyzed and new processes are
developed accordingly then effort of automation usually starts. This is called as
development stage where the staring point is to gather the functional and non-
functional requirements so as to design the software based upon the business
requirements.
In delineating the processes, the process consultant has o focus mainly upon each
and every minute activity / task of the process. Later on, these activities / tasks are
looked upon carefully to what can be automated and what can not be automated and
may be left as manual. For example, in the hiring process of government, one of the
most common activities is constitution of hiring committee as per policy of
government. While automating the business processes, this activity is usually kept as
manual due to its nature. These types of considerations play a major role while
gathering the functional requirements. Also, this phase of software is usually felt very
important as it is considered as first and most important building block for any e-
government project. In this regard, the basic course of action is to develop the
Software Requirement Specification (SRS) document that includes documenting the
use cases (functional requirements), components (sub-systems interconnections),
activity diagrams, Sequence Diagrams, Class Diagram etc. These are very important
to be documented so as to produce quality software as this documentation provides
help to system architects, designers and implementers. It is recommended to use non-
proprietary, open-source standards based of Unified Modeling Language (UML 2.x)
while preparing the SRS document.
Once the SRS document is prepared, same will be used as an input for system
designers to develop a blue print of the software to be implemented. The standards
based upon UML 2.x are also recommended for this activity.
Basic concept as for the development of data standards start from the categorization
of the information into the different data blocks covering the whole business scenarios
for creating the common business entities use across the different e-government
projects for consistent and reliable information. These information blocks as well as
database development guidelines provide a uniform means for the database analyst
and designer for developing the initial uniform structural data model for data
consistency and uniformity across the e-government entities achieving the
interoperability.
as WSDL and SOAP for service description and messaging transport respectively.
SOAIF will generate such web services which are component-based, web-oriented
and standard-based.
SOAIF mainly consists of high-level software components that include Web services.
Implementation of an SOA requires tools as well as run-time infrastructure software,
which collectively makes SOAIF as desirable implementation framework for
e-government projects.
This document describes the common reference model architectures for all the
e-government projects. These architectures are given below:
• Business Architecture
• Service Exchange Architecture
• Application Architecture
• Technology Architecture
Major Challenges
o Private components
o Public components
public process. All other “internal” activities of the private business process may
not be shown in the public process.
Moreover, this interoperability will help entitles to carry out any policy or
structural changes as and when required.
In Orchestration, the interactions occur at the message level. These usually include
business logic and task execution order, and they can span applications and
organizations to define a long-lived, transactional, multi step process model.
Orchestration always represents control from one government entity perspective. This
differs from choreography, which is more collaborative and allows each government
entity to describe its part in the interaction.
Choreography tracks the message sequences among multiple parties and sources
typically the public message exchanges that occur between Web services rather than
a specific business process that specific government entity executes.
Actually SEA is strongly based on Business Process Architecture because initially the
business requirements define the service(s) and the service(s) in its turn defines any
required technology support. In this context, it is extremely important that the services
(derived from Business Processes) must have capability to be executed independently
without unnecessarily and adversely affecting the relevant business processes.
• Service Components
Following are two major types of service components is SEA:
• Components
Following are the major components of application architecture:
o View / UI Component:
This component is the front of any application and it interacts with end
users. It should separate all the business information from application
logic component and data transfer object component.
In order to cut the cost of duplication, the concept of Commercial off the Self (COTS)
components (to ensure reusability, integration, consolidation) Collaboration,
interoperability aspects) must be adopted while writing the application logic.
• The Database tier must include the things like query optimization, indexing,
etc.
• One should avoid adding the core business logic while writing the stored
procedure in this tier.
• In order to ensure robustness, universal technology (e.g. Hibernate) must
be used to allow transparent persistence that enables the applications to
switch to any database. The idea is to simply replace the database and
adjust the applicable portions of the integration tier to query the new
database.
• The Technology Evolution Plan also outlined how, over time, existing
technology would be decommissioned once the new capabilities were in
place and established.
• Technology Evolution plan should be established.
• New technology introduced included Web Service development tools and
adapter frameworks, a global service directory and a global service
management platform for monitoring, configuration management / version
control as well as managing and enforcing the policies to be applied to
Shared Services at runtime (e.g. security, failover, quality of service).
• “Proof of concept” will be adopted as best practices.
• SOA standards and policies, as well as the roles, responsibilities and
processes that had been put in place, the steps undertaken included:
2 PRE-DEVELOPMENT STANDARDS
The e-government projects mainly focuses towards automation of common and core
processes of each entity. Common are those which are executed by other government
entities as well. These may include HR, Budgeting, Project Management, Inventory,
Procurement etc. while core processes are those which are only executed by a certain
agency. These usually include some services to citizens, businesses and employees.
Examples are Management of Title Deeds, Issuance of various Licenses e.g. Driving,
Issuance of various certificates e.g. Domicile, Birth etc.
Besides these, there are certain processes which fall in between the category of
Common and Core. Examples are: Complaint Management System, Library Books
Management System etc. In these processes the basic commonality usually exists
however the activities of escalation usually differs at large.
understand the Process first and then differentiate between Process efficiency and
Process effectiveness as these both are the main requirements of e-government.
Process is set of activities those are performed together to turn inputs into a product or
service output. Process Efficiency means doing the things right; in this context,
comprehending the as-is processes and automating the same may help in achieving
the goal of efficiency. This phenomenon is also known as Business Process
Management (BPM).
Process Effectiveness means doing the right things; in this context, comprehending
and as-is processes, analyzing those in order to eliminate the non-value added
activities; then automating the same may help in achieving the goal of effectiveness.
This phenomenon is also known as Business Process Reengineering (BPR).
However, these two terms (BPM & BPR) are sometimes used interchangeably.
In order to increase efficiency and effectiveness, the basic course of action is to model
the business processes so as to understand the situation very carefully before moving
forward.
The primary goal of BPMN is to provide a notation that is readily understandable by all
business users, from the business analysts that create the initial drafts of the
processes, to the technical developers responsible for implementing the technology
that will perform those processes, and finally, to the business people who will manage
and monitor those processes. Thus, BPMN creates a standardized bridge for the gap
between the business process design and process implementation.
From E-Government point of view, there are two important goals for the business
process modeling:
Modeling Practices
Each Business Process can be categorized as Internal to an organization
(private), public (having some process interfaces with outside of organization) or
collaborative (major process interactions exist between internal and external
organizations).
activities that represent the message exchange patterns between the entities
involved.
It becomes very necessary for every organization to judge its performance against its
potentials. From the government driven requirement engineering approach, the process
analysis is necessary to be conducted to make the process more efficient and effective.
This will provide an opportunity to enhance the service delivery to all stakeholders while
achieving the target of good governance.
The process analysis involves the assessment of various scenarios through such
documentation that contains information about the variance between improved service
delivery and organizations’ potentials. The proper conduction of process analysis will
help the organization in developing to-be process for increasing the efficiency,
effectiveness and responsiveness.
Strategic: This approach deals with aligning the processes and procedures with overall
strategy. In order to analyze a process from a strategic point of view, it is important to
get the ‘information’ required to test a process’s alignment to the overall business
strategy. This is achieved by finding out the BPR proposal / directive from the top
management, which is mostly reflecting the business strategy, case for action.
Operational: This approach deals with internal optimization of process. While analyzing
a process from an operational point of view, following must be considered:
3 Services Engineering
Services are discrete units of functionality which can be utilized to perform specific
tasks or activities. These services may be manual or IT-specific and they support
activities within a business process. Different business processes may consume
some service components which are common with other business processes, and
others that are unique to that process.
Understanding the linkage between activities within a business process and the
services which support them can enable the identification of common services.
These common services can provide opportunities between agencies or across
business units to develop re-usable service components or shared service
arrangements, thereby reducing duplication and promoting standardization.
Business processes which support the core business function of an agency will
tend to be more specific and will present less opportunity for standardization.
However, even within core business processes, there may be opportunities to
utilize common service components.
Often, these common or more generic elements will be found at the more ‘external
facing’ ends of a process. Also, there is often a greater drive for standardization of
The following diagram illustrates the link between services and processes, the
difference between common or generic services and unique or specific services
and where they are more likely to reside.
Agencies offering services to citizens that require application and registration, such
as applying for a grant or other forms of financial assistance, registering a birth or
registering a new company, could potentially utilize common application and
registration services provided by another agency as a shared service or as
outsourced to an external third party.
Services
Agencies will deliver a range of services that can be grouped into one of the
following three services groups:
Detail strategy
There are three stages of evolution towards a networked or integrated service
delivery:
Service Coupling
Representational coupling:
Identity coupling:
Connection channels between services should be unaware of who is
providing the service.
Service Cohesion
Defines the degree of strength of functional relatedness between operations in
a service or business process. The service aggregator should strive to offer
cohesive (autonomous) processes whose services and service operations are
strongly and genuinely related to one another.
¾ The services should be functionally cohesive i.e. should perform one and
only one problem-related task and contain only services necessary for
that purpose.
i. Green-field development:
Follows a classical development model covering specification down to
development, with this option we assume that the services must be
Realization strategies
Following realization strategies are recommended for constructing web
services in GoP projects.
o Orchestration
Orchestration describes how Web services can interact
with each other at the message level, including the
business logic and execution order of the interactions from
the perspective and under control of a single endpoint.
Orchestration is recommended composition style for
internal business processes with tightly coupled internal
actors, while choreography is typically chosen for
developing cross-organizational business processes
between loosely coupled partners.
o Choreography
Choreography is typically associated with the public
(globally visible) message exchanges, rules of interaction
and agreements that occur between multiple business
process endpoints, rather than a specific business process
Once the service and process specifications have reached a steady state, they
need to be transformed into service implementations and subsequently
validated and verified against business service and process specifications.
Business process realization typically adopts a virtualized development model.
This activity encompasses two broad steps: code Web services and code
business processes.
• Deploy the Web service and business process. The runtime code for the
service and process and any deployment meta-data that is required to run it are
deployed during this step.
Important Considerations
The following are some important considerations for integrating legacy systems
with new applications.
How much will these changes affect the current end users of the legacy system and
other dependent production systems?
Recommended standards
Web Services are fundamentally based on a small number of widely accepted
standards, namely XML and XML Schema, SOAP, and WSDL
These standards allow developers to specify the operations that a service provides as
well as the inputs and outputs of these operations. Using these standards helps
service consumers represent data in a form that is understood by service providers
and vice versa. The goal of these standards is to ensure that Web Services, tools, and
runtime environments interoperate across vendors and organizations. Service
providers as well as vendors of Web Service-related tools and infrastructure products
adhere to these standards, which should make it possible for services to be platform-
independent.
However, there are many areas in which these standards are vague or too general to
assure syntactic interoperability on their own. In short, Web Services enable syntactic
interoperability, but do not guarantee it. The Web Services Interoperability
Organization (WS-I) provides guidance on the usage of Web Services standards.
Established in early 2002, WS-I is an open industry effort chartered to promote Web
Services interoperability across platforms, applications, and programming languages.
One of its deliverables is the Basic Profile, which is a set of non-proprietary Web
Service specifications that promote interoperability [4]. The idea behind the Basic
Profile is to provide clarifications, refinements, interpretations and amplifications in
areas of the standards that are subject to multiple interpretations. The most important
interoperability issues at the SOAP / WSDL level are well-understood and
documented.
2. Service composition
WSCL, WS-Coordination, BPEL, WS-I basic profile 1.1
3. Cross-cutting standards
WS-Security, SAML, WS-Transaction, WS-Reliability
4 DEVELOPMENT STANDARDS
Once the business processes are modeled, analyzed and new processes are
developed accordingly then effort of automation usually starts. The staring point in this
regard is to gather the functional and non-functional requirements so as to design the
software based upon the business requirements.
In delineating the processes, the process consultant has to focus mainly upon each
and every minute activity / task of the process. Later on, these activities / tasks are
looked upon carefully to what can be automated and what can not be automated and
may be left as manual. For example, in the hiring process of government, one of the
most common activities is constitution of committee as per policy of government.
While automating the business process, this activity is usually kept as manual due to
its nature.
These types of considerations play a major role while gathering the functional
requirements in order to develop the robust design of software. Also, this phase of
software is usually felt very important as it is considered as first and most important
building block for any e-government project.
In this regard, the basic course of action is to develop the Software Requirement
Specification (SRS) document. The below material defines the basic structure and
standards to be followed in preparation of SRS for e-government projects.
4.1.2 Purpose
In this subsection we identify system whose software requirements are specified in
this document. Revision or release number is also included in this subsection. Scope
of the system should be described by this part of SRS.
Note: The Business Process Model may be reviewed to articulate the purpose of
system.
4.1.5 Scope
In this subsection:
• Identify the software product(s) to be produced by name e.g. Title of
Software Module
• Explain what the software product(s) will, and, if necessary, will not do.
• Describe the application of the software being specified, including
relevant benefits, objectives, and goals
• Be consistent with similar statements in higher-level specifications.
4.1.6.1 References
If the SRS defines a component of a larger system, relate the requirements of the
larger system to the functionality of this software and identify interfaces between the
two. A simple component diagrams can show the major components of the overall
system, subsystem interconnections, and external interfaces can be helpful.
Organize the functions to make them understandable to any reader of the SRS. In this
regard all the relevant requirement to one function may be bundled together in a
sensible manner. Specifically, a picture of the major groups of related requirements
and how they relate is required here.
• Class diagram
• Stereo types
• Constraints
• Tag values
Describe the logical and physical characteristics of each interface between the
software product and the hardware components of the system. This may include the
supported device types, the nature of the data and control interactions between the
software and the hardware, and communication protocols to be used.
Describe the connections between this product and other specific software
components (name and version), including databases, operating systems, tools,
libraries, and integrated commercial of the shelf components (COTS). Identify the data
items or messages coming into the system and going out and describe the purpose of
each. Describe the services needed and the nature of communications. If the
documents describe detailed application programming interfaces protocols. Identify
data that will be shared across software components.
• Ports
• Protocols
The following template will be used as Standard for organizing the functional
requirements for the product by system features, the major services provided by the
product. It may be preferred to organize this section by use case, mode of operation,
user class, object class, functional hierarchy, or combinations of these, whatever
makes the most logical sense for the product.
REQ-1:
REQ-2:
Specify those requirements that are concerned with possible loss, damage, or harm
that could result from the use of the product. Define any safeguards or actions that
must be taken, as well as actions that must be prevented. Refer to any external
policies or regulations that state safety issues that affect the product’s design or use.
<Under Development>
Usability
Define any other requirements not covered elsewhere in the SRS. This might include
database requirements, internationalization requirements, legal requirements, reuse
objectives for the project, and so on. Add any new sections that are pertinent to the
project.
4.2.1 Introduction
It is a representation of a software system created to facilitate analysis, planning,
implementation, and decision making. It is also called as blueprint or model of the
software system. The SDD is used as the primary medium for communicating
software design information.
4.2.1.1 Purpose
In this subsection we identify system whose design has been specified in this
document. Revision or release number is also included in this subsection. It should be
noted that as writer of SDD must describe how the system perform different
functionalities which are designed against requirements specified in SRS.
Scope
In this subsection:
• Identify the different design entities and describe the important
properties and relationships among those entities.
• Match / Trace the different requirements gathered during SRS with
design entities.
This subsection presents the definitions of all terms, acronyms, and abbreviations
required to properly interpret the SRS. This information may be provided by reference
to one or more appendices in the SRS or by reference to documents.
References
A list of referenced and / or related publications used for preparing the SDD must be
incorporated in this subsection.
The life cycle of a software system is normally defined as the period of time that
starts when a software product is conceived and ends when the product is no longer
available for use. The life cycle approach is an effective engineering management
tool that provides a model for a context within which SDD is the world class approach
to model the blueprint. While it is beyond the scope of this document to prescribe a
particular standard life cycle, a typical cycle will be used to define such a context for
the SDD. The software life cycle mentioned in this document conforms to IEEE / EIA
12207.1-1997 that includes inception, elaboration, testing and transition phases.
For both new software systems and existing systems under maintenance, it is
important to ensure that the design and implementation used for a software system
must satisfy the requirements (gathered during SRS) driving that system. SDD will
be carried out during the elaboration phase.
Design Considerations
This section describes many of the issues which need to be addressed or resolved
before attempting to devise a complete design solution.
Assumptions or Dependencies
Describe any assumptions or dependencies regarding the software and its use.
General Constraints
Describe any global limitations or constraints that have a significant impact on the
design of the system's software (and describe the associated impact). Such
constraints may be imposed by any of the following:
Describe any design decisions and / or strategies that affect the overall organization of
the system and its higher-level structures. These strategies should provide insight into
the key abstractions and mechanisms used in the system architecture. Describe the
reasoning employed for each decision and / or strategy (possibly referring to
previously stated design goals and principles) and how any design goals or priorities
were balanced or traded-off.
Make effective use of factor table and issue cards already developed in SRS. Such
decisions might concern (but are not limited to) things like the following:
Make sure that when describing a design decision that you also discuss any other
significant alternatives that were considered, and your reasons for rejecting them.
Sometimes it will be most effective to employ the "standard format" for describing a
strategy.
This section should provide a high-level overview of how the functionality and
responsibilities of the system were partitioned and then assigned to subsystems or
components. Don't go into too much detail about the individual components
themselves (there is a subsequent section for detailed component descriptions). The
main purpose here is to gain a general understanding of how and why the system was
decomposed, and how the individual parts work together to provide the desired
functionality.
Describe how the system was broken down into its components / subsystems
(identifying each top-level component / subsystem and the roles / responsibilities
assigned to it). Describe how the higher-level components collaborate with each other
in order to achieve the required results. Feel free to make use of design patterns,
either in describing part of the architecture or for referring to elements of the
architecture that employ those.
• Class diagram
• Component diagram
• State Machine mechanism of UML 2.x
• Extensibility Mechanisms of UML 2.x
Most components described in the System Architecture section will require a more
detailed discussion. Other lower-level components and subcomponents may need to be
described as well. Each subsection of this section will refer to or contain a detailed
description of a system software component. The discussion provided should cover the
following software component attributes:
4.2.7 Classification
The kinds of components, such as a subsystem, module, class, package, function, file
etc.
4.2.8 Definition
The specific purpose and semantic meaning of the component.
4.2.9 Responsibilities
The primary responsibilities and / or behavior of this component. What does this
component accomplish? What roles does it play? What kinds of services does it provide
to its clients? For some components, this may need to refer back to the requirements
specification.
4.2.10 Constraints
Any relevant assumptions, limitations or constraints for this component, this should
include constraints on timing, storage or component state and might include rules for
interacting with this component (encompassing pre-conditions, post- conditions,
invariants other constraints on input or output values and local or global values, data
formats and data access, synchronization, exceptions etc.).
4.2.11Composition
A description of the use and meaning of the subcomponents that are a part of this
component.
4.2.13 Resources
A description of any and all resources that are managed, affected, or needed by this
entity. Resources are entities external to the design such as memory, processors,
printers, databases, or a software library. This should include a discussion of any
possible race conditions and / or deadlock situations, and how they might be resolved.
4.2.14 Processing
A description of precisely how this component goes about performing the duties
necessary to fulfill its responsibilities. This should encompass a description of any
algorithms used; changes of state; relevant time or space complexity; concurrency;
methods of creation, initialization, and cleanup; and handling of exceptional conditions.
• Class diagram
• Component diagram
• State Machine mechanism of UML 2.0
• Class diagram
• Component diagram
• State Machine mechanism of UML 2.x
5 IMPLEMENTATION STANDARDS
5.1 Introduction
Introduction includes identification of different subsections of the Implementation
document. It should present an overview of the entire document. It should be noted that
writer this document must describe how the system must will be implemented.
Purpose
In this subsection system must be identified which is going to be implemented. Revision
or release number is also included in this subsection. Scope of the system should be
described by this part of document.
Document Conventions
This subsection contains standards or typographical conventions that were followed
when writing implementation document, such as fonts or highlighting that have special
significance.
This section will contain the description about the different types of reader for this
document such as developers, project managers, users, testers, and documentation
writers etc. It is also necessary to give some details about how the document is
organized.
References
Reference subsection will focus on following points:
SOAIF mainly consists of high-level software components that include Web services.
Implementation of an SOA requires tools as well as run-time infrastructure software,
which collectively makes SOAIF as desirable implementation framework for
e-government projects.
5.2.2.1 Interoperability
Interoperability refers to the ability of a collection of communicating entities to share
specific information and operate on it according to an agreed-upon operational
semantics. Increased interoperability is the most prominent benefit of SOAIF,
especially when we consider Web services technology in e-government projects.
Today, mainstream development platforms—such as Microsoft’s .NET and Sun’s Java
Platform, Enterprise Edition (Java EE), as well as open source alternatives (e.g., Perl
and PHP)—provide frameworks to implement web services. Service users and
providers implemented in disparate platforms using different languages can interact
transparently through a call-and-return mechanism. That is possible because web
services define the interface format and communication protocols but do not restrict
the implementation language or platform.
5.2.2.2 Performance
Performance can mean different things in different contexts. In general, it is related to
response time (how long does it take to process a request), throughput (how many
requests overall can be processed per unit of time), or timeliness (ability to meet
deadlines, i.e., to process a request in a deterministic and acceptable amount of time).
In most cases, performance is negatively affected in SOA. The architecture should be
carefully designed and evaluated prior to implementation to avoid performance pitfalls.
5.2.2.3 Security
Although security denotes different things with respect to software systems, in
general, it is associated with four principles
5.2.2.4 Reliability
Reliability is the ability of a system to keep operating over time without failure. Several
aspects of reliability are important within an SOA but for e-government project
following aspect must get special attention by all concerned.
sequence. Although techniques for ensuring the reliable delivery of messages are
reasonably well understood and available in some messaging middleware products
today, messaging reliability is still a problem.
5.2.2.7 Availability
Availability is the proportion of time a system or component is operational and
accessible when required for use. Availability of services both from the user’s and
provider’s perspectives is a concern for the success of an SOA. From the service
user’s perspective, if the service is not available (even transiently), then the system
cannot successfully meet its functional requirements. From the service provider’s
perspective, in order for the service to be used (for which the provider may receive
compensation), it must be available when needed.
5.2.2.8 Modifiability
Modifiability is the ability to make changes to a system quickly and cost-effectively.
SOA promotes loose coupling between service users and providers. E-government
services should be self-contained, modular, and accessed via cohesive interfaces.
These characteristics contribute to the creation of loosely coupled SOA for
government of Pakistan where there should exist few, well-known dependencies
between services. In this way the cost of modifying the implementation of services is
reduced and the overall system modifiability increases. However, if service interfaces
need to be changed, the change may create problems because once service
interfaces are published and used by applications, it can be difficult to identify who is
using a service and what impact changing its interface will have. Extensibility is a
special case of modifiability. Extensibility is the ease with which the services’
capabilities can be extended without affecting other parts of the system. It is an
important quality because the business environment in which a software system lives
is continually changing.
5.2.2.9 Testability
Testability is the degree to which a system or service facilitates the establishment of
test criteria and the performance of tests to determine whether those criteria have
been met. Testing an e-government system that uses an SOA is more complex for the
following reasons.
• It is more difficult to setup and trace the execution of a test when the system
elements reside on different machines across the network.
• The source code of external services may not be available to service users defining
and running the tests. Test cases have to be defined exclusively based on the
published interface and documentation. Besides, service users may not have access
to log files or other outputs generated when the external service is executed.
5.2.2.10 Usability
Usability is a measure of the quality of users experiences in interacting with
information or services. The distributed nature of SOA can have a profound impact
when the processing of a user action involves calls to remote service providers. When
service calls take a long time to respond, it is usually a good idea to move the service
communication to a separate thread on the application that contains the service user.
In that case the user interface of that application can still be responsive while service
requests are being made.
5.2.2.11 Scalability
Scalability is the ability of an SOA to function well (without degradation of other quality
attributes) when the system is changed in size or in volume in order to meet users’
needs. The major issue in SOA scalability is the ability of the site where the services
are located to accommodate an increasing number of service users without
performance degradation. In general web services technology does not offer any
inherent scalability feature. To respond to scalability requirements in e-government
projects, the architect has to rely on the mechanisms provided by the platform
vendors.
Metadata Value
Name Address
Description A collection of data describing the addressing of locations.
Business Format EGD Standard
Element Type Information Block
XML Schema
Validation Validation rule for each attribute will be specified individually.
Value
Owner SP & A Wing
Based On
Verification Verified by SP&A wing
Comment
Metadata Value
Data Element
Country
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Country
Description A String representing a Country.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Countries List of EGD.
• Can not have two Countries in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word.
Compliance M
Security Public
Comment
Metadata Value
Data Element
Province
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Province / State
Description A String representing a Province / State.
Business Format varchar(15)
Element Type Attribute
XML Schema
Validation • Validated against Districts List of EGD.
• Can not have two Districts in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word.
Compliance M
Security Public
Comment
Metadata Value
Data Element
City
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
City
Description A String representing a City.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against City List of EGD.
• Can not have two Cities in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance M
Security Public
Comment
Metadata Value
Data Element
District
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
District
Description A String representing a District.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Districts List of EGD.
• Can not have two Districts in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Tehsil
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Tehsil
Description A String representing a Tehsil.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Tehsil List of EGD.
• Can not have two Tehsil in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Taulka
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
1.3 Taulka
Description A String representing a Taulka.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Taulka List of EGD.
• Can not have two Taulka in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Sector
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
1.4 Sector
Description A String representing a Sector.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Sector List of EGD.
• Can not have two Sectors in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word.
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Village
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Village
Description A String representing a Village.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Village List of EGD.
• Can not have two Villages in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Town
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Town
Description A String representing a Town.
Business Format varchar(50)
Element Type Attribute
XML Schema
Validation • Validated against Town List of EGD.
• Can not two Districts in a single row.
• Will not make use special char.
• The first character of each occurrence must be A - Z.
• Consecutive spaces are not allowed within single word..
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Building Type
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Building Type
Description A String representing a Village.
Business Format enum('C','N')
Element Type Attribute
XML Schema
Validation • Validated against building type i.e. ‘C’ and ‘N’
• Can not have both types in a single row.
• Will not make use special char.
• The first character of each occurrence must be ‘C’ and ‘N’.
• Consecutive spaces are not allowed within single word..
• Registry Certificate.
• Transfer Deed
• Any other property documents issued by concerned authorities which
clearly shows building type.
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Building Number
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Building No
Description A String representing a Building No.
Business Format Varchar (50)
Element Type Attribute
XML Schema
Validation Validated against the given business format.
Value Should be within Varchar (50)
Default value
Owner SP & A Wing
Based On
Verification One or more of the following Certificates are required for verification purpose.
• Registry Certificate.
• Transfer Deed
• Any other property documents issued by concerned authorities which
clearly shows building type.
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Street No
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Street No
Description A String representing a Street No.
Business Format Varchar (50)
Element Type Attribute
XML Schema
Validation • Can not have two Street No. in a single row.
• Will not make use special char.
• The first character of each occurrence must be 0- 9.
• Consecutive spaces are not allowed within single word..
• Registry Certificate.
• Transfer Deed
• Any other property documents issued by concerned authorities which
clearly shows building type.
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Zip Code
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Zip Code
Description A String representing a Street No.
Business Format Varchar (20)
Element Type Attribute
XML Schema
Validation • Can not have two Zip Codes in a single row.
• Will not make use special char must be included in Zip code List of
relevant country.
• Numeric part is a positive integer less than 10000. The alpha part is
a capital letter A-Z.
• Registry Certificate.
• Transfer Deed
• Any other property documents issued by concerned authorities which
clearly shows building type.
Compliance MO
Security Public
Comment
Metadata Value
Data Element
Postal Code
Is Part Of Address
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Date Agreed 05 April 2008
UML diagram Address UML diagram
Name
Postal Code
Description A Number representing a Postal Code.
Business Format Number
Element Type Attribute
XML Schema
Validation Validated against the Number
Value Should be Number
Default value
Owner SP & A Wing
Based On
Verification One or more of the following Certificates are required for verification purpose.
• Registry Certificate.
• Transfer Deed
• Any other property documents issued by concerned authorities which
clearly show Postal Code.
Compliance O
Security Public
Comment
Metadata Value
Status Final
Previous Versions
Later Versions
Name Contact
XML Schema
Value
Based On
Comment
Metadata Value
Status Final
Previous Versions
Later Versions
Name Fax No
XML Schema
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Official Card.
• NTN certificate / sale Tax certificate
• Telephone Directory.
Compliance MO
Security Public
Comment
Metadata Value
Status Final
Previous Versions
Later Versions
Name Phone No
XML Schema
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Official Card.
• NTN certificate / sale Tax certificate
• Telephone Directory.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Mobile No
XML Schema
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Official Card.
• NTN certificate / sale Tax certificate
• Telephone Directory.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Business Format URLs are sequences of characters, i.e., letters, digits, and special characters.
The characters ";", "/", "?", ":", "@", "=" and "&" are the characters which
have been reserved for special meaning.
XML Schema
Value
Default value
Based On
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Email
XML Schema
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Official Card.
• NTN certificate / sale Tax certificate
• Telephone Directory.
Compliance MO
Security Public
Comment
Metadata Value
Status Final
Previous Versions
Later Versions
Name Financial
Description A collection of data describing the financial information
XML Schema
Value
Based On
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Name Person
XML Schema
Value
Based On
Comment
Metadata Value
Name Name
XML Schema
Has Parts
• First name
• Middle name
• Family name
country.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Title
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Validation 1. Values less than 10 in the day, month or year elements should
be entered with a zero in the first position.
2. Days must not be greater than 30 in April, June, September
and November.
3. Days must not be greater than 28 in February except when 29
are allowed for a leap year.
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Metric Certificate.
• Marriage Certificate
• National Health Service Medical Card
• Child's Certificate of Vaccination
• Certificate or testimonial from employer.
• Certificate of naturalization
• Passport.
• Life insurance policy.
• School certificate or report.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Business Format Date time, 20 Characters in the format MM-DD- YYCC, HH-MM-SS
XML Schema
Validation 1. Values less than 10 in the day, month or year elements should
be entered with a zero in the first position.
2. Days must not be greater than 30 in April, June, September
and November.
3. Days must not be greater than 28 in February except when 29
are allowed for a leap year.
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Domicile
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Religion
XML Schema
Value • None
• Christian
• Buddhist
• Hindu
• Jewish
• Muslim
• Sikh
• Any other religion (please write in)
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
• Passport
• Any other documents issued by concerned authorities which clearly
show Religion.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Gender
XML Schema
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Photograph
XML Schema
• Should be Image.
Validation
• No Text Item.
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance MO
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name NIC No
XML Schema
• Always in Number
Validation
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Name Nationality
XML Schema
Value
Default value
Based On
Verification One or more of the following Certificates are required for verification
purpose.
Compliance M
Security Public
Comment
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Is Part Of Travel
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Is Part Of Travel
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Is Part Of Travel
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Is Part Of Travel
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
Metadata Value
Is Part Of Travel
Has Parts
Version 1.1
Status Final
Previous Versions
Later Versions
DRAFT VERSION
August 2008
Government of Pakistan
Ministry of Information Technology
Electronic Government Directorate
Memory
Management
Policies
Package It is a type of structure diagram defined by the UML that
Diagram used to reflect the organization of packages and their
elements. When used to represent class elements,
package diagrams provide a visualization of the
namespaces. The most common use for package
diagrams is to organize use case diagrams and class
diagrams.
Resources Resources are entities external to the design such as
memory, processors, printers, databases, or a software
library
Responsibilities It describes what does a component accomplish? What
of a role does it plays? What kind of services does it provide
Component to its clients?
Software A blueprint or model of the software system to be
Design created. It is primary medium for communicating
Document software design information.
Software
Interface
Paradigms
Software life The period of time that starts when a software product is
Cycle conceived and ends when the product is no longer
available for use.
State Machine It is a type of behavioural diagram defined by the UML
Diagram to model the behaviour of a single object, specifying the
sequence of events that an object goes through during
its lifetime in response to events.
Sub-System It describes how the system architecture components
Architecture are further subdivided into subcomponents, and the
relationships and interaction between sub-components
System A high level overview of how the functionality and
Architecture responsibilities of the system were partitioned an then
assigned to subsystems or components
User Interface
Paradigms
Specifications confidentiality.
http://www.oasis-open.org/committees/download.php/
16790/wss-v1.1-spec-os-SOAPMessageSecurity.pdf
Reliability It is the ability of the system to keep operating over time
without failure.
Scalability The ability of service oriented architecture to function
well (without the degradation of other quality attributes)
when the system is changed in size or volume in order
to meet user’s needs.
Service The SOAIF envisions a comprehensive framework that
Oriented provides all the technology that an enterprise might
Architectural need to build and run an SOA. An SOAIF includes both
Implementation design-time and run-time capabilities as well as all the
Framework software functionality an enterprise needs to build and
(SOAIF) operate an SOA.
Service Service-oriented architecture (SOA) is a software
Oriented architecture where functionality is grouped around
Architecture business processes and packaged as interoperable
(SOA) services. SOA also describes IT infrastructure which
allows different applications to exchange data with one
another as they participate in business processes. The
aim is a loose coupling of services with operating
systems, programming languages and other
technologies which underlie applications.
Service The service operates correctly and either does not fail or
Reliability reports any failure to the service user.
Service It is used to define a set of protocols to coordinate the
Transaction outcomes of distributed application actions.
(Ws-Tx) http://msdn.microsoft.com/en-us/library/ms951262.aspx
Simple Object SOAP is a protocol for exchanging XML-based
Access messages over computer networks, normally using
Protocol HTTP/HTTPS. SOAP forms the foundation layer of the
(SOAP 1.2) web services protocol stack providing a basic
messaging framework upon which abstract layers can
be built.
Testability It is the degree to which a system or service facilitates
the establishment of text criteria and the performance of
tests to determine whether those criteria have been met.
Usability It is measure of the quality of a user’s experience in
interfacing with information or services.
Vertical Scaling
Web Service WSDL is an XML format for describing network services
Description as a set of endpoints operating on messages containing
Language either document-oriented or procedure-oriented
(WSDL) information. The operations and messages are
described abstractly, and then bound to a concrete
network protocol and message format to define an
endpoint. Related concrete endpoints are combined into
abstract endpoints (services).
Web Service – The Web Services Interoperability Organization (WS-I)
Interoperability is an open industry organization chartered to establish
(WS-I) Best Practices for Web services interoperability, for
8 What Next?
The Enterprise Service Bus / Government Service Bus (GSB) in GoP context is based
on the general concept of a bus. The concept of a bus is a very powerful architectural
pattern, proven in many fields. For example, a bus is at the very core of any computer
(hardware) architecture, and transfers data between the various components of the
computer (both internal and external). By using standard interfaces, such a bus can
connect, in a logical sense, several types of peripherals, made by different vendors,
over the same set of wires, without needing point-to-point and one-off connections.
GSB, as its name rightly implies, is itself a pattern based on the general concept of a
bus. And just as advances in hardware bus technologies resulted in various
generations and types of hardware buses with different capabilities (e.g., a parallel
bus versus a USB), implementations of the GSB pattern for services have different
capabilities, some with basic, and some with advanced features. The GSB
architecture at GGD will have advanced capabilities to enable Government of Pakistan
to meet its needs.
The GSB will provide the middleware capabilities throughout the Government of
Pakistan to support service interactions. Additionally, the GSB supports the
communication and integration technologies required by the services, and is capable
The next table provides a summary of the requirements for the Government of
Pakistan GSB, including the Service Registry / Repository.
Category Requirement
• GSB needs to support Synchronous and
Asynchronous service interactions
• GSB needs to support Routing, Distribution,
Publish-Subscribe
• GSB needs to support Multiplexers, both
Concentrators and Normalizers.
Integration
• Bus needs to support Transformation and
Pattern
Mediation
Support
• GSB needs to support sub-patterns: Filters,
Enrichers, Wrappers, Aggregation, Re-
sequencers and Split-Sequence
• GSB needs to support Consumers: Scheduler,
Event-Based, Polling, Selective and Durable
Subscribers and Service Activator.
Message
• Support for MQ and JMS
Protocol
• Support for File System protocols
and Format
Mediator • Support for ODBC/JDBC
• Support for JMS transports.
Transports • Support for MQ transport.
• Support for HTTP/S transport.
• GSB needs to work with external Security
Providers
Security • GSB needs to support Authentication
services.
• GSB needs to support Authorization services.
Web
Services • GSB needs to work with Web Services
Manageme management components.
nt
Category Requirement
Standards • STAR (for external business partner
communications)
A standard that has gained some acceptance in the industry and which provides the
necessary protocols and structure for a service directory is UDDI (Universal
Description Discovery and integrations).
The Service directory should natively support UDDI.
The workshop will present the proposed elements for the service registry and cover
the following aspects which will help in formulating the final requirements:
9 APPENDICES
APPENDIX - A: BPD Core Elements Set
Flow Objects: These are the main graphical elements to define the behavior of a
Business Process. There are three Flow Objects:
Connecting Objects: There are three ways of connecting the Flow Objects to each
other or other information.
(i) Sequence Flow: It is used to show the order that activities will be performed in
Process.
(ii) Message Flow: It is used to show the flow of messages between two
participants that are prepared to send and receive them.
(iii) Association: It is used to associate information with Flow Objects. Text and
graphical non-Flow Objects can be associated with the Flow Objects
Swim lanes: There are two ways of grouping the primary modeling elements through
“Swim lanes:”
Artifacts: Artifacts are used to provide additional information about the Process. There
are 03 standardized Artifacts
(i) Data Object: Data Objects are considered Artifacts because they do not
have any direct effect on the Sequence Flow or Message Flow of the Process,
but they do provide information about what activities require to be performed
and / or what they produce.
(ii) Group: A grouping of activities that does not affect the Sequence Flow. The
grouping can be used for documentation or analysis purposes.
(iii) Annotation: Text Annotations are a mechanism for a modeler to provide
additional information for the reader of a BPMN Diagram
Description: In this Use Case diagram, there are six use cases, Namely Employee,
Qualification, Training, PER, Posting History & Promotion Consideration. User will first
enter Employee basic Information & then other related Information as shown in the
figure. Promotion Consideration is derived from Qualification, Training & PER
(Personal Evaluation Report). On the basis of these three, Promotion Consideration
takes place.
Qualification PER
Qualification_Id Period From
Name Period To
Education Grade
Year of Passing Emp_Id
name2
Emp_Id
name3
Employee
Emp_Id
Emp_Name
Gender
Religion
Department
Training
Promotion
Trainig_Id considertion
Course/Trainig
Grade
Location
Promotion_Date
Institute
Authority
Emp_Id
Remarks
Posting History Emp_Id
Posted As
BPS
Department
Period From
Period To
Emp_Id
Description: In the above diagram Employee is the main Class. This class contains
Employee Personal information. Qualification Class contains information about
Employee Education. While Training Class explains Training / Courses information
plus location & Institute in which Employee got trained. Similarly Posting History Class
is for recording Posting History, Department in which he served & also his BPS Status.
PER class is for storing Employee Evaluation Report. Promotion Consideration Class
contains Information about Employee Promotion Status. Moreover Promotion depends
upon qualification, Trainings, & PER report.
Component Diagram
Employee
Promotion
Consideration
Qualification
Posting
History PER
Training
Client Request
Web Browser Application Server
User will access the
Employee info from (Establishment Div
Establishment Div Application hosted
Application on the Server)
preemptiv e
Response
Description: In this activity diagram, user first record Employee basic information. After
this Next two activities takes place simultaneously. i.e. Qualification Information &
Training information. These two activities lead to (PER) Personal Evaluation Report.
PER results in Employee Promotion. Which is last activity. Also there is an activity
named Posting History which is independent of all activities
Web Browser :Em ployee :Qualification :Training :PER :Posting History :Promotion Database Server
Us er
Consideration
Unauthorized
Login Response
User Access
Emp Info Request
Successful/
Unsuccessful Response
User Access
Qualification Info Request
Response
Successful/
Unsuccessful
User Access
Training Info Request
Successful/ Response
Unsuccessful
Success ful/
Unsucces sful Response
Successful/ Response
Unsuccessful
User Access
Prom otion Info
Request
Success ful/
Unsucces sful Response
As the technology grows there is a need to accommodate the new software technologies
in the system. Further more the system will interact with verity of software systems and
technologies. These software systems and technologies are expected to be change time to
time.
Influencing Factors
Solution
As we follow the CBD (Component based development) the system will exhibit the loose
coupling so the changes will be easily accommodated.
Strategy
System components which use this software can be made cohesive and interaction with
this software should be loose.
Related Strategy
Factor Table
1) Security:
Description: This system will provide high level security regarding authentication,
permissions & user verification.
Stimulus / Response Sequence: If unauthorized user tries to enter the system, it will
not allow & will send a message. Also if a user mistakenly enters invalid data, system
will not save it & will send error message.
2) Officers Management:
Description: This system will be able to manage officers, their personal information &
all other related information regarding qualification, Training etc.
Stimulus/ Response Sequence: If user mistypes any mandatory field, system will not
allow it & will send an error message.
Functional Requirements: System will manage key information of over all employees
in the context of their joining date, department name & qualification. On the basis of
these information their designation, BPS & their salary will be managed.
3) Flexibility:
Description: This Application will be designed for multiple users to work at a time.
Stimulus / Response Sequence: If multiple users work at a time & application hangs
up then there will be a mechanism to overcome the problem.
Functional Requirements: This will be scalable from a single screen to much more
screens. The flexibility of the application allows numerous users to manage their
related work. All the work done will be stored in the database.