CQUniversity Unit Profile
COIT13235 Enterprise Software Development
Enterprise Software Development
All details in this unit profile for COIT13235 have been officially approved by CQUniversity and represent a learning partnership between the University and you (our student).
The information will not be changed unless absolutely necessary and any change will be clearly indicated by an approved correction included in the profile.
General Information

Overview

This unit introduces you to the practical issues involved in the design and implementation of robust enterprise software applications enabling business-to-business and business-to-customer operations. You will learn data persistence and management of persistent objects extending your knowledge of object-oriented programming. You will learn to use well-known design patterns to build portable, highly available and maintainable software applications that require integrated use of several open-source tools. You will work in a small team to design and develop a 3-tier enterprise system with a data persistence tier, business logic layer, and a web-based presentation tier. Issues and consequences of complex computing will be discussed in the context of enterprise computing architecture and technology.

Details

Career Level: Undergraduate
Unit Level: Level 3
Credit Points: 6
Student Contribution Band: 8
Fraction of Full-Time Student Load: 0.125

Pre-requisites or Co-requisites

Prerequisite:  (COIT11237 - Database Design & Implementation and COIT12200 - Software Design & Development) OR (COIT12167 - Database Use and Design and COIT12200 - Software Design & Development)

Important note: Students enrolled in a subsequent unit who failed their pre-requisite unit, should drop the subsequent unit before the census date or within 10 working days of Fail grade notification. Students who do not drop the unit in this timeframe cannot later drop the unit without academic and financial liability. See details in the Assessment Policy and Procedure (Higher Education Coursework).

Offerings For Term 2 - 2024

Brisbane
Cairns
Melbourne
Online
Rockhampton
Sydney

Attendance Requirements

All on-campus students are expected to attend scheduled classes – in some units, these classes are identified as a mandatory (pass/fail) component and attendance is compulsory. International students, on a student visa, must maintain a full time study load and meet both attendance and academic progress requirements in each study period (satisfactory attendance for International students is defined as maintaining at least an 80% attendance record).

Class and Assessment Overview

Recommended Student Time Commitment

Each 6-credit Undergraduate unit at CQUniversity requires an overall time commitment of an average of 12.5 hours of study per week, making a total of 150 hours for the unit.

Class Timetable

Bundaberg, Cairns, Emerald, Gladstone, Mackay, Rockhampton, Townsville
Adelaide, Brisbane, Melbourne, Perth, Sydney

Assessment Overview

1. Practical and Written Assessment
Weighting: 30%
2. Practical and Written Assessment
Weighting: 50%
3. Reflective Practice Assignment
Weighting: 20%

Assessment Grading

This is a graded unit: your overall grade will be calculated from the marks or grades for each assessment task, based on the relative weightings shown in the table above. You must obtain an overall mark for the unit of at least 50%, or an overall grade of ‘pass’ in order to pass the unit. If any ‘pass/fail’ tasks are shown in the table above they must also be completed successfully (‘pass’ grade). You must also meet any minimum mark requirements specified for a particular assessment task, as detailed in the ‘assessment task’ section (note that in some instances, the minimum mark for a task may be greater than 50%). Consult the University’s Grades and Results Policy for more details of interim results and final grades.

Previous Student Feedback

Feedback, Recommendations and Responses

Every unit is reviewed for enhancement each year. At the most recent review, the following staff and student feedback items were identified and recommendations were made.

Feedback from In-class student feedback

Feedback

More exercises would be helpful as students enjoy practical exercises.

Recommendation

Add more lab practice exercises where appropriate, especially in the last 2 weeks.

Feedback from Unit Coordinator

Feedback

Students are not assessed on enterprise programming until halfway through the term.

Recommendation

Change the first assessment from a purely written report into a practical plus report and use the practical part of Assessment 1 as formative.

Unit Learning Outcomes
On successful completion of this unit, you will be able to:
  1. Investigate and compare major enterprise software architectures and analyse the effectiveness of enterprise software systems for business operations involving diverse groups of stakeholders with varying needs
  2. Use contemporary enterprise software development tools and techniques to design and develop appropriate solutions for business operations
  3. Implement and build multi-tiered enterprise software systems in a distributed service-oriented architecture
  4. Work collaboratively in a team contributing to productive complex software development.

