EUROPEAN UNION European Economic and Social Committee Committee of the Regions Joint Services - Directorate for Logistics IT Unit APPEL D'OFFRES OUVERT CDR/ARCH/41/2014 Annexe B The EESC-COR IT environment TABLE OF CONTENTS 1. CONTEXT ......................................................................................... 3 1.1. BACKGROUND .................................................................................. 3 1.2. COOPERATION BETWEEN THE COMMITTEES ................................................. 3 1.3. IT ORGANISATIONAL SETUP ................................................................... 4 1.3.1. Information Systems .................................................................. 4 1.3.2. IT Infrastructure ........................................................................ 5 1.3.2.1. Data Centre ............................................................................ 5 1.3.2.2. Office Automation...................................................................... 5 1.3.2.3. Telecommunications .................................................................. 6 1.3.3. 2. User Support Services ................................................................ 6 IT ENVIRONMENT ............................................................................... 7 2.1. NETWORK INFRASTRUCTURE .................................................................. 7 2.1.1. Local Area Networks (LAN) .......................................................... 7 2.1.2. Wide Area Networks (WAN) .......................................................... 7 2.1.3. Building wiring .......................................................................... 7 2.1.4. Network administration................................................................ 7 2.2. TELEPHONY..................................................................................... 7 2.3. WIFI ............................................................................................. 7 2.4. SERVERS ....................................................................................... 8 2.4.1. 1.1. Servers for centralised IT management ............................................ 8 WORKSTATIONS ...............................................................................10 2. ENVIRONMENTS FOR DEVELOPMENT OF CENTRALISED APPLICATIONS ..... 11 3. DEVELOPMENT ENVIRONMENTS AND RECOMMENDATIONS...................... 12 3.1. DEVELOPMENT ENVIRONMENTS - OVERVIEW ...............................................12 3.2. DEVELOPMENT ENVIRONMENTS - TOOLS AND ENVIRONMENTS ............................13 3.3. DEVELOPMENT ENVIRONMENTS - TECHNOLOGIES ..........................................14 3.4. METHODOLOGICAL RECOMMENDATIONS ....................................................16 2 of 17 1. CONTEXT The IT unit works under the terms of the Cooperation Agreement between the European Economic and Social Committee and the Committee of the Regions. 1.1. Background European Economic and Social Committee (EESC) The EESC is an assembly of 353members representing organised civil society. The EESC issues opinions based on mandatory or optional referrals, using the right of initiative or as exploratory opinions. The EESC promotes civil dialogue with networks of national economic and social councils and with civil society organisations at the level of the European Union, in Member States and other European countries, in Latin America, India, China, etc. The EESC is one of the most active protagonists and promoters of participatory democracy. Committee of the Regions (COR) The COR is an assembly of government. The COR gives local and regional government a say over the drafting of EU legislation (70% of EU laws are implemented at local/regional level). The COR encourages a culture of Subsidiarity. The COR provides a meeting place where regions and cities can share best practice and take part in a dialogue with the European institutions. 1.2. 353 members representing local and regional Cooperation between the Committees Cooperation between the Committees is based on a Cooperation Agreement for the sharing of services in the area of Logistics and Translation. The current agreement entered into force on 1st January 2008 for a period of 7 years The agreement contains the following provisions concerning Governance: Political Monitoring Group – responsible for political supervision (6 Members of each Committee meeting 3 times per year) Secretaries General – responsible for strategic issues affecting the Joint Services (6 meetings per year) 3 of 17 Cooperation Committee – responsible for the supervision and coordination of services provided (Joint Services Directors, Directors of the Administration and concerned HoU’s meeting every month) The agreement also defines the rules concerning assignment of staff & budget to the Joint Services In certain areas, including IT, the Cooperation Agreement is complemented by "MiniAgreements" defining technical arrangements for each department concerned. The main points of the IT "Mini Agreement" are that each Committee should appoint an IT Coordinator responsible for collecting the IT needs & priorities of their respective users, and that each Committee should establish an IT Steering Committee. 1.3. IT Organisational Setup The IT unit serves the computing needs of the Secretariat and the 344 Members of each Committee. The IT unit is composed of the following services: Information Systems IT Infrastructure User Support Services The main activities of each service are summarised below: 1.3.1. Information Systems The role of the Information Systems Head of Service encompasses: Mission, vision & governance Quality programme Aligning IT & business strategy Balancing supply & demand Managing change Information Systems Management is reinforced by: Project Support – implements best practices in terms of Methodology, Architecture & Portfolio (MAP); Project Resources – implements Supply & Demand Management, Technology Tracking and Inter-institutional co-operation in the field of "Information systems" 4 of 17 Project Managers are in charge of each of 4 "Business" sectors: i. HR & Finance ii. Political Work iii. Document Management iv. Communication 1.3.2. IT Infrastructure The IT Infrastructure service is composed of 3 sectors: Data Centre, Office Automation & Telecommunications whose respective activities are summarised below. The IT Infrastructure service is also responsible for IT security and coordination with EU CERT. 1.3.2.1. Data Centre System administration of database and application servers Database administration (Oracle) Design, implementation and operation of the standby Data Centre and back-up procedures Deployment, and technical support for third party applications Technical support for the application framework 2nd level support Inter-institutional co-operation in the field of "Database technologies" 1.3.2.2. Office Automation Design, implementation and operation of the "Back-office" infrastructure – installation, monitoring, upgrading, anti-virus measures, shared resources and back-ups – file servers, e-mail servers, print servers, , … Development and maintenance of the tools for user management Access, "who is who", mailboxes, "quota" and "active directory" Reference configuration for the standard PC and software packages 2nd level support 5 of 17 Inter-institutional co-operation in the field of "Office Automation" 1.3.2.3. Telecommunications Telephony & networks - design, implementation & operation Integrated data/voice network for all buildings and interbuilding links External network connections – Internet & Testa Network & telephony operations including inventory 2nd level support Inter-institutional co-operation in the field of "Telecommunications" 1.3.3. User Support Services The User Support Services are responsible for: Helpdesk – the Single Point of Contact for all IT queries 1st line user support User/Identity Management Communication and Documentation o "Welcome sessions" for new users o Preparation of weekly information messages o Preparation and updating of documentation Logistics o Installation and replacement of equipment and software o Writing-off of obsolete equipment o Updating of the inventory Telephone switchboard & associated services Coordination with the other IT sectors (User & Change Committees) Coordination with the training services 6 of 17 2. IT ENVIRONMENT 2.1. Network infrastructure The EESC-COR currently has a routed TCP/IP network infrastructure. 2.1.1. Local Area Networks (LAN) The following LAN technologies are used at present: Switching Ethernet VLAN Fast Ethernet / Gigabit Ethernet / 10 Gigabit Ethernet 2.1.2. Wide Area Networks (WAN) The EESC-COR has various resources for external communications: Internet; Network interlinking the European Institutions. 2.1.3. Building wiring IT wiring in all EESC-COR buildings is based on the following rules: horizontal cabling: multipurpose wiring, four twisted pairs, Category 5, Class D (as a minimum requirement); vertical cabling: multi-mode optical fibres / twisted pairs. Optical fibres (single-mode and multi-mode) are the main media used for interconnecting contiguous buildings. 2.1.4. Network administration Administration of the EESC-COR network is handled via redundant stations at each site. 2.2. Telephony All Telephony is based on an entirely IP telephone architecture. 2.3. WiFi WiFi coverage is available in all conference rooms and public areas. 7 of 17 2.4. Servers 2.4.1. Servers for centralised IT management The computer centre uses mainly Windows servers and Oracle servers. The Windows servers provide the following services: o File servers, terminal server, system supervision; o Logon validation services (Active Directory), DNS, DHCP, folder replication, data transfer, remote access services via Windows Terminal Services, application servers; o E-mail, Intranet/Internet; o Virtualisation (VMware) Oracle servers: o Database servers (Oracle) The computer centre also has SAN storage infrastructure based on EMC VNX. The following table sets out standard hardware and software configurations for servers: Hardware Current configurations VMware servers: Intel,4 Quad-Core CPUs, 128 GB RAM Windows servers: Intel,Quad-Core, 2 to 4 CPUS, 8 to 32 GB RAM ORACLE servers: SPARC64, 8 Quad Core CPUs, 64GBs RAM 8 of 17 Software Current configurations Operating system: Windows 2003 (phase out) Windows 2008 R2 Enterprise 64 Bits SUN Solaris 10 SPARC Relational Database Oracle 10 (phase-out) Management Oracle 11 Software Application server: .NET, JBoss, Tomcat Web Server: IIS 6 (Windows 2003) IIS 7 (Windows 2008 R2) Apache Reporting and analysis tool: Business Objects XI (phase out) Business Objects BI With regard to software, and in line with the policy adopted by the European Institutions, the EESC-COR is taking an open source solution approach whenever possible: http://ec.europa.eu/dgs/informatics/oss_tech/index_en.htm Tools are used for server administration, supervision and backup at central and departmental level. 9 of 17 1.1. Workstations The EESC-CPR workstations run in a Windows environment. Users and resources are managed through one specific Active Directory domain. A DNS structure is used for name resolution. In order to meet specific needs with regard to applications, together with management, security and portability requirements, the EESC-COR has defined a standard configuration seeking to make workstations totally user-independent and give users an enhanced level of service based on the portability of their parameters and documents. The following table sets out the EESC-COR's standard hardware and software configurations for work stations: Hardware Current configuration Intel Celeron CPU G530 (2,4GHz); 4 GB, HD 250GB, NIC 10/100/1000, DVD-RW, USB Software Current configuration developments Operating system: Windows Seven 64 bits SP1 Office suite: Office 2010 32 bits SP1 Mail user agent: Outlook 2010 32 bits SP1 Web client: Internet Explorer 9 / Mozilla FireFox 15 10 of 17 2. ENVIRONMENTS FOR DEVELOPMENT OF CENTRALISED APPLICATIONS For centralised applications hosted at the EESC/CoR, the following environments are provided: Name Purpose Kind of data Development Development No "real" data Test Development tests Representative test data, where sensitive information – derived from real data – are obliterated Technical barrier Acceptance User acceptance tests Production Real work Contains real data which are copied on a regular basis from the production environment Real data The technical barriers between these environments are maintained by the database and system administrators. 11 of 17 3. DEVELOPMENT ENVIRONMENTS AND RECOMMENDATIONS 3.1. Development environments - Overview At present, there are 4 main development environments been used, Power builder, JavaJ2EE, .NET and SharePoint. PowerBuilder It has been one of the main leaders world-wide in the Client-server application architecture. Because of its powerful features to access databases, the rich functionality and the relatively low learning curve has been extensively used in our organisation. Several of the critical systems are developed using this technology. By now the Client-server paradigm has been questioned, since the internet has imposed the use of web based applications. .Net .Net has become the standard development environment for the Members portal and all the internet applications. It has a high degree of flexibility and it is well suited for agile development. It supports multilingualism and it has become a robust development platform. Java Java was introduced in the year 2002 with the development main operation applications such as Agora (Political work back office). Java was chosen to be the main development language for the Enterprise development. Back then Java-J2EE was the standard of modern enterprise application development. Java-J2EE offers reliable enterprise architecture for web based applications. From the different java products and providers the IS service choose to use the Open source tools and servers. SharePoint SharePoint is a Content Management platform. SharePoint was introduced in the year 2009 with the development of Web platforms. SharePoint is now: the main development environment for the Websites and the main environment for the Document Management 12 of 17 3.2. Development environments - Tools and environments Programs used by the development team to carry out the implementation of the applications Power Builder Tools Power Builder Subversion - SVN Power Builder runtime environment Description Usage Integrated development environment from Sybase Application development and release (creation of executable). Source control system.. Versioning of objects. Each new version of an objects is registered and kept save. The system allows recalling the previous versions of an object. Runtime environment for PowerBuilder applications The runtime environment has to be installed in the client PCs using Power builder applications. The runtime environment and the development environment have to be synchronized. Java – J2EE Tools Description Usage Eclipse Integrated development environment for Java. Open source. Application development JBoss Application server Each developer has a JBoss instance running in his/her PC. This server is used for testing the development. Ant Scripting tool to build and deploy the application. Open source. The java code is transformed in executable code that can be deployed in JBoss ready to run. Source control system.. Versioning of objects. Each new version of an objects is registered and kept save. The system allows recalling the previous versions of an object. Subversion - SVN .NET and Sharepoint Tools Visual Studio 2010 Description Integrated development environment for .NET. Usage Application development. 13 of 17 Microsoft. SharePoint Designer MOSS designer Website design InfoPath 2010 Forms Creation of forms IIS Applications server. Each developer has a IIS server instance running in his/her PC. This server is used for testing the development. Search Server Driver Driver for access to content management system TFS Espace public interface (phase-out) Source control system. Versioning of objects. Each new version of an objects is registered and kept save. The system allows recalling the previous versions of an object. Description Usage Reporting Tools Business Objects Reporting development environment Tool used to produce reporting environments and predefined reports. The reporting environments allow final users to access the enterprise information and produce ad-hoc reports based on it. Corporate tools Tools Description Usage SQL navigator SQL developer Database management system Consultation of database structure. Creation, modification and deletion of database objects (tables, synonyms, …) TOAD 3.3. Development environments - Technologies Programming languages, modelling languages and techniques used by the development team to produce an application. Power Builder Tools Description 14 of 17 Power script Power builder programming language SQL – PL/SQL Database access programming language Java – J2EE (Java 2 Platform, Enterprise Edition) Tools Description Java Generic programming language Jsp Programming language to produce dynamic web pages Javascript Programming language to add behaviour in jsp pages Ajax Techniques that allow web applications to retrieve data from the server asynchronously Struts Java framework used to support the application web pages Server side technology used to implement the business rules of the application. EJB Part of the J2EE architecture. Ant Low level programming used to build and deploy Java applications SQL – PL/SQL Database access programming language .NET and Sharepoint Tools Description VB .net Generic programming language for .Net environment. to create dynamic pages and/or web-services C# Generic programming language Asp .net Programming language to produce dynamic web pages Ajax Techniques that allow web applications to retrieve data from the server asynchronously VB 6 Generic programming language, VB .Net predecessor. SQL – PL/SQL Database access programming language 15 of 17 3.4. Methodological Recommendations Joint Services has adopted the RUP methodology. There are several reasons: RUP is a wide spread and well known framework that covers the complete development process. JS - Information Systems has carried out a project in order to adapt RUP to their needs. Training is available. Some supporting tools are already used in the Information System Service. Join Service use, as much as possible Agile development methods. As a general guideline, in order to reduce the risks linked to integrating new components on the production site, developers or contractors will have to carry out their activities in an interactive manner and in close collaboration with the IT services of the EESC/CoR. Namely: The use of mock-ups and prototyping will be the preferred methodology during the analysis and development phases. The contractor will have to present and deliver regularly, within a maximum timeframe of four to five weeks, the successive versions of the components in his test environment. This will allow progressive validation version by version. In order to allow corrective and perfective maintenance of work accomplished, the contractor will have to hand over the source codes of this development and produce relevant technical documentation. Recommendations concerning SharePoint developments As a general guideline, the contractor undertakes to use standard SharePoint 2010 components rather than developing new components. In particular, the only database to be used will be the native SharePoint 2010 database. Standard SharePoint "lists" will be used for saving data. Corporate tools Programs used by the development team to carry out the analysis design and implementation of the applications Tools JIRA Description Change management and bug track system. Balsamic is used to design Mockups Usage The system contains all the changes requested for the existing applications. The changes can be followed-up and organized by version, release, etc. 16 of 17 Green Hopper supports Agile development StarUML Software modelling tool for UML Production and management of UML documents used to model applications (behaviour, structure and data) 17 of 17