In this article, we will see a brief overview of Software Engineering; we will try to figure out some misconception related with Software Engineering and Software Engineer e.g. “Who are Software Engineer?”
Let’s First See about Engineering
Engineering is …
The application of scientific principles and methods
To the construction of useful structures & machines
Examples
Mechanical engineering
Civil engineering
Chemical engineering
Electrical engineering
Nuclear engineering
Aeronautical engineering
Software Engineering
The term is 35 years old: NATO Conferences
- Garmisch, Germany, October 7-11, 1968
- Rome, Italy, October 27-31, 1969
The reality is finally beginning to arrive
- Computer science as the scientific basis
- Many aspects have been made systematic
1. Methods/methodologies/techniques
2. Languages
3. Tools
4. Processes
Software Engineering in a Nutshell
Development of software systems, whose size/complexity warrants team(s) of engineers
Multi-person construction of multi-version software [Parnas 1987]
Scope
Study of software process, development principles, techniques, and notations
Goal
Production of quality software, delivered on time, within budget, satisfying customers’ requirements and users’ needs
Software Engineering ≠ (IS NOT) Software Programming
Software programming is
- Single developer
- “Toy” applications
- Short lifespan
- Single or few stakeholders
- Architect = Developer = Manager = Tester = Customer = User
- One-of-a-kind systems
- Built from scratch
- Minimal maintenance
Software Engineering is
- Teams of developers with multiple roles
- Complex systems
- Indefinite lifespan
- Numerous stakeholders
- Architect ≠ Developer ≠ Manager ≠ Tester ≠ Customer ≠ User
- System families
- Reuse to amortize costs
- Maintenance accounts for over 60% of overall development costs
Custom Search
Showing posts with label Software Engineering. Show all posts
Showing posts with label Software Engineering. Show all posts
Thursday, May 8, 2008
Subscribe to:
Posts (Atom)