Web Design

Agile Web Design

Web design has its specifics in agile process and assumes more interaction with Product Owner than backend design and implementation. User interface is crucial for providing satisfying user experience. Design and layout usually difficult to test automatically and should be reviewed by stakeholder (or its representative) preferably on early stages of each feature development tasks. Possible solution for gathering first feedbacks could be quick prototyping with such frameworks as Grails.

Automated tests for TDD in web development can be done with such frameworks as Selenium. These tests will simulate the interaction with end user and verify communication with underling application logic layer. They would be included in separate build package and triggered for run by Hudson scheduler. It is a good practice to packege business logic tests and GUI tests in different test bundles.

Developing native applications such as iOS apps requires additional skills and practices for features implementation. As a good practice, it is recommended to have feature teams in a SCRUM project. These teams should have all skills necessary for implementing the features. Splitting on layering basis is usually discouraged. Feature teams should coordinate their work for including additional test packages for native applications. The Instruments - a performance, analysis, and testing tool for dynamically tracing and profiling OS X and iOS code - can be proposed for iOS.