support this functional separation of concerns in a
consistent way from analysis to implementation.
Separation of non-functional concerns allows
developers to firstly discard quality requirements
and orthogonal aspects to better focus on their job’s
core.
Both functional and non-functional separations
make deliverable products (documents, models and
code) cleaner, therefore facilitate code
understanding and enhance maintainability.
Static composition of subjects, which are
provided by role, subject and view programming
approaches, and the weave of aspects, enhances
reusability.
Dynamic view composition provided by Mili’s
approach allows dynamic change of system
universe.
Dynamic activation and deactivation of view
proposed and managed by Mili et al. and Nassar et
al. permit run-time change of system behaviour.
The role, subject and view approaches allow
profiling, which enables access right management
and information relevance, and multiplicity that
permits distributed and coherent access to system.
Aspect-oriented programming does not take
explicitly into account users but favour a type of
modularised development that meets some of the
quality criteria mentioned above. In this respect, this
approach is complementary from view-oriented
ones.
REFERENCES
Abiteboul S., Bonner A., 1991. Objects and Views. Proc.
of ACM SIGMOD, pp. 238-24.
Aldawud O., Elrad T., Bader A., 2001. A UML Profile for
Aspect Oriented Modeling. OOPSLA 2001 workshop
on aspect Oriented Programming.
Andersen E. P., Reenskaug, 1992. System Design by
Composing Structures of Interacting Objects. Proc. of
the 6th European Conference on Object-Oriented
Programming (ECOOP'92), LNCS, Vol. 615. pp. 133-
152, Utrecht, The Netherlands. Springer-Verlag.
Andersen E. P., 1997. Conceptual Modeling of Objects. A
Role Modeling Approach. PhD thesis, Department of
Informatics, University of Oslo.
Bardou D., 1998. Roles, Subjects and Aspects: How do
they relate? Position paper at the Aspect Oriented
Programming Workshop. 12th European Conference
on Object-Oriented Programming (ECOOP '98),
LNCS, vol. 1543, Springer.
Bendelloul S., Mili H., Dargham J., Mcheick H., 2000. A
comparison of view programming, aspect-oriented
programming, subject-oriented programming from a
reuse perspective. Proc. of 13
th
ICSSEA, Volume 4,
Paris, France.
Carré B., Geib J.M. , 1991. The Point of View Notion for
Multiple Inheritance. Proc. of ECOOP/OOPSLA.
Charrel P.J., 2002. The Viewpoint Paradigm: a semiotic
based Approach for the Intelligibility of a Cooperative
Designing Process. Australian Journal
of Information Systems, Vol. 10, n° 1. pp. 3-19.
Clarke S., Harrison W., Ossher H., Tarr P., 1999.
Separating Concerns throughout the Development
Lifecycle. Proc. Of ECOOP'99 Workshop on Aspect-
Oriented Programming, Lisbon, Portugal.
Coulette B, Kriouile A., Marcaillou S., 1996. L’approche
par points de vue dans le développement orienté objet
des systèmes complexes. Revue l’Objet vol. 2, n°4, pp.
13-20.
Coulondre S., Libourel T., 1999. Viewpoints Handling in
an Object Model with Criterium-Based Classes. In
DEXA’99, Florence. LNCS n°1677, pp. 573-582.
Debrauwer L., 1998. Des vues aux contextes pour la
structuration fonctionnelle de bases de données à
objets en CROME. Thèse de Doctorat, LIFL, Lille.
Finkelstein A., Kramer J., Goedicke M., 1990. Viewpoint
Oriented Software Development. Proc. of Software
Engineering and Applications Conference, pp. 337-
351, Toulouse.
Gottlob G., Schrefl M., Roeck B., 1996. Extending object-
oriented systems with roles. In ACM Transactions on
Information Systems, vol. 14 n. 3, pp. 268-296.
Harrison W., Ossher H., 1993. Subject-oriented
programming : a critique of pure objects. Proc. of
OOPSLA’93, Washington D.C., pp. 411-428.
Kiczales G., Lampng J., Mendhekar A., Maeda C., Lopes
C. V., 1997. Aspect-Oriented Programming. Proc. of
the European Conference on Object-Oriented
Programming (ECOOP). Finland. Springer-Verlag
LNCS 1241.
Kiczales G., Hilsdale E., Hugunin J., Kersten M., Palm J.,
Griswold W.G., 2001. An Overview of AspectJ. Proc.
of ECOOP’, Springer Verang LNCS2072.
Kriouile A, 1995. VBOOM, une méthode orientée objet
d’analyse et de conception par points de vue. Thèse
d’Etat. Université Mohammed V de Rabat.
Kristensen B. B., 1996. Object-oriented modeling with
roles. In John Murphy and Brian Stone, editors,
Proceedings of the 2nd International Conference on
Object-Oriented Information Systems, pages 57–71.
Springer-Verlag.
Kristensen B. B., and Osterbye K., 1996. Roles :
Conceptual Abstraction Theory & Practical Language
Issues. Theory and Practice of Object Systems
(TAPOS), 143-160, Special Issue on Subjectivity in
Object-Oriented Systems.
Marcaillou S., Coulette B., Kriouile A., 1994. Visibility :
A new relationship for complex system modelling. In
TOOLS USA'94. TOOLS13, Prentice Hall.
VIEWS, SUBJECTS, ROLES AND ASPECTS: A COMPARISON ALONG SOFTWARE LIFECYCLE
145