home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / faqs / comp / answers / software-eng / part1 < prev    next >
Encoding:
Internet Message Format  |  1997-10-06  |  16.4 KB

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!thetimes.pixel.kodak.com!news.kodak.com!news-pen-16.sprintlink.net!newsfeed.nysernet.net!news.nysernet.net!207.41.200.4!news-pen-4.sprintlink.net!206.229.87.26!news-east.sprintlink.net!news-dc-26.sprintlink.net!news-peer.sprintlink.net!news-peer-west.sprintlink.net!news.sprintlink.net!Sprint!newsfeed.direct.ca!torn!kone!news.ccs.queensu.ca!qucis.queensu.ca!dalamb
  2. From: dalamb@qucis.queensu.ca (David Alex Lamb)
  3. Newsgroups: comp.software-eng,comp.answers,news.answers
  4. Subject: Comp.software-eng FAQ (Part 1): questions and answers
  5. Supersedes: <questmsg_873623712@qucis.QueensU.CA>
  6. Followup-To: comp.software-eng
  7. Date: 5 Oct 1997 09:18:51 GMT
  8. Organization: Computing and Information Science, Queen's University at Kingston, Ontario,  K7L 3N6, Canada
  9. Lines: 355
  10. Approved: news-answers-request@MIT.Edu
  11. Distribution: world
  12. Expires: 16 Nov 1997 09:15:11 GMT
  13. Message-ID: <questmsg_876042911@qucis.QueensU.CA>
  14. References: <faqmsg_876042911@qucis.QueensU.CA>
  15. Reply-To: dalamb@qucis.queensu.ca (David Alex Lamb)
  16. NNTP-Posting-Host: requin.qucis.queensu.ca
  17. Keywords: FAQ
  18. Originator: dalamb@qucis.queensu.ca
  19. Xref: senator-bedfellow.mit.edu comp.software-eng:62150 comp.answers:28377 news.answers:113876
  20.  
  21. Last-Modified: 16 Mar 1997
  22. Archive-name: software-eng/part1
  23.  
  24. This message gives brief answers to questions that have occurred in
  25. comp.software-eng; in many cases they are also topics many readers would like
  26. NOT to see discussed again soon.  Questions are:
  27.     What's a CASE Tool?
  28.     What's a 'function point'?
  29.     What's the 'spiral model'?
  30.     What is a 'specmark'?
  31.     Where can I find a public-domain tool to compute metrics?
  32.     What metrics are there for object-oriented systems?
  33.     How do I write good C style?
  34.     What is 'Hungarian Notation'?
  35.     Are lines-of-code (LOC) a useful productivity measure?
  36.     Should software professionals be licenced/certified?
  37.     How do I get in touch with the SEI?
  38.     What is the SEI maturity model?
  39.     Where can I get information on API?
  40.     What's a 'bug'?
  41.     Where can I get copies of standards??
  42.     What is 'cleanroom'?
  43.     What is the Personal Software Process?
  44.  
  45.  
  46.  
  47. ------------------------------------------------------------------------
  48. Subject: What's a CASE Tool?
  49. Date: 27 Oct 1994
  50. Archive file: casemsg (thanks to Scott McGregor <mcgregor@netcom.com> for
  51. inspiring this question)
  52.  
  53. CASE stands for Computer Aided Software Engineering;  it can be used to mean
  54. any computer-based tool for software planning, development, and evolution.
  55. Various people regularly call the following 'CASE': Structured Analysis (SA),
  56. Structured Design (SD), Editors, Compilers, Debuggers, Edit-Compile-Debug
  57. environments, Code Generators, Documentation Generators, Configuration
  58. Management, Release Management, Project Management, Scheduling, Tracking,
  59. Requirements Tracing, Change Management (CM), Defect Tracking, Structured
  60. Discourse, Documentation editing, Collaboration tools, Access Control,
  61. Integrated Project Support Environments (IPSEs), Intertool message systems,
  62. Reverse Engineering, Metric Analyzers.
  63.  
  64.  
  65. ------------------------------------------------------------------------
  66. Subject: What's a 'function point'?
  67. Date: 13 Jul 1996
  68. Archive file: funcpoints
  69.  
  70. Function points and feature points are methods of estimating the "amount of
  71. functionality" required for a program, and are thus used to estimate project
  72. completion time.  The basic idea involves counting inputs, outputs, and other
  73. features of a description of functionality.  Bruno Peeters has collected a
  74. biblography on function points at http://www.qucis.queensu.ca/Software-
  75. Engineering/funcpoints.html.
  76.  
  77. If interested, for a fee you can join:
  78.     International Function Point Users Group
  79.     5008-28 Pine Creek Drive
  80.     Blendonview Office Park
  81.     Westerville, Ohio  43081-4899
  82.     614-895-7130
  83.     Home page (available using the World-Wide Web via URL http://205.133.101.205/ifpug/home/docs/IFPUGhome.html)
  84.  
  85.  
  86. ------------------------------------------------------------------------
  87. Subject: What's the 'spiral model'?
  88. Date: 27 Oct 1994
  89. Archive file: spiral
  90.  
  91.  (1)   Barry Boehm, "A Spiral Model of Software Development and Enhancement",
  92.        ACM SIGSOFT Software Engineering Notes, August 1986.
  93.  (2)   Barry Boehm "A Spiral Model of Software Development and Enhancement"
  94.        IEEE Computer, vol.21, #5, May 1988, pp 61-72.
  95.  
  96. Basically, the idea is incremental development, using the waterfall model for
  97. each step; it's intended to help manage risks.  Don't define in detail the
  98. entire system at first.  The developers should only define the highest
  99. priority features. Define and implement those.  With this knowledge, they
  100. should then go back to define and implement more features in smaller chunks.
  101.  
  102.  
  103. ------------------------------------------------------------------------
  104. Subject: What is a 'specmark'?
  105. Date: 27 Oct 1994
  106. Archive file: specmark
  107.  
  108. The SPECmark is the geometric mean of a series of benchmarks done by the SPEC
  109. group. There are a couple of suites, but in general SPECmark refers to the
  110. results of the first suite.  The suite includes FORTRAN and C codes, mostly
  111. well known codes but slightly hacked versions.
  112.     SPEC
  113.     c/o NCGA
  114.     2722 Merrilee Drive, Suite 200
  115.     Fairfax, VA 22031
  116.     Phone: (703) 698-9600
  117.     FAX:   (703) 560-2752
  118.  
  119.  
  120. ------------------------------------------------------------------------
  121. Subject: Where can I find a public-domain tool to compute metrics?
  122. Date: 17 Jun 1995
  123. Archive file: static.html
  124.  
  125. The archives contain a collection of metrics tools for C programs at
  126. http://www.qucis.queensu.ca/Software-Engineering/Cmetrics.html.
  127.  
  128. Volume 20 of newsgroup comp.sources.unix contained a public-domain package
  129. called "metrics", which computes McCabe and Halstead metrics.  There are many
  130. comp.sources.unix archives around the net.
  131.  
  132.  
  133. ------------------------------------------------------------------------
  134. Subject: What metrics are there for object-oriented systems?
  135. Date:  6 Sep 1995
  136.  
  137. Robin Whitty (whittyr@vax.sbu.ac.uk) of South Bank University keeps a
  138. bibliography on OO metrics at
  139. http://www.sbu.ac.uk/~csse/publications/OOMetrics.html, also available via
  140. anonymous FTP to site ftp.sbu.ac.uk as pub/Metrics/OOMetrics.asc.
  141.  
  142.  
  143. ------------------------------------------------------------------------
  144. Subject: How do I write good C style?
  145. Date: 27 Oct 1994
  146.  
  147. This is answered regularly in the comp.lang.c FAQ.  Try "Recommended C style
  148. and Coding Standards", via anonymous FTP to site archive.cis.ohio-state.edu as
  149. pub/style-guide
  150.  
  151.  
  152. ------------------------------------------------------------------------
  153. Subject: What is 'Hungarian Notation'?
  154. Date: 27 Oct 1994
  155. Archive file: hungarian
  156.  
  157. A naming convention for C code.  See Charles Simonyi and Martin Heller, "The
  158. Hungarian Revolution", BYTE, Aug. 1991 (vol. 16, no. 8).  There are other
  159. naming conventions;  see, e.g.  "A Guide to Natural Naming", Daniel Keller,
  160. ETH, Projekt-Zentrum IDA, CH-8092 Zurich, Switzerland. Published in SIGPLAN
  161. Notices, Vol. 25, No. 5, pages 95-102.
  162.  
  163.  
  164. ------------------------------------------------------------------------
  165. Subject: Are lines-of-code (LOC) a useful productivity measure?
  166. Date: 27 Oct 1994
  167. Archive file: static.html
  168.  
  169. Not unless you are very careful.  Capers Jones' book has a detailed and
  170. insightful discussion of Lines of Code, including anomalies, and shows how to
  171. use it sensibly (eg in a single job shop, with a single language, and a
  172. standard company coding style).  It is easy to cook up anomalies where LOC
  173. gives different numbers for code written in different styles, but pathological
  174. cases should get caught in code inspections.  References:
  175. -    T. Capers Jones, Programming Productivity, McGraw-Hill, New York, 1986
  176. -    Capers Jones, Applied Software Measurement: Assuring Productivity and
  177.      Quality, McGraw-Hill, Inc., 1991, 494 pages ISBN 0-07-032813-7
  178.  
  179. The appendices of the latter give rules for counting procedural source code,
  180. as well as rules for counting function points and feature points.  The
  181. following study, cited in Boehm's _S_o_f_t_w_a_r_e _E_n_g_i_n_e_e_r_i_n_g _E_c_o_n_o_m_i_c_s, claims that
  182. anomalies that seriously "fool" the LOC metric show up rarely in real code.
  183. -    R. Nelson _S_o_f_t_w_a_r_e _D_a_t_e _C_o_l_l_e_c_t_i_o_n _a_n_d _A_n_a_l_y_s_i_s _a_t _R_A_D_C, Rome Air
  184.      Development Center, Rome, NY.  1978.
  185.  
  186.  
  187. ------------------------------------------------------------------------
  188. Subject: Should software professionals be licenced/certified?
  189. Date: 27 Oct 1994
  190.  
  191. This is a very controversial and political question.  Generally, certification
  192. is something voluntary, while licencing is regulated by governments.
  193. Certification generally means some agency warrants you meet its standards;
  194. licencing generally means that to claim to practice a certain profession
  195. requires a government licence, often administered through a professional
  196. organization.  In theory both are supposed to help judge if someone is capable
  197. of doing certain jobs.
  198.  
  199. Licencing isn't currently required for computing professionals;  some people
  200. would like to see some jobs require it, as with established branches of
  201. engineering.  Others don't like government intervention, and/or believe many
  202. people who wouldn't get licenced are perfectly competent.
  203.  
  204. Computing professionals in the USA have had a certification program for years,
  205. administered by the Institute for Certification of Computer Professionals
  206. (708-299-4227), a meta-organization with representatives from ACM, IEEE-CS,
  207. ADAPSO, ICCA, IACE, AIM, DPMA, AISP, COMMON, ASM, CIPS, and AWC.  There are
  208. three certificates aimed at different broad types of practitioner, and many
  209. areas of specialization.  To keep a certificate requires at least 40 hours of
  210. continuing education each year; credit can also be obtained for self-study,
  211. teaching, publication, etc.
  212.  
  213.  
  214. ------------------------------------------------------------------------
  215. Subject: How do I get in touch with the SEI?
  216. Date:  8 Apr 1995
  217.  
  218. Try their Web server at <URL:http://www.sei.cmu.edu/>.  For general
  219. information about the SEI, contact the customer relations department of the
  220. Software Engineering Institute at:
  221.     internet:  customer-relations@sei.cmu.edu
  222.     Phone:  (412) 268-5800
  223. A subscriber service is available to U.S. mailing addresses. Subscribers
  224. receive the SEI quarterly newsletter, Bridge; invitations to SEI public
  225. events; and first notification of course offerings and new publications.  To
  226. become a subscriber, contact Customer Relations.
  227.  
  228. To order an SEI publication, contact NTIS, DTIC, or RAI directly:
  229.     National Technical Information Service (NTIS)
  230.     U.S. Department of Commerce
  231.     Springfield, VA 22161-2103
  232.     Telephone: (703) 487-4600
  233.  
  234.     Defense Technical Information Center (DTIC)
  235.     ATTN: FDRA Cameron Station
  236.     Alexandria, VA 22304-6145
  237.     Telephone: (703) 274-7633
  238.  
  239.     Research Access Inc. (RAI)
  240.     3400 Forbes Avenue
  241.     Suite 302
  242.     Pittsburgh, PA 15213
  243.     Telephone: (412) 682-6530
  244.     FAX: (412) 682-6530
  245.  
  246.  
  247. ------------------------------------------------------------------------
  248. Subject: What is the SEI maturity model?
  249. Date: 31 Jan 1992
  250. Originally-From: mcp@sei.cmu.edu (Mark Paulk)
  251. Archive file: maturity
  252.  
  253. Maturity is not an easy concept to get down to a single paragraph, but
  254. consider this.
  255.  
  256. Premise:  The quality of a software system is largely governed by the quality
  257. of the process used to develop and maintain the software.  Basics:  The first
  258. step in improving the existing situation is to get management buy-in and
  259. management action to clean up the software management processes (walk the
  260. talk, as TQMers frequently say).  Integration:  The second step is to get
  261. everyone working together as a team.  Measurement:  The third step is to
  262. establish objective ways of understanding status and predict where things are
  263. going in your process.  Continuous improvement:  Understand that this is
  264. building a foundation for continually getting better.
  265.  
  266.  
  267. ------------------------------------------------------------------------
  268. Subject: Where can I get information on API?
  269. Date:  8 Apr 1995
  270.  
  271. API stands for Application Programming Interface.  For a useful subset of
  272. standard APIs that NIST considers relevant to US Federal government needs, you
  273. can look at NIST SP 500-187 "Application Portability Profile" (available using
  274. the World-Wide Web via URL http://nemo.ncsl.nist.gov/app-ose/), or send mail
  275. to mail-server@nemo.ncsl.nist.gov with
  276.     send app-ose/app2.txt
  277. in the body, or contact Barbara Blickenstaff, 301-975-2816.  Many of the open
  278. systems APIs are being developed in the IEEE POSIX groups.  An article in the
  279. Dec. 1991 IEEE Spectrum describes these and related API standards.  IEEE
  280. standards aren't distributed electronically, but both of the documents above
  281. tell how to obtain copies.
  282.  
  283.  
  284. ------------------------------------------------------------------------
  285. Subject: What's a 'bug'?
  286. Date: 12 May 1992
  287.  
  288. You can take your pick:
  289.  (1)   Don't use "bug", use "fault" (an incorrect instruction or definition),
  290.        "failure" (an incorrect result), or "mistake" (a human action leading
  291.        to a failure).  Paraphrased from
  292.            IEEE Standard Computer Dictionary
  293.            Standard 610, ISBN 1-55937-079-3
  294.            Institute of Electrical and Electronic Engineers, Inc.
  295.            345 East 47th Street
  296.            New York, NY 10017-2394  USA
  297.            $49.50 (US$) for IEEE members
  298.  (2)   Beizer, in a footnote on page 33 of the second edition of _S_o_f_t_w_a_r_e
  299.        _T_e_s_t_i_n_g _T_e_c_h_n_i_q_u_e_s says (paraphrased):
  300.            I'm sticking with "bug" because everyone knows what  it  means,
  301.            there  are  several "standards" for other terms that are incon-
  302.            sistent with each other, the OED  says  that  the  conventional
  303.            computer  meaning  of  "bug"  is ancient, and short Anglo-Saxon
  304.            words are preferable to long Norman ones.
  305.  
  306.  
  307. ------------------------------------------------------------------------
  308. Subject: Where can I get copies of standards??
  309. Date: 28 Oct 1994
  310.  
  311. ISO, ANSI, and IEEE standards are usually sold to raise some of the funds
  312. that the various national and international standards bodies (who usually
  313. own the copyright) need to keep afloat; thus they are not normally avail-
  314. able electronically.  Also, the organizations are concerned that electron-
  315. ic copies would make it too easy for people to disseminate doctored ver-
  316. sions of the standards.
  317.  
  318. ISO standards may be purchased from:
  319. In Canada:
  320.     Standards Council of Canada / Conseil canadien des normes
  321.     1200-45 O'Connor,
  322.     Ottawa K1P 6N7
  323.     Phone: (613) 238-3222
  324.     Fax:   (613) 995-4564
  325. On CD-ROM:
  326.     Omnicom, Inc.
  327.     115 Park St. SE
  328.     Vienna, VA 22180-4607
  329.     1-800-OMNICOM
  330.     Also available through the National Technical Information Service
  331.     (NTIS), 5284 Port Royal Rd., Springfield, VA 22161, (703)
  332.     487-4650.
  333. ANSI and ANSI equivalent ISO standards are available from
  334.     ASQC Quality Press
  335.     Customer Service Department
  336.     P.O. Box 3066
  337.     Milwaukee, WI 53201-3066
  338.     Voice: (800) 248-1946
  339.     FAX:   (414) 272-1734
  340.  
  341. For ITU (formerly CCITT) standards, see the ITU gopher server, (available us-
  342. ing the World-Wide Web via URL gopher://info.itu.ch)or use their mail server:
  343. mail to itudoc@itu.ch with no subject and the following body:
  344.     START
  345.     HELP
  346.     END
  347. There were once some CCITT standards on-line at the University of Colorado,
  348. but the arrangement to make them available via the Internet was terminated at
  349. the end of 1991.
  350.  
  351.  
  352. ------------------------------------------------------------------------
  353. Subject: What is 'cleanroom'?
  354. Date: 21 Oct 1995
  355.  
  356. 'Cleanroom' is a software process based on mathematical verification of compo-
  357. nents and statistical system-level testing.  Cleanroom Software Engineering,
  358. Inc. (see Web page at http://www.csn.net/~deckm/) keeps a more extensive defi-
  359. nition at http://www.csn.net/~deckm/whatiscr.html, including a bibliography.
  360.  
  361.  
  362. ------------------------------------------------------------------------
  363. Subject: What is the Personal Software Process?
  364. Date:  3 Mar 1997
  365.  
  366. A discipline for monitoring, testing, and improving your own Software Engi-
  367. neering work.  It's described the book *A Discipline for Software Engineering*
  368. by Watts S. Humphrey, Addison Wesley, 1995.  ISBN 0-201-54610-8.  There is al-
  369. so a more introductory version (intended for early programming courses): Watts
  370. S. Humphrey, Introduction to the Personal Software Process (SEI Series in
  371. Software Engineering) Reading, Mass: Addison-Wesley,  1997 ISBN 0-201-54809-7.
  372. There is a mailing list; to be added, send e-mailto psp-users-
  373. request@tqc.com.au.
  374. -- 
  375. http://www.qucis.queensu.ca/home/dalamb/
  376.