324,417 research outputs found

    Design Patterns in the Teaching of Programming

    Get PDF
    AbstractTeaching algorithmization and programming has been recently going through big changes trying to react to the dynamic development of software industry. Previously used methodical process, development models, or programming languages do not conform to current requirements. The results of the surveys in primary and secondary schools, we can say that the teaching of programming and algorithms are not sufficiently exploited. The aim of this paper is to present practical experience of the author teaching programming and the possibilities of using design patterns in the teaching of programming. According to the performed analyzes the procedures and methodologies of teaching programming shows that Design Patterns are used only marginally. For these reasons, students learn to improper practices that subsequently applied in practical solutions programs. According to the experiments show that the correct use of the teaching of design patterns can improve student performance in programmin

    Categorization of Security Design Patterns

    Get PDF
    Strategies for software development often slight security-related considerations, due to the difficulty of developing realizable requirements, identifying and applying appropriate techniques, and teaching secure design. This work describes a three-part strategy for addressing these concerns. Part 1 provides detailed questions, derived from a two-level characterization of system security based on work by Chung et. al., to elicit precise requirements. Part 2 uses a novel framework for relating this characterization to previously published strategies, or patterns, for secure software development. Included case studies suggest the framework\u27s effectiveness, involving the application of three patterns for secure design (Limited View, Role-Based Access Control, Secure State Machine) to a production system for document management. Part 3 presents teaching modules to introduce patterns into lower-division computer science courses. Five modules, integer over ow, input validation, HTTPS, les access, and SQL injection, are proposed for conveying an aware of security patterns and their value in software development

    Designing Lectures as a Team and Teaching in Pairs

    Full text link
    [EN] A technique that is frequently used in modern software development is the so-called pair programming. The proven idea behind this technique is that innovative work in a highly complex environment can benefit from the synergy between two persons working together with well-defined roles. The transfer of this technique as a metaphor for teaching has repeatedly been reported as a successful teaching strategy called pair teaching. In this paper, we describe our experiences with designing and teaching a complete lecture on software development as a pair. Our contribution is the definition of patterns for role-assignments to both persons. These include patterns for the design of the lecture as well as patterns for the teaching in class itself. Our experience shows that there also exists a couple of anti-patterns namely role distributions that should be avoided. First evaluation results are promising in the sense that the reception of structure and content as well as students' satisfaction increased significantly with the introduction of pair design and pair teaching. http://ocs.editorial.upv.es/index.php/HEAD/HEAD18Zehetmeier, D.; Böttcher, A.; Brüggemann-Klein, A. (2018). Designing Lectures as a Team and Teaching in Pairs. Editorial Universitat Politècnica de València. 873-880. https://doi.org/10.4995/HEAD18.2018.8103OCS87388

    Using an Object-Oriented Approach to Develop a Software Application

    Get PDF
    This paper describes a software development project completed using an object-oriented approach. Because Visual Basic .NET was used to build the Windows-based application, application design patterns were identified that would be beneficial in this development environment. A discussion of which design patterns were selected and how they were implemented using Visual Basic .NET is included, along with descriptions of object-oriented design documents and their role in the project. The paper also provides details about how the project has and will be used to provide teaching examples in software development courses

    IDR : a participatory methodology for interdisciplinary design in technology enhanced learning

    Get PDF
    One of the important themes that emerged from the CAL’07 conference was the failure of technology to bring about the expected disruptive effect to learning and teaching. We identify one of the causes as an inherent weakness in prevalent development methodologies. While the problem of designing technology for learning is irreducibly multi-dimensional, design processes often lack true interdisciplinarity. To address this problem we present IDR, a participatory methodology for interdisciplinary techno-pedagogical design, drawing on the design patterns tradition (Alexander, Silverstein & Ishikawa, 1977) and the design research paradigm (DiSessa & Cobb, 2004). We discuss the iterative development and use of our methodology by a pan-European project team of educational researchers, software developers and teachers. We reflect on our experiences of the participatory nature of pattern design and discuss how, as a distributed team, we developed a set of over 120 design patterns, created using our freely available open source web toolkit. Furthermore, we detail how our methodology is applicable to the wider community through a workshop model, which has been run and iteratively refined at five major international conferences, involving over 200 participants

    Kaleidoscope JEIRP on Learning Patterns for the Design and Deployment of Mathematical Games: Final Report

    Get PDF
    Project deliverable (D40.05.01-F)Over the last few years have witnessed a growing recognition of the educational potential of computer games. However, it is generally agreed that the process of designing and deploying TEL resources generally and games for mathematical learning specifically is a difficult task. The Kaleidoscope project, "Learning patterns for the design and deployment of mathematical games", aims to investigate this problem. We work from the premise that designing and deploying games for mathematical learning requires the assimilation and integration of deep knowledge from diverse domains of expertise including mathematics, games development, software engineering, learning and teaching. We promote the use of a design patterns approach to address this problem. This deliverable reports on the project by presenting both a connected account of the prior deliverables and also a detailed description of the methodology involved in producing those deliverables. In terms of conducting the future work which this report envisages, the setting out of our methodology is seen by us as very significant. The central deliverable includes reference to a large set of learning patterns for use by educators, researchers, practitioners, designers and software developers when designing and deploying TEL-based mathematical games. Our pattern language is suggested as an enabling tool for good practice, by facilitating pattern-specific communication and knowledge sharing between participants. We provide a set of trails as a "way-in" to using the learning pattern language. We report in this methodology how the project has enabled the synergistic collaboration of what started out as two distinct strands: design and deployment, even to the extent that it is now difficult to identify those strands within the processes and deliverables of the project. The tools and outcomes from the project can be found at: http://lp.noe-kaleidoscope.org

    The Pattern Instance Notation: A Simple Hierarchical Visual Notation for the Dynamic Visualization and Comprehension of Software Patterns

    Get PDF
    Design patterns are a common tool for developers and architects to understand and reason about a software system. Visualization techniques for patterns have tended to be either highly theoretical in nature, or based on a structural view of a system’s implementation. The Pattern Instance Notation is a simple visualization technique for design patterns and other abstractions of software engineering suitable for the programmer or designer without a theoretical background. While based on a formal representation of design patterns, using PIN as a tool for comprehension or reasoning requires no formal training or study. PIN is hierarchical in nature, and compactly encapsulates abstractions that may be spread widely across a system in a concise graphical format, while allowing for repeated unveiling of deeper layers of complexity and interaction on demand. It is designed to be used in either a dynamic visualization tool, or as a static representation for documentation and as a teaching aid

    Methodology for the design of a student pattern recognition tool to facilitate the teaching - Learning process through knowledge data discovery (big data)

    Get PDF
    Imagine a platform in which the teacher can access to identify patterns in the learning styles of students attached to their course, and in turn this will allow you to know which pedagogical techniques to use in the teaching process - learning to increase the probability of success in your classroom?. What if this tool could be used by students to identify the teacher that best suits their learning style?. Yes, was the tool able to improve its prediction regarding academic performance as time passes? It is obvious that this would require specialized software in the handling of large data. This research-development aims to answer these questions, proposing a design methodology of a student pattern recognition tool to facilitate the teaching-learning process through Knowledge Data Discovery (Big Data). After an extensive document review and validation of experts in various areas of knowledge, the methodology obtained was structured in four phases: identification of patterns, analysis of the teaching-learning process, Knowledge Data Discovery and Development, implementation and validation of software

    Design of Learning Media with Visual Communication Design Methodology

    Get PDF
    Abstract: This paper is the result of research entitled 'Designing Learning Media Based on Information Technology' which aims to design / create prototype multimedia instructional media software, where the product is finally recorded in DVD disc with certain protection system. The methodology applied in the research is a 'design research methodology' covering three stages: analysis, synthesis, and evaluation. In the analysis process, identification and analysis of the story board of each section of teaching materials to adjust the learning objectives, as well as identification of key factors related to the media production techniques. In the synthesis process, organizing and compiling the database (interactive programming), as well as improvements according to recommendation/input from evaluation result, to produce software system with security system. Evaluation is done by trial and product verification based on problem identification and learning objectives. The benefit of this research is to make it easier for teachers in universities in the learning process of the subjects that are managed, and can also be used by the parties who need it. Furthermore, the systems, methods, and patterns that have been generated can be expanded-apply to other courses. Keywords: design, visual communication design, instructional media, teaching materials
    • …
    corecore