IIMS 94 contents
[ IIMS 94 contents ]

Application of software process assessment to hypermedia development environment

Jana Dospisil
Monash University, Victoria
Tony Polgar
APC IBM, Victoria
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.

Technology in teaching: How we see it

Traditionally there has been relatively little interaction possible between lecturer and student in the predominantly lecture and tutorial approach. Two factors have been contributed to this: We might describe the situation as having a simplex communication channel between lecturer and students. The demand for greater student interaction can be approached m at least two ways: the lecturer will increase the number of contact hours, or suitable courseware will be developed using the most recent multimedia technology. If we pursue the latter approach, the key question is how to manage the process of the development of an effective courseware in a university environment. We perceive that the two problems must be attacked - the courseware must be able to progress in the same pace as the technology evolves, and objective assessment methods developed to assess the quality in teaching[1].

Technology in higher education institutions

Technology based learning is one of the "hottest" disciplines not only in the educational research but also in the computer science research. Computers and electronic networks are becoming an inseparable portion of our educational systems. The main components of the enabling technology has its roots in distributed computing. In higher education institutions, distributed computing was applied and gained a wide acceptance predominantly in computer oriented disciplines and in the Computer Science departments with well established research, development facilities and interests. The major progress so far can be observed at MIT (Project ATHENA, Champine, 1990), Brown University (project INTERMEDIA, Haan, 1992), and Carnegie Mellon University (Project Andrew, Sherman, 1990; McConnell, 1991).

Technology evolution and interactive courseware

In order to explain the relationship between the technology evolution and the courseware, we would like to use Woody Allen's metaphor: A relationship is like a shark - it has to keep moving forward to survive. What we have here on our hands is a dead shark. Woody Allen is talking about relationship between people. This metaphor can be applied in the educational process to the relationship between the teaching process and the new technology. Many universities use advanced computer technologies to increase students' chances to reach the information. our research indicates that only a few US universities use the most recent technology in education successfully. In many others, the deployment of the recent technology stagnates and the relationship between the student's improved access to the information and computer power is no longer alive - we have a dead shark on our hands.

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.

Key characteristics of the development process

Multimedia is more than a system which caters for multiple media sources. It is a system which enables combining of diverse media in a coherent system. A key element of this activity is interactivity (Waterworth, 1991). Hypermedia provide a mechanism to store and retrieve unstructured, related information in a meaningful way (Mahapatra, 1992). Hypermedia is an information handling model in which separate units (objects) of information are linked together in a structured network (Lundeberg, 1991). The abstraction levels of multimedia objects are radically different from those associated with "static" objects. As a corollary, the number of attributes of multimedia objects is higher, more diverse, and dynamic.

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).

Multimedia development environment

At present, multimedia development environment can be seen as an unintegrated collaboration of a number of distinct production categories. Each of these categories requires specific production skills and tools. The list below is based on (Luther, 1992) and includes: audio production and post production, video production and post production, computer programming and design of software systems, artistic design, graphics design, script writing, image processing, human-computer interaction design, and, multimedia and hypermedia architecture.

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:

  1. Capabilities of the authoring tool feature the following:
  2. Hardware considerations:
  3. The design and the production teams include people with diverse skills needed to produce quality software and assets: information specialists, content specialists, technologists. The means of communication among team members is predominantly natural language.

  4. The prototyping life cycle and the object oriented design process are applied in addition to the evaluation during active use. The evaluation process focuses mainly on is the assessment of the useability of the product.
The development environment defined here is not fully supported by any currently available commercial authoring tools. Therefore, in this document we also note some of the desirable features of the authoring tools and identify them as potential threat to the quality. The detail discussion is out of scope of this paper.

About maturity model

Software process capability describes the range of expected results that can be achieved by applying a given software process. The software process capability of an organisations provides a means of predicting outcomes of the next project the organisation undertakes. Software process maturity is the extent to which a specific process is explicitly defined, managed, measured, and effective (Paulk, 1993). As an organisation gains in software process maturity, it builds an infrastructure and thus institutionalises a given software process. The Capability Maturity Model (CMM) for Software provides organisations with guidance on how to gain control over their processes for developing AM maintaining software and how to contribute to the evolution their software engineering practices.

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.

Maturity model applied

