Programming help home

Wednesday, 22 June 2016

Student Information Management System Case Study

Scenario:


White Chapel Academy has asked you to develop a Student Information Management System (SIMS). The system shall hold the details of every student and tutor and admin staff in the school as well as storing information about the courses that are available at the school. It shall enable the school staff to enroll students to the school and manage student’s fee payments.

Once the students are enrolled, a system administrator will create classes in the system and allocate date, time and tutor for each class to enroll students to. The system shall also be used for managing students’ class attendance as well as track their progress in the course. The system shall have a facility for registered parents to login and check their sons’ or daughters’ attendance, academic progress, behavior at school.

When a student first enrolls at the school, he or she will receive a timetable with a list of classes and date/time for each class in a term. During student registration, the system shall verify whether the student has satisfied the necessary prerequisites for each term by referring to the student’s online transcript of courses completed and grades received (the student can review his or her transcript online at any time as can his or her parents).

Assuming that (a) the prerequisites for enrollment are satisfied, (b) there is room available in each of the classes, the student is enrolled in the classes else he or she is placed on a first-come, first-served waiting list. If a class/section that he or she was previously wait-listed for becomes available (either because some other student has dropped the class or because the seating capacity for the class has been increased), the student is automatically enrolled in the wait-listed class, and an email message to that effect is sent to the student and parents.

Other optional features include:

• Calendar events
• Records of detention
• Keeping correspondence history between the school & parents
• Messaging facility between students as well as students and staff/tutors

User Interface

• Users shall have access to the system using user friendly menu system.
• The UI implementation will be a graphical user interface.

Data Persistence
Data shall be persisted in a text file in the form of simple tab or comma-delimited file.

Programming Environment
NetBeans with latest JDK available at the time.

NOTES ON IMPLEMENTATION: While you are expected to produce an OOP solution using appropriate object modelling and design approaches for the scenario, you are not expected to implement the scenario in its entirety. Coding the sections in italics (see scenario above) is optional.

Task 1

1.1 Briefly list and describe three main features of programming in Java [P1.1]
1.2 What do we mean by BYTECODE and JVM in Java? [P1.2, M1]

To achieve M1, you must demonstrate a clear understanding of the core principles of Java programming & compilation, interpretation process and will have met the deadline to submit the tasks and achieve the unit assessment criteria.

Task 2

2.1 Design a Java programming solution to the SIMS scenario using use-case diagram that shows how users will interact with the system. [P2.1, M2]
2.2 Identify the components and file structures required to implement the SIMS. [P2.2]
2.3 Use UML class diagrams to show the classes in your system, attributes and operations of each class and the relationship between classes. Define clearly each class, main methods and properties [P2.2, D1].

To achieve M2, you should have applied the relevant theories and use case diagrams in the design process and you must justify the design methods and techniques used.
To achieve D1, you must show the use of critical reflection to evaluate your own work and justify valid conclusions. The validity of results must be evaluated using defined criteria, Realistic improvements have been proposed against defined characteristics for success.

Task 3

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:

3.1 Implement the SIMS based on your design. [P3.1, D2]
3.2 Implement classes using inheritance relationship. [P3.2, D3]
3.3 Use methods and attributes in different classes using instances/objects. [P3.3, D2]
3.4 Identify and implement opportunities for error handling and reporting. [P3.4, D3]
3.5 Make effective use of the Netbeans (IDE). [P3.5]

To achieve D2, you should have made alternative approach and critical evaluation procedures, demonstrating autonomy and independence. Also will have met the deadline to submit the tasks and achieve the unit assessment criteria and thus taken the responsibility for managing and organising activities.
To achieve D3, you should have demonstrated effective thinking has taken place in the context of implementing object behaviors, idea generation and decision making in the implementation process and finally demonstration of self-evaluation has taken place.

Task 4

In this section you need to provide overall documentation for the system analysis, design and implementation as follows:
4.1 critically review and test your solution. [P4.1, M3]
4.2 analyse actual test results against expected results to identify discrepancies. [P4.2, M3]

4.3 evaluate independent feedback on your solution and make recommendations for improvements
[P4.3, M3].
4.4 create user documentation for the solution. [P4.4]
4.5 create technical documentation for the support and maintenance of your system. [P4.5]

To achieve M3, The appropriate structure and approach has been used, coherent, logical development of principles/concepts for the intended audience and demonstration of self-evaluation has taken place. A range of methods of presentation (technical and user documents) has been used and technical language have been accurately used, Communication has taken place in familiar and unfamiliar contexts.

