Hello
WikiGuest
Einloggen
oder
Registrieren
Users
Studium
Lehrveranstaltungen
Sie sind hier:
Foswiki
>
F07_Studium Web
>
F07_SEKM_en
(Revision 3) (Quelltext-Ansicht)
<!-- * Set USERSTYLEURL = %PUBURLPATH%/%WEB%/DokumentFormat/fonts.css --> ---+!! Course %FORMFIELD{"Bezeichnung"}% %TOC{depth="3"}% %STARTSECTION{"no_toc"}% --- *Responsible:* Prof.Dr. Kreiser ---++ Course ---+++ Meets requirements of following modules(MID) * in active programs * [[MaET2012_QEKS]] * [[MaTIN2012_QEKS]] ---+++ Course Organization <sticky> <table border="0"> <tr valign="top"> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Version</th> <tr> <td>created</td> <td>2013-07-24</td> </tr> <tr> <td>VID</td> <td>2</td> </tr> <tr> <td>valid from</td> <td>WS 2012/13</td> </tr> <tr> <td>valid to</td> <td/> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Course identifiers</th> <tr> <td>Long name</td> <td>%FORMFIELD{"Bezeichnung"}%</td> </tr> <tr> <td>CID</td> <td>F07_SEKM</td> </tr> <tr> <td>CEID (exam identifier)</td> <td/> </tr> </table> </td> </tr> </table> </sticky><sticky> <table border="0"> <tr valign="top"> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Contact hours per week (SWS)</th> <tr> <td>Lecture</td> <td>%FORMFIELD{"VorlesungSWS"}%</td> </tr> <tr> <td>Exercise (unsplit)</td> <td>%FORMFIELD{"UebungGanzSWS"}%</td> </tr> <tr> <td>Exercise (split)</td> <td>%FORMFIELD{"UebungHalbSWS"}%</td> </tr> <tr> <td>Lab</td> <td>%FORMFIELD{"PraktikumSWS"}%</td> </tr> <tr> <td>Project</td> <td>%FORMFIELD{"ProjektSWS"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarSWS"}%</td> </tr> <tr> <td>Tutorial(voluntary)</td> <td>%FORMFIELD{"TutoriumSWS"}%</td> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Total contact hours</th> <tr> <td>Lecture</td> <td>%FORMFIELD{"VorlesungPZ"}%</td> </tr> <tr> <td>Exercise (unsplit)</td> <td>%FORMFIELD{"UebungGanzPZ"}%</td> </tr> <tr> <td>Exercise (split)</td> <td>%FORMFIELD{"UebungHalbPZ"}%</td> </tr> <tr> <td>Lab</td> <td>%FORMFIELD{"PraktikumPZ"}%</td> </tr> <tr> <td>Project</td> <td>%FORMFIELD{"ProjektPZ"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarPZ"}%</td> </tr> <tr> <td>Tutorial (voluntary)</td> <td>%FORMFIELD{"TutoriumPZ"}%</td> </tr> </table> </td> <td> </td> <td> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Max. capacity</th> <tr> <td>Exercise (unsplit)</td> <td>%FORMFIELD{"UebungGanzTeilnehmer"}%</td> </tr> <tr> <td>Exercise (split)</td> <td>%FORMFIELD{"UebungHalbTeilnehmer"}%</td> </tr> <tr> <td>Lab</td> <td>%FORMFIELD{"PraktikumTeilnehmer"}%</td> </tr> <tr> <td>Project</td> <td>%FORMFIELD{"ProjektTeilnehmer"}%</td> </tr> <tr> <td>Seminar</td> <td>%FORMFIELD{"SeminarTeilnehmer"}%</td> </tr> </table> </td> </tr> </table> </sticky> *Total effort (hours):* %FORMFIELD{"Gesamtaufwand"}% ---++++ Instruction language * German, 80% * English, 20% ---++++ Study Level * %FORMFIELD{"Niveau"}% ---++++ Prerequisites * object oriented programming, preferred language C++ * modeling object oriented software systems using UML * class diagram * use-case diagram * activity diagram and concept of actions * sequence diagram * state machine diagram and variants * package diagram * component diagram * evolutionary process models, e.g. SCRUM or XP * essential softare architectural models * interconnection models in software systems (OSI, TCPIP, Messaging) ---++++ Textbooks, Recommended Reading * D. Schmidt et.al.: Pattern-Oriented Software Architecture. Patterns for Concurrent and Networked Objects (Wiley) * Gamma et.al.: Design Patterns, (Addison-Wesley) * Martin Fowler: Refactoring, Engl. ed. (Addison-Wesley Professional) * U. Hammerschall: Verteilte Systeme und Anwendungen (Pearson Studium) * M. Born et. al.: Softwareentwicklung mit UML 2. Die "neuen" Entwurfstechniken UML 2, MOF 2 und MDA (Addison-Wesley) * Andreas Andresen: Komponentenbasierte Softwareentwicklung m. MDA, UML2, XML (Hanser Verlag) * T. Ritter et. al.: CORBA Komponenten. Effektives Software-Design u. Progr. (Springer) * Bernd Oestereich: Analyse und Design mit UML 2.3 (Oldenbourg) * OMG Unified Modeling Language Spec., www.omg.org/uml * I. Sommerville: Software Engineering (Addison-Wesley / Pearson Studium) * K. Beck: eXtreme Programming (Addison-Wesley Professional) * Ken Schwaber: Agiles Projektmanagement mit Scrum (Microsoft Press) ---++++ Instructors * Prof.Dr.Kreiser ---++++ Supporting Scientific Staff * Dipl.-Ing. N. Kellersohn ---++++ Transcipt Entry Software Engineering by Components and Pattern ---+++ Assessment <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Type</th> <tr> <td>oE</td> <td>50%</td> </tr> <tr> <td>oR</td> <td>50% (based on seminar work)</td> </tr> </table> </sticky> <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Total effort [hours]</th> <tr> <td>oR+oE</td> <td>10</td> </tr> </table> </sticky> *Frequency:* 2-3/year ----- ---++ Course components %STARTSECTION{"Vorlesung / Übung"}% ---+++ <u>Lecture/Exercise</u> ---++++ Objectives ---+++++ Contents * Terminology * value vs. cost of a technical software * distributed software system, concurrency * software quality, quality of service, refactoring * complexity (algorithmic, structural), emergence * re-use, symmetry and symmetry operations, abstraction, invariants * quality controlled re-use, methodical approaches * variants of white box re-use * black box re-use * grey box re-use (hierarchical approach to re-use) * re-use in automation control software systems * determinism * benefits and challenges * tailoring process models and personnel structures in projects * meet requirements in development projects predictably (product quality, cost, deadlines) * distributed development, maintenance and support of software systems * software pattern * pattern description using UML * essential architectural pattern * construction pattern * structural pattern * behavioural pattern * class based (static) vs. object based (dynamic) pattern * essential pattern for concurrent and networked real time systems * encapsulation and role based extension of layered architectures * concurrency structures to optimize throughput and system response latency * distributed event processing * process synchronisation * thread safety (optional) * construction and use of pattern catalogues, pattern languages * pattern based design of complex software systems * components and frameworks * design principles * interface architectur * active and passive system elements * design, programming and test * quality * configuration and use * using middleware systems to develop architectures of technical software systems * ORB architectures, e.g. CORBA and TAO * integrated system plattforms, e.g. MS .NET * multi agent systems (MAS) * agent architectural models * collaboration between agents * agent languages * considering cases for MAS application ---+++++ Acquired Skills * use pattern to design complex software systems * extract and discuss purpose, limitation of use, invariant and configurable parts of pattern from english and german literature sources * understand implementation skeletons of pattern and map them to problem settings with limited technical focus * discuss benefits of using object oriented programming languages * derive recurrent settings in the development of complex software systems * implement pattern on exemplary settings and test resulting implementations * reasonably combine pattern to solve recurring problem settings with a broader technical focus * use UML2 notations * use professional UML2 IDE for round-trip-engineering * integrate software system based on exemplary implementations of the pattern to combine * conduct integration test, assess software quality and optimize software system * construct black-box-components based on pattern * analyse component based software architectures * derive suitable scope from architectural specs * understand and discuss development process to construct software systems * find active and passive system elements and derive system run time behaviour * understand abstract system interfaces to interconnect, configure and activate components * understand abstract system interfaces to exchange applicational run time data * understand system extension points (functional and structural system configuration layer) * analyse distribution architectures * understand basic system services (describe and reason service usage, relate to system tasks) * relate pattern to structure making architectural software artefacts * derive suitable range of appications for a given distribution architecture * understand engineering process to construct user applications (application layer) * discuss attributes and limitation of usage of interconnection protocols * find designated system extension points * compare MAS to conventional distribution architectures * agent vs. component * architectural models * activation of agents * deployment of agents * protocols for interconnection and collaboration * range of appications and and limitation of usage ---++++ Additional Component Assessment <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Type</th> <tr> <td>fPS</td> <td>excercise (on course and self study)</td> </tr> </table> </sticky> <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Contribution to course grade</th> <tr> <td>fPS</td> <td>not rated</td> </tr> </table> </sticky> *Frequency:* 1/year %ENDSECTION{"Vorlesung / Übung"}% %STARTSECTION{"Projekt"}% ---+++ <u>Project</u> ---++++ Objectives ---+++++ Operational Competences * develop a software artefact of a distibution architecture for complex software systems * use agile process model to control development in a distributed team * analyse complete functionality of software artefact in distribution architecture * conduct requirements analysis for the software artefact * specify and model software artefact * use design principles and pattern to hold specified quality goals * model interfaces, behaviour and structure based on pattern using UML2 * confidently use professional UML2 IDE * verify, evaluate, correct and optimize models * use C++ language to program software artefact * define suitable test scenarios and verify software artefact * evalute quality of developed software artefact * present project outcomes to academic audience ---++++ Additional Component Assessment <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Type</th> <tr> <td>fTP</td> <td>3 lab experiments (each 4h) per project team</td> </tr> <tr> <td>oR</td> <td>presentation on fTP (20min per project team)</td> </tr> </table> </sticky> <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Contribution to course grade</th> <tr> <td>fTP</td> <td>Attestation</td> </tr> <tr> <td>oR</td> <td>prerequisite to course exam</td> </tr> </table> </sticky> *Frequency:* 1/year %ENDSECTION{"Projekt"}% %STARTSECTION{"Seminar"}% ---+++ <u>Seminar</u> ---++++ Objectives ---+++++ Acquired Skills * discuss methodic concepts for re-use of software artefacts (potential topics: pattern for distributed and networked systems, distribution architectures, MAS or any related topic) * literature study (academic literature) * analyse and classify with regard to given set questions * exemplarily implement (as skeleton or executable example software regarding to complexity) and reason implemenation ---+++++ Operational Competences * summarize findings as academic lecture and paper * present lecture to academic audience (20-30min presentation) and discuss findings ---++++ Additional Component Assessment <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Type</th> <tr> <td>fLP</td> <td>literatur study (scientific literatur)</td> </tr> <tr> <td>fIN</td> <td>academic discourse on given problem</td> </tr> </table> </sticky> <sticky> <table border="1" cellpadding="2" cellspacing="0"> <th colspan="2">Contribution to course grade</th> <tr> <td>fLP</td> <td>rated (contributes to oR)</td> </tr> <tr> <td>fIN</td> <td>rated (contributes to oR)</td> </tr> </table> </sticky> *Frequency:* 1/year %ENDSECTION{"Seminar"}% %ENDSECTION{"no_toc"}%
E
ditieren
|
A
nhang
|
Druckversion (
p
)
|
H
istorie
: r3
<
r2
<
r1
|
Querverweise (
b
)
|
Topic anzeigen (
v
)
|
Editieren
w
ikitext
|
M
ehr Topic-Aktionen
Topic-Revision: r3 - 11 Jan 2016,
GeneratedContent
F07_Studium
Einloggen
oder
Registrieren
Werkzeugkasten
Neues Topic anlegen
Index
Suchen
Änderungen
Benachrichtigungen
RSS-Feed
Statistiken
Einstellungen
Webs
F07_Studium
System
Deutsch
English
Das Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborations-Plattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich Foswiki?
Feedback senden