GoConqr has a new look! Let us know what you think.

Flashcards

Software Engineering Test 2

katiemad English 104 cards

Cards in this deck (104)

  1. 1What are the two extreme approaches to team organizationDemocratic Teams and Chief Programmer Teams?
  2. 2What is Brooks Law?Adding Additional Programming personnel to a team when a product is late has the effect of making the product even later
  3. 3What is the basic underlying concept of the democratic team approach?egoless programming
  4. 4What is the democratic team approach?-programmers highly attached to code.
    -see modules as an extension of themselves.
    - do not try to find all the errors
    - there is a proposed solution.
  5. 5what are the difficulties with the democratic team approach?management may have difficulties due to that teams are hard to introduce in an undemocratic environment.
  6. 6what are the strengths of a democratic team approachenormously productive
    work best when problem is difficult
    they function well in a research enviorment
  7. 7what is the classical chief programmer team?six programmers, only 5 lines of communication
  8. 8what are the two key aspects of the chief programmer teamspecialization and hierarchy
  9. 9who is a successful manager and a highly skilled programmerchief programmer
  10. 10who does the architectural designchief programmer
  11. 11who allocates the coding amongst team memberschief programmer
  12. 12who writes the critical or complex sections of the codechief programmer
  13. 13who handles all the critical interface issues?chief programmer
  14. 14who reviews the work of other team memberschief programmer
  15. 15who is personally responsible for every line of codechief programmer
  16. 16Who is necessary only because the chief programmer is human?back up programmer
  17. 17who must be in every way as competent as the chief programmer and must know as much about the projectback-up programmer
  18. 18who does the black box test case planning and other tasks that are independent of the design processback up programmer
  19. 19who is a highly skilled well paid central member of the chief programmer teamprogramming secretary
  20. 20who is responsible for maintain the program production library(documentation)programming secretary
  21. 21what must be included in the documentation done by the programming secretarysource code listings, JCL, and test data
  22. 22When programmers hand their code to the programming secretary, what are they responsible forconversion to machine-readable form
    compilation,linking,loading, execution, running test cases.
  23. 23what do programmers donothing but program
  24. 24when was the chef programmer team concept used?1971
  25. 25who first used the chief team programmer conceptIBM
  26. 26what was the first project the chief programmer team concept was used on?New York Times Clipping Project
  27. 27Why was the new york times project such a success?-prestige project for ibm
    - extreme strong technical backup
    - first real trial for PL/I
    -strength of team programming approach
    F Terry Baker
  28. 28Who was the F Terry Baker-Chief programmer for NYT project
    -skills and enthusiasm carried the project.
  29. 29What are the impracticalities of THE CPT approachmust be highly skilled programmer and successful manager
    -shortage of highly skilled managers
    -people unlikely to possess both qualities
  30. 30What are the success of the modified chief programmer teamsmany successes
  31. 31what are the weaknesses to the modified chief programmer teamsno success comparable to the new york times project
  32. 32What are the strengths of the modern hierarchical programming teamsTeam Manager/Team Leader structure obviates need for chief programmer. Scales up. Supports decentralization when needed.
  33. 33what are the weakness of modern hierarchical programming teamsproblems can arise unless ares of responsibility of the team manager and the team leader are clearly delineated.
  34. 34what are the strengths of the synchronize and stability teamencourages creativity
    ensures that a huge number of developers can work towards a common goal
  35. 35what are the weaknesses of the synchronize and stability teamsno evidence so far that this method can be used outside of microsoft.
  36. 36what are the strengths of agile process teamsprogrammers do not test their own code.
    Knowledge is not lost if one programmer leaves.
    Less-experienced programmers can learn from others.
    Group ownership of code.
  37. 37what are the weaknesses of agile process teamsstill too little evidence regarding efficiency
  38. 38What are the strengths of open-source teamsa few projects are extremely successful
  39. 39what are the weaknesses of open-source teamsnarrowly applicable
    must be lead by suberb motivator
    requires top calibar participants
  40. 40why does an open source project succeedThe nature of the target product,
    The personality of the instigator, and
    The talents of the members of the core group
  41. 41What do software professionals join open source projectspromotion
    to get a better job elsewhere
  42. 42Why do individuals volunteer for open source projectsenjoyment of accomplishing a worthwhile task
    Learning experience
  43. 43Who are open source projects usually staffed byteams unpaid volunteers
  44. 44How do open-source teams communicatecommunicate asynchronously (via e-mail)
  45. 45What are the problems of object orientation software developmentcorportations are becoming more information based
    information is critical to all business decisions
    information is increasing faster than the capacity to process it
  46. 46More problems with object oriented software developmentSoftware project costs are going up and hardware costs are going down
    Software development time is getting longer and maintenance costs are getting higher
    Software errors are getting more frequent
    Software projects were characterized by re-solution, re-starts, cost overruns, time overruns, and content deficiencies
  47. 47What does a customer want in a solutionMeets functional requirements
    Adapts to the rapidly changing business environment
    Fits the run time (time/space) constraints
  48. 48What does the customer want in a software productMaintainable
    Developed within budgeted resources
    Designed with appropriate longevity
  49. 49What are the problems with the software that the customer is gettingThat Costs More To Maintain Than Build
    That Is Of Poor Quality
    That Costs More Than Anticipated
    That Is Delivered Later Than Desired
    With Less Functionality Than Requested
  50. 50What is object orientationObject combines data and behavior (functions)
    Makes certain promises:
    Introduce fewer errors in the analysis and design phases (the earlier in the software development process that errors are identified, the greater the cost savings)
    Reduce long-term maintenance costs
    Reduce delivery times and costs
  51. 51What is an individual artistic programA program was written by a single individual utilizing
    individual creativity
    infamous “goto”
    ‘spaghetti’ code
    assembly languages, FORTRAN, BASIC
  52. 52What is structured programmingPrograms were structured according to three basic control structures
    sequential control
    conditionals
    repetitions
    ALGOL, Pascal, PL/1, C
  53. 53What is modular programmingPrograms were constructed using modules
    Each module has public and private parts
    Public parts are visible to everyone
    Private parts are visible only within the module
    Either part can define variables, procedures, functions, and data types
    Ada
  54. 54what is imperative programmingPrograms are partitioned into subroutines
    Information is exchanged between partitions by passing data into and out of them
    High degree of coupling (inter-dependence of codes and/or data among subroutines/modules)
    Poor cohesion (how code and data fit together)
    ALGOL, Pascal, C
  55. 55what is object oriented programmingUtilizes the class/object abstraction
    Class as a blueprint for manufacturing objects
    Bundles data and procedure together in the form of an object (high cohesion)
    Low coupling
    Object communicate by passing messages
    SIMULA, Smalltalk, C++
  56. 56What are the 8 Basic Principles of Object OrientationEncapsulation
    Information Hiding
    Message Passing
    Late Binding
    Delegation
    Class/Object
    Inheritance and Polymorphism
    Relationships
  57. 57What is encapsulationThe object contains both the data and the methods that will manipulate or change that data.
  58. 58what is information hidingThe object that contains the attributes defines what services are available to the other objects. In fact, other objects have neither access nor knowledge of the data or how a service is provided
  59. 59What is message passingAn object may communication with another object only via a message passing mechanism
    Ability to overload names – the behavior depends on the class of the object that receives the message
    Leading to more readable and more understandable code
  60. 60What is late bindingSupport for the ability to determine the specific receiver and its corresponding method to be executed for a message at run time
    Usually the specific receiver of any given message is not known until run time, so the determination of which method to invoke cannot be made until then
  61. 61What is delegationWork is passed, via message passing, from one object (client) to another object (server) because, from the client’s perspective, the agent has the services that the client needs. Work is continuously passed until it reaches the object that has both the data and the method to perform the work
    The perfect bureaucratic principle
  62. 62What is a class/objectAll objects are instances of a class
    Instances can be created or destroyed at run time
    Characteristics
    attributes, data
    Static model
    relationships
    Dynamic behavior
    Services/operations/methods
    Features (attributes + operations)
    Abstract class – no instances
  63. 63What are the 4 major organization perspectivesData/Entity View (E-R diagram)
    Function View (structured techniques)
    Behavioral View (state transition diagram)
    Control View (rule-based system)
  64. 64What is inheritanceClasses are arranged in a hierarchical inheritance structure representing a generalization/specialization (superclass/subclass, is-a, is-a-kind-of, hierarchical) relationship
  65. 65what is polymorphismallows a specialization to tailor its behavior to differ from the behavior specified for its generalization
  66. 66what are relationshipsCollaborations between objects to provide a service to a client are captured by an association relationship, which is technically called a link (an instance of association).
  67. 67what are types of relationshipsGeneralization/specialization
    Association (between classes, peer-to-peer)
    Aggregation (whole-parts, part-of) – transitivity and antisymmetricity properties
    Composition (strong type of aggregation)
  68. 68What does UML Stand forUnified Modeling Language
  69. 69What is UMLThe standard modeling language for software and systems developments
  70. 70What is a modelan abstraction of the real thing, a simplification of the real system to manage complexity
  71. 71what is a modeling languageA modeling language can be anything that contains a notation (a way of expressing the model) and a description of what that notation means (a meta-model)
  72. 72what is a meta modeldescription of what the notation means
  73. 73What are the advantages of UMLa formal language, concise, comprehensive, scaleable, built on lessons learned, it’s the standard
  74. 74What does a case tool allowforward and reverse engineering
  75. 75Who started UML3 amigos
    Grady Booch, James Rumbaugh, and Ivar Jacobson
  76. 76What are the different views of software developmentUse Case, Logical, Component, Deployment
  77. 77What is use case viewUse case model, overview diagram (identify the functionality required by users
  78. 78What is logical viewClass/object diagrams (the foundation for modeling classes/objects)
    Sequence/Communication diagrams (identifying object interfaces and communication, modeling object interactions)
    State diagram (model internal object behavior)
  79. 79What is process viewActivity diagram (describes sequence, conditional logic, and concurrency – like a flowchart)
  80. 80what is deployment viewComponent diagram (physical arrangement of the finished components of software, facilitate reusability)
    Packages (not a modeling tool but an organizational tool to group UML diagrams into logical units)
  81. 81What is physical viewDeployment diagram (make use of component diagrams to map the relationships between hardware and software)
  82. 82What is a use case modeloverview diagram (identify the functionality required by users)
  83. 83what are class/object diagramsthe foundation for modeling classes/objects
  84. 84What are sequence/communication diagramsidentifying object interfaces and communication, modeling object interactions
  85. 85What is a state diagrammodel internal object behavior
  86. 86what is an activity diagramdescribes sequence, conditional logic, and concurrency
  87. 87what is a component diagramphysical arrangement of the finished components of software, facilitate reusability
  88. 88What are packagesnot a modeling tool but an organizational tool to group UML diagrams into logical units
  89. 89What is a deployment diagrammake use of component diagrams to map the relationships between hardware and software
  90. 90What does a use case model duecaptures the requirements
    functionality and features
  91. 91What questions should you ask when modeling use caseWho are the users?
    What will the user do and see with the system/application?
    How will the users use the application?
  92. 92What do Use Case models focus ongoal of the process
  93. 93What are the three components of a use case modeluse case diagram
    use case narrative
    use case scenarios
  94. 94what is a use case narrativea textual description
  95. 95what is a use case scenariotest cases/ specific instance of use case.
  96. 96what is an actora user, an external system, or a device that interacts with a system
  97. 97what is a systemthe application/system that provides the features or functionality to the actors
  98. 98what is a use casekey features of the system (the goals of the system); a use case is something that provides some measurable result to the user or an external system
  99. 99what is a communication line (association)interactions between actors and use cases (actor-actor, actor-use case)
  100. 100what is a relationship (dependency)interactions between use cases
  101. 101what is <>?one use case always ask for help from another use case – unconditional delegation
  102. 102what is <>?one use case asks for help if a specific condition is encountered – conditional delegation
  103. 103what are the building steps for a use case diagramDefine the context of the target system
    Identify the actors
    Identify the use cases (features)
    Define the communication line (interactions) between actors and use cases
    Evaluate use cases and identify relationships / dependencies using stereotypes
  104. 104what is a test case?Draw a scenario – flowchart
    Tracing the flowchart, follow the most comprehensive path. Trace the logic through each decision until you reach an end point
    Identify alternative path, follow this path until it rejoins a previous traced path or hits an end point
    For loops, remember that the scenario needs to be run multiple times to test the boundary conditions

Information

Description
Flashcards on Software Engineering Test 2, created by katiemad on 23/11/2013.
Created by
katiemad
Views
31
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?