System analysis and design (Flera kapitel)

Ace your homework & exams now with Quizwiz!

What does it mean for an OOSAD approach to be incremental and iterative?

Iterative and incremental development means that the system undergoes continuous testing and refinement throughout the life of the project. As each increment and iteration is completed, a more complete representation of the user's real functional requirements is uncovered.

What are methods and messages?

Methods implement an object's behavior. A method is nothing more than an action that an object can perform. A message is essentially a function or procedure call from one object to another object.

What is the difference between intangible value and tangible value? Give three examples of each.

Tangible Value: Tangible value can be quantified and measured easily. Tangible value represents the benefits from the systems that are quantifiable and measurable. Example: (a) increased sales (b) reduced operating costs (c) reduced interest costs etc... Intangible Value: An intangible value results from an intuitive belief that the system provides important, but hard-to-measure benefits to the organization. Intangible value represents benefits that are real, but are difficult to quantify and measure. Example: (a) increased customer satisfaction (b) improved decision making (c) better competitive positioning, etc.

What is the purpose of an approval committee? Who is usually on this committee?

The approval committee generally serves as the decision making body regarding business investments in information systems projects. This approval committee could be a company steering committee that meets regularly to make information systems decisions, a senior executive who has control of organizational resources, or any other decision-making body that governs the use of business investments. This committee generally has a broad organizational representation, and therefore can avoid allocating resources that will serve only narrow organizational interests. The approval committee commonly has project oversight responsibilities as well as monitoring project performance after the project has been accepted.

What are the phases and workflows of the Unified Process?

The phases of the Unified Process are: 1) Inception: a business case is made for the proposed system. 2) Elaboration: requirements are determined and the system is designed. 3) Construction: focuses heavily on programming the evolving information system. 4) Transition: addresses aspects typically associated with the implementation phase of a traditional SDLC approach The workflows of the Unified Process are: 1. Engineering Workflows a) Business Modeling Workflow b) Requirements Workflow c) Analysis Workflow d) Design Workflow e) Implementation Workflow f) Testing Workflow g) Deployment Workflow 2. Supporting Workflows a) Project Management Workflow b) Configuration and Change Management Workflow c) Environment Workflow

Name three ways null values can be interpreted in a relational database. Why is this problematic?

The presence of null values suggests that space is being wasted. Null values also allow more room for error and increase the likelihood that problems will arise with the integrity of the data. Nulls threaten data integrity because they are difficult to interpret.

What are the two dimensions in which to optimize a relational database?

The two dimensions in which to optimize a relational database are for storage efficiency and for speed of access

Business Analyst: A Business Analyst's role is to:

- Analyzing the key business aspects of the system - Identifying how the system will provide business value - Designing the new business processes and policies

Infrastructure Analyst: The Infrastructure Analyst's role is to:

- Ensuring the system conforms to infrastructure standards - Identifying infrastructure changes needed to support the system

System Analyst: A System Analysts role is to:

- Identifying how technology can improve business processes - Designing the new business processes - Designing the information system - Ensuring that the system conforms to information systems standards

The two key advantages of the structured design waterfall approach are that:

- It identifies system requirements long before programming begins - It minimizes changes to the requirements as the project proceeds.

What is the difference between classes and objects?

A class is the general template we use to define and create specific instances, or objects. Every object is associated with a class. An object is an instantiation of a class, which means an object has state, but not a class.

Why is it important for an OOSAD approach to be architecture centric?

A development methodology is said to be architecture centric if the architecture is the main artifact upon which the design and implementation of the system is built. In other words, first the developers decide upon a framework and then the system is built around and upon it. The architecture becomes both an enabler and a constraint on how the system is developed. It is important of an OOSAD approach to be architecture centric because this approach allows the development team to iterate repeatedly without undermining the stability of the system's core. If the architecture were to be revisited and modified over time, then there would be a very good chance that support to some (or most) system components would eventually be compromised.

Describe a "risky" project in terms of technical feasibility. Describe a project that would not be considered "risky."

A project that would be technically risky would be one that is large in scale, utilizes technology that we have little or no experience with, and is for a business area that is new and unfamiliar to the organization. A project that would not be considered technically risky would be one that is small in scale, uses technology that is well understood, and is for a business area that is very familiar to the users and developers.

