home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk1.iso / answers / software-eng / part1 < prev    next >
Encoding:
Internet Message Format  |  1994-09-03  |  13.6 KB

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