The Australian Computer Society (ACS) recognises the Skills Framework for the Information Age (SFIA). SFIA provides a consistent definition of ICT skills. SFIA is adopted by organisations, governments and individuals in many countries and is increasingly used when developing job descriptions and role profiles.
ACS members can use the tool MySFIA to build a skills profile at https://www.acs.org.au/professionalrecognition/mysfia-b2c.html
This unit contributes to the following workplace skills as defined by SFIA 8. The SFIA code is included:
  • Programming/Software Development (PROG)
  • Data modelling and design (DTAN)
  • Database design (DBDS)
  • Software design (SWDN)
  • Systems design (DESN)
  • Testing (TEST)
  • Systems integration and build (SINT)
  • Release and deployment (RELM)
  • Application support (ASUP)

Alignment of Learning Outcomes, Assessment and Graduate Attributes
N/A Level
Introductory Level
Intermediate Level
Graduate Level
Professional Level
Advanced Level

Alignment of Assessment Tasks to Learning Outcomes

Assessment Tasks Learning Outcomes
1 2 3 4
1 - Reflective Practice Assignment - 20%
2 - Practical and Written Assessment - 30%
3 - Practical and Written Assessment - 50%

Alignment of Graduate Attributes to Learning Outcomes

Graduate Attributes Learning Outcomes
1 2 3 4
1 - Communication
2 - Problem Solving
3 - Critical Thinking
4 - Information Literacy
5 - Team Work
6 - Information Technology Competence
7 - Cross Cultural Competence
8 - Ethical practice
9 - Social Innovation
10 - Aboriginal and Torres Strait Islander Cultures
Textbooks and Resources

Textbooks

Supplementary

Beginning EJB in Java EE 8: Building Applications with Enterprise JavaBeans

Edition: 1st (2018)
Authors: Wetherbee, Jonathan ; Nardone, Massimo ; Rathod, Chirag ; Kodali, Raghu
Berkeley, CA: Apress L. P
Berkeley Berkeley , CA , USA
ISBN: 9781484235737
Binding: eBook
Supplementary

Spring Microservices in Action

Edition: 2nd (2021)
Authors: John Carnell, Illary Huaylupo Sánchez
Manning Publications
NY NY , USA
ISBN: 9781617296956
Binding: eBook
Supplementary

Spring Start Here

Edition: 1st (2021)
Authors: Laurentiu Spilca
Manning Publications
ISBN: 9781617298691
Binding: eBook

IT Resources

