Software Engineering - a Product Perspective 6 Credits
Course Contents
The course provides an overview of the software engineering domain as an evolving professional discipline that is concerned with software as a product or service in its own right, or as a component of a wider product. After studying the perspectives that apply to software engineering, the course focuses upon the elements of software development beyond the writing of code. The course introduces the concept of model-driven software engineering and offers students an example approach to follow. The course also covers the planning, control and monitoring of software development work.The course includes the following topics:
- Software as a product itself or as part of a product (including maintenance and evolution)
- Software engineering as a profession (including ethics and sustainability)
- Process models for software development life cycles (including Agile and traditional approaches)
- The importance of requirements and their place in the software product lifecycle
- Model Driven Software Engineering (including domain-specific and translational approaches)
- Software architecture and system design decisions
- Reuse (patterns, components, frameworks, Open Source and COTS, “commercial off the shelf”)
- Usability engineering of software products
- The management of software projects (including estimation, risk analysis and control)
- Introduction to software process improvement
Prerequisites
Passed courses 180 credits in first cycle, at least 90 credits within the major subject in Computer Engineering, Electrical Engineering (with relevant courses in Computer Engineering) and 15 credits mathematics, and English language requirements corresponding to English 6 or English BLevel of Education: Master A1N
Course code/Ladok code: TMUR26
The course is conducted at: School of Engineering