-
it is a product, and at the same time, the vehicle for delivering a product (computing potential).
Software
-
produces, manages, acquires, modifies, displays, or transmit information.
Software
-
acts as the basis for the control of the computer (OS), the communication of information (networks), and the creation and control of other programs (software tools and environments).
Software
-
Software delivers the most important product of our time: _________
information
-
instructions that when executed provide desired features, functions, and performance.
Software
-
data structures that enable the programs to adequately manipulate information and descriptive information in both hard copy and virtual forms that describes the operation and use of the programs.
Software
-
is engineered, doesn’t wear out (but deteriorates to change), and complex.
Software
-
indicates that hardware exhibits relatively high failure rates early in its life, defects are corrected and the failure rate drops to a steady-state level for some period of time.
Bathtub curve
-
a gross oversimplification of actual failure models for software.
Idealized curve
-
before the curve can return to the original steady-state failure rate, another change is requested, causing the curve to spike again.
Actual curve
-
a collection of programs written to service other programs.
System software
-
Software is ________ if the order and timing of inputs, processing and outputs is predictable.
determinate
-
Software is _________ if the order and timing of inputs, processing and outputs cannot be predicted in advance.
indeterminate
-
stand-alone programs that solve a specific business need.
Application software
-
a broad array of “number-crunching programs that range from astronomy to volcanology, from automotive stress analysis to orbital dynamics, and form computer-aided design to molecular biology, from genetic analysis to meteorology.
Engineering/Scientific Software
-
resides within a product or system and is used to implement and control features and functions for the end user and for the system itself.
Embedded Software
-
designed to provide a specific capability for use by many different customers.
Product-line software
-
this network-centric category spans a wide array of applications and encompasses both browser-based apps and software that resides on mobile devices.
Web/Mobile applications
-
makes use of the nonnumerical algorithms to solve complex problems that are not amenable to computation or straightforward analysis.
Artificial intelligence software
-
developed to meet changes in business requirements and computing platforms.
Legacy software
-
characterized by longevity and business criticality.
Legacy software
-
have inextensible design, convoluted code, poor or nonexistent documentation, test cases and results that were never archived, a poorly managed change history.
Legacy system
-
Legacy system software must be:
- adapted,
- enhanced,
- extended,
- re-architected
-
Legacy system –must be _________ so that it remains viable into the future.
reengineered
-
consisted of little more than a set of linked hypertext files that presented information using text and limited graphics.
Websites
-
evolved into sophisticated computing tools that not only provide stand-alone function to the end user, but also have been integrated with corporate databases and business applications.
WebApps
-
allows a mobile device to gain access to web-based content via browser that has been specifically designed to accommodate the strengths and weaknesses of mobile platform.
Mobile Web Application
-
can gain direct access to the hardware characteristics of the device and then provide the local processing and storage capabilities noted.
Mobile App
-
encompasses an infrastructure or “ecosystem” that enables any user, anywhere, to use a computing device to share computing resources on a brad scale.
Cloud computing
-
includes client (user) device and the application software (browser) that allows bback-end to be accessed.
Front-end
-
includes servers and related computing resources, data storage systems (databases), server-resident applications, and administrative servers.
Back-end
-
a set of software-intensive systems that share a common, managed set of features satisfying the needs of a particular market segment or mission and that are developed from a set of core assets in a prescribed way.
Software product line
-
Software New Categories:
- Ubiquitous Computing – wireless networks
- Netsourcing – the Web as a computing engine
- Open Source – “free” source code open to the computing community
|
|