From: Mart Lubbers Date: Sat, 8 Apr 2017 18:41:12 +0000 (+0200) Subject: small update X-Git-Tag: hand-in~139 X-Git-Url: https://git.martlubbers.net/?a=commitdiff_plain;h=9d439043f4f619a45b444c6d2de05b34eb879b79;p=msc-thesis1617.git small update --- diff --git a/introduction.tex b/introduction.tex index d2c34b5..b2ae11c 100644 --- a/introduction.tex +++ b/introduction.tex @@ -1,21 +1,29 @@ \section{Introduction} -\Gls{TOP} and \gls{iTasks} have been designed to offer a high abstraction level -through a \gls{EDSL} that describes workflows as \glspl{Task}. \gls{iTasks} has -been shown to be useful in fields such as incident +The \gls{TOP} paradigm and the according \gls{iTasks} implementation offer a +high abstraction level of real life workflow tasks. Through an \gls{EDSL} that +programmers can model workflow tasks. The system will then generate a +multi-user web service. This web service can be accessed through a browser and +used to complete these \glspl{Task}. Familiar workflow patterns like sequence, +parallel and conditional tasks can be modelled. + +describes workflows as \glspl{Task}. From the \gls{Task} description the system genThe system is originally designed to generate applications for real +life tasks that have to be \todo{cont.} + +\gls{iTasks} has been shown to be useful in fields such as incident management~\cite{lijnse_top_2013}. However, there still lacks support for small devices to be added in the workflow. In principle such adapters can be written as \glspl{SDS}\footnote{Similar as to resources such as time are available in the current \gls{iTasks} implementation} but this requires a very specific adapter to be written for every device and functionality. Oortgiese et al.\ lifted \gls{iTasks} from a single server model to a distributed server -architecture~\todo{Add cite} that is also runnable on smaller devices like -\acrshort{ARM}. However, this is limited to fairly high performance devices -that are equipped with high speed communication lines. Devices in \gls{IoT} -often only have \gls{LTN} communication with low bandwidth and a very limited -amount of processing power. \glspl{mTask} will bridge this gap. It can run on -devices as small as Arduino microcontrollers and operates via the same -paradigms as regular \glspl{Task}. The \glspl{mTask} have access to \glspl{SDS} -and can run small imperative programs. +architecture~\cite{oortgiese_distributed_2017} that is also runnable on smaller +devices like \acrshort{ARM}. However, this is limited to fairly high +performance devices that are equipped with high speed communication lines. +Devices in \gls{IoT} often only have \gls{LTN} communication with low bandwidth +and a very limited amount of processing power. \glspl{mTask} will bridge this +gap. It can run on devices as small as Arduino microcontrollers and operates +via the same paradigms as regular \glspl{Task}. The \glspl{mTask} have access +to \glspl{SDS} and can run small imperative programs. \section{Document structure} The structure of the thesis is as follows. @@ -25,7 +33,7 @@ Chapter~\ref{chp:methods} describes the foundations on which the implementation is built together with the new techniques introduced. Chapter~\ref{chp:results} shows the results in the form of an example application accompanied with implementation. -Chapter~\ref{chp:conclusion} concludes by answering the research question (s) +Chapter~\ref{chp:conclusion} concludes by answering the research questions and discusses future research. Appendix~\ref{app:communication-protocol} shows the concrete protocol used for communicating between the server and client. diff --git a/methods.tex b/methods.tex index 952986e..18cc188 100644 --- a/methods.tex +++ b/methods.tex @@ -14,7 +14,9 @@ There are two main types of \glspl{EDSL}. \todo{Small deep embedded dsl} \todo{Show that class based has the best of both worlds} +\section{Architecture} \section{Devices} + The client code for the devices is compiled from one codebase. For a device to be eligible for \glspl{mTask} it must be able to compile the shared codebase and implement (part of) the device specific interface. The shared codebase only @@ -25,6 +27,7 @@ listed in Appendix~\label{app:device-interface}\todo{update interface listing}, also includes functions for accessing the peripherals that not every device might have. Devices can choose what to implement by setting the correct macros in the top of the file. +\todo{Supported devices} \subsection{Specification} Devices are stored in a record type and all devices in the system are stored in diff --git a/thesis.bib b/thesis.bib index dfbd233..1deb14b 100644 --- a/thesis.bib +++ b/thesis.bib @@ -25,7 +25,7 @@ file = {chp%3A10.1007%2F978-3-319-39110-6_6.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/TJVP6FHF/chp%3A10.1007%2F978-3-319-39110-6_6.pdf:application/pdf} } -@article{koopman_type-safe_????, +@article{koopman_type-safe_nodate, title = {Type-{Safe} {Functions} and {Tasks} in a {Shallow} {Embedded} {DSL} for {Microprocessors}}, url = {https://tfp2016.org/papers/TFP_2016_paper_7.pdf}, urldate = {2017-02-22}, @@ -67,4 +67,18 @@ year = {2013}, note = {OCLC: 833851220}, file = {103931.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/9KZ9I6N9/103931.pdf:application/pdf} +} + +@phdthesis{oortgiese_distributed_2017, + address = {Nijmegen}, + type = {Master}, + title = {A {Distributed} {Server} {Architecture} for {Task} {Oriented} {Programming}}, + shorttitle = {A {Distributed} {Server} {Architecture} for {Task} {Oriented} {Programming}}, + url = {http://www.ru.nl/publish/pages/769526/arjan_oortgiese.pdf}, + language = {English}, + urldate = {2017-04-08}, + school = {Radboud University}, + author = {Oortgiese, Arjan}, + year = {2017}, + file = {arjan_oortgiese.pdf:/home/mrl/.mozilla/firefox/7b4r727h.default-1470981082057/zotero/storage/J4WXQXU4/arjan_oortgiese.pdf:application/pdf} } \ No newline at end of file