1/103
Looks like no tags are added yet.
Functional requirements
Relate directly to a process a system has to perform or information needs to contain.
Supportability requirements
describe how a system is installed, configured, monitored, and updated.
internal stakeholders versus external stakeholders and operational stakeholders versus executive stakeholders
One useful way to help identify all the interested stakeholders is to consider two dimensions by which they vary: ______________________ (see Figure 2).
Research Vendor Solutions
There are three positive contributions in exploring existing solutions.
1. Researching existing solutions will frequently help users generate new ideas for how to better perform their business functions.
2. Some of these solutions are excellent and state of the art.
3. It is often cheaper and less risky to buy a solution rather than to build it.
Collect Active User Comments and Suggestions
Users and other stakeholders perform the initial testing of system functions during the iteration in which those functions are implemented.
Collect Active User Comments and Suggestions
Based on those interactions, users can develop concrete suggestions for improvement and identify missing or poorly implemented requirements.
models
Analysts build _______ to describe system requirements and use those models to communicate with users and designers
Swimlane
an activity diagram component that divides the workflow activities into groups showing which agent performs which activity.
1. Gather detailed information
2. Define requirements
3. Prioritize requirements
4. Develop user interface dialogs
5. Evaluate requirements with users
The activities of this core process are:
Prioritize Requirements
The reason why the functions requested by the users are being prioritized is that resources are always limited, and the analyst must always be prepared to justify the scope of the system.
Functional requirements
Flow directly into the creation of functional, structural, and behavioral models that represent the functionality of the evolving system.
1. Usability requirements
2. Reliability requirements
3. Performance requirements
4. Security requirements
The remaining categories (URPS) describe nonfunctional requirements as follows:
Internal stakeholders
are those within the organization who interact with the system or have a significant interest in its operation or success (Ex. Employees).
system analysis
The third core process which is to discover and understand the details is also called?
System analysts
obtain information from people who will be using the system, either by interviewing them or by watching them at work.
Gather Detailed Information
Analysts need to talk to everyone who will use the new system or has used similar systems, and they must read nearly everything available about the existing system.
Gather Detailed Information
The analyst tries to understand an existing system by identifying all present and future locations where work occurs and all system interfaces with other systems, both inside and outside the organization.
Prioritize Requirements
Once the system requirements are well understood, it is important to establish which requirements are most crucial for the system.
Prioritize Requirements
Users and analysts need to ask themselves which functions are truly important and which are fairly important but not absolutely required.
Prioritize Requirements
Requirements priorities also help to determine the number, composition, and ordering of project iterations.
Develop User Interface Dialogs, user interface dialogs
To most users, the user interface is all that matters. Thus, developing ___________ is a powerful method of eliciting and documenting requirements.
Develop User Interface Dialogs, abstract models
Analysts can develop user interfaces via _________, such as interaction diagrams and written dialogs, or they can develop storyboards or user-interface prototypes on the actual input/output devices that users will use.
Develop User Interface Dialogs, prototype interface
A ____________ can serve as a requirement and a starting point for developing a portion of the system.
Develop User Interface Dialogs
A user-interface prototype developed in an early iteration can be expanded in later iterations to become a fully functioning part of the system.
Evaluate Requirements with Users
Ideally, evaluating requirements with users and documenting the requirements are fully integrated.
Evaluate Requirements with Users
Analysts usually use an iterative process in which they elicit user input to model requirements, return to the user for additional input or validation, and then work alone to incorporate the new input and refine models.
Evaluate Requirements with Users
The processes of eliciting requirements, building models and prototypes, and evaluating them with users may repeat many times until requirements models and prototypes are complete and accurate.
Evaluate Requirements with Users
Most of the analyst's time is devoted to requirements: gathering information about them, formalizing them, by using models and prototypes, refining and expanding them, prioritizing them, and generating and evaluating alternatives.
System requirements
are all the activities the new system must perform or support and the constraints that the new system must meet.
functional or non functional
Requirements can be either ___________ or __________ in nature.
FURPS or (functional, usability, reliability, performance, and security)
The most widely used framework today in identifying and classifying requirements is referred to as ______ which stands for ______________________________
Usability requirements
describe operational characteristics related to users, such as the user interface, related work procedures, online help, and documentation.
Reliability requirements
describe the dependability of a system how often a system exhibits such behaviors as service outages and incorrect processing and how it detects and recovers from those problems.
Performance requirements
describe operational characteristics related to measures of workload, such as throughput and response time.
Security requirements
describe how access to the application will be controlled and how data will be protected during storage transmission.
Design constraints
describe restrictions to which the hardware and software must adhere.
Implementation requirements
describe constraints such as required programming languages and tools, documentation method and level of detail, and a specific communication protocol for distributed components.
Interface requirements
describe interactions among systems.
Physical requirements
describe such characteristics of hardware as size, weight, power consumption, and operating conditions.
Stakeholders
People who have an interest in the successful implementation of the system.
Stakeholders
Depending on the nature and scope of the system, this can be a small group, or a large, diverse group.
External stakeholders
are those outside the organization's control and influence (Ex. Suppliers, customers).
Operational stakeholders
are those who regularly interact with a system in the course of their jobs or lives (Ex. Inter-operation personnel)
Executive stakeholders
are those who do not interact directly with the system, but who either use information produced by the system or have a significant financial or other interests in its operation and success (Ex. Organization's senior managers and board of directors, and regulatory agencies).
client
is the person or group that provides the funding for the project.
An organization's technical and support staff
include people who establish and maintain the computing environment of the organization.
o Interviewing users and other stakeholders
o Distributing and collecting questionnaires
o Reviewing inputs, outputs, and documentation
o Observing and documenting business procedures
o Researching vendor solutions
o Collecting active user comments and suggestions
Different ways to collect information about system requirements
1. What are the business operations and processes?
What do you do?
2. How should those operations be performed?
How do you do it?
What steps to follow?
How could they be done differently?
3. What information is needed to perform those operations?
What information do you use?
What inputs do you use?
What outputs do you produce?
Three question themes
Open ended questions
such as "How do you do this function?" - encourage discussion and explanation.
Closed ended questions
such as "How many forms a day do you process?" - are used to get specific facts.
Questionnaires
are often used to obtain preliminary insight into stakeholder information needs, which helps to determine areas that need further research using other methods.
External to the organization
industry-wide professional organizations and other companies.
Existing business documents and description of the procedures within the organization
reviewing internal documents and procedures serves two purposes: (1) it is a good way to get a preliminary understanding of the processes (2) existing inputs, outputs, and documents can serve as a visual aid for the interview.
Observe and Document Business Processes
More than any other activity, observing the business process in action will help in understanding the business functions and visualize the new system's associated business process.
Observe and Document Business Processes
Observing the business process can be done in many ways, ranging from a quick walk-through of an office or plant to doing the work by the person who conducts the data gathering.
Research Vendor Solutions
Many of the problems and opportunities that companies want to address with new information systems have already been solved by other consulting firms by providing packaged solutions for a particular business needs.
Research Vendor Solutions
The danger in exploring existing solutions is that the users and even the systems analysts may want to buy one of the alternatives immediately.
Collect Active User Comments and Suggestions
User feedback from initial and later testing is a valuable source of requirements information
model
is a representation or abstraction of some aspects of the system being built.
o Learning from the modeling process
o Reducing complexity by abstraction
o Remembering all the details
o Communicating with other development team members
o Communicating with a variety of users and stakeholders
o Documenting what was done for future maintenance/enhancement.
Reasons for modeling:
Textual models
analysts use such models as memos, reports, narratives, and lists to describe requirements that are detailed and are difficult to represent in other ways. (Ex. Event list and use case descriptions).
Graphical models
make it easier to understand complex relationships that are difficult to follow when described as a list or narrative. These are system models that use pictures and other graphical elements to create a diagram.
Mathematical models
System models that describe requirements numerically or as mathematical expressions. Analysts use these models to describe non- functional requirements and operational parameters such as network throughput or database query response time
Unified Modeling Language (UML)
A standard set of information system model constructs and notations defined by the Object Management Group (OMG).
UML graphical model
The use case diagram, class diagram, activity diagram, sequence diagram, communication diagram, and state machine diagram are
Unified Modeling Language (UML)
By using _____, analysts and end-users are able to depict and understand a variety of specific diagrams used in a system development project.
Workflow
a sequence of work steps that completely handle one business transaction or customer request
Activity diagram
a UML diagram that describes user (or system) activities, the person or component that completes each activity, and the sequential flow of these activities
Synchronization bar
an activity diagram component that either splits a control path into multiple concurrent paths or recombines concurrent paths.
1. Identify the agents to create the appropriate swimlanes.
2. Follow the various steps of the workflow and then make appropriate ovals for the activities.
3. Connect the activity ovals with arrows to show the workflow,
Steps in creating activity diagram:
Systems Analysis
Consists of activities that enable a person to understand and specify what the new system should accomplish. More than a brief statement of the problem
Systems Design
Consists of activities that enable a person to describe in detail how the information system will be implemented to provide the needed solution
Systems Analysis and Design
Plays an integral role in the development of an information system (IS). Provides the tools and techniques needed as an information system developer to complete the development process
• Understand the need (business need)
• Capture the vision
• Define a solution
• Communicate the vision and the solution
• Build the solution or direct others in building the solution
• Confirm that the solution meets the need
• Launch the solution application
Systems analysis and design process:
Project
A planned undertaking that has a beginning and an end and produces some result. The activities required to develop a new system are identified, planned, organized, and monitored.
System Development Life Cycle (SDLC)
A framework that identifies all the activities required to research, build, deploy, and often maintain an IS.
A process of understanding how an IS can support business needs by designing a system, building it, and delivering it to the users
System Development Life Cycle (SDLC)
Normally includes all activities needed for the planning, systems analysis, systems design, programming, testing, and user training stages of information systems development, as well as other project management activities that are required to deploy the new information system successfully
SDLC Phases
Different projects might emphasize different parts of the SDLC or approach the SDLC in different ways, but all projects have elements of these four (4) phases.
-Each phase is composed of a series of steps, which rely upon techniques that produce deliverables (specific documents and files that provide understanding about the project).
Planning
The fundamental process of understanding why an information system should be built and determining how the project team will go about building it.
Project Initiation
The system's business values to the organization are identified. The system request and feasibility analysis are presented to an information systems approval committee, which decides whether the project should be undertaken.
Project Management
Once the project is approved, the project manager creates a work plan, staffs the project, and puts techniques in place and direct the project through the entire SDLC. The project plan is the expected deliverable that describes how the project team will go about developing the system
Analysis
It answers the questions of who will use the system, what the system will do, and where and when it will be used
Analysis strategy
It usually includes an analysis of the current system and its problems, and when to design a new system.
Requirements gathering (e.g., through interviews or questionnaires)
Analysis of this information and other inputs form project sponsors leads to the development of a concept for a new system. The system concept is used as a basis to develop a business analysis model.
System proposal
It is a document combining the analyses, system concept, and models that are presented to the project sponsors who decide whether the project should continue to move forward. This is the initial deliverable that describes what business requirements the system should meet.
Design
Decides how the system will operate in terms of hardware, software, and network infrastructure user interface, forms, and reports and the specific programs, databases, and files that will be needed.
design strategy
The __________ is first developed. It clarifies whether the system will be developed by the company's own programmers, will be outsourced to another consulting firm, or the company will buy an existing software package.
architecture design
This leads to the development of ______________ for the system, which describes the hardware, software, and network infrastructure to be used. The interface design specifies how the users will move through the system (e.g., navigation method such as menus and on-screen buttons) and the forms and reports that the system will use.
database and file specifications
The ________ and _________ are developed. These define exactly what data will be stored and where they will be stored.
program design
The analyst team develops the ___________, which defines the programs that need to be written and what each program will exactly do.
system specification
This collection of deliverables (architecture design, interface design, database and file specification, and program design) is the _____________ that is handed to the programming team for implementation.
Implementation phase
During this phase, the system is built (purchased, in the case of a packaged software design). This is the longest and most expensive single part of the development process.
System construction
The system is built and tested to ensure that it performs as designed. Because the cost of the bugs can be immense, testing is one of the most critical steps in implementation.
Installation
It is the process by which the old system is turned off and the new one is turned on. The development of a training plan is one of the most important aspects of conversion to teach the user how to use the new system and help manage the changes caused by the new system.
Establishment of support plan
It includes a formal or informal post-implementation review as well as a systematic way for identifying major and minor changes needed for the system.
1. Identify the problem or need and obtain approval to proceed with the project.
2. Plan and monitor the project - what to do, how to do it, and who will do it?
3. Discover and understand the details of the problem or the need - what is required?
4. Design the system components that solve the problem or satisfy the need - how will it work?
5. Build, test, and integrate system components. There will be lots of programming and component integration.
6. Complete system tests and then deploy the solution to satisfy the need.
The six (6) core processes required in the development of any information system are as follows:
System development process or methodology
A set of comprehensive guidelines for carrying out all of the activities of each core process of the SDLC.
-Each methodology prescribes a way of carrying out the development project, and every organization develops its own system development methodology over time to suit its needs.
Agile development
An information system development process that emphasizes flexibility and rapid response to anticipate new and changing requirements during development
-The basic philosophy of Agile development is that neither team members nor the users completely understand the problems and complexities of a new system, so the project plan and the execution of the project must be responsive to unanticipated issues.
Iterative Development
An approach to system development in which the system is "grown" piece by piece through multiple mini-projects called iterations
Core components
_______________ are developed first and then additional components are added.