File: ch01, Chapter 1: Introduction to Systems Analysis and Design

 Multiple Choices

1.	The process of understanding how an information system can support business needs, design the system, build it, and deliver it to users is the _____.
a.	analysis phase of the SDLC
b.	object oriented approach
c.	rule for creating a CASE tool
d.	systems development life cycle
e.	waterfall development methodology

Ans: d

2.	The person that identifies opportunities for improvements and designs an information system to implement them is called a(n) _____.
a.	computer programmer
b.	end-user
c.	systems analyst
d.	systems specialist
e.	technical writer
Ans: c

3.	The primary goal of the systems analyst is to _____.
a.	acquire a working tool
b.	create a wonderful system
c.	create value for the organization
d.	establish the phases of the SDLC
e.	identify opportunities for improvement

Ans: c

4.	Developing an information system is similar to building a house because you have to
a.	start with a basic idea of what is needed
b.	create simple drawings of what is needed and allow the customer to provide feedback
c.	develop a detailed set of blueprints
d.	actually build the project, often with some changes directed by the customer
e.	all of the above

Ans: e

5.	The four phases of the Systems Development Life Cycle are _____.
a.	analysis, gathering, modeling, and diagramming
b.	construction, installation, testing, and converting
c.	initiating, planning, controlling, and implementing
d.	planning, analysis, design, and implementation
e.	system request, feasibility, staffing, and construction

Ans: d

6.	Understanding why an information system should be built and determining how the project team will build it is part of the _____ phase of the SDLC.
a.	analysis 
b.	system request
c.	gathering
d.	initiating
e.	planning

Ans: e

7.	The _____ is generated by the department or person that has an idea for a new information system.
a.	economic feasibility analysis
b.	requirements document
c.	project charter
d.	system request
e.	project plan

Ans: d

8.	The project sponsor is the _____.
a.	lead systems analyst on the project team
b.	person or department that requested the system
c.	lead computer programmer charged with writing the code for the system
d.	project team leader in charge of developing the system
e.	any of these choices may fill the role of the project sponsor

Ans: b

9.	Feasibility analysis examines several questions, including “_____?”
a.	Can it be built (technical feasibility)
b.	Do we have the right people to build it (organizational feasibility)
c.	If we build it, can our computers handle the load (operational feasibility)
d.	Can we get afford it (economic feasibility)
e.	all of these

Ans: a

10.	The project plan is the document that is used to _____.
a.	describe how the project team will go about developing the proposed system 
b.	outline the tasks to be addressed in developing the proposed system and develop a time estimate for each task. 
c.	outline the technical, economic, and organizational feasibility of the proposed system
d.	summarize the business need and explain how the proposed system supports that need and creates value
e.	all of these

Ans: a

11.	In which phase of the SDLC is the project plan developed?
a.	analysis
b.	design
c.	implementation
d.	planning
e.	reconstruction

Ans: d

12.	In which phase of the SDLC is the system proposal developed?
a.	analysis
b.	design
c.	implementation
d.	planning
e.	system delivery

Ans: a

13.	The analysis phase of the SDLC answers which questions _____.
a.	who will create the system and when will it be used
b.	who will the system be for, what the system will do, when will it be used, and where will it be used
c.	why build the system, what the system will be, and how the system will work
d.	why build the system, who will the system be for, when will it be used, and how the system will work
e.	why build the system, who will the system be for, when will it be used, and where will it be used

Ans: b

14.	Deciding how the hardware, software, and network infrastructure will operate occurs during the _____ phase of the SDLC.
a.	analysis
b.	design
c.	implementation
d.	planning
e.	strategy

Ans: b

15.	In which phase of the SDLC is the system specification developed?
a.	analysis
b.	design
c.	implementation 
d.	planning
e.	system delivery

Ans: b

16.	Interfaces (e.g., menus, reports, forms) are specified during the _____ phase of the SDLC.
a.	analysis
b.	design
c.	implementation
d.	planning
e.	system delivery

Ans: b

17.	The phase of the SDLC when the system is actually built or purchased is the _____.
a.	analysis
b.	construction
c.	design 
d.	implementation
e.	planning

Ans: d
Response: See page 6

18.	A development methodology that focuses on the processes as the core of the system is said to be _____.
a.	action-oriented
b.	structure-oriented
c.	process-centered
d.	object-oriented
e.	data-centered

