€¦  · web viewthe software engineering for business degree has been developed in collaboration...

34
Tech Industry Gold Software Engineering for Business (SEfB) Degree Degree Specification and Learning Outcomes This document specifies the key attributes of the Software Engineer for Business degree and sets out the topics’ learning outcomes as identified through employer consultation. The latter describes what students must have achieved / will be able to do on completion of the degree CONFIDENTIAL Contact: Sue Stevens Mobile: 07939 536430 Email: [email protected] Version: 4.1 Final Last updated: 29 th October 2018 © Copyright Tech Partnership Degrees Ltd 2018

Upload: others

Post on 16-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

Tech Industry GoldSoftware Engineering for Business

(SEfB) Degree

Degree Specification and Learning Outcomes

This document specifies the key attributes of the Software Engineer for Business degree and sets out the topics’ learning outcomes as identified through employer consultation. The latter describes what students must have achieved / will be able to do on completion of the degree

CONFIDENTIAL

Contact: Sue Stevens

Mobile: 07939 536430Email: [email protected]

Version: 4.1 Final

Last updated: 29th October 2018

© Copyright Tech Partnership Degrees Ltd 2018

Page 2: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Programme Aims

The Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced in September 2014. The overall aim of this programme is to produce software engineering / development graduates who are capable of making a real contribution to their new employer within a few months of graduation. The programme will strive to improve software engineering practices through a curriculum that connects current research, education and practical development, covering all fundamental principles of software engineering.

The programme will deliver a team-based, project-centred curriculum encouraging relevant work experience to build sufficient technical, business and management knowledge. Students will be able to develop high quality, well-designed software within a global and changing context, through sound academic knowledge and practical abilities. The degree will equip graduates with a breadth of skills; these are core technical/programming skills with good business, interpersonal skills and user understanding, as identified by employers.

Upon graduation, it will also develop the following core areas:

8.1 A broad background of the full development lifecycle and the fit with business operations, to understand the wider business context surrounding the software development.

8.2 Key personal and interpersonal skills enabling them to work in teams and effectively communicate with employees in non- Computing/IT related areas of an organisation.

8.3 High-level competence in analysis, critical thinking, entrepreneurial and problem-solving skills to enable progression in their chosen career.

Collaboration between Partners

The degree is positioned as a collaborative venture between employers, Tech Partnership Degrees and all the universities involved. A Document of Understanding (DOU) exists as part of the Software Engineering for Business degree framework to outline areas of agreed activity in the spirit of the programme.

The University will contribute wholeheartedly to this collaboration to ensure that, for example, Industry Insight Lectures and Student / Employer Events and Course Director Meet-Ups are used to best advantage and best practice is shared across the programme.

© Copyright Tech Partnership Degrees Ltd 2018 Page 2 of 26

Page 3: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Degree Specification

Title and brand of the degreeTech Partnership Degrees’ first undergraduate degree programme, IT Management for Business (ITMB), has built a strong brand identity with employers and increasingly with prospective students. Following a similar model, to maintain and take advantage of the brand identity, it is strongly encouraged that the degree title is ‘Software Engineering for Business (SEfB)’. In any event, the degree should be sub-branded as ‘a Tech Industry Gold Degree’ which is the generic name given to the employer accreditation. The degree may be either a BEng or BSc.

The degree will be with Honours and is encouraged to be a four-year full-time programme (5 year under Scottish qualification) including an industry-based sandwich year to acquire valuable practical skills. Students should have the option to switch to a three-year full-time (or other) mode of study option as appropriate. Part time delivery or any other flexible delivery models should be discussed with Tech Partnership Degrees.

Degree contentThe Learning Outcomes for the Software Engineering for Business degree are designed to support four key content areas: technology, business, personal /interpersonal and project management skills and are split as follows with reference to student learning time:

60-65% Technology (Software)10-15% Business10-15% Personal and Interpersonal Skills 10-15% Project Management

It is recognised that, at the time of accreditation,details of the assessment programme are unlikely to be available. However, it is expected that students will be assessed in all learning outcomes and skill requirements, including personal and interpersonal skills, before completing the degree and evidence of this may be sought as part of the quality assurance process. As part of the accreditation process, the University will show a mapping of the student’s learning experience within each module against the four key areas.

Learning outcomes and skills requirementsThe University will need to show formally that the learning modules it proposes to use adequately address the high-level learning outcomes developed by the Software Degree Employer Steering Group. These are listed in the separate Learning Outcomes section later in the document.

As part of the accreditation process, the University will provide:

A mapping between the high-level learning outcomes and the course modules

A description of how the four key content areas are included in the course to teach a balanced curriculum

See Endorsement Guideline document for details.

© Copyright Tech Partnership Degrees Ltd 2018 Page 3 of 26

Page 4: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Delivery methodologiesKey to the Software Engineering for Business degree is the delivery method in the following areas:

Industry delivered ‘Industry Insight Lectures’

The annual series of industry delivered ‘Industry Insight Lectures’ – sourced by Tech Partnership Degrees - will form a part of the degree. The series consists of about 8-10 employer lectures per academic year; content and lecturers are different year on year.

Each lecture is hosted at one of the universities delivering the degree and the university will record this. The recordings are then made available via tpdegrees.com within a week so that other universities can watch the lecture too.

Tech Partnership Degrees and the employers require that there is at least one element of assessment based on the Industry Insight series; this can be included in any year during the course. Students, independent of level, should however be encouraged to attend and participate in the series of lectures.

Forthcoming lectures will be published on tp.degrees.com.

Group work

In order to address a number of the Learning Outcomes and Skills Requirements – particularly in the personal and interpersonal skills area – it is essential that the degree contains a substantial amount of group work, ideally with access to external mentors from industry.

Project work

It is a requirement that there is a significant amount of practical project work undertaken in collaboration with external employers. This can range from case studies supplied by employers to an on-site project with specific deliverables. For example, in the second year the students might work in groups on employer supplied case studies and in the final year, a student could undertake an individual project for an employer. This requirement is especially important where there is not a placement year available.

Tech Partnership Degrees would welcome the University counselling an employer’s opinion when formulating its own assessment of the student’s project work.

AssessmentThe Tech Partnership recognises the right of each participating university to manage the assessment process. This will be done by specifying, setting and marking an appropriate number of assessments, which cover all of the required learning outcomes, and are of an appropriate standard and size.

The only Tech Partnership Degrees’ requirement in this area is that at least one assessment during the course includes elements based on one or more of the Industry Insight Lectures.

Tech Partnership Degrees also reserves the right to monitor student assessment criteria by, for example, asking for detail in the Annual Review Report.

AdmissionsThe degree is aimed at high potential, mathematical, creative thinking students who are interested in the design and development of software applications and systems. Alongside building technical aspects of complex software systems, the taught programme would cover

© Copyright Tech Partnership Degrees Ltd 2018 Page 4 of 26

Page 5: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

team-working, personal/interpersonal, management and project skills spread across all roles that drive fundamental technologies of the world today.

Through its sister degree (ITMB), Tech Partnership Degrees has a strong track record of attracting an excellent balance of female and male students. A key aim of this degree is to continue this trend, helping to address the issue of low female numbers in IT-related Higher Education and careers. Tech Partnership Degrees will work closely with universities to promote a curriculum and learning environment that is attractive to females and addresses the gender imbalance within the education and industry community.

Tech Partnership Degrees recognises the University's right to admit students based on its own criteria. However, this is a challenging and demanding degree and the Tech Partnership has set two requirements:

Employers have requested students should have strong foundations in Mathematics prior to pursuing the Software Engineering for Business degree. Therefore, it is a requirement for universities to set minimum grade B at A-Level Mathematics as a pre-requisite onto the course. Where this is not possible, universities should ensure students demonstrate sufficient evidence of mathematical and logical problem-solving capabilities upon joining the course. In this instance, universities will be expected to demonstrate how they bridge the training gap and sufficiently prepare non-A-Level Mathematics students for the degree programme.

In order to be attractive to potential employers, it is also expected that selected applicants should be capable of achieving at least a 2:1 classification upon graduation.

Tech Partnership Degrees recommends that the University begins marketing the new degree as soon as possible. From experience, we have found that waiting until completion of accreditation before beginning marketing can seriously impact student intake in the early years of a new course.

© Copyright Tech Partnership Degrees Ltd 2018 Page 5 of 26

Page 6: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

High Level Learning Outcomes

This document defines the learning outcomes that Graduates of the undergraduate Software Engineering for Business degree programme must be able to demonstrate.

The high-level degree competency outcomes are:

1 Show competence in custom software development processes, including the knowledge, skills, and professional competences necessary to begin practice as a software engineer in a business environment.

Students, through learning, regular reinforcement and practice, and exposure to real world software development paradigms need to gain confidence in their ability to perform software development practice. Through a structured program of study, the knowledge, understanding and skills are acquired through a staged approach with increasing levels of competence being achieved as the degree progresses. Graduates need to develop an understanding and appreciation of professional issues in software development related to ethics and professional conduct, economics, and the needs of employers.

2 Be able to confidently work as an individual and as part of a team to develop and deliver quality software deliverables.

Students need to develop the ability to perform software development tasks that involve work both as an individual and also working in a team. Developing an appreciation and experience of effective team working is essential to operating effectively in a business environment. The degree programme must include an emphasis on the importance of team working as a disciplined approach, the need to adhere to deadlines, communication, and team as well as individual performance evaluation.

3 Design appropriate solutions in a range of application contexts/domains using software development approaches that deliver business value.

Students need to be exposed to a variety of software design contexts, including desktop applications, internet and mobile device software and apps. They need to understand and develop appropriate approaches to software design in the general sense, and to problem solving for specific application domains. They need to be able to understand the strengths and the weaknesses of the various options available and the implications of the selection of appropriate approaches for a given context. They must develop competence in designing solutions within business constraints of time, cost and quality as well as addressing security. Also having a thorough understanding of business requirements for software that are testable (including non-functional requirements), and how to interpret and prioritise requirements.

4 Build and test software solutions for a range of application contexts/domains.

Students need to be able to apply software development to a wide range of contexts and environments. These include operating systems, internet and fixed platforms, apps, games, business solutions etc. They need to be able to understand how to transfer development principles to new and different technologies. They need to be able to assure the functionality and the verification of requirements of their solutions through testing and embed secure development principles to all stages of development. Students also need to understand that a significant amount of software development work, involves updating, maintaining and refactoring existing solutions. They need to develop and demonstrate confidence in reading and reviewing existing software and the need to increase efficiency through refactoring.

© Copyright Tech Partnership Degrees Ltd 2018 Page 6 of 26

Page 7: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

5 Reconcile conflicting project objectives, finding acceptable compromises recognising the limitations of capability, capacity, cost, and time.

Students should develop a professional approach to managing their contribution to project deliverables. In the business environment they will need to understand how to estimate activities and balance meeting the specification while delivering on time and to the right quality level. Students need to understand how to approach conflicting demands and engage in exercises that expose them to conflicting and changing requirements. There should be a strong real-world emphasis in the study. Students should appreciate when to question deliverables – e.g. is an activity to fix an error (bug) to achieve the stated quality or is it an enhancement request that needs to be considered as an additional requirement with impact assessment, planning, resourcing and costing decisions to be made on if and when to consider the additional request. The degree programme should address these issues, with the aim of ensuring high quality requirements and a feasible software design.

6 Demonstrate an understanding of and apply current theories, models, and techniques that provide a basis for problem identification and analysis, software design, development, implementation, verification, and documentation.

The students focus should be on development and at the end of a software development program of study, should have developed competence across the individual elements bringing this together to enable the student to tackle a software project and demonstrate their ability to bring together learning and competence from a variety of topics and apply them effectively. This mechanism allows students to demonstrate their appreciation of the broad range of software development topics and their ability to apply their skills to genuine effect. This should also include the ability to offer reflections on their achievements.

7 Demonstrate an understanding and appreciation for the importance of negotiation, effective work habits, leadership, and good communication with stakeholders in a typical software development business environment.

It is important that students gain an insight and understanding of range of professional interpersonal skills required to be effective in business when producing a solution for a problem domain (requirements, design, solution development etc). Software engineers must recognise that effective software development is achieved as a result of a dynamic and interactive team-based approach. Employer visits, guest lectures from practicing software engineers etc will aid students in better comprehending the business team environment, and the importance of professionalism.

