Skip to end of metadata
Go to start of metadata
Gliffy Zoom Zoom Rice 2.0 timeline

KRAD Requirements: https://spreadsheets.google.com/a/kuali.org/ccc?key=0At8dhdqKa_2hdF9lVkUzN1lZZElVMDNGc08zY2loYXc&hl=en#gid=0

Completed Milestones

Milestone 1: February 18th, 2011 - completed

Goal: Have enough functionality to demo KRAD/KRMS for KS Tech Workshop.

Status: Completed, internal milestone for Rice team only.

Planned Functionality:

KRAD

KRMS

VC/Modularity

  1. Base Component infrastructure, lifecycle, and services
  2. Base View and Form View - req#53
  3. Groups (containers) with nested support - req#12,15
  4. Headers (ability to mix header level and style)
  5. Accordion
  6. Footers
  7. Grid Layout
    1. Configured number of columns
    2. Rowspan and colspan
    3. Column width
    4. Auto generate separate Label fields
    5. Alternating row styles
  8. Box Layout
    1. Stack fields or Groups in Horizontal or Vertical row
    2. Ability to specify spacing
  9. Basic Collection Support (CollectionGroups)
  10. Table Layout
    1. Layout collection rows as table, with row actions, label, and add row
    2. Integration with jQuery DataTables providing sorting, paging, scrolling,searching, export, show/hide columns, and much more
  11. Stacked Layout
    1. Layout collection rows as stacked groups (as in current maintenance framework)
  12. Fields:
    1. Label field with required message
    2. Action fields rendered as buttons (using jQuery dynamic buttons) with 2 different levels (primary, secondary) and as links
    3. Attribute field with control and label
  13. Controls:
    1. Text (size, maxlength, tabindex)
    2. TextArea (rows, cols, tabindex)
    3. Checkbox (tabindex)
    4. File (size, tabindex), missing file download
    5. Hidden
    6. RadioGroup (keyvalues finder) - req#26
    7. Select (size, multiple, keyvalues finder) - req#26
  14. Date picker, and Page Loading widgets
  15. Watermarks
  16. Initial work on controllers, binding, formatting, and security (Spring MVC)
  17. Integration with Inquiry framework (partial, not complete)
  • Deliver Engine POC
    • functional aspects:
      • Agendas
        • Execution
          • conditional
          • sequential
      • Execution Logging
        • observable execution
        • sample execution logger impl
      • Asset/Term Resolution
        • pluggable
        • chainable
    • unit tests for above functional aspects
    • Mock Repository for testing
    • updated data model

None

KRAD Changes from Plans: Left Menu (hub and spoke within view) moved to Milestone 2, Watermark moved from Milestone 2 to 1

Milestone 2: April 4th, 2011 - completed

Goal: Provide version for KS to start working with KRAD.

Status: Completed, release of KRAD branch only to KS.

Planned Functionality:

KRAD

KRMS

VC/Modularity

  1. Support for service backed screens via custom Inquirable/Lookupable/Maintainables
  2. Dictionary Alignment- req#24,24.1,50.1,61,71,73
    1. Support for general objects
    2. Reconcile KS object definition and Rice business object definition
    3. Reconcile KS and Rice attribute definition
    4. Add constraints (including cross field?)
  3. Dictionary Validation
  4. Lookup and Inquiry Widgets
  5. Lightbox - req#4
  6. Left Menu (hub and spoke within view)
  7. Component state (readonly, hidden, required)
  8. Dictionary conditional logic
  9. Error handling/display
  10. Finish Messages (constraint, field summary, subtitles) - req#24,24.1,50.1,71,73
  11. Client side validation - req#32
  12. Integration with Maintenance Framework (round 1) - req#6,7.1,10,12,50
  13. Integration with Lookup Framework (round 1) - req#6,10,12,26,29,55
  14. Session support (no database for distributed/timeout)
  15. Finish spring binding infrastructure
  16. KNS style theme
  • Engine Implementation
    • POC -> production impl
      • meets KS' special requirements
        • full and short circuit execution modes
      • supports pluggable components
        • propositions
        • functions for asset/term resolution
  • Determine Intermediary Steps for UI implementation
  • Partial Modularization of Rice - As seen here
    • new "Core" module
    • Edoc Lite mostly moved into its own modules
      • Still some dependencies to resolve
    • Each current module given API and Impl modules (KEW, KIM, KRAD/KNS, KCB, KEN)
    • New Test modules to hold current integration test
    • Many classes/files moved to make future modularization changes much easier.
  • Initial Business Objects converted to new Model Objects design and service refactor (as described here)
    • KNS/Core
      • Parameter
      • Namespace
      • Campus
      • Country
      • County
      • State
  • Services annotated
  • Removed most deprecated code
  • Reduced code duplication

