Educational guide | ||||||||||||||||||||||||||||||||||||||||
IDENTIFYING DATA | 2023_24 | |||||||||||||||||||||||||||||||||||||||
Subject | COMPUTER PROGRAMMING II | Code | 00709011 | |||||||||||||||||||||||||||||||||||||
Study programme |
|
|||||||||||||||||||||||||||||||||||||||
Descriptors | Credit. | Type | Year | Period | ||||||||||||||||||||||||||||||||||||
6 | Compulsory | Second | First |
|||||||||||||||||||||||||||||||||||||
Language |
|
|||||||||||||||||||||||||||||||||||||||
Prerequisites | ||||||||||||||||||||||||||||||||||||||||
Department | ING.MECANICA,INFORMAT.AEROESP. |
|||||||||||||||||||||||||||||||||||||||
Coordinador |
|
arods@unileon.es gestc@unileon.es agutf@unileon.es |
||||||||||||||||||||||||||||||||||||||
Lecturers |
|
|||||||||||||||||||||||||||||||||||||||
Web | http://agora.unileon.es | |||||||||||||||||||||||||||||||||||||||
General description | The course is focused on three basic phases of software development as design, implementation and testing. Students will be able to design from an abstract level using different algorithms and patterns. They will also learn how to build test cases. | |||||||||||||||||||||||||||||||||||||||
Tribunales de Revisión |
|
|||||||||||||||||||||||||||||||||||||||
Competencias |
Code | |
A18101 | |
A18121 | |
A18122 | |
A18124 | |
B5614 | |
B5619 | |
B5623 | |
B5624 | |
B5626 | |
B5629 | |
C2 | CMECES2 That students know how to apply their knowledge to their work or vocation in a professional manner and possess the skills that are usually demonstrated through the development and defense of arguments and the resolution of problems within their area of study. |
C5 | CMECES5 That students have developed those learning skills necessary to undertake further studies with a high degree of autonomy |
Learning aims |
Competences | |||
Learn the fundamentals of a general object-oriented programming language. | A18121 A18122 A18124 |
B5619 |
C2 C5 |
The student is able to apply their knowledge of a programming language in the construction of computer programs. | A18101 A18121 A18122 A18124 |
B5614 B5619 B5623 B5624 B5626 B5629 |
C2 C5 |
He is able to solve problems by building a computer program that calculates the solution based on the input case. | A18101 A18121 A18122 A18124 |
B5614 B5619 B5623 B5624 B5626 B5629 |
C2 |
Learn the basic techniques for testing computer programs. | A18121 A18124 |
B5619 B5623 B5624 B5626 B5629 |
C2 |
It is capable of applying the verification and validation techniques of programs to specific problems. | A18101 A18121 A18122 A18124 |
B5614 B5619 B5623 B5624 B5626 B5629 |
C2 C5 |
Contents |
Topic | Sub-topic |
Part I. DESIGN OF COMPUTER PROGRAMS | Topic 1. DESIGN TECHNIQUES FOR RECURSIVE ALGORITHMS Ways to design and test recursive algorithms are described. Contract programming. Topic 2. CONCURRENCY IN JAVA The basic instructions for the construction of concurrent programs in the Java language are taught. Topic 3. SOFTWARE PATTERNS Basic creational, structural, and behavioral patterns and their application in Java are described. |
Part II. THE PROBLEM OF CORRECTION | Topic 4. PROGRAM TEST Various techniques are given for constructing test suites suitable for program testing. |
Part III. PROGRAMS WITH GRAPHIC INTERFACE | Topic 5. GRAPHIC USER INTERFACES IN OBJECT-ORIENTED PROGRAMMING. Java programming is taught with a graphical user interface, using the basic elements of this type of interface. |
Planning |
Methodologies :: Tests | |||||||||
Class hours | Hours outside the classroom | Total hours | |||||||
Laboratory practicals | 28 | 42 | 70 | ||||||
Assignments | 30 | 30 | 60 | ||||||
Lecture | 28 | 14 | 42 | ||||||
Mixed tests | 8 | 0 | 8 | ||||||
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students. |
Methodologies |
Description | |
Laboratory practicals | Practical classes in which the teacher poses problems and the student solves them by relying on the teacher's guidance and advice. They will be done individually and in groups. |
Assignments | Carrying out programming work individually without the assistance of the teacher and with face-to-face evaluation through subsequent modifications. In the subject they are called Programming Practices |
Lecture | Theoretical classes in which the teacher introduces the concepts, languages and methods in the form of a master class, but requiring the active participation of the student by asking questions. |
Personalized attention |
|
|
Assessment |
Description | Qualification | ||
Assignments | They will be called Programming Practices. They will consist of 2 programming practices by the student without the continuous assistance of the teacher. They are mainly done individually. They are evaluated through the score obtained in the submission and by defending them through the final exam in which the student must modify their submission according to the specifications indicated in the exam. | 40-50% Calificación mínima para superar la asignatura: 5/10 |
|
Mixed tests | 40-50% Calificación mínima para superar la asignatura: 5/10 |
||
Others | The teacher will assign 5% of the final grade based on the student's participation in the different activities of the subject: attendance, participation and respectful behavior in face-to-face classes, participation in online tools, motivation for the subject, and others. | ||
Other comments and second call | |||
The works presented may be reviewed with an anti-plagiarism computer program that will be able to carry out verifications between the works of the students of the current and previous call and against external sources. During the evaluation tests, it will not be possible to use electronic resources (calculators, tablets, telephones, computers, etc.), except for those tests that, under the express indication of the teacher, require the use of any of these resources. In case of any irregularity during the celebration of the exam or corresponding assessment test, the exam will be immediately withdrawn, the student will be expelled and graded as failed. In any case, the provisions of the internal regulations of the ULe included in the document "Guidelines for action in cases of plagiarism, copying or fraud in examinations or assessment tests" will be followed (Approved by the Permanent Commission of the Governing Council 29/01 /2015). In the case of the Programming II subject, each programming work to be carried out individually by each student and delivered online (Practical Tests, called Programming Exercises in the subject, and Assignments, called Programming Practices) will be submitted to three plagiarism control algorithms on the set of works delivered and in case of exceeding a percentage of similarity greater than 95% in any of them, a first warning will be issued to each of the students in the plagiarism group. When there is a second notice, the delivery will be canceled and each student in this case will have to take some additional and individual specific test. In the second call of the subject, the grades obtained in the first call in each of the Assessment sections described will be kept. The student will be able to submit and take the different evaluation sections (except for Laboratory Practices and Programming Exercises) to try to improve their final grade. In the second ordinary call, only 80% of the maximum grade assigned to the subject can be reached. |
Sources of information |
Access to Recommended Bibliography in the Catalog ULE |
Basic |
Robert C. Martin, Clean Code, Pearson, 2008 Erich Gamma et al., Patrones de Diseño, Addison Wesley, 2003 Bruce Eckel, Thinking in Java 4th edition, Prentice Hall, 2006 |
Complementary |
Bertrand Meyer, Construcción de Software Orientado a Objetos. Segunda Edición, Prentice Hall, 1999 |
Recommendations |
Subjects that it is recommended to have taken before | |||
|