Click or drag to resize
Role Application Developer

[This is preliminary documentation and is subject to change.]

This topica describes the role "Application Developer".

This topic contains the following sections.

Required skills
  • Proficient in .NET development (especially ASP.NET).

  • Knowledge of the TOPICA API

Application Developer tasks

Even if the TOPICA framework is very flexible, there may arise situations when the framework imposes some restrictions on what you would like to do. The framework is very extensible Therefore, a trained programmer might able to write the necessary code and plug that smoothly into the framework - thereby extending the functionality of the framework, WITHOUT altering the framework. The "Application Developer" role describes this.

  • Implementing custom webforms (.aspx'es) - typically used for custom reports, pre-/post-processing, additional user interfaces, etc. The web forms must adhere to certain architectural principles defined by the framework, but aside from that there are few limits to what such aspx'es may do.

  • Implementing AJAX calls may be used to invoke server processing from client-side code (JavaScript).

  • Implementing plug-ins (compiled .NET assemblies / DLLs that implement specific interfaces defined in the framework). These are typically used for import and export or integration with external systems. Note, however, that implementing these plugins has some drawbacks. In most cases the required functionality may be implemented in other ways - consider that first!

  • Web Services may be useful, when external systems need to invoke processing in a TOPICA based application. Note, however, that the framework comes with several built-in webservices, and that it is possible to auto-generate webservices that correspond to the dynamic, configured data model. Therefore, consider whether the built-in and/or auto-generated webservices may do the job before developing new Custom webservices.

    The other way around (calling webservices in external systems from within TOPICA) is typically handled by some of the above methods (custom weborms, AJAX calls, etc.).

The framework defines architectures for how to implement these extensions. Fro example there is a set of base pages that should be used for custom weborms. Besides these specifications, an application developer does not need to fully understand the inner workings of the framework.

Overlaps with other roles

The "Application Developer" role overlaps with some of the other roles.

  • Configurators and application developers both develop applications using the TOPICA framework. It may be the same person(s) that act as configurator and Application Developer. The distinction between these two roles are the tools used:

    • A configurator writes code in SQL, JavaScript and TOPICA Basic code, but not .NET code (C#).

    • An application developer typically programs in a .NET language (e.g. C#). Understanding the Architecture is a must. Also, knowledge of a few items in the API will be needed.

  • A person playing the "Application Developer" role may also play the Framework Developer role - as both need ASP.NET programming skills.

See Also

Other Resources