Ans: c

19.	The principal disadvantages(s) with the waterfall development methodology is (are) _____.
a.	a long time elapses between completion of the system proposal and the delivery of the system
b.	if the team misses important requirements, expensive post-implementation programming may be needed
c.	the design must be completely specified on paper before programming begins 
d.	 all of these
e.	none of these 

Ans: d 

20.	_____ development is a structured design methodology that proceeds in a sequence from one phase to the next. 
a.	Parallel 
b.	Phased
c.	Agile
d.	Rapid Application
e.	Waterfall

Ans: e

21.	Any modern object-oriented approach to software development must be use case driven, ____________, and iterative and incremental.
a.	User-centric
b.	Architecture-centric
c.	Requirements-driven
d.	Model-driven
e.	Object-centric

Ans: e

22.	Iterative and Incremental development means that 
a.	the team is using a prototyping methodology
b.	the system will be developed through versions
c.	the system will be developed in phases
d.	the system will undergo continuous testing and refinement
e.	the team is using an agile methodology

Ans: d

23.	Users typically do not think in terms of data or processes; instead, they see their business as a collection of logical units that contain both – so communicating in terms of __________ improves the interaction between a user and an analyst or developer.
a.	objects
b.	business rules
c.	business units
d.	attributes and methods
e.	workflow units

Ans: a

24.	In the Enhanced Unified Process, the Inception Phase involves several workflows including _________.
a.	analysis
b.	design
c.	implementation
d.	all of these
e.	none of these

Ans: d

25.	In the Enhanced Unified Process, the Production Phase involves several workflows including __________.
a.	analysis 
b.	design
c.	implementation
d.	all of these
e.	none of these

Ans: e

26.	Overall, the consistent notation, integration among the diagramming techniques, and application of the diagrams across the entire development process makes ________ a powerful and flexible tool set for analysts and developers.
a.	CASE
b.	UML
c.	DFDs
d.	EPCs 
e.	Flow Charts

Ans: b

27.	In SCRUM, teams organize themselves in a symbiotic manner and set their own goals for each ______________:
a.	phase
b.	module
c.	week
d.	function
e.	sprint

Ans: e

28.	SCRUM belongs to the category of system development methodologies:
a.	agile development
b.	rapid application development
c.	structured design
d.	waterfall development
e.	rapid prototyping

Ans: a

29.	Which following is one of the basic characters of object-oriented systems :
a.	process
b.	data
c.	module
d.	inheritance
e.	garbage collection

Ans: d

30.	Polymorphism is made possible through ________________ :
a.	static binding
b.	dynamic binding
c.	initialization
d.	messaging
e.	information hiding

Ans: b

True/False

1.	The primary objective of the systems analyst is to create a wonderful system. 

Ans: False

2.	The planning phase is the fundamental process of understanding how an information system should be built and determining who on the project team will build it.

Ans: False

3.	During the analysis phase of the SDLC the systems analyst will decide how the hardware, software and network infrastructure, user interface, forms and reports will be used.

Ans: False

4.	The new information system is purchased or built during the implementation phase of the SDLC.

Ans: True

5.	The waterfall development methodology derives its name from the salmon that swim up the waterfall against the current. 

Ans: False

6.	The infrastructure analyst is responsible for the design of the new business policies and processes.

Ans: False

7.	The role of the project manager includes managing the team members, developing the project plan, assigning resources and serving as the primary point of contact for people outside the project team. 

Ans: True

8.	The role of the change management analyst includes ensuring that adequate documentation and support are available to the users. 

Ans: True

9.	The business analyst is responsible for ensuring that the project is completed on time and within budget and that the system delivers all benefits that were intended by the project sponsor. 

Ans: False

10.	The project manager develops ideas and suggestions for how to improve business processes, designs new business processes, and identifies the business value the new system will create.

Ans: False

11.	Determining who will use the system, what the system will do, and where and when it will be used is performed during the analysis phase of the SDLC.

Ans: True

12.	RAD (Rapid Application Development) adjusts the SDLC phases to get some of the system developed and into the hands of the users quickly.

Ans: True

13.	Agile development is considered a special case of RAD approach to developing systems.

Ans: False

14.	Phased development is considered a special case of RAD approach to developing systems.

Ans: True

