Abstract: More and more, systems engineers are turning to the System Modeling Language (SysML) to specify and design their embedded systems. This has many advantages, including verifiability and ease of passing off information to other engineering disciplines, particularly software and hardware. This paper describes a SysML-based process that systems engineers can use to capture requirements and specify architecture. The process is function-driven and is based heavily on the identification and elaboration of operational contracts, a message-based interface communication concept. The outlined process has been successfully implemented with applications at various real projects.