School Architecture of the Future Supported by Evidence-Based Design and Design Patterns

Trends in education affect schooling, needing incorporation into design concepts to support desired learning processes with appropriate and stimulating environments. A design process for school architecture demands research, debates, reflections, and efficient decision-making methods. This paper presents research on evidence-based design, related to middle schools, based on a systematic literature review and the elaboration of a set of architectural design patterns, through a graphic translation of new concepts for classroom configurations, to support programming debates and the synthesis phase of design. The investigation resulted in nine patterns that configure the concepts of boundaries, flexibility, levels of openness, mindsets, neighborhoods, movement and interaction, territories, opportunities for learning, and sightlines for classrooms. The research is part of a continuous investigation of design methods, on contemporary school architecture to produce an architectural pattern matrix based on scientific information translated into an insightful graphic design language.

Understanding the Programming Techniques Using a Complex Case Study to Teach Advanced Object-Oriented Programming

Teaching Object-Oriented Programming (OOP) as part of a Computing-related university degree is a very difficult task; the road to ensuring that students are actually learning object oriented concepts is unclear, as students often find it difficult to understand the concept of objects and their behavior. This problem is especially obvious in advanced programming modules where Design Pattern and advanced programming features such as Multi-threading and animated GUI are introduced. Looking at the students’ performance at their final year on a university course, it was obvious that the level of students’ understanding of OOP varies to a high degree from one student to another. Students who aim at the production of Games do very well in the advanced programming module. However, the students’ assessment results of the last few years were relatively low; for example, in 2016-2017, the first quartile of marks were as low as 24.5 and the third quartile was 63.5. It is obvious that many students were not confident or competent enough in their programming skills. In this paper, the reasons behind poor performance in Advanced OOP modules are investigated, and a suggested practice for teaching OOP based on a complex case study is described and evaluated.

A Model-Driven Approach of User Interface for MVP Rich Internet Application

This paper presents an approach for the model-driven generating of Rich Internet Application (RIA) focusing on the graphical aspect. We used well known Model-Driven Engineering (MDE) frameworks and technologies, such as Eclipse Modeling Framework (EMF), Graphical Modeling Framework (GMF), Query View Transformation (QVTo) and Acceleo to enable the design and the code automatic generation of the RIA. During the development of the approach, we focused on the graphical aspect of the application in terms of interfaces while opting for the Model View Presenter pattern that is designed for graphics interfaces. The paper describes the process followed to define the approach, the supporting tool and presents the results from a case study.

Crafting of Paper Cutting Techniques for Embellishment of Fashion Textiles

Craft and fashion have always been interlinked. The combination of both often gives stunning results. The present study introduces ‘Paper Cutting Craft Techniques’ like the Japanese –Kirigami, Mexican –PapelPicado, German –Scherenschnitte, Polish –Wycinankito in textiles to develop innovative and novel design structures as embellishments and ornamentation. The project studies various ways of using these paper cutting techniques to obtain interesting features and delicate design patterns on fabrics. While paper has its advantages and related uses, it is fragile rigid and thus not appropriate for clothing. Fabric is sturdy, flexible, dimensionally stable and washable. In the present study, the cut out techniques develop creative design motifs and patterns to give an inventive and unique appeal to the fabrics. The beauty and fascination of lace in garments have always given them a nostalgic charm. Laces with their intricate and delicate complexity in combination with other materials add a feminine touch to a garment and give it a romantic, mysterious appeal. Various textured and decorative effects through fabric manipulation are experimented along with the use of paper cutting craft skills as an innovative substitute for developing lace or “Broderie Anglaise” effects on textiles. A number of assorted fabric types with varied textures were selected for the study. Techniques to avoid fraying and unraveling of the design cut fabrics were introduced. Fabrics were further manipulated by use of interesting prints with embossed effects on cut outs. Fabric layering in combination with assorted techniques such as cutting of folded fabric, printing, appliqué, embroidery, crochet, braiding, weaving added a novel exclusivity to the fabrics. The fabrics developed by these innovative methods were then tailored into garments. The study thus tested the feasibility and practicability of using these fabrics by designing a collection of evening wear garments based on the theme ‘Nostalgia’. The prototypes developed were complemented by designing fashion accessories with the crafted fabrics. Prototypes of accessories add interesting features to the study. The adaptation and application of this novel technique of paper cutting craft on textiles can be an innovative start for a new trend in textile and fashion industry. The study anticipates that this technique will open new avenues in the world of fashion to incorporate its use commercially.

SQL Generator Based On MVC Pattern

Structured Query Language (SQL) is the standard de facto language to access and manipulate data in a relational database. Although SQL is a language that is simple and powerful, most novice users will have trouble with SQL syntax. Thus, we are presenting SQL generator tool which is capable of translating actions and displaying SQL commands and data sets simultaneously. The tool was developed based on Model-View-Controller (MVC) pattern. The MVC pattern is a widely used software design pattern that enforces the separation between the input, processing, and output of an application. Developers take full advantage of it to reduce the complexity in architectural design and to increase flexibility and reuse of code. In addition, we use White-Box testing for the code verification in the Model module.

