Presented by Capstone Team #1
Guidance Instructor Name: Dr. Alfredo Perez-Davila Mentor Name:Abbasi Dhilawala
Team Members Omkar Wadkar Team Leader/ Researcher/ Programmer/Developer Adebiyi Olukayode Researcher/ Programmer/Web designer Prachi Phatak Researcher/ Programmer/Database administrator Zhen-Yu Fang Researcher/ Programmer/Web developer
Introduction of SDA What is SDA? an engineering process automation tool that already has built in support for software development. web based and is geared towards team development. built on J2EE technologies like EJBs, Struts, Servlets, JSP and more. The SDA UI framework is built upon a leading open source portal called Liferay.
Features of SDA (continued…) Automates: ○ guiding the team through the process ○ clerical, tedious tasks & handoffs ○ process compliance ○ team collaboration & coordination ○ collection of metrics & status Project Wide Visibility ○ process ‘execution’ ○ project status Build, Deploy & Maintain Software ○ faster & easier ○ higher quality & safety ○ less expensively Process Optimization Project Reporting & Dashboard Process Customization & Tailoring
Architecture of SDA
Users, Roles, Authorization Packages Processes Activities Sub- processes Instruction Background System Details
The team should either select an open source content management tool or develop one for the integration. The tool should store the content in a database. Preferably works with multiple leading database management tools like SQL Server, MySQL, Oracle etc The tool should allow certain users with the appropriate right to create/modify the content with a rich text editor. The tool should display the managed content to other users in a read only format. R EQUIREMENTS
Provide a link for editing the processes R EQUIREMENTS Link to Edit Background & Instruction
Requirements Option to edit Instruction
Requirements Option to edit Background
Solution Approaches Two solution Approaches Research ○ Search a wiki ○ An open source content management tool Should store the content in a database Should allow users to create/modify Should support rich text editing Should support access control mechanism
Solution Approaches Development. ○ Database approach ○ Plan of development Search an open source web based editor Integrate searched editor into SDA Provide access control by applying locking mechanism
Solution Approaches Why not 1 st approach? Although has all the functionalities its big in size. Hard to integrate Choose 2 nd approach. The rich text editor is lightweight We can build staging area easily with the help of databases Its easy to integrate lightweight text editor.
Implementation Layer Class Database
Class model
Class Prototypes SDA Class Prototypes: Model ○ com.tietronix.protal.model.ComtentModel Action ○ com.tietronix.portlet.processadmin.action.ViewContentActi on ○ com.tietronix.portlet.processadmin.action.EditViewContent Action ○ com.tietronix.portlet.processadmin.action.EditContentActio n ○ com.tietronix.portlet.processadmin.action.EditSaveContent Action Manager ○ com.tietronix.portal.manager.ActivityManagerExt DAL ○ com.tietronix.portal.dal.ContentDAL
Class Prototypes Action ActivityMangerExt ViewContentAction() EditContentAction() SaveContentAction() PublishContentAction() // Class Variables getEditableProcessesForUser() getProcessHierarchy() getLatestVersionContent() saveContent() publishContent()
Class Prototypes – Manager ContentDAL viewContent(StringUserID) getContentInfoFromWorkingContent() insertContentToworkingContent() deleteContentFromWorkingContent() getContentInfoFromPublishedContent() updateDontentToPublishedContent() insertContentToPublishedContent() // Class Variables
Proposed design The staging area can be built using two separate databases Database 1: Publish area Stores all the data published Database 2 : Working area Copies a record which is being modified from publish database each record is locked by particular user
Database Schema Publish Area ColumnNameDataTypeDefault ValueDescription idVarchar[24]Not NullRecord ID (Primary Key) contentIdVarchar[255]Not NullBusiness Key contentVersionIntegerNot NullVersion of Content contentTypeVarchar[50]Not NullBackground or Instruction contentTextNot NullContent creationDateDate/TimeNot NullCreation Date of Content authorVarchar[50]Not NullAuthor of Process lockBooleanNot NullContent Lock Business Key
Database Schema Working Area Column NameData TypeDefault Value Description idVarchar[24]Not NullFK_WorkingContentInfo_ PublishedcontentInfo/id creation DateDate/TimeNot NullCreation Date authorVarchar[50]Not NullCurrent author of Process ContentTextNot NullWorking Content
MS Project
Thank You!