Describe the major elements and issues with prototyping.

A prototyping-based methodology performs the analysis, design, and implementation phases concurrently, and all three phases are performed repeatedly in a cycle until the system is completed. Prototype is usually the first part of the system that the user will use and the key advantage of a prototyping-based methodology is that it very quickly provides a system for the users to interact with, even if it is not ready for widespread organizational use at first. The major problem with prototyping is that its fast-paced system releases challenge attempts to conduct careful, methodical analysis. Often the prototype undergoes such significant changes that many initial design decisions become poor ones. This can cause problems in the development of complex systems because fundamental issues and problems are not recognized until well into the development process. Example: Imagine building a car and discovering late in the prototyping process that you have to take the whole engine out to change the oil (because no one thought about the need to change the oil until after it had been driven 10,000 miles).

What are the major roles played by a systems analyst on a project team?

A system analyst's role is to: - Identifying how technology can improve business processes - Designing the new business processes - Designing the information system - Ensuring that the system conforms to information systems standards

What is a use case?

A use case is a description of a system's behavior as it responds to stimuli from its environment. These stimuli come from the various users of the system as well as from external systems. The use cases are used to identify and to communicate the requirements for the system to the programmers who must write the system. A use case diagram is a type of behavioral diagram that is part of the Unified Modeling Language (UML) and that graphically depicts a use case or a collection of use cases.

Which phase in the SDLC is most important? Why?

All systems development projects follow essentially the same fundamental process called the system development life cycle (SDLC). The planning phase in SDLC is the most important phase because during this phase the project team identifies the business value of the system, conducts a feasibility analysis, and plans the project. This phase is the fundamental process of understanding why an information system should be built and determining how the project team will go about building it.

What is an index and how can it improve the performance of a system?

An index is a small, quickly searchable table that contains values from the table and indicates where in the table those values can be found. System performance is improved with an index because it is no longer necessary to search the entire table for the desired values. The small index table can be quickly searched to reveal exactly where the desired values are stored.

For what are behavior diagrams used? Give some examples of behavior diagrams.

Behavior diagrams provide the analyst with a way to depict the dynamic relationships among the instances or objects that represent the business information system. They also allow the modeling of the dynamic behavior of individual objects throughout their lifetime. The behavior diagrams support the analyst in modeling the functional requirements of an evolving information system. The behavior modeling diagrams include activity, sequence, communication, interaction overview, timing, behavior state machine, protocol state machine, and use-case diagrams.

Describe several techniques that can improve performance of a database.

Denormalization adds selected fields back to tables in a data model. This adds a little redundancy, but improves the data access speed. Clustering involves physically placing records together so that like records are stored close to each other. Indexing creates small, quickly searchable tables that contain values from the table and indicate where in the table those values can be found. Finally, proper estimation of the data set size is important to assure that adequate hardware is obtained for the system

Describe three situations that can be good candidates for denormalization.

Denormalization is performed to speed up data access. Redundancy is added back into tables in order to reduce the number of joins that are required to produce the desired information. In a normalized Order table, the customer name will not be included; however it may be added back in to the Order table to improve processing speed. This represents a situation in which some parent entity attributes are included in the child entity. Similarly, a lookup table of zip codes and states may be set up in the normalized data model, but could be added back in to the physical model design. Another situation is where a table of product codes lists the description and price. These may also be added back into the physical model to improve application performance. Lookup tables are common candidates for denormalization. Also, 1:1 relationships may be good candidates for denormalization, since the information may be accessed together frequently. Finally, storing parent and child relationships at the physical level can be more efficient with denormalized storage.

What are the primary differences between a DevOps methodology and an agile or object-oriented methodology?

DevOps approaches incorporate ideas from both object-oriented approaches to systems development and lean manufacturing into the agile approaches. The primary extensions that DevOps approaches support are the inclusion of operations personnel with the development team and continuous deployment. With both object-oriented and agile approaches, deployment was only performed after a version of the system was completed. In other words, the operations personnel took over the system and deployed it. With DevOps approaches, deployment is completed when a new chunk of software has passed a set of relevant tests. Consequently, deployment of a new version of the system is not performed all at once. Instead, the new version is deployed in pieces over time; this is also referred to as a rolling upgrade.