Programming Assignments Help is the best assignment help provider in the United Kingdom. Our online assignment writing help UK is especially dedicated for the students studying in all UK colleges and universities. Submit assignment to get the best quality assignment help.

Monday, 13 June 2016

ICTM Java Programming Case Study

Scenario:

White Chapel Academy has asked you to develop a Student Information Management System (SIMS). The system shall hold the details of every student and tutor and admin staff in the school as well as storing information about the courses that are available at the school. It shall enable the school staff to enroll students to the school and manage student’s fee payments.

Once the students are enrolled, a system administrator will create classes in the system and allocate date, time and tutor for each class to enroll students to. The system shall also be used for managing students’ class attendance as well as track their progress in the course. The system shall have a facility for registered parents to login and check their sons’ or daughters’ attendance, academic progress, behaviour at school.[Read about E-Commerce Website Designing Assignment]

When a student first enrolls at the school, he or she will receive a timetable with a list of classes and date/time for each class in a term. During student registration, the system shall verify whether the student has satisfied the necessary prerequisites for each term by referring to the student’s online transcript of courses completed and grades received (the student can review his or her transcript online at any time as can his or her parents).

Assuming that (a) the prerequisites for enrollment are satisfied, (b) there is room available in each of the classes, the student is enrolled in the classes else he or she is placed on a first-come, first-served waiting list. If a class/section that he or she was previously wait-listed for becomes available (either because some other student has dropped the class or because the seating capacity for the class has been increased), the student is automatically enrolled in the wait-listed class, and an email message to that effect is sent to the student and parents.

Other optional features include:
• Calendar events
• Records of detention
• Keeping correspondence history between the school & parents
• Messaging facility between students as well as students and staff/tutors

User Interface

• Users shall have access to the system using user friendly menu system.
• The UI implementation will be a graphical user interface.

Data Persistence

Data shall be persisted in a text file in the form of simple tab or comma-delimited file.

Programming Environment

NetBeans with latest JDK available at the time.

NOTES ON IMPLEMENTATION: While you are expected to produce an OOP solution using appropriate object modelling and design approaches for the scenario, you are not expected to implement the scenario in its entirety. Coding the sections in italics (see scenario above) is optional.

Task 1


1.1 Briefly list and describe three main features of programming in Java [P1.1]
1.2 What do we mean by BYTECODE and JVM in Java? [P1.2, M1]

To achieve M1, you must demonstrate a clear understanding of the core principles of Java programming & compilation, interpretation process and will have met the deadline to submit the tasks and achieve the unit assessment criteria.

Task 2


2.1 Design a Java programming solution to the SIMS scenario using use-case diagram that shows how users will interact with the system. [P2.1, M2]
2.2 Identify the components and file structures required to implement the SIMS. [P2.2]
2.3 Use UML class diagrams to show the classes in your system, attributes and operations of each class and the relationship between classes. Define clearly each class, main methods and properties [P2.2, D1].

To achieve M2, you should have applied the relevant theories and use case diagrams in the design process and you must justify the design methods and techniques used.
To achieve D1, you must show the use of critical reflection to evaluate your own work and justify valid conclusions. The validity of results must be evaluated using defined criteria, Realistic improvements have been proposed against defined characteristics for success.

Task 3


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:

3.1 Implement the SIMS based on your design. [P3.1, D2]
3.2 Implement classes using inheritance relationship. [P3.2, D3]
3.3 Use methods and attributes in different classes using instances/objects. [P3.3, D2]
3.4 Identify and implement opportunities for error handling and reporting. [P3.4, D3]
3.5 Make effective use of the Netbeans (IDE). [P3.5]

To achieve D2, you should have made alternative approach and critical evaluation procedures, demonstrating autonomy and independence. Also will have met the deadline to submit the tasks and achieve the unit assessment criteria and thus taken the responsibility for managing and organising activities.
To achieve D3, you should have demonstrated effective thinking has taken place in the context of implementing object behaviors, idea generation and decision making in the implementation process and finally demonstration of self-evaluation has taken place.

Task 4


In this section you need to provide overall documentation for the system analysis, design and implementation as follows:

4.1 critically review and test your solution. [P4.1, M3]
4.2 analyse actual test results against expected results to identify discrepancies. [P4.2, M3]

