23
http://www.esofthead.com eSoftHead Groupware solutions

eSoftHead - groupware solution

Embed Size (px)

DESCRIPTION

This slide presents the eSoftHead groupware solution.

Citation preview

Page 1: eSoftHead - groupware solution

http://www.esofthead.com

eSoftHead Groupware solutions

Page 2: eSoftHead - groupware solution

http://www.esofthead.com

eSoftHead profile• A Vietnamese IT company set up since 8/2008.• eSoftHead offers the following services:

– Outsourcing and Offshoring.– Technical consultant.– Customized services from eSoftHead products.

• Contact information:– Service request: [email protected]– Address: 15/20/12 Truong Quoc Dung street, Ho Chi

Minh city, Viet Nam.– Telephone: (+84) 091 8734 068

Page 3: eSoftHead - groupware solution

http://www.esofthead.com

eSoftHead Competences• Methodology: CMM, RUP, Scrum, XP. • Technology: Web Service, SOA, REST, RIA.• Programming Languages: Java, Flex, .NET.• Frameworks and Libraries: Spring (core and all

extensions), Hibernate, iBatis, Ehcache, Cxf, Grails, Cairgorm.

• Softwares: LDAP, Maven, Ant, CVS, SVN.• Database: MySQL, Oracle, MSSQL Server

Page 4: eSoftHead - groupware solution

http://www.esofthead.com

eSoftHead Solutions• Rich Internet Application: Flex/Ajax base.• Content Management: JCR 170 – Jackrabbit

implementation.• Groupware service: Calendar, Chat, Note,

Contact, News, Forum, Wiki, Project Management• Enterprise architecture: ESB, JMS, Osgi.• Software best practices: TDD, Unit test, API

Design, OO Principles.

Page 5: eSoftHead - groupware solution

http://www.esofthead.com

Enterprise Groupware (Engroup)

• Introduction• Features• Roadmap• Technical Requirements• Engroup Architecture• Development Status

Page 6: eSoftHead - groupware solution

http://www.esofthead.com

Engroup introduction• Engroup is an open

source groupware under GPL license.

• Engroup powers the cooperation among company staff by providing the Chat, Wiki, Forum, etc. modules.

Page 7: eSoftHead - groupware solution

http://www.esofthead.com

Engroup introduction (cont.)• In addition, Engroup

provides the modules for company operations such as HRM, CRM, Document Management, Project Management

• Engroup has been developed since 4/2008.

Page 8: eSoftHead - groupware solution

http://www.esofthead.com

Features• Dashboard: News• Connections: Private Message and User List.• Profile: User account, picture and other personal

information.• Administrator: system and security

configuration.• Human Resource Management: company and

employee information.• Customer Relationship Management: basic

customer contacts, lead, campaign information.

Page 9: eSoftHead - groupware solution

http://www.esofthead.com

Features (cont.)• Document Management• Project Management.• Forum: message board.• Wiki: knowledge management.• Mail: only IMAP is supported.• Chat: any XMPP server is connectable.• To-do: task management.• News: all versions of RSS and Atom are

supported.

Page 10: eSoftHead - groupware solution

http://www.esofthead.com

Roadmap• Engroup 1.5: Document Management, Project

Management and Timesheet modules are added and integrated with existing modules are CRM, HRM. Simple Reporting System is developed that can display charts.

• Engroup 1.6: Advanced Reporting System, Bug Tracking, Timesheet

• Engroup 2.0: enable System Administrator to configure various options of clustering as well as caching level in enterprise environment.

Page 11: eSoftHead - groupware solution

http://www.esofthead.com

Roadmap (cont.)• Many modules such as social networking,

finance etc could be added later.

Page 12: eSoftHead - groupware solution

http://www.esofthead.com

Technical Requirements• Performance and Scalability: services must be

able to serve an unlimited number of users 24/7. Engroup must be designed to be able to run in clustering environment effectively.

• Extensibility: components are designed with loose coupling and high cohesion. Cost of upgrading and extending must be minimal.

Page 13: eSoftHead - groupware solution

http://www.esofthead.com

Technical Requirements (cont.)• Modularity: Each module code base is

independent of the others. One module can be changed without impacting any other one.

• Security: User access is restricted based on method level of service class.

• Testability: The system is designed to make it easy for writing unit test, integration test.

Page 14: eSoftHead - groupware solution

http://www.esofthead.com

High Level Architecture• Communication

method between Client and Server are AMF, HTTP protocols.

• Engroup server modules could be integrated with other clients via REST.

Page 15: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Client Platform• Platform is developed

based on eSoftHead framework including an extension of Adobe Cairngorm framework.

• Module architecture follows MVC pattern.

Page 16: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Client Platform (cont.)• Platform manages

Module life cycle. • Platform routes

messages sent from one module to appropriate client channel that then dispatches events to listening modules. It helps the module loose coupling with each others.

Page 17: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Client Platform (cont.)• Platform and common

API are independent of AIR library.

• Factory pattern is used to separate logic code between platform and specific AIR API → Engroup client can run on both desktop and web environment.

Page 18: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Server Platform• Platform is developed based on Spring

framework and Osgi platform (Equinox) as well.• Platform packages many third-party Java

libraries as Osgi bundles: – Apache libraries.– Chat.– Logging.– XML processing etc.

Page 19: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Server Platform (cont.)• Forum, Wiki, Mail products are incorporated into

Engroup server by:– Changing the legacy code base (Limit usage).– Data integration (for example: LDAP).– API - using Enterprise Integration Framework Spring

Integration to implement publish-subscribe pattern to dispatch messages to appropriate channels.

Page 20: eSoftHead - groupware solution

http://www.esofthead.com

Engroup Server Platform (cont.)• Each Engroup

module follows OO principles:– Each layer has single

and clear responsibility.

– Extensibility.– No cycle dependency.– Separating interface

and implementation into different packages.

Page 21: eSoftHead - groupware solution

http://www.esofthead.com

Development Status• There are more than

20 Flex projects and nearly 30 Java projects in Engroup workspace.

• eSoftHead automates Engroup build process using Hudson – a Java CI server.

Page 22: eSoftHead - groupware solution

http://www.esofthead.com

Development Status (cont.)• Main features are

tested by using unit test or integration test approach.

• eSoftHead developed its test framework library for Osgi platform, LDAP, Mail, Database.

Page 23: eSoftHead - groupware solution

http://www.esofthead.com

Resources• eSoftHead website: http://esofthead.com• Engroup site http://esofthead.com/node/25• eSoftHead blog: http://blog.esofthead.com• Engroup download page:

http://sourceforge.net/project/engroup