362,909 research outputs found

    Methodology for object-oriented real-time systems analysis and design: Software engineering

    Get PDF
    Successful application of software engineering methodologies requires an integrated analysis and design life-cycle in which the various phases flow smoothly 'seamlessly' from analysis through design to implementation. Furthermore, different analysis methodologies often lead to different structuring of the system so that the transition from analysis to design may be awkward depending on the design methodology to be used. This is especially important when object-oriented programming is to be used for implementation when the original specification and perhaps high-level design is non-object oriented. Two approaches to real-time systems analysis which can lead to an object-oriented design are contrasted: (1) modeling the system using structured analysis with real-time extensions which emphasizes data and control flows followed by the abstraction of objects where the operations or methods of the objects correspond to processes in the data flow diagrams and then design in terms of these objects; and (2) modeling the system from the beginning as a set of naturally occurring concurrent entities (objects) each having its own time-behavior defined by a set of states and state-transition rules and seamlessly transforming the analysis models into high-level design models. A new concept of a 'real-time systems-analysis object' is introduced and becomes the basic building block of a series of seamlessly-connected models which progress from the object-oriented real-time systems analysis and design system analysis logical models through the physical architectural models and the high-level design stages. The methodology is appropriate to the overall specification including hardware and software modules. In software modules, the systems analysis objects are transformed into software objects

    Python for teaching introductory programming: A quantitative evaluation

    Get PDF
    This paper compares two different approaches of teaching introductory programming by quantitatively analysing the student assessments in a real classroom. The first approach is to emphasise the principles of object-oriented programming and design using Java from the very beginning. The second approach is to first teach the basic programming concepts (loops, branch, and use of libraries) using Python and then move on to oriented programming using Java. Each approach was adopted for one academic year (2008-09 and 2009-10) with first year undergraduate students. Quantitative analysis of the student assessments from the first semester of each year was then carried out. The results of this analysis are presented in this paper. These results suggest that the later approach leads to enhanced learning of introductory programming concepts by students

    Design concept development in transportation design

    Get PDF
    The paper presents results of a study about design concept development in transportation design. The main question of this study concerns mainly the existence and development of design concepts and its status in the design process furthermore it partially describes its content, manifestation and function. From the view of industrial psychology, the design concept is one of the most important stages in the design process, because its availability determines the success, regarding the design object. A design concept can be understood as the first solid and focused unit of knowledge in design processes with ill-defined problems. In the Design Process Planning, based on Action Regulation Theory, design concepts act as a compact guiding principle, including the anticipation of the artefact. Using this as a scientific basis a long term study with 25 students including cross section and longitudinal aspects were held from 2005 to 2008. Three concept types derived from the literature preceded the investigation, whereby the holistic experience-oriented one after Uhlmann (2006a) forms the beginning. This focus was confirmed within the investigation for the majority of the projects, yet one must assume that, functional (construction-oriented) or formal concepts successfully finds to application. Holistic concepts enable a more comprehensive and more balanced treatment within the design process. Within the work two general methods of generating design concepts: extracting and compiling were defined. Following the typical processes they can be assigned to different fields: transportation design (extracting) and industrial design (compiling). Furthermore three designer types and an open category could be identified. The three types “automobile”, “design” and “story” can be clearly and consistently assigned by the students. The research closes with a recommendation of a hybrid design concept processing using aspects of the two generating methods as well as instruments of different designer types. Keywords: Design Concept, Transportation Design, Field study, Early stages</p

    Moving Away from Programming and Towards Computer Science in the CS First Year

    Get PDF
    After completing a pilot study using the Python programming language to transition to Java within our first-year introductory programming sequence, our department opted to make a more radical change. We assert that our students are better served in their first year of study by a focus on problems in computer science and their solutions, rather than programming. Our new introductory sequence emphasizes algorithm development and analysis, object-oriented design, and testing. As in our pilot, programming is first done in Python, switching to Java when object-oriented design and static typing become advantageous. Students reported liking the problem focus of the courses, while the distribution of grades remained similar to those in previous years. As a result, our department will be discontinuing our earlier introductory sequence, and offering the new problem-based one to all the groups of students our department services beginning in Fall 2010

    MEASURING AND QUANTIFYING WEB APPLICATION DESIGN

    Get PDF
    The World Wide Web makes it easier for organizations and people to share information across great distances at a minimal cost. In addition, governments and businesses are beginning to offer services on the World Wide Web to their respective populations and customers. Unlike traditional desktop based applications where the programming language used are most likely Object Oriented (OO) based languages such as C++ or Java, most web applications are built upon more lightweight scripting languages. These languages typically don’t support all the OO features that more traditional languages support. In addition, some web applications are dependent on external web services or applications. These differences make it difficult to use traditional measuring techniques such as Quality Measurements in Object Oriented Design to quantify the complexity of a web application or its quality. This paper will propose a set of measurements derived from traditional Object Oriented metrics such as QMOOD, and attempt to use them on two Content Management Systems; Drupal and WordPress. These measurements will try to quantify the size and complexity of the two content management systems and make comparisons between them

    The Effects of Objects-First and Objects-Late Methods on Achievements of OOP Learners

    Get PDF
    Our research explored the effects of objects-first and objects-late methods on achievements of object-oriented programming (OOP) learners during a graduate course. The course’s scope was virtually identical for two groups, but the structure of the contents differed in sequence. The objects-first method emphasized the design and discussion of the object-oriented concepts from the very beginning while the objects-late deferred these concepts to the late lectures. The objects-first learners used all visual functionalities of BlueJ IDE. However, the objects-late learners started with only the text-based interfaces of BlueJ and they benefited its visual support in the last lectures. At the end of the study, we found that there was a statistically significant difference between OOP learner groups

    Designing personalized web applications

    Get PDF
    The goal of this paper is to argue the need to approach the personalization issues in Web applications from the very beginning in the application’s development cycle. Since personalization is a critical aspect in many popular domains such as e-commerce, it important enough that it should be dealt with through a design view, rather than only an implementation view (which discusses mechanisms, rather than design options). We present different scenarios of personalization covering most existing applications. Since our design approach is based on the Object-Oriented Hypermedia Design Method, we briefly introduce i the way in which we build Web application models as object -oriented views of conceptual models. We show how we specify personalized Web applications by refining views according to users’ profiles or preferences; we show that an object -oriented approach allows maximizing reuse in these specifications. We discuss some implementation aspects and compare our work with related approaches, and present some concluding remarks.Laboratorio de Investigación y Formación en Informática Avanzad

    Software Requirement Analysis and Design: Object-oriented approach with UML

    Get PDF
    This book is aimed primarily as lab sessions for software requirement and design. It focuses on the basic concepts of object-oriented software analysis and design using Unified Modeling Language (UML). The chapters of this lab module are arranged based on the phase by phase in software development process beginning with project planning, requirement analysis, analysis and design, testing and implementation. Upon completion of this module, the students would have understood the fundamentals of object-oriented software analysis and design using UML and know how to develop the software from scratch to the final product. The first edition of this lab module acts as a baseline for the future improvements. We welcome any response and constructive comments from students, academicians and anyone who is interested with this module
    corecore