Information Systems Development


The main objective of the course is to introduce the main questions associated with the development of information systems and Software Engineering.
It is intended to present the key technologies and the main models of software development processes.

General characterization





Responsible teacher

Vítor Manuel Pereira Duarte dos Santos


Weekly - Available soon

Total - Available soon

Teaching language

Portuguese. If there are Erasmus students, classes will be taught in English




- Pressman, Roger (2014) Software Engineering: A Practitioner's Approach, 8th edition, McGraw-Hill, ISBN-10: 9780078022128

- Requirements Analysis: From Business Views to Architecture David C. Hay Prentice Hall (2002) ISBN:9780130282286

- Effective Methods for Software Testing, 3rd Edition William E. Perry Wiley (2006) ISBN:978-0764598371

-Guerreiro, Sérgio (2015) Introdução à Engenharia de Software, FCA ; ISBN 9789727227952

- Jessup, Leonard, e Valacich, Joseph (2003) ¿Information Systems Today¿ Upper Saddle River, New Jersey: Prentice-Hall, Incorporated.

 - Stair, Ralph M., e Reynolds, George W. (2006) ¿Principles of Information Systems, 7th edition) Boston, Massachusetts: Course Technology;

-  Avgerou, C. e T. Cornford (1998) ¿Developing Information Systems: Concepts, Issues and Practice, 2nd edition¿ Basingstoke: Macmillan;

- UML Metodologias e ferramentas CASE, by Alberto Silva e Carlos Videira, Centro Atlântico, ISBN:989-61 5-0095

- Fundamental UML (Third Edition), by Mauro Nunes e Henrique O´Neill, FCA-Lidel, ISBN:972-722-481-4

Teaching method

The curricular unit is based on theoretical and practical lessons. A variety of instructional strategies will be applied, including lectures, slide show demonstrations, step-by-step applications (with and without software), questions and answers. The sessions include presentation of concepts and methodologies, solving examples, discussion and interpretation of results. The practical component is geared towards solving problems and exercises, including discussion and interpretation of results. A set of exercises to be completed independently in extra-classroom context is also proposed.

Evaluation method

The learning objectives associated with the last three learning units are assessed both in the practical tests component and through the exam. The tests, and the final exam, require students to integrate the entire content of the course and prove their mastery of it

Practical assignments (40%), Exam (60%)

Subject matter

1. General concepts
- Characterization of the Software product
- Software engineering basic elements
- Programming paradigms

2. Technologies
- Fundamentals, architectures and platforms of information and communication technologies
- Concepts about data, organization and management of data, information and communication
- Strategic value of computer networks and telecommunications
- Typologies, architectures and devices of local and remote networks (Intranet and Internet)
- Cloud computing
- Mobile and ubiquitous computing
- IoT

3. Software Architectures, Systems and Infrastructure

4. Software Engineering
- Requirement specification and software design
- Origin, structure and components of Unified Modeling Language (UML);
- HCI fundamentals
- Database design
- Apps & Web Applications

5. Models of software development processes
- Prescriptive models: Linear sequential, RAD , prototyping, evolutionary models, RUP, Iconix
- Agile methods: XP, Scrum and Crystal, DevOps


Programs where the course is taught: