Login | Register
My pages Projects Community openCollabNet

Project home

2020-03-13: This site is going to be decommissioned and shut down very soon. Please copy and archive any data you wish to keep ASAP

If you were registered and logged in, you could join this project.

Message from the owner(s)

Practical tools for software requirements ontologies are rarely known and lack many useful features. We are planning to fill this gap.
Summary A domain model implementation of software requirements.
Category requirements
License Common Public License
Owner(s) kyriosdata


The Mogno project aims to define and implement an ontology for software requirements specifications. The implementation means a software layer that can be used to develop software requirements definition and management systems.

It is the first project issued by the labs of Software Engineering undergraduate course (curso de Graduação em Engenharia de Software) (ou Bacharelado em Engenharia de Software). You can get more details about this course at http://engenhariadesoftware.inf.br.

The definition should be suitable for many cases and follows as much as possible the international standards IEEE Standard 830 (Recommended Practice for Software Requirements Specifications) and ISO/IEC 9126-1 (Product Quality).

Only the definition is not enough for practical purposes. In the scope of this project there is a interface and the corresponding reference implementation to be used by client programs. Through the use of this interface and implementation programs will be able to create software requirements specifications and manipulate them according to the ontology defined.

Mogno does not include a user interface. In this regard, such a software is also considered a client program. Kraho is an example of a system that employs Mogno as its kernel.


  • Definition of an ontology for software requirements specifications

  • Definition of an interface for programs to make use of a corresponding ontology.

  • Implementation of this interface.

High-level features:

  • An ontology for software requirements (document)

  • Kraho interface and reference implementation can be used to implement CASE tools that register ou make use of software requirements.

High-level assumptions

  • The interface and corresponding implemantation will use the Java language (5.0)

  • This project results in a tool for programmers that not interact with final users (internationalization is not a concern).

  • There is not a common and widely used ontology for software requirements.

  • A high-level tool can benefit from an existing support of a low-level tool that takes care of technical details and exposes a domain level interface.

  • As a building block for CASE tools correctness and performance (in this order) will be enforced.