Airshark: Detecting Non-WiFi RF Devices using Commodity WiFi Hardware [PDF version] The paper presents a series of techniques which goal is to detect the presence of RF signal from different devices such as bluetooth, Zigbee, etc. They main contributions is the use of commodity WiFi adapters which allows anyone to use the solution proposed. The [...]
Software testing belongs to a wider topic, Verification and Validation, where testing procedures try to achieve these goals. Verification: Check whether we are building the product right Validation: Whether we are building the right product Some authors propose several strategies to improve software testing results: Quantify Requirements long before the testing begins: So testers can [...]
The book is written in a pretty informal way, the author seems to talk to his son or someone really close, which I don’t really mind but, from my point of view, adds extra literature not necessary at all to explain the PSP. The author focuses in two aspects along the book, measuring / planning and defects. [...]
These guidelines are extracted and transformed from the Pressman’s “Software Engineering” book: A design must present an architecture built using known pattern designs, components with the right characteristics and that can be implemented in an incremental way. Must be modular, divided in subsystems Must lead to interfaces which reduce the complexity when connecting components Must be generated [...]
To balance the quality of a product and the time spent looking for failures, we need some measurement to estimate how well we are doing. COQ takes into account the following costs: Failure costs: All costs of fixing a defect e.g. Patching a deployed product, using the debugger, reviewing code, etc Appraisal costs: Work done [...]
Adaptability: The system satisfies user’s needs Maintainability: Easiness to change after the systems is running Usability: Small learning curve for end users. Reliability: Ability to run without errors in a period of time. MTBF (Mean Time Between Failures) & Availability (likelihood a system is working in a given time) Low density of bugs Efficiency: Complete [...]
Cohesion in Methods: Do just one thing or a few but closely related Short Methods: Keep the right size so it can be easily understood and modifiable Method Coherency: Similar to others, similar size, error conditions, etc Split high-level from low-level methods: high-level are those which control, check status and low-level those which get the [...]
These are the steps the Requirements Engineering is composed of: Gathering: Engineer asks stake holders to retrieve information. Not easy due to unnecessary information, misunderstood information and volatility Elaboration: First UML diagrams, some iterations to polish the model Negotiation: Discriminate between conflicting requirements and delimit user’s needs Specification: Documentation, may vary in details and contents [...]
Some definitions taken from “Introduction to PSP” by Watts S. Humphrey which may be worth having them handy Product: Something produced for a company or client Project: Used to produce a Product Task: Element of work Process: Way to do projects Phase: Steps proposed in a process (e.g. Planning, development, testing). Each phase is composed of tasks
Product Plan: Time you spend on each task to complete an activity Period Plan: How you distribute the previous time over a interval of time Definitions from “Introduction to PSP” by Watts S. Humphrey