Main Page

From sselab

(Difference between revisions)
Jump to: navigation, search
(Services)
 
(12 intermediate revisions not shown)
Line 1: Line 1:
-
== SSELab ==
+
[[File:Logo web rgb.jpg|right|166px|caption]]
 +
[[File:Logo rz.png|right|160px]]
 +
[[File:Rwth rgb.jpg|right|100px]]
-
The [http://sselab.de/ SSELab] offers easy configurable, integrated '''storage''', '''version control''' and most of all '''service supply''' for projects of all kinds (but best for software development projects).
+
The [http://sselab.de/ SSELab] is an extensible project hosting platform. It offers an easy way to create projects, configure a set of services for them and manage project participants. It is best suited for software development projects, but has been successfully used for other project types.
-
The [http://sselab.de/ SSELab] stands for quality in service. And the RWTH-installation maintained by the [http://www.rz.rwth-aachen.de/ RZ (Center for Computing and Communication)] and the [http://www.se-rwth.de/ SE group] ensure this '''quality''''''privacy''' and '''reliability'''. You may check the [[privacy policy]] of the SSElab.  
+
The installation of the [http://sselab.de/ SSELab] at the [http://www.rwth-aachen.de/ RWTH Aachen] is hosted and maintained by the [http://www.rz.rwth-aachen.de/ Center for Computing and Communication (RZ)] and the [http://www.se-rwth.de/ SE group]. This cooperation ensures a high '''quality of service''' as well as '''privacy''' and '''reliability'''. You may want to check the [[privacy policy]] of the SSElab.
-
The [http://sselab.de/ SSELab] services are currently open to
+
<!--
 +
The [http://sselab.de/ SSELab] services are currently open to:
* all current and former students of the Informatics / CS courses at RWTH
* all current and former students of the Informatics / CS courses at RWTH
* all staff of the Informatics Department at RWTH
* all staff of the Informatics Department at RWTH
Line 11: Line 14:
* [http://www.dagstuhl.de/ Dagstuhl seminar] groups
* [http://www.dagstuhl.de/ Dagstuhl seminar] groups
** ... and we expect to open up our services to others soon.
** ... and we expect to open up our services to others soon.
 +
-->
== Getting Started ==
== Getting Started ==
-
'''You have been invited to a project and don't know what to do: [[simple_start|Read the simple starter]].'''
+
If you have been invited to join a project in the SSELab and don't know what to do: '''[[simple_start|Read the quick start guide]].'''
 +
 
== Project Management ==
== Project Management ==
-
[[File:Sselab-bv-flat.png|600px|none]]
+
[[File:Sselab-bv-flat.png|right|400px]]
-
The  [http://sselab.de/ sselab] is a growing set of internet-based services for project organisation. While main focus is the team-based development of software, it also assists projects like paper and book writing, teaching up to marriage organisation.
+
The  [http://sselab.de/ SSELab] offers a growing set of internet-based services for project management. While its main focus is team-based development of software, it also has been used successfully in assisting other types of projects. The services have been used to write research papers or books as well as to organize lectures. We even have reports that the services of the SSELab have helped tremendously in the organization of weddings.
-
A variety of tools, frameworks and technologies for typical project tasks can be used for increasing efficiency, memorizing tasks, knowledge, etc. In particular setup of new projects is simplified a lot and the available extra services help to keep track of the project.  
+
[https://sselab.de/lab1/project/ Starting a project] is as simple as giving it a name, creating an account, if you do not have one, and selecting the set of desired services. The selected services are not fixed, but you can always enable or disable services for yor project at any time. And you can also manage the members of your project: you can invite people to join your project, change their role or remove them from your project at any time.
-
Starting a project is as simple as giving it a name and selecting a set of desired services (once you have an account). You can always add new services later. And you can also invite people as long as desired.
+
Why do we do this? The interest of [http://www.se-rwth.de/ our group] is to help developers to produce their software more efficiently and more easily, resulting in better quality. We are interested in providing tools and services and also welcome [mailto:admin@sselab.de?Subject=SSELab:%20Documentation%20Feedback feedback to our website] as well as suggestions for [mailto:admin@sselab.de?Subject=SSELab:%20Service%20Request additional services the SSELab] can provide.
-
Why do we do this? It is our interest to help developers get their software more efficiently and more easily done, resulting in better quality.
+
=== Sample Scenarios ===
-
We are interested in providing tools and services and also welcome [[feedback to our website]] as well as suggestions for [[additional services the SSELab]] can provide.
+
-
=== Scenarios ===
+
Each project is different. Depending on your project context and your individual preferences, you should select the set of services accordingly. Here are some suggestions for some common projects types:
-
Each project is different. Depending on project context, individual likes etc. you should select your services appropriately. Here are some suggestions for typical kinds of projects:
+
* [[Java_Project| Agile Java project]] - As sson as a few people are working on a project, many things need to be organized and the project members need to work together. This scenario describes the project setup of a Java-based project following an agile methodology.
-
 
+
* [[Share_Data| Share data]] - Comparison of our different services for sharing data.
-
* [[Student_Thesis| student thesis]]  -- individual works on his thesis, may be also on an implementation
+
* [[Software_Development_Project| Software development project]] - Most of the services that are integrated into the SSELab are process independent. This scenario provides some basic guidance for development projects.
-
* [[Java_Project| agile java project]] -- many things need to be organized, teams need to work together, ...
+
* [[Paper_Project| Paper project]] - If you need to write a research paper, a book or a project proposal in a group, this scenario gives some advice.
-
* [[Software_Development_Project| software development project]] -- some general advice
+
* [[Workshop_Project| Workshop project]] - Conducting a workshop - e.g. like in Dagstuhl - is simplified if some tools are available to the participants during the workshops. Documents can be exchanged quickly, protocols can be written immediately, and finally a seminar report and other documents can be produced together.
-
* [[Paper_Project| paper project]] -- writing a paper, book, project proposal in a small group
+
* [[SVN_Stats| Calculate project statistics]] - Calculate statistics for your project of your SVN repository and upload the final report to a webDAV location.
-
* [[Workshop_Project| workshop project]] -- e.g. like in Dagstuhl: documents are exchanged, protocols written, finally a seminar report and other documents produced
+
* [[Student_Thesis| Student thesis]]  - Even if you are working alone on a project, e.g. your thesis, using the services of your individual works on his thesis, may be also on an implementation
== Services ==
== Services ==
 +
[[File:Sselab-svn-trac-test-flat.png|right|400px]]
[[File:Sselab-svn-trac-test-flat.png|right|400px]]
Line 55: Line 60:
** [[monticore|MontiCore]] - A framework for the efficient development of modelling languages/domain-specific languages (DSLs). If you want to design your own textual DSL this service is for you.  
** [[monticore|MontiCore]] - A framework for the efficient development of modelling languages/domain-specific languages (DSLs). If you want to design your own textual DSL this service is for you.  
** [[montiarc|MontiArc]] - A code generator for architecture models written in the MontiArc language.
** [[montiarc|MontiArc]] - A code generator for architecture models written in the MontiArc language.
-
** [[wikibot|WikiBot]] - If want to process articales from your wiki in an automated way, you can use this service in your project: Download, edit and upload articles in an automated way.
+
** [[wikibot|WikiBot]] - If want to process articles from your wiki in an automated way, you can use this service in your project: Download, edit and upload articles in an automated way.
** [[xml-schema-generator|XML Schema Generator]] - Do you need a schema for your XML files? With this service you can reconstruct a XML schema definition (XSD) from a set of sample XML files.
** [[xml-schema-generator|XML Schema Generator]] - Do you need a schema for your XML files? With this service you can reconstruct a XML schema definition (XSD) from a set of sample XML files.
-
 
-
== Framework ==
 
-
 
-
The SSELab consists of several subsystems that offer different types of software engineering tools as services. A centralized enterprise application enables the efficient and integrated administration of users, projects, and services. Examples include tools for version control and tools for task, project and knowledge management. Those tools are well known in the development community and quite reliable. 
 
-
 
-
A second enterprise application, and related client applications provide generation and transformation services useful for softwar edevelopment. This includes:
 
-
# code generators for UML
 
-
# and domain-specific languages (DSLs)
 
-
# generating and transforming of documentation
 
-
# handling of files in various formats
 
-
 
-
A third subsystem realizes a flexible '''continuous integration environment'''. It covers areas of
 
-
# quality assurance,
 
-
# testing and
 
-
# metrics.
 
-
An essential aspect of all infrastructure components is the expansion of services offered at run time through the use of plug-in systems. We do provide services on server-side instead of IDE extensions, because we find many problems:
 
-
* Developers in several projects always have problems with IDE'components to be available in different versions
 
-
* Upgrade of a tool, such as a generator becomes much easier
 
-
* Ramp-up time for  a new project becomes considerable less
 
-
* Complex analyses are more efficient on a powerful serverside
 
-
* Agile projects greatly benefit from an integrated availability of services
 
-
 
-
The SSELab uses modern and industry-relevant technologies and frameworks for the development of server-based applications. Some examples are:
 
-
 
-
* Languages and Frameworks:
 
-
** Java Enterprise Edition (Java EE) 5:
 
-
*** JBoss Rich Faces
 
-
*** Java Server Faces (JSF)
 
-
*** Enterprise Java Beans (EJB) 3
 
-
*** Java Persistence API (JPA)
 
-
** OSGi
 
-
* Test Frameworks:
 
-
** JUnit
 
-
** DBUnit
 
-
* Server:
 
-
** Apache
 
-
** Glassfish
 
-
** JBoss Application Server
 
-
* Database Systems:
 
-
** PostgreSQL
 
-
** MySQL
 
-
** SQLite
 
-
 
-
Within the research project "Glose" (Global Software Engineering) in cooperation with the TU Clausthal, Leibniz University of Hanover, Munich Technical University and various industrial partners the SSELab expands to meet the specific needs of globally distributed development.
 

Current revision as of 07:49, 28 March 2013

caption

The SSELab is an extensible project hosting platform. It offers an easy way to create projects, configure a set of services for them and manage project participants. It is best suited for software development projects, but has been successfully used for other project types.

The installation of the SSELab at the RWTH Aachen is hosted and maintained by the Center for Computing and Communication (RZ) and the SE group. This cooperation ensures a high quality of service as well as privacy and reliability. You may want to check the privacy policy of the SSElab.


Contents

Getting Started

If you have been invited to join a project in the SSELab and don't know what to do: Read the quick start guide.


Project Management

The SSELab offers a growing set of internet-based services for project management. While its main focus is team-based development of software, it also has been used successfully in assisting other types of projects. The services have been used to write research papers or books as well as to organize lectures. We even have reports that the services of the SSELab have helped tremendously in the organization of weddings.

Starting a project is as simple as giving it a name, creating an account, if you do not have one, and selecting the set of desired services. The selected services are not fixed, but you can always enable or disable services for yor project at any time. And you can also manage the members of your project: you can invite people to join your project, change their role or remove them from your project at any time.

Why do we do this? The interest of our group is to help developers to produce their software more efficiently and more easily, resulting in better quality. We are interested in providing tools and services and also welcome feedback to our website as well as suggestions for additional services the SSELab can provide.

Sample Scenarios

Each project is different. Depending on your project context and your individual preferences, you should select the set of services accordingly. Here are some suggestions for some common projects types:

  • Agile Java project - As sson as a few people are working on a project, many things need to be organized and the project members need to work together. This scenario describes the project setup of a Java-based project following an agile methodology.
  • Share data - Comparison of our different services for sharing data.
  • Software development project - Most of the services that are integrated into the SSELab are process independent. This scenario provides some basic guidance for development projects.
  • Paper project - If you need to write a research paper, a book or a project proposal in a group, this scenario gives some advice.
  • Workshop project - Conducting a workshop - e.g. like in Dagstuhl - is simplified if some tools are available to the participants during the workshops. Documents can be exchanged quickly, protocols can be written immediately, and finally a seminar report and other documents can be produced together.
  • Calculate project statistics - Calculate statistics for your project of your SVN repository and upload the final report to a webDAV location.
  • Student thesis - Even if you are working alone on a project, e.g. your thesis, using the services of your individual works on his thesis, may be also on an implementation

Services

We already provide several services and new services are integrated on a regular basis. Check out, which ones you might be interested to use:

  • Base Services: the foundational services for your project.
    • Subversion - A widely used centralized version control system.
    • Git - A distributed version control.
    • Storage (WebDAV) - If your project does not need a version control system, but a simple way to store and share files, this service meets your needs.
    • Trac - A feature and issue tracking system that integrates with Subversion. You can manage your milestones, bugs, and feature requests.
    • MediaWiki (internal) - A widespread wiki that you can use for your project documentation. This variant is only accessible by the members of your.
    • MediaWiki (external) - Another wiki variant which allows everyone to read the articles. But only members of your project can edit the articles. This wiki offers an easy way to make your project documentation and results publicly available.
    • Web Space - If you need more flexibility and control over the design of public web pages, this services is an alternative to the external wiki. You can upload your static web content including your custom design and it will be publicly available on the web.
    • Mailing List - A simple way to contact all the members of your porjects.
    • Feedback Service - This service provides a set of feedback clients that can be integrated into your developed products, e.g. a web site or an Eclipse RCP application. An easy way to get fast feedback from your customers and users. The users' feedback (screenshot and comments) gets stored directly in the Trac instance of your project.
  • OSTP Services: transformation and generation services, e.g. for code generation. These services are executed on our servers, but can be invoked from within your browser, IDE, or from the command line.
    • MontiCore - A framework for the efficient development of modelling languages/domain-specific languages (DSLs). If you want to design your own textual DSL this service is for you.
    • MontiArc - A code generator for architecture models written in the MontiArc language.
    • WikiBot - If want to process articles from your wiki in an automated way, you can use this service in your project: Download, edit and upload articles in an automated way.
    • XML Schema Generator - Do you need a schema for your XML files? With this service you can reconstruct a XML schema definition (XSD) from a set of sample XML files.

  • This page was last modified on 28 March 2013, at 07:49.
  • This page has been accessed 176,836 times.