Belépés címtáras azonosítással
magyar nyelvű adatlap
Software Informatics
A tantárgy angol neve: Software Informatics (in English)
Adatlap utolsó módosítása: 2006. július 1.
Tantárgy lejárati dátuma: 2015. január 31.
Gépészmérnöki Kar
Integrált Mérnökképzés Modul
Választható tárgy
Név:
Beosztás:
Tanszék, Int.:
Sütő Zoltán
egyetemi adjunktus
Automatizálási és Alkalma-zott Informatikai
A strukturált programozási technikák ismerete nem szükséges, de mindenképpen előnyös a tárgy anyagának hatékony elsajátításához.
–
A tantárgy célja a gépészmérnök hallgatók megismertetése a modern szoftvertervezés legfontosabb kérdésköreivel, a szoftvertechnológia elméletével és gyakorlatával. A tárgy teljesítése után a hallgatók megfelelő jártasságra tesznek szert a terület legfontosabb fogalmainak és szaknyelvének használatában, lehetővé téve a szoftvertervezés szakértőivel való hatékonyabb együttműködést. A fő hangsúlyt az objektum-orientált szoftverfejlesztés, a párhuzamos (konkurens) rendszerek és az elosztott rendszerek megismertetésére helyeztük. A tárgy keretében bemutatásra kerülő példaprogramok a Java nyelvet használják.
1. Introduction to Software Design
week 1. General software requirements, software quality. The phases of a software project, the Classic Life-cycle Model and the Object-oriented Life-cycle Model. Introduction of the Java programming environment.
2. The Object Oriented Approach
week 2. Basic concepts of object oriented approach, classes and objects, instantiation, encapsulation, information hiding, message passing. Java classes.
week 3. Inheritance. Polymorphism.
week 4. Abstract classes, interface classes.
week 5. Programming of the World Wide Web, Java applets.
week 6. OOP design. Abstraction, specialization, generalization, classification. Visual development, the Unified Modeling Language (UML). Object diagram, collaboration diagram, class diagram, sequence diagram, use case diagram. Association of objects, parent-child relationship, whole-part relationship (aggregation), acquaintance relationship, use relationship, obligatory or optional relationship.
3. Data Structures, Algorithms
week 7. Static and dynamic data structures. Arrays, multi-dimensional arrays. Linked lists, double linked lists, operation with linked lists, searching items, inserting, appending new items. Queues, stacks, heaps.
week 8. Hierarchical data structures, graphs, trees, binary trees. Graph searching algorithms, depth-first, breadth-first, best-first. Recursion.
4. Concurrent Systems
week 9. Multiprogramming in Java, multithreading. Lightweight processes - threads. Creating, starting and stopping threads. The life cycle of threads, thread states. Switching between threads, scheduling algorithms, thread priorities, time-sharing.
week 10. Cooperating threads, synchronization. Shared resources, critical sessions, mutual exclusion, the monitor concept. The producer-consumer example.
week 11. Communication between threads, piped streams. Deadlock and starvation.
5. Distributed Systems
week 12. Motivations. Communication networks, network topologies, routing, switching modes. Network models, the TCP/IP and the ISO/OSI model, network layers, communication protocols.
week 13. Connection-oriented and connectionless communications, the TCP and UDP protocols. The client-server communication model.
week 14. Remote Method Invocation (RMI).
(előadás, gyakorlat, laboratórium):
A tárgy előadásokra épül, melyet az ismeretek elsajátítása és a gyakorlatibb hozzáállást segítendő számítógépes laboratóriumi gyakorlatok egészítenek ki. Utóbbiak részben programozási példák bemutatásából részben problémamegoldó önálló feladatok megoldásából állnak.
a. A szorgalmi időszakban: A tárgy érvényességének előfeltétele a kontakt órákon való részvétel a Tanulmányi és Vizsgaszabályzatban előírtak szerint. A szorgalmi időszakban a hallgatóknak lehetőségük van fakultatív Java programozási feladat elkészítésére. A feladatok a 4. tanulmányi héten kerülnek kiadásra, és az utolsó előadásig kell azokat beadni. A feladat megfelelő szintű elvégzése a vizsga 50%-os gyakorlati részét helyettesítheti.
Érdemjegy megajánlás:
0-39 pont:
elégtelen (1)
40-55 pont:
elégséges (2)
56-70 pont:
közepes (3)
71-85 pont:
jó (4)
86-100 pont:
jeles (5)
Amennyiben a fenti pontszámok alapján megajánlott jegyet a hallgató nem fogadja el, lehetősége van ugyanazon a vizsganapon szóbeli vizsgát tenni a megajánlott jegy javítása érdekében. A szóbeli vizsga a megajánlott jegyet ronthatja is. Amennyiben a vizsgán résztvevők száma öt főnél kevesebb, lehetséges, hogy csak szóbeli vizsgára kerül sor.
Sikertelen vizsgák pótlása a Tanulmányi és Vizsgaszabályzatban előírtak szerint.
A szorgalmi időszakban a tárgy oktatójának heti fogadóóráján, a vizsgaidőszakban a vizsga előtti munkanapon lehet konzultálni. A fogadóóra időpontja illetve a konzultáció helye és ideje a tanszéki hirdetőtáblán található.
(a tantárgyhoz tartozó tanulmányi idő körülbelüli felosztása a tanórák, továbbá a házi feladatok és a zárthelyik között):
Opció
A
B
Kontakt óra
42
Félévközi készülés órákra
18
Házi feladat elkészítése (opcionális)
30
Kijelölt írásos tananyag elsajátítása
10
Vizsgafelkészülés
20
50
Összesen
120