You will need access to the following IT resources:
  • CQUniversity Student Email
  • Internet
  • Unit Website (Moodle)
  • Zoom (both microphone and webcam capability)
  • Apache NetBeans IDE 12.4 (available from https://netbeans.apache.org/download/nb124/nb124.html)
  • OpenJDK 18.0.1.1 from https://jdk.java.net/18/
  • MySQL Community Server 8.0.29 from https://dev.mysql.com/downloads/mysql
  • Apache TomEE 8.0.0 TomEE Plus Web Server
Referencing Style

All submissions for this unit must use the referencing style: Harvard (author-date)

For further information, see the Assessment Tasks.

Teaching Contacts
Jamie Shield Unit Coordinator
j.shield@cqu.edu.au
Schedule
Week 1 Begin Date: 08 Jul 2024

Module/Topic

Intro to Enterprise (Ent.) SW Dev.

Chapter

Refer to the unit website for readings.

Chapter 1 of Fernando, C 2022, Solution Architecture Patterns for Enterprise, Apress. 

Chapter 1 of Deinum, M 2024, Spring Boot 3 Recipes, Apress.

Events and Submissions/Topic

Week 2 Begin Date: 15 Jul 2024

Module/Topic

Ent. Persistence (ORM)

Chapter

Chapter 14 of Spilcă, L 2021, Spring start here, Manning.

Events and Submissions/Topic

Week 3 Begin Date: 22 Jul 2024

Module/Topic

Ent. Interoperability using REST

Chapter

Chapter 10 of Reddy, K & Upadhyayula, S 2023, Beginning Spring Boot 3, Apress.

Events and Submissions/Topic

Ass1 Weekly apps due

Week 4 Begin Date: 29 Jul 2024

Module/Topic

Ent. Presentation using MVC

Chapter

Chapter 4 of Reddy, K & Upadhyayula, S 2023, Beginning Spring Boot 3, Apress.

Events and Submissions/Topic

Ass1 Weekly apps due

Week 5 Begin Date: 05 Aug 2024

Module/Topic

Ent. Security

Chapter

Chapter 12 of Reddy, K & Upadhyayula, S 2023, Beginning Spring Boot 3, Apress.

Events and Submissions/Topic

Ass1 Weekly apps due

Vacation Week Begin Date: 12 Aug 2024

Module/Topic

No classes

Chapter

Events and Submissions/Topic

Week 6 Begin Date: 19 Aug 2024

Module/Topic

Reactive Architectures

Chapter

Chapter 11 of Reddy, K & Upadhyayula, S 2023, Beginning Spring Boot 3, Apress.

Events and Submissions/Topic

Ass1 Weekly apps due

Week 7 Begin Date: 26 Aug 2024

Module/Topic

Microservices

Chapter

Chapter 6 of Macero García, M & Telang, T 2023, Learn Microservices with Spring Boot 3, Apress.

Events and Submissions/Topic

Ass 2 Project: weekly Git contribution due

Week 8 Begin Date: 02 Sep 2024

Module/Topic

Configuration Management

Chapter

Chapter 5 of Heckler, M 2021, Spring Boot. O’Reilly.

Events and Submissions/Topic

Ass 2 Project: weekly Git contribution due

Week 9 Begin Date: 09 Sep 2024

Module/Topic

Aspect-Oriented Programming

Chapter

Chapter 6 of Spilcă, L 2021, Spring start here, Manning.

Events and Submissions/Topic

Ass 2 Project: weekly Git contribution due

Week 10 Begin Date: 16 Sep 2024

Module/Topic

No lecture

Chapter

Events and Submissions/Topic

Ass 2 Project due

Week 11 Begin Date: 23 Sep 2024

Module/Topic

No lecture

Chapter

Events and Submissions/Topic

Ass 3 Selection criteria due


Wk10 Ass2 Project (50%) Due: Week 11 Monday (23 Sept 2024) 1:00 am AEST
Wk11&12 Job Interview (20%) Due: Week 11 Friday (27 Sept 2024) 11:45 pm AEST
Week 12 Begin Date: 30 Sep 2024

Module/Topic

Job interviews

Chapter

Events and Submissions/Topic

Ass 3 You must attend a class for your interview 

Term Specific Information

Unit Coordinator: Jamie Shield, j.shield@cqu.edu.au, Cairns

You must attend tutorials in Weeks 7, 8, 9 and 10 or otherwise in your own time record team meetings to be eligible for full marks for Ass 2 Project.

You must attend an interview in a Week 12 class to be eligible for full marks for Ass 3 Job interview.

Assessment Tasks

1 Practical and Written Assessment

Assessment Title
Wk3 Ass1 Weekly apps (30%)

Task Description

There are four sets of weekly apps designed to prepare you for the project. Each week you will implement small enterprise apps to demonstrate features of libraries such as persistence, transaction, logging, testing, security, REST and MVC. For most apps, you will be provided with skeleton code and/or tests.


Assessment Due Date

Due weeks 3,4,5 and 6.


Return Date to Students

For most exercises, feedback will be returned immediately. Otherwise, feedback will be returned by Week 7.


Weighting
30%

Assessment Criteria

The assessment consists of enterprise exercises that you will implement apps for.  Each exercise will be marked according to the correctness of the answer, for example, the quality of the database artefacts produced for a persistence exercise. There are four sets of weekly exercises; each worth 7.5%.


Referencing Style

Submission
Online

Submission Instructions
You must submit weekly via the Moodle unit site.

Learning Outcomes Assessed
  • Use contemporary enterprise software development tools and techniques to design and develop appropriate solutions for business operations
  • Implement and build multi-tiered enterprise software systems in a distributed service-oriented architecture

2 Practical and Written Assessment

Assessment Title
Wk10 Ass2 Project (50%)

Task Description

You will work as part of a small team to analyse requirements, design, implement, build, test, and document a complete enterprise application.

Groupwork

You must work in groups of 4 to 6 people for this assignment. It is likely that your group will include people from other campuses. All group members must be identified in the groupwork artefacts. Your team must choose a technical leader and a, different, group leader who will act as the project manager. Evidence must be provided that all group members contributed adequately to the final submissions. You must attend tutorials in Weeks 7, 8, 9 and 10 or otherwise in your own time record team meetings to be eligible for full marks for Ass 2 Project. All group members must submit via the unit website. The moderation process might allocate group members different marks. Sharing of artefacts, for example, code, between groups is not permitted.

Repository

Create a private code repository and invite your tutor and the unit coordinator. One code repository is to be used by all group members. Each member of the group must make at least four weekly contributions to a private Git repository prior to the due date.


Assessment Due Date

Week 11 Monday (23 Sept 2024) 1:00 am AEST

The project is due in Week 10 - before Week 11 starts.


Return Date to Students

The marks and feedback will be returned on the day of certification of grades.


Weighting
50%

Assessment Criteria

The assignment criteria includes documentation quality (design, code and test), software implementation correctness and process and groupwork artefacts. Process, groupwork and code compilation and execution are aspects of each criteria. For example, to be eligible for full marks for each criteria, you must have committed quality contribution to your team's private Git over 4 weeks, you must have evidence of your contribution to the team and your code must run and execute. You must attend tutorials in Weeks 7, 8, 9 and 10 or otherwise in your own time record team meetings to be eligible for full marks for Ass 2 Project.


Referencing Style

Submission
Online

Submission Instructions
Submit artefacts to your private Git repository weekly from at least Week 7. Every member of the group should also submit to Moodle by the due date.

Learning Outcomes Assessed
  • Use contemporary enterprise software development tools and techniques to design and develop appropriate solutions for business operations
  • Implement and build multi-tiered enterprise software systems in a distributed service-oriented architecture
  • Work collaboratively in a team contributing to productive complex software development.

3 Reflective Practice Assignment

Assessment Title
Wk11&12 Job Interview (20%)

Task Description

In this assignment you will apply for a job as an applications developer. You will:

  • Develop answers to selection criteria
  • Attend an interview during a Week 12 class (lecture or tutorial) during which you will answer interview questions. The interview will be recorded for moderation purposes.

The interview will ask questions for topics such as the following:

  • Groupwork, laws & ethics
  • Technical, e.g. identify the code in your project that is used to implement a feature, e.g. persistence, and explain how that code works and the organisational benefits
  • Compare how alternative enterprise software architectures can used to balance the needs of different stakeholders in an organisation.


Assessment Due Date

Week 11 Friday (27 Sept 2024) 11:45 pm AEST

Your selection criteria are due in Week 11. The interview is due in-class in your Week 12 lecture or tutorial.


Return Date to Students

Feedback will be returned within a fortnight of the due date.


Weighting
20%

Assessment Criteria

The assignment criteria includes quality of selection criteria answers and answers to interview questions that include topics such as groupwork, laws, ethics, technical (design and coding) questions, and to compare how alternative enterprise software architectures can be used to balance the needs of different organisational stakeholders.


Referencing Style

Submission
Online

Submission Instructions
Submit your selection criteria to the unit website in Week 11. Attend your interview in Week 12.

Learning Outcomes Assessed
  • Investigate and compare major enterprise software architectures and analyse the effectiveness of enterprise software systems for business operations involving diverse groups of stakeholders with varying needs
  • Use contemporary enterprise software development tools and techniques to design and develop appropriate solutions for business operations

Academic Integrity Statement

As a CQUniversity student you are expected to act honestly in all aspects of your academic work.

Any assessable work undertaken or submitted for review or assessment must be your own work. Assessable work is any type of work you do to meet the assessment requirements in the unit, including draft work submitted for review and feedback and final work to be assessed.

When you use the ideas, words or data of others in your assessment, you must thoroughly and clearly acknowledge the source of this information by using the correct referencing style for your unit. Using others’ work without proper acknowledgement may be considered a form of intellectual dishonesty.

Participating honestly, respectfully, responsibly, and fairly in your university study ensures the CQUniversity qualification you earn will be valued as a true indication of your individual academic achievement and will continue to receive the respect and recognition it deserves.

As a student, you are responsible for reading and following CQUniversity’s policies, including the Student Academic Integrity Policy and Procedure. This policy sets out CQUniversity’s expectations of you to act with integrity, examples of academic integrity breaches to avoid, the processes used to address alleged breaches of academic integrity, and potential penalties.

What is a breach of academic integrity?

A breach of academic integrity includes but is not limited to plagiarism, self-plagiarism, collusion, cheating, contract cheating, and academic misconduct. The Student Academic Integrity Policy and Procedure defines what these terms mean and gives examples.

Why is academic integrity important?

A breach of academic integrity may result in one or more penalties, including suspension or even expulsion from the University. It can also have negative implications for student visas and future enrolment at CQUniversity or elsewhere. Students who engage in contract cheating also risk being blackmailed by contract cheating services.

Where can I get assistance?

For academic advice and guidance, the Academic Learning Centre (ALC) can support you in becoming confident in completing assessments with integrity and of high standard.

What can you do to act with integrity?