Software Engineering Events

  • 17.09.2019 17:00 Disputation A4 2-221
    Ruthbetha Kateule:
    Carl von Ossietzky University
    Reference Architecture for Smart Environmental Information Systems

    Smart environmental information systems (SEISs) are playing a more prominent role in modern society as the utilization of SEISs has dramatically increased for effectively monitoring and controlling environmental events. This is achieved by firstly, monitoring and displaying the environmental conditions. Afterwards, the environmental conditions are analysed and manipulated with the intent of preventing or reducing the effects of various environmental phenomena, i.e. air pollution, fire, flood, road traffic congestion etc. The wireless sensor-actuator networks (WSANs) enable SEISs to monitor the environment in both non-real-time and real-time on remote and inaccessible places, diagnostics, and finally protection of further environmental severe phenomena. The intention of SEISs is not restricted to only gathering and manipulating data from various locations, but also to disseminate information required by practitioners such as researchers, planners, and policy-makers for making crucial decisions regarding the management and improvement of the environment.

    Although there is a high potential, the growth of SEISs is coupled with the existence of various hardware devices, extensive use of off-the-shelf components, growth of the size, various stakeholders and multiple programming languages. The inevitable complexity of such systems makes the development and maintenance of the SEISs to be difficult, time-consuming and require extensive knowledge of the domain. Dealing with such complexity can be challenging for even most experienced software engineers such as architects, developers and maintainers if start from scratch. Since, in spite of the considerable relevance and established architectural knowledge of the existing SEISs, there is a lack of a reference architecture for SEISs that supports the development of SEISs. This can be achieved by replacing the ad-hoc solutions (which focus on single-solution development) with reuse-driven and knowledge-based best practices for SEISs.

    A conventional method for maximizing the reusability of established knowledge and best-practices of systems that belong to a particular domain is a Reference Architecture. The reference architecture encompasses systems common sets of requirements, architecture designs, and software elements from the previous software developments mainly existing concrete software architectures that can be applied to a number of concrete systems in a particular domain. The elements of these software architectures which are being reused in the reference architecture are proven to be good. It is argued that the employment of reference architecture in SEISs would facilitate the development of SEISs by reducing the SEISs development time and efforts. Therefore, the main objective of this thesis is to propose a reference architecture for SEISs that would serve as a baseline for creating concrete SEISs.

    An effective approach to describe an understandable and easier maintainable software architectural description is by partitioning the software architecture into a number of separate views. Each view addresses one aspect of the architecture using a specific set of models from a specific viewpoint. Therefore this thesis proposes a required set of Viewpoints for SEISs, some of these viewpoints are adopted from Siemens view model. Essential viewpoints for SEISs include conceptual, module, execution, code, topology, and data viewpoints. Furthermore, these viewpoints have been integrated to ensure conceptual integrity and consistency in the construction of a well-integrated system. Such viewpoints are applied in the development of the reference architecture for SEISs (RefSEISs). The description of the RefSEISs follows the ISO/IEC/IEEE 42010:2011 standard for the architectural description and adopts the best practices established in the existing SEISs. Thus, the proposed RefSEISs encompasses various software artefacts and knowledge such as the sets of stakeholders, concerns, requirements and architectural designs that could be reused in the construction of concrete SEISs architectures.

    As proof of concept, the proposed RefSEISs is applied to several applications. First, the RefSEIS is applied in the construction of forest fire detection system as new concrete SEIS to demonstrate the applicability of the proposed RefSEISs in real scenarios and verification of the design with the requirements. Secondly, a conceptual validation is presented in which the proposed RefSEISs is used for mapping some of the existing SEISs; Forest Fire Monitoring System (IPNAS), Urban Air Quality Monitoring System, Flood Risk Assessment System and Indoor Air Quality Monitoring System. These mappings demonstrated the proposed RefSEISs provides insights into how to improve the existing SEISs since the similarities and differences of existing SEISs with respect to RefSEISs have been described.

    An analysis of these experiences showed that the proposed RefSEISs effectively supports the constructions of new concrete SEISs since the time and efforts required for developing and maintaining forest fire detection system have been substantially reduced. And also the mappings have demonstrated that the proposed RefSEISs can be used to compare and improve the existing SEISs by describing the similarities, differences, and how such SEISs can be improved. Results indicated that the RefSEISs has a positive influence in achieving the requirements of SEISs. This RefSEIS presents, therefore, good perspectives to be adopted and contribute to the development and maintenance of SEISs.

  • 18.09.2019 16:00 SE Colloquium V1 3-310 (im Flur)
    Thomas Sprock:
    Repository Managementsystem für Delta Language

    In der Softwareentwicklung werden alle Beteiligten durch allerlei Tooling unterstützt. In der Planungsphase, in der es darum geht die Systeme inklusive der Abläufe durch UML-Diagramme zu beschreiben, können die Entwickler auf CoMo - einem Fork vom Kotelett - zur Hilfe nehmen.

    CoMo (Collaborative Modeling) ist eine Erweiterung des UML-Designers. Mit diesem Tool ist es möglich parallel in Echtzeit an Aktivitätsdiagramme (weitere Diagrammtypen folgen) zu arbeiten. Hinzu kommt, dass durch dieses Tool eine Versionierung der Diagramme möglich ist.

    Hierfür ist ein zentraler Server notwendig, der sowohl die Mikro- also auch die Makroversionierung koordiniert. Da der Client durch studentische Arbeiten stets erweitert wird und auch neue Features serverseitig gefordert werden, soll der CoMo-Server vollständig überarbeitet werden. Bei der Neuentwicklung des Servers soll darauf geachtet werden, dass dieser mindestens den gleichen Funktionsumfang wie die bestehenden zwei Server hat sowie die zuvor erwähnten Neuerungen. Um dies zu gewährleisten gilt es die bestehenden Server analysieren und in einen neuen, wartungsfreundlichen und erweiterbaren Server zu überführen.

Wedkbbmasmka6ter (meier@7ase.unr8ogni-oldenburg.dhbeyhrdd) (Stand: 10.10.2018)