This section of this paper will consist of a brief overview of several software design methodologies. Each methodology will be described including its author(s), origin, purpose, and attributes. The next section of this paper will describe the process
of selecting and classifying the attributes of each methodology.
The Star Life Cycle Methodology
The first methodology described is the Star Life Cycle methodology. The authors of this methodological approach are Hix and Hartson (1993). This approach focuses on the life cycle of a design project. It encourages iteration and evaluation at all stag
es. In fact, a graphical representation of the approach has evaluation at the center with each of the other stages surrounding it. This has the appearance of a star and thus it is so named. The stages surrounding evaluation are task analysis/functional
analysis, requirements specification, conceptual design/formal design, prototyping, and implementation.
This approach also emphasizes the following activities:
The next design methodology has no formal name. In fact, the methodology itself is very informal. The author of the methodology is Gould (1995). In his approach, design occurs in four phases: 1.) A gearing-up phase, 2.) An initial design phase, 3.) A
n iterative development phase, and 4.) A system installation phase (Gould, 1995).
One of the main focuses of this approach is usability. Gould takes a broad view of usability and he identifies components that make a system usable. In addition, he provides checklists that can be used in planning and carrying out a project. Although
he emphasizes that the checklists are not intended to be used like a cookbook. Each checklist item is not appropriate for each design project. Which checklist items to use and how to use them is left up to the designer (Baecker, et al., 1995).
Some of the checklist items include: talk with users, visit customer locations, simulations, early prototyping, try-to-destroy-it contests, follow-up studies, and consider all aspects of usability in the initial design.
Xerox Systems Development Division Methodology
One of the early design methodologies was developed by the Systems Development Division of Xerox in 1976. Originally, the authors were asked to develop an interface, but instead they developed a methodology which could be followed by designers.
The methodology included four phases, 1.) Analyze what tasks the user will want to do and the steps they go through to accomplish the tasks, 2.) Design an intended user's model in terms of which tasks may be cast, 3.) Design a command language to make t
hat model work, and 4.) Design an information display to reflect the operations of the system in terms of the conceptual model (Baecker, et al., 1995, p. 595).
This methodology was used by the designers of the Xerox Star software interface. This approach to design has an early and continual focus on the user. In order for this to happen, the methodology focuses on keeping the design simple, consistent, and
clear enough for users to grasp. Even though it has four specific phases, the methodology is represented informally. In other words, the methodology is not systematic and lock-step in nature.
Rubinstein and Hersh's Methodology
Rubinstein and Hersh (1984) present an approach to software design that includes 93 design principles. This description will not focus on these principles, but on the five successive stages that make up their software design methodology. Within each s
tage they focus on an iterative process. The stages are formal and successive in nature. The five stages are: 1.) Information collection,
2.) Design, 3.) Implementation, 4.) Evaluation, and 5.) Deployment (Rubinstein and Hersh, 1
984).
The key elements of the stages include: 1.) A task analysis of the activities done by users in their environment, 2.) A "conceptual model" which users see and understand, 3.) A "use model" describing how the system is to be used, 4.) Design and implemen
tation of a prototype, 5.) Formal and informal testing of the system, and 5.) Evaluation of the reactions of the users (Baecker, et al., 1995).
Dick and Carey's Systematic Design
Dick and Carey (1985) have developed a design methodology that focuses on the development of instructional products. However, it is applicable to the design of instructional and other types of software. Their methodology is very formal and systematic
in nature. It includes nine phases which are lock-step, but the process is also iterative.
The ten phases include: 1.) Identify instructional goal(s), 2.) Conduct instructional analysis,
3.) Identify entry behaviors and characteristics, 4.) Write performance objectives, 5.) Develop criterion-referenced test items, 6.) Develop inst
ructional strategy, 7.) Develop and select instructional materials, 8.) Design and conduct formative evaluation, and 9.) Design and conduct summative evaluation (Dick and Carey, 1985).
Each of the stages are intended to be followed in order, but as each stage is completed, previous stages should be revisited and revised if necessary. Some of the stages focus on the user, but the emphasis is not as great as other design methodologies.
Lifecycle for Interactive Systems Development Methodology
Shneiderman (1992) describes an eight stage design methodology called the "lifecycle for interactive systems development." This methodology is iterative in nature and has a heavy focus on the user and usability. It also focuses on reliability, availab
ility, security, integrity, standardization, portability, integration, timeliness, and affordability. The approach is very formal, elaborate, and detailed. Testing is required in every stage of the methodology (Baecker, et al., 1995).
The eight stages of the methodology are: 1.) Collect information, 2.) Define requirements, 3.) Design syntax and support facilities, 4.) Specify physical devices, 5.) Develop software, 6.) Integrate system and disseminate to users, 7.) Nurture th
e user community, and 8.) Prepare evolutionary plan (Shneiderman, 1992).
Rapid Prototyping Methodology
Tripp and Bichelmeyer (1989) proposed a software design methodology called "rapid prototyping" to be used in instructional design. Actually, the methodology has previously been used successfully in software engineering. The basis of rapid prototyping
is that the stages of the methodology do not occur in a linear fashion, but rather simultaneously. Design, development, and testing occur as the user tests the software and problems are identified and fixed. The process occurs over and over until some m
inimal level of errors are found by the user. The process is very iterative and has heavy focus on the user at all stages.
Tripp and Bichelmeyer (1989) have developed a methodology that has the following stages:
1.) Assess needs and analyze content, 2.) Set objectives, 3.) Construct prototype, 4.) Utilize prototype, and 5.) Install and maintain system.
The following advantages of rapid prototyping are mentioned: 1.) Active user participation, 2.) User requirements are immediately implemented, 3.) Early detection of errors, and 4.) An accelerated development cycle (Tripp and Bichelmeyer, 1989).
Usability Engineering Lifecycle Methodology
Nielsen (1993) has developed a software design methodology called the "usability engineering lifecycle." In this methodology, there is a heavy focus on the user and many forms of usability testing. The form of usability testing utilized depends on the
design project's circumstances and the stage of the design. The methodology is presented in eleven stages and is systematic and iterative in nature.
The eleven stages are as follows: 1.) Know the user, 2.) Competitive analysis, 3.) Setting usability goals, 4.) Parallel design, 5.) Participatory design, 6.) Coordinated design of the total interface,
7.) Apply guidelines and heuristic analysis, 8.
) Prototyping, 9.) Empirical testing, 10.) Iterative design, and 11.) Collect feedback from field use (Nielsen, 1993).
Task-Centered Design Process Methodology
Lewis and Rieman (1993) created a design methodology called the "task-centered design process." This methodology (as the title indicates) has a focus on the tasks of the users of the software. Within this methodology, the authors suggest that designer
s work within existing interface frameworks, incorporate existing applications within their solutions, and copy interaction techniques from other systems (Baecker, et al., 1995). Obviously, these suggestions have possible legal ramifications. The intere
sting part of their methodology is the idea of not "recreating the wheel" for each software design. The sharing of frameworks between designs is very intriguing and can be seen to some degree in designs on the World Wide Web.
Lewis and Rieman (1993) describe eleven stages to their methodology. They are: 1.) Figure out who's going to use the system to do what, 2.) Choose representation tasks for task-centered design, 3.) Plagiarize, 4.) Rough out a design, 5.) Think
about it, 6.) Create a mock-up or prototype,
7.) Test it with users, 8.) Iterate, 9.) Build it, 10.) Track it, and 11.) Change it.
Go to the top of this document
Return to the First Page of this Paper
Send mail to mcorry@gwu.edu
Last Updated on November 10, 1997