Hi,

*Participants:*

   - *ES:* Manu, Ruchira , Udara, SameeraM
   - *AM:* Sumedha, Jo
   - *Mobile:* Chan
   - Sanjiva,Dhakshika,SameeraP and Chanaka

*Purpose*

   - Demonstrate the current status of the Unified UI Framework

*Problem we are trying to solve:*

*What is the best way for us to write multiple web apps so that people do
not write the same thing over again.Plus allow people to recompose the
functionality of existing applications into new applications*

*Requirements of the solution:*

   1. Reusable components
   2. App functionality should be available to other app authors
   3. Support for mobile apps:
      - Responsive UIs for mobile applications
      - Public APIs

*Notes*

*What is the association logic?*

   - Normal rendering is composition
   - In the case of a menu , we need to be able to define some logic that
   needs to get injected into a predefined component.E.g. A menu
   - Look to the Tiles framework which allows developers to define where
   their components appear
   - Summary: They allow inter component communication
   - Original idea was to go with the Observer and Observable pattern

*Why do we need a controller?*

   - It is not a router
   - it provides the core logic of a component (All view independent logic)

*Action Points*

   - Create a real world sample with a set of use cases identified in the
   next section.
      - Allow
      - Demonstrate how a component can be integrated into an existing
      application
      - Discern the boundaries of the existing solution and identify
      scenarios that cannot be handled by a component approach
   - Each of the use cases will need to be tackled with two approaches [1] :
      - *Server side components approach:* The views and and APIs are
      bundled into a single "Unit" (Existing model proposed by Manu)
- *API + client side UI component approach:*
         - This is similar to a Single Page Application model
         - Includes freedom to provide the initial rendering on the server
         side with subsequent rendering operations occurring on the client side
         - Prioritize the first approach  and only switch to the second
   approach if the first does not work.
   - The ideal solution need not be limited to the above two approaches

*Sample Use Cases*

   - *Self sign up component*


   - A UI accepting basic user details
      - A back-end API that will handle the sign-up logic
      - A mail should be sent to the user once the registration process
      begins
      - The UI will need to be updated to the status of the sign up process
      (E.g. A notification indicating that an email has been sent to the user's
      account)
      - A resend option for email verification link


   - *A login component (Two options: Modal window vs. New Page)*
      - A UI accepting a username and password
      - Back-end has authenticators
      - Utilize the new IS Facebook components
      - Should consider embedded cases
      - *View and Assign Roles*
      - View all users
      - Allow a user to be assigned to a role
   - *Grid view of some RXT types*
      - Show a listing of assets in a grid (Like the ES Store asset listing)
   - *Life-cycle Graph  ( ES LC view)*

*Open Questions*

   - How do we handle regions that read from right to left.E.g.  Hebrew ,
   Arabic
      - What special allowances must be taken when rendering UIs in these
      languages?
      - How can this effect the proposed Unified UI Framework?

*Reference*
[1] Available Approaches:
[image: Inline image 1]--

Thank You,
Sameera

Sameera Medagammaddegedara
Software Engineer

Contact:
Email: [email protected]
Mobile: + 94 077 255 3005
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to