This paper explores the potential of using the multimedia and hypermedia technology in the development of a university courseware. At universities, the use of hypermedia and multimedia technology is perceived as one of the most efficient ways to enhance student access to the information and improve learning interaction in an undergraduate computer science course. Such an approach will guarantee a high level of quality in teaching whilst permitting significant reduction in lecturer-student contact hours. The critical questions here are whether the university is ready for this new technology and whether it is capable of developing a quality hypermedia software within budget boundaries.The hypermedia design and programming development environment shows some peculiarities which make it different from the "classic" development activities. Most organisations today emphasise technology oriented solutions as a path to solve their productivity problems. The notion of organisational maturity with regard to the process the organisation deploys in the development of the software has become widely discussed topic of 90s.
The Capability Maturity Model (CMM) of Software Engineering Institute (SEI) is applied here to a hypothetical interactive hypermedia university development environment to assess the methods used in the development process of the interactive hypermedia applications in computing. Necessary conditions to achieve the Repeatable, Defined, Managed and Optimising Maturity levels are defined and discussed in context of the development process and its maturity.
The multimedia courseware development is very complex process. In this paper, we will define a typical interactive multimedia development process in a reaching environment and outline differences and Problems associated with such a development environment.
The objective is to analyse the role of a life cycle model and key activities of the requirements management to show that the improvement in both, the organisation (university) maturity and the software development process levels will lead to a more efficient utilisation of complex computing technologies, in particular interactive multimedia and hypermedia technologies.
We believe that when developing a new courseware the key problem is the assessment of the organisation and the development process maturity. The low level of the organisation (university) maturity will significantly reduce the organisation's ability to take an advantage of the new technology such as CASE or hypermedia or virtually any complex technology (Humphrey. 1990). In the best case, a newly developed courseware is put on the shelves. Frequently, the new technology is abandoned as too difficult to be used by non-computing professional due to its lack of transparency to the user, and the insufficient interactivity features. In other words, the product (courseware) does not meet the user requirements and software product quality measures.
Development of the interactive multimedia courseware in higher education institutions is a design activity and as most design problems is complex and also ill-structured. In spite of the progress that has been made over last years, tools which would enable the designer to create truly cooperative and user friendly hypermedia based problem solving system an unavailable (Palay, 1992). One of the properties of any ill-structured problems is their inherited instability which results in frequent need to redesign the system. This problem surfaces particularly in interactive hypermedia applications which introduce higher levels of uncertainty than commercial projects.
Collection of all user needs is seldom available at the beginning of the design stage and therefore to perceive any specification of a problem solving system as correct and final in a given time interval is unrealistic. For example, learning abilities of both groups of learners - inductive and deductive - should be equally supported by the final product. From the educational point of view, this goal is hardly achievable. Furthermore, incorporation of user requirements of both groups of learners will result in contradictory requests. For instance, our experience shows that each group of learners requires the different style of the interaction with the courseware.
The problem of the design complexity is typically approached by dividing the task into simpler functions or, in object oriented methodologies, into simpler subassemblies. A typical software engineering process is a composition of data modelling stage, application logic specification stage, and presentation logic design stage (Sommerville, 1992). With object oriented methodologies, decomposition is centred around the class definition followed by the object behaviour description (Meyer, 1988). Due to the complexity of these tasks, the design tools are becoming the necessity for each stage of the software engineering process. So far, the tools which would support design of an interactive multimedia or hypermedia courseware are incompatible, and they exhibit very little integrating features. In addition, they have simplified "one button" user interface or they are perceived by the non-computing professionals as difficult to use (Schank, 1993).
Based on the above skill requirements we can define the composition of the software engineering and production teams. For the purpose of this paper, we use the production staff chart suggested in (Bunzel, 1992): main stream (executive producer, producer), creative design (creative director, graphic design, designer, image capture, photographer, electronic graphics designer), script (script writer, content expert), video production (video producer, video director, video crew, video editor), interactive design (interactive designer, instructional designer), implementation (systems architect, designer, programmer, tester).
Obviously, the range of skills as well as the development and production tools is wide. Although the skills diversity is becoming a common practice when developing object oriented applications, the skills required for the object oriented design and development always fall into the category of .computer professionals" which based on the above staff chart cannot be said about the multimedia development process. For the purpose of this paper, we consider the following hypothetical hypermedia development environment:
Typical problem is faced by organisations which find themselves at a level 1 (initial) and wish to make a magical leap a few levels up by simply introducing advanced engineering tools. Unfortunately, the transition to the next level is cultural and independent of the technology (Yourdon, 1992). The result is a costly transition with unpredictable and unstable results.
A number of factors need to be considered when deciding which approach to take: user approach to decision making, how important are tangible intermediate results, schedules, and the impact of the technology (Yourdon, 1992). We believe that the fourth factor, technology impact, plays the major role in the selection of an appropriate life cycle for the project. The inclination to a more radical approach here is dictated by the immaturity of authoring software packages and by the technology itself which enforces a need to solicit an approval to a large number of the user requirements by showing him/her partial results. This implies that some kind of prototype must be developed in order to complete the requirements collection stage. Based on Boehm's suggestion (1985) that the software development process is a collection of series of 'spirals', we assert that the model appropriate for the development of hypermedia projects must incorporate prototype and risk analysis for each spiral turn. The reasons for carrying out the risk analysis task will be apparent from the next discussions.
Figure 1: The life cycle model for complex hypermedia projects.
In Figure 1, we suggest a possible life cycle model for larger multimedia and hypermedia systems. Note the "re-visiting" of previous stages at each stage which imposes the systematic integration process on each cycle of the model. Furthermore, the design stage and coding can proceed in parallel with assets creation and processing. The two important problems[3] relevant to the hypermedia development have been identified, both are the result of the implementation of a non-traditional development tools and team composition.
The essence of the Requirements Management is to provide a framework which will help to reduce project design uncertainty by imposing a well defined methodology on ill-structured process. This approach has already been endorsed by a number of large companies and seems to provide the workable solution for standard commercial projects. In the following section, we will discuss the implications pertinent to the hypermedia projects in a university environment.
In order to distinguish between what system is going to do and how (Blum, 1992), the two categories of requirements are introduced:
The high level of interaction is so far associated with a number of technological difficulties. For example, in the OS/2 based environment, cut/paste functions applied to a portion of the digitised motion video frame require the designers to develop a special "video editor" process. The other example, embedded video object manipulation, is typically resolved by deploying the Dynamic Data Exchange mechanism (DDE)[4] which does not provide true embedding[5]. If user requires the capability of clicking on the digital video embedded object and start editing then DDE does not solve the problem and more sophisticated approach must be considered[6]. The implication is that the users are not aware of the impact of such design decisions on the cost of software changes associated with the increased level of interactivity. For example, if a high level of interactivity is to be implemented, the feasibility assessment must include the evaluation of the research and development associated with the possible extensions to the selected/available authoring tool (risk and sensitivity analysis).
One solution to this problem - to accept the tool limitations - may result in the user dissatisfaction and the project's possible shelving. Alternatively, we can employ programmer(s) to write an additional software package in order to meet the navigation level requirements. Since the requirement is typically not well defined, the cost of changes and additional programming may highly exceed the project budget. This is one of the points where carrying out the risk analysis is an essential step.
The above considerations are just a few examples of the user requirements which exhibit a high degree of subjectivity, introducing a high degree of uncertainty into the system. It can be argued that the level of interactivity and navigation is determined by a given authoring tool capabilities. Although this approach seems to be practical, it will likely result in the software useability problems and restricted modelling capabilities. The design will be controlled by the tool's capabilities rather than the user's requirements. We believe that a suitable solution will be an intelligent and integrated exploratory environment enabling the user to achieve the goals placed on the final system in an iterative fashion.
Until now, the multimedia projects have been considered to be small in size and therefore there has been no need to employ information engineering procedures or staff. More emphasis has always been on the production category. In order to reach full potential of the Digital Video Interactive (DVI) technology, and create truly interactive courseware, professional software engineering approach (methods) is needed.
In multimedia environment, the skills diversity precludes the usage of the majority of the requirements specification notations. Mathematical formal specification languages are unambiguous but in practice, the majority of clients and members of the development team as well (for example script writer or artist) will be reluctant to work with such a specification. Although the formal specification methods were successfully applied to complex systems for instance to the specification of a kernel for a real time system (Spivey, 1990), they are intended for use by computer professionals. In addition, some of them are suited in a more conservative life cycle model.
Multimedia applications are inheritably non-sequential and object oriented design principles must be assumed. Formal specifications which meet criteria of re-useability are still being researched. Furthermore, the current formal specification methods do not express with a great deal of precision subjective nature of some disciplines involved in multimedia application design, such as composition of video clips or still images, and other non-textual components. Formal methods in general are too complex to appeal to people with arts or humanities background.
Natural language is probably the only feasible way to document the requirements stage. Since natural language relies on readers and writers using the same words for the same concepts, inherent ambiguity of natural language must be considered. In addition, natural language is extremely flexible and imprecisely expressed relationships among entities or objects may lead to errors and misunderstanding. The complexity of formal specification methods reduces their potential for use by non-computer professional efficiently and the ambiguity of natural language negatively impacts on the design process. We believe that visual methods combined with the partial objects and behaviour prototyping will support the development process of the multimedia courseware more efficiently and in non-ambiguous fashion.
Multimedia and hypermedia environments (both hardware and software) are still in the stage of development and consequently they are immature and unstable. The project manager is not in the position to "know how" since he/she probably has very little experience with the development of large multimedia projects. Yourdon (1992) depicts the scenario of introducing new building blocks (operating system, database, telecommunications) into a system in the following way: with each new building block either software or hardware more uncertainty is introduced. Effectively, there is a hidden amount of research and development efforts in any project dealing with new technology and the project manager must account for it. Although we cannot prove the following assertion, we perceive that the amount of the hidden research and uncertainty in a large multimedia projects is considerably higher than in a project which deals with one media only.
Firstly, let's have a look at the validation techniques. In the abstract approach, the designers will be reading a formal or natural language definition and the users-lecturers must imagine the functional system. This approach is considered as inadequate and misleading for any complex systems (Sommerville 1992). If explorative programming or prototyping approach is taken, the partial executable model is developed. As discussed above some considerations must be given to capabilities the authoring tools and an immaturity of hypermedia and multimedia products overall. Frequently, the developers must resort to the use of a toolkit combined with 3GL programming style in order to present the user with the partial implementation of the functional or non-functional requirements. This implies that to develop a functional model prototype may at the end result in a substantial effort and an investment.
Secondly, such systems' overall useability and how the system meets the user requirements must be tested by the active use (Schneiderman, 1992). This approach expects that the system is fully functional and in use by students for some time. It is obviously too late to validate the user requirements, in particular the level of interactivity and density of links. The proposed solution (see Figure 1) is based on an incremental object oriented modelling and development which permit to test both the useability and meeting the user requirements.
In order to reduce the impact of the restricted experience with the design of large hypermedia projects, the exploratory (spiral) software development life cycle is applied in the object oriented environment. In addition, since the new technology always introduces a hidden amount of research, risk analysis must be carried out at each spiral turn.
Organisational maturity level is a key aspect which determines the capability of the organisation to utilise more progressive and recent technologies. In our opinion, the complexity of the multimedia development process requires the organisation to achieve the defined (level 3) level of maturity.
The semantic distance between the set of requirements and the designers perception of their implementation and the ambiguity of natural language as the specification notation, reduce efficiency of the design process. We believe that the constant check with the requirements specifications, abandoning the waterfall development model in favour of the spiral model, will positively contribute to the development process management. By the same token, this is a contemporary measure and we do not perceive that this approach will lead to a satisfactory solution in the future.
When assessing the quality of a multimedia system, new types of measures must be introduced. For instance the quality and impact of time dependent relationships, quality of assets, and density of inter-topic links are important criteria for assessing the quality of the hypermedia or multimedia courseware. In addition, the strategies for the system evaluation by an active use must be devised.
Bell, D. & Johnson, P. (1992). Support for the authors of multimedia tutorials. In L. Kjelldahl (ed), Multimedia: Systems, interaction, and applications. 1st Eurographics Workshop, Stockholm, April 18119, 1991, Springer-Verlag, pp.307-323.
Blum, B. A. (1992). Software engineering: A holistic view. Oxford University Press.
Boehm, B. W. (1985). A spiral model of software development and enhancement. Proc. of an International workshop on the software process and software environments. Coto de Caza, Trabuco Canyon, California.
Boehm, B. W. (1988). A spiral model of software development and enhancement. IEEE Computer, 21(5), 61-72.
Bunzel, M. J. & Morris, S. K. (1992). Multimedia applications development. McGraw-Hill.
Champine, G. A., Geer, D. E. Jr. & Ruh, W. N. (1990). Project ATHENA as a distributed computer system. Computer, 23(9), 40-5 1.
Gould, J. D. (1988). How to design useable systems. In M. Helander (ed), Handbook of human-computer interaction. B. V. North Holland: Elsevier Science Publishers.
Haan, B. J., Kahn, P., Riley, V. A., Coombs, J. H. & Meyrowitz, N. K. (1992). IRIS Hypermedia Services. Communications of the ACM, 35(1), 36-51.
Hall, A. (1990). Seven myths of formal methods. IEEE Software, 7(5), 11-20.
Humphrey, W. (1990). Managing the software process.Addison-Wesley.
Lundeberg, A., Tomoyuki Yamamoto, & Takashi Usuki. (1991). SAL: A hypermedia prototype system. In L. Kjelldahl (ed.), Multimedia: Systems, interaction, and applications. 1st Eurographics Workshop, Stockholm, April 18-19, 1991, Springer-Verlag.
Luther, A. C. (1992). Designing interactive multimedia. Bantam Books.
Radha, K., Mahapatra, & Courtney, J. (1992). Research issues in hypertext and hypermedia for business applications. DATABASE, Fall edn.
Meyer, B. (1988). Object-Oriented Software Construction. Prentice Hall.
McConnell, D. (1991). Computers, electronic networking and education: Some American experiences. Educational and Training Technology International, 28(3), 171-187.
Palay, A. J. (1992). Towards an operating system for user interface components. In Blattner, M. M. and Dannenberg, R. (eds), Multimedia interface design. ACM Press.
Paulk, Mark C., Curtis, Bill, Chrissis, Mary Beth, and Weber, Charles V. (1993). Capability maturity model for software. Version 1. 1. Software Engineering Institute Carnegie Mellon University, Pittsburgh, Pennsylvania 15213, February.
Schank, R. C. (1993). Learning via multimedia computers. Communications of the ACM, 36(5), 54-56.
Schneiderman, B. (1992). Designing the user interface: Strategies for effective human-computer interaction. Second Edition. Addison-Wesley.
Sherman, M., Hansen, W. J., McInerny, M. & Neuendorffer, T. (1990). Building hypertext on a multimedia toolkit: An overview of Andrew Toolkit hypermedia facilities. Proc. of the First European conference on hypertext. pp. 13-24.
Sommerville, I. (1992). Software engineering. Addison-Wesley. Fourth Edition.
Spivey, J. M. (1990). Specifying a real-time kernel. IEEE Software, 7(5), 21-28.
Waterworth, J. A. (ed.). (1991). Multimedia: Technology and applications. Ellis Horwood.
Yourdon, E. (1992). Decline and fall of the American programmer. Yourdon Press.
Maturity Level 2 (Repeatable):
Key process area | Goals | Activities |
Requirement management | Baseline requirements are established | Review requirements |
Plans are consistent with system requirements | Requirements form basis for plans | |
Changes to requirements are incorporated in plans |
Key process area | Goals | Activities |
Configuration management | Configuration management activities are planned | A SCM plan is prepared and approved |
Work items and their changes are controlled | Change items are tracked | |
Developers are informed of all changes | Standard reports document SCM activities |
Maturity Level 3 (Defined):
Key process area | Goals | Activities |
Process focus | Development activities are coordinated across organisation | The software process is assessed periodically |
Strengths and weaknesses are identified | Software process database is used on organisation level | |
Development and improvement activities are planned | The developers are aware of the process development and improvement |
Key process area | Goals | Activities |
Process definition | A standard software process is developed | Standard process is developed, maintained, and documented |
Process is reviewed and published | The life cycles are approved and maintained | |
Software process database is maintained | ||
A library of process related documentation is maintained |
Key process area | Goals | Activities |
Training program | Training activities are planned | Training plan is developed and revised |
Skills needed for performing software management and technical roles are developed | Training courses are developed | |
Records of training are maintained |
Key process area | Goals | Activities |
Integrated software management | The project's defined software process is a tailored version of the standard process | The project's defined process is developed by tailoring the standard process |
The project is planned according to project's process | The project is managed according to the development process | |
The process database is used for software planning | ||
The effort, cost and resources are managed according to the documented procedure | ||
The project is periodically reviewed |
Key process area | Goals | Activities |
Software product engineering | The SE tasks are defined, integrated and performed | The SE methods and tools are integrated |
The work items are kept consistent with each other | The software requirements are verified | |
The software code is verified | ||
Testing is performed to demonstrate the requirements are met | ||
Data on defects are identified, collected and analysed |
Key process area | Goals | Activities |
Intergroup coordination | The customer requirements are agreed to by all groups | The SE group participate with customers to establish the requirements |
The engineering groups identify, track and resolve intergroup issues | A plan is used to track intergroup commitments | |
Critical dependencies are tracked |
Maturity Level 4 (Managed) - not incorporated in this paper
Maturity level 5 (Optimising) - details not incorporated in this paper
Authors: Jana Dospisil, Monash University, Frankston Campus, Frankston Vic 3199. Email: jdospisi@fcit-f1.fcit.monash.edu.au
Tony Polgar, Australian Programming Centre, IBM Australia, 211 Sturt St, South Melbourne Vic 3205. Email: tpolgar@sydvm1.vnet.ibm.com Please cite as: Dospisil, J. and Polgar, T. (1994). Application of software process assessment to hypermedia development environment. In C. McBeath and R. Atkinson (Eds), Proceedings of the Second International Interactive Multimedia Symposium, 121-131. Perth, Western Australia, 23-28 January. Promaco Conventions. http://www.aset.org.au/confs/iims/1994/dg/dospisil.html |