Flow or Logic Diagram
Flow diagrams define the end-user’s paths through the site and site functionality. A flow diagram for an e-commerce site would detail the sequence of pages necessary to gather the information required by the e-commerce application in order to complete an order.
Logic diagrams describe the order that logic decisions are made during the transmission, gathering, or testing of data. So for example, upon submission of a form, information may be reviewed by the system for field completeness before being reviewed for algorithmic accuracy; in other words, the system may verify that required fields have in fact been completed before verifying that the format of the email address is correct or the credit card number is an algorithmically valid number.
System Architecture Diagram
A system architecture diagram illustrates the way the system hardware and software must be configured, and the way the database tables should be defined and laid out.
Prototypes and Mock-ups
A prototype is a model of the system delivered in the medium of the system. For example, a web site prototype would be delivered as a web site, using the standard web protocols, so that it could be interacted with in the same medium as the project’s product. Prototypes don’t have to be fully functioning, they merely have to be illustrative of what the product should look and feel like. In contrast, a mock-up is a representation in a different medium. A web site mock-up might be a paper representation of what the pages should look like.
Prototypes and mock-ups are important tools for defining the visual design, but they can be problematic from a quality assurance and testing point of view because they are a representation of a designer’s idea of what the product should look and feel like. The issue is not that the designer’s may design incorrectly, but that the prototype or mock-up will become the de facto design by virtue of being a representation. The danger is that the design will become final before it has been approved; this is known as “premature concretization” or “premature crispness of representation”, where a sample becomes the final design without a formal decision. If you have every tried to get page element removed from a design, you have an idea what this problem is like. The value of prototypes is that they provide a visual dimension to the written requirements and specifications; they are both a proof of concept and the designers’ sketchpad wrapped up in one package.
Technical Specifications
Technical specifications are typically written the by developers and coders, and describe how they will implement the project. The developers work from the functional specifications, and translate the functions into their actual coding practices and methodologies.