8 Learn new models, techniques, and technologies as they emerge and appreciate the necessity of such continuing professional development.

On graduating, students should clearly demonstrate that they are self-motivated life-long learners. They should understand the continuous nature of emerging technologies, and how and when is best to harness and exploit their benefits for business gain. Students should be capable of identifying, selecting and applying new technologies, tools and methods and be able to assess their contribution to software development. The final year project allows students to apply critical thinking and use context driven software development to plan and complete a significant project (not simply a software deliverable).

9 Embedding security in the software development life cycle.

Security has become a widespread and significant issue in the development and ongoing safeguarding of software systems. Students should have a robust understanding of software security issues, and the principle models of security in relation to information systems. They should understand the nature of risk, threats and vulnerabilities and be able to incorporate preventative measures into software design. They should be aware of current approaches to

© Copyright Tech Partnership Degrees Ltd 2018 Page 7 of 26

Page 8: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

safeguarding the systems that they are involved in developing, including security testing. Throughout the degree they should be thinking about security implications and adopt secure architecture, design and development practices.

Skills Topics for Custom Software Development

The table below lists the skills topics to be covered by a Software Engineering for Business degree. It is not intended that the list is used as a pro-forma curriculum. Each university will have its own approach to delivering the degree and progression. The skills and derived learning outcomes that are detailed in the following section will provide a checklist to ensure that each degree covers each of the learning outcomes appropriately.

Skills Topics for Custom Software Development1. IT in Business

1.1 The nature of IT in business1.2 Business organisation 1.3 Business exploitation of technology1.4 Hardware architecture in context1.5 Open source operating systems, software applications and productivity tools

2. Software Development Essentials 2.1 Software development foundations2.2 Development technologies2.3 Development tools 2.4 Formal development methods 2.5 Software development process as aligned to industry practice

3. Data and Algorithms3.1 Mathematical foundations of data3.2 Low level language3.3 Algorithmic foundations for software and pseudo code3.4 Algorithmic processing3.5 Search techniques3.6 Common pitfalls and mitigations

4. Software Modelling & Analysis 4.1 Modelling foundations 4.2 Analysis v, design models4.3 Industry standard modelling4.4 Analysis fundamentals4.5 Common pitfalls and mitigations

5. Software Architecture5.1 Multi-tiered architecture5.2 Separating concerns5.3 Architecture and design5.4 Common pitfalls and mitigations

6. Software Requirements Management6.1 Requirements fundamentals 6.2 Eliciting requirements6.3 Functional & Non-functional requirements6.4 Document requirements6.5 Prioritize Requirements 6.6 Requirements validation

© Copyright Tech Partnership Degrees Ltd 2018 Page 8 of 26

Page 9: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

7. Software Design7.1 Design concepts 7.2 Design patterns 7.3 Human computer interface design and DDA7.4 Detailed design7.5 Common pitfalls and mitigations

8. Software Verification and Testing8.4 Testing foundations8.5 Reviewing requirements 8.6 Test planning8.7 Testing practice8.8 Automated testing8.9 Test results analysis and reporting8.10 Common pitfalls and mitigations

9. Software Development Process9.1 Software development process concepts9.2 Software development methods and deliverables9.3 Software process implementation9.4 Industry standard software development process,9.5 Common pitfalls and mitigations

10. Software Development in Context10.1 Practical software development10.2 Real time and embedded systems10.3 Development tools10.4 GUI development10.5 Develop software solutions using recognised programming languages 10.6 Common pitfalls and mitigations

11. Software Configuration and release management11.1 Software configuration management 11.2 Change control 11.3 Versioning11.4 Industry standard version control11.5 Build and Release software11.6 Industry standard release management11.7 Common pitfalls and mitigations

12. Software Deployment12.1 Deployment fundamentals12.2 Deployment context12.3 User documentation and training 12.4 User training12.5 Common pitfalls and mitigations

13. Software Maintenance13.1 Software maintenance fundamentals13.1 Analyse Read, review, existing software solutions 13.2 Update and maintain existing software solutions13.3 Code improvement through refactoring13.4 Common pitfalls and mitigations

14. Legacy Systems14.1    Understand legacy architectures and technologies14.2       Identify and review legacy system documentation

© Copyright Tech Partnership Degrees Ltd 2018 Page 9 of 26

Page 10: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

14.3       Analyse, read, review, existing legacy software source code14.4      Understand the risks associated with replacing or keeping legacy systems14.5 Identify the legacy system data architecture14.6 Common pitfalls and mitigations

15. Software Quality15.1 Software quality concepts and culture15.2 Software quality standards15.3 Software quality processes15.4 Industry standard frameworks15.5 Common pitfalls and mitigations

16. Data Modelling, Database Development and Data Analysis16.1 Data modelling principles16.2 Industry standard modelling16.3 Database design16.4 Database implementation16.5 Data querying16.6 Data mining16.7 Big data analysis16.8 Common pitfalls and mitigations

17. Software Security17.1 Risk17.2 Information Security foundations17.3 Security risks, threats and vulnerabilities17.4 Security testing of software and systems17.5 Secure architecture 17.6 Secure development17.7 Common pitfalls and mitigations

18. Software Project Management18.1 Project management standards18.2 Project planning and estimating18.3 Project resourcing and organisation 18.4 Project control18.5 Earned value management18.6 Project risk management18.7 Project documentation18.8 Common pitfalls and mitigations

19. Professional Practice19.1 Leadership, team working, team dynamics 19.2 Distributed working19.3 Presentation19.4 Written communications 19.5 Personal preferences19.6 Negotiation 19.7 Professionalism - Careers and CPD19.8 Professional body membership19.9 Keep up to date19.10 Common pitfalls and mitigations

20. Innovation20.1 Technology innovation and emerging technologies20.2 Technology road mapping20.3 Business innovation

© Copyright Tech Partnership Degrees Ltd 2018 Page 10 of 26

Page 11: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

20.4 Industry standard tools for innovation20.5 Common pitfalls and mitigations

Table 1: Skills topics coverage in the Software Development for Business degree

