Market Technologies

Base Knowledge

Previous completion of the following course units is recommended:

  • Programming Fundamentals;
  • Data Structures.

Teaching Methodologies

The following teaching methodologies are used in this course unit:

1. Expository method: explanatory method where theoretical foundations and concepts are presented by the teacher and discussed with the class. Concepts and information will be presented to students through, for example, slide presentations or oral discussions. It will be used in classes to structure and outline the information.

2. Demonstrative method: based on the example given by the teacher of a technical or practical operation that one wishes to be learned. It focuses on how a given operation is carried out, highlighting the most appropriate techniques, tools and equipment. It will be used, for example, in practical and laboratory classes.

3. Interrogative method: process based on verbal interactions, under the direction of the teacher, adopting the format of questions and answers. It allows for greater dynamics in the classroom and consolidates learning. It will be used, for example, to remember elements of previous classes and in revisions of the lectured content.

4. Active methods: pedagogical techniques will be used in which the student is the center of the learning process, being an active participant and involved in his own training. The teacher assumes the role of facilitator, stimulating critical thinking, collaboration, creativity and student autonomy. They will be applied in classes to achieve a dynamic and more lasting learning environment.

Learning Results

At the end of the course unit, the student will be able to:

1. Analyse requirements and constraints to effectively plan and structure computer applications;

2. Apply good programming practices when development software. Use standards in writing and documenting code;

3. Use version control systems to manage and track changes in software projects;

4. Develop software solutions by effectively combining and integrating own code with third-party resources;

5. Evaluate the safety of software systems by assessing potential risks and implementing best practices for security;

6. Analyse  the quality of software by using various testing methodologies to ensure reliability and performance;

7. Apply knowledge and skills in deploying computer systems, ensuring they operate correctly in production environments.

Program

1. Planning and structuring computer applications;

2. Good practices in programming and writing technical documents;

3. Use of version control systems;

4. Creation and (re)use of own and third-party code (code libraries, frameworks, APIs);

5. Software safety;

6. Software quality;

7. Deployment of computer systems.

Grading Methods

Regarding the evaluation, the following methods are considered:

1. Periodic Evaluation

Final Grade = test (04/20) + practical works (16/20)

a) each of the evaluation components has a minimum grade of 40%, without rounding, in order to obtain approval in the course unit;

b) the completion of the practical works involves the submission of reports regarding course unit topics through the academic management platform (Inforestudante), and their respective defense;

c) each evaluation period will have different work statements.

2. Exam Evaluation (normal period, resit period, special period)

Final Grade = exam (04/20) + project (16/20)

a) each of the evaluation components has a minimum grade of 40%, without rounding, in order to obtain approval in the course unit;

b) the completion of the project involves the submission of reports regarding course unit topics through the academic management platform (Inforestudante), and their respective defense;

c) each evaluation period will have different work statements.


    Internship(s)

    NAO

    Bibliography

    Bass, L., & Klein, J. (2019). Deployment and operations for software engineers. Independently published.

    Correia, M. P., & Sousa, P. J. (2017). Segurança no software (2nd ed. ). FCA.

    Laboon, B. (2016). A friendly introduction to software testing (1st ed. ). CreateSpace Independent Publishing Platform.

    Martin, R. C. (2011). The clean coder: a code of conduct for professional programmers (1st ed. ). Pearson.

    McConnell, S. C. (2004). Code complete (2nd ed. ). Microsoft Press.