BSc Applied Software Engineering
Cardiff, Verenigd Koninkrijk
DUUR
3 Years
TALEN
Engels
TEMPO
Full time
DEADLINE VOOR AANMELDING
Aanvraagdeadline
EERSTE STARTDATUM
Sep 2025
COLLEGEGELD
GBP 28.200 *
STUDIE FORMAAT
Op de campus
* for overseas | for home year two and three: £9,250 / year one: £9,000
toelatingen
Beurzen en financiering
Loans and Grants
Financial support information for students.
Bursaries
We wish to ensure that financial circumstances are not a barrier to your undergraduate study opportunities.
Scholarships
We wish to recruit the very best students and to help us achieve this, we offer several scholarships.
Part-time Undergraduate Funding
Information about funding for part-time students.
Financial Support for Asylum Seekers
Information for asylum seekers about the financial support we offer undergraduates and options for funding from outside the University.
leerplan
The course is structured as a full-time degree, taught over three years with two semesters per year.
Formeel onderwijs en groepssessies zullen plaatsvinden gedurende drie dagen per week, met twee dagen over voor groepsprojectwerk, zelfgestuurd leren en toegang tot andere universitaire bronnen, ondersteunende diensten, clubs, verenigingen enz.
Studenten van de National Software Academy werken aan het ontwikkelen van softwareprojecten voor echte klanten uit de private, publieke en derde sector. De meeste klantgerichte projecten duren vier weken en uw team heeft gedurende deze periode elke twee weken een ontmoeting met uw klanten. Een groot deel van het lesgeven, leren en beoordelen vindt plaats in de context van deze projecten.
Deze driejarige cursus begint met het opbouwen van kernanalyse- en codeervaardigheden die de basis vormen voor je studie en toekomstige carrière. Webontwikkelingsprojecten in het eerste jaar worden gevolgd door meer substantiële projecten in het tweede jaar, waarin u nieuwe vaardigheden en kennis toepast om softwaresystemen op ondernemingsschaal te implementeren. Ondertussen zul je een grotere rol op je nemen in projectvergaderingen, waardoor je zelfvertrouwen op de werkplek en je communicatieve vaardigheden toenemen. In jaar drie leer je over opkomende technologieën en combineer je deze met je kernvaardigheden om een innovatief product te produceren met waardering voor de nieuwste talen, raamwerken en hulpmiddelen. Het Large Team Project in het laatste jaar is een kans voor jou om gedurende 10 weken een substantieel softwareproduct te beheren en op te leveren.
De getoonde modules illustreren het typische curriculum en zullen vóór het academiejaar 2024/2025 worden herzien. De laatste modules worden in september 2024 gepubliceerd.
Year One
In year one you learn to think like a programmer and begin to code professionally. You will work primarily with languages such as JavaScript, Java and Python to design, develop and deploy web applications according to the needs of customers.
You also will start to develop your knowledge of relational and NoSQL database systems. You will learn how to use the same industry-standard tools that are used by real-world developers, following best practices to develop quality software.
You will begin to develop your professional skills including communication, project management and the principles of agile development.
Core Modules for Year One
- Introduction to Web Development
- Software Development Skills 1
- Computational Thinking
- Fundamentals of Computing with Java
- Software Development Skills 2
- Database Systems
Year Two
In year two you will work on larger, more complex and technically difficult projects.
You will expand your knowledge in areas such as performance and scalability, cyber security and DevOps, and develop and deploy mobile-based applications according to the needs of customers. This will be necessary to support the scale, resilience and security needs of your cloud-based enterprise solutions.
At this point, you are expected to be leading project meetings to plan and manage development work for a team, and regularly holding meetings with customers.
Core Modules for Year Two
- DevOps
- Commercial Applications with Java
- Performance and Scalability
- Agile Project Management
- Cyber Security
- Mobile Development
Year Three
In year three you will learn about user experience design and emerging trends and use these to develop a product with an appreciation of the latest languages, frameworks and tools. You will learn about managing change and adopting technology in organisations.
In the Large Team Project module, you will collaborate with other team members to effectively manage a project to develop a high-quality software solution to meet the needs of your clients.
The final year builds upon the experiences of years one and two and brings together all of the elements you will need to think like and work as a professional software engineer.
Core Modules for Year Three
- Commercial Frameworks, Languages and Tools
- Adopting Technology
- Emerging Technologies
- Large Team Project
- Managing Change
How Will I Be Assessed?
Teaching is organised into modules. Your progress in each module will be assessed during, or at the end of, the semester in which it is taught. All modules include assessments, the methods of which vary from written examinations and assessed coursework to a combination of both. Coursework is the preferred method for this degree with your project work being central to this.
The project portfolio is the primary means of assessment for many modules. It consists of a sample of student work, with written explanation and/or reflection. This covers the entire software development lifecycle, depending on the learning objectives of the module for example: requirements, documentation, technical specifications, code, tests, sprint plans, user stories, screenshots of products, and user feedback. You will use the project portfolios to demonstrate your understanding of all relevant theories, and how it has been applied.
A timed computing exercise fulfils a similar purpose, where students undertake a programming, or other software development assignment, working independently, during a set period.
Exams are also used to assess knowledge and understanding more directly. Other forms of assessment during the course include undertaking reflective reports, and business cases and presenting to clients and peers, which draw upon your experience of project work.
Programma resultaat
What Skills Will I Practise and Develop?
De vaardigheden die in deze cursus worden ontwikkeld, weerspiegelen de volledige levenscyclus van software en omvatten alles wat nodig is voor professioneel werk, waaronder:
- Ontmoeting met klanten en inventariseren van hun wensen.
- Beheer van projecten, tijdschema's en softwareteams voor de oplevering van echte projecten.
- Effectief technische en niet-technische ideeën communiceren naar een breed publiek, zowel mondeling als schriftelijk.
- Het analyseren van vereisten en het toepassen van huidige software-engineeringconcepten en kennis van technologie om nuttige producten te ontwikkelen - en deze schaalbaar, robuust en veilig te maken.
- Vloeiend in industriestandaard programmeertalen en vertrouwen in het werken met een reeks besturingssystemen.
- Mogelijkheid om met vertrouwen industriestandaard tools zoals IDE's, DBMS'en en bronbeheer te gebruiken.
- Debuggen en testen van code om bugs en defecten op te lossen.
- Ontwerp en implementeer relationele en NoSQL-databasesystemen voor echte projecten.
- Beveiliging van databasesystemen, netwerkcommunicatie en webapplicaties.
- Een intuïtie voor softwareontwerp en codekwaliteit, en het vermogen om te denken als een ontwikkelaar, en pragmatische technische oordelen en afwegingen te maken in een snelle commerciële omgeving.
- Code beoordelen en effectieve feedback en mentorschap geven aan collega's.
- Het implementeren en lanceren van producten en diensten, ter ondersteuning van echte gebruikers.
Knowledge & Understanding
Na voltooiing van het programma kan een typische student aantonen dat hij/zij zijn/haar kennis/inzicht kan toepassen op:
- Concepten, syntaxis en taalkenmerken die voorkomen in een reeks computerprogrammeertalen die in de industrie worden gebruikt.
- Geschikte tools en technieken voor het ontwerpen, schrijven, debuggen, testen, beheren en implementeren van code; evenals het beheren van een commercieel softwareontwikkelingsproces zoals Agile.
- Technische kennis van een verscheidenheid aan platforms en technologieën die in de industrie worden gebruikt.
- Een diep begrip van wat code van goede kwaliteit is.
- Baanbrekende technologieën en trends op geselecteerde onderzoeksgebieden van computergebruik.
- Inzicht in een reeks bibliotheken, raamwerken en grote commerciële codebases van derden .
Intellectual Skills
Na voltooiing van het programma zou een typische student in staat moeten zijn om:
- Evalueer de beschikbare opties om de meest geschikte tools en technieken te selecteren voor gebruik in elke fase van softwareontwikkeling;
- Analyseer complexe problemen effectief en identificeer randgevallen, inconsistenties, potentiële valkuilen en andere problemen.
- Denk kritisch na over softwareontwerp en oefen technisch oordeel uit in de context van het schrijven en ontwikkelen van software.
- Ondersteun een kritisch betoog, schriftelijk, in presentaties en in groepsdiscussies. Los onzichtbare problemen iteratief op; door een startpunt te identificeren en stapsgewijs een oplossing te ontwikkelen.
Professional Practical Skills
Na voltooiing van het programma zou een typische student in staat moeten zijn om:
- Gebruik de huidige commerciële planningstools en -technieken om een commercieel softwareontwikkelingsproject te plannen, plannen en beheren en het project tijdens zijn levenscyclus te volgen.
- Verzamel, analyseer en prioriteer geschikte functionele en niet-functionele vereisten tijdens vergaderingen met echte klanten met behulp van commerciële tools en technieken, en houd rekening met kwaliteit en andere beperkingen.
- Ontwerp, schrijf, test, debug, beheer en implementeer code productief op grote projecten in een commerciële teamcontext.
- Werk met verschillende platforms (cloud, mobiel, internet) met behulp van een reeks talen, technologieën en tools.
Transferable/Key Skills
Na voltooiing van het programma zou een typische student in staat moeten zijn om:
- Haar of zijn werk en het werk van anderen kritisch beoordelen, via schriftelijke en mondelinge middelen;
- Complexe ideeën, principes en theorieën duidelijk en efficiënt effectief communiceren via mondelinge, schriftelijke en praktische middelen - aan een breed scala aan doelgroepen, met name industriële klanten.
- Effectief werken en leren in teamverband en als individu;
- Waardeer kansen voor loopbaanontwikkeling en levenslang leren door deel te nemen aan het persoonlijke en loopbaanontwikkelingsprogramma van de universiteit en door een levenslang ondersteunend netwerk van industriële contacten op te bouwen;
- Onderneem onafhankelijk onderzoek en kritische reflectie.
Programma collegegeld
Carrièremogelijkheden
Er is extreem veel vraag naar geschoolde software-ingenieurs, waardoor de werkgelegenheidsvooruitzichten voor afgestudeerden in de computer- en ICT-industrie uitstekend zijn.
Als student aan de National Software Academy krijg je veel kansen om bedrijven te ontmoeten en samen te werken en je industriële contacten op te bouwen.
Je kunt je BSc gebruiken als een Pathway om onze gloednieuwe MSc in Software Engineering of voor het personeel verder te studeren. Onze afgestudeerden zijn gaan werken voor bedrijven als Admiral en DevOps. Anderen hebben gekozen voor verdere studie of onderzoek aan Cardiff of andere topuniversiteiten.
De Careers and Employability Service van Cardiff University is beschikbaar voor alle studenten. Onze school heeft ook een toegewijde Careers Officer en een Placement Officer die u kunnen helpen met loopbaanadvies.
Graduate Careers
- Software Engineer
- Web Developer
- Medewerker systeemontwikkeling
- Business Analyst