Module Descriptors
ENGINEERING SOFTWARE APPLICATIONS
COSE50637
Key Facts
Digital, Technology, Innovation and Business
Level 5
30 credits
Contact
Leader: Benhur Bakhtiari Bastaki
Hours of Study
Scheduled Learning and Teaching Activities: 72
Independent Study Hours: 228
Total Learning Hours: 300
Assessment
  • Coursework - Individual Assignment (2000 words) weighted at 30%
  • Coursework - Group project (5000 words) weighted at 70%
Module Details
Resources
Software development tools as appropriate (code design, authoring and management)
Project Management, costing and reporting software as appropriate
Texts
Software Engineering 10th ed., Sommerville, I. (2015) Pearson, ISBN-13: 978-1292096131
Software Engineering: A Practitioner's Approach 8th ed., Pressman, R.S. (2014) McGraw-Hill, ISBN-13: 9780078022128
Software Quality: Theory and Management 3rd ed., Gillies, A. (2011) lulu.com, ISBN-13: 978-1446753989
Agile Software Development, Principles, Patterns, and Practices, Martin, R.C. (2013) Pearson ISBN-13: 978-1292025940
Indicative Content
This module explicitly focuses on significant elements required for the achievement of the STAFFORDSHIRE GRADUATE ATTRIBUTES

Professional Issues:
Professional Bodies, Ethics and Codes of Conduct
Legal and ethical issues relevant to the development of software products.

Organisational context of professional work:
Health and Safety
Management structure and teams
Financial context
Human Resource Management Issues

Software development lifecycles
Managing a software project
Planning, cost estimation, risk evaluation and contingency planning
Project management
Critical path analysis
The roles in a software development project
Resource allocation
Requirements specification
Design paradigms
Design architectures (e.g. model-view-controller) Managing deployment and maintenance, change control
Practices for safety-critical systems
Security: typical threats, attacks and exploits, and the motivations behind them
Quality, metrics, testing and process improvement
Specifying and developing software for global markets
Internationalisation and localisation
Collaboration tools
Agile techniques
UML - architecture modelling
Software as a product
Software as a service
Special Admissions Requirements
Prior study of COSE40577: Introduction to Software Development or equivalent.
LEARNING OUTCOMES
1. DEMONSTRATE KNOWLEDGE AND CRITICAL UNDERSTANDING OF THE WELL-ESTABLISHED CONCEPTS, PRINCIPLES AND PRACTICES OF ENGINEERING SOFTWARE APPLICATIONS.
[Knowledge & Understanding]

2. SPECIFY AND PLAN A SOFTWARE DEVELOPMENT PROJECT USING AN APPROPRIATE SOFTWARE DEVELOPMENT LIFE-CYCLE MODEL.
[Application; Enquiry; Learning]

3. ANALYSE, DESIGN, IMPLEMENT, TEST AND DOCUMENT ONE OR MORE COMPONENTS OF A SOFTWARE PRODUCT USING APPROPRIATE SOFTWARE DEVELOPMENT METHODS AND TOOLS.
[Application; Communication; Problem Solving]

4. REFLECT CRITICALLY ON PERSONAL CONTRIBUTION, PROFESSIONAL DEVELOPMENT AND OUTCOME OF A TEAM-BASED SOFTWARE DEVELOPMENT PROJECT.
[Communication; Reflection]

5. DEMONSTRATE UNDERSTANDING OF THE ISSUES, INCLUDING ETHICAL, LEGAL AND SECURITY CONSIDERATIONS SURROUNDING DEVELOPING SOFTWARE FOR NATIONAL AND GLOBAL MARKETS.
[Knowledge & Understanding]
Module Additional Assessment Details
INDIVIDUAL ASSIGNMENT. Weighting 30%. Research, write and present a seminar paper (2000 words upper limit) (Learning outcomes 1 and 5)

GROUP PROJECT Weighting 70%: As part of a team, specify, plan, and execute a software development project. Analyse, design, implement, test and document one or more components of a software product (5000 words for the group, typically 3 members). (Learning outcomes 1, 2, 3, and 4) Final assessment
Module Learning Styrategies
"52 lectures presenting key topics and concepts.
26 supervised tutorials in which you will be guided through tasks that they complete between tutorials, providing opportunities for questions and identification of problems to be resolved. You will gain experience in working as an important part of a team, developing skills in time management, holding effective meetings and considering alternative views.
"