  We describe the software requirements and development methodology developed
for the NLC control system. Given the longevity of that project, and the likely
geographical distribution of the collaborating engineers, the planned
requirements management process is somewhat more formal than the norm in high
energy physics projects. The short term goals of the requirements process are
to accurately estimate costs, to decompose the problem, and to determine likely
technologies. The long term goal is to enable a smooth transition from high
level functional requirements to specific subsystem and component requirements
for individual programmers, and to support distributed development. The
methodology covers both ends of that life cycle. It covers both the analytical
and documentary tools for software engineering, and project management support.
