Development Process

Contents

 

Scope & Functionality

Functional Specification & Acceptance Definition

  • Lead SME with SME Group members ensure functionality required for module is a representation of partner requirements.  Lead SME and SME group accomplish this goal through participation in requirements/functional definition.
  • Lead SME is responsible for escalating issues for resolution to the Functional Council and Voting Members.
  • Lead SME will lead SME Group through requirement definitions of user interfaces business rules, workflow, roles, permissions, batch processes and integration requirements
  • Testing Coordinator is responsible for drafting and defining Acceptance Criteria with SME Group and Lead SME.
  • Analyst is responsible for drafting requirements/functional specification, supporting Lead SME in meeting coordination, documenting meeting outcomes and updating specifications when changes are required

Design & Functional Clarification

  • Lead SME or their delegate is a first point of contact to clarify requirements and functionality for development team.
  • Development Manager is responsible for ensuring the development team has an understanding of the overall functional requirements of the application and the specific functional requirements being requested for development.  This may require orientation with the Lead SME, delegate and documentation.
  • Development Manager is responsible for leading the development team in the clarification of functional requirements with the Lead SME, SME Group, or those delegated by the Lead SME. 
  • Development Manager is responsible for escalating issues out of scope to the Project Manager for resolution with the Lead SME and Functional Council.
  • Development Manager and development team will clarify and seek approval from the Lead SME and SME group for approval of overall design specification.

Design, Development & Maintainability

Overall Responsibilities

  • Development Manager will provide changes of development estimates to Project Manager during any phase of design, technical specification and source code development.
  • Development Manager and development team will provide additional areas required for Acceptance Testing during any phase of design, technical specification and source code development.
  • Development Manager is responsible for escalating technical issues that are outside of existing best practices, or existing infrastructure to the System Architect.
  • Development Manager and System Integration Development Manager are responsible for escalating issues to Project Manager for resolution, which can require escalation to Technical Council.

Design Specification

  • Development Manager and development team are responsible for defining the overall design to provide the functionality requested. 
  • Development Manager will ensure a design specification to provide the SME Group with an understanding the implementation of the functional requirements.

Technical Specification

  • Development Team is responsible for providing a technical specification that is a roadmap of the source code to be produced.
  • Development Manager will ensure Technical Specification is reviewed by System Integration Development Manager if any portion of the specification requires clarification of framework usage or implementation of best practices.   

Coding (Source Code)

  • Developers will provide source code that is documented, maintainable and provides required functionality. 
  • Developers will provide source code based on established best practices using specified tools and processes established by the project.
  • Development Manager will ensure clarification, demonstration and discussion of issues will be addressed with Lead SME and SME Group in an iterative process to ensure maximum use of all resources and expedite development effort.

 

Quality Assurance

Quality Assurance

  • The QA team works with the Lead SME and Testing Coordinator to ensure documented Acceptance Criteria in the functional specification are complete in coverage and specificity.
  • The QA team is responsible for monitoring the development and workflow of test cases in the OLETS JIRA project and reporting progress to the Test Coordinators.
  • The QA team is responsible for providing technical assistance to the testers in working in the OLETS JIRA project.
  • The QA team is responsible for reviewing failures reported from the execution of the test scripts, evaluating the severity of the failures, and referring the failures to the appropriate group
  • Critical failures will be reported to the development managers
  • Minor issues will be reported to the SME group to schedule fixes
  • Requests for enhancements coming from the formal testing process or from free range testing will be documented in the OLEFDBK project and referred to the SME group for further review, documentation, and scheduling.
  • The QA team is responsible for reviewing the OLE JIRA issues when testing is complete and marking those issues as closed when the related test cases have passed.
  • The QA team is responsible for monitoring the availability of the Test environment and notifying testers and the SME groups when the environment is unavailable.

Test Script Development

  • Testers will document step by step test scripts in Test Cases in the OLETS JIRA project.
  • Selected scripts will be adapted to automated regression tests by the QA Team.

Test Execution

  • The QA team will research the creation of regression tests to run continuously on the server side.
  • The QA team is responsible for the continuous development of one or more “Smoke Test” scripts that will be run on the test environment after each refresh of the environment.

Application Documentation (Section Placeholder)

 Deliverables ensuring the delivery of robust library software based on functional requirements.

Deliverable

Audience and Purpose

Roles

Functional Specification

 

Development team for design

Writer for user documentation

Testing Coordinator for test script development

Owner: Lead SME

Produced By: Analyst

Contributors: SME Group

Acceptance Criteria

QA Manager and test teams

Development team for unit tests

Owner: QA Manager

Produced By: SME Testing Coordinator

Contributors: SME Group, Development Team, QA Manager

Design

SME Group for understanding of  functional implementation

SME Testing Coordinator to identify additional Acceptance Criteria based on implementation.

Owner: Development Manager

Produced By: Developers

Contributors: SME Group, Development Team, System Integration Development Manager, QA Manager

Technical Specifications

Developers developing, maintaining and implementing software to serve as a road map of infrastructure interoperability.

Owner: Development Manager

Produced By: Developers

Contributors: Development Team, System Integration Development Manager, Technical Council

Source Code

Developers developing, maintaining and implementing software

Owner: Development Manager

Produced By: Developer

Contributors: Developer

Unit Tests

Developers developing, maintaining and implementing software

QA Manager to ensure stability of source code

Owner: QA Manager

Produced By: Developer

Contributors: Developer, QA Manager, `SME Testing Coordinator

Weekly SME Group meeting activities:

  • SME Group
    • Develop, review, clarify, document and approve functional requirements definition to include screen mockups, business rules, workflows, permissions, application interoperability, dependencies, acceptance criteria, etc.
    • Develop, review, clarify, document and approve use cases and test scripts
  • Development Team
    • Demonstrate, review and clarify design and development. 

Daily SME GROUP activities

  • Development Manager and Developers may require daily contact with Lead SME, or their delegate for requirement clarification and source code development review.

 

 

Upon code promotion to our central repository developed functionality can be accessed for review http://dev.ole.kuali.org/ole-dev/portal.jsp.This can be done daily prior sprint promotion to Test.

 Template for identifying FTE for SME Group roles.

Future Sections

Documentation

  • Lifetime of the functional specification.  If used for user documentation we could have inconsistencies if functional spec is not updated. Discuss with user doc staff/qa.
  • Lifetime of design/technical specification.  If used by implementing institutions or for development technical documentation, how do we want this to play out.

JIRA

  • Present the use of jira for the SME groups and how we will be tracking.  
  • Work with QA on how we will be tracking test results back to future releases’ etc…

Modifications to Document and other Activities Required

  • Add dotted line between SME Groups and PM to represent meetings with Lead SME and PM
  • Change all reference to Tiger Teams
  • Need to be sure to specify how SME testing coordinator is identified
  • Need  to spell out time required to support role/responsibility
  • Functional Council presentation of QA process.


Operated as a Community Resource by the Open Library Foundation