INES – National Institute of Science and Technology for Software Engineering

RSS feed


April 2012
« Mar   May »

  • Software Engineering in the Transition to Multicore Platforms

    Publicado em April 17th, 2012Projects

    In the last few years, both the software development industry and academia have shown a strong belief that multicore machines are an irreversible tendency. To exploit the power of multicore machines, applications must be capable of running in parallel. However, the construction of concurrent and parallel applications is know to be a difficult and error-prone activity. Although operating systems, architectures, and compilers can assist in the construction of parallel applications, most of the responsibility rests in the hands of programmers.

    In this scenario, a number solutions have been proposed to improve the performance of applications running on multicore machines and to ease their construction and maintenance. Nonetheless, many of these solutions ignore the needs of developers and the current state of the practice of the construction of concurrent and parallel applications. In addition, researchers rarely evaluate the efficacy new mechanisms for the construction of concurrent systems from a software engineering perspective. At the same time, there are only a few approaches to support developers to introduce concurrency control mechanisms in existing systems, further aggravating problems. Finally, even when existing systems are successfully made concurrent, developers have little support to switch between different techniques for concurrency control and to structure their applications so as to be capable of handling errors at runtime.

    This research project aims to propose new techniques, methods, and tools to support developers in the transition to multicore platform, from a Software Engineering standpoint. More specifically, it has the following goals:

    – Improve the current body of knowledge about the state-of-the-practice of the use of existing constructs for concurrency control and how their usage has evolved over time.

    – To develop refactoring techniques to introduce concurrency control mechanisms in systems that do not use them. The methods and techniques that we intend to develop should also ease the task of switching between different techniques.

    – To design and implement new approaches to handle errors in concurrent systems, since concurrency is an abundant source of problems in the construction of real-world applications.

  • INES researchers developing educational-oriented recommender systems

    Publicado em April 17th, 2012Projects

    INES researchers at C.E.S.A.R/ are investigating and developing educational-oriented recommender systems for providing students with personalized learning material respecting their individual needs. One of the main challenges of the research is to depict the student’s user model due to its granularity of characteristics to determines user’s interest. In order to offer students with appropriate learning resources and courses, machine learning and data mining techniques such as prediction, classification and clustering are being investigated and applied to an under-development recommendation system. The outcome of this work will be implemented at, an educational social network. Frederico Durao (C.E.S.A.R/, Marcel Caraciolo ( and Silvio Meira (C.E.S.A.R) are leading the research.

    , , , ,