This course counts for 6 credits (/30 total for a semester), and is divided in three equally important parts:
Part 1: Everything from the command line.
The command line interface is an essential tool for computer developers, both for its wealth of available tools and for its ability to increase productivity through the development of ad-hoc scripts.
Many of other courses in the MSc CPS2 track make use of the Shell command line interface, now available on all major operating systems.
The objective of the "Everything on the Command Line" course is for students to master the fundamental concepts of the Shell command line, and to become comfortable with the command line interface for computer development projects.
The following concepts will be covered:
We will go from a simple command to copy a file to a complete script to automate the life cycle of a project.
Part 2: Technological foundations of software development
This course aims to discover the tools and methods that are essential to know in any modern software development project. Students will discover:
The following concepts will be covered:
Part 3: System Engineering
Students will understand and master the software development cycle, software system modeling through the use of the Unified Modeling Language (UML), agile analysis methods, software system design. The following concepts will be covered mainly through practical cases.
On completion of the unit, the student will be capable of: | Classification level | Priority |
---|---|---|
Basic concepts of the Shell command line interface | 5. Summarise | Essential |
Mastering the Shell command line development environment | 4. Analyse | Important |
Know the main Unix functions and commands | 4. Analyse | Essential |
Write simple programs in Shell | 3. Apply | Important |
Understand the concepts involved throughout the development and implementation of software systems | 4. Analyse | Essential |
To know some modern tools and methods adapted to the development and implementation of software systems | 3. Apply | Essential |
Modeling of Software Systems using UML | 3. Apply | Essential |
Software Engineering Methods | 3. Apply | Essential |
Agile Development Methods | 3. Apply | Essential |
Percentage ratio of individual assessment | Percentage ratio of group assessment | ||||
---|---|---|---|---|---|
Written exam: | % | Project submission: | % | ||
Individual oral exam: | % | Group presentation: | % | ||
Individual presentation: | % | Group practical exercise: | % | ||
Individual practical exercise: | % | Group report: | % | ||
Individual report: | % | ||||
Other(s): 100 % |
Type of teaching activity | Content, sequencing and organisation |
---|