Compare and contrast dynamic and static binding.

Dynamic, or late, 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.

Describe two special issues that may be important to list on a system request.

Environmental factors should be considered (e.g., new governmental reporting requirements); competitive factors (e.g., IS-enabled systems introduced or anticipated by competitors); externally imposed deadlines that cannot be altered (e.g., completion by the start of the next fiscal year); and mandated technologies (e.g., including wireless access).

Describe the three techniques for feasibility analysis.

Every organization has its own process and format for the feasibility analysis, but most include three techniques: a) Technical feasibility: Technical feasibility looks at the capability of the organization to successfully develop the proposed system. Included in this assessment is the project size, the types of technologies to be used in the project, and the amount of prior experience with that technology and the business application. b) Economic feasibility: Economic feasibility addresses the economic justification of the project. Here, we attempt to determine if the value of the project's benefits justifies investing in the project's estimated costs. c) Organizational feasibility: Organizational feasibility evaluates whether the system is likely to be accepted and used by the organization. Included in this assessment will be the strength of the sponsor's and management's support for the project and the enthusiasm or resistance of the users for the project.

Describe the major elements and issues with XP.

Extreme programming (XP) is founded on four core values: communication, simplicity, feedback, and courage. These four values provide a foundation that XP developers use to create any system. First, the developers must provide rapid feedback to the end users on a continuous basis. Second, XP requires developers to follow the KISS principle.8 Third, developers must make incremental changes to grow the system, and they must not only accept change, they must embrace change. Fourth, developers must have a quality-first mentality. XP also supports team members in developing their own skills. Three of the key principles that XP uses to create successful systems are continuous testing, simple coding performed by pairs of developers, and close interactions with end users to build systems very quickly. For small projects with highly motivated, cohesive, stable, and experienced teams, XP should work just fine. However, if the project is not small or the teams aren't jelled, then the success of an XP development effort is doubtful. This tends to throw the whole idea of bringing outside contractors into an existing team environment using XP into doubt.

Compare and contrast extreme programming and throwaway prototyping.

Extreme programming (XP): Extreme Programming is founded on four core values which provide a foundation on which XP developers use to create any system. The four core values are Communication, Simplicity, Feedback and Courage. Throwaway Prototyping: Throwaway prototyping-based methodologies balance the benefits of well thought out analysis and design phases with the advantages of using prototypes to refine key issues before a system is built. Each of these issues is examined by analyzing, designing, and building a design prototype.

How does a model meet the requirements of third normal form?

