ယနေ့ခေတ်ကမ္ဘာကြီးတွင် စီမံအုပ်ချုပ်ရေး၊ စီးပွားရေး၊ ပညာရေး၊ ကျန်းမာရေး၊ လူမှုရေး၊ နိုင်ငံရေး၊ စစ်မက် ရေးရာ အစစအရာရာ ကို ကွန်ပျူတာနည်းပညာဖြင့် ထိန်းချုပ်လုပ်ဆောင်နေကြပါသည်။
ကွန်ပျူတာကွန်ပျူတာနည်းပညာ၏ ကြီးမားလှသည့် တိုးတက်မှုကြောင့် လူ့အသုံးအဆောင် Electronic ပစ္စည်း တိုင်း လိုလိုသည့် ကွန်ပျူတာ တလုံးနှင့် လုပ်ဆောင်မှုပုံစံ မခြားနားတော့ပါ။ ယနေ့ခေတ် ကျွန်ုပ်တို့ ပါတ်ဝန်းကျင်၌ တွေ့မြင် နေရသည့် Phone, Tablet, Smart TV စသည်တို့သည် ကွန်ပျူတလုံးပင်ဖြစ်ပါတော့သည့်။
အင်တာနက်ကြောင့် ကမ္ဘာ့ စီးပွါးရေး ပုံသဏ္ဍာန် များစွာ ပြောင်းလဲ လာခဲ့ရပါသည်။ အထူးသဖြင့် အင်တာနက် သည် စီးပွားရေး လုပ်ငန်းများ အတွက် ကုန်ကျစရိတ် နည်းပါးပြီး တကမ္ဘာလုံးသို့ လက်လှမ်းမှီစေသောကြောင့် ကြီးမားကျယ်ပြန့်မှုအရှိဆုံး စျေးကွက်အသစ် တစ်ခု အဖြစ် ဖော်ဆောင် လာပါ သည်။
မိရိုးဖလာ လုပ်ငန်းများ သည် လည်း အင်တာနက်ပေါ်သို့ ရောက်ရှိ လာကြပြီး ကမ္ဘာကြီး၏ ပုံစံသစ် စီးပွားရေး လုပ်ငန်းများ အဖြစ်သို့ လျှင်မြန်စွာ ကူးပြောင်း လာခဲ့ပါသည်။ ယင်းကူပြောင်းမှု ဖြစ်စဉ်၌ ယခင်က အတွေးပင် မရှိခဲ့ဘူး သည့် လုပ်ငန်းအသစ်များ၊ လုပ်ကိုင်ဆောင်ရွက်မှု ပုံစံသစ်များ၊ ကုန်ပစ္စည်း အသစ်များ နှင့် ဝန်ဆောင်မှု အသစ်များစွာ ပေါ်ပေါက် လာခဲ့ပါသည်။
ထိုပုံစံသစ်များသည် ကွန်ပျူတာ ပညာရှင်တို့ အတွက် စိမ်ခေါ်မှုအသစ်များ၊ နည်းပညာ တီထွင်မှု အသစ်များ၊ အလုပ်အကိုင် အခွင့်အလမ်း အသစ်များ၊ အိုင်တီကုန်ပစ္စည်း အသစ်များ၊ တွေးခေါ်စဉ်းစားမှု အသစ် များစွာ တို့ကို ပေါ်ပေါက် လာစေခဲ့ ပါသည်။
ယခင်ရှိပြီး သမားရိုးကျ လုပ်ငန်းများ အပြင် အင်တာ နက်ပေါ်၌သာ လုပ်ကိုင်နေ ကြသည့် လုပ်ငန်းများအားလုံး ပုံမှန် ရောင်းဝယ် ဖောက်ကား လည်ပါတ်နိုင်ရေး၊ လုပ်ငန်း လိုအပ်ချက် အသစ်များကို တိုးချဲ့ဖြည့်တင်း နိုင်ရေး၊ အသစ်ပေါ်ပေါက်လာသည့် စိမ်ခေါ်မှုတို့ကို ကိုင်တွယ် နိုင်ရန် စသည်တို့ လိုအပ်ချက် များစွာ တို့အတွက် Software အသစ်တီထွင်ရန်လိုအပ်လာပါသည်။ ထို့အပြင် Hardware platform ပေါင်းစုံပေါ်၌ အလုပ်လုပ်နိုင် မည့် Business solution ပုံစံသစ်များ (Windows, Web, Mobile, Tablet etc.)၊ Cloud ပေါ် အလုပ်လုပ် နိုင်ရေး၊ ရှိပြီး Data များကို Mining, Business intelligence analysis, BI Dashboard များပြုလုပ်ရေး စသည် မပြီးစီး နိုင်သော လိုအပ်ချက်များစွာတို့ ဖြည့်ဆည်းနိုင်ရန်အတွက် ကွန်ပျူတာ Software engineer များစွာ လိုအပ် လာပါသည်။
နိုင်ငံတကာနှင့်ရင်ဘောင်တန်းပြီး လေ့လာအသုံချရသည့် နည်းပညာရှင်များအဖြစ်လုပ်ကိုင်ရမည် ဖြစ်သောကြောင့် အသက်မွေးမှု လမ်းကြောင်း ခိုင်မာပါသည်။ လစ်လပ်နေရာများပြားပြီး ပြည်တွင်း/ပြည်ပမှာ အလုပ်အကိုင် ပေါများပါသည်။
✱ အခြေခံ ပညာ အထက်တန်း အောင်မြင်ပြီးသူ
✱(သို့) GCSE’ O အောင်မြင်ပြီးသူ
✱ (သို့) L3IFD အောင်မြင်ပြီးသူ ဖြစ်ရမည်။
✱ IELTS (4.5) နှင့်အထက် ညီမျှသော အင်္ဂလိပ်စာ အဆင့် ရှိရမည်။
(ကျောင်းတက်နေစဉ် IELTS 6.5 နှင့်အထက် ရသည် ထိ ထပ်မံ လေ့လာရန် လိုအပ် ပါသည်။)
✱ 1st Year တွင် Semester (၂)ခု ဖြင့်သော်လည်းကောင်း၊ 2nd Year တွင်လည်း Semester (၂)ခု ဖြင့်သော်လည်းကောင်း၊ စုစုပေါင်း သင်တန်းကာလ (၂)နှစ် ကျော်ကျော်မျှ ကြာမြင့်ပါမည်။
|1st Year||Foundation Semester||(၁၂) ပါတ်။||Project ကာလ (၁) ပါတ်။||(၁၃) ပါတ်။|
|1st Year||Semester #1||(၁၆) ပါတ်။|
စာမေးပွဲကာလ (၆) ပါတ်။
Semester break (၂) ပါတ်။
|Semester #2||(၁၆) ပါတ်။|
စာမေးပွဲကာလ (၆) ပါတ်။
1st Year break (၂) ပါတ်။
|2nd Year||Semester #1||(၁၆) ပါတ်။|
စာမေးပွဲကာလ (၆) ပါတ်။
Semester break (၂) ပါတ်။
|Semester #2||(၁၆) ပါတ်။||စာမေးပွဲကာလ (၆) ပါတ်။||(၂၂) ပါတ်။|
|စုစုပေါင်းကြာမြင့်ချိန်||(၁၀၇) ပါတ် (သို့) (၂)နှစ်ကျော်ကျော်ခန့်။|
|Registration fee||USD 400|
|သင်တန်းကြေး||သိန်း (၁၂၀) ကျပ်တိတိ။||ဒီပလိုမာရသည်အထိ (၂)နှစ်စာ သင်တန်းကြေးဖြစ်ပါသည်။|
|Resit fee||တဘာသာလျှင် ၁၅၀,၀၀၀ ကျပ် တိတိ။||စာမေးပွဲကျသည့် ဘာသာ ကိုစာမေးပွဲ ပြန်လည် ဖြေဆို ရပါမည်။|
|Repeat fee||တဘာသာလျှင် ၃၀၀,၀၀၀ ကျပ် တိတိ။||GPA မပြည့်မှီသည့် ဘာသာ ရှိပါက ယင်းဘာသာအတွက် ကျောင်းပြန်တက်ရပါမည်။|
|၁။||သင်တန်းအပ်နှံစဉ် ပထမအကြိမ်||(၂၀) သိန်း ကျပ်တိတိ။|
|၂။||ကျောင်းတက်ပြီး ပထမ (၃) လ မြောက်||(၁၀) သိန်း ကျပ်တိတိ။ ဒေါ်လာ (၄၀၀) တိတိ။|
|၃။||နောက်(၃) လအကြာ၌ ဒုတိယ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
|၄။||နောက်(၃) လအကြာ၌ တတိယ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
|၅။||နောက်(၃) လအကြာ၌ စတုတ္ထ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
|၆။||နောက်(၃) လအကြာ၌ ပဉ္စမ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
|ရ။||နောက်(၃) လအကြာ၌ ဆဠမ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
|၈။||နောက်(၃) လအကြာ၌ သတ္တမ အကြိမ်||(၁၅) သိန်း ကျပ်တိတိ။|
အတန်းတွင်း နေ့စဉ် အကဲဖြတ် စစ်ဆေးမှု စနစ်ကို ကျင့်သုံးပါသည်။
စသည်တို့ကို စုပေါင်းပြီး ကျောင်းသားတဦးချင်း၏ GPA ကို အနည်းဆုံး ၀.၀ မှ စ၍ အများဆုံး ၅.၀ အထိတွက်ချက်ပါသည်။
|LO1 Define basic algorithms to carry out an operation and outline the process of programming an application|
|P1 Define an algorithm and outline the process of building an application. P2 Determine the steps taken from writing code to execute.||M1 Analyse the process of writing code, including the potential challenges faced.||D1 Evaluate the implementation of an algorithm in a suitable language and the relationship between the written algorithm and the code variant.|
|LO2 Explain the characteristics of procedural, object-orientated, and event-driven programming|
|P3 Discuss what procedural, object-orientated, and event-driven paradigms are; their characteristics and the relationship between them.||M2 Compare the procedural, object-orientated, and event-driven paradigms used in the given source code of an application.||D2 Critically evaluate the source code of an application that implements the procedural, object-orientated, and event-driven paradigms, in terms of the code structure and characteristics.|
|LO3 Implement basic algorithms in code using an IDE|
|P4 Write a program that implements an algorithm using an IDE.||M3 Enhance the algorithm written, using the features of the IDE to manage the development process.||D3 Evaluate the use of an IDE for the development of applications contrasted with not using an IDE.|
|LO4 Determine the debugging process and explain the importance of a coding standard|
|P5 Explain the debugging process and the debugging facilities available in the IDE. P6 Explain the coding standard you have used in your code.||M4 Examine how the debugging process can be used to help develop more secure, robust applications.||D4 Evaluate the role and purpose of a coding standard and why it is necessary for a team as well as for the individual.|
|LO1 Examine networking principles and their protocols||D1 Evaluate the topology protocol selected for a given scenario and how it demonstrates the efficient utilization of a networking system.|
|P1 Discuss the benefits and constraints of different network types and standards. P2 Explain the impact of network topology, communication, and bandwidth requirements.||M1 Assess common networking principles and how protocols enable the effectiveness of networked systems.|
|LO2 Explain networking devices and operations|
|P3 Discuss the operating principles of networking devices and server types. P4 Discuss the interdependence of workstation hardware and relevant networking software.||M2 Explore a range of server types and justify the selection of a server for a given scenario, regarding cost and performance optimizations.|
|LO3 Design efficient networked systems||D2 Critically reflect on the implemented network, including the design and decisions made to enhance the system.|
|P5 Design a networked system to meet a given specification. P6 Design a maintenance schedule to support the networked system.||M3 Analyses user feedback on your designs with the aim of optimizing your design and improving efficiency.|
|LO4 Implement and diagnose networked systems|
|P7 Implement a networked system based on a prepared design. P8 Document and analyses test results against expected results.||M4 Recommend potential enhancements for the networked systems.|
|LO1 Demonstrate a range of interpersonal and transferable communication skills to a target audience|
|P1 Demonstrate, using different communication styles and formats, that you can effectively design and deliver a training event for a given target audience. P2 Demonstrate that you have used effective time management skills in planning an event.||M1 Design a professional schedule to support the planning of an event, including contingencies and justifications of time allocated.||D1 Evaluate the effectiveness and application of interpersonal skills used in the design and delivery of a training event.|
|LO2 Apply critical reasoning and thinking to a range of problem-solving scenarios|
|P3 Demonstrate the use of different problem-solving techniques in the design and delivery of an event. P4 Demonstrate that critical reasoning has been applied to the design and delivery of the event.||M2 Research the use of different problem-solving techniques used in the design and delivery of an event. M3 Justify the use and application of a range of methodologies in the design and delivery of an event.||D2 Evaluate the overall success of the event delivered, in terms of how well critical reasoning and thinking were applied to achieve the end goal.|
|LO3 Discuss the importance and dynamics of working within a team and the impact of the team working in different environments|
|P5 Discuss the importance of team dynamics in the success and/or failure of group work. P6 Work in a team to achieve a defined goal.||M4 Analyse team dynamics, in terms of the roles that group members play in a team and the effectiveness in terms of achieving shared goals.||D3 Critically evaluate your own role and contribution to a group scenario.|
|LO4 Examine the need for Continuing Professional Development (CPD) and its role within the workplace and for higher-level learning|
|P7 Discuss the importance of CPD and its contribution to own learning and motivation. P8 Review different motivational theories and the impact they can have on performance in the workplace. P9 Produce a development plan that outlines responsibilities, performance objectives and required skills for future goals.||M5 Justify the role of CPD and development planning in building motivation.||D4 Evaluate a range of evidence criteria that is used as a measure for effective CPD.|
|LO1 Use an appropriate design tool to design a relational database system for a substantial problem|
|P1 Design a relational database system using appropriate design tools and techniques, containing at least four interrelated tables, with clear statements of user and system requirements.||M1 Produce a comprehensive design for a fully-functional system, which includes interface and output designs, data validations, and data normalization.||D1 Evaluate the effectiveness of the design in relation to user and system requirements.|
|LO2 Develop a fully-functional relational database system, based on an existing system design||D2 Evaluate the effectiveness of the database solution in relation to user and system requirements and suggest improvements.|
|P2 Develop the database system with evidence of user interface, output, and data validations, and querying across multiple tables. P3 Implement a query language into the relational database system.||M2 Implement a fully-functional database system, which includes system security and database maintenance. M3 Assess whether meaningful data has been extracted through the use of query tools to produce appropriate management information.|
|LO3 Test the system against user and system requirements|
|P4 Test the system against user and system requirements.||M4 Assess the effectiveness of the testing, including an explanation of the choice of test data used.|
|LO4 Produce technical and user documentation|
|P5 Produce technical and user documentation.||M5 Produce technical and user documentation for a fully-functional system, including data flow diagrams and flowcharts, describing how the system works.||D3 Evaluate the database in terms of improvements needed to ensure the continued effectiveness of the system.|
|LO1 Assess risks to IT security||D1 Evaluate a range of physical and virtual security measures that can be employed to ensure the integrity of organizational IT security.|
|P1 Discuss types of security risks to organizations. P2 Assess organizational security procedures.||M1 Analyse the benefits of implementing network monitoring systems with supporting reasons.|
|LO2 Describe IT security solutions|
|P3 Discuss the potential impact to IT security of incorrect configuration of firewall policies and third-party VPNs. P4 Discuss, using an example for each, how implementing a DMZ, static IP, and NAT in a network can improve network security.||M2 Propose a method to assess and treat IT security risks.|
|LO3 Review mechanisms to control organizational IT security|
|P5 Review risk assessment procedures in an organization. P6 Explain data protection processes and regulations as applicable to an organization.||M3 Summaries an appropriate risk-management approach or ISO standard and its application in IT security. M4 Analyse possible impacts on organizational security resulting from an IT security audit.||D2 Recommend how IT security can be aligned with an organizational policy, detailing the security impact of any misalignment.|
|LO4 Manage organizational security|
|P7 Design a suitable security policy for an organization, including the main components of an organizational disaster recovery plan. P8 Discuss the roles of stakeholders in the organization in implementing security audits.||M5 Justify the security plan developed giving reasons for the elements selected.||D3 Evaluate the suitability of the tools used in the organizational policy to meet business needs.|
This unit is assessed through a Pearson-set assignment. The project brief will be set by the center, based on a theme provided by Pearson (this will change annually). The theme and chosen project within the theme will enable students to explore and examine a relevant and current topical aspect of computing in the context of a business environment.
As computing systems and technologies continually develop so do the ways in which businesses utilize technologies to support their operations and remain competitive. As a computing professional it is important to understand the ways in which technology evolves and how it can be utilized in different sectors.
The aim of this unit is to give students an opportunity to demonstrate the research skills required for developing a deeper understanding of a subject and the ability to use evidence to inform decisions. Students will undertake independent research, and investigation of a theme set by Pearson. Students will also investigate and research an industry sector as outlined in the canter-set project brief. Students will use the outcomes of their research to help them plan a computer-based project and to support recommendations for how the identified business could utilize the tools and technologies identified as part of their research.
On successful completion of this unit, students will have the confidence to engage in decision-making, problem-solving, research activities, and project planning tasks. They will have the fundamental knowledge and skills that will enable them to investigate and examine relevant computing concepts in a work-related context, determine appropriate outcomes, decisions, or solutions, and present evidence to various stakeholders in an acceptable and understandable format.
By the end of this unit students will be able to:
|LO1 Conduct small-scale research, information gathering, and data collection to generate knowledge on an identified subject||D1 Interpret findings to generate knowledge on how the research theme supports business requirements in the identified sector.|
P1 Demonstrate qualitative and quantitative research methods to generate relevant primary data for an identified theme.
P2 Examine secondary sources to collect relevant secondary data and information for an identified theme.
|M1 Analyse data and information from primary and secondary sources to generate knowledge on an identified theme.|
|LO2 Explore the features and business requirements of organizations in an identified sector|
P3 Discuss the features and operational areas of businesses in an identified sector.
P4 Discuss the role of stakeholders and their impact on the success of a business.
|M2 Analyse the challenges to the success of a business in an identified sector.|
|LO3 Produce project plans based on research of the chosen theme for an identified organization||D2 Evaluate the project planning recommendations made in relation to the needs of the identified organization and the accuracy and reliability of the research carried out.|
|P5 Devise comprehensive project plans for a chosen scenario, including a work and resource allocation breakdown using appropriate tools.||M3 Produce comprehensive project plans that effectively consider aims, objectives, and risks/benefits for an identified organization.|
|LO4 Present your project recommendations and justifications of decisions made, based on research of the identified theme and sector|
P6 Communicate appropriate project recommendations for technical and non-technical audiences.
P7 Present arguments for the planning decisions made when developing the project plans.
P8 Discuss the accuracy and reliability of the different research methods applied.
|M4 Assess the extent to which the project recommendations meet the needs of the identified organization, including fully-supported rationales for planning decisions made.|
The software development lifecycle is an integrated process that promotes building good quality, secure software throughout the entire development process. The aim of this unit is to give students the knowledge and skills needed to understand software development lifecycles so that they can demonstrate their knowledge by implementing a software development lifecycle with a suitable methodology.
The unit introduces students to lifecycle decision-making at different stages of the software development process. They will examine various lifecycle models and learn to appreciate their particular characteristics in order to understand for which project environments they are most appropriate. Theoretical understanding will be translated into practical skills through an actual software development lifecycle project. Students will become confident in the use of particular tools and techniques relevant to a chosen methodology.
Among the topics included in this unit are iterative and sequential models of software development lifecycles and reference frameworks for initially capturing conceptual data and information through a feasibility study, and requirement gathering techniques through to analysis, design, and software implementation activities.
Students will develop skills such as communication literacy, critical thinking, analysis, reasoning, and interpretation, which are crucial for gaining employment and developing academic competence.
By the end of this unit students will be able to:
|LO1 Describe different software development lifecycles|
P1 Describe two iterative and two sequential software lifecycle models.
P2 Explain how risk is managed in software lifecycle models.
|M1 Discuss using an example, why a particular lifecycle model is selected for a development environment.||D1 Assess the merits of applying the Waterfall lifecycle model to a large software development project.|
|LO2 Explain the importance of a feasibility study|
P3 Explain the purpose of a feasibility report.
P4 Describe how technical solutions can be compared.
|M2 Discuss the components of a feasibility report.||D2 Assess the impact of different feasibility criteria on a software investigation.|
|LO3 Undertake a software development lifecycle|
P5 Undertake a software investigation to meet a business need.
P6 Use appropriate software analysis tools/techniques to carry out a software investigation and create supporting documentation.
M3 Analyse how software requirements can be traced throughout the software lifecycle.
M4 Discuss two approaches to improving software quality.
|D3 Evaluate the process of undertaking a systems investigation with regard to its effectiveness in improving software quality.|
|LO4 Discuss the suitability of software behavioral design techniques|
|P7 Discuss, using examples, the suitability of software behavioral design techniques.|
M5 Analyse a range of software behavioral tools and techniques.
M6 Differentiate between a finite state machine (FSM) and an extended FSM, providing an application of use for both.
|D4 Present justifications of how data-driven software can improve the reliability and effectiveness of the software.|
In 1837, English mathematicians Charles Babbage and Ada Lovelace in collaboration described a machine that could perform arithmetical operations and store data in memory units. This design of their ‘Analytical Engine is the first representation of modern, general-purpose computer technology. Although modern computers have advanced far beyond Babbage and Lovelace’s initial proposal, they still rely fundamentally on mathematics for their design and operation.
This unit introduces students to the mathematical principles and theories that underpin the computing curriculum. Through a series of case studies, scenarios, and task-based assessments, students will explore number theory in a variety of scenarios; use applicable probability theory; apply geometrically and vector methodology; and, finally, evaluate problems concerning differential and integral calculus.
Among the topics included in this unit are: prime number theory, sequences and series, probability theory, geometry, differential calculus, and integral calculus.
On successful completion of this unit, students will have gained confidence in the mathematics that is needed in other computing units. They will have developed skills such as communication literacy, critical thinking, analysis, reasoning, and interpretation, which are crucial for gaining employment and developing academic competence.
By the end of this unit students will be able to:
|LO1 Use applied number theory in practical computing scenarios|
P1 Calculate the greatest common divisor and least common multiple of a given pair of numbers.
P2 Use relevant theory to sum arithmetic and geometric progressions.
|M1 Identify multiplicative inverses in modular arithmetic.||D1 Produce a detailed written explanation of the importance of prime numbers in the field of computing.|
|LO2 Analyse events using probability theory and probability distributions|
P3 Deduce the conditional probability of different events occurring in independent trials.
P4 Identify the expectation of an event occurring from a discrete, random variable.
|M2 Calculate probabilities in both binomially distributed and normally distributed random variables.||D2 Evaluate probability theory to an example involving hashing and load balancing.|
|LO3 Determine solutions of graphical examples using geometry and vector methods|
P5 Identify simple shapes using coordinate geometry.
P6 Determine shape parameters using appropriate vector methods.
|M3 Evaluate the coordinate system used in programming a simple output device.||D3 Construct the scaling of simple shapes that are described by vector coordinates.|
|LO4 Evaluate problems concerning differential and integral calculus|
P7 Determine the rate of change in an algebraic function.
P8 Use integral calculus to solve practical problems involving area.
|M4 Analyse maxima and minima of increasing and decreasing functions, using higher order derivatives.||D4 Justify, by further differentiation, that a value is a minimum.|
This unit is assessed through a Pearson-set assignment. Students will choose their own project based on a theme provided by Pearson (this will change annually). The project must be related to their specialist pathway of study (unless the student is studying the general computing pathway). This will enable students to explore and examine a relevant and current topical aspect of computing in the context of a business environment and their chosen specialist pathway.
The aim of this unit is to give students the opportunity to engage in sustained research in a specific field of study. Students will be able to demonstrate the capacity and ability to identify a research theme, develop research aims, objectives, and outcomes, and present the outcomes of such research in both written and verbal formats. Students are encouraged to reflect on their engagement in the research process, during which recommendations for personal development are key learning points.
On successful completion of this unit, students will have the confidence to engage in problem-solving and research activities. Students will have fundamental knowledge and skills that will enable them to investigate workplace issues and problems, determine appropriate solutions and present evidence to various stakeholders in an acceptable and understandable format.
Students will have developed skills such as communication literacy, critical thinking, analysis, synthesis, reasoning, and interpretation, which are crucial for gaining employment and developing academic competence.
By the end of this unit students will be able to:
|LO1 Examine appropriate research methodologies and approaches as part of the research process||D1 Critically evaluate research methodologies and processes in the application to a computing research project to justify chosen research methods and analysis.|
P1 Produce a research proposal that clearly defines a research question or hypothesis, supported by a literature review.
P2 Examine appropriate research methods and approaches to primary and secondary research.
M1 Analyse different research approaches and methodology and make
justifications for the choice of methods selected based on philosophical/theoretical frameworks.
|LO2 Conduct and analyse research relevant to a computing research project|
P3 Conduct primary and secondary research using appropriate methods for a computing research project that considers costs, access, and ethical issues.
P4 Apply appropriate analytical tools, analyse research findings and data.
|M2 Discuss merits, limitations, and pitfalls of approaches to data collection and analysis.|
|LO3 Communicate the outcomes of a research project to identified stakeholders|
|P5 Communicate research outcomes in an appropriate manner for the intended audience.||M3 Analyse the extent to which outcomes meet set research objectives and communicate judgments effectively for the intended audience||D2 Evaluate outcomes and make valid, justified recommendations.|
|LO4 Reflect on the application of research methodologies and concepts|
P6 Discuss the effectiveness of research methods applied, for meeting the objectives of the computing research project.
P7 Discuss alternative research methodologies and lessons learned in view of the outcomes.
|M4 Analyse results in recommended actions for improvements and future research considerations.||D3 Demonstrate reflection and engagement in the resource process, leading to recommended actions for future improvement.|
|LO1 Discuss the use of data and information to support business processes and the value they have for an identified organization||D1 Evaluate the wider implications of using data and information to support business processes in an identified organization.|
|P1 Discuss how data and information support business processes and the value they have for organizations. P2 Discuss how data is generated and the tools used to manipulate it to form meaningful data to support business operations.||M1 Assess the value of data and information to individuals and organizations in relation to real-world business processes.|
|LO2 Discuss the implications of the use of data and information to support business processes in a real-world scenario|
|P3 Discuss the social legal and ethical implications of using data and information to support business processes. P4 Describe common threats to data and how they can be mitigated at on a personal and organizational level.||M2 Analyse the impact of using data and information to support business real-world business processes.|
|LO3 Explore the tools and technologies associated with data science and how it supports business processes||D2 Evaluate the use of data science techniques against user and business requirements of an identified organization.|
|P5 Discuss how tools and technologies associated with data science are used to support business processes and inform decisions.||M3 Assess the benefits of using data science to solve problems in real-world scenarios.|
|LO4 Demonstrate the use of data science techniques to make recommendations to support real-world business problems|
|P6 Design a data science solution to support decision-making related to a real-world problem. P7 Implement a data science solution to support decision-making related to a real-world problem.||M4 Make justified recommendations that support decision-making related to a real-world problem.|
|LO1 Examine set theory and functions applicable to software engineering|
|P1 Perform algebraic set operations in a formulated mathematical problem. P2 Determine the cardinality of a given bag (multiset).||M1 Determine the inverse of a function using appropriate mathematical techniques.||D1 Formulate corresponding proof principles to prove properties about defined sets.|
|LO2 Analyse mathematical structures of objects using graph theory|
|P3 Model contextualized problems using trees, both quantitatively and qualitatively. P4 Use Dijkstra’s algorithm to find the shortest path spanning tree in a graph.||M2 Assess whether an Eulerian and Hamiltonian circuit exists in an undirected graph.||D2 Construct a proof of the Five Color Theorem.|
|LO3 Investigate solutions to problem situations using the application of Boolean algebra|
|P5 Diagram a binary problem in the application of Boolean algebra. P6 Produce a truth table and its corresponding Boolean equation from an applicable scenario.||M3 Simplify a Boolean equation using algebraic methods.||D3 Design a complex system using logic gates.|
|LO4 Explore applicable concepts within abstract algebra|
|P7 Describe the distinguishing characteristics of different binary operations that are performed on the same set. P8 Determine the order of a group and the order of a subgroup in the given examples.||M4 Validate whether a given set with a binary operation is indeed a group.||D4 Explore, with the aid of a prepared presentation, the application of group theory relevant to your given example.|
|LO1 Examine abstract data types, concrete data structures, and algorithms|
|P1 Create a design specification for data structures, explaining the valid operations that can be carried out on the structures. P2 Determine the operations of a memory stack and how it is used to implement function calls in a computer.||M1 Illustrate, with an example, a concrete data structure for a First in First out (FIFO) queue. M2 Compare the performance of two sorting algorithms.||D1 Analyse the operation, using illustrations, of two network shortest path algorithms, providing an example of each.|
|LO2 Specify abstract data types and algorithms in a formal notation|
|P3 Specify the abstract data type for a software stack using an imperative definition.||M3 Examine the advantages of encapsulation and information hiding when using an ADT.||D2 Discuss the view that imperative ADTs are a basis for object orientation offering a justification for the view.|
|LO3 Implement complex data structures and algorithms|
|P4 Implement a complex ADT and algorithm in an executable programming language to solve a well-defined problem. P5 Implement error handling and report test results.||M4 Demonstrate how the implementation of an ADT/algorithm solves a well-defined problem.||D3 Critically evaluate the complexity of an implemented ADT/algorithm.|
|LO4 Assess the effectiveness of data structures and algorithms|
|P6 Discuss how asymptotic analysis can be used to assess the effectiveness of an algorithm. P7 Determine two ways in which the efficiency of an algorithm can be measured, illustrating your answer with an example.||M5 Interpret what a trade-off is when specifying an ADT, using an example to support your answer.||D4 Evaluate three benefits of using implementation independent data structures.|
The advanced features of programming languages are used to develop software that is efficient, robust, and can be mathematically proven to work. Well-designed code can positively impact the performance of an application as well as the readability and extensibility of the code, thereby improving productivity and reducing cost.
Effective object-orientated programming (OOP) should have low coupling, high cohesion, and strong encapsulation, which is something that the SOLID principles help to obtain. The idea is that applying those principles together, makes it easier to write better quality code with greater diversity and robustness. The system created becomes easy to maintain, reuse, and extend over time. SOLID principles help software developers to achieve scalability and avoid creating code that breaks every time it needs a change. Clean coding maintains the readability of the programs produced by encouraging descriptive naming of objects and keeping to a single purpose model for each entity. Programming patterns work to ensure that designs produced are language-independent, encapsulate ideas, and are reusable in multiple circumstances.
The development of an application to process a large data set is a practical example of how to solve a problem that can be used in many different situations, can help deepen the understanding of OOP and help improve software design and reusability.
The aim of this unit is to familiarize students with these concepts and their best practices to ensure that their code is in line with industry standards. Among the topics included in this unit are object-orientated programming, introduction to design patterns, and SOLID, including its version of five principles of object-oriented programming and automated software testing.
The unit is especially useful for those intending to move into computer science, software development, programming, systems analysis, and software testing
By the end of this unit, students will be able to:
|LO1 Investigate the impact of SOLID development principles on the OOP paradigm||D1 Evaluate the impact of SOLID development principles on object-orientated application development.|
P1 Investigate the characteristics of the object-orientated paradigm, including class relationships and SOLID principles.
P2 Explain how clean coding techniques can impact the use of data structures and operations when writing algorithms.
|M1 Analyse, with examples, each of the creational, structural and behavioral design pattern types.|
LO2 Design a large dataset processing application using
SOLID principles and clean coding techniques
P3 Design a large data set processing application, utilizing SOLID principles, clean coding techniques, and a design pattern.
P4 Design a suitable testing regime for the application, including provision for automated testing.
|M2 Refine the design to include multiple design patterns.|
|LO3 Build a data processing application based on a developed design||D2 Analyse the benefits and drawbacks of different forms of automatic testing of applications and software systems, with examples from the developed application.|
|P5 Build a large dataset processing application based on the design produced.||M3 Assess the effectiveness of using SOLID principles, clean coding techniques, and programming patterns on the application developed.|
|LO4 Perform automatic testing on a data processing application|
P6 Examine the different methods of implementing automatic testing as designed in the test plan.
P7 Implement automatic testing of the developed application.
|M4 Discuss the differences between developer-produced and vendor-provided automatic testing tools for applications and software systems.|
Application development is a process of planning, creating, testing, and deploying an information system. Often applications are developed to automate a process, build a product to address a business need or get ahead of the competition by being innovative. Professionalism and critical thinking supported by an ability to work independently and as part of a team are core skills for a developer.
This unit introduces students to application development. It is designed to simulate the roles and responsibilities of a commercial developer working in a suitable business environment, with access to a small team of colleagues. Initially, students are introduced to a business-related problem and will need to adopt and use appropriate methods and practices to analyse, break down and discuss the issues – then decide, design, create and test a possible solution. Students should be free to debate, evaluate and select different design and development methodologies, depending on their own judgment and consideration.
Among the topics included in this unit are design and developer documentation; problem analysis; research, system and user requirements; design methodologies and principles; security considerations; development methodologies; software development lifecycles; teamwork, peer reviews, development tools, and techniques; integrated development environments; debugging, testing, software versions, and quality assurance.
On successful completion of this unit, students will be able to produce a software design document by analyzing a business-related problem and deducing an appropriate solution, including a set of initial requirements. They will be able to select and use design and development methodologies, with tools and techniques associated with the creation of a business application. They will also be able to work individually and as part of a team to plan, prepare and produce a functional business application with support documentation, and assess and plan improvements to a business application by evaluating its performance against its software design document and initial requirements. As a result, students will develop skills such as communication literacy, critical thinking, analysis, reasoning, and interpretation, which are crucial for gaining employment and developing academic competence.
By the end of this unit students will be able to:
|LO1 Produce a software design document for a business-related problem based on requirements||D1 Evaluate the solution to a business-related problem and the preferred software development methodology by comparing the various software development tools and techniques researched.|
P1 Produce a well-defined problem definition statement, supported by a set of user and system requirements for a business problem.
P2 Review areas of risk related to the successful development of a proposed application.
|M1 Analyse a business-related problem using appropriate methods to produce a well-structured software design document.|
|LO2 Research design and development tools and methodologies for the creation of a business application|
|P3 Research the use of software development tools and techniques for the development of a proposed application.||M2 Justify the software development tools and development methodology selected.|
|LO3 Plan and produce a functional business application with support documentation|
D2 Justify improvements to the
business application system made because of feedback and also feedback that was not acted upon, including opportunities for improvement and further development
P4 Conduct a peer review of the problem definition statement, proposed solution, and development strategy, documenting any feedback given.
P5 Develop a functional business application with support documentation based on a specified business problem.
M3 Interpret peer-review feedback and identify opportunities not previously considered.
M4 Develop a functional business application based on a specific software design document, with supportive evidence of using the preferred tools, techniques, and methodologies.
|LO4 Evaluate the performance of a business application against its software design document and initial requirements|
|P6 Review the performance of the business application against the problem definition statement and initial requirements.||M5 Critically review the design, development and testing stages of the application development process including risks.|
Machine learning is the science of getting computers that have the ability to learn from data or experience to solve a given problem without being explicitly programmed. It has been around for many years; however, it has become one of the hottest fields of study in the computing sector. Machine learning is in use in several areas such as predictive modeling, speech recognition, object recognition, computer vision, anomaly detection, medical diagnosis and prognosis, robot control, time series forecasting, and many more.
This unit introduces students to the basic theory of machine learning, the most efficient machine learning algorithms, and the practical implementation of these algorithms. Students will gain hands-on experience in getting these algorithms to solve real-world problems.
Topics included in this unit are the foundations of machine learning, types of learning problems (classification, regression, clustering, etc.), the taxonomy of machine learning algorithms (supervised learning, unsupervised learning, reinforcement learning), machine learning algorithms (decision tree, naïve Bayes, k-nearest neighbor, support vector machine, etc.).
On successful completion of this unit, students will understand the concept of machine learning and machine learning algorithms. They will have gained hands-on experience in implementing algorithms using a programming language such as C/C++, C#, Java, Python, R, or a machine learning tool such as Weka, KNIME, or Microsoft AZURE. As a result, students will develop skills such as communication literacy, critical thinking, analysis, reasoning, and interpretation, which are crucial for gaining employment and developing academic competence.
By the end of this unit students will be able to:
|LO1 Analyse the theoretical foundation of machine learning to determine how an intelligent machine works||D1 Critically evaluate why machine learning is essential to the design of intelligent machines.|
P1 Analyse the types of learning problems.
P2 Demonstrate the taxonomy of machine learning algorithms.
|M1 Evaluate the category of machine learning algorithms with appropriate examples.|
|LO2 Investigate the most popular and efficient machine learning algorithms used in the industry|
P3 Investigate a range of machine learning algorithms and how these algorithms solve learning problems.
P4 Demonstrate the efficiency of these algorithms by implementing them using an appropriate programming language or machine learning tool.
M2 Analyse these algorithms using an appropriate example to determine their power.
|LO3 Develop a machine learning application using an appropriate programming language or machine learning tool for solving a real-world problem|
D2 Critically evaluate the implemented learning solution and its effectiveness in meeting end-user requirements.
P5 Prepare training and test data sets in order to implement a machine learning solution for an appropriate learning problem.
P6 Implement a machine learning solution with a suitable machine learning algorithm and demonstrate the outcome.
|M3 Test the machine learning application using a range of test data and explain each stage of this activity.|
|LO4 Evaluate the outcome or the result of the application to determine the effectiveness of the learning algorithm used in the application|
P7 Discuss whether the result is balanced, underfitting or overfitting.
P8 Analyse the result of the application to determine the effectiveness of the algorithm.
|M4 Evaluate the effectiveness of the learning algorithm used in the application.|