Learning Outcomes

This section details the learning outcomes against each of the software development degree topics listed in table 1 above.

1 IT in Business

1. IT in Business1.1 The nature of IT in business1.2 Business organisation1.3 Business exploitation of technology1.4 Hardware architecture in context1.5 Open source operating systems, software applications and productivity tools

SD01.L1 Assess the contribution of technology in the current global business environment and how this might change and develop in the future

SD01.L2 Have demonstrated a mastery of basic business functions and organisational structures, in different sectors including an international dimension, with a sound understanding of contemporary working practices, covering work in the office, at home, on the move and in a virtual environment

SD01.L3 Understand why a business case is needed and create a business case for a technology-enabled business solution, including an assessment of business benefits, impacts, risks and return on investment

SD01.L4 Design a small-scale system suitable for business use, including server, PCs, mobile communications, networking and security mechanisms

SD01.L5 Conduct a review of open-source software, operating systems, development tools and materials using appropriate guidelines

2 Custom Software Development Essentials

2. Software Development Essentials 2.1 Software Development Foundations2.2 Development methodologies2.3 Development tools 2.4 Formal development methods 2.5 Software development process as aligned to industry practice

SD02.L1 Understand the foundations of custom software development that support the design and construction of software products, including the transformation of a design into an implementation, the tools used during this process, formal software construction methods and maintainability

SD02.L2 Understand software design and development methodology (e.g., structured or object-oriented), and be able to apply appropriate industry standard design notation such as UML and agile user story management

SD02.L3 Select, with justification, an appropriate set of tools to support the development of a range of software products

© Copyright Tech Partnership Degrees Ltd 2018 Page 11 of 26

Page 12: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

SD02.L4 Explain the potential benefits and drawbacks of using formal specification languages

SD02.L5 Understand the software development process as aligned to industry practice

3 Data and Algorithms

3. Data and Algorithms3.1 Mathematical foundations of data3.2 Low level language3.3 Algorithmic foundations for software and pseudo code3.4 Algorithmic processing3.5 Search techniques3.6 Common pitfalls and mitigations

SD03.L1 Write programs that use each of the following data structures: arrays, strings, linked lists, stacks, queues, and hash tables

SD03.L2 Understand language at a level lower than data structures and differences e.g. distinction between Double and BigDecimal

SD03.L3 Use pseudo code or a programming language to implement, test, and debug algorithms for solving problems

SD03.L4 Confidently design and apply algorithms for manipulating data in programming solutions for a variety of computational problems

SD03.L5 Understand search techniques with pros/cons and be able to implement with regard to complexity and memory management

SD03.L6 Understand common pitfalls and mitigations

4 Software Modelling & Analysis

4. Software Modelling & Analysis 4.1 Modelling foundations 4.2 Analysis v, design models4.3 Industry standard modelling4.4 Analysis fundamentals4.5 Common pitfalls and mitigations

SD04.L1 Understand the role and purpose of modelling to visualise and better understand and document the system being developing and the proposed design solutions

SD04.L2 Understand the distinction between analysis and design models e.g. robustness analysis vs. object level interaction diagrams

SD04.L3 Apply a wide variety of industry standard software modelling techniques, including object and state-based approaches to model aspects of the domain and system behaviour and to aid design of software

SD04.L4 Analyse the problem domain to establish a basis for the creation of a software design, to describe what the customer require through solution design modelling

SD04.L5 Understand common pitfalls and mitigations

5 Software Architecture

5. Software Architecture5.1 Multi-tiered architecture5.2 Separating concerns5.3 Architecture and design

© Copyright Tech Partnership Degrees Ltd 2018 Page 12 of 26

Page 13: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

5.4 Common pitfalls and mitigations

SD05.L1 Understand the differences between multi-tiered (1/2/3) architectures and layers and identify their merits. Be able to formulate a system according to a multi-tier architecture, so that the presentation, the application processing and the data management can be separated into different logical processes

SD05.L2 Understand concepts such as separation of concerns, loose coupling, etc

SD05.L3 Software architecture, as an aid to software design

SD05.L4 Understand common pitfalls and mitigations

6 Software Requirements Management

6. Software Requirements Management6.1 Requirements fundamentals 6.2 Eliciting requirements6.3 Functional & Non-functional requirements6.4 Document requirements6.5 Prioritize Requirements 6.6 Requirements validation6.7 Common pitfalls and mitigations

SD06.L1 Understand the requirements development process: elicitation, specification, analysis, and management and the use of tools for managing requirements, and how requirements, design, implementation and verification are linked together to control development and ensure quality

SD06.L2 Elicit and negotiate requirements using a variety of techniques

SD06.L3 Be competent in writing clear and concise functional and non-functional requirements

SD06.L4 Represent functional and non-functional requirements for different types of systems using industry standard practices for formal and informal techniques (UML, User Requirements notation)

SD06.L5 Organize and prioritize requirements for some innovative client-server application of very small size

SD06.L6 Validate requirements according to criteria such as feasibility, clarity, testable, freedom from ambiguity, etc.

SD06.L7 Understand common pitfalls and mitigations

7 Software Design

7. Software Design7.6 Design concepts 7.7 Design patterns 7.8 Human computer interface design and DDA7.9 Detailed design7.10 Common pitfalls and mitigations

© Copyright Tech Partnership Degrees Ltd 2018 Page 13 of 26

Page 14: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

SD07.L1 Discuss the properties of good software design including the nature and the role of associated documentation, appreciating that design increasingly covers use of existing code and 3rd party elements that may be an alternative to development of code from scratch through make/buy decisions

SD07.L2 Select and apply appropriate design patterns in the construction of software using industry standard documentation such as GoF (the "Gang of Four")

SD07.L3 Understand the different contexts for HCI (mobile devices, consumer devices, business applications, web, business applications, collaboration systems, games, etc.) and be able to define a user-centred design that explicitly recognises the user and is DDA compliant (Disability Discrimination Act)

SD07.L4 Create and specify a software design for a medium-size software product using a software requirement specification, an accepted program design methodology (e.g., structured or object-oriented), and appropriate design notation

SD07.L5 Understand common pitfalls and mitigations

8 Software Verification and Testing

