Forum for Academic Software Engineering Volume 4, Number 10, Thu Apr 28 10:25:39 CDT 1994 Topics: RFI on software testing Book Review: Development of Distributed Software: Concepts and Tools Book announcement: Capacity Planning and Performance Modeling Math bridge course TCS aims to reach benchmark processes level 4 and 5 by SEI CMM scale A------------------------------------------------------- From: Ron Danielson Subject: RFI on software testing Santa Clara University is a medium sized (8000 head count) university in Silicon Valley. A couple faculty members are developing an interest in the area of software testing. Our objectives are (1) to develop a set of courses on software testing in our graduate curriculum, and (2) to establish a software testing lab devoted to practical use experience with, research on, and development of software testing tools. We're looking for advice/previous experience from other institutions that have included software testing as an emphasis area in their curriculum. If anyone has comments, please mail either Dan Lewis (dlewis@mothergoose.scu.edu) or Ron Danielson (rdanielson@scuacc.scu.edu) A------------------------------------------------------- From: shengru@cs.uno.edu (Shengru Tu) Subject: Book Review: Development of Distributed Software: Concepts and Tools Book Review Development of Distributed Software: Concepts and Tools By Sol M. Shatz, Published by Macmillian Publishing Company, N.Y., NY, 1993. reviewed by Shengru Tu Computer Science Dept, University of New Orleans, LA 70148 Although much of the computing world is moving rapidly toward parallel and distributed processing, the concepts and techniques in distributed-software engineering has not yet been widely explored in classrooms. This book has successfully satisfied the basic needs of a graduate-level course in this field. As a software engineering book focusing on issues relevant to distributed computing systems, it covers requirements, design, implementation, and testing. Such a coverage is unique; most other books on distributed computing focus only on concurrent programming. The author based this book on an IEEE Computer Press's tutorial book, "Distributed-Software Engineering", edited by himself in 1989. Seven chapters make up the book. Chapter 1 provides an overview of software engineering. Chapter 2 defines some key concepts such as concurrent processes, communication mechanisms, nondeterminism and event ordering. Chapter 3 discusses models for requirement specification of distributed software systems. Two models, Petri nets and temporal logic, are discussed in detail. In Chapter 4, two design activities for distributed software, task partitioning and task allocation, are discussed. Various allocation models and solution method considering different factors are well explained and illustrated by examples. In Chapter 5, distributed programming concepts and languages are introduced. Important languages such as CSP, Ada, Concurrent C, SR and Linda are featured. The aspects of CSP and Ada that relate to concurrency and communication are described in detail by examples. Chapter 6 examines three static analysis methods of concurrent software: one based on Petri net models, one based on an event-string model called constrained expressions, and one based on temporal logic. In Chapter 7, the difficulty caused by nonreproducible behavior of distributed software in dynamic testing and debugging is explained. Then three solution methods, event recording, execution replay, and event monitoring, are clearly summarized. This is a book for practitioners. Going through the book, the reader can easily grasp the key ideas, since every method is illustrated by a well-selected example. At the same time, the reader is led to a depth at which the understanding of the issues will be able to support the reader to apply the models and methods to real systems. The exercises following each chapter are definitely helpful. However, for rigorous theoretical study, further reading of referenced papers is necessary. Many software tools discussed in this book are available in public domains. So students may have hands-on experience. The context of this book is terse. It is an invaluable and up-to-date source of information for computer software professionals who need to understand distributed computing. A------------------------------------------------------- From: marco@edserve.cs.shinshu-u.ac.jp (Marco Amaral Henriques) Subject: Book announcement: Capacity Planning and Performance Modeling Title: "Capacity Planning and Performance Modeling: From Mainframes to Client-Server Systems" Authors: Daniel Menasce, George Mason University Virgilio Almeida, Federal University of Minas Gerais Larry Dowdy, Vanderbilt University Specifics: Prentice-Hall, March 1994, ISBN: 0-13-035494-5, 432 pages, $44 Table of Contents: Foreword by Peter J. Denning Preface Chapter 1. The Capacity Planning Problem Chapter 2. A Capacity Planning Methodology Chapter 3. Performance Models Chapter 4. Intuitive Solutions for a Single Processor Computer System Performance Model Chapter 5. Efficient Solutions for Computer System Models Chapter 6. Multiple Class Models Chapter 7. Performance of Client-Server Architectures Chapter 8. Models of Practical Computer Systems Chapter 9. Obtaining Input Parameters Chapter 10. Model Calibration and Validation Chapter 11. Performance of New Applications Chapter 12. Concluding Remarks Appendix A. Glossary of Terms Appendix B. Glossary of Notation Appendix C. Formulae Appendix D. Quick Manual for QSolver/1 Usage: 1) As a text for a first course in performance evaluation either at the undergraduate level or at the beginning graduate level. The book has a large number of exercises of diverse complexity. 2) As a self-study reference for professionals working in the area of capacity planning, performance analysis, or system management. The concepts are illustrated by means of many examples taken from modern computer systems such as client-server systems. Unique Features: 1) Example Based. Each chapter begins with a motivating problem. The solution to each problem is "discovered" by reasoning from first principles and intuition. Only then is the theory necessary to generalize the solution presented. 2) Software Tools. Provided with the book is a diskette that contains the Pascal source code for programs to solve multiple class open and closed queueing network models with load dependent servers. In addition, an educational version of a PC based capacity planning software package, QSolver/1, is provided. Key Words: capacity planning, performance modeling, service levels, service demands, performance metrics, data collection techniques, workload characterization, workload forecasting, queueing network models, passive resources, open/closed/mixed systems, single/multiple class models, class aggregation, multiple resource possession, client-server architectures, Markov analysis, Little's Result, birth-death systems, stochastic/operational analysis, convolution, mean value analysis, decomposition/aggregation, bounding techniques, approximations, mixed networks, load dependent servers, paging models, memory queuing, priority scheduling, I/O models, model calibration, model validation, software performance engineering, performance prediction, system sizing/tuning, fun. A------------------------------------------------------- From: Stan Warford Subject: Math bridge course [ED: We haven't discussed much the role of theory and formal methods in educating software engineers. I picked this up from the formal methods mailing list. Stan does not address software engineering directly, but it's an interesting twist on the topic (using CS texts to teach math majors). I hope that it triggers some submissions to FASE.] Formal Methods Bridge Course ---------------------------- We have had an interesting development at Pepperdine concerning the mathematics curriculum. Our Calculus sequence has embraced the "Harvard project", which employs graphing calculators to teach teach concepts, develop intuition, and encourage exploration. After a year of experience, the math faculty are pleased with the results because students know how to apply calculus to solve problems in nonmathematical domains. However, with this approach students do not learn concepts of mathematical proofs that are so important in later math courses. The math department therefore wanted to design a "bridge course" to serve as an introduction to mathematical proofs. About 90% of the proposed course content matched our recently revised Discrete Structures course based on Gries' new book. After some debate and resistance, we finally agreed to have the Discrete Structures course serve as the bridge course for the math majors. Although the content of the course is exactly what the math people want, the formal methods style is really a hard sell. It is so different from traditional mathematics notation that the mathematicians were extremely reluctant to endorse it. It finally boiled down to the fact that we could not afford to offer two courses with small enrollment that had so much overlap in content. We are going to try it on the math majors now for a few years to see if it fulfills the goals of the mathematicians in giving their majors a facility in proof techniques. I am optimistic that it will and hope that as the mathematicians become more familiar with the style they will become advocates as well. Stan Warford Pepperdine University warford@pepperdine.edu A------------------------------------------------------- From: jmunson@dcs119.dcsnod.uwf.edu Subject: TCS aims to reach benchmark processes level 4 and 5 by SEI CMM scale Keith, Attached there is an interesting email message that I recently received from the AMI mailing list. I was unaware of this development. I thought it might be of interest to others in the software engineering community. __________________________________________________________________________ | | | John C. Munson | Voice: 904.474.2989 | | Department of Computer Science | Fax: 904.474.3129 | | University of West Florida | email: jmunson@ai.uwf.edu | | Pensacola, Fl 32514 | ><====(|) | |__________________________________________________________________________| ----- Begin Included Message ----- >From se_debou@aaf.alcatel.at Fri Apr 15 08:35:21 1994 Return-Path: Received: from rcsun1.aaf.alcatel.at by dcs119.dcsnod.uwf.edu (4.1/SMI-4.0) id AA18048; Fri, 15 Apr 94 08:34:43 CDT Received: from rcsw30 by rcsun1.aaf.alcatel.at (4.1/SMI-4.1/RC-%I%/main) id AA00383; Fri, 15 Apr 94 14:47:27 +0200 Date: Fri, 15 Apr 94 14:47:27 +0200 From: se_debou@aaf.alcatel.at (Christophe Debou) To: ami@aaf.alcatel.at Subject: TCS aims to reach benchmark processes level 4 and 5 by SEI CMM scale Content-Length: 3414 TO AMI MAILING LIST FR GERARD CHABERT (TEXAS INSTRUMENTS EUROPE) ger@msg.ti.com RE AMI. Resend from our internal TI mail. I think following on India aggressiveness to improve software process is of interest. regards gerard chabert -MSG M#= 2268363 FR=IPP TO=GER SENT=03/21/94 10:02 PM R#=121 ST=C DIV=0048 CC=00110 BY=IPP AT=03/21/94 09:59 PM To S/w Engg Int Grp @ TII *SEIG TII QST *QSTI TI Wide S/w Engg Leaders *SEPL DAD Process QST *PRQS >From Indradeb Pal IPP Subj -- TCS aims to reach benchmark processes level 4 and 5 by SEI CMM scale -- TCS receives ISO9001 certification - COMPETITIVE NEWS -- Update on Software Quality Thrust in the Indian software companies Today in the Times of India there is an advt. by TCS where the following message stands out: 1 - TCS (Tata Consultancy Services) receives the ISO9001 certification, 2 - Now they are aiming for achieving benchmark process level 4 and 5 by the SEI CMM scale, 3 - They are also evaluating themselves against the Malcolm Baldrige Award criteria internally. TCS (Tata Consultancy Services) is the largest software company in India with clients almost all over the world but especially in the Europe and the US. Their client base includes IBM, Tandem, AT & T, Bell Northern Research, Midland Banks, etc. THE INDIAN SCENE: Earlier this year another Indian software company based at Bangalore by the name Infosys Technoligies Ltd. obtained ISO9001 certification. This company has now set their targets for making further aggressive improvements so that they achieve higher SEI levels. This they consider as the best means to improve their competitiveness. It is reported that this company is getting one of their employee trained at the SEI assessment process at SEI CMU. By now it is well known that the Motorola (India) Electronics Ltd. based at Bangalore and a 100 % subsidiary of Motorola Inc. has achieved SEI level 5 capability certification following an assessment based on SEI assessment process. CONCLUSION: The Indian software industry scene has completely transformed during the last five years. What is more interesting to observe is that the pace of change is very rapid. Software Quality Thrust in the Indian software companies is not just limited to the few companies mentioned above. Many other Indian software companies like: - Tata-Unisys Ltd., - Citicorp Overseas Software India Ltd., - C-DAC (Centre for Development of Computing - one Indian company which has developed the parallel computer PARAM which is in the range of Supercomputing domain), - TISL (Tata Information Systems Ltd. - a Tata and IBM company), - Digital Equipment India Limited (DEIL), - NIIT (National Institute of Information Technology), - CMC Ltd., - Wipro Ltd. (Wipro Systems Ltd. and Wipro Information Technology Ltd.) have very active Software Quality Thrusts. This commitment to improving quality is demonstrated by the large number of Software Professionals like project managers and people in the Quality Assurance role attending local to Bangalore networking meetings via the network of SIG-SQA (Special Interest Group - Software Quality Assurance) Bangalore and many other forums. Regards, Indradeb - TI India Total Quality Manager ----- End Included Message ----- E------------------------------------------------------------------- FASE Volume 4 Number 10 Send newsletter articles to fase-submit@d.umn.edu or fase@d.umn.edu Send requests to add, delete, or modify a subscription to fase-request@d.umn.edu Send problem reports, returned mail, or other correspondence about this newsletter to fase-owner@d.umn.edu or kpierce@d.umn.edu You can retrieve back issues by anonymous FTP from from ricis.cl.uh.edu. You can access them through WWW at URL http://ricis.cl.uh.edu/FASE/ Keith Pierce, Editor Laurie Werth, Advisory Committee Department of Computer Science Dept. of Computer Science University of Minnesota, Duluth Taylor Hall 2.124 Duluth, MN 55812-2496 University of Texas at Austin Telephone: (218) 726-7194 Austin, Texas 78712 Fax: (218) 726-6360 Telephone: (512) 471-9535 Email: kpierce@d.umn.edu Fax: (512)471-8885 Email: lwerth@cs.utexas.edu