Information Management System Programming in Java Assignment
Qualification - BTEC Higher National Diploma in Computing and System Development
Unit number and title - Unit 41 Information Management System
QFC Level - Level 5
Unit Code - F/601/1528
Suppose you are employed as a Senior Java Solution Adviser in a big software development company. A client is seeking to develop a new software that could be implemented in various computer hardware / software platforms and different database environments. And your company has assigned you to prepare a detailed report explaining the features of Java programming language. Answer task 1.1 and task 1.2.
LO1. Understand the principles of programming in Java
Hint :Java characteristic - Java Virtual Machine (JVM); Java platform; classed-based; object-oriented; compilers; class libraries; applications; applets; object models; enforced error handling; concurrency; threads, multi-platform, reasons for choice of language, data structure, data types, environment, programming structure, syntax.
Java has many features including Object Oriented, Platform Independent, Robust, Interpreted, and Multi-threaded. Discuss the principles, characteristics and features of programming in Java? [P1.1]
Explain the role of Java Virtual Machine (JVM) and critically evaluate environmental flexibility of programming in Java? [P1.2, M1]
London ABC College has asked you to develop a Student Information Management System (SIMS). The system shall hold the details of every student, tutor, admin staff and course details. It shall enable the school staff to enrol students to the courses and manage students' personal details, fee payments, attendance and achievements.
The requirements are:
The system should be able to maintain student, tutor, admin and course registration, updating and deleting.
The system should be able to generate a report including student personal details, attendance, modules, performance, grades, contact details and any other achievements and / or relevant information using their ID number.
Users shall have access to the system using user-friendly menu system. The UI implementation will be a graphical user interface using frames, panels, buttons, labels, text fields, forms... etc.
Data shall be persisted in text files in the form of simple tab or comma-delimited file. Or DBMS - Access or SQL Server
Programming Environment: NetBeans with latest JDK available at the time.
LO2. Be able to design Java solutions
Hint: Requirement Specification (Scenario B) - input, processing, output, user interface, hardware, software, program design tool e.g. structure diagrams, data flow diagrams, entity relationship models, flow charts, pseudo code, class diagrams etc. technical documentation flowcharts, pseudo code, structured English, action charts, data dictionary etc.
Design a Java programming solution to the SIMS scenario B using UML diagrams. Your model should include use case diagrams, class diagrams with attributes and operations of each class and the relationship between classes. Define clearly each class, main methods and properties. You should also provide sequence diagrams as part of the model. [P2.1, D1]
Identify the components and file structures or database required to implement the SIMS application. Explain clearly how data will be communicated and manipulated for the above scenario B. [P2.2, M2]
LO3. Be able to implement Java solutions
Hint: Classes: features eg identification attributes, methods, control of scope of attributes and methods, inheritance, aggregation, association, polymorphism; Programming: use of conventional language commands; use of library classes; pre-defined eg class libraries, downloaded, imported; Complexity: multiple classes; inheritance; reuse of objects; application of polymorphism
In this section you should apply the appropriate fundamental programming concepts (such as variables, constants, arrays, strings, methods, constructs, inheritance, encapsulation etc.) and make use of appropriate Java API classes (such as Scanner, String etc.). In addition, your program should incorporate appropriate error handling. Comments are also to be inserted to improve program clarity. To this end you have to:
Implement the SIMS, based on your design in task 2. [P3.1]
Create and implement all required classes using appropriate relationship such as inheritance. Use methods and attributes in different classes using instances/objects. [P3.2, 3.3, D2]
You are required to identify opportunities for error handling and reporting for the proposed design using proper techniques. [P3.3]
Netbeans is a rich IDE, demonstrate how you are using it in an effective way to develop your solution. [P3.5]
LO4. Be able to test and document Java solutions
Hint: Mechanisms:valid declarations, debugging code, checking naming conventions etc, feedback e.g. survey, questionnaire, interview, supporting document test plan; test results; programmer guidance; user guidance, review
In this section, you need to provide overall documentation for the system analysis, design and implementation as follows:
Critically review and test the overall performance of your system. [P4.1]
Using proper techniques such as testing table, you are required to analyse actual test results against expected results to identify discrepancies. [P4.2]
Evaluate your system with actual users. Demonstrate their feedback on your solution and make recommendations for improvements [P4.3, M3].
Create clear user and technical documentation for the solution. Include relevant screenshots and instructions. You are also required to document all the technical steps used to develop and deploy your solution to support and maintain your system. [P4.4, P4.5, D3]
LO1 Understand the principles of programming in Java
discuss the principles, characteristics and features of programming in Java?
critically evaluate the environmental flexibility of programming in Java?
LO2 Be able to design Java solutions
design a distributed software application for a given problem
explain the components and data and file structures required to implement a given design
LO3 Be able to implement Java solutions
implement a Java programming solution based on a prepared design
define relationships between components to implement design requirements
implement object behaviours using control structures to meet the design algorithms
identify and implement opportunities for error handling and reporting
make effective use of an Integrated Development Environment (IDE) including code and screen templates
LO4. Be able to test and document Java solutions
critically review and test a distributed software application
analyse actual test results against expected results to identify discrepancies
evaluate independent feedback on a developed distributed software application and make recommendations for improvements
create user documentation for the developed distributed software application
create technical documentation for the support and maintenance of a distributed software application.