Long Title:Software Engineering
Language of Instruction:English
Module Code:BSHC16
Credits: 5
NFQ Level:LEVEL 6
Field of Study: Software and applications development and analysis
Module Delivered in 4 programme(s)
Module Coordinator: ANTHONY PAUL STYNES
Module editor: ANTHONY PAUL STYNES
Teaching and Learning Strategy: The teaching strategy involves the use of lectures, tutorials, independent learning, class discussions and formative assessment as appropriate. Additionally, learners will also have access to web based support. This module is suitable for blended delivery. Techniques such as online videos showing step by step instructions, links to extra material available on the Internet, and Moodle may be used. Learners may also use collaborative tools for the development of the project. The continuous assessment can be done though online Moodle quiz and the practical work submitted on Moodle. Educational strategies such as Problem Based Learning may be used in the project.
Learning Environment: Learning will take place in a classroom/lab/workplace environment with access to IT resources. Educational strategies such as problem based learning may be applied to this module. Learners will have access to library resources, both physical & electronic and to faculty outside of the classroom where required. Module materials will be placed on the College’s virtual learning environment, Moodle.
Module Description: To provide students with an overview of Object Oriented Software Engineering using the Unified Modelling Language
Learning Outcomes
On successful completion of this module the learner will be able to:
LO1 Describe the theory, concepts and methods pertaining to Agile Software Development
LO2 Describe the theory, concepts and methods pertaining to the Unified Modelling Language (UML).
LO3 Create requirements using Use Case modelling concepts.
LO4 Employ tools and techniques for Object Oriented Software Engineering,
LO5 Demonstrate an ability to adapt and solve problems in software development activities from specification to testing.
Pre-requisite learning
Module Recommendations

This is prior learning (or a practical skill) that is required before enrolment on this module. While the prior learning is expressed as named NCI module(s) it also allows for learning (in another module or modules) which is equivalent to the learning specified in the named module(s).

No recommendations listed
Requirements

This is prior learning (or a practical skill) that is mandatory before enrolment in this module is allowed. You may not enrol on this module if you have not acquired the learning specified in this section.

No requirements listed
 

Module Content & Assessment

Indicative Content
Software Engineering
• Principles of Software Engineering. • Software Process.
Agile Development
• Agility Agile Process. • Extreme Programming. • Agile Process Models such as SCRUM, Crystal and so on.
Use case modelling
• Actors Use. • Cases Anatomy of use cases. • Advanced Use Case Concepts.
Class Diagrams
• Conceptual class diagram. • Problem domain concepts. • Associations Multiplicity Roles. • Generalization Constraints. • Navigability Recursive associations. • Qualified associations. • Association classes. • Aggregation Dependency Package.
Analysis Phase
• Case Study such as Point of Sale. • Glossary System. • Sequence Diagrams. • Contracts Interaction diagrams.
Communication Diagrams
• Guidelines. • Classes and instances Links. • Messages Return types. • Iterations. • Creation of instance. • Message number sequencing. • Conditional messages. • Collections Class messages
Design Phase
• Responsibilities. • Expert Pattern. • Creator Pattern. • Controller Pattern. • Design class diagrams. • Three tier Architectures. • Multi-tiered Architectures • Model view separation pattern. • Mapping to code.
Testing
• Software testing strategies such as System test, Integration test and unit test. • Software Testing Techniques. • Black box and White box testing. • Basis path testing. • Cyclomatic complexity.
Assessment Breakdown%
Coursework100.00%

Full Time

Coursework
Assessment Type Assessment Description Outcome addressed % of total Assessment Date
Project Sample Project: Using problem based learning strategies design the next generation social network using the Unified Modelling Language. The trigger for the problem is “The Social Network Official Trigger” http://www.youtube.com/watch?v=lB95KLmpLR4. A brainstorming session will help generate ideas on what the next generation social network could be. 2,3,4,5 60.00 n/a
Assignment Sample Assignment: Create a library application based on following the SCRUM approach to software engineering. 1 40.00 n/a
No End of Module Assessment
No Workplace Assessment
Reassessment Requirement
Repeat examination
Reassessment of this module will consist of a repeat examination. It is possible that there will also be a requirement to be reassessed in a coursework element.
Reassessment Description
Learners who fail this module will be required to sit a repeat module assessment where all learning outcomes will be examined.

NCIRL reserves the right to alter the nature and timings of assessment

 

Module Workload

Workload: Full Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture No Description 2 Every Week 2.00
Tutorial No Description 1 Every Week 1.00
Independent Learning No Description 7.5 Every Week 7.50
Total Hours 10.50
Total Weekly Learner Workload 10.50
Total Weekly Contact Hours 3.00
Workload: Part Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture No Description 2 Every Week 2.00
Tutorial No Description 1 Every Week 1.00
Independent Learning No Description 7.5 Every Week 7.50
Total Hours 10.50
Total Weekly Learner Workload 10.50
Total Weekly Contact Hours 3.00
 

Module Resources

Recommended Book Resources
  • Alan Dennis, Barbara Haley Wixom, David Tegarden 2015, Systems Analysis and Design with UML, International Student Version, 5th Ed., Wiley [ISBN: 1502820900]
  • Shore, J., and Warden, S. 2014, The Art of Agile Development, 1st Ed., O'Reilly Media [ISBN: 978059652767]
Supplementary Book Resources
  • Eric Baude, Michael Bernstein 2011, Software Engineering Modern Approaches, 2nd Ed., Wiley
  • Roger S. Pressman 2010, Software Engineering: A practioners Approach, 7th Ed., McGraw and Hill.
  • Axel van Lamsweerde 2009, Requirements Engineering: From System Goals to UML Models to Software Specifications, Wiley
  • Dragan Milicev 2009, Model-Driven Development with Executable UML, Wiley
This module does not have any article/paper resources
Other Resources
 

Module Delivered in

Programme Code Programme Semester Delivery
BSHC BSc (Honours) in Computing 4 Core Subject
BSHBIS BSc (Hons) in Business Information Systems 4 Core Subject
CIC Certificate in Computing 2 Optional
HCC Higher Certificate in Science in Computing Applications and Business Support 4 Core Subject