4.3 evaluate independent feedback on your solution and make recommendations for improvements
[P4.3, M3].
4.4 create user documentation for the solution. [P4.4]
4.5 create technical documentation for the support and maintenance of your system. [P4.5]

To achieve M3, The appropriate structure and approach has been used, coherent, logical development of principles/concepts for the intended audience and demonstration of self-evaluation has taken place. A range of methods of presentation (technical and user documents) has been used and technical language have been accurately used, Communication has taken place in familiar and unfamiliar contexts

Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience. 

Order now and get your assignments done before the deadline!

Friday, 10 June 2016

Mobile Game Development Case Study

Case Study

You will individually create a fully complete educational (school-age) mobile game using mobile web design skills. You will submit your completed application's project folder as a zip file.
You will also have to record a video of your completed educational game. This will be a 2-3 minute video, created in any way you choose. Your video will detail what your game does, how you created it, and the challenges faced and overcome.
This is an individual project.

Requirements

Your game must have the following features to pass:
  • The game must operate correctly and adjust in size for both portrait and landscape for the following devices:
    • Apple iPhone 6
    • Samsung Galaxy S4
    • Apple iPad
  • There must be a button to reset the game (either within the game or with Location.reload).
  • There must be your name and SID somewhere on the screen.
  • There must be at least 5 unique in-game moving objects. At least 3 of these should interact with the player (e.g. enemies, who hurt the player's life when hit). All should be different from each other somehow (different images + different code).
    • Note 1: these don't have to be on the same game screen. They can be spread over different levels, for example.
    • Note 2: they don't have to "move" per se, but something visual must change in response to an event (e.g. colour / image change).
    • Note 3: "interacting" means either a direct user event (e.g. a tap), or a game event (e.g. a collision)
  • In your project folder, a licenses.txt file in your project folder, with one item per line, as:
    • enemy1.jpg - from http://www..... - person name - License CC BY
    • road.jpg - created by myself (using Adobe Illustrator) - screenshots of proof / raw images of road.ai in the "_sources" folder

Video Requirements (2-3 minutes):

  1. Your Student Name + introtoapps login name + SID (as text on the screen, so we can read it)
  2. A quick view of your licenses.txt file contents [5 seconds].
  3. Every feature of your app that you want to be marked for (so we know where to find it) [~60-120 seconds]. E.g. every pass feature + credit feature, if you want a credit; plus any bonus cool things you added. These features just need to be pointed out so we know where to find them; you do not need to explain how they work.
  4. The hardest challenges for you, and how you overcame them [in any remaining time]. This lets us know what you personally learned from this exercise.
Aim for around 720 x 406 Universal pixel size (not larger), and around 20mb in size (less is better). We will have 150 student videos to download, so giving us 100mb files is a no-no 

Grading

Minimum required to pass

  • You have a working app that achieves all basic features.
  • Your app correctly and legally attributes all code, images and media (using other people's work without permission + attribution is plagiarism, and results in an immediate fail).
  • You have submitted your project folder (compressed as a zip) and the demonstration video.
  • Your code is well commented.
  • Your code is correctly indented.
Important note: failure to legally attribute any work that isn't your own results in a fail. When in doubt, consider creating your own media. 

Grades above pass

  • Credit:
    • There are no spelling mistakes anywhere in the app. Spelling mistakes look incredibly unprofessional, and turn users off immediately. Be a professional, paste text into Word temporarily and do a spell check.
    • The game has 2 playable scenes / levels. DO NOT go to a different URL (don't have different HTML pages). That works in web pages, but not web apps. A web app (and a mobile web app) is self-contained. The entire app works from a single HTML file.
    • The game is engaging and fun to play for at least 15 minutes.
    • The game is technically correct. There are no obvious bugs or anomalies.
    • The game includes music and/or sound.
  • Distinction: All features of a Credit, and:
    • The game has the ability to pause and resume.
    • The game has a help button, that first pauses the game, and then displays help text on how to use the game. On closing the help text, the game resumes.
    • The game is engaging and fun to play for at least 30 minutes.
    • The game demonstrates all programming concepts we have covered in class, in new / unique ways. In other words, you haven't just copied the approach and modified values, but you have taken the concept and applied it to your situation in a way that is different than shown and that demonstrates you truly understand how the concept works.
    • The game is at a level that could be published as-is, and would be accepted by the app stores.
  • High Distinction: All features of a Distinction, and:
    • The game has 3 or more playable scenes / levels.
    • The game demonstrates you can independently learn multiple advanced concepts, not covered in class, making it clear that you are already ready to enter a professional career as you are able to research and learn new concepts independently.
    • The app is voted by myself as indistinguishable to a high-quality real world app. E.g. no one can tell it is a student app.

Images: Free to Use for Commercial Purposes / Public Domain

When thinking about your Project, there is some very important information that I need you to know. You cannot ever use any image from the web or another source, unless you have legal permission to use it. That means either having someone develop the artwork for you (more for real-world projects, not this one), or you find images that have a "license for commercial use" or in the "public domain". If you can't find such a license that specifically references the file you use, then you cannot use it at all. Doing so is illegal in the real world, and results in an immediate fail of this project. 
[youtube]https://youtu.be/-IDQ-7xPKL4[/youtube]

Ways to create the video

As well as your project source code, you must create a video to show us how to use your mobile web app. This is to ensure we do not miss anything important, as in playing your game we may not get to all levels and see everything you want us to see. So it is important that YOU show us EVERYTHING we need for the grade you want to achieve.

Your video must include:

  1. Your Student Name + introtoapps login name + SID (as text on the screen, so we can read it)
  2. A quick view of your licenses.txt file contents [5 seconds].
  3. Every feature of your app that you want to be marked for (so we know where to find it) [~60-120 seconds]. E.g. "I am aiming for a credit, so here are the features firstly for passing... and here are the features for credit..." This then helps us determine if you have truly achieved that grade level, and makes sure we don't miss anything. 
  4. The hardest challenges for you, and how you overcame them [in any remaining time]. This is important because we want to know that YOU learned something from this experience beyond just program code. We want to know what you learned from the whole experience.

You can create the video in any application you like. The method used does not matter at all. You are only judged on your content. Note that the file must be an MP4 file. You can create the video in any format and use free software Handbrake to convert to MP4. Possible methods to create the video:
  • Physically using your mobile phone camera pointed at your PC screen, record your app in use.
  • Using any screen capturing software you are familiar with (more advanced, but not required)
Aim for around 720 x 406 Universal pixel size (not larger), and around 20mb in size (less is better, otherwise uploading will take forever). For changing compression and video size, I use the software HandBrake
http://youtu.be/dubQagZrdqY
Also:
  1. Make sure your hand doesn't touch the bottom of the phone where the microphone is, otherwise the sound will be muffled. The alternative is to plug in hands-free headphones (the ones with a microphone), and put them on, so you're speaking out and the microphone at your chest is picking everything up.
  2. Test your video by playing it back immediately, and listening to the sound quality all the way through. If it isn't perfect, record it again. Record as many times as you need to make it perfect. If we cannot hear something, we don't know about it and we may miss it. It is your responsibility to speak clearly, articulate your speech as best as you can, and show on screen what we should be looking for. Just like in the real world, it is your job to engage the audience to play your game. Engage us to find the features in your game.
Programming Assignments Help is the best assignment help provider in the United Kingdom. Our online assignment writing help UK is especially dedicated for the students studying in all UK colleges and universities. Submit assignment to get the best quality assignment help.

Wednesday, 8 June 2016

Programming in Java Case Study

Company:

Robert is running a small company supplying Wood Flooring to offices and houses. He has hired two assistants to do the work. Each assistant can install wood flooring at an average rate of3 m2 every hour. Each assistant is paid £ 10.25 / hour. Robert charges an additional £85.00 / week for his administrative work. Design a program to calculate the overall job cost, assuming that there will be only one type of wood used in all the rooms with a price of £19.95/ m2 . The user should provide dimensions of the room and you are required to calculate following:

1. Area of the room
2. Time necessary to install the wood floor
3. Final cost of the job.

Assume Robert will always use both of his assistants for every job. Robert accepts cash payment if the final cost of the job is less than or equal to £300. If the final cost is above £300, payment by debit or credit card is accepted. Your program should prompt the user with “Payment Options”, if the final cost is over £300. If “Debit Card” is selected as the payment option, there is a charge of £0.50 per transaction. If “Credit Card” is selected as payment option, there is a charge of 2% of the final cost. If the client chooses to pay in Cash, there will not be any additional charge.[ Also Read Blood Bank System Java Programming Assignment]

Task 1 : (LO1: 1.1, 1.2, M1)  Word Limit (400-700)

(Formative Assessment in Week 3)

• Why is JAVA characterized as a High Level Language? Describe the basic characteristics of the language
focusing on:

1. Object Oriented (encapsulation, inheritance & polymorphism)
2. Distributed Language
3. Robustness
• Compare the advantages and disadvantages of the JDK development system with an IDE such as Netbeans or
JBuilder.
• Provide a critical review of Java for the following features
1. Platform Independence
2. Java for Mobile Applications
3. Embedded Hardware Programming in Java

Task 2 (LO2: 2.1, 2.2, M2) 

(Formative Assessment in Week 5)

For the given scenario: Produce a requirement specification template to address:
• Possible Inputs
• Possible Outputs
• Possible user interface

Identify all possible input/output and any necessary intermediate processing variables - constants for your program

Create a table with the:
- Variable name,
- Description if it is constant/variable and its usage/role
- Datatype information
- Produce a statement in JAVA to declare and initialize them if necessary (Write the command lines in your
word document template).
- Produce a graphical representation of how the user interface could look

• Produce a step-by-step pseudocode to describe the processing of the data.
• Draw a flow chart for the pseudocode produced.
[Read about Programming in Java]

Task 3 (LO3: 3.1,3.2,3.3, M3, D1) 

(Formative Assessment in Week 7)

• Write a Program in Java for the given scenario.
• Create separate functions to calculate Area, Time Required and Total Cost.
• Alter your program so that the user can enter the number of rooms requiring flooring.
• Create an Array to calculate and store (Area, Time required and Total Cost) for each room.
• Calculate the Final Cost by adding the total cost of all rooms.
• Calculate the total cost to pay if Credit/Debit card charges are applicable

Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience. Get a quote now.

Friday, 3 June 2016

Website Goals and Specifications Assignment

Specifications for website

Before starting work on web design part, it is advisable to outline all the technical tasks which shall be in place. This can be achieved by maintaining a checklist for all the activities which are important.

1.       Understanding of User environment:

o    Which Browser and which versions
o    Colour preference
o    Screen Resolution
o    Accessibility
o    Connection speed

2.      Content Preference

o    Languages preference
o    Page Titles
o    Updated / Reviewed dates
o    Role based access
o    Fonts or file formats preference

3.      Hosting environment:

o    Operating system
o    Script languages
o    Programming language preference
o    Security Settings

Website goals

One should have a clear vision before starting any work. It applies in web design also.
It will be very difficult to design a website if we don’t have any goals for having any website. Without having the goals defined, required information may be missed out, which may lead to inappropriate design. [Read about: ZCBC Website Designing Assignment]

Below are the list of certain questions which needs to be answered to identify the goals of a website:
  1. Why a website is required?
  2. How this website help my business to grow?
  3. What products/services we will offer on website?
  4. Who are the main audiences?
  5. Who are in competition?
  6. Any hurdles?
Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience.

Monday, 30 May 2016

Security Risks to Database System Assignment

1. Unauthorized or unintended activity or misuse by authorized database users, database administrators, or network/systems managers, or by unauthorized users or hackers (e.g. inappropriate access to sensitive data, metadata or functions within databases, or inappropriate changes to the database programs, structures or security configurations);
2. Malware infections causing incidents such as unauthorized access, leakage or disclosure of personal or proprietary data, deletion of or damage to the data or programs, interruption or denial of authorized access to the database, attacks on other systems and the unanticipated failure of database services;
3. Overloads, performance constraints and capacity issues resulting in the inability of authorized users to use databases as intended;
4. Physical damage to database servers caused by computer room fires or floods, overheating, lightning, accidental liquid spills, static discharge, electronic breakdowns/equipment failures and obsolescence;
5. Design flaws and programming bugs in databases and the associated programs and systems, creating various security vulnerabilities (e.g. unauthorized privilege escalation), data loss/corruption, performance degradation etc.;
6. Data corruption and/or loss caused by the entry of invalid data or commands, mistakes in database or system administration processes, sabotage/criminal damage etc.

Application of Data Security


In above example, transparent data encryption enables you to encrypt sensitive data, such as credit card numbers, stored in table columns. Encrypted data is transparently decrypted for a database user who has access to the data. Transparent data encryption helps protect data stored on media in the event that the storage media or data file gets stolen.
Above diagram illustrates how access control and encryption work together to provide data Security

Recovery

 The process of restoring the database to a correct state in the event of a failure
The storage of data generally includes four different types of media with an increasing degree of reliability:
• Main memory
• Magnetic disk
• Magnetic tape
• Optical disk
Recovery Technique
• Maintain a log file containing transactions records that identify the start/end of transactions and the before-and after-images of the write operation.
• Using deferred update, writes are done initially to the log only and log records are used to perform actual updates to the database.  
• If the system fails, it examines the log to determine which transactions it needs to redo, but there is no need to undo any writes.
• Using immediate updates, an update may be made to the database itself any time after a long record is written.  The log can be used to undo and redo transactions in the event of failure.

Recovery Application



The Active/Passive pattern is the choice that many companies favor. This pattern provides improvements to the RTO with a relatively small increase in cost over the redeploy pattern. In this scenario, there is again a primary and a secondary Datacenter. All of the traffic goes to the active deployment on the primary datacenter. The secondary datacenter is better prepared for disaster recovery because the database is running on both datacenters. Additionally, there is a synchronization mechanism in place between them. This standby approach can involve two variations: a database-only approach or a complete deployment in the secondary data center.

Concurrency

Its mean “Many transactions - at the same time and Databases shared!”
• So: Transactions must be isolated => need of concurrency control to ensure no interference. 
• We will look at:
– 3 classic problems on concurrent access
– Locking mechanism
– Deadlock resolution
Three classic problems 
PB:  two (more) transactions read / write on the same part of the db. Although transactions execute correctly, results may interleave in diff ways
3 classic problems
• Lost Update
• Uncommitted Dependency
• Inconsistent Analysis

Example of concurrency


Best Example of Data concurrency is Ticket booking transaction




Get best programming help to score good marks. Our team of writers and scholars is expert in writing plagiarism free content. Get affordable Homework Help at Programming Assignment Help.

Sunday, 22 May 2016

XML-based Applications Assignment Help

XML is a standard defined for writing data generating by an application such that it is both machine readable and human readable.
Before the advent of XML data was saved in binary formats which were highly format and programming language dependent. One example is Java serialization: which must be read by Java, reading & writing the data from a different language is cumbersome at best. It also poses problems when schema of the data changes its form. Binary data cannot also be easily edited without a hex editor and appears as a stream of strange looking ASCII characters in most editors.
XML overcomes these problems by defining a standard for exchanging data. The specification highlights:
1. Data must be represented using tags eg. <author> </author>
2. additional attributes may be represented as : <author name=”john”></author>
3. Every tag must have a corresponding closing tag.


XML Based applications:


Today XML is being used to store a very wide variety of data expect for where binary formats are more efficient
eg. SVG : it is a image storage format in which we use the mathematical equations and the parameters of those equations to store the drawing rather than the pixels, this allows us to zoom in the image at any level we want.
ODF, ODS, ODP: Open Documents format supported by open office are based on XML which do not allows vendor locking and any software can read them.
Web services: Popular services like Google maps, Google finance, Google docs all have XML based web service using which mash up application can be developed which utilize this XML and present it in a different format as required by the application.
Configuration files: Most complex software store their configuration and state in XML files which can later be read from and written to easily. The main advantage here is that users can also easily edit these files with a simple text editor. Read about Programming in Java.

Advantages:


1. Standards based data interchange format allows any compliant software to use the file.
2. Standard based tools can be developed which allow easy modification of XML
3. Both machine and human readable.
4. Data schema modification is very easy.

Disadvantages:


1. They are usually much less efficient in storage space than binary files.
2. They require a lot of CPU power to parse and write when the data to be serialized and de serialized is large.


Rich Interface Application tools (Ajax, JQuery, HTML5..)


Traditionally interface design was done in programming languages like Java, C++ etc. which were not really meant for user interface design and UI design was difficult in such languages.
Hence for the web they chose a markup language which was easy to write, understand and edit. Since it was designed for the purpose of page layout it was easy to understand by most people and hence the Internet grew to the size it is today.

But for a long time the pages designed using HTML were static and the internet was a large number of web pages linked to each other by links called hyperlinks. Some interactivity was possible using animated images but that was just about it. To address this problem scripting languages were introduced which would download and run on the client side and could modify the HTML elements on the fly. A further evolution brought a technology which allowed the script to fetch content from the server and dynamically change the appearance of the web page without refreshing the content. Very prominent examples which really allowed everybody to realize the potential of this new technology called ajax were: the Gmail interface and Google maps.

The next generation of evolution is HTML5. In the earlier generation Java script allows modification of the page but the language was fraught with cross browser issues. HTML5 is designed to address the cross browsers issue by inviting stake holders and then agreeing upon a common standard which all browsers will implement. HTML5 add a lot of features which will further make the Internet experience very fluid and interactive. Read about Website Designing and Testing Assignment.


Some major enhancements:


1. Provision for a standard video tag, videos can now be inserted without the need for flash, silverlight or any other third party plug in. eg. <video src=”file.ogg”/>
2. Allows for client side database stores which can allows for querying using standard SQL, a big improvement over cookies.
3. New tag enhancements, for eg to add captions to image tags in a semantic way, we can now use the figure tag : <figure><img/> <caption>some caption</caption</figure>
4. Plans for 3D graphics and sound directly into HTML code. 

Advantages:


1. Standards based: Since it an open standard made by a board comprising of major stakeholder of this technology, it ensures that there is no vendor lock in and that there is consistent implementation of the standard across all browser so that developers can confidently release their applications.
2. Portable: Since all browsers must conform to the standard, the application written for HTML5 will be portable
3. Easy : RIA technologies like JQuery are much easier to implement than traditional statically typed languages allowing for easy deployment
4. Fluid UI experience: the user get the feeling of using a desktop application since the page is never refreshed and all the data is fetched dynamically from the server.

Disadvantages:


1. Since the technology is still in the transition stages all browsers do not support the entire feature set.
2. The UI experience depends on the bandwidth : there may be a considerable delay between the user action and results to appear due to latency.
3. Require a constant Internet connection : These technology must have a Internet connection to operate, offline support is still in infancy.

Open Source software:


Open source was a phenomenon started by a group of hacker at MIT, Artificial Intelligence labs when they were forced to use and write software under restrictive licenses with Richard Stallman as their clear leader. It was he who started the movement by forming an organization called FSF(free software foundation) which started by writing a free Unix clone, which is today known as GNU/Linux. Slowly the idea of Linux spread across the globe primarily through the advent of the Internet which allows thousands of developer to collaborate together:

Open Source, today in the business sense of the word stands for software which has its source open for modification by anybody and the organization earn profit by providing services for the software

Key Ideas:
OSS grants users right by providing them with a license. Commercial closed source vendors provide a license in the form of EULA, or the end user license agreement which the user has to buy. The EULA basically states that any modification, or sharing of software after modification is illegal and the software is the sole proprietorship of the company which developed it. The license given to an end user is non transferable.
An open source license however states that:
1. The user has the freedom to use the software in any way he chooses.
2. The user has the right to modify the source code of the software and analyse it for any purpose.
3. The user has the right to distribute the software with any modifications he has made.

Many OSS licenses require that the end user must release the software again under the same OSS license so that the software can continue to be free.

Examples of Open Source Licences: GNU GPL, BSD License, Apache Public License, MIT License.

Revenue Model:   Since open source software give away their source code for free and is open for modification it definitely has to follow a different business model than selling software as intellectual property. Most companies which are in this business use the service model to generate revenue. They provide customized software solutions to enterprise and make modifications to the software for fees. They also provide technical support services, the prominent examples of this model are businesses like : Canonical , which makes Ubuntu and Redhat Inc, which makes the Redhat Enterprise server series.


Advantages:


1. OSS provides clear advantages as being cost effective, since the source is available for anybody to download there is no need to pay to any vendor for the software.
2. Availability of the source code allows easy modification of software for specific needs.
3. It creates a truly competitive market since companies can now compete on the better services rather than on the basis of monopoly.
4. No vendor lock in : e.g if you use .NET to develop your application your entire development tool chain must be from Microsoft and you cannot move to a different vendor if you do not like their serivces. This problem does not exist in open source.
5. Collective skills of thousands of programs can be used to allows rapid modification of the source code.

Disadvantages:


1. Since there is nobody who ‘owns’ the software in the business sense some times due to lack of money backing the project there may be issues like less market acceptance. For some projects it also means a loss of clear direction in which the project is going.

The technology should be evaluated on the contention that it:
1. Saves cost due to code availability
2. Allows for easy modification
3. disallows vendor locking

Programming Assignment Help provides plagiarism free assignments i.e. all our solutions are genuine and written by best technical assignment writers who have years of experience.