Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 323345

Summary: Provide auto synchronization process authroing
Product: z_Archived Reporter: Bingxue Xu <bxu>
Component: EPFAssignee: Weiping Lu <wlu>
Status: RESOLVED FIXED QA Contact: Xue Dong Mei <xuedm>
Severity: enhancement    
Priority: P3 CC: wlu
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Bingxue Xu CLA 2010-08-23 01:56:25 EDT
1.	Requirements
The main intention for this request is to simplify the process authoring by eliminating this synchronization step, allowing for a limited scope of customization on descriptors, improving the usability by showing the realized contents from the linked elements with the local changes and local data from the descriptors in the process properties view, providing a better and simple UI for descriptor customization, and finally increasing the consistency between method elements and their corresponding descriptors. Specifically
„X	When users create descriptors in a process, EPFC won¡¦t create a descriptor by copying all the attributes and relationships from the linked method elements and storing them in the descriptors. The descriptor will simply refer back to the linked method elements to inherit all the attributes and relationships.
„X	Those descriptor-only attributes and relationships in the process will be stored with the descriptors themselves, of course.
„X	EPFC will only allow a limited scope of customization of descriptor attributes and relationships, and this limited customization will only result in the delta data for the customization being stored in the descriptors.
„X	Descriptors¡¦ properties view will show the combined contents from the customization and its linked element¡¦s content.
„X	When descriptors are been customized; a new UI dialog window will be presented to the users to allow users easily see all the contents from the underlying linked elements and new local addition and changes made to the inherited contents.

2.	Proposal
To meet the requirements as outlined in the previous section, and the following design and usage flow are propose:
„X	An overall assumption: if users decide to adopt this synchronization free process authoring model, then all processes in a method library will follow that mode of process authoring. That is fine when users start with an empty new library. If users already have a method library, then a mandatory process conversion will happen when users choose to use the synchronization free process authoring mode, that is, all processes in the method library will be converted into synchronization free mode. In summary, users can either use the existing process authoring which requires synchronization or follow this new synchronization free process model for all the processes in the library. Trying to allow both types of process modes are deemed to be complicated to support, and will cause more confusions to users, and the existing one is what we try to deprecate.
„X	Logically we may still consider all the WBS elements are descriptors, that is, when users author a process, they create Task Descriptor, Role Descriptor, and WP Descriptor. But underlying, EPFC will NOT create any local copy of the attributes and relationships for those inherited from the linked method elements. Of course, those that do not have counterparts in the method elements will still be stored in the descriptor¡¦s data structure. When the process is been realized, the attributes and relationships from the linked elements will be pulled in directly and descriptor specific data will be combined with them.
„X	EPFC will allow limited modifications of descriptors. The current proposal is to choose a subset of text attributes and a subset of relationships, and offer the following customization:
o	For text attributes, we¡¦ll allow ¡§Replace¡¨ and ¡§Append¡¨
o	For relationship attributes, we¡¦ll allow ¡§Exclude¡¨ and ¡§Un-Exclude¡¨ of associations inherited from the base elements
o	For relationship attributes, we¡¦ll also allow ¡§Add¡¨ and ¡§Remove¡¨ of associations users can make locally on the descriptors.
o	For descriptor specific attributes and relationships, they will remain the same as the current behavior.
„X	To allow better authoring and customization experience, all the process properties views will show the combined contents by adding the contents from the linked elements and customization on the descriptor. For those fields are not allowed to be customized, they will be made read-only. For those fields that can be customized, an edit command can be invoked so users can edit the customizations as listed in the last point, and new UI that will facilitate the customization will be provided.

3.	Implementation
Below are some of the implementation suggestions. We will try to minimize UI changes while providing the necessary new UI additions for synchronization free process.
o	Store delta data only in the descriptors: in synchronization free process, EPFC will only store the delta data from the customization when those descriptors are customized plus the data from those descriptor-only attributes and relationships. For example, for associations inherited from the linked elements, only those associated descriptors being excluded will be remembered plus any associated descriptors assigned directly in the descriptors. When realizing the association, all the associated descriptors from the linked element will be used and excluded ones remembered in the delta part will be removed, and then combined with the ones locally assigned.
o	New Edit button and dialog window: all fields in the process properties view with corresponding fields in the linked element will show realized/combined contents from the linked elements plus the local customization. All those fields will be read-only if no customization is allowed. For the subset of fields we decided to allow customization, a new command button (e.g. Edit) will bring up a new dialog window that allows the customization be done in the pop dialog window. This custom edit dialog window will be designed to show the contents inherited from the linked element and the local additions, and what are the changed. As proposed, associations inherited from the linked elements can be checked to be exclude or unchecked. Descriptors can be added locally or removed. When users are done with the customization, the properties view filed will show the combined contents.
Comment 1 Weiping Lu CLA 2010-08-23 13:32:47 EDT
This has been implemented.
Comment 2 Bingxue Xu CLA 2010-08-26 02:25:18 EDT
*** Bug 299795 has been marked as a duplicate of this bug. ***