Systems engineering of complex software systems

Wing H. Huen · 2022 IEEE Frontiers in Education Conference (FIE) · 2007

Global software development, via wage differential, reduces software life cycle cost significantly and is expected to grow. However, two recent studies reported that anticipated benefits of software outsourcing of custom software projects such as cost reduction, expanded capabilities, and increased flexibility often failed to materialize. These discrepancies were attributed to unclear or changing requirements from the enterprise and poor communication, among others, leading to suggestions of "centralize-standardize-outsource" or commodities outsourcing. Some complex software systems have been developed successfully by contracting companies in the U.S. or globally distributed teams via insourcing. In an attempt to prepare our students in this globalization era, this paper advocates two systems engineering techniques: software product line architecture and iterative and incremental development to overcome problems faced by globally distributed development teams. A high-value, high-risk network management system is used to illustrate the techniques. Projects in software engineering curriculum and design patterns are suggested.

Read the paper · More papers on PaperTik