15.	Kim repeatedly performs the analysis, design, and implementation phases concurrently in a cycle until the system is completed. She then goes back and from scratch does a thorough design and implementation to complete the project.  She is following a throwaway prototype methodology.

Ans: True

16.	Throwaway prototyping balances the benefits of well-thought-out analysis and design phases with the advantages of using prototypes to refine key issues before the system is built.

Ans: True

17.	The creation of a design prototype that is not a working information system, but represents a part of the system that needs additional refinement happens with the prototyping methodology.

Ans: False

18.	Parallel development relies on only one iteration of the analysis phase.

Ans: True

19.	A local retailer has hired Geneva and Sydney to develop his new information system. He is not sure what type of system he wants, but it must be completed in four months and he needs to know regularly that the project is on schedule. Geneva and Sydney should use the Waterfall Development methodology for constructing the system.

Ans: false

20.	The primary advantage of the Waterfall Development methodology is requirements are completely specified and held relatively constant prior to programming.

Ans: True

21.	 Extreme programming is ideal for developing large mission-critical applications.

Ans: False

22.	An analyst with business skills that understands the business issues surrounding a system is commonly called a project manager.

Ans: False

23.	An analyst that focuses on the IS issues in a system, and who represents the interests of the IS department is called a systems analyst.

Ans: True

24.	The analyst that develops ideas and suggestions to improve the application of information technology is commonly called a systems analyst.

Ans: True

25.	An analyst that focuses on the technical issues of the organization (hardware, software, databases and networks) is commonly called a change management analyst.

Ans: False

26.	Scott has been assigned to focus on the users during the upcoming information systems installation. Scott will provide user training and documentation. His role is to serve as a change management analyst.

Ans: True

27.	Michelle has been assigned the task of completing the project in a timely manner and within budget. Her project team role is infrastructure analyst.

Ans: False

28.	Systems analysts Lori and Mark are employed by the local hospital. They have been assigned to develop a very complex patient monitoring system for the cardio-care unit using a new display technology. Throwaway prototyping is a very suitable methodology for this project.   

Ans: True

29.	Agile development methodology aims at eliminating the modeling and documentation overhead in IS projects, while emphasizing simple, iterative application development.

Ans: True

30.	Extreme programming is founded on core principles such as communication, simplicity, feedback, and courage

Ans: True

31.	In extreme programming programmers pair up to write the code.

Ans: True

32.	Extreme programming depends on refactoring to ensure that the code is kept simple.    

Ans: True

33.	Jim Smith is a project manager in the IS department of an insurance company and he just hired a group of four contractors to work on a project together with an in-house team of 4 full-time employees. He should use extreme programming as a methodology for the project.

Ans: False

34.	You are carrying out a project that involves information systems for the operation of controls in a passenger jet craft.   This is an ideal project for you to follow a throwaway prototyping methodology.

Ans: True

35.	For complex systems, throwaway prototyping is not a suitable methodology, since it will lead to problems with maintaining the system.  

Ans: False

36.	For complex systems, prototyping is not a suitable methodology, since it will lead to problems with maintaining the system. 

Ans: True

37.	For urgent projects, it is a good idea to use a prototyping methodology.

Ans: True

38.	A project manager most likely would not have worked as a systems analyst in the past, since project management career track is independent of the system analyst’s career track. 

Ans: False

39.	Project team members focus on getting the project done, leaving change management to the business managers.  

Ans: False

40.	The business analyst serves as the primary contact point with the project.

Ans: False

41.	The Unified Process is not use-case driven.

Ans: False

42.	Implementation is a phase in the Unified Process. 

Ans: False

43.	Project Management is a supporting workflow within the Unified Process.

Ans: True

44.	The Enhanced Unified Process goes beyond building the system and includes maintaining the system.

Ans: True

45.	The environment workflow in the Unified Process is designed to deal with the organizational and policy issues the project faces within the organizational environment.

Ans: False

46.	One of the criticisms of the Unified Process is that if fails to deal with the system after it has been delivered.

Ans: True

47.	Under the Unified Process, the Configuration and Change Management workflow includes risk management and scope management, among several other activities.

Ans: False

48.	Under the Unified Process, the Project Management workflow includes risk management and scope management, among several other activities.

Ans: True

49.	The business modeling workflow uncovers problems and identifies potential projects.

Ans: True

50.	In the Unified Process, the analysis phase follows requirements.

