
focused in particular on higher level design 
abstractions in parallel computing and the adoption of 
model-driven development.  
In our earlier study (Arkin et. al., 2013) 
(Tekinerdogan and Arkin, 2013), we have proposed 
an architecture framework for mapping parallel 
algorithms to parallel computing platforms. In that 
study we only focused on parallel algorithms and did 
not consider the broader concept of application. Also 
we assumed a distributed memory model in which 
each node has its own memory unit and, as such, 
targeted the MISD architecture of the Flynn’s 
taxonomy. The current approach focuses on software 
application and is more general in the sense that it 
supports both modules and algorithms, can represent 
different memory models, and supports modeling 
different computing architectures.  
5  CONCLUSIONS 
The current trend towards increased parallelization of 
software systems requires proper architecture design 
approaches for modeling and analysis of concerns 
related to parallel computing. In this paper we have 
primarily focused on the mapping of parallel 
applications on parallel computing platforms. In the 
current parallel computing literature the focus has 
been mainly on mapping algorithms to computing 
platform. Our approach adopts a broader perspective 
and considers the mapping of software application 
consisting of modules and algorithms to different 
computing platforms. Although various viewpoints 
exist in the software engineering community to cope 
with parallelism the architecture framework is novel 
since it provides a coherent and integrated set of 
viewpoints dedicated for mapping parallel 
applications to parallel computing platforms. In 
addition to the viewpoints we have also provided the 
corresponding approach that describes the logical 
order in defining the views. We have illustrated the 
approach for the Order Management case study. The 
architecture framework is useful in supporting the 
architecture design process of parallel applications 
and supports the communication among stakeholders, 
the guidance of the development of the system and 
the analysis of the system.  In our future work we will 
further refine the tool support and elaborate on the 
design of parallel applications using the presented 
architecture framework. 
 
REFERENCES 
Amdahl, G.M., 2007. Validity of the Single Processor 
Approach to Achieving Large Scale Computing 
Capabilities, Re. fr. the AFIPS Conf. Proc., Vol. 30 
(Atlantic City, N.J., Apr. 18–20), AFIPS Press, Reston, 
Va., 1967, pp. 483–485, Solid-State Circuits 
Newsletter, IEEE, vol.12, no.3, pp.19,20. 
Arias, T.B.C., Avgeriou, P., America, P., 2011. Defining 
and documenting execution viewpoints for a large and 
complex software-intensive system. Elsevier Journal of 
Systems and Software 84 1447– 1461. 
Arkin, E., Tekinerdogan, B., Imre. K., 2013. Model-Driven 
Approach for Supporting the Mapping of Parallel 
Algorithms to Parallel Computing Platforms. Proc. of 
the ACM/IEEE 16th Int. Conf. on Model Driven 
Engineering Languages and System. 
Flynn, M., 1972. Some Computer Organizations and Their 
Effectiveness, Computers, IEEE Transactions on, vol. 
C-21, no.9, pp.948, 960. 
Foster, I., 1995. Designing and Building Parallel Programs: 
Concepts and Tools for Parallel Software Engineering. 
Addison-Wesley Longman Publishing Co., Boston, 
MA, USA. 
Frank, M.P., 2002. The physical limits of computing, 
Computing in Science & Engineering, vol.4, no.3, 
pp.16, 26. 
Gustafson, J.L., 1988. Reevaluating Amdahl's law, 
Communications of the ACM, v 31, n 5, p 532-533. 
Hill, M.D., Marty, M.R., 2008. Amdahl's Law in the 
Multicore Era, Computer, vol.41, no.7, pp.33, 38. 
[ISO/IEC 42010:2011], 2011. Systems and Software 
Engineering – Architecture Description. 
Kogge, P., et al. 2008. Exascale Computing Study: 
Technology Challenges in Achieving Exascale Systems. 
DARPA. 
Ortega-Arjona, J.L., 2006. Architectural Patterns for 
Parallel Programming: Models for Performance 
Estimation, Phd. Thesis, Dept. of Computer Science, 
University College London. 
Pllana, S., Fahringer, T., 2002. UML based modeling of 
performance oriented parallel and distributed 
applications,  Simulation Conf., 2002. Proceedings of 
the Winter, vol.1, no., pp.497, 505 vol.1, 8-11. 
Rozanski, N., Woods, E., 2011. Software Systems 
Architecture: Working with Stakeholders Using 
Viewpoints and Perspectives, Second Edition, 
Addison-Wesley. 
Talia, D., 2001. Models and Trends in Parallel 
Programming.  Parallel Algorithms and Applications 
16, no. 2: 145-180. 
Tekinerdogan, B., Arkin, E., 2013. Architecture 
Framework for Mapping Parallel Algorithms to Parallel 
Computing Platforms, Proc. of the 2nd Int. Workshop 
on Model-Driven Engineering for High Performance 
and CLoud computing., Miami. 
MODELSWARD2015-3rdInternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
192