View all Courses
Software Development
Bachelor of Science
Course Details
CAO Code | AU847 |
---|---|
Level | 7 |
Duration | 3 Years |
CAO Points | 264 (2024) |
Method of Delivery | On-campus |
Campus Locations | Sligo |
Mode of Delivery | Full Time |
Work placement | Yes |
Course Overview
Ireland’s reputation as a centre of software excellence is unrivalled in Europe. It is home to over 900 software companies, including both multinational and indigenous firms, employing 24,000 people and generating €16 billion of exports annually.
The Irish technology sector remains buoyant with Google, Facebook, Microsoft and eBay all having a major presence here. Our objective is to equip graduates with the skills to seek employment in this level of business. We constantly re-assess programme content to keep pace with emerging platforms and industry trends. This programme considers the requirements of the global software industry and what it expects from graduates.
The emphasis of the programme is on supplying students with coding and communication skills to enable them to be productive members of a growing worldwide software technology sector.
Year 1
This is common across all computing streams. The emphasis is to introduce students to a variety of computing technologies, including fundamentals of Computer Hardware, Micro Controller Programming, an Introduction to Microsoft .NET programming and Mathematics for Computing. Special supports are in place to aid with Mathematics for Computing.
Year 2
Planning and developing small object-oriented software solutions for desktop and the web in a cloud-based environment. Modules include Systems Analysis and Design, Database Systems, Object Oriented Programming, Web Programming, Cloud Computing, and Mathematics.
Year 3
A year-long group project, Work Placement, Rich Applications Development, Software Engineering, Database Management, and Open Stack Development.
There are a number of distinct features:
Common First Year – All our Computing degrees have a common first year. Students study a wide range of computing modules to give them an understanding of all aspects of computing and the flexibility to change direction in Year 2 if desired. Students can choose from AU845 BSc in Computing, AU846 BSc in Computer Networks and Cyber Security, AU847 BSc in Software Development or AU848 BSc in Games Development.
Significant practical elements – We believe students learn best by doing and our programme is built upon hands on lab work where students create software solutions.
Equipment – Access to real-world equipment is a must to ensure students have immediate traction when they start work. We have two dedicated labs with networking equipment to let students build a model infrastructure solution to support high-speed communication. New high-tech computer teaching labs opened at ATU Sligo in early 2024. These give students access to the latest advancements in technology.
Project – Substantial projects enable students to grapple with a problem and create a killer solution. In Year 3, students have the space and support to work in a team year-long towards a solution that will wow employers.
Work Placement – We have been offering placement for longer than most, and we’re good at it. Our network of employers welcome this programme and a successful work placement is often the door to a full-time job.
We are the only university in Ireland to have won the Microsoft World Imagine Cup, when we came first from over 350,000 global registrants.
We also offer this degree at Level 8 – AU957 BSc (Hons) in Software Development
So, choose this programme if:
• you prefer working hands-on with the ‘plumbing’ of the Internet – the equipment that powers data around the globe
• you prefer the tangible connectivity challenges above the more abstract programming tasks
• you want to work with the likes of Cisco, Dell EMC and Vodafone to build capacity in the global data networks.
Ireland and the ICT sector
The sector’s traditional players with long-established operations – such as Intel, HP, IBM, Microsoft and Apple, have been joined by newer firms leading the way in the internet and social media revolution, including Google, Facebook, LinkedIn, Amazon, PayPal, eBay and Twitter. Their arrival has firmly positioned Ireland as the internet capital of Europe.
Over 105,000 people are employed in the technology sector in Ireland, with approximately 70% of those employed by FDI companies.
ICT Exports are worth €72 billion per annum (40% of total national exports).
4 of the top 5 exporters in Ireland are technology companies
Nine of the world’s top 10 ICT companies are located in Ireland and the IDA supports over 200 FDI firms in this sector.
Ireland is the also the European data centre location of choice for world leaders including IBM, Microsoft, Google, Yahoo, MSN and Adobe and is poised to become a global cloud centre of excellence.
The sector’s wide-ranging activities include Software Development, R&D, Business Services and EMEA/International headquarters.
Course Details
Year 1
Semester | Module Details | Credits | Mandatory / Elective |
---|---|---|---|
1 |
Personal DevelopmentThis module is designed to introduce students to the higher education environment and to assist them to develop learning, study and communication skills early in their undergraduate career. The module will support students to develop a more independent, reflective and self-managed approach to study, learning, and time management. Learning Outcomes 1. Develop an independent, reflective and self-managed approach to study, reinforced by goal setting. |
05 | Mandatory |
1 |
Computer SystemsThe goal of the module is to provide students with the necessary skills to understand the workings and architectures of the CPU and motherboard. To investigate the link between modern CPUs' and virtualisation and Cloud computing. To troubleshoot and repair a desktop computer system. To provide students with the necessary skills to manipulate number systems. Learning Outcomes 1. Describeand understand how to manipulate Number Systems. |
05 | Mandatory |
1 |
Introduction to Programming 1The course shall introduce students the fundamentals of problem solving and programming. During the course, the student will gain knowledge and understanding in problem-solving, the software development lifecycle, development tools and the ability to write programs that make use of fundamental programming constructs. Learning Outcomes 1. Explain programming evolution, terms and development process. |
10 | Mandatory |
1 |
Design ThinkingDesign Thinking is a human-centered design methodology that provides a solution-based approach to solving problems. It integrates the needs of people, the possibilities of technology, and the requirements for a viable business success model. Design Thinking draws upon logic, imagination, intuition, and systemic reasoning, to explore the possibilities of what could be, and to create desired outcomes that benefit the end user (the client, customer). Learning Outcomes 1. carry out and apply design research |
05 | Mandatory |
1 |
Mathematics 1This subject aims to develop essential Mathematical skills for students in the computing area. The fundamental skills of numerical and algebraic competence is covered in the initial part of the module. A section on summary statistics follows. In the latter part of the module time is spent on introducing and developing competence in the areas of symbolic logic and set theory. Learning Outcomes 1. Demonstrate numerical competence. |
05 | Mandatory |
2 |
Internet of ThingsPhysical, real-world things are becoming increasingly visible and actionable via Internet and Web technologies. Propelled by dramatic decreases in technology costs, a proliferation of sensors, improved connectivity including between devices, the market is estimated to grow to €10bn world-wide by 2022. This includes cell-phones, washing machines, jet engines and soon, humans. The goal of the module is to look top-down as well as bottom-up, to provide students with a practical understanding of the Internet of Things and the forms it can take – human-to-human, human-to-device and device-to-device. By looking at a variety of real-world application scenarios of the IoT and diverse implemented applications, the various understandings and requirements of IoT applications become apparent. This allows students to understand what IoT technologies are used for today, and what is required in certain scenarios. Students will be given the opportunity to apply these technologies to tackle scenarios of their choice using an experimental platform for implementing prototypes and testing them as running applications. Learning Outcomes 1. Explain the term internet of things and describe some current and potential applications and the different technologies employed. |
05 | Mandatory |
2 |
Operating Systems and NetworksThe module provides an overview of the major components of an operating system and network. The concepts are re-inforced with practical laboratory exercises to develop practical operating systems skills and networking skills. Learning Outcomes 1. Describe the major components of an operating system |
05 | Mandatory |
2 |
Introduction to Programming 2This module builds on the foundational programming skills previously acquired in the module Introduction to programming 1, introducing students to file handling, error handling and object-oriented programming (OOP) concepts. Through practical and applied learning, students will develop solutions to real-world problems using OOP principles. The course combines theory with hands-on lab-based activities, offering a balanced approach to deepen understanding. By the end of the module, students will be well-equipped to design robust, maintainable, and efficient software systems. Learning Outcomes 1. Explain and apply the key concepts of object oriented programming. |
10 | Mandatory |
2 |
Mathematics 2This subject adds further to the Mathematical skills set for students in the computing area. The module begins with a section on relations and functions and properties associated with these. The middle section covers matrix algebra and also covers probability, combinations and permutations. In the latter stage of the module time is spent on developing competence in trigonometry, complex numbers and quaternions. Learning Outcomes 1. Distinguish and classify properties of relations and functions. |
05 | Mandatory |
2 |
Web Design FundamentalsThe ability to comprehend and implement the technologies required to build a website are a fundamental requirement for any ICT graduate. This module introduces the learner to the core concepts required to build a basic website using industry relevant tools, while concentrating on the design side. Particular emphasis will be placed on HTML and CSS. Learning Outcomes 1. Describe the evolving nature of the client server model. |
05 | Mandatory |
Year 2
Semester | Module Details | Credits | Mandatory / Elective |
---|---|---|---|
1 |
Client Side ScriptingModern web applications rely on code that runs in a browser to deliver much of the interactivity available to users of websites and this module will enable students to develop scripts at the client end to provide an interactive user experience. The learner will gain a thorough knowledge of JavaScript while understanding the need for client-side scripting and its place in application development. The learner will obtain the relevant knowledge to be able to sit the MTA 'Introduction to Programming using JavaScript' Microsoft exam. Learning Outcomes 1. Describe the need for client side scripting and the fundamentals of the JavaScript language |
05 | Mandatory |
1 |
Object Oriented ProgrammingObject Oriented Programming is a programming paradigm where data and operations can be defined together as objects and allows reuse of these objects within the same or other programs. In this module students will examine the concepts of object creation and design and implement software interfaces adhering to modern design principles which connect with data repositories. Learning Outcomes 1. Identify the principles and benefits of object-oriented programming. |
05 | Mandatory |
1 |
Web Design and DevelopmentWeb forms are the principle means by which we interact with websites. They can act as a barrier or invite people in. There are basic design principles for effective user interfaces. Students will learn these principles and how to develop websites and forms which conform to them. They will also learn how best to develop sites and forms which are easy to maintain. Learning Outcomes 1. Design and implement a web form using HTML and CSS. |
05 | Mandatory |
1 |
Requirements EngineeringThis module sets the broader context for software development by giving an overview of alternate system development life cycles and focuses on the gathering, analysis and validation of software requirements using agile and more conventional methods. Using a practical approach, methods for requirements elicitation and documentation are introduced and explored through practical case work. Requirements documentation and modelling, using a range of techniques such as user stories and object oriented analysis techniques are also addressed. Learning Outcomes 1. Elicit user requirements |
05 | Mandatory |
1 |
Introduction to Database TechnologyThe student will be introduced to database technologies and will acquire an intermediate set of skills in database design and development. Learning Outcomes 1. Decide the appropriate database technology that should be used for a given specification |
05 | Mandatory |
1 |
Mathematics 3This subject adds further to the Mathematical skill set of computing students. The module begins with the student developing competence in the usage and application of various co-ordinate geometry formulae and then looks at the application of matrices to transformations of geometric objects. The middle section of the module spends time on differentiation and its applications. The final section develops competence in performing vector operations. Learning Outcomes 1. Demonstrate competence in co-ordinate geometry calculations. |
05 | Mandatory |
2 |
Object Oriented DevelopmentThe module will build upon an understanding of object oriented programming and software engineering principles to develop and deploy full applications embracing modern software development practices. Learning Outcomes 1. Translate a design specification into a working software application. |
05 | Mandatory |
2 |
Web Programming 1This module will introduce students to modern JavaScript development frameworks. Students will be introduced to the concepts of the frameworks and understand the need to develop web applications using these frameworks. Students will develop responsive web applications that will be cloud hosted and interact with data services. Learning Outcomes 1. Design and create responsive web pages using modern JavaScript frameworks |
05 | Mandatory |
2 |
Software Quality and TestingThis module provides an in-depth understanding of what constitutes quality software and the critical role of rigorous testing in achieving it. Students will gain essential knowledge in software quality and the core concepts of software testing. Through both theoretical and practical learning, the course equips students to effectively contribute to a quality assurance role within a software development team, ensuring high standards in software delivery. Learning Outcomes 1. Explain the fundamentals of software quality & testing |
05 | Mandatory |
2 |
Introduction to Database ManagementThis module builds on the student experience of Introduction to Database Technology or similar. Now familiar with basic database components, their specification and constraints, and having applied them to an identified problem space, we now extend on the scope of this basic introduction. Students will work both individually and in groups to grapple with problems of greater complexity. The student will be introduced to database coding and will then will learn techniques and tools to optimise this code. They will also cover data security and learn about techniques and tools to secure data. Learning Outcomes 1. Configure a database to maximise data retrieval |
05 | Mandatory |
2 |
Mathematics 4This subject develops further Mathematical skills and applies some of the Mathematical skill set already developed. The module begins with a look at various integration techniques. This is followed by an application of matrices in Gaussian and Gauss Jordan elimination. There is a significant section on number theory and it's application in areas such as encryption. The concept of a group and the identification of group examples used in the current and earlier modules is then looked at. Finally the module covers coding theory, again using skills already developed previously in areas such as probability and matrices. Learning Outcomes 1. Demonstrate competence in integral calculus. |
05 | Mandatory |
2 |
Introduction to Cloud ComputingThis module will introduce the learner to the fundamentals of cloud computing. The learner will be exposed to the many services employed by a cloud service provider while understanding the benefits of provisioning computing services over the Internet. Practical experience will be obtained by configuring and deploying appropriate cloud services. This module will also include Academy Cloud Foundations (ACF) which is an AWS (Amazon Web Services) Academy course designed to provide learners with an overall understanding of the AWS Cloud, independent of specific technical roles. Learners will also be exposed to general cloud services in addition to content provided by AWS. Upon completion of this module, students will be able to undertake the AWS Certified Cloud Practitioner exam. Learning Outcomes 1. Describe the evolution, terminology, concepts and costs related to cloud computing 4. Configure and communicate with a NoSQL cloud database |
05 | Mandatory |
Year 3
Semester | Module Details | Credits | Mandatory / Elective |
---|---|---|---|
1 |
Rich Application Development 301Rich Application Development 301 examines the range of tools, techniques, and full development stacks appropriate to the creation of interface-rich line of business applications. Particular emphasis is paid to the building n-tier applications incorporating user interfaces modern UI frameworks. Database access is introduced using object-relational modelling to prepare students in the development of n-tier applications. Learning Outcomes 1. Explore Core declarative UI concepts |
05 | Mandatory |
1 |
Mobile Application DevelopmentThe aim of this module is to provide learners with the ability to design, develop, test and deploy native touchscreen mobile applications that adhere to the design guidelines of the targeted smartphone operating system. Learning Outcomes 1. Describe the fundamental aspects of a mobile phone operating system and its subsystems. |
05 | Mandatory |
1 |
Software Project ManagementThis module explores project management practices, particularly agile methods such as Scrum, Lean, and Kanban, in software development environments with complex and changing requirements. The course combines theoretical insights with practical workshop-based activities exploring different project management techniques and tools. By the end of the module, students will understand how project management can drive efficiency and customer value leading to project success. Learning Outcomes 1. Describe the fundamentals of software project management and Examine different Agile project management approaches |
05 | Mandatory |
1 |
Professional DevelopmentThis module is designed to prepare students for their work placement in the computing industry. The module endeavours to improve the employability skills of the students with particular emphasis on CV and Interview preparation and on the job soft skills to be an effective team member. Learning Outcomes 1. Identify sources of information on job opportunities |
05 | Mandatory |
1 |
Web Programming 2Students will develop a full stack web application using JavaScript frameworks on both the server and client side. They will document and implement a ReST API. The application will include authentication and best practices to ensure application security. Learning Outcomes 1. Design and create n-tier applications using modern JavaScript frameworks and libraries. |
05 | Mandatory |
2 |
Open Stack DevelopmentIn this module, students will be required to develop full-stack web applications using open source technologies. Students will make use of containers and a cloud services in developing and deploying their applications. Learning Outcomes 1. Design and create complex web applications using modern JavaScript frameworks and open source technologies |
05 | Mandatory |
2 |
Rich Application Development 302Rich Application Development 302 focuses on building richly interactive line-of-business applications using modern design patterns to support n-tier Web API applications and clients consuming web API data . It embraces modern frameworks and code libraries to expedite the design/development of rich interactive user interfaces. Connections with databases are supported through object-relational mapping techniques. Design patterns are introduced, including separation of concerns in the development of client-server line of business applications. The complexity of structure and scope of modern N-Tier business applications is examined with a view to managing such complexity in a team environment. Learning Outcomes 1. Evaluate and Implement Software Architecture Patterns |
05 | Mandatory |
2 |
Database ProgrammingIn this module, learners will be required to develop server side database applications using a language such as TSQL. Learners will develop the application logic which will reside on the server and serve this up in stored procedures. There will be a focus on programming these stored procedures in a concurrent multi-user environment. Learning Outcomes 1. Design the requirements for stored procedures for a given scenario |
05 | Mandatory |
2 |
Project 300Project 300 represents a substantial body of work undertaken by a group of four that brings together their learning in the modules undertaken in Years 1, 2 and 3. The module aims to encourage innovation and a wider exploration in their field of study. The module intent is to provide students with a simulation of a real-world project along with the management issues (of time, people, resources, and skills) and fixed deadlines that accompany it. Learning Outcomes 1. Apply project planning and coordinating methodologies (e.g. agile methodology) to a group project. |
10 | Mandatory |
2 |
Work ExperienceThe student will be placed in a suitable organisation and should be integrated into the IS environment as much as possible. The placement may begin in April and must be completed by the end of August. A student would be expected to spend at least 3 months in industry. The course is of 12 months duration and awards will not be granted until the Autumn examination board meeting. This is necessary because a student will not be eligible for an award until an industrial placement has been successfully completed. Where it is not possible to find a placement for a student consideration will be given to that student undertaking a research project in IT Sligo. Learning Outcomes 1. The students will be exposed to and experience a live ICT working environment. |
10 | Mandatory |
Progression
Graduates of our Level 7 BSc in Software Development may progress to the final year of our Level 8 BSc (Hons) in Software Development.
Level 8 graduates may progress to ATU Sligo’s MSc in Computing, MEng in Connected and Autonomous Vehicles or may continue their studies at other third-level universities.
Download a prospectus
Entry Requirements
Leaving Certificate Entry Requirement | 5 subjects at O6/H7 English or Irish at O6/H7 Maths at O6/H7 |
QQI/FET Major Award Required | Any |
Additional QQI/FET Requirements | C20139 or 5N1833 or C20174 or C20175 or 5N18396 or 5N0556 or Leaving Certificate Maths at 06/H7 |
Fees
Total Fees EU: €3000
This annual student contribution charge is subject to change by Government. Additional tuition fees may apply. Click on the link below for more information on fees, grants and scholarships.
Total Fees Non-EU: €12000
Subject to approval by ATU Governing Body (February 2025)
Further information on feesCareers
The software industry is exceptionally strong in Ireland, providing a significant number of employment opportunities in a wide variety of organisations. The opportunities are with both indigenous Irish companies and large multinational organisations and not only in what you would call “tech” companies such as Google, Microsoft and Facebook. All sectors require software professionals and there are many opportunities in traditional sectors such as finance, pharmaceutical, manufacturing, health and service industries.
The outlook is positive for graduates. A Morgan McKinley report says that demand for software developers shows “no sign of slowing down”. It continues: “Salaries have increased across the majority of areas, particularly in the development space.”
Graduates of this programme typically assume the role of software developer. They build and test high-quality code across front-end, logic and database layers. Other graduate opportunities include careers as a technology consultant, full stack web developer, senior quality controller/research analyst, international project lead and business development manager.
Ireland’s reputation as a centre of software excellence is unrivalled in Europe. It is home to over 900 software companies, including both multinational and indigenous firms, employing 24,000 people and generating €16 billion of exports annually.
Software development is an internationally recognised transferrable skill.
Further Information
Contact Information
T: +353 (0)71 931 8510
E: admissions.sligo@atu.ie
Computing & Electronic Engineering