Ans: False

51.	In the Unifies Process, analysis is a workflow, not a phase.

Ans: True

52.	In the Enhanced Unified Process, the design and implementation workflows are the primary focus of the production phase.

Ans: False

53.	In the Enhanced Unified Process, the production phase focuses exclusively on supporting workflows.

Ans: True

54.	In the Unified Process, the implementation phase focuses on the deployment workflow.

Ans: False

55.	The vision document is a deliverable in the inception phase.

Ans: True

56.	The Unified Modeling Language is a collection of terms and diagrams designed to be used in data-oriented software projects.

Ans: False

57.	The Unified Modeling Language is a collection of terms and diagrams designed to be used in object-oriented software projects 

Ans: True

58.	The Unified Modeling Language is a collection of terms and diagrams designed to be used in process-oriented software projects

Ans: False

59.	In the UML, the Deployment Diagram is a behavioral diagram that illustrates the dynamic interaction of the system with its environment.

Ans: False

60.	In the UML, the Activity Diagram illustrates all the interactions between the system and its environment.

Ans: False 

61.	In the UML, the Use Case Diagram illustrates all the interactions between the system and its environment

Ans: True

62.	In the UML, the Class Diagram is an example of a structure diagram.

Ans: True

63.	In the UML, the Use Case Diagram is an example of structure diagram.

Ans: False

64.	Architecture Centric development requires functional (also known as external) diagrams in addition to structure and behavioral diagrams; however, the UML only has structure and behavioral diagrams.

Ans: True

65.	SCRUM is a type of agile development methodology.

Ans: True

66.	SCRUM has a designated team leader to lead the system development.

Ans: False

67.	It is questionable whether Scrum can scale up to develop very large, mission-critical systems.

Ans:  True

68.	Dynamic binding is one of the basic characters of object-oriented systems.

Ans: True

69.	An object is same as its class since both have attributes and behaviors.

Ans: False 

70.	In object-oriented systems, the encapsulation means the system simply combines processes and data into classes. 

Ans: True

71.	Abstract classes can produce instances. 

Ans: False

72.	Polymorphism means that the same message can be interpreted differently by different classes of objects. 

Ans: True

73.	Dynamic binding is a technique that delays typing the object until run-time. 

Ans: True

Short Answer

1.	Indicate the four phases of the waterfall approach and mention its advantages and disadvantages.

Ans: Waterfall is a sequential process that has each of the four phases (planning, analysis, design, and implementation) completed following the previous one. The two advantages are that requirements are identified long before programming and changes are minimized. The two disadvantages are an extensive paper trail and the time that passes from initial proposal and system completion.

2.	Briefly discuss the RAD methodology and mention its advantages and disadvantages.

Ans: The RAD methodologies attempt to address the weaknesses of the structured design methodologies by adjusting the phases of the SDLC to get parts of the system completed and in the hands of the users quickly. Analysis, design, and implementation are all speeded up. The advantages include the speed and quality of systems development, while the key disadvantage is the need to manage user expectations. 

3.	Explain the idea of prototyping and indicate when prototyping is appropriate.

Ans: Prototyping performs the analysis, design, and implementation phases of the SDLC concurrently and cyclically until the system is completed. This approach allows the analyst to quickly refine the user-requirements and to quickly get a system in the hands of the users (as long as it’s not a large, complex application that many people need to use).

4.	Explain the idea behind throw-away prototyping? When is it  appropriate?

Ans: Throw-away prototyping is done at a different point in the SDLC than prototyping. It is done after a fairly thorough analysis phase has determined the user requirements, but when various technical issues may need to be solved or some of the user requirements may still be unclear. The design prototype is not a working system, just part of it. Thus, when the prototype is finished, there is not a complete system to deliver to the users. It may take longer to develop systems using throwaway prototyping.  But it is suitable in projects where the requirements and/or technology issues are not well understood after the analysis phase.  Projects that need to deliver reliable systems often use the throwaway prototyping technique.  

5.	Describes the roles of and activities performed by the business analyst and system analyst.  

Ans: A BUSINESS ANALYST identifies the business value that a system will create, develops ideas and suggestions that improve the business process, and designs new processes and policies. Work experience of a business analyst is probably in the functional field or application, such as accounting, marketing or production management.

