Monday 14 January 2013

Chapter 1: The Object-Oriented Systems Development Environment. Essay Question


Essay Questions


1.      Define and describe the relationship between methodology, technique, and tool in terms of their contributions to information systems development. Give examples of each of these terms.

Answer:

Methodologies are step-by-step approaches that help in the development of the final information system. Methodologies are typically composed of a number of techniques, which are processes that analysts follow to ensure that their work is well thought-out, complete, and comprehensible. Techniques are facilitated through the use of software tools. Examples of methodologies are the SDLC, structured analysis, and object-oriented analysis. Techniques include interviewing and direct observation for requirements analysis, planning and management approaches to ensuring project success, and various diagrams for illustrating system processes, data flows, and object relationships. The most commonly used software tool for systems analysis is CASE (computer-aided software engineering).

Page Reference:  4-5, 17-19               Difficulty:  Moderate


2.      What is a system? Give a business-related definition and describe the parts that make up a system.

Answer:

A system in a business sense is a set of interrelated procedures used for a business function with an identifiable boundary working together for some common purpose. A system is made up of components linked with each other in various relationships. Each component may be an irreducible part, or a subsystem. Systems have constraints, which are limits on what they can do. A system exists within an environment and is separated from the environment by a boundary, and the points at which objects in the environment can interact with the system are called interfaces; these are the points at which the system receives its inputs and produces its outputs.

Page Reference:  5                             Difficulty:  Moderate


3.      Define the key systems analysis concepts of decomposition, modularity, coupling, and cohesion. Why are these important concepts and how are they related to each other?

Answer:

Decomposition is the process of breaking a system into its terminal components and subsystems. This produces modularity, which makes the system easier to understand. A modular system is one in which the parts are small and manageable, allowing designers and analysts to focus their attention without being distracted by other modules. This also allows work on separate modules to be done independently in terms of time and resources. Coupling refers to the degree of dependence between modules. Ideally, coupling should be kept to a minimum in order to maximize independence and interchangeability of system units. Cohesion refers to the degree to which a system component performs a single function. If a system component performs many functions, it should be further decomposed so that its separate units are more cohesive.

Page Reference:  6-8                          Difficulty:  Moderate


4.      List and describe the steps involved in information systems development.

Answer:

There are four main steps in information systems development. These are project management/planning, systems analysis, systems design, and systems implementation/operation. In project planning, organizational needs are identified, a feasibility study is performed, the scope of the proposed system is determined, and a baseline plan is generated. Systems analysis involves a thorough study of the current procedures and system operations, typically utilizing use case analysis. In addition, system requirements are determined, and alternative system designs are evaluated. The result of systems analysis is a clear identification of what the system is supposed to accomplish. Systems design is concerned with how the system will accomplish this. User interfaces, reports, databases, and computer processes are fully described -- first in a logical design and then in a physical design. Finally, in systems implementation, program coding, testing, documentation and installation takes place. After this point, the system is in operation, and requires periodic enhancement and maintenance.

Page Reference:  9-11                                    Difficulty:  Moderate

5.      Describe the three main categories of information systems. For each category, indicate its primary purpose, discuss the types of inputs and outputs that it uses, and give an example of an application of this type.

Answer:

The three types of information systems are transaction processing systems (TPS), management information systems (MIS) and decision support systems (DSS). A TPS is an application that automates transaction processing, generally utilizing raw data from databases and producing simple documents such as receipts or invoices. A bank’s automated teller machine, a retail point-of-sale system, and a company’s payroll system are all examples of transaction processing systems. A management information system typically takes inputs from TPS data and produces reports to managers that summarize and aggregate the transaction activities. Regional sales reports and employee activity summaries are examples of MISs. Whereas an MIS simply produces a static report, a DSS goes further by providing an interactive environment that enables users to perform a variety of decision-making tasks such as what-if analysis. DSSs obtain data from databases, include mathematical and graphical models, and provide a dialogue interface for users. Examples of DSSs are executive information systems (EISs), data warehouses, and knowledge management systems.

Page Reference:  11-13                                  Difficulty:  Moderate
6. Describe the main role of a systems analyst in the systems development process. In a typical IS organization, who will the systems analyst report to, and who does the systems analyst’s boss report to? Finally, discuss several characteristics of successful systems development teams.
Answer:
The main role of the systems analyst is to study the problems and needs of an organization in order to determine how people, procedures, and information technology can best be combined to bring about an improvement in the organization, typically by assisting system users and managers in determining and structuring their requirements for new or enhanced information services. The systems analyst typically reports to the director of IS development,
who in turn reports to the executive director of the overall IS department. Successful development teams should be diverse, enabling a wide variety of viewpoints, backgrounds,
and expertise levels, which enables birth and development of new ideas. Successful teams are made up of people who are willing to consider ideas without being overly critical, who are able to deal with ambiguity, uncertainty and complexity, who are skilled technicians and communicators, and who are organized in a structure emphasizing mutual respect, trust,
and shared accountability.
Page Reference:  13-14                  Difficulty:  Moderate

