|
|
| (12 intermediate revisions by 4 users not shown) |
| Line 1: |
Line 1: |
| [[Category:Projects]] | | [[Category:Projects]] |
| | | [[Image:emu_logo_01.png|right|frame| EMUs: Eiffel Multi Users]] |
|
| |
|
| =Overview= | | =Overview= |
| Line 11: |
Line 11: |
|
| |
|
| =Software Requirements Specification= | | =Software Requirements Specification= |
| ==The Parts==
| | You can find our SRS [[EMU/SRS|here]] |
| * EMU-Protocol
| |
| * EMU-Server
| |
| * EMU-Client
| |
| * EMU-IDE integration
| |
| | |
| ==Developer Requirements==
| |
| ===EMU-Protocol===
| |
| defines Client/Server communication with
| |
| * client/server states
| |
| * available messages
| |
| * client/server actions
| |
| | |
| ===EMU-Server===
| |
| * stores and manages code-repository
| |
| * synchronizes code of clients
| |
| * manages Locking-System
| |
| * Account-System
| |
| * project update
| |
| * add/create new code (classes)
| |
| * change-logging
| |
| * optional: Media-upload
| |
| * optional: BackUp-System
| |
| * optional: Release-versions
| |
| * optional: Server-Admin-Tool
| |
| | |
| ====Locking-System====
| |
| * list of locked code
| |
| * check if code (class) is locked
| |
| * lock / unlock code (class)
| |
| | |
| ====Code-Synchronization====
| |
| * broadcast code-changes
| |
| * bring user code up to date
| |
| | |
| ====Account-System====
| |
| The server uses an account-system to organize its projects and users.
| |
| Every project has its own users assigned.
| |
| | |
| =====Project-Accounts=====
| |
| * project name
| |
| * project-admin(s)
| |
| * user lists
| |
| * project status
| |
| * editable / creatable with a project-admin-tool
| |
| | |
| =====User-Accounts=====
| |
| * usernames
| |
| * used for logins
| |
| * assign locked code & changes to users
| |
| * online status
| |
| | |
| ===Change-Log===
| |
| Every lock/unlock action is locked with following data:
| |
| * user name
| |
| * date and time
| |
| * type of action
| |
| * code element (class name)
| |
| | |
| ===EMU-Client===
| |
| * interface for IDE and server
| |
| * provides features to login and communicate with server on an abstract base
| |
| * upload/download code elements to/from server
| |
| * notify IDE of server-messages (code-updates)
| |
| * modular / independent of IDE-integration
| |
| * optional: upload media files
| |
| | |
| ====IDE-Notifications====
| |
| The client needs to notify the IDE of the new changes.
| |
| | |
| ===EMU-IDE integration===
| |
| * minimal change to existing ES-classes and features.
| |
| * modular integration: activatable and removable / hideable
| |
| | |
|
| |
|
| ==User Requirements== | | =How To= |
| * easy to use
| | A small HowTo, if you want to try our EMU: [http://n.ethz.ch/student/trickli/files/emuhowto.pdf HowTo] |
| * target is a small project group of up to 20 developers.
| |
| * code synchronisation process mostly hidden from user
| |
| * minimal extra work (less total work)
| |
| * better efficiency
| |
|
| |
|
|
| |
|
| Line 102: |
Line 25: |
| * everyone managed to compile Eiffelstudio | | * everyone managed to compile Eiffelstudio |
|
| |
|
| ==M2: May ??? == | | ==M2: May 2nd== |
| * To be completed by the team | | * define EMU-Protocol as completely as possible |
|
| |
|
| | ==M3: May 23rd== |
| | * emu-server prototype |
| | * server-administration application |
|
| |
|
| | ==M4: May 30th== |
| | * new EMU project wizard |
| | * project-management tool: EMU Project Settings |
|
| |
|
| =Team= | | =Team= |
EMUs: Eiffel Multi Users
Overview
Name
EMU stands for Eiffel Multi User.
Goal
The aim of this project is to integrate a simple repository functionality into EiffelStudio.
Software Requirements Specification
You can find our SRS here
How To
A small HowTo, if you want to try our EMU: HowTo
Milestones
M1: April 25th
- set up mailinglist es-emu@origo.ethz.ch (Bernd)
- wiki page up to date
- everyone managed to compile Eiffelstudio
M2: May 2nd
- define EMU-Protocol as completely as possible
M3: May 23rd
- emu-server prototype
- server-administration application
M4: May 30th
- new EMU project wizard
- project-management tool: EMU Project Settings
Team
Everyone interested in this project is welcome to join our mailinglist es-emu@origo.ethz.ch