First, the model must be in 1st normal form (all repeating fields or groups of fields have been removed to separate tables. Second, the model must be in 2nd normal form with all partial dependencies removed. Third normal form then requires that all transitive dependencies are removed (i.e., that no fields are dependent on other, non-primary key fields).

What does gradual refinement mean in context of SDLC?

Generally, the clarity of understanding and the depth of detail of the new system are gradually refined during the phases of the SDLC. Initially, the requirements are only vaguely understood. This understanding is improved during the Analysis phase. Further detail is developed during Design, and then is fully expressed during Implementation.

Why are encapsulation and information hiding important characteristics of object-oriented systems?

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.

Describe the major elements and issues with throwaway-prototyping.

In throw-away prototyping, there is a more careful and rigorous analysis performed as compared to Prototyping (more similar to the traditional SDLC). However, in the Design phase, models of various elements of the system are developed to help explore design alternatives and refine system requirements. These prototypes help users clarify their needs, options, and priorities. Once user requirements are established through reaction to the design prototype, it is discarded; however, the requirements it embodied are incorporated into the new system. Throw-away prototyping is very useful in situations where users are uncertain about key elements of the system. Throw-away prototypes can help focus users on design issues and improve understanding of business needs. The approach helps create a system that suits the users' needs even though those needs may have been poorly understood initially.

What is the difference between interfile and intrafile clustering? Why are they used?

Interfile clustering physically orders records within a table in some meaningful way, such as by primary key value. Interfile clustering identifies records for separate tables that are typically retrieved together and physically stores them together.

Why should the system request be created by a businessperson as opposed to an IS professional?

It is important to have a clear understanding of how system will improve business. Companies have now realized that identifying business value and understanding the risks associated with the project are necessary to avoid any potential risks involved. Usually the system originates with a businessperson as he understands the need for the system or system improvement in the business unit and will have a much better idea of the value of the proposed system or improvement and therefore is in a better position to create a meaningful system request In fact, the ideal situation is for both IT people (i.e., the experts in systems) and the business people (i.e., the experts in business) to work closely to find ways for technology to support business needs. In this way, organizations can leverage the exciting technologies that are available while ensuring that projects are based upon real business objectives, such as increasing sales, improving customer service, and decreasing operating expenses.

What is the purpose of normalization?

Normalization is a process that optimizes relational data storage for storage efficiency and for minimization of update anomalies. The rules of normalization help assure that the data is stored as efficiently as possible.

Describe the major elements and issues with an object-oriented approach to developing information systems.

Object-oriented systems analysis and design (OOSAD) is most associated with a phased development RAD-based methodology, where the time spent in each phase is very short. OOSAD uses a use-case-driven, architecture-centric, iterative, and incremental information systems development approach. It supports three different views of the evolving system: functional, static, and dynamic. OOSAD allows the analyst to decompose complex problems into smaller, more manageable components using a commonly accepted set of notations. Additionally, object-oriented systems analysis and design allows the analyst to interact with the user with objects from the user's environment instead of a set of separate processes and data.

Describe the major elements and issues with phased development.

Phased Development is a RAD methodology that does not attempt to develop the complete system initially. Instead, the system is generally specified. User requirements are organized into a series of versions. The first version includes the essential system components and is delivered to the users quickly. Subsequent versions add features and refinements to the system based on the initial specification plus the users' feedback and reaction to using the system. The critical issue with Phased Development is to accurately specify the initial requirements so that the first version provided to the users is useful, although incomplete. If this is done well, Phased Development will provide value to the organization by getting the users a system to use quickly. New requirements may be identified through user feedback as well, which improves the "fit" of the system to the business needs.

What is meant by polymorphism when applied to object-oriented systems?

Polymorphism means that the same message can be interpreted differently by different classes of objects. For example, inserting a patient means something different than inserting an appointment.

Compare and contrast process-centered methodologies with data-centered methodologies.

Process-centered methodologies: Process-centered methodologies emphasize process models as the core of the system concept. Example: Process-centered methodologies would focus first on defining the processes (e.g., assemble sandwich ingredients). Data-centered methodologies: Data-centered methodologies emphasize data models as the core of the system concept. Example: Data centered methodologies would focus first on defining the contents of the storage areas (e.g., refrigerator) and how the contents were organized.

What are the roles of a project sponsor and the approval committee?

Project sponsor: Project Sponsor could be represented either by an individual or a department or a team. The project sponsor is from where the request is generated. They are basically involved through out the various phases of the SDLC. a) The IS department works hand in hand with the project sponsor to conduct a feasibility analysis, be it a technical, organizational or an economical feasibility. b) During the Analysis phase the project team investigates any current system, identifies improvement opportunities and develops a concept for the new system in conjunction with the input from the project sponsor. c) At the end of the design phase the feasibility analysis and the project plan are reexamined and revised and the decision whether the project is to continue or terminated is made by the project sponsor along with the approval committee. d) The key deliverables for each phase are typically very long and are presented to the project sponsor for approval as the project moves from phase to phase. e) The project sponsor approves the key deliverables for each phase only after which the project moves from phase to phase. f) The project sponsor along with the users provides valuable comments which are used to re-analyze, re-design and re-implement a second prototype which provides few more features.

Describe the major elements and issues with SCRUM.

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.

What is the primary purpose of structure diagrams? Give some examples of structure diagrams.

Structure diagrams provide a way to represent the data and static relationships in an information system. The structure diagrams include class, object, package, deployment, component, and composite structure diagrams

Compare and contrast structured design-based methodologies in general to RAD-based methodologies in general.

