This paper presents lessons learned performance engineering a CPU throughput utilization estimate in a Raytheon Systems Company program developing a digital signal processing application concurrently with a next generation DSP-based array processor. Algorithmic performance and an efficient implementation were driving criteria for the program. As the processor was being developed concurrently with the software application a significant amount of the system and software development would be completed prior to the availability of physical hardware. This led to incorporation of performance engineering techniques into the development life-cycle. This article relates the mechanisms used to performance engineer the system and experiences with the approach.
Robert Oshana is a Project Lead at ObjectSpace, Inc. ObjectSpace is a business-to-business integration (B2Bi) company whose products enable organizations to streamline their collaboration, communication and integration with trading partners over the Internet. He is responsible for leading software teams throughout all stages of business-to-business web-based development projects. Robert has masters degrees in electrical engineering, computer science, and business administration. He is also an adjunct professor at Southern Methodist University where he teaches several software engineering and E-Commerce courses in the Graduate Software Engineering program. He has over 30 publications in the areas of process improvement, software development methodology, software testing, and real-time systems.