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: COIT11134 and COIT11237 OR COIT11134 and COIT12167

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 - 2022

Brisbane
Cairns
Melbourne
Online
Rockhampton
Sydney
Townsville

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. Written Assessment
Weighting: 20%
2. Practical and Written Assessment
Weighting: 30%
3. Practical and Written Assessment
Weighting: 50%

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 Student feedback and Unit Coordinator's reflection

Feedback

Students and tutors spent too much time fixing software configuration problems instead of the unit’s learning activities.

Recommendation

Update the software configuration and lab instructions to simplify the setup and configuration of Glassfish and MySQL. Also, change the first tutorial’s activities to focus on setting up the software environment and follow up briefly on subsequent tutorials.

Feedback from Student feedback and Unit Coordinator's reflection

Feedback

Unit content is outdated and lacks industry’s current practices and trends.

Recommendation

Identify textbooks and/or resources that cover Enterprise Software Development with state-of-the-art frameworks/tools such as Spring Framework, REST Services, and Microservices.

Unit Learning Outcomes
On successful completion of this unit, you will be able to:
  1. Compare the major enterprise software architectures
  2. Investigate the design options available for a given scenario depicting a complex enterprise problem
  3. Develop software applications using persistent objects and object-relational mapping
  4. Build a 3-tiered enterprise software system integrating data persistence, business logic, and web tiers
  5. Analyse the effectiveness of enterprise software systems for business operations involving diverse groups of stakeholders with varying needs
  6. Work collaboratively in a team contributing to productive 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. 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 5 6
1 - Written Assessment - 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 5 6
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

Alignment of Assessment Tasks to Graduate Attributes

Assessment Tasks Graduate Attributes
1 2 3 4 5 6 7 8 9 10
1 - Written Assessment - 20%
2 - Practical and Written Assessment - 30%
3 - Practical and Written Assessment - 50%
Textbooks and Resources

Textbooks

Prescribed

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
ISBN: 9781484235737
Binding: eBook
Supplementary

Spring Start Here

Edition: 1 (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)
  • NetBeans 13
  • OpenJDK 18.0.1.1 from https://jdk.java.net/18/
  • MySQL Community Server 8.0.29 from https://dev.mysql.com/downloads/mysql
  • GlassFish 6.2.5 Server from https://glassfish.org/download
Referencing Style

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

For further information, see the Assessment Tasks.

Teaching Contacts
Farzad Sanati Unit Coordinator
f.sanati@cqu.edu.au
Salahuddin Azad Unit Coordinator
s.azad@cqu.edu.au
Schedule
Week 1 Begin Date: 11 Jul 2022

Module/Topic

Enterprise Computing & Java EE

Chapter

Chapters 1 & 4

Events and Submissions/Topic


Week 2 Begin Date: 18 Jul 2022

Module/Topic

Object-Relational Mapping

Chapter

Chapter 5

Events and Submissions/Topic


Week 3 Begin Date: 25 Jul 2022

Module/Topic

Managing Persistent Objects

Chapter

Chapters 5 & 6

Events and Submissions/Topic


Week 4 Begin Date: 01 Aug 2022

Module/Topic

Callbacks and Listeners

Chapter

Chapter 6

Events and Submissions/Topic


Week 5 Begin Date: 08 Aug 2022

Module/Topic

Enterprise Java Beans

Chapter

Chapter 7

Events and Submissions/Topic

Assignment 1 Due: Week 5 Friday (12 Aug 2022) 11:45 pm AEST
Vacation Week Begin Date: 15 Aug 2022

Module/Topic

Student Vacation Week

Chapter

Events and Submissions/Topic


Week 6 Begin Date: 22 Aug 2022

Module/Topic

Session Beans

Chapter

Chapters 7 & 8

Events and Submissions/Topic


Week 7 Begin Date: 29 Aug 2022

Module/Topic

Callbacks, Timer Service and Authorization

Chapter

Chapter 8

Events and Submissions/Topic


Week 8 Begin Date: 05 Sep 2022

Module/Topic

JavaServer Faces

Chapter

Chapter 10

Events and Submissions/Topic

Assignment 2 Due: Week 8 Friday (9 Sept 2022) 11:45 pm AEST
Week 9 Begin Date: 12 Sep 2022

Module/Topic

Pages and Components

Chapter

Chapter 10

Events and Submissions/Topic


Week 10 Begin Date: 19 Sep 2022

Module/Topic

Processing and Navigation

Chapter

Chapter 11

Events and Submissions/Topic


Week 11 Begin Date: 26 Sep 2022

Module/Topic

Restful Web Service

Chapter

Chapter 15

Events and Submissions/Topic


Week 12 Begin Date: 03 Oct 2022

Module/Topic

Messaging