Note: Original m2 date was scheduled for 3/25/11, then moved to 4/1 to meet KS requirements, released on 4/4.

Milestone 3: April 18th, 2011 - complete

Goal: Integration of KRAD, KRMS, and VC/Modularity

Status: Completed

Planned Functionality:

KRAD

KRMS

VC/Modularity

Development

  1. Merge with main line 2.0 development
  2. Tabbed Navigation - req#77
  3. Default Values
  4. Lightbox improvements
  5. Table widget improvements
  6. Bug fixes
    UX
  7. Determine CSS Theme Strategy
  8. Identify visual design requirements and examples
  • Repository rough draft
  • Agendas
    • Selection
      • app namespace
      • custom qualifiers
  • Proposition specification
    • term selection
      • no smart typing
    • input of user spec'd constant operands
      • no validation
  • Implementation of new service naming scheme
  • Support for publishing services with pre-existing WSDL
  • Support for automatic wsdl creation with maven.
  • Modularization Progress
    • Each current module given API and Impl modules (KEW, KIM, KRAD/KNS, KCB, KEN)
    • eDoc Lite separated from KEW (ie. KEW has no dependencies to EDL)
      • there are a few bugs remaining with this
  • Beginning of KIM conversion to new Model Object design and service refactoring (beginning of conversion, but nothing hooked up)
    • Role - RoleService, RoleUpdateService, RoleManagementService
    • Group - GroupService, GroupUpdateService
    • Permission - PermissionService, PermissionUpdateService
    • Responsibility - ResponsibilityService, ResponsibilityUpdateService
    • IdentityService
    • KimType ?

Milestone 4: May 9th, 2011 - completed

Status: Released.

Planned Functionality:

KRAD

KRMS

VC/Modularity

Development

  1. Default Values
  2. Anchors and Form Focus
  3. Security (field masking)
  4. Session database support
  5. Direct Inquiry Widget
  6. Expanded Text Area Widget
  7. Breadcrumbs - req#5
  8. Finish spring validation infrastructure
  9. Growls
  10. Dirty fields check - req#7.2
    UX
  11. Visual Design
    1. determine design direction
    2. select UI components and layouts
    3. iterate visual design
    4. all UI components & select layouts
  12. Select UI Framework - Fluid
  13. Identify jQuery widgets and widget variants
  • Rule definition UI -- skeleton
    • rule authoring BO container
    • DD files
  • fleshed out Repository
    • custom qualifier matching for contexts / agendas?
    • repository BOs and BO services are complete and tested
      • KrmsType and KrmsAttributeDefinitions
      • Proposition
      • Rule
      • Action
      • Agenda
      • Context
      • Term / Term Resolver
      • Function
  • KIM Service/Business Ojbect Conversion
    • Role - RoleService, RoleUpdateService, RoleManagementService
    • Group - GroupService, GroupUpdateService
    • Permission - PermissionService, PermissionUpdateService
    • Initial KimType conversion - DTOs converted
  • New Criteria API implemented
  • KSB refactoring
    • KSB can be accessed remotely
    • SOAP-based access to/for registry
    • Replace serialized form of service definition with xml/jaxb based form
    • Remove "dead" service indicator
    • Add version information to registry
      • Need API to get version of services
    • Client config of KSB registry url
    • Remove OjbectRemoterService

      (note: much of the Kim work for this milestone is incomplete and exists on personal branches. The Role conversion work does not currently exist in trunk, and the Permission work is only partially done)

