Community Development Best Practices

    << Other BP: infrastructure, etc.

    Introduction

    • Development in BMC Remedy AR System.
      • Strenghts in the AR System architecture
      • Pitfalls to keep in mind
      • Object soup
    • Project management methodology
      • Organising a development team
      • T/Q/C
      • Project differences when using AR System compared to traditional programming languages
      • Using project management methods which suits AR System development
    • Structured Development methodology
      • Using SCRUM
      • Tracking progress
      • User acceptance - staying on track

     

    Cross-phases Activities

     

     

    Phase 1Phase 2Phase 3

    Requirements gathering

    • Process discovery / Design
    • Workshop / RADD
    • Use case-analysis
    • Tracking Requirements

    Analysis/Design

    • Actors
    • Dataflow
    • Information modelling
    • Information ownership
    • Modular design

    Data modeling

    • Normalized / De-normalized models
      • Using AR System objects to maintain different types of models
      • Maintaining relationships
      • Common pitfalls and how to avoid them
      • Ripple effects / Cascaded updates

     

    Prototyping

    • Using prototypes to verify process coverage
    • User acceptance
    • What should a prototype include
    • Using the prototype as base for development

    Development

    Coding

    • Code re-use

           - Modular code - different techniques

    • Standard set of functions for forms

          - Deletes       - "Admin-control"      - Ignore workflow

    Data driven approachesException and Error handling

         - Fallback functions

          - Exception handling when external integrations fail

    Integration

    * Webservices

      - Robust implementations

      - Performance concerns

     

    * ARAPI

     

    * Database links

     

    * ARDBC/Vendor forms

     

    * Misc

      - Timezones

      - Character encoding

    Testing

    * Informal testing as part of development / User acceptance

    * Functional testing

    * Acceptance testing

    * Load testing

      - Different tools and techniques

     

    Deployment

    * Checklist for deployment

    * Rolling back changes

     

    Documentation

    • Documenting workflow: helping to manage lifecycle
    • Mapping requirements to objects
    • Automatic system documentation

     

    Maintenance

    * Best practices

    * Health checks

    * Changing existing functionality

      - Documentation

    - Pitfalls

     

    For each topic, a leader is assigned, but collaborative authoring is encouraged, we need feedback from the Community)

    What's Next ?

    Other topics that would help your Business ? Add a comment, and the community will start working on it