Hi Sohail
Starting a workflow using SAP_WAPI_START_WORKFLOW is not a preferred option ; instead use events to trigger the workflow by using SAP_WAPI_CREATE_EVENT - It gives better tracking capability as well as options for queuing.
Coming to your question, Business Object is required, you can not only create a method to display the change screen, but also provide attachments etc....a lot more is possible if you have business object instantiated.
Regards,
modak