Project: Customer Portal view for internal management system
Technologies: Vaadin, JPA, PostgreSQL backend, REST, Pdf.js
Time of work: 2 months
Startup of project till: february 2016
Management: Atlassian Jira, Bitbucket, Mercurial, HipChat, Bamboo + AWS,
Delivered input data: Functional requirements, Navigation, UX interface design
Functional description: Application is a fronted facing customers and getting specific data from internal EAM/CMMS system. Data for application are served through http/REST interface from internal system.
- standard vaadin themes
- no need for custom Vaadin components
- application skeleton - Maven skeleton, Vaadin 7.x, local database access JPA/Eclipselink, i18n enabled
- portal management login - login window for administrator, language chooser upon login
- customer management - customer list, CRUD operation on customer object, customer with up to 10 parameters. After customer creation generate temporaty login data, print/send via email login data.
- first login wizard - first login of the customer - wizard after temporary login. First step - customer data fill-in. Step 2 - adding customer user account (up to 5 parameters)
- customer login - customer login window, language chooser upon login
- customer users management - customer's user list, CRUD operation on the user object, can block user, can send email with invitation/login details
- communication with EAM server through REST interface - communication to backend EAM system. Http/Rest interface.
- product view - product parameters (up to 20 parameters), product structure (element tree), element view, attached files view, attached service events view.
- file view - view of PDF files using pdf.js library. Only PDF files. Depending on attachement properties user can display file and/or print/download file.
- service issues view - main summary view of service issues for a given customer. Issue browsing - comments, issue parameters (up to 10 parameters).
- source code in Bitbucket mercurial repository
- unit/integration tests for main controllers (business logic)
- work on shared Jira instance with constant log of work