Structured design methodologies are usually fairly formal, step-by-step approaches to systems development. The project moves through the phases in a systematic way. The emphasis in most of these methodologies is development of paper-based specifications for the new system prior to implementation. RAD methodologies, on the other hand, tend to emphasize quick creation of a limited-capability version of the system or a model of the system. These methodologies focus on refining this preliminary system or model rather than trying to fully describe it on paper prior to implementation.

Compare the phases of the Unified Process with the phases of the waterfall model.

The Inception phase of the Unified Process is similar to the Planning phase of the Waterfall methodology. The Elaboration phase of the Unified Process encompasses most of the activities in both the Analysis and Design phases of the Waterfall methodology. The Construction and Transition phases of the Unified Process together comprise the set of activities normally performed during the Implementation phase of the Waterfall methodology.

Who is the Object Management Group?

The Object Management Group is a consortium of organizations whose purpose it is to set standards for object-oriented systems. The OMG is the group that ratified the UML as an industry standard.

Compare and contrast phases, steps, techniques and deliverables.

The Systems Development Life Cycle "SDLC" has a set of four fundamental phases: planning, analysis, design, and implementation. Different projects may emphasize different parts of the SDLC or approach the SDLC phases in different ways, but all projects have elements of these four phases. Each phase is itself composed of a series of steps, which rely upon techniques that produce deliverables (specific documents and files that provide understanding about the project). Example: When you apply for admission to a university, there are several phases that all students go through: information gathering, applying, and accepting. Each of these phases has steps—information gathering includes steps like searching for schools, requesting information, and reading brochures. Students then use techniques (e.g., Internet searching) that can be applied to steps (e.g., requesting information) to create deliverables (e.g., evaluations of different aspects of universities).

What is the Unified Modeling Language?

The Unified Modeling Language (UML) is a standard set of diagramming techniques. The objective of UML is to provide a common vocabulary of object-oriented terms and diagramming techniques rich enough to model any systems development project from analysis through implementation.

Describe the principal steps in the analysis phase. What are the major deliverables?

The analysis phase answers the questions of who will use the system, what the system will do, and where and when it will be used. During this phase, the project team investigates any current system(s), identifies improvement opportunities, and develops a concept for the new system. This phase has three steps: 1) Analysis Strategy: Developed to guide the project team's efforts. Such a strategy usually includes an analysis of the current system (as-is system) and its problems, and then ways to design a new system (to-be system). 2) Requirements Gathering: The analysis of this information—in conjunction with input from project sponsor and many other people—leads to the development of a concept for a new system. The system concept is then used as a basis to develop a set of business analysis models that describes how the business will operate if the new system were developed. 3) System Proposal: The analyses, system concept, and models are combined into a document called the system proposal, which is presented to the project sponsor and other key decision makers. The system proposal is the initial deliverable that describes what business requirements the new system should meet. This is really the first step in the design of the new system.

Describe the principal steps in the design phase. What are the major deliverables?

The design phase decides how the system will operate, in terms of the hardware, software and network infrastructure; the user interface, forms and reports; and the specific programs, databases, and files that will be needed. The design phase has four steps: 1) Developing design strategy: This clarifies whether the system will be developed by the company's own programmers, whether it will be outsourced to another firm (usually a consulting firm), or whether the company will buy an existing software package. 2) Basic architecture design: This describes the hardware, software, and network infrastructure that will be used. In most cases, the system will add or change the infrastructure that already exists in the organization. 3) Database and file specifications: These define exactly what data will be stored and where they will be stored. 4) Program Design: The analyst team develops the program design, which defines the programs that need to be written and exactly what each program will do. This collection of deliverables (architecture design, interface design, database and file specifications, and program design) is the system specification that is handed to the programming team for implementation. At the end of the design phase, the feasibility analysis and project plan are reexamined and revised, and another decision is made by the project sponsor and approval committee about whether to terminate the project or continue.

Why is it important to understand the initial and projected size of a database during design?

The design team needs to be sure that the hardware that is specified for the system is adequate to support the size of the database. If inadequate hardware is chosen, the performance of the system will be poor regardless of the 'tuning' techniques that are applied.

Describe the principal steps in the implementation phase. What are the major deliverables?

