Performance Criteria for Competency Code
1.1 Review the program requirements
1.2 Divide multiple source-code files into logical units and packages
1.3 Use at least two of the utilities of the target language, allowing for the internal storage of collections of data
1.4 Use the utilities of the target language, providing internal data-sorting and searching facilities
1.5 Employ integrated-development environment facilities, to make files to automate program building
1.6 Follow the guidelines for developing maintainable code, adhering to coding standards
1.7 Use the facilities in the language for persisting objects to binary files
1.8 Use the operator and function or method overloading facilities available in the language, at an introductory level
1.9 Use exception-handling techniques to ensure program stability
1.10 Use of a class that is based on multiple inheritances
2.1 Design and implement programs that connect to a database
2.2 Design and implement programs that use the language facilities to extract, update, and delete data stored in a database
2.3 Design and implement programs that use the language facilities to manipulate database structure (query, create and delete)
2.4 Write programs that deliver transactional integrity
3.1 Employ the graphical user interface (GUI) framework, or text windowing interface, appropriate to the chosen language
3.2 Use standard GUI components
3.3 Use the facilities within the language for GUI objects to respond to user and program-generated events
4.1 Use stand-alone debugging tools, or tools provided by the integrated development environment, to examine variables, and trace the running code
4.2 Use the debugger to detect logical and coding errors
4.3 Use the tracing of code and examination of variable contents during execution, to detect and correct errors
5.1 Design and document limited tests of code
5.2 Undertake limited testing of the produced code to ensure that it complies with the program specification
5.3 Capture and document the test results
6.1 Read and interpret the supplied design document, to create the code
6.2 Create and maintain program documentation
Case Study
Note: the case is the same case or the continuation of the case of Object Oriented Programming I of Certificate IV (Please refer to the appendix). The major difference isa database are implemented so that the values of the WebPages can be managed by the client through a user friendly GUI (Graphic User Interface). As well as the Web Design Company is to demonstrate more professional methods in project documentation and debugging/testing in project commencing.
Case Introduction:
Fashionwave is a small company of designed apparels.
The company are constructed by 20 middle aged women who design and produce the clothes for women and men. They would like to have their own website, so there will be this company's online identity and information exposure online. This is the first stage of their online plan. They will eventually have a full-fledged eCommerce website, which will allow them to be able to sell their clothes directly from online.
For the time being, the company's owner decided that the project will be just categorised into just men and women two simple categories. Each category will have at least 8 most current products in it for a start. Namely, 8 men's clothes in men category, and 8 women's clothes in women category. The website will have 5 pages. Homepage, Category, Service Policy, About Us, Contact. The Homepage will have welcome information, and some highlights of company current sale information; The category page will of course have the link to the two categories, therefore the two categories will be two subpages of this page; Service Policy page will have company service policy, such as shipping information, return policy, service guarantee, etc; About us page the company introduction and a gallery of photos showing the company have being participating a recent apparel fair, the page will also include the icons to the social media, i.e. FaceBook, Pinterest, Twitter, etc; Finally the contact page will have the contact information of the company and the embedded Google map. The men and women products pages are two subpages of the category page, they will each contact 8 or more products, with the products icons, product names, and prices.
The project after planned and proposed needs to be approved by the project manager and the client. Before the delivery of the website, the testing report need to be sighted and approved by the project manager and the client.
Figure 1: A sample navigation structure diagram you need to include in design project proposal
Due to the time limitation. This subject doesn't requires you to program and include the dynamic features of shopping of the website. You are required only to develop the two static content pages, ie. index.php and about_us.php. You are required to transfer/represent the content components of the page and store them into a database. Late, you will need to build an interface where the client can easily change the content of the page by themselves.
In terms of the page class coding and the database structuring, as demonstrated in the above sample storyboard, the webpage can be abstracted into several areas (web elements that need to be represented in the class and in the database). Some of these areas are of course comment to all pages, e.g, Title bar, Navigation bar, Side bar, and Disclaimer.
In the Fashionwave's design case, for GUI interface of the client content maintenance, you can just concentrate on the ‘un-comment' areas/parts of the page. Those comment ones mentioned above can be static information, they don't need to be maintainable in the GUI. This is to because of the limitation of the time for this subject. Therefore the scope of content management tasks is restricted like so, so that the project can be finished by the time of the due date at the end of this subject.
Scenario Problem Summary:
The current problem of the website is that, the content information of the WebPages requires periodical updating. It is not convenient for the client to out-source these tasks to a web design company, as most of task is just changing text and image. Therefore, the client would like to have a easy to use interface, where they can change the information displayed on the webpage. Therefore, a CMS (content management system) need to be established with the current website.
The company's current staff is not very IT savvy, therefore user-friendliness of the interface is highly treasured. Due to the scope of the website, the customization of an open-source CMS is too time consuming, and too sophisticated for the client's need. Therefore, more practical way to solve the problem is to setup a tailor made database structure as the content information need of the webpage per client's request. Therefore, before framework and structure the database and late the page representation class, the client need to be requested on exactly what contents of which page need to be maintained.
Part A. Written Task
Instructions: Please produce the following written document:
Write a simple Design Project Proposal call proposal.docx including:
- Case Description;
- Navigation Diagram and storyboard
- Database table structure
(You are allowed to use one of the Design Project Proposals you developed as a template from the previous subjects you finished or any online standard royalty free web design project proposal template you find from online resources.)
Note: A digital copy of a Design Project Proposaltemplate is provided.
Assessment - Assignment / Project
Part B. Assignment/Project
Instructions:Complete the project coding in your Lab PHP and MySQL developing environment: (i.e. Dreamweaver, XAMPP)
Please confirm your project will covers the following items:
1. PHP/MySQL website file and project documentation (the website folder, comments, proposal, testing plan files achieve and maintenance, for submission)
2. PHP Class Coding; PHP inc file (including file) use; Array, Control Structure use.
3. PHP implementation of MySQL insert and update syntax; search syntax with ordered by feature;
4. Use of Dreamweaver built-in PHP/MySQL integrated feature to automatically build PHP/MySQL query implementation.
5. Following programming good practices for a team friendly maintainable code, and adhere to coding standards (indentation, logical grouping, commenting, naming, re-useable coding models/frameworks)
6. Saving to objects of the PHP into binary files when need instead of plain text files to save physical space in the coding; use PHP overloading and exception handling when needed at the beginner level.
7. The class being implemented to both index.php and about_use.php page objects.
8. Backend database interface, including a user friendly designed GUI page for the client to maintain the content elements of both index.php and about_use.php
Part C. Written Task
Instructions: Please produce the following written document:
Write the project testing plan with standards items to test and signing off page. Save to a Microsoft Word files called test.docx
1. Please list the stand-alone debugging tools you plan to use. Please providing evidence (i.e. screenshots) and a brief description of an example on how to identified an error of logical/coding, and then located where the error occurred, and solved the problem. Then the evidence the error is gone.
2. Please use the sample templates given in the resource folder that comes with assessment 2; or, you can find and use your own templates. You should however make sure you included the following part from the standard testing plan items shown in the given template. Please include the one page signing off page as the last page.
Attachment:- Assessment - Object Oriented Programming.rar