1 / 19

T ask O riented P rogramming with

T ask O riented P rogramming with. Why are we doing this?. Crisis management and Command & Control are complex domains Rapid prototyping needed to formulate specs Much effort needed to go from idea to prototype Need for tooling that bridges this gap. Existing Tooling.

dima
Download Presentation

T ask O riented P rogramming with

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Task Oriented Programming with

  2. Why are we doing this? • Crisis management and Command & Control are complex domains • Rapid prototyping needed to formulate specs • Much effort needed to go from idea to prototype • Need for tooling that bridges this gap

  3. Existing Tooling • Concepts of formalism do not fit with that of problem domain (semantic gap) • Lot of work to make something • Focus mostly on the how and not on the what • Therefore, we developed TOP and iTasks

  4. Goal of TOP & iTasks • Support the development of applications for collaboration between parties using ICT applications and networks • Offer a formalism to reason about how to collaborate • Enhance rapid prototyping of these applications

  5. TOP In a Nutshell

  6. What is Task -Oriented Programming ?

  7. Task Programming

  8. as Central Concept Programming Task s with

  9. A Task is a specified piece of work aiming to produce a result of known type. When executed tasks produce (temporary) results which are observed in a controlled way.

  10. Why?

  11. Tasks are the reason we build systems We have to understand tasks anyway Reduce specification effort to specification of tasks

  12. Smallest building blocks are “basic tasks” Interactive: Human + machine Viewing information Entering information Indicating choices Automated: Machine Calculation Down/uploads Sensor interfacing Information retrieval Model evaluation

  13. Composition of tasks are tasks Sequential: Next task when result is achieved Next task when conditions are met Next task when human wants to Parallel: Do tasks in any order Try multiple tasks, use first success Divide task Add / delete tasks during execution Transformation: Convert result Add meta-data

  14. Tasks can compute tasks Dynamic behavior Next steps are computed from other tasks’ (intermediate) results Abstraction Abstract patterns can bedefined and applied in different contexts

  15. Information can be shared between tasks Access Can be read/write Different view on same information Typical use Shared situational awareness Task attached to share Executed every time share is updated

  16. What is iTasks? • Implementation of TOP • Toolkit for building (prototypes of) TOP applications • Buzzwords • Declaritive, Functional Programming in Clean • Domain specificlanguage / library in Clean • Code generation, GenericProgramming • Client-server model

  17. iTasksArchitecture iTask App Phone Computer Laptop Sensor Tablet iTask Client iTask Client iTask Client iTask Client iTask Client iTask User WEB Cloud / Database iTask User iTask User iTask User Web Service Web Service Web Service iTask User RPC iTask Web Server iTask Web Server iTask Combinator Library iTask Combinator Library iTaskSpecification My iTask Specification

  18. CM App 1 CMApp2 CM App 3 C2 App 4 C2 App 5 C2 App 6 CM App development iTasksResearch iTaskutility combinators iTasks& C2 - CM Research C2 & CMFramework(s) IT Research iTaskcore Infrastructure What are we aiming at? • GenericFrameworksfor C2 & CM • Reusabletaskstructures • Parametrizablewithspecifictasksforspecificapplications

More Related