8. Software Verification and Testing8.1 Verification and testing foundations8.2 Reviewing requirements 8.3 Test planning8.4 Testing practice8.5 Automated testing8.6 Test results analysis and reporting8.7 Common pitfalls and mitigations

SD08.L1 Describe in detail the purpose of, and distinguish between the different types and levels of verification (analysis, demonstration, test, formal proof, inspection etc.) and testing (unit, integration, systems, and acceptance) including the role and value of test driven development techniques

SD08.L2 Analyse requirements to determine appropriate testing strategies understanding the trade-off between the extent and cost of testing vs. Quality requirements

SD08.L3 Create, evaluate, and implement a test plan for a medium-size code segment

SD08.L4 Develop and execute accurate and clear test scripts through UI harnesses against acceptance criteria, requirements and internal and/or external standards using industry standard unit and component testing tools

SD08.L5 Be competent in developing automated tests within the build phase for web applications at a transaction and method level

SD08.L6 Assess test results against expected results and acceptance criteria and through traceability to requirements, presenting and communicating results effectively using appropriate communication styles

SD08.L7 Understand common pitfalls and mitigations

9 Software Development Process

9. Software Development Process9.6 Software development process concepts9.7 Software development methods and deliverables9.8 Software process implementation9.9 Industry standard software development process,

© Copyright Tech Partnership Degrees Ltd 2018 Page 14 of 26

Page 15: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

9.10 Common pitfalls and mitigations

SD09.L1 Explain the importance of a software process for governing software development both technically, and in terms of cost control, quality, adherence of technical strategy, IPR identification etc

SD09.L2 Understand the software life cycle, its phases and the deliverables that are produced, compare the traditional waterfall model to newer models such as agile, test –led development and other appropriate models

SD09.L3 Select, with justification software development models and process elements most appropriate for the development and maintenance of a diverse range of software products

SD09.L4 Understand the nature of industry standard software development process, including distributed work (e.g. onshore, near shore and offshore), to understand benefits and drawbacks of each and key enablers to make each model successful

SD09.L5 Understand common pitfalls and mitigations

10 Software Development in Context

10. Software Development in Context10.1 Practical software development10.2 Real time and embedded systems10.3 Development tools10.4 GUI development10.5 Develop software solutions using recognised programming languages 10.6 Common pitfalls and mitigations

SD10.L1 Understand the fundamental components of technology solutions in a range of typical modern business environments and explain their interactions for any applicable target system - including games console, smart-phone, embedded system understanding the differences that these environments bring

SD10.L2 Understand the contexts of real time and embedded systems development as well as component software within hardware systems

SD10.L3 Demonstrate the capability to select, with justification, and apply an appropriate set of tools to support the development of a range of software products of medium size

SD10.L4 Create a specification for a user interface based on requirements and implement a range of GUI’s for different contexts at different levels of detail from specifications

SD10.L5 Develop and test a range of small and medium-scale technology solutions (programmes, apps or games), utilising an industry standard method and programming language

SD10.L6 Understand common pitfalls and mitigations

11 Software Configuration and Release Management

11. Software Configuration and Release Management11.1 Software configuration management 11.2 Change control 11.3 Versioning11.4 Industry standard version control11.5 Build and Release software11.6 Industry standard release management

© Copyright Tech Partnership Degrees Ltd 2018 Page 15 of 26

Page 16: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

11.7 Common pitfalls and mitigations

SD11.L1 Recognise the difference between configuration management at a software component/function level, and configuration of a release

SD11.L2 Define configuration management processes for use throughout the product development life cycle in storing software deliverables and controlling and tracking changes to software both at component and release level, using configuration management tools effectively, and apply change management processes properly

SD11.L3 Modify software designs and deliverables following sound change control approaches and change control tools

SD11.L4 Understand the importance of version control and the difference between software level vs. component level version control

SD11.L5 Be competent in using and applying industry standard version control tools to manage software deliverables

SD11.L6 Select and apply configuration management and change control tools for use within software development projects

SD11.L7 Be able to apply industry standard release management frameworks (e.g. Puppet) to release and manage software artifacts

SD11.L8 Understand common pitfalls and mitigations

12 Software Deployment

12. Software Deployment12.6 Deployment fundamentals12.7 Deployment context12.8 User documentation and training 12.9 User training12.10 Common pitfalls and mitigations

SD12.L1 Understand the organisational context into which software is deployed and the human and business issues associated with deployment

SD12.L2 Recognise the challenges of deploying software releases which form part of a software or hardware system, perhaps with other software elements from a 3rd party, and embedded systems. Being able to interact to agree dependencies on interfaces, processing speed, resource utilisation etc. and staged deployment in to maturing prototypes and systems

SD12.L3 Develop and apply user documentation and training materials as part of software development and deployment activities

SD12.L4 Design and develop training materials and plan end user training following software deployment

SD12.L5 Understand common pitfalls and mitigations

13 Software Maintenance

Human and social issues in software development and deployment, including human resource development and health and safety issues

Select appropriate techniques to solve problems within the domain of software management

o The organisational context within which software is developed and deployed

© Copyright Tech Partnership Degrees Ltd 2018 Page 16 of 26

Page 17: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

o Human and social issues in software development and deployment, including human resource development and health and safety issues

o Select appropriate techniques to solve problems within the domain of software management

13. Software Maintenance13.2 Software maintenance fundamentals13.3 Analyse Read, review, existing software solutions13.4 Update and maintain existing software solutions13.5 Code improvement through refactoring13.6 Common pitfalls and mitigations

SD13.L1 Understand the impact of developing software for systems which need to be maintained for extended operational periods (e.g. avionics could be ~25 years), and be aware of the importance of documentation rigour in these circumstances, when contrasted against fast changing IT software where changes are likely to occur at a far higher frequency

SD13.L2 Read and Analyse existing software behaviour in order to improve its efficiency, reliability, and maintainability

SD13.L3 Maintain and update software as required to ensure continued effectiveness or in response to external factors

SD13.L4 Understand the role and purpose of refactoring in improving programming solutions efficiency, scalability, maintainability and extensibility and be able to revise the performance of existing code to provide for scalability and extensibility