Based on Paulk's paper (Paulk, 1993), we designed tables containing key process areas, goals and activities for different levels of maturity (see Appendix 1). In these tables, the "Activities" column does not correspond to the "Goals" column. The purpose of the tables is to provide a basis for a comparison of the development techniques applicable to the multimedia and hypermedia development process as compared to the single media development environment.

Software process model considerations

Barry Boehm stated that the "primary functions of a software process model are to determine the order of the stages involved in software development and evolution and to establish the transition criteria for processing one stage to the next" (Boehm, 1988). Several process models exist and have been used explicitly or implicitly in software projects. CMM also places a considerable emphasis on the selection of an appropriate life cycle for the process. At present, selection of the appropriate life cycle even for commercial systems ranges from conservative to radical approaches (Yourdon, 1992). The main representative of the conservative approach is the classic waterfall model in which the sequential order of activities is assumed. There is always a clear demarcation between the end of the one stage and beginning of the next stage. With the radical approach (spiral, incremental, explorative method), all activities can theoretically take place in parallel and the life cycle is shorter.

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.

The role of prototype

prototyping has informally its roots associated with the very beginning of computer programs development. With an increasing complexity of the computer systems, the waterfall life cycle achieved dominance in the software industry during the 1960s and 1970s. As pointed out by Blum (Blum, 1992), there is a danger that design may reflect what we know how to build rather than what the user needs. This assertion is consistent with the one of Yourdon (Yourdon, 1992) which suggests that the precision of the requirements specification and selection of the project life cycle is in direct relation to a manager's previous experience with a given class of application. Corollary here is that unless there is considerable experience with a particular class of system, invalid requirements may result. We believe that in the hypermedia development project the prototyping model offers a consistent method to: With multimedia and hypermedia projects, it is necessary to contrast traditional software engineering which is goal directed and exploratory software development where goals are poorly defined. As discussed in Blum (1992), software engineering is best suited to exploitation of our previous experience. At present, in multimedia and hypermedia courseware development, a restricted experience in designing hypermedia projects must be assumed. Consequently, such projects will become an exceptionally ill-structured activity. The prototyping environment offers an opportunity to explore the problem and thus reduce the degree of uncertainty of some aspects of a larger problem.

Software development process - hypermedia scenario

In object oriented methodology we assume for the multimedia courseware development, the. prototyping is actually turned into development of an early version of objects. These are then reviewed with and against the original and new user requirements in order to achieve a better "fit" to user expectations. Thus object oriented methodology not only supports explorative programming but it also contributes to a better quality of the resulting product.

Figure 1

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.

  1. handling of a methodology paradigm shift from the classical approaches either object oriented or information engineering to creative type of design which is capable of seamless incorporation and management of an original artwork within software engineering environment, and

  2. formulation of the notation for requirements description.
We, assert that due to a lack of integration and reasons stated above, such a framework should be built on a prototype experience as an exploratory software development environment. The actual implementation then can be developed using different technology (for example a toolkit) to meet useability criteria, performance in particular (Gould, 1990). Since some activities may start in parallel, the more radical approach will be applied.

Requirements management

The purpose of the Requirements Management is to establish a common understanding between the customer and the software project of the customer's requirements that will be addresses by the software project (Paulk, 1993). The goals include the baseline requirements establishment and documentation. The consistency between plans and system requirements is maintained. Allocated requirements are reviewed by the software engineering group and their feasibility, consistency, and testability is determined. Changes to the allocated requirements are reviewed and incorporated into the software project. The activities associated with the allocated requirements are reviewed on a periodical and event driven basis (see Appendix 1).

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.

Requirements collection

A requirements definition is a statement typically in a natural language of what user services the system is expected to provide (Sommerville, 1992). This should be stated in a way that is understandable to everybody involved in the project.

In order to distinguish between what system is going to do and how (Blum, 1992), the two categories of requirements are introduced:

A software system is a set of mechanism for performing certain actions on certain data. The traditional design methods use 'action' or "process" as primary criterion for describing the highest level decomposition structure. In object oriented design, the system structure is based on "data" or "objects'. This implies that the functional requirements will be determined with a view of future class entities and attributes.

Functional requirements: Interactivity and navigation

