Chapter 9 - Tech for Deving Better Sys Flashcards
What is the software crisis?
Software costs continue to have spiraleddramatically, becoming the largest cost item in IT. Delivery schedules are seldom kept.
As software grows rapidly to meet more complex requirements and tight delivery deadlines, quality has
become a nontrivial issue
What are some solutions to the software crisis?
- programming languages have become more advanced from machine level code to high level languages
- Better methods of system development such as Agile
What are some structured system methodologies that accompanied the waterfall system?
1) More discipline - this included practices such as analysis, design and construction. Limited creativity but improved productivity and helped deal with complexity
2) More modularization
3) Reliability and Fewer errors - inspections at every development stages for error checking
4) More efficient use of resources - this was usually implemented my PMs in the form of time and cost control systems
What are some benefits of a 4GL?
- more than lanugages, environments
- saves programers time and focus more on problem solving
- DBMS allows for unstructured files along with data records
- Non-procedural languages means you can put commandes in any order
- domain specific
- allows for prototyping
What are some features of 4GLs?
- Database management systems(DBMS) •Data dictionary •Nonprocedural language • Interactive query facilities • Report generator • Selection and sorting • Screen formatter • Word processor and text editor • Graphics •Data analysis and modeling tools •Library of macros • Programming interface • Reusable code •Reusable software components and repositories • Software development library • Backup and recovery • Security and privacy safeguards • Links to other DBMSs
What is software prototyping?
A SW system that is created quickly (hours, days, weeks rather than months)
Purpose is to test assumptions about user reqs, design of app or even program logic
What does a typical prototyping methodology look like?
- Form a users team
- establish developers team
- decompose system into subsystem
- Gather requirements using simulated screens and interfaces
- Put together quick design to show users simulated screens in logical order
- Build prototype
- Evaluate and refine requirements
- Engineer product using an adaptive process that converges into final product
- Gather user feedback
- Maintain product using same system
Why was CASE developed?
Automate structured techniques to reduce tediousness and maintenance costs
What is CASE?
- series of sw tools to help quickly design, develop, deploy and maintain sw
There are 4 main components to comp aided se
1) info repository (data structs, processing logic, bus rules, source code)
2) FE tools for planning design (store meaning of items so it can be reflected automatically elsewhere, can include auto design anal)
3) BE tools for code gen
- dev workstattion
Implied but not included are sw dev methodology and pm methodology
Why is system integration important
- support interorg supply chains
- replace silo’d systems
- work together within an org
- increased use of OTS equipment
- online businesses need it
- competetive pressures
Why is system integration difficult?
- Increasing complexity of IT
- tech from different eraas
- Complex
- expensive
- ## can cause a system crash
What are the three approaches to system integration?
1) DBMS
2) ERP Systems
3) Middleware
What is the DBMS approach to system integration?
Different applications store their data in a single or distributed DB
Different sources, same DB
What is the ERP approach to sys int?
A single sw vendor provides a full suite of applications with a fully integrated DB
Automates and standardizes bus processes, will save bus money if integrated properly
Some ERP #s
Avg Cost overrun: 179%
Avg Sched overrun: 230%
Functionality below expections: 60%
10% finished on-time
35% cancelled