SD13.L5 Understand common pitfalls and mitigations

14 Legacy Systems

14.  Legacy Systems 14.1    Understand legacy architectures and technologies14.2        Identify and review legacy system documentation14.3        Analyse, read, review, existing legacy software source code14.4     Understand the risks associated with replacing or keeping legacy systems14.5 Identify the legacy system data architecture14.6 Common pitfalls and mitigations

SD14.L1 Gain an understanding of legacy architectures and technologies (e.g. mainframe/COBOL etc)

SD14.L2 Identify and review legacy system documentation, whilst appreciating that documentation is often missing, inadequate and out-of-date

SD14.L3 Analyse existing legacy software, and review the source code if available, appreciating   that part or all of the system may be implemented using an obsolete programming language

SD14.L4    Identify legacy system data architecture and understand that the data processed by the system may be distributed in different files which have incompatible structures. There may be data duplication and the data itself may be out of date, inaccurate and incomplete

SD14.L5   Understand the risks associated with replacing or keeping and maintaining legacy systems, and that keeping legacy systems in use avoids the risks of replacement but making changes to existing software usually becomes more difficult and expensive as systems get older

SD14.L6 Understand common pitfalls and mitigations

© Copyright Tech Partnership Degrees Ltd 2018 Page 17 of 26

Page 18: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

© Copyright Tech Partnership Degrees Ltd 2018 Page 18 of 26

Page 19: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

15 Software Quality

15. Software Quality15.1 Software quality concepts and culture15.2 Software quality standards15.3 Software quality processes15.4 Industry standard frameworks15.5 Common pitfalls and mitigations

SD15.L1 Explain and apply recognized principles to the building of high-quality software components, understanding the difference between safety and quality, and how mechanisms that improve quality may be used to partially underpin a safety argument

SD15.L2 Interpret and apply standards for software quality planning and assurance (e.g. ISO/IEC 9126 - international standard for the evaluation of software quality)

SD15.L3 Compare and contrast the different methods and techniques used to assure the quality of a software development processes and deliverables

SD15.L4 Awareness of industry standard static and dynamic code analysis frameworks (e.g. FindBugs, Checkstyle, etc)

SD15.L5 Understand common pitfalls and mitigations

16 Data Modelling, Database Development and Data Analysis

16. Data Modelling, Database Development and Data Analysis16.9 Data modelling principles16.10 Industry standard modelling16.11 Database design16.12 Database implementation16.13 Data querying16.14 Data mining16.15 Big data analysis16.16 Common pitfalls and mitigations

SD16.L1 Describe the basic principles of the relational data model and the issues of scale and management of large data or big data

SD16.L2 Be competent at developing a range of industry standard database models, including state and process models

SD16.L3 Create a relational database schema that incorporates key, entity integrity, and referential integrity constraints

SD16.L4 Implement a database-driven web site, explaining the relevant technologies involved in each tier of the architecture and the accompanying performance tradeoffs

SD16.L5 Write stored procedure queries that deal with parameters and have some control flow, to provide given functionality

SD16.L6 Understand the role of data mining, the algorithms developed to address different data mining goals and the application of these algorithms to real-world problems including big data

SD16.L7 Design, implement and evaluate big data analysis systems

SD16.L8 Understand common pitfalls and mitigations

© Copyright Tech Partnership Degrees Ltd 2018 Page 19 of 26

Page 20: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

17 Risk & Information Security

17. Risk & Information Security17.1 Risk17.2 Information Security foundations17.3 Security risks, threats and vulnerabilities17.4 Security testing of software and systems17.5 Secure architecture 17.6 Secure development17.7 Common pitfalls and mitigations

SD17.L1 Understand the nature of risk to information and information systems and define what cyber security is, and explain its importance when developing software solutions and mitigating risk

SD17.L2 The importance of determining and managing risk for threats and vulnerabilities to information systems on an ongoing basis

SD17.L3 Understand human aspects of information security including client data protection and the data protection act

SD17.L4 The types of testing that are commonly applied to identify vulnerabilities in software and how to make software more resilient to threats

SD17.L5 Design in robust, scalable and future-proof software security solutions that meet specific and generic requirements, and internal/external security standards and best practice

SD17.L6 Correctly apply the organisation’s security architecture to any particular systems or solutions development activities. Rewrite a simple program to remove common vulnerabilities, such as buffer overflows, integer overflows, and race conditions

SD17.L7 Understand common pitfalls and mitigations

18 Software Project Management

18. Software Project Management18.1 Project management standards18.2 Project planning and estimating18.3 Project resourcing and organisation 18.4 Project control18.5 Earned value management18.6 Project risk management18.7 Project documentation18.8 Common pitfalls and mitigations

SD18.L1 Interpret and use standards in software project management, including PRINCE2, ISO 10006 (project management quality) and ISO 12207 (software development process) along with the SEI’s CMMI model

SD18.L2 Prepare a project plan for a software project that includes estimates of size and effort, a schedule, resource allocation, configuration control, change management, and project risk identification and management

SD18.L3 Be able to identify the range of software development resources required and allocate them to a project. Demonstrate through involvement in a team project the central elements of team building and team Management during software development

© Copyright Tech Partnership Degrees Ltd 2018 Page 20 of 26

Page 21: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

SD18.L4 Manage project progress, productivity and other aspects of software development processes, against plan, undertaking quantities progress tracking against tolerance levels, reporting progress and escalating when required

SD18.L5 Be able to apply the concepts of earned value management to IT projects and programs

SD18.L6 Identify risks to a software project and indicate an approach to managing risk that will help to secure the on-time on-budget on-quality delivery of software

SD18.L7 Be able to document project progress using a RAID log to records risks, actions, issues and decisions

SD18.L8 Understand common pitfalls and mitigations

19 Professional Practice

19. Professional Practice19.1 Leadership, team working, team dynamics 19.2 Distributed working19.3 Presentation19.4 Written communications 19.5 Personal preferences19.6 Negotiation 19.7 Professionalism - Careers and CPD19.8 Professional body membership19.9 Keep up to date19.10 Common pitfalls and mitigations

SD19.L1 Understand the principles of leadership and be able to work effectively as a member or lead of a small development team and adopt best practices for developing software in teams recognising challenges and approaches taken to resolve them