The main ingredient of multimedia and hypermedia systems is in their interactivity, which means that the user is controlling the object behaviour (Schank, 1993). The point is. that the interactivity requires software control capabilities. Therefore we can derive an important implication: we must create an interactive environment which will be controlled by the user and the user will be comfortable with (Haan, 1992). Unfortunately, this description of interactivity, common in the hypermedia design and development process, precludes any measures to be applied to. In addition, due to a subjectivity of this requirement ' it may be very difficult to document, review, and test the interactivity of the system. The implication is that the most important requirement - the level of the system interactivity - cannot be unambiguously defined and it will become the subject of a given authoring tool capabilities. The ultimate measure then is given by the user satisfaction with the system, typically measured by the active use.

Authoring tool's capability to model interactivity

The authoring tools currently available (for example AVC or MediaScript for OS/2) lack the software maturity properties and they provide only limited interactivity features. For instance, the lowest level of interactivity is typically perceived as the usage of the 'stop' points (sometimes termed "one button" interface) in which the user is required to select the next topic (branching). On the other hand, the high level of interactivity may be perceived as capability to browse and annotate any media object and manipulate embedded objects (providing the user/author possesses a required authorisation level).

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).

Authoring tools - navigational model

Each presentation segment in the hypermedia system should show interrelationship with the other segments in the structure. Too few links typically indicate that the structure is inappropriate, too many links may be destructive to the learner (Schneiderman, 1992). Considering the groups of different learners with different level of experience with computers, this requirement will remain subjective and will be difficult to specify no matter which specification notation is used. Furthermore, the efficient links management is still in the research stage (Palay, 1992; Schneiderman, 1992).

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.

Skills diversity implications - missing skills

Multimedia development is characterised not only by its media diversity but also by the extreme diversity in skills, activity domains (Barker, 1989), and development and production processes. Based on some authors (Luther, 1992; Bunzel, 1992) and also practitioners, we argue that the skill requirements in the implementation phase do not cover the entire range of the development process activities. We believe that the large multimedia projects, in addition to production skills, require skills in the full classical software engineering process, for example: planner/architect, functional designer, database designer and administrator to manage the access to and storage of assets, user interface designer to create appropriate user interface, programmers, testers, technical writer to provide documentation, and product packaging person.

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.

Requirements specification notation

Specification is a description or definition of a task. For a specification to be useful in the software development, the statements must be unambiguous, so that all readers of the specification can reach exactly the same understanding of the task. Formal specification languages and mathematical notations, in which abstract concepts can be unambiguously expressed, meet the requirement of unambiguity. The formal specification as suggested by Hall (Hall, 1990) proved to be beneficial to some classes of sequential system. Special purpose languages, finite state machines, decision tables, object and entity relationship diagrams, and Petri nets were also designed to express software requirements.

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.

Non-functional requirements implications

Among non-functional system requirements an constraints placed on the system service. Typically, these requirements are the composition of product, process, and external requirements. In multimedia process development, product and process constraints are similar to them defined for classical development environments. The external requirements include inter-operability issues, requirements derived from current legislation, and budgetary constraints. Non-functional requirements must be testable and therefore expressed quantitatively. It is common for constraints in this category to be left implicit on the understanding that project managers "know how". Misunderstanding frequently causes problems after development is completed (Blum, 1992; Sommerville, 1992).

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.

Requirements validation

System requirements must be validated in order to prevent errors to propagate through the system (see Appendix 1 - review of requirements activities). This process involves four separate steps (Sommerville, 1992):
  1. Needs of the user must be shown to be valid,
  2. he requirements should be consistent,
  3. The requirements should be complete, and
  4. The requirements should be realistic.
In hypermedia or multimedia system, the validation of the user requirements will require different methodology. There are at least two reasons why we cannot conclusively say that the established set of requirements meets users' expectations is an unrealistic, no matter if an abstract or prototyping approach is adopted.

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.

Organisation maturity level