Chapter

Chapter 13

Events and Submissions/Topic


Review/Exam Week Begin Date: 10 Oct 2022

Module/Topic

Assignment 3 Submission

Chapter

Events and Submissions/Topic

Assignment 3 Due: Review/Exam Week Friday (14 Oct 2022) 11:45 pm AEST
Exam Week Begin Date: 17 Oct 2022

Module/Topic


Chapter

Events and Submissions/Topic

Term Specific Information

Contact information for Dr Farzad Sanati: Email: f.sanati@cqu.edu.au; Office: Room 1.17, CQU Townsville Campus; P +61 7 4726 5386 | X 55386.

Assessment Tasks

1 Written Assessment

Assessment Title
Assignment 1

Task Description

Your task for this assignment is to write a technical review report on the topic of current enterprise computing platforms: Java EE, Service-Oriented Computing and Cloud. The purpose of this assignment is to assess your review competency in terms of critiquing ability, clarification of technical issues, and formal academic report writing.

The complete assignment specification can be accessed from the Moodle unit site.


Assessment Due Date

Week 5 Friday (12 Aug 2022) 11:45 pm AEST

You will have to upload the assignment to Moodle by the above due date and time.


Return Date to Students

Week 7 Friday (2 Sept 2022)

Within 2 weeks of the submission due date.


Weighting
20%

Assessment Criteria

The assignment will be assessed mainly against the depth of the technical content, clarity of writing and citation quality. The detailed marking criteria can be accessed from the Moodle unit site.


Referencing Style

Submission
Online

Submission Instructions
You must submit your assignment via the online submission system on the Moodle unit site.

Learning Outcomes Assessed
  • Compare the major enterprise software architectures


Graduate Attributes
  • Communication
  • Critical Thinking
  • Information Literacy
  • Information Technology Competence

2 Practical and Written Assessment

Assessment Title
Assignment 2

Task Description

In this assignment, you are required to work on a three-tier enterprise software given an application scenario. Your task for this assignment is to design, implement and test only the persistence tier. The purpose of this assignment is to assess your competency of applying Java Persistence API (JPA) to design and manipulate persistence entities.

The assignment specification can be accessed from the Moodle unit site.


Assessment Due Date

Week 8 Friday (9 Sept 2022) 11:45 pm AEST

You will have to upload the assignment to Moodle by the above due date and time.


Return Date to Students

Week 10 Friday (23 Sept 2022)

Within 2 weeks of the submission due date.


Weighting
30%

Assessment Criteria

The assignment will be assessed mainly against the documentation (design and test) quality, and software implementation correctness. The detailed marking criteria can be accessed from the Moodle unit site.


Referencing Style

Submission
Online

Submission Instructions
You must submit your assignment via the online submission system from the Moodle unit site.

Learning Outcomes Assessed
  • Investigate the design options available for a given scenario depicting a complex enterprise problem
  • Develop software applications using persistent objects and object-relational mapping
  • Work collaboratively in a team contributing to productive software development.


Graduate Attributes
  • Communication
  • Problem Solving
  • Critical Thinking
  • Information Literacy
  • Team Work
  • Information Technology Competence

3 Practical and Written Assessment

Assessment Title
Assignment 3

Task Description

The application scenario for this assignment is the same as Assignment 2. You will work as part of a small team to design, implement, test and document a complete three-tier enterprise software. The purpose of this assignment is to assess your competency in enterprise computing paradigms, such as Java ServerFaces (JSF), Enterprise Java Beans (EJB), Java Persistence API (JPA) programming, and interoperation between the tiers of an enterprise software. Your ability to work collaboratively in a small team will also be assessed.

The complete assignment specification can be accessed from the Moodle unit site.


Assessment Due Date

Review/Exam Week Friday (14 Oct 2022) 11:45 pm AEST

You will have to upload the assignment to Moodle by the above due date and time.


Return Date to Students

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


Weighting
50%

Assessment Criteria

The assignment will be assessed mainly against the documentation (design and test) quality, software implementation correctness, and team work report. The detailed marking criteria can be accessed from the Moodle unit site.


Referencing Style

Submission
Online Group

Submission Instructions
You must submit your assignment via the online submission system on the Moodle unit site.

Learning Outcomes Assessed
  • Develop software applications using persistent objects and object-relational mapping
  • Build a 3-tiered enterprise software system integrating data persistence, business logic, and web tiers
  • Analyse the effectiveness of enterprise software systems for business operations involving diverse groups of stakeholders with varying needs
  • Work collaboratively in a team contributing to productive software development.


Graduate Attributes
  • Communication
  • Critical Thinking
  • Information Literacy
  • Team Work
  • Information Technology Competence
  • Cross Cultural Competence
  • Ethical practice

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?