Database Consulting and Systems in SAS Computing

SAS Computing provides consulting and assistance to departments seeking to develop database and web applications. Please contact Mary Costigan of the SAS Computing IRAD Group before hiring a programmer to develop a database application.   A programmer on staff may be able to assist with your project or one of our generic applications such as the Survey Builder or the Web Form Handler may may provide what you need.   If it's necessary to hire an outside programmer, IRAD can assist with the hiring process and provide information about programming and security standards, common vulnerabilities and documentation guidelines.  Applications developed by third parties must begin with a Security and Privacy Impact Assesment (SPIA) evaluation during the requirements gathering stage and undergo a code review before being housed on SAS Computing servers.

Using Drupal to develop dynamic web sites 

Many applications that previously required custom programming can now be developed with Drupal.  Drupal is an open source web content management system (CMS) and application development framework. Drupal can support collaborative authoring of web content, including blogs and forums, and a wide array of modules are available to support specialized needs such as e-commerce and social networking. Authoring content in Drupal is web form driven and requires no desktop client software. Drupal was created using PHP and stores data in a MySQL database. Departments wishing to create Drupal-based applications may contact the Information Security and Unix Systems (ISUS) group (wks@sas.upenn.edu) for information about getting a new site configured.  Developers are required to follow these policies and adhere to these secure coding guidelines and programming best practices.

Database platforms commonly used in SAS:

File Marker Pro, Microsoft Access, MySQL and Oracle are widely used database management systems within the School of Arts and Sciences. FileMaker Pro and Access are most suitable for desktop applications that will be used by small groups of users. Both FileMaker Pro and Access are good starting points for learning about relational database management systems and SQL (Structured Query Language). MySQL (in conjunction with PHP) is the recommended platform for programmers affiliated with departments charged with developing database driven web applications if Drupal can't provide all of the required functionality.

Desktop database applications

FileMaker Pro is cross platform, available for Mac and Windows. FMP is easy to learn for people without a programming background, and many non-technical users can easily and quickly learn to create forms, letters and reports. Although there were security issues with earlier versions of FMP (e.g. a single shared password), FMP 7 has introduced many improvements in this regard. Secure network sharing of FMP databases by multiple users is now possible but requires a FMP server and server software. FileMaker Pro is a good option for people needing to create fairly straightforward, stand alone desktop applications in a cross platform environment.

Access is a Windows-only client. It is possible for technically inclined users to develop relatively complex applications with Access as it supports a Visual Basic for Applications programming environment and SQL. Access is convenient for business office users as it’s easy to seamlessly move and copy information between Access and Excel. Although Microsoft Office users will note similarity in the menu and tool bars in Access and other Office products, Access is not intuitive to use and requires an investment of time to master. Access comes packaged with database templates (e.g. Contact Management and Resource Scheduling) that may be customized to suit individual needs.

Database driven web applications

MySQL is a widely used open source database program that uses SQL as a data manipulation language. It is the recommended DBMS in SAS for developing dynamic web application in conjunction with PHP if Drupal cannot provide what is needed. PHP is a scripting language with a large number of built-in libraries that is especially suitable for web development. GUI interfaces are available for interacting with the database. Departments wishing to develop database driven web sites may contact the Information Security and Unix Systems (ISUS) group (wks@sas.upenn.edu) in SAS Computing for additional information and assistance with obtaining accounts.

Oracle is a robust database management system. The Application Development team in SAS Computing has used Oracle to develop secure, complex, transaction processing systems. As current versions of MySQL have full support for transactions, this DBMS is not needed by contract programmers hired by departments to develop dynamic we sites.