The final phase in the SDLC is the implementation phase, during which the system is actually built (or purchased, in the case of a packaged software design). This phase has three steps: 1) System construction: The system is built and tested to ensure it performs as designed. Since the cost of bugs can be immense, testing is one of the most critical steps in implementation. 2) Installation: This is the process by which the old system is turned off and the new one is turned on. It may include a direct cutover approach, a parallel conversion approach, or a phased conversion strategy. 3) Support plan: This plan usually includes a formal or informal post-implementation review, as well as a systematic way for identifying major and minor changes needed for the system.

What are the steps for assessing economic feasibility? Describe each step.

The four steps for assessing economic feasibility are: a) Identify costs and benefits of the proposed system. b) Assign values to the costs and benefits. c) Determine the cash flow of the project over the analysis period. d) Determine the project's investment return.

Describe the major elements and issues with parallel development.

The parallel development methodology attempts to address the problem of long delays between the analysis phase and the delivery of the system. Instead of doing design and implementation in sequence, it performs a general design for the whole system and then divides the project into a series of distinct subprojects that can be designed and implemented in parallel. Once all subprojects are complete, there is a final integration of the separate pieces, and the system is delivered The major issues in this approach are that it still suffers from problems caused by paper documents. It also adds a new problem such as sometimes the subprojects are not completely independent; design decisions made in one subproject may affect another, and the end of the project may require significant integration efforts.

Describe the principal steps in the planning phase. What are the major deliverables?

The planning phase is the fundamental process of understanding why an information system should be built and determining how the project team will go about building it. It has two steps: 1) Project Initiation: This step involves the identification of the system's business value. A system request presents a brief summary of a business need, and it explains how a system that supports the need will create business value. The IS department works together with the person or department that generated the request (called the project sponsor) to conduct a feasibility analysis. The feasibility analysis examines key aspects of the proposed project like the technical feasibility, economic feasibility and organizational feasibility 2) Project Management: Once the project is approved, it enters—project management. During project management, the project manager creates a work plan, staffs the project, and puts techniques in place to help the project team control and direct the project through the entire SDLC. The deliverable for project management is a project plan that describes how the project team will go about developing the system.

What are the purposes of the system request and the feasibility analysis? How are they used in the project selection process?

The purpose of the system request is to initiate a systems project. A system request is a document that describes the business reasons for building a system and the value that the system is expected to provide. The project sponsor usually completes this form as part of a formal system project selection process within the organization. Most system requests include five elements: project sponsor, business need, business requirements, business value, and special issues The feasibility analysis represents a more detailed investigation into the proposed system outlined in the system request. Feasibility analysis guides the organization in determining whether to proceed with a project. Feasibility analysis also identifies the important risks associated with the project that must be addressed if the project is approved. The system analyst and the project sponsor work together to more fully develop the objectives of the system and to understand its potential costs and benefits to the organization. The system request and the feasibility analysis are the key inputs used by the approval committee in determining if the proposed system has enough merit to move into the Analysis Phase.

Describe what should be considered when estimating the size of a database.

The size of the database will be based on the amount of raw data expected, the growth rate of raw data that is expected, and the overhead requirements of the DBMS.

Describe the major phases in the SDLC.

There are four major phases in SDLC. a) Planning: The Planning phase is the fundamental process of understanding why an information system should be built and determining how the project team will go about building it. b) Analysis: The Analysis phase answers the questions of who will use the system, what the system will do, and where and when it will be used. During this phase, the project team investigates any current system(s), identifies improvement opportunities, and develops a concept for the new system. c) Design: The design phase decides how the system will operate, in terms of the hardware, software, and network infrastructure; the user interface, forms and reports; and the specific programs, databases, and files that will be needed. d) Implementation: The final phase in the SDLC is the implementation phase, during which the system is actually built (or purchased, in the case of a packaged software design). This is the phase that usually gets the most attention, because for most systems it is longest and most expensive single part of the development process.

Compare and contrast the role of a systems analyst, business analyst, and infrastructure analyst.