A SYSTEMS ANALYST develops ideas and suggests technology innovation to business processes, designs new business process and information systems, and ensures that IS standards are maintained. Work experience of a systems analyst is probably in analysis and design, programming, or some business area.

6.	Describes the roles of and activities performed by the infrastructure and change management analysts.  

Ans: An INFRASTRUCTURE ANALYST ensures the new system conforms to organizational standards and identifies infrastructure changes needed (to the network, database, hardware and software). Work experience of an infrastructure analyst is probably in networking, database administration, or various hardware or software systems.

A CHANGE MANAGEMENT ANALYST ensures that there is adequate documentation, user support, training, and change management strategies. Work experience of the change management analyst is probably in organizational behavior (any business field). 

7.	Explain the role of a project manager in an IS project.  
Ans: The project manager is responsible for completing the project on-time and within budget.  He/she is also responsible for ensuring that the completed system delivers all the benefits that were originally intended by the project sponsor. Project manager manages team members, develops work plan, assigns resources and is the primary point of contact for the project.  He/she would have worked as a systems analyst for a significant amount of time prior to becoming the project manager.  

8.	Briefly summarize the purpose of the planning phase in SDLC.  Explain why it exists and what it contributes to the completion of the system. 

Ans:  The purpose of the planning phase is to determine if the system request will provide value to the organization and to prepare a plan for completing the project. The Planning Phase exists so that the IS department and the project sponsors/users can develop an initial vision of the new system, establish its primary objectives, and perform a preliminary feasibility study that will evaluate the project's value to the organization and its estimated costs. With this information the organization's management can objectively assess whether the project has merit. The work done in this phase helps establish the project scope, define objectives and expectations, develop a plan for the project, and determine if the project warrants committing additional resources to its completion.

9.	Briefly summarize the purpose of the analysis phase in SDLC.  Explain why it exists and what it contributes to the completion of the system. 

Ans: The purpose of the analysis phase is to determine the business needs of the new system and to develop a preliminary concept for the new system. The Analysis Phase exists in order to assure that the problems being experienced by the business unit are well understood and will be resolved through the features and functionality of the proposed system. The Analysis Phase serves to gather sufficient information to assure that the system will correct the actual problems of the organizational unit. System objectives will be clarified during this phase, and user and business requirements will be defined in detail.

10.	Briefly summarize the purpose of the design phase in SDLC.  Explain why it exists and what it contributes to the completion of the system. 

Ans: The purpose of the design phase is to determine how technology will be used to fulfill the business needs defined in the Analysis phase. Design decision will be made regarding the technology infrastructure, user interface, file and database, and program components of the new system. These system elements must be designed prior to construction so that the system will meet user and business needs upon implementation.

11.	Briefly summarize the purpose of the implementation phase in SDLC.  Explain why it exists and what it contributes to the completion of the system. 

Ans:  The purpose of the implementation phase is to develop a production version of the system. The system components that were outlined in the design phase are created using the target technology, tested, and then introduced to the end users. This phase brings all the previous ideas into fruition as an actual working system is put into production in the organization. 

12.	Briefly describe the idea behind structured design approach to systems development. 

Ans: Structured design represents a number of methodologies that adopt a formal, step-by-step approach for proceeding through the SDLC. These methodologies emphasize carefully determining user requirements on paper prior to actual construction of the system.  Waterfall development model and parallel development model are examples of structured design.  

13.	Briefly describe the idea behind the RAD approach to systems development. 

Ans: The RAD (Rapid Application Development) methodologies attempt to accelerate the process of developing systems, and also utilize a variety of new tools and techniques that help avoid the painstaking preparation of paper-based specifications.  Most RAD methodologies recommend the usage of special tools such as CASE tools and special techniques such as joint application development (JAD) sessions.  Such tools and techniques improve the speed and quality of systems development.  However, managing user expectations of what is possible and what is not becomes difficult in RAD methodologies. Phased development, prototyping and throwaway prototyping are examples of RAD methodology.

14.	Briefly summarize the role and contribution of the Business Analyst, Systems Analyst, Infrastructure Analyst, Change Management Analyst, and Project Manager on a systems development project team.

