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