Students: Roni Rabin, Eyal Biran Supervisors: Itay Maman, Tali Yatzkar-Haham, Julia Rubin Industrial...

Post on 29-Jan-2016

216 views 0 download

Tags:

transcript

Online Feature ManagerFinal Presentation

Students: Roni Rabin, Eyal BiranSupervisors: Itay Maman, Tali Yatzkar-Haham, Julia Rubin

Industrial Project (234313)

1

Background

Product line approach: development of a generic platform from which numerous different products can be derived. Example: Nokia’s cell phone line

Goals

Develop web-based feature manager tool

Main elements: Feature Tree Management Product Management Feature Tree Editing Product Definition

Methodology

Development Methodology: Weekly iterations – review current

status, choose stories for next iteration Incremental evolution – code is

always runnableMain tools:

Java over Eclipse Spring MVC framework Dojo/Dijit libraries JSON format Derby database

Architecture

The feature manager tool consists of

Client-side code

Server-side code

Database

Achievements- Server Side

Receives requests from the client and responds accordingly. Data requests for client Update requests

Saves system data in a persistent database

Checks input received from client for errors

Reports errors on server side to client

Includes automatic testing6

Achievements- Client Side

Feature Tree ManagementSupports creation of a new feature

treeSupports edit/remove/rename an

existing feature treeDisplays information about selected

feature tree

7

Dojo Filtering Select: based on JSON data store

Achievements- Client Side

Product ManagementCreate a new product based on an

existing feature treeEdit/Remove/Rename a productDisplays information about selected

feature tree

8

Dojo Filtering Select: based on JSON data store

Achievements- Client Side

Feature Tree EditorReceives id of the wanted feature

tree in urlDisplays current feature treeDisplays information about selected

item in feature treeAllows renaming of treeAllows add/remove/rename of

featureAllows creation of dependencies

between features using exclusion/inclusion lists

Achievements- Client Side

Feature Tree Editor

Achievements- Client Side

Product DefinitionReceives product id in URLDisplays feature tree with selection

buttonsDisplays information about selected

product and featuresConstraints between features are

supported, error message appears if bad selection is made

Achievements- Client Side

Product Definition

Conclusions

Web applications are complex Many frameworks and libraries Frequent meetings are vital to the

progress of the project. On a large scale project, appropriate work

methods and infrastructures are crucial for the ongoing success of the project. Repository Code reviews

Project was a great platform for learning new technologies and how a project is executed in the “real world”

13

Live demonstration

14

Q&A

15