Systems Analysis and Design Chapter 1
Prototyping
A rapid, interactive process between users and analysts to create and refine portions of a new system; it can be used as part of the SDLC for requirements determination or as an alternative to the SDLC
Systems development life cycle (SDLC)
A seven-phase approach to systems analysis and design that holds that systems are best developed through the use of a specific cycle of analyst and user activites
Agile approach
A systems development approach that has values, principles, and practices useful for systems analysts who desire a flexible, interactive, and participative approach
Explain what is meant by agile approach.
A systems development approach that has values, principles, and practices useful for systems analysts who desire a flexible, interactive, and participative approach.
Object-oriented systems analysis and design
An approach to programming as well as analysis and design that differs from traditional procedural programming by examining the objects that are part of a system. Each object is a computer representation of an actual thing or event. Key object-oriented concepts include objects, classes, and inheritance. The Universal Modeling Language (UML) is the standard diagramming tool for object oriented modeling
Bespoke software
Another term for custom software, it is the opposite of commercial-off-the-shelf (COTS) software. It is software developed to serve a particular function, or to support a unique organizational feature.
CASE tools
Computer-aided software engineering tools that include computer-based automated diagramming, analyzing, and modeling capabilities.
Scrum
Development teams begin a project with a high-level plan that can be changed on the fly as the "game" progresses. Scrum is an agile software development method suitable for complex projects. A limited number of features or tasks are selected for completion in a sprint, typically lasting two to four weeks. The result of its potentially shippable product. One the sprint ends, the process begins again with new priorities and features to be finished in the next sprint.
What personal qualities are helpful to a systems analyst?
Need to be a problem solver, communicator, strong personal and professional ethics, self-disciplined and self-motivated.
Linux kernel
One of the largest open source projects in the world, the Linux kernel is a monolithic kernel encompassing the software that can be most easily replaced that interfaces with all applications that run in user mode such as CPU, memory, and inter-process communication
Human-computer interaction (HCI)
The aspect of a computer that enables communications and interactions between humans and the computer; the layer of the computer between humans and the computer.
Exploration phase
The beginning phase of agile development, where an analyst asserts his or her conviction that the agile approach is the correct one and then assembles a development team and assesses their skills. This phase can last for a few weeks or up to a few months.
Productionizing phase
The phase in agile development when the software is released and feedback to improve the software product is received. Product releases can happen as often as every week.
What are CASE tools used for?
They are productivity tools for systems analysts that have been created explicitly to improve their routine work through the use of automated support. Used to increase analyst productivity, improve analyst-user communication, and integrate life cycle activities.
Planning game
A game used in agile development that spells out rules that can help formulate an agile development team's relationship with its business customers.
What is the meaning of the phrase "the planning game"?
A game used in agile development that spells out rules that can help formulate an agile development teams relationship with its business customers.
Unified modeling language (UML)
A language that provides a standardized set of tools to document the object-oriented analysis and design of a software system.
Ajax
A method using JavaScript and XML to dynamically change Web pages without displaying a new page by obtaining small amounts of data from the server.
Systems analyst
A person who systematically assesses how businesses function by examining the inputting and processing of data and the outputting of information with the intent of improving organizational processes and the quality of work life for users.
Maintenance phase
A phase of the SDLC in which maintaining the information system to improve it or to fix problem begins. Maintenance continues through the life of a system. Some maintenance can be done automatically through connecting to the vendor's website
Open source software (OSS)
A development model and philosophy of liberating software from certain licensing restrictions and publishing its source code, which can then be studied, shared, and modified by users and programmers, sometimes in proprietary ways for profit. The Linux operating system is an example
What are the stages in the agile development?
1. Exploration 2. Planning 3. Iterations to the first release 4. Productionizing 5. Maintenance
What are the seven phases of the SDLC?
1. Identifying problems, opportunities, and objectives. 2. Determining human information requests. 3. Analyzing system needs. 4. Designing the recommended system. 5. Developing and documenting software. 6. Testing and maintaining the system. 7. Implementing and evaluating the system.
List two reasons an organization may want its analysts to participate in an open source community.
1. It is faster to have a committed group of expert developers develop, test, and debug code than it is to have one isolated team working on software development 2. Gives the benefit of having many good minds working on innovative applications
List three roles that a systems analyst is called upon to play.
1. Systems Analyst as Consultant - Find out the needs when developing system. 2. Systems Analyst as Supporting Expert - There to give explanations, need to be a good problem solver. 3. Systems Analyst as Agent of Change - Need to let people know that things shouldn't be done the same way