F21AO Applied Development and Operations

Course co-ordinator(s): Dr Abrar Ullah (Dubai).

Aims:

In this course, students will primarily develop understanding of both theoretical and practical knowledge and skills in applied

development and operations. The course aims are:

• To instil understanding of the concepts and benefits of applied software engineering methods

• To provide knowledge of change and configuration management

• To develop understanding of software deployment architecture

• To give practical experience of continuous integration methods

• To consolidate proficiency in version control and code management

• To give practical experience of deployment and delivery techniques

• To give further practical experience of staging, testing and continuous testing

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: none.

Location: Dubai.

Semester: 2.

Syllabus:

• Source Control: code management, secure source control, code build,

• Code pipelines: staging, pre-production and production environment setting and deployment

• Architectures: monolithic, microservices, virtualization and container orchestration

• Methodologies in software engineering practice; Agile, Scrum

• Relevant technologies: version control, staging and pipelines, virtual machines, containers, platforms

Pre-requisites: Programming and software engineering knowledge and skills.

Learning Outcomes: Subject Mastery

• Ability to choose a suitable software development environment and development methodology for specific software development tasks and justify the choice

• Demonstration of skills in the use of virtualization and containerization in development, deployment and testing practices

• Understanding of key concepts and application of change and configuration management

• Demonstration of critical understanding of applied software architecture in cloud and virtual environments and ability to evaluate their appropriateness in different situations

• Demonstration of skill in design and implementation of continuous testing and continuous integration approach in enterprise development environment

• Demonstration of critical understanding of team approach to staging, software testing and production life cycle

• Understanding of key security concepts and application during software development and operations

Learning Outcomes: Personal Abilities

  • Appreciation of use of methodology to ground system analysis, design and development and change/problem management proces
  • Understanding of source control, staging, testing and deployment
  • Practice in working in a group, choosing a methodology, reaching a consensus, and working with others to develop, test and deliver software projects
  • Taking responsibility for own work, taking responsibility in the development of resources, critical reflection on development, testing and deployment process
  • Effective appreciation of professional standards in the change management, code management, and testing
  • Showing initiative, creativity and team working skills in collaborative software development

Assessment Methods: Due to covid, assessment methods for Academic Year 2020-21 may vary from those noted on the official course descriptor. Please see the Computer Science Course Weightings and the Maths Course Weightings for 2020-21 Semester 1 assessment methods.

SCQF Level: 11.

Credits: 15.