Software engineering is an engineering discipline focused on all aspects of software production. It intersects with system engineering, which deals with the broader scope of computer-based systems development, including hardware and process engineering.
customer-supplier business model (lack of info., trustworthiness, cooperation
limited possibility to detect defects
high logical complexity
heterogeneity, delivery and trust
attributes of good SW
transition properties
interoperability
reusability
portability
revision properties
testability
flexibility
operation properties
usability
integrity
reliability
correctness
acceptability
efficiency
dependability
maintainability
CASE
lower-CASE: to support later activites (programming, debugging and testing)
upper-CASE: to support the earl process activites of requirement and design
costs of SWE
distribution of costs depends on the development model that is used
costs vary depening on
requirement of sys attributes
type of sys being developed
60% of costs: development costs. 40%: testing costs
SW process
generic activities
evolution
validation
development
specification
set of activites whose goal is the development or evolution of SW
SWE and systen engineering
SysE: concerned w all aspects of computer-based systems development (HW,SW, process eng.). SWE: is part of this process concerned w developing the SW infrastructure, control, applications and DB in the system
SWE and CS
CS theories are still insufficient to act as complete underpinning for SWE
CS: concerned with theory and fundamentals. SWE: concerned with the practicalities of developing and delivering a useful sw
what is SWE?
an engineering discipline that is concerned with all aspects of SW production