004 Datenverarbeitung; Informatik
Refine
Year of publication
Document Type
- Article (105)
- Monograph/Edited Volume (41)
- Doctoral Thesis (28)
- Conference Proceeding (9)
- Master's Thesis (7)
- Other (2)
- Moving Images (1)
Language
- German (193) (remove)
Keywords
- Informatik (19)
- Didaktik (15)
- Hochschuldidaktik (14)
- Ausbildung (13)
- E-Learning (5)
- Datenschutz (4)
- digitale Bildung (4)
- openHPI (4)
- Identitätsmanagement (3)
- Informatikdidaktik (3)
- Informatikstudium (3)
- Infrastruktur (3)
- Kompetenzen (3)
- cloud (3)
- didactics (3)
- digital education (3)
- informatics (3)
- Big Data (2)
- Blended Learning (2)
- CityGML (2)
- Cloud (2)
- Cloud Computing (2)
- Code (2)
- Computer Networks (2)
- Computernetzwerke (2)
- Datenbank (2)
- FMC (2)
- Hochschullehre (2)
- IPv4 (2)
- IPv6 (2)
- IT-Infrastruktur (2)
- IT-infrastructure (2)
- Identität (2)
- Infrastructure (2)
- Internet Protocol (2)
- Internet Service Provider (2)
- Kompetenz (2)
- MOOCs (2)
- Mensch-Computer-Interaktion (2)
- Navigation (2)
- Network Politics (2)
- Netzpolitik (2)
- Online-Lernen (2)
- Onlinekurs (2)
- Schule (2)
- Software Engineering (2)
- Softwareentwicklung (2)
- Systemstruktur (2)
- Teamarbeit (2)
- Tele-Lab (2)
- Tele-Teaching (2)
- Theoretische Informatik (2)
- Visualisierung (2)
- cloud computing (2)
- code (2)
- conference (2)
- education (2)
- higher education (2)
- identity management (2)
- navigation (2)
- tele-TASK (2)
- visualization (2)
- 3D computer graphics (1)
- 3DCityDB (1)
- ACINQ (1)
- ADFS (1)
- ARCS Modell (1)
- ASIC (1)
- Active Directory Federation Services (1)
- Adaption (1)
- Algorithmen (1)
- Analyse (1)
- Andere Fachrichtungen (1)
- Anerkennung (1)
- Anfragesprache (1)
- Angriffe (1)
- Anrechnung (1)
- Antwortmengenprogrammierung (1)
- Anwendungsvirtualisierung (1)
- Application Server (1)
- Arabidopsis thaliana (1)
- Assessment (1)
- Audience Response Systeme (1)
- Aufzählung (1)
- Augmented Reality (1)
- Australian securities exchange (1)
- Authentifizierung (1)
- Authorization (1)
- Autismus (1)
- Autorisierung (1)
- BCCC (1)
- BCH (1)
- BPM (1)
- BTC (1)
- Bachelorstudium (1)
- Barrierefreiheit (1)
- Basic Storage Anbieter (1)
- Batchverarbeitung (1)
- Benutzerinteraktion (1)
- Benutzeroberfläche (1)
- Berufsausbildung (1)
- Betrachtungsebenen (1)
- Beweisaufgaben (1)
- Bildverarbeitung (1)
- Bioacoustics (1)
- Bioakustik (1)
- Biocomputing (1)
- Biometrie (1)
- BitShares (1)
- Bitcoin Core (1)
- Blockchain Auth (1)
- Blockchain-Konsortium R3 (1)
- Blockheizkraftwerke (1)
- Blockkette (1)
- Blockstack (1)
- Blockstack ID (1)
- Blumix-Plattform (1)
- Blöcke (1)
- Byzantine Agreement (1)
- C-Test (1)
- COVID-19 (1)
- Canvas (1)
- Citymodel (1)
- Classification (1)
- Codeverständnis (1)
- Codierung (1)
- Colored Coins (1)
- Complementary Circuits (1)
- Computergestützes Training (1)
- Computergrafik (1)
- Conceptual (1)
- Constraint (1)
- Constraint-Programmierung (1)
- Constructive solid geometry (1)
- DAO (1)
- DNA (1)
- DNA computing (1)
- DNS (1)
- DPoS (1)
- Data Literacy (1)
- Data Science (1)
- Database (1)
- Datenanalyse (1)
- Datenbanken (1)
- Datenschutz-sicherer Einsatz in der Schule (1)
- Datensicht (1)
- Degenerationsprozesse (1)
- Delegated Proof-of-Stake (1)
- Delphine (1)
- Design Thinking (1)
- Didaktische Konzepte (1)
- Digital Engineering (1)
- Digital Game Based Learning (1)
- Digital World (1)
- Digitalisierung (1)
- Digitalisierung von Produktionsprozessen (1)
- Diskussionskultur (1)
- Distanzlehre (1)
- Distributed Proof-of-Research (1)
- Diversität (1)
- Dolphins (1)
- Dreidimensionale Computergraphik (1)
- Durchlässigkeit (1)
- E-Wallet (1)
- ECDSA (1)
- Effizienz (1)
- Eingebettete Systeme (1)
- Eisenbahnnetz (1)
- Empirische Untersuchung (1)
- Energiesparen (1)
- Enterprise Search (1)
- Entwurf (1)
- Entwurfsmuster (1)
- Entwurfsraumexploration (1)
- Erfolgsmessung (1)
- Eris (1)
- Error-Detection Circuits (1)
- Erweiterte Realität (1)
- Ether (1)
- Ethereum (1)
- European Union (1)
- Europäische Union (1)
- Explorative Datenanalyse (1)
- FIDO (1)
- FOSS (1)
- FPGA (1)
- Fachinformatik (1)
- Fachinformatiker (1)
- Federated Byzantine Agreement (1)
- Feedback (1)
- Fehlererkennung (1)
- Fehlerinjektion (1)
- Fehlerkorrektur (1)
- Fehlertoleranz (1)
- Fehlvorstellung (1)
- Fertigkeiten (1)
- FollowMyVote (1)
- Fork (1)
- Formale Sprachen und Automaten (1)
- Formale Verifikation (1)
- Forschung (1)
- Fundamental Modeling Concepts (1)
- Fußgängernavigation (1)
- Game-based learning (1)
- German schools (1)
- Geschäftsanwendungen (1)
- Geschäftsmodell (1)
- Grammatikalische Inferenz (1)
- Graph-basiertes Ranking (1)
- Graphfärbung (1)
- Gridcoin (1)
- Gruppierung von Prozessinstanzen (1)
- HDI (1)
- HEI (1)
- HPI Forschung (1)
- HPI Schul-Cloud (1)
- HPI research (1)
- Hard Fork (1)
- Hardware-Software-Co-Design (1)
- Hashed Timelock Contracts (1)
- Hasso Plattner Institute (1)
- Hasso-Plattner-Institut (1)
- Hauptspeicherdatenbank (1)
- Heterogenität (1)
- Hochschule (1)
- Hochschulkurse (1)
- IBM 360 (1)
- ICT competencies (1)
- ISSEP (1)
- Identity Management (1)
- In-Memory (1)
- Informatics Education (1)
- Informatik B. Sc. (1)
- Informatik für alle (1)
- Informatiksystem (1)
- Informatikunterricht (1)
- Informationsextraktion (1)
- Informationskompetenz (1)
- Informatische Kompetenzen (1)
- Inhalte (1)
- Inhaltsanalyse (1)
- Innovation (1)
- Interactive system (1)
- Interaktionstechniken (1)
- Interaktives System (1)
- Internet (1)
- Internet der Dinge (1)
- Internet of Things (1)
- Interventionen (1)
- Intuition (1)
- Inverted Classroom (1)
- IoT (1)
- Japanese Blockchain Consortium (1)
- Japanisches Blockchain-Konsortium (1)
- Java 2 Enterprise Edition (1)
- Java Virtual Machine (1)
- KI (1)
- Kette (1)
- Klassifikation (1)
- Kollaboration (1)
- Kompetenzentwicklung (1)
- Kompetenzerwerb (1)
- Kompetenzmessung (1)
- Konferenz (1)
- Konsensalgorithmus (1)
- Konsensprotokoll (1)
- Konzeptionell (1)
- LMS (1)
- Learning Analytics (1)
- Lebenslanges Lernen (1)
- Lehr- und Lernformate (1)
- Lehramtsstudium (1)
- Lehre (1)
- Lehrer*innenbildung (1)
- Lehrevaluation (1)
- Lern-App (1)
- Lernerfolg (1)
- Lernmotivation (1)
- Lernsoftware (1)
- Lernzentrum (1)
- Lightning Network (1)
- Lively Kernel (1)
- Liveness (1)
- Lock-Time-Parameter (1)
- Lückentext (1)
- MERLOT (1)
- MOOC (1)
- Marketing (1)
- Marktübersicht (1)
- Mehr-Faktor-Authentifizierung (1)
- Mehrfamilienhäuser (1)
- Metamodell (1)
- Micropayment-Kanäle (1)
- Microsoft Azur (1)
- Mobiles Lernen (1)
- Model Based Engineering (1)
- Model Checking (1)
- Model Driven Architecture (1)
- Model-driven SOA Security (1)
- Modell-getriebene SOA-Sicherheit (1)
- Modellbasiert (1)
- Modellgetriebene Architektur (1)
- Modellierung (1)
- Monitoring (1)
- Mustererkennung (1)
- NASDAQ (1)
- NameID (1)
- Namecoin (1)
- Nebenläufigkeit (1)
- Netzneutralität (1)
- New On-Line Error-Detection Methode (1)
- OAuth (1)
- Off-Chain-Transaktionen (1)
- Onename (1)
- Online Course (1)
- Online-Learning (1)
- Onlinekurse (1)
- Onlinelehre (1)
- Ontologie (1)
- Ontology (1)
- Open Source (1)
- OpenBazaar (1)
- OpenID Connect (1)
- OpenOLAT (1)
- Optimierungen (1)
- Oracles (1)
- Orphan Block (1)
- P2P (1)
- PAVM (1)
- Parallele Datenverarbeitung (1)
- Pattern Recognition (1)
- Patterns (1)
- Peer-Review (1)
- Peer-to-Peer Netz (1)
- Peercoin (1)
- Personas (1)
- PoB (1)
- PoS (1)
- PoW (1)
- PostGIS (1)
- Pre-RS Traceability (1)
- Privacy (1)
- Problemlösen (1)
- Prognosen (1)
- Programmierausbildung (1)
- Programmieren (1)
- Programmierkonzepte (1)
- Projekte (1)
- Proof-of-Burn (1)
- Proof-of-Stake (1)
- Proof-of-Work (1)
- Prozess Verbesserung (1)
- Prozessmodell (1)
- Prozessmodellierung (1)
- Python (1)
- Re-Engineering (1)
- Realzeitsysteme (1)
- Rendering (1)
- Ripple (1)
- SCP (1)
- SHA (1)
- SOA Security (1)
- SOA Sicherheit (1)
- SPV (1)
- SSO (1)
- Scene graph systems (1)
- Schlüsselkompetenzen (1)
- Schwierigkeitsgrad (1)
- Secure Digital Identities (1)
- Secure Enterprise SOA (1)
- Self-Checking Circuits (1)
- Semantic Web (1)
- Seminarkonzept (1)
- Sichere Digitale Identitäten (1)
- Simplified Payment Verification (1)
- Single Sign On (1)
- Single-Sign-On (1)
- Skalierbarkeit der Blockchain (1)
- Skript-Entwicklungsumgebungen (1)
- Slock.it (1)
- Smalltalk (1)
- Soft Fork (1)
- Software (1)
- Software architecture (1)
- Software-Testen (1)
- Softwarearchitektur (1)
- Spaltenlayout (1)
- Stadtmodell (1)
- Statistikprogramm R (1)
- Steemit (1)
- Stellar Consensus Protocol (1)
- Storj (1)
- Strategie (1)
- Strukturverbesserung (1)
- Student Engagement (1)
- Studentenjobs (1)
- Studie (1)
- Studienabbrecher (1)
- Studienabbruch (1)
- Studienanfänger*innen (1)
- Studiendauer (1)
- Studieneingangsphase (1)
- Studiengestaltung (1)
- Studiengänge (1)
- Studienverläufe (1)
- Studierendenperformance (1)
- Studium (1)
- Suche (1)
- System structure (1)
- Systementwurf (1)
- Szenengraph (1)
- Test (1)
- Texturen (1)
- The Bitfury Group (1)
- The DAO (1)
- Timed Automata (1)
- Transaktion (1)
- Transaktionen (1)
- Trust Management (1)
- Two-Way-Peg (1)
- Umfrage (1)
- Unspent Transaction Output (1)
- Unterricht mit digitalen Medien (1)
- User Experience (1)
- VM (1)
- VM Integration (1)
- Verlässlichkeit (1)
- Verträge (1)
- Virtual Desktop Infrastructure (1)
- Virtual Reality (1)
- Virtualisierung (1)
- Virtuelle Maschine (1)
- Vorkenntnisse (1)
- Vorwissen (1)
- Wartung von Lehrveranstaltungen (1)
- Watson IoT (1)
- Weiterbildung (1)
- Werbung (1)
- Werkzeuge (1)
- Wissenschaftliches Arbeiten (1)
- Zielvorgabe (1)
- Zookos Dreieck (1)
- Zookos triangle (1)
- algorithms (1)
- altchain (1)
- alternative chain (1)
- animated PCA (1)
- animierte PCA (1)
- answer set programming (1)
- application virtualization (1)
- atomic swap (1)
- augmented reality (1)
- authentication (1)
- automotive electronics (1)
- basic cloud storage services (1)
- batch processing (1)
- betriebliche Weiterbildungspraxis (1)
- bidirectional payment channels (1)
- bio-computing (1)
- biometrics (1)
- bitcoins (1)
- blockchain (1)
- blockchain consortium (1)
- blockchain-übergreifend (1)
- blocks (1)
- blumix platform (1)
- business process modeling (1)
- chain (1)
- coding and information theory (1)
- cogeneration units (1)
- competence development (1)
- competencies (1)
- computer graphics (1)
- computer science (1)
- computer science education (CSE) (1)
- confirmation period (1)
- consensus algorithm (1)
- consensus protocol (1)
- constraint (1)
- constraint programming (1)
- contest period (1)
- contracts (1)
- cross-chain (1)
- cryptology (1)
- data analytics (1)
- data in business processes (1)
- data modeling (1)
- data requirements (1)
- data security (1)
- data structures and information theory (1)
- data view (1)
- decentralized autonomous organization (1)
- dependability (1)
- design (1)
- design space exploration (1)
- dezentrale autonome Organisation (1)
- didaktisches Konzept (1)
- difficulty (1)
- difficulty target (1)
- digital enlightenment (1)
- digital learning platform (1)
- digital sovereignty (1)
- digital unterstützter Unterricht (1)
- digital world (1)
- digitale Aufklärung (1)
- digitale Hochschullehre (1)
- digitale Infrastruktur für den Schulunterricht (1)
- digitale Lernplattform (1)
- digitale Souveränität (1)
- digitalization (1)
- digitization of production processes (1)
- doppelter Hashwert (1)
- double hashing (1)
- duale IT-Ausbildung (1)
- e-Assessment (1)
- e-Learning (1)
- e-learning (1)
- efficiency (1)
- embedded-systems (1)
- energy savings (1)
- enterprise search (1)
- enumeration (1)
- error correction (1)
- error detection (1)
- fault injection (1)
- fault tolerance (1)
- federated voting (1)
- forecasts (1)
- forschendes Lernen (1)
- forschungsorientiertes Lernen (1)
- freie Daten (1)
- freie Software (1)
- fächerverbindend (1)
- general (1)
- general education in computer science (1)
- geovisualization (1)
- gewerkschaftlich unterstützte Weiterbildungspraxis (1)
- global constraints (1)
- globale Constraints (1)
- grammar inference (1)
- graph-based ranking (1)
- hardware-software-codesign (1)
- hashrate (1)
- human computer interaction (1)
- identity (1)
- image processing (1)
- individuelle Lernwege (1)
- information extraction (1)
- informatische Allgemeinbildung (1)
- informatische Grundkompetenzen (1)
- infrastructure (1)
- innovation (1)
- intelligente Verträge (1)
- inter-chain (1)
- interaction techniques (1)
- intuition (1)
- key competencies (1)
- klinisch-praktischer Unterricht (1)
- labour union education (1)
- lebenslanges Lernen (1)
- ledger assets (1)
- lifelong learning (1)
- linear code (1)
- linearer Code (1)
- lively kernel (1)
- liveness (1)
- logische Ergänzung (1)
- market study (1)
- maschinelles Lernen (1)
- merged mining (1)
- merkle root (1)
- meta model (1)
- micropayment (1)
- micropayment channels (1)
- miner (1)
- mining (1)
- mining hardware (1)
- minting (1)
- misconception (1)
- mobiles Lernen (1)
- model-based (1)
- model-driven architecture (1)
- multi core data processing (1)
- multi factor authentication (1)
- multi-family residential buildings (1)
- neue Online-Fehlererkennungsmethode (1)
- nichtlineare Projektionen (1)
- nonce (1)
- nonlinear projections (1)
- off-chain transaction (1)
- on-chip (1)
- online course (1)
- online-learning (1)
- open learning (1)
- open source (1)
- open source software (1)
- optimizations (1)
- pedestrian navigation (1)
- peer-to-peer network (1)
- pegged sidechains (1)
- process improvement (1)
- process instance grouping (1)
- process model (1)
- process modeling languages (1)
- process modelling (1)
- programming (1)
- public cloud storage services (1)
- quorum slices (1)
- railway network (1)
- real-time systems (1)
- rootstock (1)
- scalability of blockchain (1)
- scarce tokens (1)
- school (1)
- scripting environments (1)
- search (1)
- selbstprüfende Schaltungen (1)
- semantisches Netz (1)
- sidechain (1)
- smart contracts (1)
- smartphone (1)
- software (1)
- software development (1)
- software engineering (1)
- software selection (1)
- software testing (1)
- spatio-temporal sensor data (1)
- statistics program R (1)
- studentische Forschung (1)
- technische Rahmenbedingungen (1)
- tele-lab (1)
- tele-teaching (1)
- test (1)
- textures (1)
- timed automata (1)
- tools (1)
- transaction (1)
- user interaction (1)
- verification (1)
- virtual 3D city models (1)
- virtual desktop infrastructure (1)
- virtualization (1)
- virtuelle 3D-Stadtmodelle (1)
- visual languages (1)
- visuelle Sprachen (1)
- vocational training (1)
- wearables (1)
- wissenschaftliches Arbeiten (1)
- wissenschaftliches Schreiben (1)
- öffentliche Cloud Speicherdienste (1)
Institute
- Institut für Informatik und Computational Science (108)
- Hasso-Plattner-Institut für Digital Engineering gGmbH (32)
- Extern (16)
- Bürgerliches Recht (12)
- Institut für Mathematik (9)
- Hasso-Plattner-Institut für Digital Engineering GmbH (8)
- Fachgruppe Betriebswirtschaftslehre (4)
- Institut für Umweltwissenschaften und Geographie (3)
- Department Linguistik (1)
- Interdisziplinäres Zentrum für Kognitive Studien (1)
Inhaltsverzeichnis 1 Einführung 2 Aspektorientierte Programmierung 2.1 Ein System als Menge von Eigenschaften 2.2 Aspekte 2.3 Aspektweber 2.4 Vorteile Aspektorientierter Programmierung 2.5 Kategorisierung der Techniken und Werkzeuge f ¨ ur Aspektorientierte Programmierung 3 Techniken und Werkzeuge zur Analyse Aspektorientierter Softwareprogramme 3.1 Virtual Source File 3.2 FEAT 3.3 JQuery 3.4 Aspect Mining Tool 4 Techniken und Werkzeuge zum Entwurf Aspektorientierter Softwareprogramme 4.1 Concern Space Modeling Schema 4.2 Modellierung von Aspekten mit UML 4.3 CoCompose 4.4 Codagen Architect 5 Techniken und Werkzeuge zur Implementierung Aspektorientierter Softwareprogramme 5.1 Statische Aspektweber 5.2 Dynamische Aspektweber 6 Zusammenfassung
Diese Arbeit umfasst die Archivierung, Visualisierung anhand bioinformatischer Methoden und Interpretation eines vorhandenen Messdatensatz (Element [ICP-MS]-, Ionen [IC]- und Metabolitdaten [RP-HPLC und GC/TOF-MS]) der Pflanze Arabidopsis thaliana getrennt in Blätter und Wurzeln. Die Pflanzen wurden den sechs Mangelsituationen der Nährstoffe Eisen, Kalium, Magnesium, Stickstoff, Phosphor und Schwefel ausgesetzt und zu neun Messzeitpunkten [0.5-, 1-, 2-, 3-, 4-, 5-, 6-, 7-in Tagen und „resupply“ (vier Stunden nach dem vierten Tag)] analysiert. Es erfolgte die Integration der Messdaten in eine SQlite-Datenbank. Die Veranschaulichung erfolgte mit Hilfe der Programmiersprache R. Anhand einiger Pakete zur Erweiterung des Funktionsumfangs von R wurde erstens eine Schnittstelle zur SQLite- Datenbank hergestellt, was ein Abfragen an diese ermöglichte und zweitens verhalfen sie zu der Erstellung einer Reihe zusätzlicher Darstellungsformen (Heatmap, Wireframe, PCA). Selbstgeschriebene Skripte erlaubten den Datenzugriff und die grafische Ausgabe als z. B. Heatmaps. In der Entstehung dieser Arbeit sind weiterhin zwei weitere Visualisierungsformen von PCA-Daten entwickelt worden: Das Abstandsdiagramm und die animierte PCA. Beides sind hilfreiche Werkzeuge zur Interpretation von PCA-Plots eines zeitlichen Verlaufes. Anhand der Darstellungen der Element- und Ionendaten ließen sich die Nährstoffmangelsituationen durch Abnahme der entsprechenden Totalelemente und Ionen nachweisen. Weiterhin sind starke Ähnlichkeiten der durch RP-HPLC bestimmten Metaboliten unter Eisen-, Kalium und Magnesiummangel erkannt worden. Allerdings gibt es nur eine geringe Anzahl an Interkationen der Metabolitgehalte, da der Großteil der Metabolitlevel im Vergleich zur Kontrolle unverändert blieb. Der Literaturvergleich mit zwei Publikationen, die den Phosphat- und Schwefelmangel in Arabidopsis thaliana untersuchten, zeigte ein durchwachsenes Ergebnis. Einerseits gab es eine gleiche Tendenz der verglichenen Aminosäuren zu verzeichen, aber andererseits wiesen die Visualisierungen auch Gegensätzlichkeiten auf. Der Vergleich der mit RP-HPLC und GC/TOF-MS gemessenen Metaboliten erbrachte ein sehr kontroverses Ergebnis. Zum einen wurden Übereinstimmungen der gleichen Metaboliten durch gemeinsame Cluster in den Heatmaps beobachtet, zum anderen auch Widersprüche, exemplarisch in den Abstandsdiagrammen der Blätterdaten jedes Verfahrens, in welchen unterschiedliche Abstandshöhepunkte erkennbar sind.
(1) Über die Notwendigkeit, die bisherige Informatik in eine Grundlagenwissenschaft und eine Ingenieurwissenschaft aufzuspalten (2) Was ist Ingenieurskultur? (3) Das Kommunikationsproblem der Informatiker und ihre Unfähigkeit, es wahrzunehmen (4) Besonderheiten des Softwareingenieurwesens im Vergleich mit den klassischen Ingenieurdisziplinen (5) Softwareingenieurspläne können auch für Nichtfachleute verständlich sein (6) Principles for Planning Curricula in Software Engineering
1. Applikationen für weitverteiltes Rechnen Dennis Klemann, Lars Schmidt-Bielicke, Philipp Seuring 2. Das Globus-Toolkit Dietmar Bremser, Alexis Krepp, Tobias Rausch 3. Open Grid Services Architecture Lars Trieloff 4. Condor, Condor-G, Classad Stefan Henze, Kai Köhne 5. The Cactus Framework Thomas Hille, Martin Karlsch 6. High Performance Scheduler mit Maui/PBS Ole Weidner, Jörg Schummer, Benedikt Meuthrath 7. Bandbreiten-Monitoring mit NWS Alexander Ritter, Gregor Höfert 8. The Paradyn Parallel Performance Measurement Tool Jens Ulferts, Christian Liesegang 9. Grid-Applikationen in der Praxis Steffen Bach, Michael Blume, Helge Issel
1. Grundlagen der Softwarevisualisierung Johannes Bohnet und Jürgen Döllner 2. Visualisierung und Exploration von Softwaresystemen mit dem Werkzeug SHriMP/Creole Alexander Gierak 3. Annex: SHriMP/Creole in der Anwendung Nebojsa Lazic 4. Metrikbasierte Softwarevisualisierung mit dem Reverse-Engineering-Werkzeug CodeCrawler Daniel Brinkmann 5. Annex: CodeCrawler in der Anwendung Benjamin Hagedorn 6. Quellcodezeilenbasierte Softwarevisualisierung Nebojsa Lazic 7. Landschafts- und Stadtmetaphern zur Softwarevisualisierung Benjamin Hagedorn 8. Visualisierung von Softwareevolution Michael Schöbel 9. Ergebnisse und Ausblick Johannes Bohnet Literaturverzeichnis Autorenverzeichnis
1 Einleitung 1.1 Motivation 1.2 Aufgabenstellung 1.3 Aufbau der Arbeit 2 Fachliches Umfeld 2.1 Grid Computing 2.2 Idle Time Computing 3 Ressourcenpartitionierung 3.1 Ressourcenpartitionierung und Scheduling 3.2 Ressourcenpartitionierung in Idle Time Computing 3.2.1 Administrative Kontrolle der Ressourcen 3.2.2 Mindestgarantien zur Sicherstellung der Lauffähigkeit 3.3 Vorhandene Lösungen und verwandte Arbeiten 3.3.3 Ressourcenmanagement im Globus Toolkit 3.3.4 Ressourcenmanagement in Condor 3.3.5 Das GARA Framework 3.3.6 Distributed Resource Management Application API 3.3.7 Grid Resource Allocation Agreement Protocol 3.3.8 SNAP 3.3.9 OGSI-Agreement 3.3.10 PBS/Maui und andere Batch Systeme 3.3.11 Wide Area Distributed Computing 3.3.12 Weitere verwandte Arbeiten 3.3.13 Überlegungen zum Ressourcenbedarf 4 Ressourcenkontrolle in Desktopbetriebssystemen 4.1 Ressourcen 4.2 Ressourcenpartitionierung unter Linux 4.2.14 Festplattenkapazität 4.2.15 Arbeitsspeicher 4.2.16 Netzwerkbandbreite 4.2.17 CPU Kapazität 4.3 Ressourcenpartitionierung unter Microsoft Windows XP 4.3.18 Festplattenkapazität 4.3.19 Arbeitsspeicher 4.3.20 Netzwerkbandbreite 4.3.21 CPU Kapazität 4.4 Fazit 5 Entwurf und Design des Frameworks 5.1 Entwurfsgrundlage - Komponentenarchitektur 5.2 Architektur 5.2.22 Broker Server 5.2.23 Broker Software auf den Clients 5.2.24 Schnittstellen 5.3 Komponententypmodell 5.4 Ressourcenidentifikation und Ressourcenzuordnung 5.5 Anbindung ans Grid 5.6 Datenbankentwurf 5.7 XML RPC Schnittstelle 6 Implementierung 6.1 Broker Server 6.1.25 Datenbank 6.1.26 Komponenten 6.1.27 Webserverskripte 6.1.28 Database Crawler 6.2 Komponenten 6.2.29 Network 6.2.30 DSCP 6.2.31 Quota 6.2.32 FSF 6.3 Linux Client 6.3.33 Broker Client 6.3.34 Komponenten 6.4 Windows Client 6.5 Abhängigkeiten 7 Evaluierung 7.1 Durchgeführte Test- und Anwendungsfälle 7.1.35 Test der Clientsoftware 7.1.36 Test der Serversoftware 7.1.37 Durchführbare Anwendungsfälle 7.2 Evaluierung der Frameworkimplementierung 7.2.38 Performanz der Serverimplementierung 7.2.39 Zuverlässigkeit der Partitionierungen 7.3 Evaluierung von Traffic Shaping mit iproute2 7.3.40 Szenario 1 7.3.41 Szenario 2 7.3.42 Szenario 3 7.3.43 Fazit 8 Zusammenfassung und Ausblick 8.1 Fazit 8.2 Weiterentwicklung 8.2.44 Weiterentwicklungen auf Entwurfsebene 8.2.45 Weiterentwicklungen auf Implementierungsebene Anhang A: Details zum Datenbankentwurf Anhang B: Bildschirmfotos der Weboberfläche Anhang C: Quellcode Linux Broker Client Anhang D: Inhalt des beiliegenden Datenträgers
Vorwort 1. Einleitung 2. Statische vs. dynamische Analyse 3. Kriterien für den Erfolg statischer Quellcodeanalysemethoden 3.1. Theoretische Vorüberlegungen 3.2. 1. Kriterium: Verfügbarkeit des Quellcodes 3.3. 2. Kriterium: Unterstützung der Programmiersprache 3.4. 3. Kriterium: Zulassung von „echten“ Programmen der Problemdomäne 3.5. 4. Kriterium: Bewältigung der auftretenden Komplexität 3.6. 5. Kriterium: Schutz vor böswilliger Speichermanipulation 3.7. 6. Kriterium: Garantie für die Umgebung des laufenden Prozesses 3.8. Fazit 3.9. Verwandte Arbeiten 4. Bewertung von statischen Methoden für C/C++ typische Programme 4.1. Hintergrund 4.2. Prämissen 4.3. 1. Problemfeld: Programmgröße und Interferenz 4.4. 2. Problemfeld: Semantik 4.5. 3. Problemfeld: Programmfluss 4.6. 4. Problemfeld: Zeigerarithmetik 4.7. Dynamische Konzepte zur Erfüllung des fünften Kriteriums auf Quellcodebasis 4.8. Fazit 4.9. Verwandte Arbeiten 5. Kriterien für den Erfolg dynamischer Ansätze 5.1. Hintergrund 5.2. Verfügbarkeit des Quellcodes 5.3. Unterstützung der Programmiersprache 5.4. Zulassung von „echten“ Programmen aus der Problemdomäne 5.5. Bewältigung der auftretenden Komplexität 5.6. Schutz vor böswilliger Speichermanipulation 5.7. Garantie für die Umgebung des laufenden Prozesses 5.8. Fazit 6. Klassifikation und Evaluation dynamischer Ansätze 6.1. Hintergrund 6.2. Quellcodesubstitution 6.3. Binärcodemodifikation/Binary-Rewriting 6.4. Maschinencodeinterpreter 6.5. Intrusion-Detection-Systeme 6.6. Virtuelle Maschinen/Safe Languages 6.7. Mechanismen zur „Härtung“ von bestehenden Code 6.8. SandBoxing/System-Call-Interposition 6.9. Herkömmliche Betriebssystemmittel 6.10. Access-Control-Lists/Domain-Type-Enforcement 6.11. Fazit 7. Sichere Ausführung nicht vertrauenswürdiger Programme im Kontext von RealTimeBattle 7.1. Vorstellung von RealTimeBattle 7.2. Charakterisierung des Problems 7.3. Alternative Lösungsvarianten/Rekapitulation 7.4. Übertragung der Ergebnisse statischer Analysemethoden auf RealTimeBattle 7.5. Übertragung der Ergebnisse dynamischer Analysemethoden auf RealTimeBattle 7.5.1. Vorstellung der RSBAC basierten Lösung 7.5.2. Vorstellung der Systrace basierten Lösung 7.6. Fazit 7.7. Verwandte Arbeiten 8. Sichere Ausführung nicht vertrauenswürdiger Programme im Kontext von Asparagus 8.1. Vorstellung von Asparagus 8.2. Charakterisierung des Problems 8.3. Lösung des Problems 8.4. Fazit 8.5. Verwandte Arbeiten 9. Sichere Ausführung nicht vertrauenswürdiger Programme im Kontext vom DCL 9.1. Vorstellung des DCL 9.2. Charakterisierung des Problems 9.3. Experimente im DCL und die jeweilige Lösung 9.3.1. Foucaultsches Pendel 9.3.2. Lego Mindstorm Roboter 9.3.3. Hau den Lukas 9.4. Fazit 9.5. Verwandte Arbeiten 10. Sichere Ausführung nicht vertrauenswürdiger Programme im Kontext der semiautomatischen Korrektur von Betriebssystemarchitektur-Übungsaufgaben 10.1. Vorstellung des Übungsbetriebes zur Vorlesung „Betriebssystsemarchitektur 10.2. Charakterisierung des Problems 10.3. Lösungsvorschläge 10.3.1. Lösungsvorschläge für das Authentifizierungs-Problem 10.3.2. Lösungsvorschläge für das Transport-Problem 10.3.3. Lösungsvorschläge für das Build-Problem 10.3.4. Lösungsvorschläge für das Ausführungs-Problem 10.3.5. Lösungsvorschläge für das Ressourcen-Problem 10.3.6. Lösungsvorschläge für das Portabilitäts-Problem 10.4. Fazit 10.5. Verwandte Arbeiten 11. Schlussbetrachtungen Literaturverzeichnis Anhang -create_guardedrobot.sh: Die RealTimeBattle Security Infrastructure -vuln.c: Ein durch Pufferüberlauf ausnutzbares Programm -exploit.c: Ein Beispielexploit für vuln.c. -aufg43.c: Lösung für eine Aufgabe im Rahmen der Betriebssystemarchitektur-Übung -Handout: Sichere Ausführung nicht vertrauenswürdiger Programme
Informatischen Hochleistern über die Schulter geschaut : was können schwache Problemlöser lernen
(2009)
Leistungsstarke Problemlöser zeigen ein deutlich anderes Vorgehen beim Bearbeiten von typischen Informatikproblemen als schwächere Problemlöser, das hat eine Studie mit Hochleistern und einer Vergleichsgruppe mit Informatikstudierenden ergeben. Auffällig war das Fehlen informatikspezifischer Herangehensweisen bei der Problembearbeitung durch die Vergleichsgruppe, obwohl ihnen die dazu notwendigen Werkzeuge wie etwa Baumstrukturen oder Rekursion durchaus bekannt waren. Die Frage, wie nun die deutlich effizienteren Strategien der Hochleister didaktisch aufgearbeitet werden können, um sie an schwache Problemlöser zu vermitteln, wird im vorliegen Beitrag anhand der Konzeption eines Lehrvideos diskutiert.
Mit hochschuldidaktischer Forschung zur Informatik soll aus einem traditionellen Hardwarepraktikum ein attraktives Entwurfs- und Anwendungspraktikum für Mikrosysteme (MSE) werden, das ein unverzichtbarer Bestandteil des Informatikstudiums ist. Diese Neugestaltung der Lehre wurde aufgrund des Bologna-Prozesses und der zunehmenden Präsenz multifunktionaler eingebetteter Mikrosysteme (EMS) im täglichen Leben notwendig. Ausgehend von einer Lehrveranstaltungsanalyse werden Vorschläge für die Kompetenzorientierung abgeleitet. Es wird gezeigt, dass für eine Verfeinerung des Ansatzes ein wissenschaftlich fundiertes Verständnis der erwarteten Kompetenzen erforderlich ist. Für den aufgezeigten Forschungsbedarf werden ein Ansatz zur Beschreibung des notwendigen Mikrosystemverständnisses dargestellt und Forschungsfelder zu Aspekten des Kompetenzbegriffs im Kontext der Lehrveranstaltung beschrieben.
Ein handlungsorientiertes, didaktisches Training für Tutoren im Bachelorstudium der Informatik
(2009)
Die didaktisch-pädagogische Ausbildung studentischer Tutoren für den Einsatz im Bachelorstudium der Informatik ist Gegenstand dieser Arbeit. Um die theoretischen Inhalte aus Sozial- und Lernpsychologie handlungsorientiert und effizient zu vermitteln, wird das Training als Lehrform gewählt. Die in einer Tutorübung zentrale Methode der Gruppenarbeit wird dabei explizit und implizit vermittelt. Erste praktische Erfahrungen mit ihrer zukünftigen Rolle gewinnen die Tutoren in Rollenspielen, wobei sowohl Standardsituationen als auch fachspezifisch und pädagogisch problematische Situationen simuliert werden. Während die Vermittlung der genannten Inhalte und die Rollenspiele im Rahmen einer Blockveranstaltung vor Beginn des Semesters durchgeführt werden, finden während des Semesters Hospitationen statt, in der die Fähigkeiten der Tutoren anhand eines standardisierten Bewertungsbogens beurteilt werden.