These three roles emphasize different perspectives on the system. The business analyst represents the sponsor/users interests, while the systems analyst knows how to apply IS to support business needs. Together, the systems analyst and the business analyst can design a system that conforms to the IS standards while adding value to the business. The infrastructure analyst has more technical knowledge and provides the team with technical constraints, or identifies infrastructure changes that the new system will require.

List two tangible benefits and two operational costs for a system. How would you determine the values that should be assigned to each item?

Two tangible benefits are: an increase in sales and a decrease in uncollectible accounts receivable. The best way to measure these benefits is to go to the business people who understand these areas and ask them for reasonable estimates. The sales and marketing managers and the accounts receivable managers will be in the best position to determine these values. Operational costs are the ongoing costs associated with the new system, and are fairly easy to determine objectively. One common operational cost is that of maintenance agreements for new hardware, which can be determined by contacting hardware vendors about the costs of their maintenance contracts. Another common operations cost is that of new employees that will be needed to run the new system. Salaries and benefits for new employees can be determined by checking local and regional salary and wage surveys for the type of employee needed.

What is meant by use-case driven?

Use-case driven means that use cases are the primary modeling tools defining the behavior of the system.

Describe the major elements and issues with waterfall development.

Waterfall Development follows the phases of the life cycle in sequence (Planning, Analysis, Design, and Implementation). Each phase is thoroughly documented and approval is required before proceeding to the subsequent phase. It is difficult, though not impossible, to go backwards in the SDLC under Waterfall Development. Waterfall Development requires that the system requirements be precisely specified prior to implementation and also often "freezes" those requirements during development. The high degree of effort devoted to specifying user requirements is a strength of Waterfall Development but specifying those requirements on paper is laborious and may lead to errors and omissions. "Freezing" the requirements during development helps assure that the system is developed according to specifications, but in a dynamic business environment, the system that is ultimately developed may bear little resemblance to what is actually needed at the time the project is completed. Therefore, extensive maintenance may be needed after implementation to revise the system to meet current conditions.

Approval Committee: Sometimes referred to as the steering committee is the final decision maker regarding the fate of the project after carefully reviewing the system request, feasibility analysis, system proposal etc.

a) In planning phase after feasibility analysis the approval committee decides whether the project should be undertaken. b) After Analysis the system proposal is forwarded to the approval committee to decide whether the project should continue to move forward c) During the Design phase the feasibility analysis and project plan are reexamined and the approval committee will decide whether to terminate or continue with the project

Give three examples of business needs for a system.

a) Maintain or improve the competitive position b) Perform a business function more efficiently c) Take advantage of a new business opportunity

List two intangible benefits. Describe how these benefits can be quantified.

a) One example of an intangible benefit is reduced response time to customer requests. Estimating the increase in the number of customers that could be served and the average revenue gained per customer could approximate the value of this benefit. So, if we currently have 1000 customers, the average revenue per customer is $100, and by reducing our response time we can increase the number of customers served by 30%, then our benefit will be $30,000 (300 add'l customers @ $100). (Note: this analysis assumes that demand for the product will increase with our increased capacity. If demand remains constant, however, reduced response time will allow us to save money due to less frequent overtime; allow for greater flexibility in absorbing urgent projects; or create other similar value, though the economic impact of these may be more difficult to estimate). b) A second example of an intangible benefit is improved customer satisfaction. Determining how much repeat business we lose from dissatisfied customers could approximate the value of this benefit. The amount of repeat business lost could be estimated through customer satisfaction surveys or marketing research. Assume we currently have 1000 customers, each customer brings in average revenue of $100, and we currently lose the repeat business of 10% of our customers due to dissatisfaction. If an improvement in customer satisfaction resulted in losing only 5% of repeat business, then the value of that benefit would be $5,000 (50 customers retained @$100).

The two key disadvantages are that:

a) The design must be completely specified before programming begins. b) A long time elapses between the completion of the system proposal in the analysis phase and the delivery of the system.


Related study sets

C-33 Trade: Painting and Decorating

View Set

Chapter 1 - INTRODUCTION TO GENERAL AND RELATIONAL DATABASES

View Set

NASM CPT - Ch.3: Psychology of Exercise

View Set

Pectoral Muscles (Origin, Insertion, Action, Innervation)

View Set