SD19.L2 Understand the challenges of working in a geographically (and temporally) distributed team, and mechanisms to address the challenges

SD19.L3 Be able to make concise, engaging and well-structured verbal presentations, arguments and explanations, to a range of audiences about technical problems and their solutions, taking into account the audience viewpoint at all times

SD19.L4 Be fluent and professional in written communications, with the ability to articulate complex issues, taking into account the reader’s viewpoint

SD19.L5 Understand their personal preferences, styles, strengths and areas for development and be able to demonstrate how they could use this knowledge to good effect in a business environment

SD19.L6 Participate in interactions with others and negotiate agreements with peers

SD19.L7 Understand the wide variety of IT professional and managerial roles that exist and how these lead to exciting, successful and rewarding careers

SD19.L8 Understand the role and membership benefits of professional bodies in promoting IT professionalism

SD19.L9 Demonstrate adaptability, and the desire and capability to identify emerging technology, and stay up to date with technologies, processes and practices in a dynamic industry environment

SD19.L10 Understand common pitfalls and mitigations

© Copyright Tech Partnership Degrees Ltd 2018 Page 21 of 26

Page 22: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

20 Innovation

20. Innovation20.1 Technology innovation and emerging technologies20.2 Technology road mapping20.3 Business innovation20.4 Industry standard tools for innovation20.5 Common pitfalls and mitigations

SD21.L1 Understand technology innovation, including disruptive technologies and be able to describe current and past examples (e.g., cloud, apps, the hard disk drive, text messaging, GPS, the smart phone, Linux, Social networking)

SD21.L2 Produce a simple technology roadmap for a software technology product or service

SD21.L3 Understand that innovation is an important component of sustainable economic growth. Explore and describe how businesses innovate through technology, considering a range of organisations in different sectors

SD21.L4 Use a range of tools for assessing the commercial viability of a new technology based ideas and for transforming research based ideas into feasibility and business plans

SD21.L5 Understand common pitfalls and mitigations

© Copyright Tech Partnership Degrees Ltd 2018 Page 22 of 26

Page 23: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Appendix 1 – Summary Mapping Sheet for Learning Outcomes

SD06.L7 Understand common pitfalls and mitigationsSoftware Design

SD07.L1

SD07.L2

SD07.L3

SD07.L4 SD07.L5 Understand common pitfalls and mitigations

Software Verification and Testing

SD08.L1 SD08.L2 Analyse requirements to determine appropriate testing strategiesSD08.L3 Create, evaluate, and implement a test plan for a medium-size code segment

SD08.L4

SD08.L5 Be competent in developing automated tests within the build phase for web applications at a transaction and method level

SD08.L6SD08.L7 Understand common pitfalls and mitigations

Software Development Process

SD09.L1

SD09.L2

SD09.L3

SD09.L4SD09.L5 Understand common pitfalls and mitigations

Software Development in Context

SD10.L1

SD10.L2 Understand the contexts of real time and embedded systems development as well as component software within hardware systems

SD10.L3

SD10.L4

SD10.L5SD10.L6 Understand common pitfalls and mitigations

Software Configuration and Release Management

SD11.L1 SD11.L2 Modify software designs and deliverables following sound change control approaches and change control tools SD11.L3 SD11.L4 Be competent in using and applying industry standard version control tools to manage software deliverablesSD11.L5 Select and apply configuration management and change control tools for use within software development projectsSD11.L6 Be able to apply industry standard release management frameworks (e.g. Puppet) to release and manage software artifactsSD11.L7 Understand common pitfalls and mitigations

Software Deployment

SD12.L1 Understand the organisational context into which software is deployed and the human and business issues associated with deployment

SD12.L2 SD12.L3 Develop and apply user documentation and training materials as part of software development and deployment activitiesSD12.L4 Design and develop training materials and plan end user training following software deployment

7.

Discuss the properties of good software design including the nature and the role of associated documentation, appreciating that design increasingly covers use of existing code and 3rd party elements that may be an alternative to development of code from scratch through make/buy decisions

Select and apply appropriate design patterns in the construction of software using industry standard documentation such as GoF (the "Gang of Four")

Understand the different contexts for HCI (mobile devices, consumer devices, business applications, web, business applications, collaboration systems, games, etc.) and be able to define a user-centred design that explicitly recognises the user and is DDA compliant (Disability Discrimination Act)

Create and specify a software design for a medium-size software product using a software requirement specification, an accepted program design methodology (e.g., structured or object-oriented), and appropriate design notation

8.

Describe in detail the purpose of, and distinguish between the different types and levels of verification (analysis, demonstration, test, formal proof, inspection etc.) and testing (unit, integration, systems, and acceptance) including the role and value of test driven development techniques

Develop and execute accurate and clear test scripts through UI harnesses against acceptance criteria, requirements and internal and/or external standards using industry standard unit and component testing tools

Assess test results against expected results and acceptance criteria and present and communicate results effectively using appropriate communication styles

9.

Explain the importance of a software process for governing software development both technically, and in terms of cost control, quality, adherence of technical strategy, IPR identification etc

Understand the software life cycle, its phases and the deliverables that are produced, compare the traditional waterfall model to newer models such as agile, test –led development and other appropriate models

Select, with justification software development models and process elements most appropriate for the development and maintenance of a diverse range of software products

Understand the nature of industry standard software development process, including distributed work (e.g. onshore, near shore and offshore), to understand benefits and drawbacks of each and key enablers to make each model successful

10.

Understand the fundamental components of technology solutions in a range of typical modern business environments and explain their interactions for any applicable target system - including games console, smart-phone, embedded system understanding the differences that these environments bring

Demonstrate the capability to select, with justification, and apply an appropriate set of tools to support the development of a range of software products of medium size

Create a specification for a user interface based on requirements and implement a range of GUI’s for different contexts at different levels of detail from specifications

Develop and test a range of small and medium-scale technology solutions (programmes, apps or games), utilising an industry standard method and programming language

11.

Define configuration management processes for use throughout the product development life cycle in storing software deliverables and controlling and tracking changes to software. Use configuration management tools effectively, and apply change management processes properly

Understand the importance of version control and the difference between software level vs component level version control

