Integrating Content Management tool with Software Development Assistance (SDA)

Preview:

DESCRIPTION

Presented by Capstone Team #1. Integrating Content Management tool with Software Development Assistance (SDA). Guidance. Instructor Name: Dr. Alfredo Perez-Davila Email: perezd@uhcl.edu Mentor Name: Abbasi Dhilawala Email: Abbasi.Dhilawala@tietronix.com. Team Members. Omkar Wadkar - PowerPoint PPT Presentation

Citation preview

Presented by Capstone Team #1

Guidance Instructor

Name: Dr. Alfredo Perez-DavilaEmail: perezd@uhcl.edu

MentorName:Abbasi DhilawalaEmail: Abbasi.Dhilawala@tietronix.com

Team MembersOmkar Wadkar

wadkar05011@uhcl.eduTeam Leader/ Researcher/ Programmer/Developer

Adebiyi OlukayodeadebiyiO2496@uhcl.eduResearcher/ Programmer/Web designer

Prachi PhatakPhatakp7215@uhcl.eduResearcher/ Programmer/Database administrator

Zhen-Yu FangFangz5973@uhcl.eduResearcher/ 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 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.

REQUIREMENTS

Provide a link for editing the processes

REQUIREMENTS

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 databaseShould allow users to create/modifyShould support rich text editingShould support access control mechanism

Solution ApproachesDevelopment.

○ 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 1st approach?Although has all the functionalities its big in size

.Hard to integrate

Choose 2nd 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.ViewContentActio

n○ com.tietronix.portlet.processadmin.action.EditViewContentA

ction○ com.tietronix.portlet.processadmin.action.EditContentAction○ com.tietronix.portlet.processadmin.action.EditSaveContentA

ctionManager

○ com.tietronix.portal.manager.ActivityManagerExtDAL

○ com.tietronix.portal.dal.ContentDAL

Class Prototypes

Action ActivityMangerExt

ViewContentAction()

EditContentAction()

SaveContentAction()

PublishContentAction()

//Class Variables // 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

ColumnName DataType Default Value Description

id Varchar[24] Not Null Record ID (Primary Key)

contentId Varchar[255] Not Null Business Key

contentVersion Integer Not Null Version of Content

contentType Varchar[50] Not Null Background or Instruction

content Text Not Null Content

creationDate Date/Time Not Null Creation Date of Content

author Varchar[50] Not Null Author of Process

lock Boolean Not Null Content Lock

Business Key

Database Schema Working Area

Column Name Data Type Default Value

Description

id Varchar[24] Not Null FK_WorkingContentInfo_

PublishedcontentInfo/id

creation Date Date/Time Not Null Creation Date

author Varchar[50] Not Null Current author of Process

Content Text Not Null Working Content

MS Project

MS Project

Thank You!

Recommended