Menu

Portal:NiCE_Training

Alex McCaskey Dasha
There is a newer version of this page. You can find it here.

NiCE Development Team Training

Software Development Process

NiCE utilizes a software development process that is top-down, iterative, and use case driven. It is driven by the development of a system model that traces directly to stakeholder requirements. The NiCE development process is a tailoring of IBM's Model Driven Systems Development (MDSD), a derivation of the Rational Unified Process (RUP). As such, it is a process that is conducive to team collaboration as well as extremely adaptable to any future stakeholder requirement changes or requests.

  • Top-Down Design
  • Iterative Development
  • Model Based Design

Object Oriented Analysis

  • Abstraction
  • Encapsulation
  • Modularity
  • Scalability

Unified Modeling Language

Detail UML and its components, give picture examples

Test Driven Development

Describe TDD with Activity Diagram

NiCE Individual Team Flow

When fixing a bug or adding a feature to NiCE, the following steps should be followed:

  • File a task in the SourceForge Tracker
  • Jay Billings reviews the bug fix or feature request and delegates the task accordingly
  • Appropriate team member fixes the bug or adds the feature:
    • Request any necessary changes to the use cases, model, or IT infrastructure from Jay Billings
    • Update the model per guidance
    • Transform the UML model to source
    • Fix the tests firsts, then fix the product code to comply with those tests (See Test Driven Development)
    • Report the fix to other team members for review
    • Commit the fix or feature to the repository
  • Jay Billings and the team member mark the bug fix or feature add as complete