7.  Identify and describe four types of skills a person needs in order to succeed as a systems analyst.  For each type of skill, indicate the tasks and roles in which the analyst will utilize the skill.

Answer:

Systems analysts utilize analytical, technical, managerial, and interpersonal skills in their jobs. They use analytical skills to understand the organization and its functions, to perform problem-solving tasks, and to identify opportunities and problems. In particular, analytical skills facilitate system thinking, the ability to identify organizations and programs and systems. Technical skills are important in order to recognize which technologies are appropriate for which problems, and to identify the strengths and limitations of each technology. Among the technical skills required for a systems analyst are database design, systems modeling, and programming. A systems analyst uses management skills to assist or lead in project management efforts, manage change, and minimize project risk. Finally, interpersonal and communication skills are vital for the systems analyst, who serves as a liaison between users and programmers, interviews users to obtain requirements, and participates in meetings.


Page Reference:  15-16                                  Difficulty:  Moderate


8.  Identify and describe the modeling and diagramming techniques that are used for the structured, data-oriented, and object oriented analysis and design methodologies.

Answer:

The structured analysis/design methodology focuses on process modeling, implemented primarily via data flow diagrams (DFDs). Data flow diagrams illustrate the movement of data between external entities, system processes and data stores. DFDs can be shown at various levels of detail, as processes are decomposed into sub-processes. The data-oriented methodology concentrates on data modeling, particularly with respect to relational database technology. The primary diagramming technique is the entity-relationship (ER) model. The object-oriented methodology utilizes the unified modeling language (UML), which is a notation that models business objects and software system artifacts.


Page Reference:  17-19                                  Difficulty:  Moderate

9.  Describe the advantages that the object-oriented approach to systems analysis and design has over the traditional systems development life cycle. In particular, discuss the limitations of SDLC and how OOSAD overcomes these limitations.  

Answer:

The traditional SDLC places a heavy emphasis on planning and analysis early in the process, forcing analysts to thoroughly understand the problem and construct detailed development plans prior to designing and coding the system. Although this can help to reduce errors during subsequent development efforts, its sequential approach has several limitations. User requirements may not be known in advance, and will probably change during the course of the development effort, particularly for large projects.  Analysts often do not have enough functional knowledge to truly understand user requirements and their implications for design. Furthermore, project risk is not well-known early in the development process and does not become apparent until later in the project, when significant resources have already been expended. Because of the long time frame between project initiation and final implementation, users do not get access to the system until long after the project has begun, and by that time the system may no longer meet their changing needs. Finally, the SDLC is generally associated with a process-oriented structured analysis and design methodology, which involves task decomposition and an inherent separation of processes and data.

By contrast, the OOSAD approach emphasizes an incremental and iterative methodology in which cycles of planning, analysis, design, and implementation are spread throughout several phases of the project.  At each phase, individual components of the system are fully developed; therefore users gain access to pieces of the system early in the process. Risk is mitigated because difficult tasks are tackled early in the process, and the incremental approach is conducive to responding to changing user requirements. In OOSAD, planning and analysis are an ongoing process, so it is natural for an incomplete understanding of the system and requirements to evolve into more detailed knowledge as the systems development effort unfolds. Finally, because objects encapsulate both processes and data, this leads to more support for reuse of components in different applications, something generally not supported by applications developed via SDLC.

Page Reference:  17, 20-22                Difficulty:  Hard



10.  Describe in detail the Rational Unified Process. Discuss the overall approach this methodology takes toward systems development. Identify each of the phases, indicating the typical subdivisions and describing which workflows that are emphasized in each. Finally, discuss the relative lengths of each of the phases.

Answer:

The RUP is an iterative, incremental approach to object-oriented systems analysis and design. With this approach, the systems development process is divided into four main phases, inception, elaboration, construction, and transition. Each phase is subdivided into time-bound milestones called iterations, typically of 2-8 weeks each.  Consider the traditional SDLC in which almost all planning is done up front, followed by detailed analysis, then logical and physical design, and finally implementation and operations. With RUP, each phase consists of each of these “workflows” to some degree, although they are emphasized in differing degrees in each phase. Management and planning is distributed evenly across all phases. Analysis tasks are heavily emphasized in the earlier stages (inception and elaboration) and are reduced in emphasis in the later phases (construction and transition). Design starts at a low level in inception, is dominant in elaboration, and then gradually diminishes in construction and transition. Implementation slowly builds in the early stages, and peaks in construction, then trails off in transition. The operation workflow is at a minimal level in inception, slightly higher in elaboration and construction, and peaks in transition. Inception is usually the shortest phase, composed typically of a single iteration. Elaboration is slightly longer, usually involving two iterations. Construction is the most time and resource intensive, and may have several iterations, and transition usually has only a couple iterations.

Page Reference:  22-25                                  Difficulty:  Hard


No comments:

Post a Comment