Adopting Collaborative Business Processes to Prevent the Loss of Information in Public Administration Organisations

Recently, the use of web 2.0 tools has increased in companies and public administration organisations. This phenomenon, known as "Enterprise 2.0", has, de facto, modified common organisational and operative practices. This has led “knowledge workers” to change their working practices through the use of Web 2.0 communication tools. Unfortunately, these tools have not been integrated with existing enterprise information systems, a situation that could potentially lead to a loss of information. This is an important problem in an organisational context, because knowledge of information exchanged within the organisation is needed to increase the efficiency and competitiveness of the organisation. In this article we demonstrate that it is possible to capture this knowledge using collaboration processes, which are processes of abstraction created in accordance with design patterns and applied to new organisational operative practices.

REDUCER – An Architectural Design Pattern for Reducing Large and Noisy Data Sets

To relieve the burden of reasoning on a point to point basis, in many domains there is a need to reduce large and noisy data sets into trends for qualitative reasoning. In this paper we propose and describe a new architectural design pattern called REDUCER for reducing large and noisy data sets that can be tailored for particular situations. REDUCER consists of 2 consecutive processes: Filter which takes the original data and removes outliers, inconsistencies or noise; and Compression which takes the filtered data and derives trends in the data. In this seminal article we also show how REDUCER has successfully been applied to 3 different case studies.

Design Patterns for Emergency Management Processes

Natural or human made disasters have a significant negative impact on the environment. At the same time there is an extensive effort to support management and decision making in emergency situations by information technologies. Therefore the purpose of the paper is to propose a design patterns applicable in emergency management, enabling better analysis and design of emergency management processes and therefore easier development and deployment of information systems in the field of emergency management. It will be achieved by detailed analysis of existing emergency management legislation, contingency plans and information systems. The result is a set of design patterns focused at emergency management processes that enable easier design of emergency plans or development of new information system. These results will have a major impact on the development of new information systems as well as to more effective and faster solving of emergencies.

Energy Conscious Builder Design Pattern with C# and Intermediate Language

Design Patterns have gained more and more acceptances since their emerging in software development world last decade and become another de facto standard of essential knowledge for Object-Oriented Programming developers nowadays. Their target usage, from the beginning, was for regular computers, so, minimizing power consumption had never been a concern. However, in this decade, demands of more complicated software for running on mobile devices has grown rapidly as the much higher performance portable gadgets have been supplied to the market continuously. To get along with time to market that is business reason, the section of software development for power conscious, battery, devices has shifted itself from using specific low-level languages to higher level ones. Currently, complicated software running on mobile devices are often developed by high level languages those support OOP concepts. These cause the trend of embracing Design Patterns to mobile world. However, using Design Patterns directly in software development for power conscious systems is not recommended because they were not originally designed for such environment. This paper demonstrates the adapted Design Pattern for power limitation system. Because there are numerous original design patterns, it is not possible to mention the whole at once. So, this paper focuses only in creating Energy Conscious version of existing regular "Builder Pattern" to be appropriated for developing low power consumption software.

A Study on using N-Pattern Chains of Design Patterns based on Software Quality Metrics

Design patterns describe good solutions to common and reoccurring problems in program design. Applying design patterns in software design and implementation have significant effects on software quality metrics such as flexibility, usability, reusability, scalability and robustness. There is no standard rule for using design patterns. There are some situations that a pattern is applied for a specific problem and this pattern uses another pattern. In this paper, we study the effect of using chain of patterns on software quality metrics.

GeoSEMA: A Modelling Platform, Emerging “GeoSpatial-based Evolutionary and Mobile Agents“

Spatial and mobile computing evolves. This paper describes a smart modeling platform called “GeoSEMA". This approach tends to model multidimensional GeoSpatial Evolutionary and Mobile Agents. Instead of 3D and location-based issues, there are some other dimensions that may characterize spatial agents, e.g. discrete-continuous time, agent behaviors. GeoSEMA is seen as a devoted design pattern motivating temporal geographic-based applications; it is a firm foundation for multipurpose and multidimensional special-based applications. It deals with multipurpose smart objects (buildings, shapes, missiles, etc.) by stimulating geospatial agents. Formally, GeoSEMA refers to geospatial, spatio-evolutive and mobile space constituents where a conceptual geospatial space model is given in this paper. In addition to modeling and categorizing geospatial agents, the model incorporates the concept of inter-agents event-based protocols. Finally, a rapid software-architecture prototyping GeoSEMA platform is also given. It will be implemented/ validated in the next phase of our work.

Concurrent Access to Complex Entities

In this paper we present a way of controlling the concurrent access to data in a distributed application using the Pessimistic Offline Lock design pattern. In our case, the application processes a complex entity, which contains in a hierarchical structure different other entities (objects). It will be shown how the complex entity and the contained entities must be locked in order to control the concurrent access to data.

A Study on Use of User Demand Evaluation in Interactive Interface – Using Virtual Fitting-Room as an Example

