Software development activities - UC Santa Barbara
[Pages:20]Software development activities
l Note "activities" ? not "steps"
l Often happening simultaneously l Not necessarily discrete
1. Planning: mostly study the requirements 2. Domain analysis: study the problem area 3. System design: devise computer solution 4. Implementation: write the code 5. Testing, documentation, maintenance, ...
Software engineering
l A subset of system engineering l Covers all software development activities,
planning through maintenance l Also includes various management tasks
? Determine project roles, and assign personnel ? Create and monitor development schedules ? Some client relations and customer support
l Guided by CS theory
? But really just heuristics, and often ad hoc
Professional, ethical responsibility
l Above all, do no harm! (Hippocratic Oath)
? NO VIRUSES or other malicious programs ? Avoid inventing "the bomb" or a plague, or ...
l Basically demonstrate loyalty to employer, clients, co-workers, country, humanity, ...
l See "Software Engineering Code of Ethics and Professional Practice" by ACM/IEEE-CS at
Development process modeling
l The classic:
l Step after step, after step, ...
l Never back up
Requirements Analysis
System
The
Design
Waterfall
Program Design
Model
Coding
Testing (several steps)
Operation & Maintenance
Alternatives to waterfall model
Maintenance
Requirements Analysis
System Design
Delivery
Program Design
System Testing
Coding
Integration Testing
Unit Testing
Software Development Reality
l Okay, we all agree ? this extreme doesn't work either
l Is there a middle ground?
Considering risk
Requirements Analysis
Design
Implement
Integrate & System Test
Potential impact of risks being tackled
In a waterfall lifecycle, high risk issues such as integration and load test may be tackled late.
Time
l Research conclusion: it is wise to do some implementing and testing early in the process
Engineering the risk factor
l Spiral Model
? Includes frequent risk analyses
l Frequent reevaluation during an extended planning stage
Testing and iterating
Requirements Analysis
The V Model
Operation & Maintenance
System Design
Acceptance
Validate requirements
Testing
Program Design
Verify design
System Testing
Unit & Integration Testing
Coding
l Accounts for requirement changes and mistakes
l Key idea: plan to iterate
l But still a bit too rigid?
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related download
- software development plan template acqnotes
- software development risk assessment energy
- software development activities uc santa barbara
- software project plan mcgraw hill
- 67 373 software development project executive summaries 2017
- software development standard deliverables
- note this is a sample software development agreement
- software project management plan university of texas at
- agile software development methodology
- software project estimation university of washington
Related searches
- software development business plan template
- software development plan example word
- types of software development models
- software development process models
- types of software development processes
- software development plan example
- sample software development plan
- software development plan template excel
- software development policy example
- software development plan template government
- software development plan template word
- software development project plan template