Ans: The Business Analyst role exists to assure that the interests of the end users and project sponsor are represented on the project team. The Systems Analyst role exists to assure that the available information technology is applied appropriately to the users/sponsors business needs. The Infrastructure Analyst role exists to deal with technical concerns about the new systems hardware, software, and networking components. The Change Management Analyst role exists to attend to the process of assimilating the new system in the organization. The Project Manager role exists to ensure timely completion of the project, fulfillment of user/sponsor requirements, and appropriate usage of project resources. 

15.	Briefly explain the idea behind extreme programming (XP). 

Ans: In XP, developers not only accept change but embrace change.  They provide quick feedback to the end-users on a continuous basis, and follow the KISS principle for system development. Developers make incremental changes as the system grows in functionality and size. Continuous testing, programming in pairs by developers and close interactions with end users are hallmarks of the XP approach.  XP relies on refactoring, which is a disciplined way to keep the code simple.

16.	Briefly compare and contrasts the roles and responsibilities of the project manager and the business analyst.

Ans: The project manager leads the project team; the business analyst is a team member.  The project manager is responsible for overall project success; the business analyst is responsible for making sure the interests of the users and sponsor are met.  The project manager’s primary focus is on the project; the business analyst’s primary focus is on the business.  The project manager oversees technical and business people on the project team and does not necessarily have to be a technical wizard or an expert in the business, but it helps if he/she is proficient at both; the business analysts is the business expert on the team charged with making sure the technology delivers business value and does not have to be a technical wizard, but it helps if he/she is proficient with technology.

17.	Briefly explain the idea behind Object-Oriented Systems Analysis and Design (OOSAD)

Ans: OOSAD decomposes a problem using both process and data models, emphasizing neither.  It uses “objects” and these carry both data and processes.  OOSAD was a response to traditional approaches that deliberated on whether to focus primarily on data models or on process models.  Emphasizing data models has its benefits as does emphasizing process models.  By taking a balanced approach OOSAD seeks to gain the key benefits from modeling data structures and process flows. 

18.	Briefly explain what the creators of the Unified Modeling Language (UML) mean by use-case driven, architecture centric, and iterative and incremental.

Ans:  USE-CASE DRIVEN means that use cases are the primary tools for modeling the behavior of the system.  A use case is a description of the interaction between the system and the user as the user seeks to accomplish a particular goal.  Rather than decomposing processes into sub-processes, and sub-processes into sub-sub-processes, etc., etc., . . . , as is done in traditional structural analysis, use cases allow the analyst to focus on one process at a time without losing track of how all the use cases are interrelated.

ARCHITECTURE CENTRIC means that the development of the system is based on an initial understanding of the overall software architecture of the system from three perspectives or views.  
•	The functional view is a description of the system from the perspective of the user and focuses on what the system will do.  
•	The static view shows the classes of objects that make up the system, what they hold (attributes and methods), and their relationships.  
•	The behavioral view shows the messages sent between the objects and tracks their state changes.

ITERATIVE AND INCREMENTAL means that the development of the system undergoes continuous testing and refinement throughout the life of the project.  It means you make some progress and before going forward, you go over everything you’ve done to make sure everything fits well and nothing is missing.  The three architectural perspectives help.  The analyst begins by working with the user to develop the functional view.  He /she then uses this view to draft the static and behavioral views.  In so doing he/she may discover discrepancies and missing requirements.  He/she revisits the functional view.  This continues until the three views are in sync. 

19.	 Briefly describe the benefits of Object-Oriented Systems Analysis and Design (OOSAD)

Ans: OOSAD allows analysts to break problems down into smaller, manageable modules, work on the modules individually, and then put the pieces together to build the system.  Modules make the system easier to understand, work on, and share.  The pieces are reusable saving time in future projects.  And “object think” is more natural for humans when compared to the structured approaches that focus on either data structures or process flows.  Humans understand things better when they can see both at once.

20.	 Briefly describe the Unified Process (UP).

Ans:  The UP is used for systems development and relies on a two-dimensional process of phases and workflows.  The phases are inception, elaboration, construction, and transition.  The phases measure how far along the project is.  The workflows include business modeling, requirements, analysis, design, implementation, test, deployment, configuration and change management, project management, and environment.  Each phase can be further broken down into iterations as needed. The key idea is that the traditional phases (planning, analysis, design, and implementation) are actually workflows, not phases.  Along with other workflows, in the UP the traditional SDLC phases are activities carried out iteratively and incrementally throughout the project.  Each iteration carries out a variety of workflows in parallel, emphasizing some workflows over others depending on how far along the project is.  