The purpose of this study is to research on thoughts transmitted from virtual fitting-room and to deduce discussion in an auxiliary narrative way. The research structure is based on 3D virtual fitting-room as the research subject. Initially, we will discuss the principles of narrate study, User Demand and so on by using a narrative design pattern to transmit their objective indications of “people-situation-reason-object", etc, and then to analyze the virtual fitting-room examples that are able to provide a new thinking for designers who engaged in clothing related industry – which comes in “story telling" and “user-centered design" forms. Clothing designs are not just to cover up the body to keep warm but to draw closer to people-s demand physiologically and psychologically through interactive designs so as to achieve cognition between people and environment. In the “outside" goal of clothing-s functional designs, we use tribal group-s behavior characteristics to “transform" the existing personal cultural stories, and “reform" them to design appropriate interactive products. Synthesizing the above matters, apart from being able to regard “narrate" as a kind of functional thinking process, we are also able to regard it as a kind of choice, arrangement and an activity of story expression, allowing interactive design-s spirit, product characteristics and experience ideas be transmitted to target tribal group in a visual image performance method. It is a far more confident and innovative attempt, and meanwhile, able to achieve entertainment, joyful and so forth fundamental interactive transmissions. Therefore, this study takes “user-centered design" thinking as a basis to establish a set of clothing designs with interactive experience patterns and to assist designers to examine the five sensual feeling of interactive demands in order to initiate a new value in textile industry.

TSM: A Design Pattern to Make Ad-hoc BPMs Easy and Inexpensive in Workflow-aware MISs

Despite so many years- development, the mainstream of workflow solutions from IT industries has not made ad-hoc workflow-support easy or inexpensive in MIS. Moreover, most of academic approaches tend to make their resulted BPM (Business Process Management) more complex and clumsy since they used to necessitate modeling workflow. To cope well with various ad-hoc or casual requirements on workflows while still keeping things simple and inexpensive, the author puts forth first the TSM design pattern that can provide a flexible workflow control while minimizing demand of predefinitions and modeling workflow, which introduces a generic approach for building BPM in workflow-aware MISs (Management Information Systems) with low development and running expenses.

Extensions to Some AOSE Methodologies

This paper looks into areas not covered by prominent Agent-Oriented Software Engineering (AOSE) methodologies. Extensive paper review led to the identification of two issues, first most of these methodologies almost neglect semantic web and ontology. Second, as expected, each one has its strength and weakness and may focus on some phases of the development lifecycle but not all of the phases. The work presented here builds extensions to a highly regarded AOSE methodology (MaSE) in order to cover the areas that this methodology does not concentrate on. The extensions include introducing an ontology stage for semantic representation and integrating early requirement specification from a methodology which mainly focuses on that. The integration involved developing transformation rules (with the necessary handling of nonmatching notions) between the two sets of representations and building the software which automates the transformation. The application of this integration on a case study is also presented in the paper. The main flow of MaSE stages was changed to smoothly accommodate the new additions.

Quantifying the Stability of Software Systems via Simulation in Dependency Networks

The stability of a software system is one of the most important quality attributes affecting the maintenance effort. Many techniques have been proposed to support the analysis of software stability at the architecture, file, and class level of software systems, but little effort has been made for that at the feature (i.e., method and attribute) level. And the assumptions the existing techniques based on always do not meet the practice to a certain degree. Considering that, in this paper, we present a novel metric, Stability of Software (SoS), to measure the stability of object-oriented software systems by software change propagation analysis using a simulation way in software dependency networks at feature level. The approach is evaluated by case studies on eight open source Java programs using different software structures (one employs design patterns versus one does not) for the same object-oriented program. The results of the case studies validate the effectiveness of the proposed metric. The approach has been fully automated by a tool written in Java.

Energy Consumption Analysis of Design Patterns

The importance of low power consumption is widely acknowledged due to the increasing use of portable devices, which require minimizing the consumption of energy. Energy dissipation is heavily dependent on the software used in the system. Applying design patterns in object-oriented designs is a common practice nowadays. In this paper we analyze six design patterns and explore the effect of them on energy consumption and performance.

Software Technology Behind Computer Accounting

The main problems of data centric and open source project are large number of developers and changes of core framework. Model-View-Control (MVC) design pattern significantly improved the development and adjustments of complex projects. Entity framework as a Model layer in MVC architecture has simplified communication with the database. How often are the new technologies used and whether they have potentials for designing more efficient Enterprise Resource Planning (ERP) system that will be more suited to accountants?

On the Application of Meta-Design Techniques in Hardware Design Domain

System-level design based on high-level abstractions is becoming increasingly important in hardware and embedded system design. This paper analyzes meta-design techniques oriented at developing meta-programs and meta-models for well-understood domains. Meta-design techniques include meta-programming and meta-modeling. At the programming level of design process, metadesign means developing generic components that are usable in a wider context of application than original domain components. At the modeling level, meta-design means developing design patterns that describe general solutions to the common recurring design problems, and meta-models that describe the relationship between different types of design models and abstractions. The paper describes and evaluates the implementation of meta-design in hardware design domain using object-oriented and meta-programming techniques. The presented ideas are illustrated with a case study.