27.6.12

Internet Style, Development And Testing

By Barrett Epperheimer


Many organizations are interested in developing internet applications for their business but are unaware of the various actions which are needed to create a compelling internet application. In this write-up I will attempt to put together the several pieces of the puzzle. Application development involves various distinct efforts that need to have to come together to create a compelling end item. A compelling end item is the combination of design, development architecture, development implementation, automated regression and functional testing and performance and load testing.

Style: Individuals typically confuse design with development. Moreover even within style, user interface design is frequently confused with graphics style. Web user interface design entails the style of the flow of the internet site along with the layout of the distinct internet pages within the internet site. The web user interface designer concentrates on the usability of the application. The user interface designer will ordinarily develop "wireframes" utilizing tools like Adobe Photoshop to convey the design. These are frequently initially developed as prototypes and usability testing is carried with user groups out to ensure that the internet application will be intuitive and quick to use. Graphics style on the other hand relates to the aesthetics of the page. The graphics designer is responsible for the aesthetic layout of the pages as well as the creation of the many graphical objects inside the pages for example images and flash objects. The graphics Designer will ordinarily use a combination of tools including Adobe Photoshop, Adobe Illustrator and Adobe Captivate to develop the actual graphics objects. A designer will want to function closely with other groups to create sure the design method does not compromise the performance of the application by producing sure that the graphics objects are modest therefore ensuring that the many web performance metrics are unaffected.

Development: This involves converting the style into an actual application. The development generally involves an architectural phase where the underlying modules that make up the application are scoped out. If persistent information storage is required, a database schema should be developed to accommodate the data storage requirements. The selection of the operating method (e.g. Windows, Linux or Solaris) where the web application will run, the internet server (e.g. Microsoft IIS, Apache or Tomcat) which will run the web application plus the back end database (e.g. Microsoft SQL Server, Oracle, MySQL or PostgreSQL) which stores the data will need to have to be made. Numerous development frameworks are accessible to develop web applications. The most widespread ones are ASP and ASP.NET from Microsoft, Java Servlets and JSP from Sun, PHP and Perl that are open source. The option of the application framework is typically dictated by the strengths of the members of the development team. The architectural phase is followed by the implementation phase. This is typically the longest part of the project and throughout this phase the actual code is written using the design specifications and graphics objects developed by the style team. The programming will generally be done making use of a combination of the application frameworks mentioned earlier together with HTML, JavaScript and CSS style sheets.

Good quality Assurance and Testing: A surprising number of persons are of the view that quality assurance and testing is desirable but is not basically necessary. Sadly this view has its roots in total ignorance of the method that is needed to build a superb end product. Regardless of how pretty or slick we make the application, if it does not function as expected, users will reject it. Excellent assurance and testing involve two distinct kinds of tasks. Functional and regression testing is utilized to verify that the developed application is doing what it can be supposed to do. This is achieved by test automation utilizing a functional testing tool. Load and Performance testing is utilized to make sure that the application performs as intended when it can be subjected to the typical load of a production environment. Load testing is practically speaking impossible to perform with out utilizing an automated load testing tool considering that it involves the simulation of a huge number of concurrent virtual users. This effect can't definitely be achieved manually and requirements the assistance of an application that's developed to subject the application to a specified load and then measure its performance when it's subjected to that load. High quality Assurance teams will want to track the bugs or defects in the application utilizing bug tracking tools. Such tools will permit defects to be tracked by all members of the team.

The three groups mentioned above tend to be specialized for their skill set. As an example, folks often make the mistake of making use of developers as good quality assurance testers. This is not a wise technique simply because most developers who are excellent at writing software are fairly poor at finding bugs or defects in their own software.

Writing fantastic and compelling web applications needs an understanding of all phases of the procedure, style, development and excellent assurance. Skipping phases or taking shortcuts will result in low top quality software that can typically price a lot more inside the long run.




About the Author:



No comments:

Post a Comment