Question
Essential Content
LO1 Explain server technologies and management services associated with hosting and managing websites
LO2 Categorise website technologies, tools and software used to develop websites Website technologies:
LO3 Utilise website technologies, tools and techniques with good design principles to create a multipage website.
LO4 Create and use a Test Plan to review the performance and design of a multipage website
CASE STUDIES:
An important learning methodology is the extensive use of case studies. They enable learners to apply the concepts that they learn in their subjects. The learners have to study the case, analyse the facts presented and arrive at conclusions and recommendations. This assists in the assessment of the learner’s ability to apply to the real world the tools and techniques of analysis which they have learnt. The case study serves as a supplement to the theoretical knowledge imparted through the course work.
Plagiarism:
Any act of plagiarism will be seriously dealt with according to the colleges and awarding bodies’ regulations. In this context the definition and scope of plagiarism are presented below:
Plagiarism is presenting someone’s work as your won. It includes copying information directly from the web or books without referencing the material; submitting joint coursework as an individual effort; copying another student’s coursework; stealing coursework form another student and submitting it as your own work.Suspected plagiarism will be investigated and if found to have occurred will be dealt with according to the college procedure. (For further details please refer to the plagiarism policy and the student code of conduct.)
Academic Misconduct’ Statement:
‘Academic Misconduct’ is a term used to describe a deliberate attempt by a student to take unfair advantage over other students to undermine the quality, standards and credibility of the programmes and qualifications offer by UKCBC. Academic Misconduct includes: plagiarism; collusion; falsification; replication; cheating; bribery; and impersonation. A student suspected of Academic Misconduct will be investigated by the College and appropriate action will be taken.
‘Contract Cheating’ Statement:
‘Contract Cheating’ is defined by the Quality Assurance Agency (QAA) as occurring when, “a third party completes work for a student who then submits it to an education provider as their own, where such input is not permitted.” Such third party companies have become known as ‘essay mills’, and it is the responsibility of students to avoid contact and association with such third party companies throughout their entire period of study. A student suspected of Contract Cheating will be investigated by the College and appropriate action will be taken.
Assignment Brief and Guidance
Part 1 :
You work as a web developer for a leading company who provides web solutions for companies. As part of your role, you have been asked to produce a report on the tools and techniques associated with front- and back-end development together with the technologies and services required to set up, host and manage a typical commercial website.
Your report should include:
1. Server technologies and the management services associated with hosting and managing websites (including search engine optimisation).
2. A review of different website technologies supported with the tools and software used to develop websites (including the differences between online website creation tools and custom built sites) Further evaluate the impact of common web development technologies and frameworks with regards to website design, functionality and management.
Answer
LO1. Hosting and website management: Investigate relationships between domain names, DNS services and communication protocols used to access a website. Overview of publishing and managing secure websites, including search engine indexing and ranking. Different server technologies: Differences between web server hardware, software and host operating systems. Advantages of an integrated database system with regards to expanding website capability. Common web development technologies and frameworks.
LO2. Using front-end technologies, presentation layers and client-side programming to build a User Interface (UI) and effect User Experience (UX). How back-end technologies, application layers and server-side programming can be used to enable personalisation and deliver dynamic content. Tools, techniques and software used to develop websites: Improving User Experience (UX) through Rich Internet Application (RIA) design using JavaScript and CSS frameworks and packages. Overview of online content management systems including possible advantages and limitations with regards to design. Using web design and development software to design and build a secure website.
LO3. Establish the client and user requirements: Differentiate client and user requirements from behaviours. Consider how audience and purpose could influence the look and feel of a website. Review accessibility standards and guidelines and their possible impact on design and aesthetics. P ears on BT EC Levels 4 and 5 Higher Nationals in Computing Specification – Issue 3 – M arch 2017 © P ears on Education Limited 2017 147 Research and create good content combined with good design principles to create a multipage website: Introduce and use recognised design principles, incorporating accessibility guidelines to implement an appropriately branded, multipage site. Discuss why and how the quality of content can affect the performance of a website.
LO4. Consider factors that influence website performance: Review how intuitive interfaces and actions, user-friendly designs, appropriate graphics, effective navigation and good quality content can help establish user trust and deliver an improved User Experience (UX). Consider the effects of good and bad search engine optimisation (SEO) and indexing on the performance of a website. W3C Validation (HTML and CSS) and how it influences website design and performance. Establish a Test Plan and use it to assess the performance of a website: Assess the impact of poorly optimised website graphics. Research and conduct Quality Assurance (QA) and usability testing on a multipage website.
Case Study
Introduction
Web development encompasses the rules and guidelines for constructing and producing Web based pages, example being HTML, CSS, SVG, APIs of devices, and many more trending and state of the art technological tools required in the website building and hosting process to ensure client satisfaction, (Ruby &Thomas 2009).
Web development requires various skills and abilities for both producing and maintaining webpages. The skills required vary and that’s why it is almost impossible for a single developer to grasp and poses all this, (Etzion et al 2011). This has therefore resulted to developers with different levels of skills to come together and work as a unit with each uncooperating his abilities and skills in the development process.
Web development encompasses putting into place unique solutions that go hand in hand with the business requirements and demands while the whole process is guided by the client. Unique webpage design and good understanding along with intensive research efforts and understanding the targeted users, state of the art and the global market, ensures that the clients demands are met and a good reputation for the designer.
The Domain Name System types, organization and management
The domain name system can be explained as the system of naming the computer resources. It is also referred to as the phonebook of the Internet. The DNS are of the four main types. This includes:
- The recursive resolvers
- The root name servers
- The TLD name servers and
- The authoritative name servers
Though all the types of the DNS work together in making sure that the domain IP address is delivered to the client.
The recursive resolver is the very first place where the query of the DNS , the web client stops hence acting is a midwife between the DNS nameserver and the client.
The root nameservers are 13 in number and they are defined in each and every recursive resolver DNS. They form the very first stop for the quest of the recursive resolver for the records of the DNS. The root nameserver allows the query posted by the recursive resolver in this case includes the domain name, it they responds the query to the TLD nameserver in accordance with the domain extension attached to it.
The TLD nameserver is utilized in maintaining the domain name data which have similar extension of the domain. A good example is the .com, .ac.ke,.net and others.
The authoritative nameserver is the very last stage in the routes of the IP addresses. In this type, it contains the domain name specified data which the nameserver serves . Example of the domain name is google.com.
What is web development
Web development is an overall term referring to the tasks associated with coming up with a website for the internet of things, the intranet or the world wide web. Web development ranges from producing a humble static page of continuous plain texts to a more extensive and very complex web application, online services and social, (Deitel & Deitel 2008).
web development can be broken down into three extensive parts front-end, back-end, and full stack. The web development process therefore involves the following:
- User based coding
- Server-based coding
- Database technology
Front-end development
Reference to (Corral et al 2011). The front end of any website is that interface that users are able to interact with to access or provide information. As you scroll up and down a website, all that which you are able to view ranging from photos and images, fonts and colors, dropdown menus and scrolls, panes and windows is all part of the front end. To come up with this, HTML, CSS, and JavaScript have been combined in a proper manner and is under the control of a browser installed in a computerized device.
Proper knowledge, sills and tools are required to produce a responsive, eye-catchy and user-friendly website.
Tools and skills required in front end development
Front-end developers are the people behind the user interface coding and design. For one to come up with this they must poses the ability to interact fluently with three web programming languages according to (Murugesan 2008):
- Html
- CSS
- JavaScript programming
Apart from fluency in the above languages the developers are also required to be familiar and to also make use of frameworks. Common frameworks include;
- Bootstrap
- Foundation,
- Backbone,
- AngularJS
- EmberJS,
This framework ensure that a website will have a very good look in each and every device used to access the website.
The develop can also make use libraries like
- jQuery
- LESS
Libraries help in packaging the written code to a very useful form and also reduces time wastage. A good experience in Ajax can also be an added advantage as the skill is often used along with JavaScript and allow pages to load easily and background server data download.
The above-mentioned tools can be a great help to front end developers. Implementing this tool and working together with web designers and analysts in user experience will aid in developing a fully functional website. Solid front-end developers can likewise precisely distinguish particular issues in client encounter and give suggestions and systematized answers to impact and enhance the development process, (Duckett et al 2014). It's additionally essential to have the capacity to smoothly cooperate with different groups over the business to comprehend particular objectives, needs, and openings, and afterward execute on those mandates.
Back-end development
How is the frontend active? How possible is t for us to shift from a page to another? How is the website able to store our data and where? It’s all made possible by the back end which is invisible to the user: the “behind the scenes of a website”. here is where the coding comes in. this part contains
- a server
- an application
- a database.
This is where the developer interacts with the website by conducting a comprehensive development and maintenance of the technology behind the powering of tools and components that work together to ensure the user interface exists and works.
Tools and skills required
The ack end consists of a server a database and an application which must communicate. The developer ensures hiss tools workhand in hand to meet user requirements. The building process of the backend is almost entirely coding related.
It is therefore a requirement that the developer should be familiar with programming languages that help in building applications. This language includes;
- PHP,
- Ruby,
- Python,
- Java
- .Net
Apart from coding language the developer should also make use of tools such as
- MySQL
- Oracle
- SQL Server
This tool can be used acquire, keep record/save, or alter data and also feed it back to the requester in the front-end part of the web. The developers can also make use of PHP frameworks such as
- Zend,
- Symfony
- CakePHP;
Developers with knowledge and skills in software used to control version such as SVN, CVS, or Git; and also, familiarity with Linux for deployment and development of stem can be an added advantage.
According to (Suneetha & Krishnamoorthi 2009). Back-end developments should make use of the above-mentioned tools in creation of responsive and adaptive web applications accompanied with easy, movable and well written code. However before proceeding to write the code, developers should interact with the client and other users in an attempt to grasp and fully meet their needs. After proper formulation of the needs the developer can now transform all the demands and needs of the users into an effective, responsive and efficient website.
Relations
The presentation layer which sends data in the application layer is related to the back end system, this is because the back end system is used to provide data to the front end system after the back end system responds positively for the request query. The application layer is the layer where the user interacts with the Interface and carries transaction from that layer. The same was the client front end works. The application layer fetches and requests data from the application layer. Therefore the client server architecture of the front and the back end system of the website is a good example of the same.
Difference online website creation tools and custom built sites
The process of developing the websites using the online tools is very much tedious in during designing since the process requires internet connection at each and every step , downloading themes and plugins hence inflexible whereas using the custom tools, its very much flexible since the processes with be fast and also customization is easy.
The website designed using the online tool is very fast in performance than custom built sites since the online tools can easily incorporate the online plugins and massive themes and also responsiveness can be easily and best achieved.
The functionality of the website made using the online tools are easy to achieved since most of the plugins are found online than coding from scratch using the custom built tools.
Due to the responsiveness of the websites built using the online tool, this makes the User Interface of the said website to be so nice than the once made by the custom built tools.
The custom tools are easy to built with, and also users can easily understand the usage and navigation tan the one built using the online tools since very complex themes and plugins are used which might take much time to understand.
Other Tools Technologies and Services Required to Set Up, Host and Manage A Typical Commercial Website.
- Web Server
A web server it is a that allows one to host a commercial website.it stores the Html, databases, files of PHP, pictures, gifs, videos and all other media items that encompasses the website at large. A Linux or windows operating system is required to allow the webserver to run. A maintenance and managing crew should be put in place to manage it. To acquire space for hosting the website one can pay the web hosting services company or host the ebsite on their own servers
- Server Software
This is a program that is able to determine a user’s request on their servers through the website and is able to the specific information requested. Its primary function is to process user requests and service the clients with the required files. The front end then presents the files through the web browser.
There are several types of server software. this include
- application software
- database server
- file server software
- cloud computing software.
A good example of we servers is the famous Apache and the Windows IIS. In the recent past Server software could only be a physical server but with rise in technological advancement, virtual or cloud severs are also available.
- Web Tools
As discussed earlier web tools are known to be used in the creation of the front end of a commercial website. They vary from the very basic HTML text editors (a good example being the notepad) to the very extensive graphic creation equipment’s and the content management tools with inbuilt debugging and framework tools.
Html codes and files can be easily formed using a text editor like the Dreamweaver not forgetting the CSS that is capable of enhancing the front end of the website visually.
other tools include the Visual Studio .net that is capable overproducing websites with inbuilt integrated databases and the packages of Graphic which can be sed for designing a good appearance user interface.
- Database System
A database is the most sensitive part of the website. This is because the database is used a storage for both the user and client’s information. It is therefore essential that the website is designed in a way that its connection to the database is secured. This is an effort to ensure that information is stored and retrieved in an orderly manner.
The most common database technology includes the PHP and MySQL which are the communication pathways between the website and database management system.
- Networking
In order for information to be requested for and found a common network should be laid. The TCP and IP are used to define the manner in which computers should communicate through the internet. They also control sharing of information. Commonly protocols include the HTTPS, HTTP and FTP. These protocols are used to gain access to v various website.
FTP (file transfer protocol) should be used as it allows the user to download files from a website by the help of a web browser.
HTTPS should be incorporated for it is responsible for scoring communication and information transfer between a server and a browser.
it is very essential that the connection is attained as the website is a commercial one.
- Browser Compatibility
What is a browser? This is a software designed to find and locate, accept and display the content as fed from the web servers.
Web browsers include
- Internet Explorer
- Mozilla Firefox
- Opera mini
- Google chrome
Before fully launching a website the developers and development teams should first ensure that the website is correctly displayed on various browsers in almost every device of different screen.
- Ports
Ports are responsible for allowing a device to connect to another device through a varying IP addresses. A device is capable of possessing more than a single port.
- Domain Names
Domain names are unique since they are links of different companies or brands. Commercial websites have each a unique domain names for easy identification. Domain names are mainly directly linked to the business/organization name. This helps in ranking them in search engines.
- Frameworks
The objective of a framework is to enable creators and developers to centre around building the one of a kind highlights for their undertaking, instead of re-concocting the wheel by coding normal, commonplace highlights found crosswise over numerous sites and web applications.
Advantages of frameworks
Open-source: So many good systems which are developed in different programming languages are openly available over the internet. Though they have attached the author of the system though it is subjected to editing hence can be freely customized.
Documentation and support: Most of the developed systems have the documentation which explains in details how the system works and how the errors can be corrected in the system. The help system is also available for non programmers to seek help from the system without the need of the developer. This is of so much help to the users of the system since documentation is the guideline for the using of the system.
Proficiency: Proficiency can be considered as the core reason for the existence of the systems in the organisations. The work done by the system is so complex that could take a lot of time if this can be done manually. Computation and general organisations of the work , arranging data in order and other functions which can take ages if done manually.
Security: Under normal circumstances, systems are always tested and verified by several developers. During the development process, the system is tested with various security issues and the loopholes are closed for the same. This in turns makes the system more secure and worthy usage to keep and maintain financial data.
Coordination: If you are fabricating any kind of utilization (counting a site) and you need to store a few information, you will ordinarily utilize a database. Much the same as a database, there likewise exists numerous different devices that connect to web advancement. Numerous systems will therefore make it less demanding to connection to these devices and furthermore speak with them (for instance, when "conversing with" a database is preoccupied away in a specific framework, making correspondence with the database significantly simpler)
Disadvantages of frameworks
Restrictions: With this kind of the systems, it becomes so hard for the user to work with the system. Almost everything cannot be worked upon due to restriction.
Execution: Considering the client side of the system which is developed using JavaScript ad the Back borne JS, angular JS, Ember JS, the time for execution is also a factor in this. Though it is agreed that execution time was also a factor from the beginning, today, this factor is very much important and crucial.
Learning predisposition: If you choose to figure out how to utilize any framework from some programming dialect you know about, odds are that what you realize will be to some degree distinctive to the dialect itself. This is because of the way that a considerable measure of those redundant assignments has been made in custom capacities and different parts, which is the reason you will learn such things that might not have existed in the dialect lessons itself. Aside from that, you may likewise take in a considerable measure of things that might be unessential to you while utilizing the system, all things considered, yet are important to get a handle on how the framework functions
Soak expectation to absorb information: Most of the web systems are very hard in the process of learning and also the usage part of it is also very had. After the research over the same, it was discovered that for a non programmer, it can take up to 2 years in order to get conversant with the system. Actually this process is not that simple for this case. Its very much technical to learn. Even after total dedication over the same, this might not take less than 6 months in learning.
Cost: Systems needs advanced experts and knowhow as compared to the CMS. This is therefore more expensive and costly in employment of the experts and also designers. And to the addition, the overall work of the system is more expensive than that of the CMS
Search engine optimization
Search engines index computerized documents and their metadata, and in this way, SEO is normally thought to be the worry of individuals who oversee innovation. While the reality of the matter is that compelling SEO influences the layers of innovation that oversee and convey computerized content, it truly is the worry of anybody whose work is spoken to on the Internet since it impacts how open that function is to the target groups. Search engine optimization isn't something that ought to be left only to an organisation's IT division: an IT office ought to be left to make, frequently naturally, the decisions that decide its effect on an organization's business methodology"
SEO practices that can assist in making the domain is to find in web indexes
- Create inner inventories of the organisation intelligent and physical spaces.
- Coherent areas are the spaces, sub-areas, and sub-catalogues used to sort out Web content and are ordinarily lined up with the general population in charge of the substance in a given accumulation or storehouse.
- Physical spaces depict the physical servers that host the advanced library's coherent areas. A server may have various sensible areas, for example, an IR, a departmental site, or a digitized gathering.
- Planning sites and navigational ways that represent no obstructions to crawlers. Illustrations can make a site appealing; however, their abuse tends to increment page stack time and gives practically no content to crawlers to record. Complex inner connection frameworks or tangled ways to objects diminish crawler proficiency and cut off the aggregate sum of substance they can discover and file on the site. Crawler proficiency can weigh vigorously in how a site and its substance is positioned in SERPs.
- Serving indexable content and metadata. Web indexes don't endure position of imperceptible content or catchphrase stuffing, and excess or dreary metadata lead crawlers to feel that the articles being depicted are indistinguishable. Arranging servers and programming to convey comes about rapidly to clients and hunt motor crawlers. Moderate server reaction, dead connections, and inability to convey area changes and downtime through an acknowledged arrangement of messages is seen as an awful client encounter.
Impact of Using Web Development Technologies and Frameworks with Regards to Website Design, Functionality and Management
- Functional
A site created using proper web development tools proves to be functional and less failure expectations. For instance, work board has a reason where managers can post occupations and employment searchers can discover and apply for employments. Once connected, there ought to be a path for applicants and bosses to impart and stay up with the latest with an occupation application. In the event that you fabricate a vocation board and it just gives you a chance to post employments, that is insufficient.
- Easy to use
A site ought to be anything but difficult to utilize and explore. Creating a friendly front end ensures that the users have n easy time navigating, sending and accessing information from a website
- Modernisation
The tools ensure your site is utilizing current patterns and advances. For instance, responsiveness and liquid website architectures are the key necessities for present day sites. You would prefer not to make settled page formats for your site that doesn't bolster portable lucidness.
- Optimisation
The tools ensure that a site is optimized for various gadgets, programs, information speed, web crawlers, and clients. In the event that your site isn't enhanced for portable information clients and their download speed, clients may leave your site. In the event that your site does not bolster regular present-day programs, you might pass up a major opportunity for a few clients. In the event that your site isn't advanced for well-known cell phones and their sizes, clients might not have any desire to visit your site.
- Responsive
Web development tools ensure websites are responsive A responsive site changes its design and choices to fit the gadget and program measure. For instance, a site may give more choices on a huge PC screen contrasted with on a cell phone.
- Execution and Speed
The use of frameworks ensures pages load very fast Your site can't be ease back while exhibiting substance to its guests. In the event that your site takes over two seconds to stack, it is most likely too moderate.
- Secure
Security is a noteworthy worry to the present web guests. You have to ensure that your site takes after industry measures and rule by using protocols. For instance, in the event that you have client enlistment highlight, you need to ensure that client passwords are scrambled and not shown in plain content. You likewise need to guarantee that the site is secure and utilizes SSL encryption. On the off chance that you've overlooked a secret word highlight, you would prefer not to give a reset watchword include without asking the security inquiries to the client.
Conclusion
Web development tools have proven to be very effective in producing responsive easy to access and reliable websites. It is therefore important for this tool be used in the developing process. However, Special skills and knowledge are required in order to employ these tools. Thanks o technology, the tools are readily available and the skills are possessed by many developers in our time, (Hall 2009).
The use of this tools ensures the safety of data of the users and that of the client. The website should also be developed to meet both user and client’s needs.