Fakultät für Informatik
Refine
Year of publication
Document Type
- Book (7)
- Other (6)
- Conference Proceeding (5)
- Part of a Book (2)
- Contribution to a Periodical (2)
- Doctoral Thesis (1)
Has Fulltext
- no (23)
Is part of the Bibliography
- no (23)
Keywords
- Software Development (5)
- Projektmanagement (3)
- Requirements Engineering (3)
- Software Engineering (3)
- Software- Architektur (3)
- Grundlagen Informatik (2)
- Informatik (2)
- Informatikstudium (2)
- Java (2)
- Model-Driven Architecture (2)
- Anwendungsprogrammierung im Internet (1)
- Aspect-oriented programming (AOP) (1)
- Componentware (1)
- Datenbanken (1)
- Enterprise JavaBeansTM 2.0 (1)
- Graphentheorie (1)
- IT- Praxis (1)
- J2EE-Patterns (1)
- Java Server (1)
- Lehrbuch (1)
- Model-Driven Software Development (MDSD) (1)
- PHP (1)
- Programmieren mit Windows (1)
- Referenzarchitekturen (1)
- SQLJ Architekturen (1)
- Software (1)
- Software Maintenence (1)
- Software Requirements (1)
- Softwareprojekte (1)
- Studium Informatik (1)
- Studium Wirtschaftsinformatik (1)
- Systemarchitektur (1)
- Unified Modeling Language (UML) (1)
- Windows Communication Foundation (1)
- agile Software- Entwicklung (1)
- kleine und mittelständische Unternehmen (KMU) (1)
Institute
Das Buch bietet eine umfassende und praxisorientierte Einführung in die wesentlichen Grundlagen und Konzepte der Informatik. Es umfasst den Stoff, der typischerweise in den ersten Semestern eines Informatikstudiums vermittelt wird, vertieft Zusammenhänge, die darüber hinausgehen und macht sie verständlich. Die Themenauswahl orientiert sich an der langfristigen Relevanz für die praktische Anwendung. Praxisnah und aktuell werden die Inhalte für Studierende der Informatik und verwandter Studiengänge sowie für im Beruf stehende Praktiker vermittelt.
Zahlensysteme und binäre Arithmetik – Nachricht und Information – Codierung und Datenkompression – Verschlüsselung – Schaltalgebra, Schaltnetze und Elemente der Computerhardware – Rechnerarchitekturen – Rechnernetze – Betriebssysteme – prozedurale und objektorientierte Programmierung (C und Java) – Automatentheorie und formale Sprachen – Berechenbarkeit und Komplexität – Suchen und Sortieren – Bäume und Graphen – Software-Engineering – Datenbanken – Anwendungsprogrammierung im Internet (HTML, CSS, JavaScript und PHP) – Deep Learning mit neuronalen Netzen
Zahlensysteme und binäre Arithmetik
Nachricht und Information
Codierung und Datenkompression
Verschlüsselung
Schaltalgebra, Schaltnetze und Elemente der Computerhardware
Rechnerarchitekturen
Rechnernetze
Betriebssysteme
Datenbanken
Automatentheorie und formale Sprachen
Berechenbarkeit und Komplexität
Suchen und Sortieren
Bäume und Graphen
prozedurale und objektorientierte Programmierung (C und Java)
Anwendungsprogrammierung im Internet (HTML, CSS, JavaScript und PHP)
Software-Engineering
Agenda:
Studienziel Software-Ingenieur(in) Projekte im Rahmen des Informatik-Studiums Projektbeispiele -IT Partner in Forschungsprojekten
Labor für Software-Technik
-IT Partner in Forschungsprojekten -Einzelanfertigungen für genau einen Kunden -Unterstützung von Startups / Testen von Geschäftsideen -Projekte mit kleinen und mittleren Unternehmen Zusammenarbeit mit FH: Nächste Schritte
Aktuelle Projekte werden nur noch selten von einem einzigen Team an einem einzigen Standort bearbeitet. Um verteilt arbeitende Teams, Auftrag- und Unterauftragnehmer zu koordinieren, ist einerseits ein abgestimmtes Vorgehen notwendig, andererseits müssen Projekte in solchen Szenarios durch Werkzeuge unterstützt werden.
Die problemorientierte und organisationsspezifische Integration von Werkzeugen und Vorgehensmodellen ist ein wesentliches Erfolgskriterium für Organisationen und ihre Projekte. Werkzeuge können Anwender unterstützen und durch vorgegebene Prozesse wie z.B. Risikomanagement oder Berichtswesen führen. Eine nahtlose Integration eines Vorgehensmodells in eine gegebene und akzeptierte Werkzeugumgebung kann sich positiv auf den Erfolg von Prozessanpassungen auswirken.
Effizienzsteigerungen, bspw. durch die automatische Generierung von Vorlagen oder Dokumentation, machen Werkzeugintegrierte Prozesse auch für Entwickler interessant. Auf der anderen Seite müssen Projektspezifische Anforderungen an Werkzeuge und Prozesse berücksichtigt werden, die eine Flexibilität in der Anwendung und Benutzung erforderlich machen.
Dieser 3. Workshop diskutiert in Fortsetzung der Workshops Formalisierung und Anwendung sowie Reife und Qualität unterschiedliche und facettenreiche Fragen, die sich hinsichtlich der Werkzeugunterstützung und der werkzeuggeführten Anwendung von Vorgehensmodellen ergeben. Insbesondere die semi- und vollautomatische Integration von Vorgehensmodellen, die Generierung von Arbeitsumgebungen und Optionen zur Anwenderunterstützung und Anwenderführung spielen hier zentrale Rollen.
Im Zentrum des Workshops steht der Lifecycle von Vorgehensmodellen mit dem Schwerpunkt der Operationalisierung durch Werkzeuge und der geführten/unterstützten Anwendung. Von besonderem Interesse sind Fragen nach der Konzeption und Durchführung von Werkzeugen und Anwenderunterstützung im Kontext verschiedener Vorgehensmodelle, wie bspw. dem V-Modell XT, Scrum, Prince2, RUP, XP.
Themenüberblick:
Der 1-täige Workshop zielt im Wesentlichen auf folgende Themen:
Verbesserung der Akzeptanz von Vorgehensmodellen
Werkzeugunterstützte Prozesseinführung:
Einführung und Einführbarkeit mithilfe von Werkzeugen
Etablierung und Durchsetzung, Do's und Dont's
Kontinuierliche werkzeugunterstützte Prozessverbesserung
Kosten und Nutzen, Abhängigkeiten, Vor- und Nachteile
Werkzeugunterstützung bei der Projektdurchführung
Lose gekoppelte Werkzeuglandschaften vs. integrierte Tools
Werkzeugunterstützte Planung, Steuerung von Agilen Projekten
Unterstützung für kleine, große und verteilte Teams
Werkzeugunterstützung bei Auswahl, Anpassung und Tailoring
Grenzen der Werkzeugunterstützung
Formalisierung und Werkzeugunterstützung von Prozessen und Prozessschritten
Vorgehens- und Reifegradmodelle: V-Model XT, XP, CMMI, RUP, Scrum etc.
Nowadays, in software development usually various models and description fragments are created. Some of these artifacts describe the core of the application, such as the data model or the user interaction model. Other artifacts describe cross-cutting concerns, such as security or the requirement: “every change of data has to be confirmed by the user, before it is written into the database”. During the development process these artifacts are combined, transformed, and finally implemented manually or even automatically. For instance a designer may combine a model of a dialog component specifying an action, that changes data, with a common description of a generic confirm dialog. The integrated dialog description may be afterwards implemented by a programmer. The manual combination of both artifacts and the transformation of the combined description into code are errorprone and hard to change. Industry basically tests or actually uses two approaches for the combination today: 1. At the level of code and execution Aspect-Oriented Programming (AOP) is used [KLM+97]. An aspect defines a cross-cutting concern and the weaving instructions. A code weaver provides the actual weaving at compile or runtime. 2. At the level of design models and analysis models Model-Driven Software Development (MDSD) is used [KWB03]. A model in MDSD is a first class development artifact. Thus models are significantly more abstract than the implementation of code. However, these models cannot be executed. Hence, a abstract model is transformed into another, typically more detailed. A series of such transformations results in executable code. Thereby, a model transformer or a code generator reads some of the artifacts. The other artifacts and the combination rules are implemented in transformation rules or code generation templates (or somewhere else in the transformation / generation approach).
Components and component-based technologies (componentware) are well-known and widely used in software development. There is a large amount of work and research in componentware. The number of available componentware approaches increases steadily and it is quite difficult to keep track of current trends in this area. In this paper, we survey the current state of the art in componentware, introduce and compare several well-known componentware approaches and classify them according to outstanding characteristics. We discuss a list of open issues in resarch and practical use of componentware and offer some proposals for further development. In our practical considerations we focus on embedded systems and business information systems because most of our partners in industry work in one of these two domains. We hope to start a broader discussion on componentware and to get a common understanding, which open issues are most important in research and industry (as a research agenda).