Download presentation
Presentation is loading. Please wait.
1
Programming in the Many Software Engineering Paradigm for the 21 st Century Nenad Medvidovic Center for Software Engineering Computer Science Department University of Southern California Los Angeles, CA 90089-0781 neno@usc.edu http://sunset.usc.edu/~neno/
2
PITL in a Nutshell The past: programming in the small (PITS) – small, simple systems – single developer (or small teams) – programs are hacked – developer = customer = user The present: programming in the large (PITL) – large, complex systems – powerful hardware – teams of developers – systems are engineered – many people, many roles
3
Why PITL? This is a simple software system!
4
Yesterday’s Tool: Design Abstraction We have to do better!
5
Architecture to the Rescue
6
A Peek into the Future Large, complex, highly distributed systems Teams of developers Many people, many roles Heterogeneous hardware – desktop, laptop, palmtop – “smart dust” and “smart paint” Mobility One application runs on many devices – each device has limited resources Guess what: the future is now!
7
Resource Constraints This has been your computer This is / will become your computer
8
PITM in a Nutshell
9
What Is an Engineer to Do? Engineer – Do not “hack” by reusing the best practices of PITL – Component-based system composition – Explicit architectures with powerful connectors – Modeling and analysis before construction – Mechanisms to support distribution and heterogeneity and adapting them to the needs and constraints imposed by PITM – Shrink – Optimize – Distribute – Automate
10
An Example of PITM in Action Display Calibrate Display M M M M MM M M M M M GUI Display M M M M M
11
PITM Challenges Processor speed, memory size, network bandwidth – PITL taught us not to worry about them True heterogeneity – Hardware platforms – Operating systems – Programming languages – Interaction paradigms Modeling, analysis, simulation, and generation – Partial information – Decentralized ownership and control Inter-device interaction and code mobility – Limited resources – Frequently missing infrastructure Effectively developing ITM using software architecture concepts – What is the price of insisting on “proper” abstractions? – How can those abstractions be properly realized?
12
Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.