Seemingly, the object oriented design strategy when applied to a complex hypermedia project should guarantee expected results - high quality of the finished product. But the overall process of the hypermedia or multimedia courseware design and development is also affected by another key factors - organisational maturity. Humphrey (1990) defined the process model which can be used as a method for assessing organisations and determining their capability to utilise more progressive methodologies and recent technologies. Hypermedia is a very recent technology and to introduce this technology at a lower level of maturity[7] may result in an unsuccessful implementation. We believe that the success is determined by three key processes at the level 3 Defined (see Appendix I):
  1. Training program. Hypermedia and multimedia as being a new technology requires the designer's familiarity with a number of aspects such as compression technologies, assets quality, DVI technology, programming with a variety of tool kits and authoring tools, and psychology.

  2. Integrated software management. So far, the tools used to handle components of the hypermedia system contain authoring tools, specific sound and video editors, databases, blocks of programs, reusable libraries and many others. The integration of tools as well as management functions applied to the system are at present unsupported and therefore difficult to perform.

  3. Intergroup coordination and communication. Diversity of groups of the system builders naturally represents deep communication problems. Consequently, in order to ensure that the user requirements are met, special attention must be payed to the intergroup coordination. A detailed discussion of this topic is out of scope of this paper.
The process of software integration is crucial point in managing any complex development process. Similar situation as with the multimedia development processes can be observed in the development of complex applications with sophisticated Graphical User Interfaces (GUI) within a CASE environment. The CASE technology enables the designer to architect business models, perform entity life cycle and process logic analysis. In the later stage, simplified presentation logic is "glued" to the system. The interface between business process logic and presentation logic is not well understood which makes the integration between these two processes difficult.

Concluding remarks

Several of the aspects discussed in this paper are pertinent to any complex software development, the object oriented design in particular. Hypermedia and multimedia based systems introduce a greater degree of uncertainty than any other commercially developed systems due to their immaturity in software and hardware as well as due to the some peculiarities in the design. Successful management of the multimedia development process depends on the following key aspects:

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.

End Notes

  1. This problem constitutes a separate discussion topic.
  2. Assets are all non-textual objects (video clips, graphics, sound)
  3. Other problems associated with the design, analysis and coding identified during our research are out of scope of this paper
  4. In Windows and Presentation Manager
  5. DDE opens the second window for editing.
  6. This is possible only with Andrew Toolkit (Palay, 1988).
  7. The university is considered here to be the "research cradle" rather than an established software developer.


Barker, P. (1989). Basic principles of human-computer interface design. Hutchinson Education.

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.

Appendix 1

The following tables contain only a short extract of the Maturity Level tables since the full length tables exceed the scope of this paper.

Maturity Level 2 (Repeatable):
Key process area Goals Activities
Requirement managementBaseline requirements are establishedReview requirements
Plans are consistent with system requirementsRequirements form basis for plans
Changes to requirements are incorporated in plans

Key process area Goals Activities
Configuration managementConfiguration management activities are plannedA SCM plan is prepared and approved
Work items and their changes are controlledChange items are tracked
Developers are informed of all changesStandard reports document SCM activities

Maturity Level 3 (Defined):
Key process area Goals Activities
Process focusDevelopment activities are coordinated across organisationThe software process is assessed periodically
Strengths and weaknesses are identifiedSoftware process database is used on organisation level
Development and improvement activities are plannedThe developers are aware of the process development and improvement

Key process area Goals Activities
Process definitionA standard software process is developedStandard process is developed, maintained, and documented
Process is reviewed and publishedThe 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 programTraining activities are plannedTraining plan is developed and revised
Skills needed for performing software management and technical roles are developedTraining courses are developed
Records of training are maintained

Key process area Goals Activities
Integrated software managementThe project's defined software process is a tailored version of the standard processThe project's defined process is developed by tailoring the standard process
The project is planned according to project's processThe 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 engineeringThe SE tasks are defined, integrated and performedThe SE methods and tools are integrated
The work items are kept consistent with each otherThe 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 coordinationThe customer requirements are agreed to by all groupsThe SE group participate with customers to establish the requirements
The engineering groups identify, track and resolve intergroup issuesA 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

[ IIMS 94 contents ] [ IIMS Main ] [ ASET home ]
This URL: http://www.aset.org.au/confs/iims/1994/dg/dospisil.html
© 1994 Promaco Conventions. Reproduced by permission. Last revision: 4 Feb 2004. Editor: Roger Atkinson
Previous URL 11 May 2000 to 30 Sep 2002: http://cleo.murdoch.edu.au/gen/aset/confs/iims/94/dg/dospisil.html