Onboarding-Ibos
Web Application
Main structure
● User Interface
● Database
● Activiti framework
● Controller
User Interface
● Login page: Form, using LDAP authentication to login
o Validates usernames and passwords
● My Tasks page: Table displaying pending tasks, data from DB
o Update status from Pending to Approved with form submission
o Accessible for all usernames
● New Employee page: Form to submit details to be saved in DB
o Database updated with form submission
o Only accessible for HR
● Reports page: Table displaying employee details, using DB
o Only accessible for HR
Activiti framework
● Integrated with java class and methods to perform
different service tasks
● Send Emails, update database
o Used Gmail SMTP server setting to send emails,
MySQL for database
● Call the user task
Activiti Workflow
Database
● JDBC API used to connect to mySQL database
● Use JSTL SQL tag to display tables on JSP pages
● JPA
o used to access, persist, and manage data between the Java objects
and the database
o Each new employee object is saved to the database using the entity
manager’s persist method
 occurs as part of the workflow
 Employee object created after the form is submitted
 code: EmployeeDao class and WorkFlowTaskOperations class
Spring MVC
● Integrates UI, Activiti and Database
● Returns a ModelAndView, corresponding to JSP page
● Holds business logic to deploy workflow, update
database, and map URL requests
o GET and POST methods
● Controller is called by dispatcher servlet
o generate HTTP requests and responses
o pass model data to view
Future improvements
● Plan out the overall architecture well
● Could use Activiti framework’s functionality better
● Could use AngularJS for UI
● Utilize the MVC in a better way
o Use the MVC to display database data vs. using jsp
pages to connect to database

Onboarding ibos

  • 1.
  • 2.
    Main structure ● UserInterface ● Database ● Activiti framework ● Controller
  • 3.
    User Interface ● Loginpage: Form, using LDAP authentication to login o Validates usernames and passwords ● My Tasks page: Table displaying pending tasks, data from DB o Update status from Pending to Approved with form submission o Accessible for all usernames ● New Employee page: Form to submit details to be saved in DB o Database updated with form submission o Only accessible for HR ● Reports page: Table displaying employee details, using DB o Only accessible for HR
  • 4.
    Activiti framework ● Integratedwith java class and methods to perform different service tasks ● Send Emails, update database o Used Gmail SMTP server setting to send emails, MySQL for database ● Call the user task
  • 5.
  • 6.
    Database ● JDBC APIused to connect to mySQL database ● Use JSTL SQL tag to display tables on JSP pages ● JPA o used to access, persist, and manage data between the Java objects and the database o Each new employee object is saved to the database using the entity manager’s persist method  occurs as part of the workflow  Employee object created after the form is submitted  code: EmployeeDao class and WorkFlowTaskOperations class
  • 7.
    Spring MVC ● IntegratesUI, Activiti and Database ● Returns a ModelAndView, corresponding to JSP page ● Holds business logic to deploy workflow, update database, and map URL requests o GET and POST methods ● Controller is called by dispatcher servlet o generate HTTP requests and responses o pass model data to view
  • 8.
    Future improvements ● Planout the overall architecture well ● Could use Activiti framework’s functionality better ● Could use AngularJS for UI ● Utilize the MVC in a better way o Use the MVC to display database data vs. using jsp pages to connect to database