The client is available all the time to consult with

This preview shows page 16 - 20 out of 27 pages.

The client is available all the time to consult with developers and monitor the development of the software. Potential drawbacks The representative would be more valuable working at the client’s company. Why it works in XP Clients can contribute, e.g. by writing user stories and contributing/commenting on tests. Rapid feedback for programmer questions is valuable. XP focuses on efficiency, which includes efficient of communication with the client. Project Discussions about the project during lectures. Contact the instructor any time for clarifications. On-site Customer Joey Paquet, 2006- 2018 16 SOEN 6441 - Advanced Programming Practices
Concordia Department of Computer Science and Software Description All code written must follow defined conventions for layout, variable names, file structure, documentation, etc. The team agrees to and adopts a group of coding conventions, then ensures that they are followed by everyone. Potential drawbacks Programmers can be individualists and refuse to be told how to write their code. Can be overdone and thus be wasteful of time. Why it works in XP Coding standards lead to more understandable code, which is required for pair programming , continuous integration , testing , and productivity in general. Refactoring can be used to enforce conformance to coding standards between builds. Project Use a predefined set of coding conventions. Keep focused on a simple, reduced set of conventions. Use a documentation generation software (e.g. Javadoc). Coding Standards Joey Paquet, 2006- 2018 17 SOEN 6441 - Advanced Programming Practices
Concordia Department of Computer Science and Software Values of Extreme Programming Joey Paquet, 2006- 2018 18 SOEN 6441 - Advanced Programming Practices
Concordia Department of Computer Science and Software Building software systems requires, for example: communicating system requirements to the developers of the system communicating the software interfaces (APIs) to fellow developers. In formal software development methodologies, this task is accomplished through precise and standard documentation. Extreme programming techniques can be viewed as methods for efficiently building and disseminating institutional knowledge among members of a development team without relying on heavy documentation. The goal is to give all developers a shared view of the system which matches the view held by the users of the system. The developers and users should come to understand and use each other’s terms and language. To this end, extreme programming favors simple design , common metaphors , collaboration of users and programmers , frequent verbal communication , and feedback . During coding, automated code documentation tools (e.g. Doxygen, Javadoc) and coding standards can be used to facilitate communication between developers.

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture