Abstract
Definition-Use Net (DUN) is a graph-theoretical concurrent program representation that is very useful in software development activities such as program dependence analysis, testing, debugging, and complexity measuring. It is an arc-classified digraph having vertices representing information about definitions and/or uses of the values of variables, and inter-process synchronization and communication, and arcs representing deterministic or nondeterministic control ows between vertices. For capturing Definition-Use Nets for Ada 2012 programs, we developed an Asis-based DUN generator for Ada 2012 programs. This article presents an informal explanation for DUNs of Ada 2012 programs and shows some example DUNs of Ada 2012 programs generated by our DUN generator
- AdaCore: Ada 2012. http://www.ada2012.org/ (accessed at July 20, 2016)Google Scholar
- AdaCore: The Ada Programming Language. http://www.adacore.com/adaanswers/about/ada (accessed at July 20, 2016)Google Scholar
- AdaCore: Ada Web Server. http://www.adacore.com/aws (accessed at July 20, 2016)Google Scholar
- Barnes, J.: Ada 2012 Rationale: The Language - The Standard Libraries (Lecture Notes in Computer Science / Programming and Software Engineering). Springer (2013)Google Scholar
- Barnes, J.: Programming in Ada 2012. Cambridge University Press (2014) Google Scholar
Digital Library
- Cheng, J.: Task Dependence Net as a Representation for Concurrent Ada Programs. In: Ada: Moving towards 2000, 11th Ada-Europe International Conference. Lecture Notes in Computer Science, vol. 603, pp. 150--164. Springer, Heidelberg (1992) Google Scholar
Digital Library
- Cheng, J.: Complexity Metrics for Distributed Programs. In: Proc. 4th International Symposium on Software Reliability Engineering, pp. 132--141. IEEE Computer Society Press (1993)Google Scholar
- Cheng, J.: Process Dependence Net of Distributed Programs and Its Applications in Development of Distributed Systems. In: Proc. 17th Annual International Computer Software & Applications Conference, pp. 231--240. IEEE Computer Society Press (1993)Google Scholar
- Cheng, J.: Nondeterministic Parallel Control-Flow / Definition-Use Nets and Their Applications. In: G. R. Joubert, D. Trystram, F. J. Prters, and D. J. Evans. (eds.) Parallel computing: Trends and Applications, pp. 589--592. Elseviser Science Publishers B. V (1994)Google Scholar
- Cheng, J.: Task Dependence Nets for Concurrent Systems with Ada 95 and Its Application. In: 1997 ACM TRI-Ada International Conference, pp. 67--78. ACM Press (1997) Google Scholar
Digital Library
- Ferrante, J., Ottenstein, K.J., Warren, J.D.: The Program Dependence Graph and Its use in Optimization 9, 319--349 (1987) Google Scholar
Digital Library
- Horwitz, S., Reps, T., Binkley, D.: Interprocedural Slicing Using Dependence Graphs. ACM Transactions on Programming Languages and Systems (TOPLAS) 12(1), 26--60 (1990) Google Scholar
Digital Library
- International Organization for Standardization: ISO/IEC 8652:2012 (E): Information Technology -- Programming Language - Ada (2012)Google Scholar
- Kasahara, Y., Cheng, J., Ushijima, K.: Task Dependence Net of Concurrent Ada Programs and Its Automatic Generation (In Japanese). Transactions of IEICE J79-D-I(11), 925--935 (1996)Google Scholar
- Nonaka, Y., Hatano, K., Nomura, Y., Cheng, J., Ushijima, K.: A System Dependence Net Generator for Ada Programs. In: Proc. Sixth Asia-Pacific Software Engineering Conference, pp. 441--448. IEEE Computer Society Press (1999) Google Scholar
Digital Library
- Robert, D.: Ada 2012: Ada with Contracts. http://www.drdobbs.com/architecture-and-design/ada-2012-ada-with-contracts/240150569 (accessed at July 20, 2016)Google Scholar
Recommendations
A System Dependence Net Generator for Ada Programs
APSEC '99: Proceedings of the Sixth Asia Pacific Software Engineering ConferenceAn explicit representation of various dependence relationship in a program has many application in software engineering. System Dependence Net is a model to represent program dependences in a concurrent program which consists of multiple procedures. ...
Efficient computation of interprocedural definition-use chains
The dependencies that exist among definitions and uses of variables in a program are required by many language-processing tools. This paper considers the computation of definition-use and use-definition chains that extend across procedure boundaries at ...






Comments