Authors: Steven Orbie, Hafid Ghannouti
| The goal of our project: |
|---|
| The purpose of this project is to build a product selection tool allowing the creation and storage of a serie of products of the same type, which will also allow to make a selection based on certain criteria. |
| The functional requirements: |
|---|
| The functional requirements for this project is to build an open source Alfresco module that will be a product selection tool allowing the end user to create and store a serie of products from the same type allong with the criteria’s of this product. And as the name says the tool should allow the user to make a selection of products by running a search. For each search the tool wil give as a result a top 3 of products that best match the search criteria based on their weight. |
| Data Model: |
|---|
The tool wil consist of four parts:
|
| Conceptual Relationships: |
|---|
|
| Data Model: View image in full size |
|---|
|
| Example: |
|---|
| Let’s clarify this concept a bit with a fictious example : |
|
Suppose we’re about to develop a tool to select “software developers” based on their qualities. The product-type we’re talking about here is the “developer”, with each evaluated person as an individual product, with his/her qualities as product-attributes. |
| How does it work ? |
|
Suppose, once a year, a commitee defines these so-called qualities. Once defined, each quality is converted to an individual question with a fixed set of possible answers to it (multiple choice). We call each question a “criterium”. These criteria and their possible answers are then centralized by an administrator. (This is part one of the functional description) |
| Then, when a peoplemanager evaluates one of his developers, he fills in an evaluation-form about the developer. De evaluation-form is made up by the criteria (questions and multiple choice answers) mentioned above. Once completed, the data on this form will be added into a database. Based on this data of the developer, a product “developer” (by example “StevenOrbie” or “HafidGhannouti”) will be created (with his qualities as attributes). (This is part two of the functional description) |
|
Suppose, on a given moment, a new project is assigned to a projectmanager of the company. In order to succeed, he will need some developers with specific skills (Java, Hibernate, French-speaking). Then he uses our Selection Tool : Each criterium can be given a specific weigth in order to assign a relative importance to that criterium (This is part three of the functional description): |
|
|
After assigning the weigths to the criteria, he runs the Selection Tool. The Selection Tool then searches all the generated products (individual developers), checks per product if there is a match with the criteria looked for (attributes), and then returns a list with all matching products, ordered on the sum of the weigths of all matching attributes per product. (This is part four of the functional description). |
| Interface: |
|---|
![]() |
|
A Productspace exists in the Alfresco-Environment. This Producstspace allows the user to browse through the existing Products, as wel as to manage any individual product (add, edit, delete, view details). By clicking on one of the hyperlinks on the right of an individual product, the user is able to edit, delete or view its details. By each step (by clicking on the “next”-button), the next criterium will be shown (in the same format), untill all criteria for this type of product are treated. |
| Product Creation Wizard: |
|---|

| Attachment | Size |
|---|---|
| Conceptual_Relationships.jpg | 32.43 KB |
| Data_Model.jpg | 31.37 KB |
| StartInterface.jpg | 37.4 KB |
| Wizard.jpg | 23.67 KB |