\section{Requirements}
\label{requirements}
In order to allow interoperability with other ADLs, 
we define some requirements for Cheddar ADL:
\begin{itemize}
	\item Applicable in several areas: It should be take various concepts 
	like FPGA, Multiprocessor architectures with caches/cores 
	and shared memory, N-level of hierarchical scheduling into account.
	\item Should be as close as possible with real-time scheduling 
	and queueing system theories: Classic models, 
	synchronization/dependencies, scheduler parameters.
	\item Must stay simple and easy/quick to use/understand.
	\item Maintain existing features: allow transformation to 
	AADL/Marte/others supported ADLs.
	\item Provide isolation : spatial and temporal. The aim is to enable 
	independently spatial analysis (take the behaviour of 
	system into account, model checking ...) and temporal analysis 
	(compute the respond time, the schedulability analysis ...).
	\item Both hardware/software modelling and software deployment: 
	required for real-time systems analysis, user/designer 
	understanding.
\end{itemize}

The next section aims to present the general concepts of Cheddar ADL, based on 
these requirements.