1. Requirement
    1. Display data
      1. Form
        1. Field view
        2. Simple Name value
      2. Table
    2. Exchange data with server
    3. Respond to user actions or events
    4. Show messages
    5. Testing
    6. Views
      1. Details form
      2. Master Details
    7. Pop up view
    8. Editing
      1. Field view
    9. Graphs & Charts to show data
    10. Navigation
      1. Navigate between modules
      2. Navigate between views
      3. Data Communication between Navigation
      4. Routing in Angular
        1. Standard code to manage routing
    11. Showing errors
    12. State Management
      1. Cookies
    13. Offline
      1. Detection
      2. data cashing
      3. Sync when connection returns
    14. Portlets Multiple views in one page
    15. Logging
    16. Security
  2. Server side
    1. Restful
    2. Security
      1. OAuth
    3. Logging
    4. Define Module/Service boundary
    5. Azure Hosting
    6. Testing Framework
    7. Database Migration
    8. NoSQL Database