12.

Recognise the challenges of deploying software releases which form part of a software or hardware system, perhaps with other software elements from a 3rd party, and embedded systems. Being able to interact to agree dependencies on interfaces, processing speed, resource utilisation etc. and staged deployment in to maturing prototypes and systems

© Copyright Tech Partnership Degrees Ltd 2018 Page 23 of 26

Page 24: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Software Design

SD07.L1

SD07.L2

SD07.L3

SD07.L4 SD07.L5 Understand common pitfalls and mitigations

Software Verification and Testing

SD08.L1 SD08.L2 Analyse requirements to determine appropriate testing strategiesSD08.L3 Create, evaluate, and implement a test plan for a medium-size code segment

SD08.L4

SD08.L5 Be competent in developing automated tests within the build phase for web applications at a transaction and method level

SD08.L6SD08.L7 Understand common pitfalls and mitigations

Software Development Process

SD09.L1

SD09.L2

SD09.L3

SD09.L4SD09.L5 Understand common pitfalls and mitigations

Software Development in Context

SD10.L1

SD10.L2 Understand the contexts of real time and embedded systems development as well as component software within hardware systems

SD10.L3

SD10.L4

SD10.L5SD10.L6 Understand common pitfalls and mitigations

Software Configuration and Release Management

SD11.L1 SD11.L2 Modify software designs and deliverables following sound change control approaches and change control tools SD11.L3 SD11.L4 Be competent in using and applying industry standard version control tools to manage software deliverablesSD11.L5 Select and apply configuration management and change control tools for use within software development projectsSD11.L6 Be able to apply industry standard release management frameworks (e.g. Puppet) to release and manage software artifactsSD11.L7 Understand common pitfalls and mitigations

Software Deployment

SD12.L1 Understand the organisational context into which software is deployed and the human and business issues associated with deployment

SD12.L2 SD12.L3 Develop and apply user documentation and training materials as part of software development and deployment activitiesSD12.L4 Design and develop training materials and plan end user training following software deploymentSD12.L5 Understand common pitfalls and mitigations

Software Maintenance

SD13.L1 SD13.L2 Read and Analyse existing software behaviour in order to improve its efficiency, reliability, and maintainabilitySD13.L3 Maintain and update software as required to ensure continued effectiveness or in response to external factors

SD13.L4

7.

Discuss the properties of good software design including the nature and the role of associated documentation, appreciating that design increasingly covers use of existing code and 3rd party elements that may be an alternative to development of code from scratch through make/buy decisions

Select and apply appropriate design patterns in the construction of software using industry standard documentation such as GoF (the "Gang of Four")

Understand the different contexts for HCI (mobile devices, consumer devices, business applications, web, business applications, collaboration systems, games, etc.) and be able to define a user-centred design that explicitly recognises the user and is DDA compliant (Disability Discrimination Act)

Create and specify a software design for a medium-size software product using a software requirement specification, an accepted program design methodology (e.g., structured or object-oriented), and appropriate design notation

8.

Describe in detail the purpose of, and distinguish between the different types and levels of verification (analysis, demonstration, test, formal proof, inspection etc.) and testing (unit, integration, systems, and acceptance) including the role and value of test driven development techniques

Develop and execute accurate and clear test scripts through UI harnesses against acceptance criteria, requirements and internal and/or external standards using industry standard unit and component testing tools

Assess test results against expected results and acceptance criteria and present and communicate results effectively using appropriate communication styles

9.

Explain the importance of a software process for governing software development both technically, and in terms of cost control, quality, adherence of technical strategy, IPR identification etc

Understand the software life cycle, its phases and the deliverables that are produced, compare the traditional waterfall model to newer models such as agile, test –led development and other appropriate models

Select, with justification software development models and process elements most appropriate for the development and maintenance of a diverse range of software products

Understand the nature of industry standard software development process, including distributed work (e.g. onshore, near shore and offshore), to understand benefits and drawbacks of each and key enablers to make each model successful

10.

Understand the fundamental components of technology solutions in a range of typical modern business environments and explain their interactions for any applicable target system - including games console, smart-phone, embedded system understanding the differences that these environments bring

Demonstrate the capability to select, with justification, and apply an appropriate set of tools to support the development of a range of software products of medium size

Create a specification for a user interface based on requirements and implement a range of GUI’s for different contexts at different levels of detail from specifications

Develop and test a range of small and medium-scale technology solutions (programmes, apps or games), utilising an industry standard method and programming language

11.

Define configuration management processes for use throughout the product development life cycle in storing software deliverables and controlling and tracking changes to software. Use configuration management tools effectively, and apply change management processes properly

Understand the importance of version control and the difference between software level vs component level version control

12.

Recognise the challenges of deploying software releases which form part of a software or hardware system, perhaps with other software elements from a 3rd party, and embedded systems. Being able to interact to agree dependencies on interfaces, processing speed, resource utilisation etc. and staged deployment in to maturing prototypes and systems

13.

Understand the impact of developing software for systems which need to be maintained for extended operational periods (e.g. avionics could be ~25 years), and be aware of the importance of documentation rigour in these circumstances, when contrasted against fast changing IT software where changes are likely to occur at a far higher frequency

Understand the role and purpose of refactoring in improving programming solutions efficiency, scalability, maintainability and extensibility and be able to revise the performance of existing code to provide for scalability and extensibility

© Copyright Tech Partnership Degrees Ltd 2018 Page 24 of 26

Page 25: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Tel: 020 7963 8920 / Fax: 020 7592 9138

© Copyright Tech Partnership Degrees Ltd 2018 Page 25 of 26

SD15.L1

SD15.L2

15.

Page 26: €¦  · Web viewThe Software Engineering for Business degree has been developed in collaboration with some of the UK's leading companies and Universities. The programme commenced

CONFIDENTIAL

Tech Partnership [email protected] / www.tpdegrees.com

Tech Partnership Degrees Ltd - A company limited by guarantee, registered in England and Wales (07223753) - Registered office: Victoria House, 39 Winchester Street, Basingstoke, Hampshire RG21 7EQ - VAT no GB 294295170

© Copyright Tech Partnership Degrees Ltd 2018 Page 26 of 26