An Object-Oriented Approach

Total Page:16

File Type:pdf, Size:1020Kb

An Object-Oriented Approach INSTRUCTIONAL WEB SITES DESIGN: AN OBJECT-ORIENTED APPROACH. A Dissertation Presented by THOMAS ZSCHOCKE Submitted to the Graduate School of the University of Massachusetts Amherst in partial fulfillment of the requirements for the degree of DOCTOR OF EDUCATION May 2002 Center for International Education Department of Educational Policy, Research and Administration School of Education © Copyright by Thomas Zschocke 2002 All Rights Reserved INSTRUCTIONAL WEB SITES DESIGN: AN OBJECT-ORIENTED APPROACH. A Dissertation Presented by THOMAS ZSCHOCKE Approved as to style and content by: Robert J. Miltz, Chair George E. Forman, Member Miguel Romero, Member D. Nico Spinelli, Member Bailey W. Jackson, Dean School of Education ABSTRACT INSTRUCTIONAL WEB SITES DESIGN: AN OBJECT-ORIENTED APPROACH. MAY 2002 THOMAS ZSCHOCKE, DIPLOM-SOZIALPÄDAGOGE, UNIVERSITY OF APPLIED SCIENCES COLOGNE, GERMANY M.A., UNIVERSITY OF COLOGNE, GERMANY Ed.D. UNIVERSITY OF MASSACHUSETTS AMHERST Directed by: Professor Robert F. Miltz The great variety of authoring activities involved in the development of Web- based learning environments requires a more comprehensive integration of principles and strategies not only from instructional design, but also from other disciplines such as human-computer interaction and software engineering. The present dissertation addresses this issue by proposing an object-oriented instructional design (OOID) model based on Tennyson's fourth generation instructional systems development (ISD4) model. It incorporates object-oriented analysis and design methods from human-computer interaction (HCI) and software engineering into a single framework for Internet use in education. Introducing object orientation into the instructional design of distributed hypermedia learning environments allows for an enhanced utilization of so-called learning objects that can be used, re-used or referenced during technology-mediated instruction. In addition, by applying the Unified Modeling Language (UML), a iv modeling notation tool is available to instructional designers that helps them to visually communicate design specifications using a widely established standard. This developmental research study is based on an extensive document analysis of resources from a variety of disciplines involved in the instructional Web site development process. The author identifies a set of authoring activities from ISD as well as HCI and software engineering that play a major role in instructional Web sites development. These authoring activities have been specified based on the object-oriented paradigm and visualized using UML. The author provides an example from a higher education setting about how the OOID model can be implemented in the design of Web-based instruction. This study contributes to the ongoing research into the design of Web-based instruction. The results will be of interest to educators, instructional designers, and other e-learning specialists who want to implement learning objects and improve their development of Web-based instruction by incorporating object orientation as the primary development paradigm and UML as the principle modeling notation tool. This research also provides suggestions on how to develop instructional Web sites for international use. v TABLE OF CONTENTS Page ABSTRACT..........................................................................................................IV LIST OF TABLES ................................................................................................ XI LIST OF FIGURES ............................................................................................. XII CHAPTER I. INTRODUCTION: LEARNING OBJECTS..................................................... 1 1. Basic assumptions......................................................................................... 1 2. Educational software engineering ............................................................... 11 3. Knowledge objects...................................................................................... 13 4. Examples of learning object strategies ........................................................ 18 5. Learning objects ......................................................................................... 25 6. Instructional technology and learning......................................................... 36 7. Research outline......................................................................................... 43 II. OBJECT ORIENTATION ............................................................................. 46 1. Background................................................................................................ 46 2. The software crisis...................................................................................... 47 3. Historical review ........................................................................................ 50 4. Object-oriented concepts and elements....................................................... 52 4.1 Fundamental concepts......................................................................... 54 4.1.1 Objects ....................................................................................... 54 4.1.2 Classes........................................................................................ 57 4.1.3 Attributes ................................................................................... 59 4.1.4 Methods ..................................................................................... 59 4.2 Major elements ................................................................................... 61 4.2.1 Abstraction................................................................................. 61 4.2.2 Inheritance hierarchy .................................................................. 63 4.2.3 Encapsulation............................................................................. 66 4.2.4 Modularity ................................................................................. 66 vi 4.3 Minor elements................................................................................... 67 4.3.1 Typing........................................................................................ 67 4.3.2 Concurrency............................................................................... 68 4.3.3 Persistence .................................................................................. 69 5. The object-oriented development process ................................................... 69 5.1 Basic characteristics ............................................................................ 69 5.2 Life-cycle models................................................................................. 72 5.3 Phases of the object-oriented life cycle ................................................ 76 5.3.1 Object-oriented analysis ............................................................. 77 5.3.2 Object-oriented design................................................................ 79 5.3.3 Object-oriented programming .................................................... 80 5.3.4 Object-oriented testing ............................................................... 82 6. The Unified Modeling Language (UML)..................................................... 83 6.1 Overview ............................................................................................ 83 6.2 The fundamentals of UML .................................................................. 88 6.2.1 Use case diagram ........................................................................ 90 6.2.2 Class diagram ............................................................................. 91 6.2.3 Behavioral diagrams ................................................................... 92 6.2.4 Implementation diagrams ........................................................... 93 6.2.5 Model management .................................................................... 93 III. RESEARCH METHODOLOGY.................................................................... 95 1. Characteristics of a model .......................................................................... 95 2. Developmental research............................................................................ 100 3. A task analysis of instructional design ...................................................... 104 3.1 Knowledge classification for task analysis ......................................... 105 3.2 Task analysis in human-computer interaction ................................... 112 3.3 Task analysis in object-oriented development ................................... 120 3.4 Task analysis process ........................................................................ 125 4. Knowledge elicitation and task analysis techniques .................................. 127 4.1 CommonKADS................................................................................. 128 4.1.1 The CommonKADS model suite............................................... 130 4.1.2 Knowledge-engineering methodology ....................................... 135 4.1.3 Application of CommonKADS in research study ...................... 136 vii 4.2 Knowledge elicitation techniques ...................................................... 137 4.2.1 Document analysis.................................................................... 138 4.2.2 Facet analysis............................................................................ 140 4.3 Additional
Recommended publications
  • Universal Instructional Design Implementation Guide Credits
    The Universal Instructional Design Implementation Guide Credits Written by: Jaellayna Palmer Project Manager and Instructional Designer Universal Instructional Design Project Teaching Support Services University of Guelph Aldo Caputo Manager Learning Technology & Courseware innovation Teaching Support Services University of Guelph Designed by: Doug Schaefer Graphic Designer Teaching Support Services University of Guelph Funded by: The Learning Opportunities Task Force Ministry of Training, Colleges and Universities, Government of Ontario 2002-03 Acknowledgements Teaching Support Services would like to acknowledge and offer thanks to the following contributors to this project: • The Learning Opportunities Task Force, Ministry of Training, Colleges and Universities, Government of Ontario, which provided funding during 2002-03. • Linda Yuval, Research Assistant for the UID project, and her advisor, Professor Karen Korabik, Department of Psychology, University of Guelph. • Personnel within the Centre for Students with Disabilities, and the Learning Commons, University of Guelph. • Professors and TAs who participated in our course projects. • Students who volunteered to participate in the UID project and who provided their feedback. Universal Instructional Design Implementation Guide ii Table of Contents Universal Instructional Design ......................................................................................................................1 Universal Instructional Design Principles (Poster) ........................................................................................4
    [Show full text]
  • 1 More on Type Checking Type Checking Done at Compile Time Is
    More on Type Checking Type Checking done at compile time is said to be static type checking. Type Checking done at run time is said to be dynamic type checking. Dynamic type checking is usually performed immediately before the execution of a particular operation. Dynamic type checking is usually implemented by storing a type tag in each data object that indicates the data type of the object. Dynamic type checking languages include SNOBOL4, LISP, APL, PERL, Visual BASIC, Ruby, and Python. Dynamic type checking is more often used in interpreted languages, whereas static type checking is used in compiled languages. Static type checking languages include C, Java, ML, FORTRAN, PL/I and Haskell. Static and Dynamic Type Checking The choice between static and dynamic typing requires some trade-offs. Many programmers strongly favor one over the other; some to the point of considering languages following the disfavored system to be unusable or crippled. Static typing finds type errors reliably and at compile time. This should increase the reliability of delivered program. However, programmers disagree over how common type errors are, and thus what proportion of those bugs which are written would be caught by static typing. Static typing advocates believe programs are more reliable when they have been type-checked, while dynamic typing advocates point to distributed code that has proven reliable and to small bug databases. The value of static typing, then, presumably increases as the strength of the type system is inc reased. Advocates of languages such as ML and Haskell have suggested that almost all bugs can be considered type errors, if the types used in a program are sufficiently well declared by the programmer or inferred by the compiler.
    [Show full text]
  • Designing for Online Interaction: Scaffolded and Collaborative Interventions in a Graduate-Level Blended Course
    The Call Triangle: student, teacher and institution Designing for online interaction: Scaffolded and collaborative interventions in a graduate-level blended course Claudia Álvarez and Liliana Cuesta * Universidad de La Sabana,Campus Universitario Puente del Común,Chía,Colombia Abstract This article examines types of interaction from the perspective of intervening agents and interaction outcomes. We argue that the strategic combination of these types of interaction with certain core features (such as dosified input, attainable goal-setting, personalization and collaboration) contribute to creating a more effective relationship between instructional design, use and the interactional purposes of learning activities. The paper also offers instructors and course designers various considerations regarding the pedagogical nature of learning activities and the actions that both learners and instructors can carry out to optimize the online educational experience. Consideration for emergent trends in research on related areas are also presented. Keywords : online interaction; instructional design; course design; e-learning; scaffolding 1. Introduction In the context of online education, constructs such as instructional design, implementation of learning activities, scaffolding, assessment, resource selection and interaction among agents are seen as essential attributes of online courses and/or modules (Cuesta, 2010a). In educational scenarios, the interrelation of all these components has a direct impact on the learning performance of the students
    [Show full text]
  • Concepts in Programming Languages Supervision 1 – 18/19 V1 Supervisor: Joe Isaacs (Josi2)
    Concepts in Programming Languages Supervision 1 { 18/19 v1 Supervisor: Joe Isaacs (josi2). All work should be submitted in PDF form 24 hours before the supervision to the email [email protected], ideally written in LATEX. If you have any questions on the course please include these at the top of the supervision work and we can talk about them in the supervision. Note: there is a revision guide http://www.cl.cam.ac.uk/teaching/1718/ConceptsPL/RG. pdf for this course. 1. What is the different between a static and dynamic typing. Give with justification which languages and static or dynamic. 2. What is the different between strong and weak typing. 3. What is type safety. How are type safety and type soundness distinct? 4. What type system does LISP have what are the basic types?, where have you seen a similar type system before. 5. What is a abstract machine, why are they useful? Where have you seen or used them before? 6. Name at least six different function calling schemes and which languages use each of them. 7. Give an overview of block-structured languages, include which ideas were first introduced in a programming language and how they influenced each other. Making sure to list the main characteristics of each language. You should talk about three distinct languages, then for each language make sure to make distinctions between different version of each language. Make a timeline using pen and paper or a diagram tool. 8. Using the type inference algorithm given in the notes (a typing checker with constraints) find the most general type for fn x ) fn y ) y x 9.
    [Show full text]
  • From Perl to Python
    From Perl to Python Fernando Pineda 140.636 Oct. 11, 2017 version 0.1 3. Strong/Weak Dynamic typing The notion of strong and weak typing is a little murky, but I will provide some examples that provide insight most. Strong vs Weak typing To be strongly typed means that the type of data that a variable can hold is fixed and cannot be changed. To be weakly typed means that a variable can hold different types of data, e.g. at one point in the code it might hold an int at another point in the code it might hold a float . Static vs Dynamic typing To be statically typed means that the type of a variable is determined at compile time . Type checking is done by the compiler prior to execution of any code. To be dynamically typed means that the type of variable is determined at run-time. Type checking (if there is any) is done when the statement is executed. C is a strongly and statically language. float x; int y; # you can define your own types with the typedef statement typedef mytype int; mytype z; typedef struct Books { int book_id; char book_name[256] } Perl is a weakly and dynamically typed language. The type of a variable is set when it's value is first set Type checking is performed at run-time. Here is an example from stackoverflow.com that shows how the type of a variable is set to 'integer' at run-time (hence dynamically typed). $value is subsequently cast back and forth between string and a numeric types (hence weakly typed).
    [Show full text]
  • Project Management in Instructional Design
    PROJECT MANAGEMENT IN INSTRUCTIONAL DESIGN by Shamon A. Allen A dissertation presented to the faculty of The International Institute for Innovative Instruction In partial fulfillment of the requirements for the degree of DOCTOR OF PROFESSIONAL STUDIES in Instructional Design Leadership FRANKLIN UNIVERSTIY Columbus, Ohio December 2020 Joel Gardner, Ph.D., Faculty Mentor and Chair Lewis Chongwony, Ph.D., Committee Member Niccole Hyatt, Ph.D., Committee Member Franklin University This is to certify that the dissertation prepared by Shamon Allen “Project Management in Instructional Design” Has been approved by his committee as satisfactory completion of the dissertation requirements for the degree of Doctor of Professional Studies in Instructional Design Leadership 12/16/2020 Joel Gardner, Ph.D., Committee Chair Niccole Hyatt Niccole Hyatt (Dec 16, 2020 08:25 EST) 12/16/2020 Niccole Hyatt, Ph.D., Committee Member 12/16/2020 Lewis Chongwony, Ph.D., Committee Member Yi Yang Yi Yang (Dec 16, 2020 21:36 EST) 12/16/2020 Yi Yang, Ph.D., Program Chair, DPS 12/17/2020 Wendell Seaborne, Ph.D., Dean, Doctoral Studies ii Copyright Shamon A. Allen 2020 iii ABSTRACT Project Management in Instructional Design by Shamon A. Allen, Doctor of Professional Studies Franklin University, 2020 Major Professor: Dr. Joel L. Gardner Department: International Institute for Innovative Instruction This study surveyed 86 instructional design professionals based on a two-part approach to identify and validate the most critical instructional design project management competencies. First, a systematic review of instructional design project management literature was conducted to identify key project management competencies. Next, a survey instrument was created based on common themes identified during the systematic analysis of qualitative study results on instructional design project management competencies.
    [Show full text]
  • 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
    Case 8:14-bk-13778-ES Doc 116 Filed 06/30/14 Entered 06/30/14 17:37:29 Desc Main Document Page 1 of 425 1 Jeffrey N. Pomerantz (CA Bar No. 143717) John W. Lucas (CA Bar No. 271038) 2 PACHULSKI STANG ZIEHL & JONES LLP 10100 Santa Monica Blvd., Suite 1300 3 Los Angeles, CA 90067-4114 Telephone: 310/277-6910 4 Facsimile: 310/201-0760 E-mail: [email protected] 5 [email protected] 6 Proposed Attorneys for Debtors and Debtors in Possession 7 8 UNITED STATES BANKRUPTCY COURT 9 CENTRAL DISTRICT OF CALIFORNIA 10 SANTA ANA DIVISION 11 In re: Case No.: 8:14-bk-13778 (ES) LLP LLP 12 S.B. Restaurant Co., et al.,1 Chapter 11 ONES J & AW 13 Debtors. Jointly Administered with Case Nos.: CA L , T A 14-13780 (ES); and 14-13781 (ES) IEHL Z NGELES 14 Affects: A OS PROOF OF SERVICE TTORNEYS TANG TANG L A S 15 All Debtors S.B. Restaurant Co. [Relates to Docket No. 106] 16 S.B. Restaurant Co. of Kansas LLC ACHULSKI P S.B. Restaurant Co. of Central Florida, LLC Date: July 18, 2014 17 Time: 10:00 a.m. Debtors. Place: Room 1-154 18 411 West Fourth Street Santa Ana, CA 19 Judge: Honorable Erithe A. Smith 20 21 22 23 24 25 26 27 1The Debtors and the last four digits of each the Debtor’s federal tax identification numbers are S.B Restaurant Co. (3572); S.B. Restaurant Co. of Kansas LLC (3291); and S.B.
    [Show full text]
  • WHAT IS LEARNING EXPERIENCE DESIGN? & Why It Matters PRESENTERS
    WHAT IS LEARNING EXPERIENCE DESIGN? & why it matters PRESENTERS Kristen Hernandez Lydia Treadwell Learning Experience Designer Learning Experience Designer LSU Digital & Continuing Education LSU Digital & Continuing Education [email protected] [email protected] OVERVIEW • What is Learning Experience Design (LXD)? • LXD Development Tools • Empathy mapping • “Pillars” of LXD • LXD Matrix • Application activity LXD=ID+UX Learning Experience Design (LXD) is interdisciplinary approach to developing well-designed learning environments that employ both sound Instructional Design (ID) and User Experience Design (UXD) techniques. LXD=ID+UX1 learning theories alignment maps design models storyboards instructional analysis item analysis Instructional Design LXD=ID+UX2 empathy-mapping prototyping personas iterative design scenarios user testing Learner-Centered Design Empathy map The Four Pillars of Learning Experience INSTRUCTION • approach to the method of instruction, tailored for the context, content, and learner. • creating a meaningful learning experience • address the gaps that exist between the learner and the desired outcome • practice and apply new skills in real-world or authentic contexts CONTENT • appropriate selection of content that supports acquisition of outcomes • outline the necessary knowledge, skills, and resources needed for learners to fulfill those outcomes. • effective arrangement of instructional material including the content flow, chunking, and organization • content structured in a way that makes the most logical and relevant
    [Show full text]
  • Principles of Programming Languages
    David Liu Principles of Programming Languages Lecture Notes for CSC324 (Version 2.1) Department of Computer Science University of Toronto principles of programming languages 3 Many thanks to Alexander Biggs, Peter Chen, Rohan Das, Ozan Erdem, Itai David Hass, Hengwei Guo, Kasra Kyanzadeh, Jasmin Lantos, Jason Mai, Sina Rezaeizadeh, Ian Stewart-Binks, Ivan Topolcic, Anthony Vandikas, Lisa Zhang, and many anonymous students for their helpful comments and error-spotting in earlier versions of these notes. Dan Zingaro made substantial contributions to this version of the notes. Contents Prelude: The Study of Programming Languages 7 Programs and programming languages 7 Models of computation 11 A paradigm shift in you 14 Course overview 15 1 Functional Programming: Theory and Practice 17 The baseline: “universal” built-ins 18 Function expressions 18 Function application 19 Function purity 21 Name bindings 22 Lists and structural recursion 26 Pattern-matching 28 Higher-order functions 35 Programming with abstract syntax trees 42 Undefined programs and evaluation order 44 Lexical closures 50 Summary 56 6 david liu 2 Macros, Objects, and Backtracking 57 Object-oriented programming: a re-introduction 58 Pattern-based macros 61 Objects revisited 74 The problem of self 78 Manipulating control flow I: streams 83 Manipulating control flow II: the ambiguous operator -< 87 Continuations 90 Using continuations in -< 93 Using choices as subexpressions 94 Branching choices 98 Towards declarative programming 101 3 Type systems 109 Describing type systems 110
    [Show full text]
  • Report from Newport
    REPORT FROM NEWPORT Salve ReginaUniversity Magazine Spring 2020 x Tian Quinn ’21 won the “Nature’s Beauty” category in Salve Regina’s “Capture It” photo contest for students studying abroad with “Salar de Uyuni,” taken in Uyuni, Bolivia. Campus News and Notes Stories Matter . 24 The power of storytelling is all in a days’ work for English com- Campus News and Notes . 2 munications alumni Kalene Brennan ’08, Barbi Jo DiMaria ’04 Multicultural Education Week features a visit from Dr. Cornel and Dave Ellis ’04. By Emily Whelan ’20 West, a panel discussion on life as a minority and a vibrant mul- ticultural festival; J. Malcolm Smith is named vice president for A Friendly Competition . 28 The Regan brothers, Daniel ’17 and Nicholas ’20, waste no time in student affairs; a Pell Center lecture on genetic engineering raises getting down to business. questions on ethics; and the annual Governor’s Ball hits a record- By Quentin Warren high fundraising total. An Untold Tale . 30 The secret story of Salve Regina’s role in the recovery of Tom Campus Conversations . 12 Brady’s Super Bowl jerseys. A Capacity for Hope Meet Dr. Steven Rodenborn, dean of undergraduate studies. With Matthias Boxler ’04 (M) Alumni News and Notes Athletics . 14 The Way We Were . 32 Captain’s Corner features Casey Kelly ’21. In Memoriam . 33 The Salve Regina community mourns the loss of beloved alumni, professors and friends. Features Alumni Profiles Nick Giacobbi ’05 embraces commercial real estate at all levels; Back in the Saddle . 16 Gabrielle Corradino ’11 shares her research on marine organisms; Shane Bowes ’21 is the first male equestrian team member.
    [Show full text]
  • CS442 Module 4: Types
    CS442 Module 4: Types University of Waterloo Winter 2021 1 Getting Stuck In Module 2, we studied the λ-calculus as a model for programming. We showed how many of the elements of “real-world” programming languages can be built from λ-expressions. But, because these “real-world” constructs were all modelled as λ-expressions, we can combine them in any way we like without regard for “what makes sense”. When we added semantics, in Module 3, we also added direct (“primitive”) semantic implementations of particular patterns, such as booleans, rather than expressing them directly as λ-expressions. That change introduces a similar problem: what happens when you try to use a primitive in a way that makes no sense? For instance, what happens if we try to add two lists as if they were numbers? Well, let’s work out an example that tries to do that, using the semantics of AOE, plus numbers and lists, from Module 3, and the expression (+ (cons 1 (cons 2 empty)) (cons 3 (cons 4 empty))): • The only semantic rule for + that matches is to reduce the first argument. After several steps, it reduces to [1, 2], so our expression is now (+ [1, 2] (cons 3 (cons 4 empty))). • The rule for + to reduce the first argument no longer matches, because the first argument is not reducible. But, the rule to reduce the second argument doesn’t match, because the first argument is not a number1. No rules match, so we can reduce no further. What happens next? The answer is that nothing happens next! There’s no semantic rule that matches the current state of our program, so we can’t take another step.
    [Show full text]
  • Teaching Sustainable Design Using BIM and Project-Based Energy Simulations
    Educ. Sci. 2012, 2, 136-149; doi:10.3390/educsci2030136 OPEN ACCESS education sciences ISSN 2227-7102 www.mdpi.com/journal/education Case Report Teaching Sustainable Design Using BIM and Project-Based Energy Simulations Zhigang Shen *, Wayne Jensen, Timothy Wentz and Bruce Fischer The Durham School of Architectural Engineering and Construction, The University of Nebraska-Lincoln, 113 NH, Lincoln, NE 68588-0500, USA; E-Mails: [email protected] (W.J.) ; [email protected] (T.W.) ; [email protected] (B.F.) * Author to whom correspondence should be addressed; E-Mail: [email protected]; Tel.: +1-402-472-9470; Fax: +1-402-472-4087. Received: 11 July 2012; in revised form: 4 August 2012/ Accepted: 20 August 2012/ Published: 27 August 2012 Abstract: The cross-disciplinary nature of energy-efficient building design has created many challenges for architecture, engineering and construction instructors. One of the technical challenges in teaching sustainable building design is enabling students to quantitatively understand how different building designs affect a building’s energy performance. Concept based instructional methods fall short in evaluating the impact of different design choices on a buildings’ energy consumption. Building Information Modeling (BIM) with energy performance software provides a feasible tool to evaluate building design parameters. One notable advantage of this tool is its ability to couple 3D visualization of the structure with energy performance analysis without requiring detailed mathematical and thermodynamic calculations. Project-based Learning (PBL) utilizing BIM tools coupled with energy analysis software was incorporated into a senior level undergraduate class. Student perceptions and feedback were analyzed to gauge the effectiveness of these techniques as instructional tools.
    [Show full text]