21.	Briefly describe the phases of the Unified Process.

Ans:  The UP phases are inception, elaboration, construction, and transition.  

In the INCEPTION PHASE the team sets out to build the business case for the system.  It includes carrying out technical, economic, and organizational feasibility studies.  In order to build the business case it may be necessary to deploy a tentative solution.  The primary deliverables for the inception phase are the vision document and the decision of what environment to use to develop the system.

In the ELABORATION PHASE enough details are added to the vision document to finalize the business case, revise the risk assessment, and complete the project plan. The primary focus for this phase is on the analysis and design workflows.

In the CONSTRUCTION PHASE the system is built to the point where it is ready for beta and acceptance testing.  In this phase the focus is primarily on programming.  It is during this phase that missing requirements are uncovered, so the requirements workflow is still active.  In addition, the configuration and change management workflow becomes increasingly important during this phase.

In the TRANSITION PHASE the goal is delivery of the actual executable information system including user manuals, maintenance plan, and upgrade plan. The focus in this phase is on the testing and deployment workflows.

22.	Briefly explain why the Unified Process (UP) was modified.

Ans:  The UP was modified to account for staffing issues, operational issues after deployment, and integration (or cross-project) issues.  The Extended UP recognizes a phase after deployment.  This is the Production Phase.  In addition, two workflows were added.  They are the operations and support workflow and the infrastructure management workflow.  Lastly, some of the existing workflows were modified to account for emerging standards (OPEN and the OO Software Process).

23.	Briefly describe the Unified Modeling Language (UML).

Ans: The objective of the UML was to provide a common vocabulary of terms and diagramming techniques rich enough to model any systems development project. Version 2.0 of the UML defines a set of fourteen diagramming techniques. The six structure diagrams are class, object, package, deployment, component, and composite structure diagrams. The eight behavior modeling diagrams are activity, sequence, communication, interaction overview, timing, behavior state machine, protocol state machine, and use-case diagrams.  Overall, the consistent notation, integration among the diagramming techniques, and application of the diagrams across the entire development process makes the UML a powerful and flexible language for analysts and developers.

24.	Briefly describe the SCRUM agile development methodology.

Ans: Scrum development focuses on a few key practices. First, teams are self-organized and self-directed. Unlike other approaches, Scrum teams do not have a designated team leader. Instead, teams organize themselves in a symbiotic manner and set their own goals for each sprint (iteration). Second, once a sprint has begun, Scrum teams do not consider any additional requirements. Any new requirements that are uncovered are placed on a backlog of requirements that still need to be addressed. Third, at the beginning of every workday, a Scrum meeting takes place. Fourth, at the end of each sprint, the team demonstrates the software to the client. Based on the results of the sprint, a new plan is begun for the next sprint. One of the major criticisms of Scrum, like all agile methodologies, is that it is questionable whether Scrum can scale up to develop very large, mission-critical systems. A typical Scrum team size is no more than seven members.

25.	Briefly discuss the encapsulation and information hiding in object-oriented systems.

Ans: In object-oriented systems, combining encapsulation with the information-hiding principle suggests that the information-hiding principle be applied to objects instead of merely applying it to functions or processes. As such, objects are treated like black boxes. The fact that we can use an object by calling methods is the key to reusability because it shields the internal workings of the object from changes in the outside system, and it keeps the system from being affected when changes are made to an object.

26.	Briefly discuss the difference between dynamic and static binding.

Ans: Dynamic binding is a technique that delays typing the object until run-time. As such, the specific method that is actually called is not chosen by the object-oriented system until the system is running. This is in contrast to static binding. In a statically bound system, the type of object is determined at compile time. Therefore, the developer has to choose which method should be called instead of allowing the system to do it.

27.	Briefly discuss the difference between abstract classes and concrete classes.

Ans: Most classes throughout a hierarchy will lead to instances; any class that has instances is called a concrete class. For example, if Mary Wilson and Jim Maloney were instances of the Patient class, Patient would be considered a concrete class. Some classes do not produce instances because they are used merely as templates for other more specific classes (especially those classes located high up in a hierarchy). The classes are referred to as abstract classes. Person is an example of an abstract class. Instead of creating objects from Person, we create instances representing the more specific classes of Specialist and Patient, both types of Person.