modeling environment for software and hardware