Other:

Milestone 5 - June 13th, 2011 - completed

Status: Released.

KRAD

KRMS

VC/Modularity

Development

  1. Expanded Text Area Widget
  2. Growls
  3. Dictionary Alignment - req#24,24.1,50.1,71,73
    1. Requiredness for nested objects
  4. Tab Key Order
    1. insert/remove
    2. includes lightboxes - req#36
  5. Suggest Boxes - req#76
  6. Progressive Disclosure - req#16,18,19,20,23,69
    1. Show/Hide Fields(s), Widgets, Groups (sections, groups, and field groups)
    2. Requiredness
    3. Show/Hide Fields in collections
  7. Ajax update of Fields - req#56
    UX
  8. Complete visual design of additional layouts
  9. Clean up old KNS css (subcollections, calendar, tables, padding/margins)
  10. Update classes to use new KNS classes (or KS?)
  11. CSS
    1. Headers
    2. Buttons
    3. Table
    4. Widgets
    5. Controls
    6. Field
    7. Messaging
    8. Group
    9. Layout
    10. View
  • Repository Development Tasks:
    • Repository based execution integration test (5d)
    • KRMS type attribute cleanup (3d)
    • Partially Complete: Add additional description fields (1d)
      • Context
      • Term
      • Attribute Definition
    • category (7d)
      • for terms
      • for custom functions
    • limit actions based on event (5d
  • Agenda Editor
    • Partially Complete: "Nodes" actions 
      • collapse / expand all (3d)
    • Partially Complete: New Node(s) actions
      • add rule (5d)
    • Agenda Tree View
      • jstree krad component (8d)
      • Partially Complete: Agenda Item editor slide-out (15d)
        • interface work
        • action work (edit, delete, etc)
  • Converted services implemented as SOAP (KIM and KSB)
  • KIM Conversion (continued)
    • Role conversion - partially complete
    • Permission conversion - partially complete
    • Responsibility - ResponsibilityService, ResponsibilityUpdateService - partially completed
    • Kim Entity objects - mostly complete
  • KSB refactoring
    • KSB can be accessed remotely
    • SOAP-based access to/for registry
    • Add version information to registry
      • Need API to get version of services
    • Client config of KSB registry url
    • Remove OjbectRemoterService

Milestone 6 - July 11th, 2011 - complete

KRAD

KRMS

VC/Modularity

Development

  1. Progressive Disclosure: fields in collections
  2. Dictionary Alignment: requiredness of nested objects
  3. Validation of dictionary configuration
  4. Finished Collection support (total lines, show/hide inactive, sub-collections)
  5. Help Integration
  6. First release of KRAD documentation
  7. Multi-value lookups 
  8. Conversion of pre-rules to Spring (needed by maintenance framework) ?
  9. Question framework conversion to Spring & KRAD UIF ?
  10. Other Inquiry, Maintenance, & Lookup features currently supported in
    the KNS that have not been converted ?
  11. Common search infrastructure proposal (design) - req#63
  12. Task oriented services proposal (design) - req#50
  13. Dynamic Attributes
  14. Back button support with Ajax history pushing
  15. Wizard Support - req#2
  16. CSS Advanced Layout Manager (Attribute Field layout)
  17. Externalize messages - req#52,67
    UX
  18. Reconcile visual design of KNS & KS components
  19. KNS Layout assessment
  20. Evolve new KNS layout
  • Repository Tasks
    • Merged repository integration tests (3d)
    • mappings and BO service for custom functions
    • category (7d)
      • for terms
      • for custom functions
  • KEW Integration
    • design/analysis
  • Agenda Editor
    • Agenda Item editor controls (15d)
      • actions (move up/down/left/right, delete)
      • collapse / expand all (3d)
    • Interface refinements
      • look aheads for context and agenda selection
      • Selected context pulled in to agenda search
      • selected tree block display
  • Rule Editor
    • basic skeleton
    • edit functionality for basic attributes (3d)
  • Supporting DD
    • Term
    • Term Parameter
    • Term Spec
    • Category
    • Proposition
    • Proposition Parameter
    • Attribute Definition
  • KIM Conversion (Continued (from M5))
    • Finalize Entity, Role, Permission and Responsibility work. (from M5)
    • KimType - KimTypeService
    • IdentityManagementService (from M5)
    • IdentityArchiveService
    • integration of rSmart/Arizona KIM/LDAP changes
  • KEW Conversion:
    • Consolidate simple and "non-simple" workflow document services 
    • Refactor WorkflowUtility?
      • Convert DTO objects
      • remove DTO from class names
      • jaxb annotations
    • Annotate WorkflowDocumentActionsService and WorkflowUtilityService
    • Convert all remoteable services to new model object design
      • update so they can be used as a service instead of using object remoting
    • Convert away from DTO converter to new "from" and "to" methods on BO objects
    • Integration tests working
  • Identify and document places where standalone rice can make remote calls back into client applications 
  • Data Dictionary Modularity services between modules (Incomplete)
  • RiceApplicationConfigurationService made remotable.

Milestone 7 - August 8th, 2011 - complete

KRAD

KRMS

VC/Modularity

 

  • Rule Editor
    • Tree view draft: 80h (Dan)
    • Proposition Textual Summary: 45h (Dan)
       
  • Agenda Editor
    • Add Edit Rule: 90h (depending on status of blocker) (Claus)
    • Cut & Paste: 75h (if Add Edit Rule is blocked) (Claus)
    • persist selections between requests (Peter)
       
  • Repository & Engine Tasks:
    • engine results reflect proposition tree (8h) (Peter)
    • ensure name / namespace combo is constrained to be unique (8h) (Peter)
    • Add additional description fields (32h) (Peter)
      • Context
      • Term
      • Attribute Definition
    • limit refresh to minimal group on tree edit actions (assuming KRAD helps w/ this) (60h) (Peter)
       
  • Progress on KEW Integration (Shannon & Peter)
    • create PeopleFlow and KEW Type BOs
  • KIM Conversion (continued from M6)
    • IdentityArchiveService (from M6)
    • Kim Attribute Map work
    • Finalize Permission changes (from M6)
  • KEW Conversion (continued from M6):
    • Consolidate simple and "non-simple" workflow document services 
    • Refactor WorkflowUtility?
      • Convert DTO objects
      • remove DTO from class names
      • jaxb annotations

Milestone 8: Aug. 8 - Sept 6, 2011 (in progress)

KRAD

KRMS

VC/Modularity

  • multi-value lookup/return
  • notes/ad hoc widgets
  • bug fixes
  • Repository & Engine Tasks
    • Module Spring Config w/ circular dependency fix (30h) (Peter)
       
  • Agenda Editor
    • make agenda lookup edit / copy links open the agenda editor (30h) (Claus)
    • make agenda editor maintenance doc submittable & persistable (57h) (Claus)
    • add appropriate validation to agenda editor (e.g. unique key checks) (Claus)
    • prep service interfaces for custom attributes (Peter)
      • On the KRMS side, will need to add equivalent of getAttributeDefinitionMap in KIM to the ActionTypeService
        • talk to Version Compatibility team about this first as they have been working on a new format for this "remotable" piece of UI configuration
           
  • Rule Editor 
    • make rule editor maintenance doc submittable & persistable (30h) (Claus)
    • add appropriate validation to rule editor (e.g. PK and unique key checks) (Claus)
    • Start work on: Action configuration view (WAG: 150h) (Claus)
  • KEW Integration (WAG: ...)
    • KEW Backend Work
      • Create PeopleFlow database table (1h) (Peter)
      • Create KEW type tables (2h) (Peter)
    • KRMS Backend Work
      • Add support to EngineResults to support a general-purpose Hash Map of results (2h) (Peter)
  • KIM
    • integration of rSmart/Arizona KIM/LDAP changes (from M7)
  • KEW
    • Consolidate simple and "non-simple" workflow document services (From M7 - partially done)
    • Refactor WorkflowUtility (From M7 - partially done, will be removed)
      • Convert DTO objects (From M7 - mostly done on M&)
      • jaxb annotations
    • Annotate WorkflowDocumentActionsService and WorkflowUtilityService
    • Convert all remoteable services to new model object design
      • update so they can be used as a service instead of using object remoting
    • Integration tests working
    • These tables cannot be changed after this release until next major release.
  • Execute a review of all libraries and version in Kuali Rice 2.0
  • Clean up current issues with configurers in Rice
  • Implement caching on services where it has been lost (KIM and Parameters, at least)
  • Convert cache flushing to SOAP

Milestone 9: Sept. 6 - Oct. 10, 2011

KRAD

KRMS

VC/Modularity

  1. Remote Attributes/Code based components
  2. Transactional Boundaries
  3. Serialized field configuration for Maint Docs
  4. View XML Validation
  5. Transactional Documents - req#50
  6. Common search infrastructure proposal (implementation) - req#63
  7. general div content within a lightbox - req#120
  8. Messages within containers/groups- req#35
  • Repository & Engine Tasks:
    • export services which need to be remoted onto the bus (18h) (Peter)
       
  • Agenda Editor
    • Action configuration view (pre-custom attribute work) (120h) (Claus)
    • Modify doctype to not do workflow routing (16h) (Claus)
    • Create permission templates for creating agendas (based on namespace code) (90h) (Claus)
    • serialize workflow doc xml from our JAXB annotated DTOs (???)
    • custom attributes (BLOCKED) (WAG: 48h) (Peter)
    • Handle changing the context on the agenda (36h) (Claus)
       
  • Rule Editor
    • proposition tree view controls
      • add, edit (60h) (Dan)
    • proposition parameter: existing term selection (80h) (Dan)
    • proposition parameter: custom term creation (WAG: 150h)
    • operator selection (WAG: 24h) (Dan)
       
  • KEW Integration (WAG: ...)
    • KEW Backend Work
      • Create and implement PeopleFlowService (8h) (Eric)
        • export service to the KSB (8h) (Eric)
      • Create PeopleFlowTypeService interface (4h) (Peter)
        • create class to help with exporting custom PeopleFlowTypeService
      • Create KrewTypeRepositoryService (8h) (Shannon)
        • export service to the KSB
    • KRMS Backend Work
      • Create PeopleFlowActionTypeService which places PeopleFlow ids into the engine results (40h) (Peter)
        • Create PeopleFlowAction that PeopleFlowActionType loads
        • create sql to insert type service into the appropriate KRMS tables
        • publish custom action type service to the KSB

 

Beta 1: Oct. 10 - Nov. 7, 2011

KRAD

KRMS

VC/Modularity

 

  • Misc
    • make sure we are respecting active indicators on our entities (24h) (Dan)
    • ProviderBasedEngine needs a new TermResolutionEngineImpl for each ExecutionEnvironment (2h) (Peter)
    • Allow for type ids to be optional on various KRMS tables
    • Look into changing term map from Map<Term, String> to Map<String, String> for engine exec api
    • Context Maintenance Doc (20h) (Claus)
       
  • Agenda Editor
    • status message on move, cut, paste, delete (80h)
    • custom attributes (WAG: 48h) (Peter)
       
  • Rule Editor 
    • proposition textual sub-expression highlight on proposition select (60h) deferred to 2.x as KULRICE-5406
    • proposition tree view controls
      • add, edit (18h) (Dan)
      • move <^v> (16h) (Dan)
      • cut, paste (30h) (Claus)
    • proposition parameter: custom term creation (WAG: 150h)
    • proposition parameter: parameterized term selection/creation (WAG: 120h)
    • operator selection (8h) (Claus)
    • Custom function editor (WAG: 300h) - deferred to 2.x as KULRICE-5405
    • Action configuration view – custom attributes (40h) (Claus)
       
  • KEW Integration (WAG: ...)
    • KEW Backend Work
      • Add support for delegates on roles in PeopleFlows as well as using roles as delegates (Peter)
    • User Interface Work
      • On the KEW side, create the PeopleFlow maintenance document, lookup, and inquiry (???) (Jerry)
         
  • KNS integration: validation (WAG: 120h)
    • ValidationActionType (16h) (Erik)
      • ValidationAction implementation
    • ValidationRuleType (40h) (Erik)
    • integration test that simulates execution from KNS business rule (40h) (Erik)
       
  • All services "versioned"

Beta 2 - 11/21/11

  • Bug Fixes

Beta 3 - 12/5/11

Scott's Team

Peter's Team

Jeremy's Team

Matt's QA Team

  •  upgrade scripts/guide for KNS and KRAD upgrades
  • KEW enhancements for KCFE (KULRICE-5931, KULRICE-5932, KULRICE-5726)
  • Peopleflow validation & UI Enhancements
  • Database script consolidation for release
  • term specification work, adding parameters on terms
  • "Remote" and "Embedded" client application configurations, How to set up client "configurers"
  • KEN and KCB services converted
  • enable KEN integration tests
  • document upgrade work from modularity/vc
  • check in changes to createproject.groovy to get it working again - work done, needs review
  • Documentation updates - Candace
  • Documentation Plan for Review - Jessica
    • review chapters of existing docs & update, rewrite, clean up
    • incorporate documentation out there in the wiki
    • Document Configurer work
    • get started on Intro to Rice book

Beta 4 - 12/21/11

  • "Remote" and "Embedded" client application configurations, How to set up client "configurers" (multiple Jiras) - Jeremy/Eric
  • JIRA work

Note: KEW enhancements for KCFE (KULRICE-5931, KULRICE-5932, KULRICE-5726)  postponed to Rice 2.1

Beta 6* (the beta release previously known as Beta 5) - 1/9/11

* Note: This was originally Beta 5, but a CM glitch forced us to change version numbers to b6

  • Complete documentation reviews
  • Complete Jiras needed for apps

RC1 (Release Candidate) - Jan 23, 2012

  • final acceptance testing
  • blocker bug fixing

RC2 (Release Candidate) - Feb 13, 2012

(RC release on 2/13/12 requested by KC for their internal load testing)

  • establish minimal benchmarks for acceptable performance/load
  • run at least 2 rounds of load test, analyze, fix using BrowserMob, SOAP UI
  • run a gap analysis of current load tests to see if we missed something, informal assessment of tests built during beta indicate we have most things covered
  • document performance results in wiki
  • finalize Installation Guide & Upgrade Guide & possibly other documentation reviews
  • continue to fix bugs found

RC4* (Release Candidate) - Feb 20, 2012

* Note: rc3 and rc4 were internal releases. rc3 was essentially a snapshot for KC testing.

  • establish minimal benchmarks for acceptable performance/load
  • run at least 2 rounds of load test, analyze, fix using BrowserMob, SOAP UI
  • run a gap analysis of current load tests to see if we missed something, informal assessment of tests built during beta indicate we have most things covered
  • document performance results in wiki
  • finalize Installation Guide & Upgrade Guide & possibly other documentation reviews
  • continue to fix bugs found

Final Release - Feb 24, 2012

  • Final Bug Fixes
  • Release Packaging
  • No labels